Refine date formatting
This commit is contained in:
parent
aeaea7b36e
commit
0236461d99
@ -5,21 +5,22 @@ import { setDefaultDateFnLocale } from '@/i18n';
|
|||||||
|
|
||||||
setDefaultDateFnLocale();
|
setDefaultDateFnLocale();
|
||||||
|
|
||||||
const DATE_STRING_FORMAT_TINY = 'dd MMM yy';
|
const DATE_FORMAT_TINY = 'dd MMM yy';
|
||||||
const DATE_STRING_FORMAT_TINY_PLACEHOLDER = '00 000 00';
|
const DATE_FORMAT_TINY_PLACEHOLDER = '00 000 00';
|
||||||
|
|
||||||
const DATE_STRING_FORMAT_SHORT = 'dd MMM yyyy';
|
const DATE_FORMAT_SHORT = 'dd MMM yyyy';
|
||||||
const DATE_STRING_FORMAT_SHORT_PLACEHOLDER = '00 000 0000';
|
const DATE_FORMAT_SHORT_PLACEHOLDER = '00 000 0000';
|
||||||
|
|
||||||
const DATE_STRING_FORMAT_MEDIUM = 'dd MMM yy h:mma';
|
const DATE_FORMAT_MEDIUM = 'dd MMM yy h:mma';
|
||||||
const DATE_STRING_FORMAT_MEDIUM_PLACEHOLDER = '00 000 00 00:0000';
|
const DATE_FORMAT_MEDIUM_PLACEHOLDER = '00 000 00 00:0000';
|
||||||
|
|
||||||
const DATE_STRING_FORMAT_LONG = 'dd MMM yyyy h:mma';
|
const DATE_FORMAT_LONG = 'dd MMM yyyy h:mma';
|
||||||
const DATE_STRING_FORMAT_LONG_PLACEHOLDER = '00 000 0000 00:0000';
|
const DATE_FORMAT_LONG_PLACEHOLDER = '00 000 0000 00:0000';
|
||||||
|
|
||||||
const DATE_STRING_FORMAT_POSTGRES = 'yyyy-MM-dd HH:mm:ss';
|
const DATE_FORMAT_RSS = 'EEE, dd LLL yyyy HH:mm:ss xx';
|
||||||
|
const DATE_FORMAT_RSS_PLACEHOLDER = '000, 00 000 0000 00:00:00 00';
|
||||||
|
|
||||||
const DATE_STRING_FORMAT_RSS = 'EEE, dd MMM yyyy HH:mm:ss xx';
|
const DATE_FORMAT_POSTGRES = 'yyyy-MM-dd HH:mm:ss';
|
||||||
|
|
||||||
export const VALIDATION_EXAMPLE_POSTGRES = '2025-01-03T21:00:44.000Z';
|
export const VALIDATION_EXAMPLE_POSTGRES = '2025-01-03T21:00:44.000Z';
|
||||||
export const VALIDATION_EXAMPLE_POSTGRES_NAIVE = '2025-01-03 16:00:44';
|
export const VALIDATION_EXAMPLE_POSTGRES_NAIVE = '2025-01-03 16:00:44';
|
||||||
@ -42,31 +43,32 @@ export const formatDate = ({
|
|||||||
showPlaceholder?: boolean,
|
showPlaceholder?: boolean,
|
||||||
}) => {
|
}) => {
|
||||||
let formatString = !hideTime
|
let formatString = !hideTime
|
||||||
? DATE_STRING_FORMAT_LONG
|
? DATE_FORMAT_LONG
|
||||||
: DATE_STRING_FORMAT_SHORT;
|
: DATE_FORMAT_SHORT;
|
||||||
let placeholderString = !hideTime
|
let placeholderString = !hideTime
|
||||||
? DATE_STRING_FORMAT_LONG_PLACEHOLDER
|
? DATE_FORMAT_LONG_PLACEHOLDER
|
||||||
: DATE_STRING_FORMAT_SHORT_PLACEHOLDER;
|
: DATE_FORMAT_SHORT_PLACEHOLDER;
|
||||||
|
|
||||||
switch (length) {
|
switch (length) {
|
||||||
case 'rss':
|
case 'rss':
|
||||||
formatString = DATE_STRING_FORMAT_RSS;
|
formatString = DATE_FORMAT_RSS;
|
||||||
|
placeholderString = DATE_FORMAT_RSS_PLACEHOLDER;
|
||||||
break;
|
break;
|
||||||
case 'tiny':
|
case 'tiny':
|
||||||
formatString = DATE_STRING_FORMAT_TINY;
|
formatString = DATE_FORMAT_TINY;
|
||||||
placeholderString = DATE_STRING_FORMAT_TINY_PLACEHOLDER;
|
placeholderString = DATE_FORMAT_TINY_PLACEHOLDER;
|
||||||
break;
|
break;
|
||||||
case 'short':
|
case 'short':
|
||||||
formatString = DATE_STRING_FORMAT_SHORT;
|
formatString = DATE_FORMAT_SHORT;
|
||||||
placeholderString = DATE_STRING_FORMAT_SHORT_PLACEHOLDER;
|
placeholderString = DATE_FORMAT_SHORT_PLACEHOLDER;
|
||||||
break;
|
break;
|
||||||
case 'medium':
|
case 'medium':
|
||||||
formatString = !hideTime
|
formatString = !hideTime
|
||||||
? DATE_STRING_FORMAT_MEDIUM
|
? DATE_FORMAT_MEDIUM
|
||||||
: DATE_STRING_FORMAT_SHORT;
|
: DATE_FORMAT_SHORT;
|
||||||
placeholderString = !hideTime
|
placeholderString = !hideTime
|
||||||
? DATE_STRING_FORMAT_MEDIUM_PLACEHOLDER
|
? DATE_FORMAT_MEDIUM_PLACEHOLDER
|
||||||
: DATE_STRING_FORMAT_SHORT_PLACEHOLDER;
|
: DATE_FORMAT_SHORT_PLACEHOLDER;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -82,7 +84,7 @@ export const formatDateFromPostgresString = (
|
|||||||
length?: Length,
|
length?: Length,
|
||||||
) =>
|
) =>
|
||||||
formatDate({
|
formatDate({
|
||||||
date: parse(date, DATE_STRING_FORMAT_POSTGRES, new Date()),
|
date: parse(date, DATE_FORMAT_POSTGRES, new Date()),
|
||||||
length,
|
length,
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -135,7 +137,7 @@ export const generateLocalPostgresString = () =>
|
|||||||
formatDateForPostgres(new Date());
|
formatDateForPostgres(new Date());
|
||||||
|
|
||||||
export const generateLocalNaivePostgresString = () =>
|
export const generateLocalNaivePostgresString = () =>
|
||||||
format(new Date(), DATE_STRING_FORMAT_POSTGRES);
|
format(new Date(), DATE_FORMAT_POSTGRES);
|
||||||
|
|
||||||
// Form validation to prevent Postgres runtime errors
|
// Form validation to prevent Postgres runtime errors
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user