IO-2834 Split Date and DateTime formats, remove shorthand and checks

Signed-off-by: Allan Carr <allan.carr@thinkimex.com>
This commit is contained in:
Allan Carr
2024-08-21 12:25:38 -07:00
parent 153cf6a840
commit cc9979ff4b
2 changed files with 122 additions and 96 deletions

View File

@@ -1,8 +1,8 @@
import React, { useCallback, useState } from "react";
import { DatePicker } from "antd";
import dayjs from "../../utils/day";
import { formats, shorthandFormats } from "./formats.js";
import PropTypes from "prop-types";
import React, { useCallback, useState } from "react";
import dayjs from "../../utils/day";
import { formats } from "./formats.js";
const DateTimePicker = ({ value, onChange, onBlur, id, onlyFuture, onlyToday, isDateOnly = false, ...restProps }) => {
const [isManualInput, setIsManualInput] = useState(false);
@@ -34,18 +34,14 @@ const DateTimePicker = ({ value, onChange, onBlur, id, onlyFuture, onlyToday, is
let _a;
for (const format of shorthandFormats) {
for (const format of formats) {
console.log("format",format);
_a = dayjs(upperV, format);
console.log("🚀 ~ DateTimePicker ~ _a:", _a)
console.log("isvalid",_a.isValid());
if (_a.isValid()) break;
}
if (!_a || !_a.isValid()) {
for (const format of formats) {
_a = dayjs(upperV, format);
if (_a.isValid()) break;
}
}
if (_a && _a.isValid()) {
if (isDateOnly) {
_a = _a.startOf("day");

View File

@@ -1,93 +1,123 @@
export const shorthandFormats = [
"M/D/YY hA",
"M/D/YY h:mmA",
"M/D/YYYY hA",
"M/D/YYYY h:mmA",
"M/D/YY ha",
export const dateTimeFormats = [
"MMDDYY h:mma",
"MMDDYYYY h:mma",
"M/D/YY h:mma",
"M/D/YYYY ha",
"M/D/YYYY h:mma"
"M/DD/YY h:mma",
"MM/D/YY h:mma",
"MM/DD/YY h:mma",
"M/D/YYYY h:mma",
"M/DD/YYYY h:mma",
"MM/D/YYYY h:mma",
"MM/DD/YYYY h:mma",
"MMDDYY h:mmA",
"MMDDYYYY h:mmA",
"M/D/YY h:mmA",
"M/DD/YY h:mmA",
"MM/D/YY h:mmA",
"MM/DD/YY h:mmA",
"M/D/YYYY h:mmA",
"M/DD/YYYY h:mmA",
"MM/D/YYYY h:mmA",
"MM/DD/YYYY h:mmA",
"MMDDYY h:mm a",
"MMDDYYYY h:mm a",
"M/D/YY h:mm a",
"M/DD/YY h:mm a",
"MM/D/YY h:mm a",
"MM/DD/YY h:mm a",
"M/D/YYYY h:mm a",
"M/DD/YYYY h:mm a",
"MM/D/YYYY h:mm a",
"MM/DD/YYYY h:mm a",
"MMDDYY h:mm A",
"MMDDYYYY h:mm A",
"M/D/YY h:mm A",
"M/DD/YY h:mm A",
"MM/D/YY h:mm A",
"MM/DD/YY h:mm A",
"M/D/YYYY h:mm A",
"M/DD/YYYY h:mm A",
"MM/D/YYYY h:mm A",
"MM/DD/YYYY h:mm A",
"MMDDYY h:mm:ssa",
"MMDDYYYY h:mm:ssa",
"M/D/YY h:mm:ssa",
"M/DD/YY h:mm:ssa",
"MM/D/YY h:mm:ssa",
"MM/DD/YY h:mm:ssa",
"M/D/YYYY h:mm:ssa",
"M/DD/YYYY h:mm:ssa",
"MM/D/YYYY h:mm:ssa",
"MM/DD/YYYY h:mm:ssa",
"MMDDYY h:mm:ssA",
"MMDDYYYY h:mm:ssA",
"M/D/YY h:mm:ssA",
"M/DD/YY h:mm:ssA",
"MM/D/YY h:mm:ssA",
"MM/DD/YY h:mm:ssA",
"M/D/YYYY h:mm:ssA",
"M/DD/YYYY h:mm:ssA",
"MM/D/YYYY h:mm:ssA",
"MM/DD/YYYY h:mm:ssA",
"MMDDYY h:mm:ss a",
"MMDDYYYY h:mm:ss a",
"M/D/YY h:mm:ss a",
"M/DD/YY h:mm:ss a",
"MM/D/YY h:mm:ss a",
"MM/DD/YY h:mm:ss a",
"M/D/YYYY h:mm:ss a",
"M/DD/YYYY h:mm:ss a",
"MM/D/YYYY h:mm:ss a",
"MM/DD/YYYY h:mm:ss a",
"MMDDYY h:mm:ss A",
"MMDDYYYY h:mm:ss A",
"M/D/YY h:mm:ss A",
"M/DD/YY h:mm:ss A",
"MM/D/YY h:mm:ss A",
"MM/DD/YY h:mm:ss A",
"M/D/YYYY h:mm:ss A",
"M/DD/YYYY h:mm:ss A",
"MM/D/YYYY h:mm:ss A",
"MM/DD/YYYY h:mm:ss A",
"MMDDYY H:mm",
"MMDDYYYY H:mm",
"M/D/YY H:mm",
"M/DD/YY H:mm",
"MM/D/YY H:mm",
"MM/DD/YY H:mm",
"M/D/YYYY H:mm",
"M/DD/YYYY H:mm",
"MM/D/YYYY H:mm",
"MM/DD/YYYY H:mm",
"MMDDYY H:mm:ss",
"MMDDYYYY H:mm:ss",
"M/D/YY H:mm:ss",
"M/DD/YY H:mm:ss",
"MM/D/YY H:mm:ss",
"MM/DD/YY H:mm:ss",
"M/D/YYYY H:mm:ss",
"MM/D/YYYY H:mm:ss",
"MM/DD/YYYY H:mm:ss"
];
export const formats = [
export const dateFormats = [
"MMDDYY",
"MMDDYYYY",
"MM/DD/YY",
"MM/DD/YYYY",
"M/DD/YY",
"M/DD/YYYY",
"MM/D/YY",
"MM/D/YYYY",
"M/D/YY",
"M/DD/YY",
"MM/D/YY",
"MM/DD/YY",
"M/D/YYYY",
"D/MM/YY",
"D/MM/YYYY",
"DD/M/YY",
"DD/M/YYYY",
"D/M/YY",
"D/M/YYYY",
"MMDDYY hh:mm A",
"MMDDYYYY hh:mm A",
"MM/DD/YY hh:mm A",
"MM/DD/YYYY hh:mm A",
"M/DD/YY hh:mm A",
"M/DD/YYYY hh:mm A",
"MM/D/YY hh:mm A",
"MM/D/YYYY hh:mm A",
"M/D/YY hh:mm A",
"M/D/YYYY hh:mm A",
"D/MM/YY hh:mm A",
"D/MM/YYYY hh:mm A",
"DD/M/YY hh:mm A",
"DD/M/YYYY hh:mm A",
"D/M/YY hh:mm A",
"D/M/YYYY hh:mm A",
"MMDDYY hh:mm:ss A",
"MMDDYYYY hh:mm:ss A",
"MM/DD/YY hh:mm:ss A",
"MM/DD/YYYY hh:mm:ss A",
"M/DD/YY hh:mm:ss A",
"M/DD/YYYY hh:mm:ss A",
"MM/D/YY hh:mm:ss A",
"MM/D/YYYY hh:mm:ss A",
"M/D/YY hh:mm:ss A",
"M/D/YYYY hh:mm:ss A",
"D/MM/YY hh:mm:ss A",
"D/MM/YYYY hh:mm:ss A",
"DD/M/YY hh:mm:ss A",
"DD/M/YYYY hh:mm:ss A",
"D/M/YY hh:mm:ss A",
"D/M/YYYY hh:mm:ss A",
"MMDDYY HH:mm",
"MMDDYYYY HH:mm",
"MM/DD/YY HH:mm",
"MM/DD/YYYY HH:mm",
"M/DD/YY HH:mm",
"M/DD/YYYY HH:mm",
"MM/D/YY HH:mm",
"MM/D/YYYY HH:mm",
"M/D/YY HH:mm",
"M/D/YYYY HH:mm",
"D/MM/YY HH:mm",
"D/MM/YYYY HH:mm",
"DD/M/YY HH:mm",
"DD/M/YYYY HH:mm",
"D/M/YY HH:mm",
"D/M/YYYY HH:mm",
"MMDDYY HH:mm:ss",
"MMDDYYYY HH:mm:ss",
"MM/DD/YY HH:mm:ss",
"MM/DD/YYYY HH:mm:ss",
"M/DD/YY HH:mm:ss",
"M/DD/YYYY HH:mm:ss",
"MM/D/YY HH:mm:ss",
"MM/D/YYYY HH:mm:ss",
"M/D/YY HH:mm:ss",
"M/D/YYYY HH:mm:ss",
"D/MM/YY HH:mm:ss",
"D/MM/YYYY HH:mm:ss",
"DD/M/YY HH:mm:ss",
"DD/M/YYYY HH:mm:ss",
"D/M/YY HH:mm:ss",
"D/M/YYYY HH:mm:ss"
"M/DD/YYYY",
"MM/D/YYYY",
"MM/DD/YYYY"
];