📝 Commit Details:
This commit is contained in:
121
backend/node_modules/date-fns/intlFormat.js
generated
vendored
Normal file
121
backend/node_modules/date-fns/intlFormat.js
generated
vendored
Normal file
@@ -0,0 +1,121 @@
|
||||
import { toDate } from "./toDate.js";
|
||||
|
||||
/**
|
||||
* The locale string (see: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument).
|
||||
* @deprecated
|
||||
*
|
||||
* [TODO] Remove in v4
|
||||
*/
|
||||
|
||||
/**
|
||||
* The format options (see: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#options)
|
||||
*/
|
||||
|
||||
/**
|
||||
* The locale options.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @name intlFormat
|
||||
* @category Common Helpers
|
||||
* @summary Format the date with Intl.DateTimeFormat (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat).
|
||||
*
|
||||
* @description
|
||||
* Return the formatted date string in the given format.
|
||||
* The method uses [`Intl.DateTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat) inside.
|
||||
* formatOptions are the same as [`Intl.DateTimeFormat` options](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat#using_options)
|
||||
*
|
||||
* > ⚠️ Please note that before Node version 13.0.0, only the locale data for en-US is available by default.
|
||||
*
|
||||
* @param date - The date to format
|
||||
*
|
||||
* @returns The formatted date string
|
||||
*
|
||||
* @throws `date` must not be Invalid Date
|
||||
*
|
||||
* @example
|
||||
* // Represent 4 October 2019 in middle-endian format:
|
||||
* const result = intlFormat(new Date(2019, 9, 4, 12, 30, 13, 456))
|
||||
* //=> 10/4/2019
|
||||
*/
|
||||
|
||||
/**
|
||||
* @param date - The date to format
|
||||
* @param localeOptions - An object with locale
|
||||
*
|
||||
* @returns The formatted date string
|
||||
*
|
||||
* @throws `date` must not be Invalid Date
|
||||
*
|
||||
* @example
|
||||
* // Represent 4 October 2019 in Korean.
|
||||
* // Convert the date with locale's options.
|
||||
* const result = intlFormat(new Date(2019, 9, 4, 12, 30, 13, 456), {
|
||||
* locale: 'ko-KR',
|
||||
* })
|
||||
* //=> 2019. 10. 4.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @param date - The date to format
|
||||
* @param formatOptions - The format options
|
||||
*
|
||||
* @returns The formatted date string
|
||||
*
|
||||
* @throws `date` must not be Invalid Date
|
||||
*
|
||||
* @example
|
||||
* // Represent 4 October 2019.
|
||||
* // Convert the date with format's options.
|
||||
* const result = intlFormat.default(new Date(2019, 9, 4, 12, 30, 13, 456), {
|
||||
* year: 'numeric',
|
||||
* month: 'numeric',
|
||||
* day: 'numeric',
|
||||
* hour: 'numeric',
|
||||
* })
|
||||
* //=> 10/4/2019, 12 PM
|
||||
*/
|
||||
|
||||
/**
|
||||
* @param date - The date to format
|
||||
* @param formatOptions - The format options
|
||||
* @param localeOptions - An object with locale
|
||||
*
|
||||
* @returns The formatted date string
|
||||
*
|
||||
* @throws `date` must not be Invalid Date
|
||||
*
|
||||
* @example
|
||||
* // Represent 4 October 2019 in German.
|
||||
* // Convert the date with format's options and locale's options.
|
||||
* const result = intlFormat(new Date(2019, 9, 4, 12, 30, 13, 456), {
|
||||
* weekday: 'long',
|
||||
* year: 'numeric',
|
||||
* month: 'long',
|
||||
* day: 'numeric',
|
||||
* }, {
|
||||
* locale: 'de-DE',
|
||||
* })
|
||||
* //=> Freitag, 4. Oktober 2019
|
||||
*/
|
||||
|
||||
export function intlFormat(date, formatOrLocale, localeOptions) {
|
||||
let formatOptions;
|
||||
|
||||
if (isFormatOptions(formatOrLocale)) {
|
||||
formatOptions = formatOrLocale;
|
||||
} else {
|
||||
localeOptions = formatOrLocale;
|
||||
}
|
||||
|
||||
return new Intl.DateTimeFormat(localeOptions?.locale, formatOptions).format(
|
||||
toDate(date),
|
||||
);
|
||||
}
|
||||
|
||||
function isFormatOptions(opts) {
|
||||
return opts !== undefined && !("locale" in opts);
|
||||
}
|
||||
|
||||
// Fallback for modularized imports:
|
||||
export default intlFormat;
|
Reference in New Issue
Block a user