@connectycube/react-ui-kit 0.0.20 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/README.md +31 -4
  2. package/configs/dependencies.json +19 -4
  3. package/configs/imports.json +7 -2
  4. package/dist/index.cjs +1 -1
  5. package/dist/index.cjs.map +1 -1
  6. package/dist/index.js +1 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/types/components/attachment.d.ts +5 -6
  9. package/dist/types/components/attachment.d.ts.map +1 -1
  10. package/dist/types/components/chat-bubble.d.ts +32 -0
  11. package/dist/types/components/chat-bubble.d.ts.map +1 -0
  12. package/dist/types/components/chat-input.d.ts +27 -0
  13. package/dist/types/components/chat-input.d.ts.map +1 -0
  14. package/dist/types/components/chat-list.d.ts +30 -0
  15. package/dist/types/components/chat-list.d.ts.map +1 -0
  16. package/dist/types/components/checkbox.d.ts +11 -0
  17. package/dist/types/components/checkbox.d.ts.map +1 -0
  18. package/dist/types/components/dialogs-list.d.ts +14 -0
  19. package/dist/types/components/dialogs-list.d.ts.map +1 -0
  20. package/dist/types/components/file-picker.d.ts +1 -1
  21. package/dist/types/components/file-picker.d.ts.map +1 -1
  22. package/dist/types/components/placeholder-text.d.ts.map +1 -1
  23. package/dist/types/components/quick-actions.d.ts +14 -0
  24. package/dist/types/components/quick-actions.d.ts.map +1 -0
  25. package/dist/types/components/status-call.d.ts +8 -0
  26. package/dist/types/components/status-call.d.ts.map +1 -0
  27. package/dist/types/index.d.ts +7 -2
  28. package/dist/types/index.d.ts.map +1 -1
  29. package/gen/components/attachment.jsx +6 -6
  30. package/gen/components/button.jsx +1 -1
  31. package/gen/components/{chat-message.jsx → chat-bubble.jsx} +69 -48
  32. package/gen/components/chat-input.jsx +152 -0
  33. package/gen/components/chat-list.jsx +151 -0
  34. package/gen/components/checkbox.jsx +30 -0
  35. package/gen/components/dialog-item.jsx +1 -1
  36. package/gen/components/dialogs-list.jsx +73 -0
  37. package/gen/components/dismiss-layer.jsx +1 -1
  38. package/gen/components/file-picker.jsx +2 -2
  39. package/gen/components/placeholder-text.jsx +5 -1
  40. package/gen/components/quick-actions.jsx +62 -0
  41. package/gen/components/search.jsx +1 -1
  42. package/gen/components/status-call.jsx +18 -0
  43. package/gen/components/stream-view.jsx +8 -8
  44. package/gen/index.js +14 -2
  45. package/package.json +11 -8
  46. package/src/components/attachment.tsx +16 -14
  47. package/src/components/button.tsx +1 -1
  48. package/src/components/chat-bubble.tsx +176 -0
  49. package/src/components/chat-input.tsx +172 -0
  50. package/src/components/chat-list.tsx +164 -0
  51. package/src/components/checkbox.tsx +40 -0
  52. package/src/components/connectycube-ui/chat-input.tsx +174 -0
  53. package/src/components/dialog-item.tsx +1 -1
  54. package/src/components/dialogs-list.tsx +84 -0
  55. package/src/components/dismiss-layer.tsx +1 -1
  56. package/src/components/file-picker.tsx +3 -3
  57. package/src/components/placeholder-text.tsx +5 -1
  58. package/src/components/quick-actions.tsx +74 -0
  59. package/src/components/search.tsx +1 -1
  60. package/src/components/status-call.tsx +23 -0
  61. package/src/components/stream-view.tsx +8 -8
  62. package/src/index.ts +17 -2
  63. package/dist/types/components/call-message.d.ts +0 -17
  64. package/dist/types/components/call-message.d.ts.map +0 -1
  65. package/dist/types/components/chat-message.d.ts +0 -30
  66. package/dist/types/components/chat-message.d.ts.map +0 -1
  67. package/gen/components/call-message.jsx +0 -62
  68. package/src/components/call-message.tsx +0 -75
  69. package/src/components/chat-message.tsx +0 -138
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/components/utils.ts","../src/components/button.tsx","../src/components/alert-dialog.tsx","../src/components/spinner.tsx","../src/components/attachment.tsx","../src/components/presence.tsx","../src/components/avatar.tsx","../src/components/badge.tsx","../node_modules/date-fns/locale/_lib/buildFormatLongFn.js","../node_modules/date-fns/locale/_lib/buildLocalizeFn.js","../node_modules/date-fns/locale/_lib/buildMatchFn.js","../node_modules/date-fns/locale/_lib/buildMatchPatternFn.js","../node_modules/date-fns/constants.js","../node_modules/date-fns/constructFrom.js","../node_modules/date-fns/_lib/defaultOptions.js","../node_modules/date-fns/toDate.js","../node_modules/date-fns/startOfWeek.js","../node_modules/date-fns/isSameWeek.js","../node_modules/date-fns/_lib/normalizeDates.js","../node_modules/date-fns/locale/el/_lib/formatDistance.js","../node_modules/date-fns/locale/el/_lib/formatLong.js","../node_modules/date-fns/locale/el/_lib/formatRelative.js","../node_modules/date-fns/locale/el.js","../node_modules/date-fns/locale/el/_lib/localize.js","../node_modules/date-fns/locale/el/_lib/match.js","../node_modules/date-fns/locale/en-US/_lib/formatDistance.js","../node_modules/date-fns/locale/en-US/_lib/formatRelative.js","../node_modules/date-fns/locale/en-US/_lib/localize.js","../node_modules/date-fns/locale/en-US/_lib/match.js","../node_modules/date-fns/locale/en-US.js","../node_modules/date-fns/locale/en-US/_lib/formatLong.js","../node_modules/date-fns/locale/uk/_lib/formatDistance.js","../node_modules/date-fns/locale/uk/_lib/formatLong.js","../node_modules/date-fns/locale/uk/_lib/formatRelative.js","../node_modules/date-fns/locale/uk.js","../node_modules/date-fns/locale/uk/_lib/localize.js","../node_modules/date-fns/locale/uk/_lib/match.js","../src/components/formatted-date.tsx","../src/components/call-message.tsx","../src/components/linkify-text.tsx","../src/components/link-preview.tsx","../src/components/status-sent.tsx","../src/components/chat-message.tsx","../src/components/dialog-item.tsx","../src/components/dismiss-layer.tsx","../src/components/label.tsx","../src/components/file-picker.tsx","../src/components/input.tsx","../src/components/placeholder-text.tsx","../src/components/search.tsx","../src/components/status-indicator.tsx","../src/components/stream-view.tsx","../src/components/switch.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,"export function buildFormatLongFn(args) {\n return (options = {}) => {\n // TODO: Remove String()\n const width = options.width ? String(options.width) : args.defaultWidth;\n const format = args.formats[width] || args.formats[args.defaultWidth];\n return format;\n };\n}\n","/**\n * The localize function argument callback which allows to convert raw value to\n * the actual type.\n *\n * @param value - The value to convert\n *\n * @returns The converted value\n */\n\n/**\n * The map of localized values for each width.\n */\n\n/**\n * The index type of the locale unit value. It types conversion of units of\n * values that don't start at 0 (i.e. quarters).\n */\n\n/**\n * Converts the unit value to the tuple of values.\n */\n\n/**\n * The tuple of localized era values. The first element represents BC,\n * the second element represents AD.\n */\n\n/**\n * The tuple of localized quarter values. The first element represents Q1.\n */\n\n/**\n * The tuple of localized day values. The first element represents Sunday.\n */\n\n/**\n * The tuple of localized month values. The first element represents January.\n */\n\nexport function buildLocalizeFn(args) {\n return (value, options) => {\n const context = options?.context ? String(options.context) : \"standalone\";\n\n let valuesArray;\n if (context === \"formatting\" && args.formattingValues) {\n const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;\n const width = options?.width ? String(options.width) : defaultWidth;\n\n valuesArray =\n args.formattingValues[width] || args.formattingValues[defaultWidth];\n } else {\n const defaultWidth = args.defaultWidth;\n const width = options?.width ? String(options.width) : args.defaultWidth;\n\n valuesArray = args.values[width] || args.values[defaultWidth];\n }\n const index = args.argumentCallback ? args.argumentCallback(value) : value;\n\n // @ts-expect-error - For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it!\n return valuesArray[index];\n };\n}\n","export function buildMatchFn(args) {\n return (string, options = {}) => {\n const width = options.width;\n\n const matchPattern =\n (width && args.matchPatterns[width]) ||\n args.matchPatterns[args.defaultMatchWidth];\n const matchResult = string.match(matchPattern);\n\n if (!matchResult) {\n return null;\n }\n const matchedString = matchResult[0];\n\n const parsePatterns =\n (width && args.parsePatterns[width]) ||\n args.parsePatterns[args.defaultParseWidth];\n\n const key = Array.isArray(parsePatterns)\n ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString))\n : // [TODO] -- I challenge you to fix the type\n findKey(parsePatterns, (pattern) => pattern.test(matchedString));\n\n let value;\n\n value = args.valueCallback ? args.valueCallback(key) : key;\n value = options.valueCallback\n ? // [TODO] -- I challenge you to fix the type\n options.valueCallback(value)\n : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n\nfunction findKey(object, predicate) {\n for (const key in object) {\n if (\n Object.prototype.hasOwnProperty.call(object, key) &&\n predicate(object[key])\n ) {\n return key;\n }\n }\n return undefined;\n}\n\nfunction findIndex(array, predicate) {\n for (let key = 0; key < array.length; key++) {\n if (predicate(array[key])) {\n return key;\n }\n }\n return undefined;\n}\n","export function buildMatchPatternFn(args) {\n return (string, options = {}) => {\n const matchResult = string.match(args.matchPattern);\n if (!matchResult) return null;\n const matchedString = matchResult[0];\n\n const parseResult = string.match(args.parsePattern);\n if (!parseResult) return null;\n let value = args.valueCallback\n ? args.valueCallback(parseResult[0])\n : parseResult[0];\n\n // [TODO] I challenge you to fix the type\n value = options.valueCallback ? options.valueCallback(value) : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n","/**\n * @module constants\n * @summary Useful constants\n * @description\n * Collection of useful date constants.\n *\n * The constants could be imported from `date-fns/constants`:\n *\n * ```ts\n * import { maxTime, minTime } from \"./constants/date-fns/constants\";\n *\n * function isAllowedTime(time) {\n * return time <= maxTime && time >= minTime;\n * }\n * ```\n */\n\n/**\n * @constant\n * @name daysInWeek\n * @summary Days in 1 week.\n */\nexport const daysInWeek = 7;\n\n/**\n * @constant\n * @name daysInYear\n * @summary Days in 1 year.\n *\n * @description\n * How many days in a year.\n *\n * One years equals 365.2425 days according to the formula:\n *\n * > Leap year occurs every 4 years, except for years that are divisible by 100 and not divisible by 400.\n * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days\n */\nexport const daysInYear = 365.2425;\n\n/**\n * @constant\n * @name maxTime\n * @summary Maximum allowed time.\n *\n * @example\n * import { maxTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = 8640000000000001 <= maxTime;\n * //=> false\n *\n * new Date(8640000000000001);\n * //=> Invalid Date\n */\nexport const maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000;\n\n/**\n * @constant\n * @name minTime\n * @summary Minimum allowed time.\n *\n * @example\n * import { minTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = -8640000000000001 >= minTime;\n * //=> false\n *\n * new Date(-8640000000000001)\n * //=> Invalid Date\n */\nexport const minTime = -maxTime;\n\n/**\n * @constant\n * @name millisecondsInWeek\n * @summary Milliseconds in 1 week.\n */\nexport const millisecondsInWeek = 604800000;\n\n/**\n * @constant\n * @name millisecondsInDay\n * @summary Milliseconds in 1 day.\n */\nexport const millisecondsInDay = 86400000;\n\n/**\n * @constant\n * @name millisecondsInMinute\n * @summary Milliseconds in 1 minute\n */\nexport const millisecondsInMinute = 60000;\n\n/**\n * @constant\n * @name millisecondsInHour\n * @summary Milliseconds in 1 hour\n */\nexport const millisecondsInHour = 3600000;\n\n/**\n * @constant\n * @name millisecondsInSecond\n * @summary Milliseconds in 1 second\n */\nexport const millisecondsInSecond = 1000;\n\n/**\n * @constant\n * @name minutesInYear\n * @summary Minutes in 1 year.\n */\nexport const minutesInYear = 525600;\n\n/**\n * @constant\n * @name minutesInMonth\n * @summary Minutes in 1 month.\n */\nexport const minutesInMonth = 43200;\n\n/**\n * @constant\n * @name minutesInDay\n * @summary Minutes in 1 day.\n */\nexport const minutesInDay = 1440;\n\n/**\n * @constant\n * @name minutesInHour\n * @summary Minutes in 1 hour.\n */\nexport const minutesInHour = 60;\n\n/**\n * @constant\n * @name monthsInQuarter\n * @summary Months in 1 quarter.\n */\nexport const monthsInQuarter = 3;\n\n/**\n * @constant\n * @name monthsInYear\n * @summary Months in 1 year.\n */\nexport const monthsInYear = 12;\n\n/**\n * @constant\n * @name quartersInYear\n * @summary Quarters in 1 year\n */\nexport const quartersInYear = 4;\n\n/**\n * @constant\n * @name secondsInHour\n * @summary Seconds in 1 hour.\n */\nexport const secondsInHour = 3600;\n\n/**\n * @constant\n * @name secondsInMinute\n * @summary Seconds in 1 minute.\n */\nexport const secondsInMinute = 60;\n\n/**\n * @constant\n * @name secondsInDay\n * @summary Seconds in 1 day.\n */\nexport const secondsInDay = secondsInHour * 24;\n\n/**\n * @constant\n * @name secondsInWeek\n * @summary Seconds in 1 week.\n */\nexport const secondsInWeek = secondsInDay * 7;\n\n/**\n * @constant\n * @name secondsInYear\n * @summary Seconds in 1 year.\n */\nexport const secondsInYear = secondsInDay * daysInYear;\n\n/**\n * @constant\n * @name secondsInMonth\n * @summary Seconds in 1 month\n */\nexport const secondsInMonth = secondsInYear / 12;\n\n/**\n * @constant\n * @name secondsInQuarter\n * @summary Seconds in 1 quarter.\n */\nexport const secondsInQuarter = secondsInMonth * 3;\n\n/**\n * @constant\n * @name constructFromSymbol\n * @summary Symbol enabling Date extensions to inherit properties from the reference date.\n *\n * The symbol is used to enable the `constructFrom` function to construct a date\n * using a reference date and a value. It allows to transfer extra properties\n * from the reference date to the new date. It's useful for extensions like\n * [`TZDate`](https://github.com/date-fns/tz) that accept a time zone as\n * a constructor argument.\n */\nexport const constructFromSymbol = Symbol.for(\"constructDateFrom\");\n","import { constructFromSymbol } from \"./constants.js\";\n\n/**\n * @name constructFrom\n * @category Generic Helpers\n * @summary Constructs a date using the reference date and the value\n *\n * @description\n * The function constructs a new date using the constructor from the reference\n * date and the given value. It helps to build generic functions that accept\n * date extensions.\n *\n * It defaults to `Date` if the passed reference date is a number or a string.\n *\n * Starting from v3.7.0, it allows to construct a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The reference date to take constructor from\n * @param value - The value to create the date\n *\n * @returns Date initialized using the given date and value\n *\n * @example\n * import { constructFrom } from \"./constructFrom/date-fns\";\n *\n * // A function that clones a date preserving the original type\n * function cloneDate<DateType extends Date>(date: DateType): DateType {\n * return constructFrom(\n * date, // Use constructor from the given date\n * date.getTime() // Use the date value to create a new date\n * );\n * }\n */\nexport function constructFrom(date, value) {\n if (typeof date === \"function\") return date(value);\n\n if (date && typeof date === \"object\" && constructFromSymbol in date)\n return date[constructFromSymbol](value);\n\n if (date instanceof Date) return new date.constructor(value);\n\n return new Date(value);\n}\n\n// Fallback for modularized imports:\nexport default constructFrom;\n","let defaultOptions = {};\n\nexport function getDefaultOptions() {\n return defaultOptions;\n}\n\nexport function setDefaultOptions(newOptions) {\n defaultOptions = newOptions;\n}\n","import { constructFrom } from \"./constructFrom.js\";\n\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * Starting from v3.7.0, it clones a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param argument - The value to convert\n *\n * @returns The parsed date in the local time zone\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\nexport function toDate(argument, context) {\n // [TODO] Get rid of `toDate` or `constructFrom`?\n return constructFrom(context || argument, argument);\n}\n\n// Fallback for modularized imports:\nexport default toDate;\n","import { getDefaultOptions } from \"./_lib/defaultOptions.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link startOfWeek} function options.\n */\n\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The original date\n * @param options - An object with options\n *\n * @returns The start of a week\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport function startOfWeek(date, options) {\n const defaultOptions = getDefaultOptions();\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const _date = toDate(date, options?.in);\n const day = _date.getDay();\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n\n _date.setDate(_date.getDate() - diff);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfWeek;\n","import { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport { startOfWeek } from \"./startOfWeek.js\";\n\n/**\n * The {@link isSameWeek} function options.\n */\n\n/**\n * @name isSameWeek\n * @category Week Helpers\n * @summary Are the given dates in the same week (and month and year)?\n *\n * @description\n * Are the given dates in the same week (and month and year)?\n *\n * @param laterDate - The first date to check\n * @param earlierDate - The second date to check\n * @param options - An object with options\n *\n * @returns The dates are in the same week (and month and year)\n *\n * @example\n * // Are 31 August 2014 and 4 September 2014 in the same week?\n * const result = isSameWeek(new Date(2014, 7, 31), new Date(2014, 8, 4))\n * //=> true\n *\n * @example\n * // If week starts with Monday,\n * // are 31 August 2014 and 4 September 2014 in the same week?\n * const result = isSameWeek(new Date(2014, 7, 31), new Date(2014, 8, 4), {\n * weekStartsOn: 1\n * })\n * //=> false\n *\n * @example\n * // Are 1 January 2014 and 1 January 2015 in the same week?\n * const result = isSameWeek(new Date(2014, 0, 1), new Date(2015, 0, 1))\n * //=> false\n */\nexport function isSameWeek(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n return (\n +startOfWeek(laterDate_, options) === +startOfWeek(earlierDate_, options)\n );\n}\n\n// Fallback for modularized imports:\nexport default isSameWeek;\n","import { constructFrom } from \"../constructFrom.js\";\n\nexport function normalizeDates(context, ...dates) {\n const normalize = constructFrom.bind(\n null,\n context || dates.find((date) => typeof date === \"object\"),\n );\n return dates.map(normalize);\n}\n","const formatDistanceLocale = {\n lessThanXSeconds: {\n one: \"λιγότερο από ένα δευτερόλεπτο\",\n other: \"λιγότερο από {{count}} δευτερόλεπτα\",\n },\n\n xSeconds: {\n one: \"1 δευτερόλεπτο\",\n other: \"{{count}} δευτερόλεπτα\",\n },\n\n halfAMinute: \"μισό λεπτό\",\n\n lessThanXMinutes: {\n one: \"λιγότερο από ένα λεπτό\",\n other: \"λιγότερο από {{count}} λεπτά\",\n },\n\n xMinutes: {\n one: \"1 λεπτό\",\n other: \"{{count}} λεπτά\",\n },\n\n aboutXHours: {\n one: \"περίπου 1 ώρα\",\n other: \"περίπου {{count}} ώρες\",\n },\n\n xHours: {\n one: \"1 ώρα\",\n other: \"{{count}} ώρες\",\n },\n\n xDays: {\n one: \"1 ημέρα\",\n other: \"{{count}} ημέρες\",\n },\n\n aboutXWeeks: {\n one: \"περίπου 1 εβδομάδα\",\n other: \"περίπου {{count}} εβδομάδες\",\n },\n\n xWeeks: {\n one: \"1 εβδομάδα\",\n other: \"{{count}} εβδομάδες\",\n },\n\n aboutXMonths: {\n one: \"περίπου 1 μήνας\",\n other: \"περίπου {{count}} μήνες\",\n },\n\n xMonths: {\n one: \"1 μήνας\",\n other: \"{{count}} μήνες\",\n },\n\n aboutXYears: {\n one: \"περίπου 1 χρόνο\",\n other: \"περίπου {{count}} χρόνια\",\n },\n\n xYears: {\n one: \"1 χρόνο\",\n other: \"{{count}} χρόνια\",\n },\n\n overXYears: {\n one: \"πάνω από 1 χρόνο\",\n other: \"πάνω από {{count}} χρόνια\",\n },\n\n almostXYears: {\n one: \"περίπου 1 χρόνο\",\n other: \"περίπου {{count}} χρόνια\",\n },\n};\n\nexport const formatDistance = (token, count, options) => {\n let result;\n\n const tokenValue = formatDistanceLocale[token];\n if (typeof tokenValue === \"string\") {\n result = tokenValue;\n } else if (count === 1) {\n result = tokenValue.one;\n } else {\n result = tokenValue.other.replace(\"{{count}}\", String(count));\n }\n\n if (options?.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return \"σε \" + result;\n } else {\n return result + \" πριν\";\n }\n }\n\n return result;\n};\n","import { buildFormatLongFn } from \"../../_lib/buildFormatLongFn.js\";\n\nconst dateFormats = {\n full: \"EEEE, d MMMM y\",\n long: \"d MMMM y\",\n medium: \"d MMM y\",\n short: \"d/M/yy\",\n};\n\nconst timeFormats = {\n full: \"h:mm:ss a zzzz\",\n long: \"h:mm:ss a z\",\n medium: \"h:mm:ss a\",\n short: \"h:mm a\",\n};\n\nconst dateTimeFormats = {\n full: \"{{date}} - {{time}}\",\n long: \"{{date}} - {{time}}\",\n medium: \"{{date}}, {{time}}\",\n short: \"{{date}}, {{time}}\",\n};\n\nexport const formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: \"full\",\n }),\n\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: \"full\",\n }),\n\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: \"full\",\n }),\n};\n","const formatRelativeLocale = {\n lastWeek: (date) => {\n switch (date.getDay()) {\n case 6: //Σάββατο\n return \"'το προηγούμενο' eeee 'στις' p\";\n default:\n return \"'την προηγούμενη' eeee 'στις' p\";\n }\n },\n yesterday: \"'χθες στις' p\",\n today: \"'σήμερα στις' p\",\n tomorrow: \"'αύριο στις' p\",\n nextWeek: \"eeee 'στις' p\",\n other: \"P\",\n};\n\nexport const formatRelative = (token, date) => {\n const format = formatRelativeLocale[token];\n\n if (typeof format === \"function\") return format(date);\n\n return format;\n};\n","import { formatDistance } from \"./el/_lib/formatDistance.js\";\nimport { formatLong } from \"./el/_lib/formatLong.js\";\nimport { formatRelative } from \"./el/_lib/formatRelative.js\";\nimport { localize } from \"./el/_lib/localize.js\";\nimport { match } from \"./el/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary Greek locale.\n * @language Greek\n * @iso-639-2 ell\n * @author Fanis Katsimpas [@fanixk](https://github.com/fanixk)\n * @author Theodoros Orfanidis [@teoulas](https://github.com/teoulas)\n */\nexport const el = {\n code: \"el\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 1 /* Monday */,\n firstWeekContainsDate: 4,\n },\n};\n\n// Fallback for modularized imports:\nexport default el;\n","import { buildLocalizeFn } from \"../../_lib/buildLocalizeFn.js\";\n\nconst eraValues = {\n narrow: [\"πΧ\", \"μΧ\"],\n abbreviated: [\"π.Χ.\", \"μ.Χ.\"],\n wide: [\"προ Χριστού\", \"μετά Χριστόν\"],\n};\n\nconst quarterValues = {\n narrow: [\"1\", \"2\", \"3\", \"4\"],\n abbreviated: [\"Τ1\", \"Τ2\", \"Τ3\", \"Τ4\"],\n wide: [\"1ο τρίμηνο\", \"2ο τρίμηνο\", \"3ο τρίμηνο\", \"4ο τρίμηνο\"],\n};\n\nconst monthValues = {\n narrow: [\"Ι\", \"Φ\", \"Μ\", \"Α\", \"Μ\", \"Ι\", \"Ι\", \"Α\", \"Σ\", \"Ο\", \"Ν\", \"Δ\"],\n abbreviated: [\n \"Ιαν\",\n \"Φεβ\",\n \"Μάρ\",\n \"Απρ\",\n \"Μάι\",\n \"Ιούν\",\n \"Ιούλ\",\n \"Αύγ\",\n \"Σεπ\",\n \"Οκτ\",\n \"Νοέ\",\n \"Δεκ\",\n ],\n\n wide: [\n \"Ιανουάριος\",\n \"Φεβρουάριος\",\n \"Μάρτιος\",\n \"Απρίλιος\",\n \"Μάιος\",\n \"Ιούνιος\",\n \"Ιούλιος\",\n \"Αύγουστος\",\n \"Σεπτέμβριος\",\n \"Οκτώβριος\",\n \"Νοέμβριος\",\n \"Δεκέμβριος\",\n ],\n};\n\nconst formattingMonthValues = {\n narrow: [\"Ι\", \"Φ\", \"Μ\", \"Α\", \"Μ\", \"Ι\", \"Ι\", \"Α\", \"Σ\", \"Ο\", \"Ν\", \"Δ\"],\n abbreviated: [\n \"Ιαν\",\n \"Φεβ\",\n \"Μαρ\",\n \"Απρ\",\n \"Μαΐ\",\n \"Ιουν\",\n \"Ιουλ\",\n \"Αυγ\",\n \"Σεπ\",\n \"Οκτ\",\n \"Νοε\",\n \"Δεκ\",\n ],\n\n wide: [\n \"Ιανουαρίου\",\n \"Φεβρουαρίου\",\n \"Μαρτίου\",\n \"Απριλίου\",\n \"Μαΐου\",\n \"Ιουνίου\",\n \"Ιουλίου\",\n \"Αυγούστου\",\n \"Σεπτεμβρίου\",\n \"Οκτωβρίου\",\n \"Νοεμβρίου\",\n \"Δεκεμβρίου\",\n ],\n};\n\nconst dayValues = {\n narrow: [\"Κ\", \"Δ\", \"T\", \"Τ\", \"Π\", \"Π\", \"Σ\"],\n short: [\"Κυ\", \"Δε\", \"Τρ\", \"Τε\", \"Πέ\", \"Πα\", \"Σά\"],\n abbreviated: [\"Κυρ\", \"Δευ\", \"Τρί\", \"Τετ\", \"Πέμ\", \"Παρ\", \"Σάβ\"],\n wide: [\n \"Κυριακή\",\n \"Δευτέρα\",\n \"Τρίτη\",\n \"Τετάρτη\",\n \"Πέμπτη\",\n \"Παρασκευή\",\n \"Σάββατο\",\n ],\n};\n\nconst dayPeriodValues = {\n narrow: {\n am: \"πμ\",\n pm: \"μμ\",\n midnight: \"μεσάνυχτα\",\n noon: \"μεσημέρι\",\n morning: \"πρωί\",\n afternoon: \"απόγευμα\",\n evening: \"βράδυ\",\n night: \"νύχτα\",\n },\n abbreviated: {\n am: \"π.μ.\",\n pm: \"μ.μ.\",\n midnight: \"μεσάνυχτα\",\n noon: \"μεσημέρι\",\n morning: \"πρωί\",\n afternoon: \"απόγευμα\",\n evening: \"βράδυ\",\n night: \"νύχτα\",\n },\n wide: {\n am: \"π.μ.\",\n pm: \"μ.μ.\",\n midnight: \"μεσάνυχτα\",\n noon: \"μεσημέρι\",\n morning: \"πρωί\",\n afternoon: \"απόγευμα\",\n evening: \"βράδυ\",\n night: \"νύχτα\",\n },\n};\n\nconst ordinalNumber = (dirtyNumber, options) => {\n const number = Number(dirtyNumber);\n const unit = options?.unit;\n let suffix;\n\n if (unit === \"year\" || unit === \"month\") {\n suffix = \"ος\";\n } else if (\n unit === \"week\" ||\n unit === \"dayOfYear\" ||\n unit === \"day\" ||\n unit === \"hour\" ||\n unit === \"date\"\n ) {\n suffix = \"η\";\n } else {\n suffix = \"ο\";\n }\n\n return number + suffix;\n};\n\nexport const localize = {\n ordinalNumber,\n\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: \"wide\",\n }),\n\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: \"wide\",\n argumentCallback: (quarter) => quarter - 1,\n }),\n\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: \"wide\",\n formattingValues: formattingMonthValues,\n defaultFormattingWidth: \"wide\",\n }),\n\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: \"wide\",\n }),\n\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: \"wide\",\n }),\n};\n","import { buildMatchFn } from \"../../_lib/buildMatchFn.js\";\nimport { buildMatchPatternFn } from \"../../_lib/buildMatchPatternFn.js\";\n\nconst matchOrdinalNumberPattern = /^(\\d+)(ος|η|ο)?/i;\nconst parseOrdinalNumberPattern = /\\d+/i;\n\nconst matchEraPatterns = {\n narrow: /^(πΧ|μΧ)/i,\n abbreviated: /^(π\\.?\\s?χ\\.?|π\\.?\\s?κ\\.?\\s?χ\\.?|μ\\.?\\s?χ\\.?|κ\\.?\\s?χ\\.?)/i,\n wide: /^(προ Χριστο(ύ|υ)|πριν απ(ό|ο) την Κοιν(ή|η) Χρονολογ(ί|ι)α|μετ(ά|α) Χριστ(ό|ο)ν|Κοιν(ή|η) Χρονολογ(ί|ι)α)/i,\n};\nconst parseEraPatterns = {\n any: [/^π/i, /^(μ|κ)/i],\n};\n\nconst matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^τ[1234]/i,\n wide: /^[1234]ο? τρ(ί|ι)μηνο/i,\n};\nconst parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i],\n};\n\nconst matchMonthPatterns = {\n narrow: /^[ιφμαμιιασονδ]/i,\n abbreviated:\n /^(ιαν|φεβ|μ[άα]ρ|απρ|μ[άα][ιΐ]|ιο[ύυ]ν|ιο[ύυ]λ|α[ύυ]γ|σεπ|οκτ|νο[έε]|δεκ)/i,\n wide: /^(μ[άα][ιΐ]|α[ύυ]γο[υύ]στ)(ος|ου)|(ιανου[άα]ρ|φεβρου[άα]ρ|μ[άα]ρτ|απρ[ίι]λ|ιο[ύυ]ν|ιο[ύυ]λ|σεπτ[έε]μβρ|οκτ[ώω]βρ|νο[έε]μβρ|δεκ[έε]μβρ)(ιος|ίου)/i,\n};\nconst parseMonthPatterns = {\n narrow: [\n /^ι/i,\n /^φ/i,\n /^μ/i,\n /^α/i,\n /^μ/i,\n /^ι/i,\n /^ι/i,\n /^α/i,\n /^σ/i,\n /^ο/i,\n /^ν/i,\n /^δ/i,\n ],\n\n any: [\n /^ια/i,\n /^φ/i,\n /^μ[άα]ρ/i,\n /^απ/i,\n /^μ[άα][ιΐ]/i,\n /^ιο[ύυ]ν/i,\n /^ιο[ύυ]λ/i,\n /^α[ύυ]/i,\n /^σ/i,\n /^ο/i,\n /^ν/i,\n /^δ/i,\n ],\n};\n\nconst matchDayPatterns = {\n narrow: /^[κδτπσ]/i,\n short: /^(κυ|δε|τρ|τε|π[εέ]|π[αά]|σ[αά])/i,\n abbreviated: /^(κυρ|δευ|τρι|τετ|πεμ|παρ|σαβ)/i,\n wide: /^(κυριακ(ή|η)|δευτ(έ|ε)ρα|τρ(ί|ι)τη|τετ(ά|α)ρτη|π(έ|ε)μπτη|παρασκευ(ή|η)|σ(ά|α)ββατο)/i,\n};\nconst parseDayPatterns = {\n narrow: [/^κ/i, /^δ/i, /^τ/i, /^τ/i, /^π/i, /^π/i, /^σ/i],\n any: [/^κ/i, /^δ/i, /^τρ/i, /^τε/i, /^π[εέ]/i, /^π[αά]/i, /^σ/i],\n};\n\nconst matchDayPeriodPatterns = {\n narrow:\n /^(πμ|μμ|μεσ(ά|α)νυχτα|μεσημ(έ|ε)ρι|πρω(ί|ι)|απ(ό|ο)γευμα|βρ(ά|α)δυ|ν(ύ|υ)χτα)/i,\n any: /^([πμ]\\.?\\s?μ\\.?|μεσ(ά|α)νυχτα|μεσημ(έ|ε)ρι|πρω(ί|ι)|απ(ό|ο)γευμα|βρ(ά|α)δυ|ν(ύ|υ)χτα)/i,\n};\nconst parseDayPeriodPatterns = {\n any: {\n am: /^πμ|π\\.\\s?μ\\./i,\n pm: /^μμ|μ\\.\\s?μ\\./i,\n midnight: /^μεσάν/i,\n noon: /^μεσημ(έ|ε)/i,\n morning: /πρω(ί|ι)/i,\n afternoon: /απ(ό|ο)γευμα/i,\n evening: /βρ(ά|α)δυ/i,\n night: /ν(ύ|υ)χτα/i,\n },\n};\n\nexport const match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: (value) => parseInt(value, 10),\n }),\n\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseEraPatterns,\n defaultParseWidth: \"any\",\n }),\n\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: \"any\",\n valueCallback: (index) => index + 1,\n }),\n\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: \"any\",\n }),\n\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPatterns,\n defaultParseWidth: \"any\",\n }),\n\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: \"any\",\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: \"any\",\n }),\n};\n","const formatDistanceLocale = {\n lessThanXSeconds: {\n one: \"less than a second\",\n other: \"less than {{count}} seconds\",\n },\n\n xSeconds: {\n one: \"1 second\",\n other: \"{{count}} seconds\",\n },\n\n halfAMinute: \"half a minute\",\n\n lessThanXMinutes: {\n one: \"less than a minute\",\n other: \"less than {{count}} minutes\",\n },\n\n xMinutes: {\n one: \"1 minute\",\n other: \"{{count}} minutes\",\n },\n\n aboutXHours: {\n one: \"about 1 hour\",\n other: \"about {{count}} hours\",\n },\n\n xHours: {\n one: \"1 hour\",\n other: \"{{count}} hours\",\n },\n\n xDays: {\n one: \"1 day\",\n other: \"{{count}} days\",\n },\n\n aboutXWeeks: {\n one: \"about 1 week\",\n other: \"about {{count}} weeks\",\n },\n\n xWeeks: {\n one: \"1 week\",\n other: \"{{count}} weeks\",\n },\n\n aboutXMonths: {\n one: \"about 1 month\",\n other: \"about {{count}} months\",\n },\n\n xMonths: {\n one: \"1 month\",\n other: \"{{count}} months\",\n },\n\n aboutXYears: {\n one: \"about 1 year\",\n other: \"about {{count}} years\",\n },\n\n xYears: {\n one: \"1 year\",\n other: \"{{count}} years\",\n },\n\n overXYears: {\n one: \"over 1 year\",\n other: \"over {{count}} years\",\n },\n\n almostXYears: {\n one: \"almost 1 year\",\n other: \"almost {{count}} years\",\n },\n};\n\nexport const formatDistance = (token, count, options) => {\n let result;\n\n const tokenValue = formatDistanceLocale[token];\n if (typeof tokenValue === \"string\") {\n result = tokenValue;\n } else if (count === 1) {\n result = tokenValue.one;\n } else {\n result = tokenValue.other.replace(\"{{count}}\", count.toString());\n }\n\n if (options?.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return \"in \" + result;\n } else {\n return result + \" ago\";\n }\n }\n\n return result;\n};\n","const formatRelativeLocale = {\n lastWeek: \"'last' eeee 'at' p\",\n yesterday: \"'yesterday at' p\",\n today: \"'today at' p\",\n tomorrow: \"'tomorrow at' p\",\n nextWeek: \"eeee 'at' p\",\n other: \"P\",\n};\n\nexport const formatRelative = (token, _date, _baseDate, _options) =>\n formatRelativeLocale[token];\n","import { buildLocalizeFn } from \"../../_lib/buildLocalizeFn.js\";\n\nconst eraValues = {\n narrow: [\"B\", \"A\"],\n abbreviated: [\"BC\", \"AD\"],\n wide: [\"Before Christ\", \"Anno Domini\"],\n};\n\nconst quarterValues = {\n narrow: [\"1\", \"2\", \"3\", \"4\"],\n abbreviated: [\"Q1\", \"Q2\", \"Q3\", \"Q4\"],\n wide: [\"1st quarter\", \"2nd quarter\", \"3rd quarter\", \"4th quarter\"],\n};\n\n// Note: in English, the names of days of the week and months are capitalized.\n// If you are making a new locale based on this one, check if the same is true for the language you're working on.\n// Generally, formatted dates should look like they are in the middle of a sentence,\n// e.g. in Spanish language the weekdays and months should be in the lowercase.\nconst monthValues = {\n narrow: [\"J\", \"F\", \"M\", \"A\", \"M\", \"J\", \"J\", \"A\", \"S\", \"O\", \"N\", \"D\"],\n abbreviated: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n\n wide: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n ],\n};\n\nconst dayValues = {\n narrow: [\"S\", \"M\", \"T\", \"W\", \"T\", \"F\", \"S\"],\n short: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n abbreviated: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n wide: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n ],\n};\n\nconst dayPeriodValues = {\n narrow: {\n am: \"a\",\n pm: \"p\",\n midnight: \"mi\",\n noon: \"n\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n abbreviated: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n wide: {\n am: \"a.m.\",\n pm: \"p.m.\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n};\n\nconst formattingDayPeriodValues = {\n narrow: {\n am: \"a\",\n pm: \"p\",\n midnight: \"mi\",\n noon: \"n\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n abbreviated: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n wide: {\n am: \"a.m.\",\n pm: \"p.m.\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n};\n\nconst ordinalNumber = (dirtyNumber, _options) => {\n const number = Number(dirtyNumber);\n\n // If ordinal numbers depend on context, for example,\n // if they are different for different grammatical genders,\n // use `options.unit`.\n //\n // `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',\n // 'day', 'hour', 'minute', 'second'.\n\n const rem100 = number % 100;\n if (rem100 > 20 || rem100 < 10) {\n switch (rem100 % 10) {\n case 1:\n return number + \"st\";\n case 2:\n return number + \"nd\";\n case 3:\n return number + \"rd\";\n }\n }\n return number + \"th\";\n};\n\nexport const localize = {\n ordinalNumber,\n\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: \"wide\",\n }),\n\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: \"wide\",\n argumentCallback: (quarter) => quarter - 1,\n }),\n\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: \"wide\",\n }),\n\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: \"wide\",\n }),\n\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: \"wide\",\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: \"wide\",\n }),\n};\n","import { buildMatchFn } from \"../../_lib/buildMatchFn.js\";\nimport { buildMatchPatternFn } from \"../../_lib/buildMatchPatternFn.js\";\n\nconst matchOrdinalNumberPattern = /^(\\d+)(th|st|nd|rd)?/i;\nconst parseOrdinalNumberPattern = /\\d+/i;\n\nconst matchEraPatterns = {\n narrow: /^(b|a)/i,\n abbreviated: /^(b\\.?\\s?c\\.?|b\\.?\\s?c\\.?\\s?e\\.?|a\\.?\\s?d\\.?|c\\.?\\s?e\\.?)/i,\n wide: /^(before christ|before common era|anno domini|common era)/i,\n};\nconst parseEraPatterns = {\n any: [/^b/i, /^(a|c)/i],\n};\n\nconst matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^q[1234]/i,\n wide: /^[1234](th|st|nd|rd)? quarter/i,\n};\nconst parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i],\n};\n\nconst matchMonthPatterns = {\n narrow: /^[jfmasond]/i,\n abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,\n wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i,\n};\nconst parseMonthPatterns = {\n narrow: [\n /^j/i,\n /^f/i,\n /^m/i,\n /^a/i,\n /^m/i,\n /^j/i,\n /^j/i,\n /^a/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n\n any: [\n /^ja/i,\n /^f/i,\n /^mar/i,\n /^ap/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^au/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n};\n\nconst matchDayPatterns = {\n narrow: /^[smtwf]/i,\n short: /^(su|mo|tu|we|th|fr|sa)/i,\n abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,\n wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i,\n};\nconst parseDayPatterns = {\n narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],\n any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i],\n};\n\nconst matchDayPeriodPatterns = {\n narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,\n any: /^([ap]\\.?\\s?m\\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i,\n};\nconst parseDayPeriodPatterns = {\n any: {\n am: /^a/i,\n pm: /^p/i,\n midnight: /^mi/i,\n noon: /^no/i,\n morning: /morning/i,\n afternoon: /afternoon/i,\n evening: /evening/i,\n night: /night/i,\n },\n};\n\nexport const match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: (value) => parseInt(value, 10),\n }),\n\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseEraPatterns,\n defaultParseWidth: \"any\",\n }),\n\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: \"any\",\n valueCallback: (index) => index + 1,\n }),\n\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: \"any\",\n }),\n\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPatterns,\n defaultParseWidth: \"any\",\n }),\n\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: \"any\",\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: \"any\",\n }),\n};\n","import { formatDistance } from \"./en-US/_lib/formatDistance.js\";\nimport { formatLong } from \"./en-US/_lib/formatLong.js\";\nimport { formatRelative } from \"./en-US/_lib/formatRelative.js\";\nimport { localize } from \"./en-US/_lib/localize.js\";\nimport { match } from \"./en-US/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp](https://github.com/kossnocorp)\n * @author Lesha Koss [@leshakoss](https://github.com/leshakoss)\n */\nexport const enUS = {\n code: \"en-US\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0 /* Sunday */,\n firstWeekContainsDate: 1,\n },\n};\n\n// Fallback for modularized imports:\nexport default enUS;\n","import { buildFormatLongFn } from \"../../_lib/buildFormatLongFn.js\";\n\nconst dateFormats = {\n full: \"EEEE, MMMM do, y\",\n long: \"MMMM do, y\",\n medium: \"MMM d, y\",\n short: \"MM/dd/yyyy\",\n};\n\nconst timeFormats = {\n full: \"h:mm:ss a zzzz\",\n long: \"h:mm:ss a z\",\n medium: \"h:mm:ss a\",\n short: \"h:mm a\",\n};\n\nconst dateTimeFormats = {\n full: \"{{date}} 'at' {{time}}\",\n long: \"{{date}} 'at' {{time}}\",\n medium: \"{{date}}, {{time}}\",\n short: \"{{date}}, {{time}}\",\n};\n\nexport const formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: \"full\",\n }),\n\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: \"full\",\n }),\n\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: \"full\",\n }),\n};\n","function declension(scheme, count) {\n // scheme for count=1 exists\n if (scheme.one !== undefined && count === 1) {\n return scheme.one;\n }\n\n const rem10 = count % 10;\n const rem100 = count % 100;\n\n // 1, 21, 31, ...\n if (rem10 === 1 && rem100 !== 11) {\n return scheme.singularNominative.replace(\"{{count}}\", String(count));\n\n // 2, 3, 4, 22, 23, 24, 32 ...\n } else if (rem10 >= 2 && rem10 <= 4 && (rem100 < 10 || rem100 > 20)) {\n return scheme.singularGenitive.replace(\"{{count}}\", String(count));\n\n // 5, 6, 7, 8, 9, 10, 11, ...\n } else {\n return scheme.pluralGenitive.replace(\"{{count}}\", String(count));\n }\n}\n\nfunction buildLocalizeTokenFn(scheme) {\n return (count, options) => {\n if (options && options.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n if (scheme.future) {\n return declension(scheme.future, count);\n } else {\n return \"за \" + declension(scheme.regular, count);\n }\n } else {\n if (scheme.past) {\n return declension(scheme.past, count);\n } else {\n return declension(scheme.regular, count) + \" тому\";\n }\n }\n } else {\n return declension(scheme.regular, count);\n }\n };\n}\n\nconst halfAtMinute = (_, options) => {\n if (options && options.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return \"за півхвилини\";\n } else {\n return \"півхвилини тому\";\n }\n }\n\n return \"півхвилини\";\n};\n\nconst formatDistanceLocale = {\n lessThanXSeconds: buildLocalizeTokenFn({\n regular: {\n one: \"менше секунди\",\n singularNominative: \"менше {{count}} секунди\",\n singularGenitive: \"менше {{count}} секунд\",\n pluralGenitive: \"менше {{count}} секунд\",\n },\n future: {\n one: \"менше, ніж за секунду\",\n singularNominative: \"менше, ніж за {{count}} секунду\",\n singularGenitive: \"менше, ніж за {{count}} секунди\",\n pluralGenitive: \"менше, ніж за {{count}} секунд\",\n },\n }),\n\n xSeconds: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} секунда\",\n singularGenitive: \"{{count}} секунди\",\n pluralGenitive: \"{{count}} секунд\",\n },\n past: {\n singularNominative: \"{{count}} секунду тому\",\n singularGenitive: \"{{count}} секунди тому\",\n pluralGenitive: \"{{count}} секунд тому\",\n },\n future: {\n singularNominative: \"за {{count}} секунду\",\n singularGenitive: \"за {{count}} секунди\",\n pluralGenitive: \"за {{count}} секунд\",\n },\n }),\n\n halfAMinute: halfAtMinute,\n\n lessThanXMinutes: buildLocalizeTokenFn({\n regular: {\n one: \"менше хвилини\",\n singularNominative: \"менше {{count}} хвилини\",\n singularGenitive: \"менше {{count}} хвилин\",\n pluralGenitive: \"менше {{count}} хвилин\",\n },\n future: {\n one: \"менше, ніж за хвилину\",\n singularNominative: \"менше, ніж за {{count}} хвилину\",\n singularGenitive: \"менше, ніж за {{count}} хвилини\",\n pluralGenitive: \"менше, ніж за {{count}} хвилин\",\n },\n }),\n\n xMinutes: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} хвилина\",\n singularGenitive: \"{{count}} хвилини\",\n pluralGenitive: \"{{count}} хвилин\",\n },\n past: {\n singularNominative: \"{{count}} хвилину тому\",\n singularGenitive: \"{{count}} хвилини тому\",\n pluralGenitive: \"{{count}} хвилин тому\",\n },\n future: {\n singularNominative: \"за {{count}} хвилину\",\n singularGenitive: \"за {{count}} хвилини\",\n pluralGenitive: \"за {{count}} хвилин\",\n },\n }),\n\n aboutXHours: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"близько {{count}} години\",\n singularGenitive: \"близько {{count}} годин\",\n pluralGenitive: \"близько {{count}} годин\",\n },\n future: {\n singularNominative: \"приблизно за {{count}} годину\",\n singularGenitive: \"приблизно за {{count}} години\",\n pluralGenitive: \"приблизно за {{count}} годин\",\n },\n }),\n\n xHours: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} годину\",\n singularGenitive: \"{{count}} години\",\n pluralGenitive: \"{{count}} годин\",\n },\n }),\n\n xDays: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} день\",\n singularGenitive: \"{{count}} днi\",\n pluralGenitive: \"{{count}} днів\",\n },\n }),\n\n aboutXWeeks: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"близько {{count}} тижня\",\n singularGenitive: \"близько {{count}} тижнів\",\n pluralGenitive: \"близько {{count}} тижнів\",\n },\n future: {\n singularNominative: \"приблизно за {{count}} тиждень\",\n singularGenitive: \"приблизно за {{count}} тижні\",\n pluralGenitive: \"приблизно за {{count}} тижнів\",\n },\n }),\n\n xWeeks: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} тиждень\",\n singularGenitive: \"{{count}} тижні\",\n pluralGenitive: \"{{count}} тижнів\",\n },\n }),\n\n aboutXMonths: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"близько {{count}} місяця\",\n singularGenitive: \"близько {{count}} місяців\",\n pluralGenitive: \"близько {{count}} місяців\",\n },\n future: {\n singularNominative: \"приблизно за {{count}} місяць\",\n singularGenitive: \"приблизно за {{count}} місяці\",\n pluralGenitive: \"приблизно за {{count}} місяців\",\n },\n }),\n\n xMonths: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} місяць\",\n singularGenitive: \"{{count}} місяці\",\n pluralGenitive: \"{{count}} місяців\",\n },\n }),\n\n aboutXYears: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"близько {{count}} року\",\n singularGenitive: \"близько {{count}} років\",\n pluralGenitive: \"близько {{count}} років\",\n },\n future: {\n singularNominative: \"приблизно за {{count}} рік\",\n singularGenitive: \"приблизно за {{count}} роки\",\n pluralGenitive: \"приблизно за {{count}} років\",\n },\n }),\n\n xYears: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} рік\",\n singularGenitive: \"{{count}} роки\",\n pluralGenitive: \"{{count}} років\",\n },\n }),\n\n overXYears: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"більше {{count}} року\",\n singularGenitive: \"більше {{count}} років\",\n pluralGenitive: \"більше {{count}} років\",\n },\n future: {\n singularNominative: \"більше, ніж за {{count}} рік\",\n singularGenitive: \"більше, ніж за {{count}} роки\",\n pluralGenitive: \"більше, ніж за {{count}} років\",\n },\n }),\n\n almostXYears: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"майже {{count}} рік\",\n singularGenitive: \"майже {{count}} роки\",\n pluralGenitive: \"майже {{count}} років\",\n },\n future: {\n singularNominative: \"майже за {{count}} рік\",\n singularGenitive: \"майже за {{count}} роки\",\n pluralGenitive: \"майже за {{count}} років\",\n },\n }),\n};\n\nexport const formatDistance = (token, count, options) => {\n options = options || {};\n\n return formatDistanceLocale[token](count, options);\n};\n","import { buildFormatLongFn } from \"../../_lib/buildFormatLongFn.js\";\n\nconst dateFormats = {\n full: \"EEEE, do MMMM y 'р.'\",\n long: \"do MMMM y 'р.'\",\n medium: \"d MMM y 'р.'\",\n short: \"dd.MM.y\",\n};\n\nconst timeFormats = {\n full: \"H:mm:ss zzzz\",\n long: \"H:mm:ss z\",\n medium: \"H:mm:ss\",\n short: \"H:mm\",\n};\n\nconst dateTimeFormats = {\n full: \"{{date}} 'о' {{time}}\",\n long: \"{{date}} 'о' {{time}}\",\n medium: \"{{date}}, {{time}}\",\n short: \"{{date}}, {{time}}\",\n};\n\nexport const formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: \"full\",\n }),\n\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: \"full\",\n }),\n\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: \"full\",\n }),\n};\n","import { isSameWeek } from \"../../../isSameWeek.js\";\nimport { toDate } from \"../../../toDate.js\";\n\nconst accusativeWeekdays = [\n \"неділю\",\n \"понеділок\",\n \"вівторок\",\n \"середу\",\n \"четвер\",\n \"п’ятницю\",\n \"суботу\",\n];\n\nfunction lastWeek(day) {\n const weekday = accusativeWeekdays[day];\n\n switch (day) {\n case 0:\n case 3:\n case 5:\n case 6:\n return \"'у минулу \" + weekday + \" о' p\";\n case 1:\n case 2:\n case 4:\n return \"'у минулий \" + weekday + \" о' p\";\n }\n}\n\nfunction thisWeek(day) {\n const weekday = accusativeWeekdays[day];\n\n return \"'у \" + weekday + \" о' p\";\n}\n\nfunction nextWeek(day) {\n const weekday = accusativeWeekdays[day];\n\n switch (day) {\n case 0:\n case 3:\n case 5:\n case 6:\n return \"'у наступну \" + weekday + \" о' p\";\n case 1:\n case 2:\n case 4:\n return \"'у наступний \" + weekday + \" о' p\";\n }\n}\n\nconst lastWeekFormat = (dirtyDate, baseDate, options) => {\n const date = toDate(dirtyDate);\n const day = date.getDay();\n\n if (isSameWeek(date, baseDate, options)) {\n return thisWeek(day);\n } else {\n return lastWeek(day);\n }\n};\n\nconst nextWeekFormat = (dirtyDate, baseDate, options) => {\n const date = toDate(dirtyDate);\n const day = date.getDay();\n if (isSameWeek(date, baseDate, options)) {\n return thisWeek(day);\n } else {\n return nextWeek(day);\n }\n};\n\nconst formatRelativeLocale = {\n lastWeek: lastWeekFormat,\n yesterday: \"'вчора о' p\",\n today: \"'сьогодні о' p\",\n tomorrow: \"'завтра о' p\",\n nextWeek: nextWeekFormat,\n other: \"P\",\n};\n\nexport const formatRelative = (token, date, baseDate, options) => {\n const format = formatRelativeLocale[token];\n\n if (typeof format === \"function\") {\n return format(date, baseDate, options);\n }\n\n return format;\n};\n","import { formatDistance } from \"./uk/_lib/formatDistance.js\";\nimport { formatLong } from \"./uk/_lib/formatLong.js\";\nimport { formatRelative } from \"./uk/_lib/formatRelative.js\";\nimport { localize } from \"./uk/_lib/localize.js\";\nimport { match } from \"./uk/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary Ukrainian locale.\n * @language Ukrainian\n * @iso-639-2 ukr\n * @author Andrii Korzh [@korzhyk](https://github.com/korzhyk)\n * @author Andriy Shcherbyak [@shcherbyakdev](https://github.com/shcherbyakdev)\n */\nexport const uk = {\n code: \"uk\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 1 /* Monday */,\n firstWeekContainsDate: 1,\n },\n};\n\n// Fallback for modularized imports:\nexport default uk;\n","import { buildLocalizeFn } from \"../../_lib/buildLocalizeFn.js\";\n\nconst eraValues = {\n narrow: [\"до н.е.\", \"н.е.\"],\n abbreviated: [\"до н. е.\", \"н. е.\"],\n wide: [\"до нашої ери\", \"нашої ери\"],\n};\n\nconst quarterValues = {\n narrow: [\"1\", \"2\", \"3\", \"4\"],\n abbreviated: [\"1-й кв.\", \"2-й кв.\", \"3-й кв.\", \"4-й кв.\"],\n wide: [\"1-й квартал\", \"2-й квартал\", \"3-й квартал\", \"4-й квартал\"],\n};\n\nconst monthValues = {\n // ДСТУ 3582:2013\n narrow: [\"С\", \"Л\", \"Б\", \"К\", \"Т\", \"Ч\", \"Л\", \"С\", \"В\", \"Ж\", \"Л\", \"Г\"],\n abbreviated: [\n \"січ.\",\n \"лют.\",\n \"берез.\",\n \"квіт.\",\n \"трав.\",\n \"черв.\",\n \"лип.\",\n \"серп.\",\n \"верес.\",\n \"жовт.\",\n \"листоп.\",\n \"груд.\",\n ],\n\n wide: [\n \"січень\",\n \"лютий\",\n \"березень\",\n \"квітень\",\n \"травень\",\n \"червень\",\n \"липень\",\n \"серпень\",\n \"вересень\",\n \"жовтень\",\n \"листопад\",\n \"грудень\",\n ],\n};\n\nconst formattingMonthValues = {\n narrow: [\"С\", \"Л\", \"Б\", \"К\", \"Т\", \"Ч\", \"Л\", \"С\", \"В\", \"Ж\", \"Л\", \"Г\"],\n abbreviated: [\n \"січ.\",\n \"лют.\",\n \"берез.\",\n \"квіт.\",\n \"трав.\",\n \"черв.\",\n \"лип.\",\n \"серп.\",\n \"верес.\",\n \"жовт.\",\n \"листоп.\",\n \"груд.\",\n ],\n\n wide: [\n \"січня\",\n \"лютого\",\n \"березня\",\n \"квітня\",\n \"травня\",\n \"червня\",\n \"липня\",\n \"серпня\",\n \"вересня\",\n \"жовтня\",\n \"листопада\",\n \"грудня\",\n ],\n};\n\nconst dayValues = {\n narrow: [\"Н\", \"П\", \"В\", \"С\", \"Ч\", \"П\", \"С\"],\n short: [\"нд\", \"пн\", \"вт\", \"ср\", \"чт\", \"пт\", \"сб\"],\n abbreviated: [\"нед\", \"пон\", \"вів\", \"сер\", \"чтв\", \"птн\", \"суб\"],\n wide: [\n \"неділя\",\n \"понеділок\",\n \"вівторок\",\n \"середа\",\n \"четвер\",\n \"п’ятниця\",\n \"субота\",\n ],\n};\n\nconst dayPeriodValues = {\n narrow: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"півн.\",\n noon: \"пол.\",\n morning: \"ранок\",\n afternoon: \"день\",\n evening: \"веч.\",\n night: \"ніч\",\n },\n abbreviated: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"півн.\",\n noon: \"пол.\",\n morning: \"ранок\",\n afternoon: \"день\",\n evening: \"веч.\",\n night: \"ніч\",\n },\n wide: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"північ\",\n noon: \"полудень\",\n morning: \"ранок\",\n afternoon: \"день\",\n evening: \"вечір\",\n night: \"ніч\",\n },\n};\n\nconst formattingDayPeriodValues = {\n narrow: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"півн.\",\n noon: \"пол.\",\n morning: \"ранку\",\n afternoon: \"дня\",\n evening: \"веч.\",\n night: \"ночі\",\n },\n abbreviated: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"півн.\",\n noon: \"пол.\",\n morning: \"ранку\",\n afternoon: \"дня\",\n evening: \"веч.\",\n night: \"ночі\",\n },\n wide: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"північ\",\n noon: \"полудень\",\n morning: \"ранку\",\n afternoon: \"дня\",\n evening: \"веч.\",\n night: \"ночі\",\n },\n};\n\nconst ordinalNumber = (dirtyNumber, options) => {\n const unit = String(options?.unit);\n const number = Number(dirtyNumber);\n let suffix;\n\n if (unit === \"date\") {\n if (number === 3 || number === 23) {\n suffix = \"-є\";\n } else {\n suffix = \"-е\";\n }\n } else if (unit === \"minute\" || unit === \"second\" || unit === \"hour\") {\n suffix = \"-а\";\n } else {\n suffix = \"-й\";\n }\n\n return number + suffix;\n};\n\nexport const localize = {\n ordinalNumber,\n\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: \"wide\",\n }),\n\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: \"wide\",\n argumentCallback: (quarter) => quarter - 1,\n }),\n\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: \"wide\",\n formattingValues: formattingMonthValues,\n defaultFormattingWidth: \"wide\",\n }),\n\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: \"wide\",\n }),\n\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: \"any\",\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: \"wide\",\n }),\n};\n","import { buildMatchFn } from \"../../_lib/buildMatchFn.js\";\nimport { buildMatchPatternFn } from \"../../_lib/buildMatchPatternFn.js\";\n\nconst matchOrdinalNumberPattern = /^(\\d+)(-?(е|й|є|а|я))?/i;\nconst parseOrdinalNumberPattern = /\\d+/i;\n\nconst matchEraPatterns = {\n narrow: /^((до )?н\\.?\\s?е\\.?)/i,\n abbreviated: /^((до )?н\\.?\\s?е\\.?)/i,\n wide: /^(до нашої ери|нашої ери|наша ера)/i,\n};\n\nconst parseEraPatterns = {\n any: [/^д/i, /^н/i],\n};\n\nconst matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^[1234](-?[иі]?й?)? кв.?/i,\n wide: /^[1234](-?[иі]?й?)? квартал/i,\n};\n\nconst parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i],\n};\n\nconst matchMonthPatterns = {\n narrow: /^[слбктчвжг]/i,\n abbreviated:\n /^(січ|лют|бер(ез)?|квіт|трав|черв|лип|серп|вер(ес)?|жовт|лис(топ)?|груд)\\.?/i,\n wide: /^(січень|січня|лютий|лютого|березень|березня|квітень|квітня|травень|травня|червня|червень|липень|липня|серпень|серпня|вересень|вересня|жовтень|жовтня|листопад[а]?|грудень|грудня)/i,\n};\n\nconst parseMonthPatterns = {\n narrow: [\n /^с/i,\n /^л/i,\n /^б/i,\n /^к/i,\n /^т/i,\n /^ч/i,\n /^л/i,\n /^с/i,\n /^в/i,\n /^ж/i,\n /^л/i,\n /^г/i,\n ],\n\n any: [\n /^сі/i,\n /^лю/i,\n /^б/i,\n /^к/i,\n /^т/i,\n /^ч/i,\n /^лип/i,\n /^се/i,\n /^в/i,\n /^ж/i,\n /^лис/i,\n /^г/i,\n ],\n};\n\nconst matchDayPatterns = {\n narrow: /^[нпвсч]/i,\n short: /^(нд|пн|вт|ср|чт|пт|сб)\\.?/i,\n abbreviated: /^(нед|пон|вів|сер|че?тв|птн?|суб)\\.?/i,\n wide: /^(неділ[яі]|понеділ[ок][ка]|вівтор[ок][ка]|серед[аи]|четвер(га)?|п\\W*?ятниц[яі]|субот[аи])/i,\n};\n\nconst parseDayPatterns = {\n narrow: [/^н/i, /^п/i, /^в/i, /^с/i, /^ч/i, /^п/i, /^с/i],\n any: [/^н/i, /^п[он]/i, /^в/i, /^с[ер]/i, /^ч/i, /^п\\W*?[ят]/i, /^с[уб]/i],\n};\n\nconst matchDayPeriodPatterns = {\n narrow: /^([дп]п|півн\\.?|пол\\.?|ранок|ранку|день|дня|веч\\.?|ніч|ночі)/i,\n abbreviated: /^([дп]п|півн\\.?|пол\\.?|ранок|ранку|день|дня|веч\\.?|ніч|ночі)/i,\n wide: /^([дп]п|північ|полудень|ранок|ранку|день|дня|вечір|вечора|ніч|ночі)/i,\n};\n\nconst parseDayPeriodPatterns = {\n any: {\n am: /^дп/i,\n pm: /^пп/i,\n midnight: /^півн/i,\n noon: /^пол/i,\n morning: /^р/i,\n afternoon: /^д[ен]/i,\n evening: /^в/i,\n night: /^н/i,\n },\n};\n\nexport const match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: (value) => parseInt(value, 10),\n }),\n\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseEraPatterns,\n defaultParseWidth: \"any\",\n }),\n\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: \"any\",\n valueCallback: (index) => index + 1,\n }),\n\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: \"any\",\n }),\n\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPatterns,\n defaultParseWidth: \"any\",\n }),\n\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: \"any\",\n }),\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["cn","inputs","twMerge","clsx","getRandomString","length","Date","now","Math","random","toString","replace","slice","capitalize","str","toUpperCase","buttonVariants","cva","variants","variant","default","destructive","outline","secondary","ghost","link","size","sm","lg","icon","defaultVariants","Button","forwardRef","asChild","className","props","ref","_jsx","Slot","displayName","AlertDialog","title","description","cancelTitle","actionTitle","onCancel","onConfirm","rootProps","triggerElement","triggerProps","portalProps","overlayProps","contentProps","headerProps","titleProps","descriptionProps","footerProps","cancelProps","cancelButtonProps","actionProps","actionButtonProps","_jsxs","AlertDialogPrimitive","Root","children","Trigger","Portal","Overlay","Content","Title","Description","Cancel","onClick","Action","Spinner","loading","layout","type","spinnerElement","LoaderCircle","Loader","strokeWidth","AttachmentLink","url","pending","target","rel","href","AttachmentAudio","uid","containerProps","audioId","src","id","controls","AttachmentVideo","maxSize","onReady","videoId","videoMaxSize","playerRef","useRef","style","setStyle","useState","maxHeight","maxWidth","useImperativeHandle","current","preload","onCanPlay","event","player","videoWidth","videoHeight","ratio","height","round","width","AttachmentImage","linkProps","imageId","alt","onLoad","AttachmentFile","name","iconElement","fileId","File","AttachmentFailed","failedId","FileXCorner","Attachment","memo","mimeType","split","PresenceBadge","status","xmlns","fill","viewBox","d","Presence","badge","label","badgeProps","labelProps","presence","Avatar","fallbackIconElement","online","onlineProps","presenceProps","imageProps","fallbackProps","initials","words","trim","filter","Boolean","getInitialsFromName","AvatarPrimitive","Image","Fallback","badgeVariants","Badge","buildFormatLongFn","args","options","String","defaultWidth","formats","buildLocalizeFn","value","valuesArray","context","formattingValues","defaultFormattingWidth","values","argumentCallback","buildMatchFn","string","matchPattern","matchPatterns","defaultMatchWidth","matchResult","match","matchedString","parsePatterns","defaultParseWidth","key","Array","isArray","array","predicate","findIndex","pattern","test","object","Object","prototype","hasOwnProperty","call","findKey","valueCallback","rest","buildMatchPatternFn","parseResult","parsePattern","constructFromSymbol","Symbol","for","constructFrom","date","constructor","defaultOptions","getDefaultOptions","toDate","argument","startOfWeek","weekStartsOn","locale","_date","in","day","getDay","diff","setDate","getDate","setHours","isSameWeek","laterDate","earlierDate","laterDate_","earlierDate_","dates","normalize","bind","find","map","normalizeDates","formatDistanceLocale","lessThanXSeconds","one","other","xSeconds","halfAMinute","lessThanXMinutes","xMinutes","aboutXHours","xHours","xDays","aboutXWeeks","xWeeks","aboutXMonths","xMonths","aboutXYears","xYears","overXYears","almostXYears","formatLong","full","long","medium","short","time","dateTime","formatRelativeLocale","lastWeek","yesterday","today","tomorrow","nextWeek","el","code","formatDistance","token","count","result","tokenValue","addSuffix","comparison","formatRelative","format","localize","ordinalNumber","dirtyNumber","number","Number","unit","suffix","era","narrow","abbreviated","wide","quarter","month","dayPeriod","am","pm","midnight","noon","morning","afternoon","evening","night","parseInt","any","index","firstWeekContainsDate","_options","rem100","enUS","_baseDate","declension","scheme","undefined","rem10","singularNominative","singularGenitive","pluralGenitive","buildLocalizeTokenFn","future","regular","past","_","accusativeWeekdays","thisWeek","dirtyDate","baseDate","weekday","uk","locales","en","ua","formatDate","language","distanceToNow","formatDistanceToNow","isToday","differenceInCalendarDays","isWithinLast7Days","FormattedDate","formatDuration","seconds","h","floor","m","s","pad","num","padStart","CallMessage","signal","info","duration","fromMe","isLast","iconProps","infoProps","formattedDateProps","CallIcon","Phone","PhoneIncoming","PhoneOutgoing","PhoneMissed","DEFAULT_LINKIFY_OPTIONS","DEFAULT_SKELETON_LINES_CLASS_NAMES","LinkifyText","text","linkifyProps","skeletonContainerProps","skeletonLineProps","skeletonLinesClassNames","pendingRef","useMemo","useEffect","_createElement","Linkify","decodeHtmlEntities","element","document","createElement","innerHTML","textContent","LinkPreview","thin","iconFallbackElement","image","titleContainerProps","iconFallbackProps","imageContainerProps","iconSrc","setIconSrc","imageSrc","setImageSrc","handleOnLoad","useCallback","handleIconOnError","onError","handleImageOnError","Globe","StatusSent","Clock","Check","CheckCheck","Ban","ChatMessage","sameSenderAbove","senderName","senderAvatar","attachmentElement","linkifyTextElement","linkPreviewElement","onView","avatarProps","bubbleProps","statusSentProps","attachmentProps","linkifyTextProps","linkPreviewProps","setRef","inView","useInView","messageRef","setRefs","node","hasAvatar","hasAvatarMargin","hasThinMarginTop","DialogItem","isPrivateDialog","selected","onSelect","photo","userOnline","userPresence","hasGroupIcon","lastSentStatus","lastSentDate","lastSenderName","lastMessage","typingStatusText","draft","draftLabel","unreadCount","divider","headerLeftProps","groupIconProps","nameProps","headerRightProps","statusSentIconProps","lastMessageProps","draftLabelProps","lastSenderNameProps","unreadBadgeProps","dividerProps","avatarSource","avatarFallback","avatarOnline","avatarPresence","showTopDivider","showBottomDivider","Users","DismissLayer","active","onDismiss","disableClickOutside","disableEscKeyPress","disabled","innerRef","handleClickOrTouch","e","handleKeyEvent","ev","addEventListener","removeEventListener","onTouchStart","Label","LabelRoot","handleFiles","fileList","accept","multiple","onSelectFile","onInvalidFile","files","from","validated","acceptList","toLowerCase","every","file","fileMimeType","fileType","fileSubtype","some","acceptType","startsWith","endsWith","areValidFiles","FilePickerInput","htmlFor","Paperclip","onChange","currentTarget","FilePickerDropzone","placeholder","dropZoneProps","placeholderContainerProps","placeholderProps","isDragging","setIsDragging","handleDragEvent","preventDefault","stopPropagation","onDragEnter","dataTransfer","items","onDragLeave","contains","relatedTarget","onDragOver","onDrop","clearData","FilePlusCorner","absoluteStrokeWidth","Input","PlaceholderText","titles","rowProps","rows","row","Search","onSearch","hasSearchIcon","hasCancelIcon","searchIconProps","cancelIconProps","setValue","SearchIcon","keyword","CloseIcon","StatusIndicator","statusColorConfig","unknown","statusProps","tooltipProviderProps","tooltipProps","tooltipTriggerProps","tooltipPortalProps","tooltipContentProps","tooltipArrowProps","tooltip","TooltipPrimitive","Provider","Arrow","StreamView","stream","mirror","muted","elementId","isMuted","mirrorClassName","srcObject","playVideo","play","error","console","onloadedmetadata","queueMicrotask","autoPlay","playsInline","LocalStreamView","RemoteStreamView","FullscreenStreamView","pipElement","navElement","hideIconElement","showIconElement","fullscreenButtonProps","fullscreenButtonIconProps","pipProps","pipButtonProps","pipButtonIconProps","isFullscreen","setIsFullscreen","isPictureInPicture","setIsPictureInPicture","toggleFullscreen","async","container","fullscreenElement","exitFullscreen","requestFullscreen","err","togglePictureInPicture","prevState","assign","onFullscreenChange","Minimize","Maximize","PictureInPicture2","Switch","SwitchPrimitive","Thumb"],"mappings":"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","x_google_ignoreList":[8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36]}
1
+ {"version":3,"file":"index.js","sources":["../src/components/utils.ts","../src/components/button.tsx","../src/components/alert-dialog.tsx","../src/components/spinner.tsx","../src/components/attachment.tsx","../src/components/presence.tsx","../src/components/avatar.tsx","../src/components/badge.tsx","../node_modules/date-fns/locale/_lib/buildFormatLongFn.js","../node_modules/date-fns/locale/_lib/buildLocalizeFn.js","../node_modules/date-fns/locale/_lib/buildMatchFn.js","../node_modules/date-fns/locale/_lib/buildMatchPatternFn.js","../node_modules/date-fns/constants.js","../node_modules/date-fns/constructFrom.js","../node_modules/date-fns/_lib/defaultOptions.js","../node_modules/date-fns/toDate.js","../node_modules/date-fns/startOfWeek.js","../node_modules/date-fns/isSameWeek.js","../node_modules/date-fns/_lib/normalizeDates.js","../node_modules/date-fns/locale/el/_lib/formatDistance.js","../node_modules/date-fns/locale/el/_lib/formatLong.js","../node_modules/date-fns/locale/el/_lib/formatRelative.js","../node_modules/date-fns/locale/el.js","../node_modules/date-fns/locale/el/_lib/localize.js","../node_modules/date-fns/locale/el/_lib/match.js","../node_modules/date-fns/locale/en-US/_lib/formatDistance.js","../node_modules/date-fns/locale/en-US/_lib/formatRelative.js","../node_modules/date-fns/locale/en-US/_lib/localize.js","../node_modules/date-fns/locale/en-US/_lib/match.js","../node_modules/date-fns/locale/en-US.js","../node_modules/date-fns/locale/en-US/_lib/formatLong.js","../node_modules/date-fns/locale/uk/_lib/formatDistance.js","../node_modules/date-fns/locale/uk/_lib/formatLong.js","../node_modules/date-fns/locale/uk/_lib/formatRelative.js","../node_modules/date-fns/locale/uk.js","../node_modules/date-fns/locale/uk/_lib/localize.js","../node_modules/date-fns/locale/uk/_lib/match.js","../src/components/formatted-date.tsx","../src/components/status-sent.tsx","../src/components/chat-bubble.tsx","../src/components/label.tsx","../src/components/chat-input.tsx","../src/components/file-picker.tsx","../src/components/quick-actions.tsx","../src/components/chat-list.tsx","../src/components/checkbox.tsx","../src/components/dialog-item.tsx","../src/components/placeholder-text.tsx","../src/components/dialogs-list.tsx","../src/components/dismiss-layer.tsx","../src/components/input.tsx","../src/components/link-preview.tsx","../src/components/linkify-text.tsx","../src/components/search.tsx","../src/components/status-call.tsx","../src/components/status-indicator.tsx","../src/components/stream-view.tsx","../src/components/switch.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,"export function buildFormatLongFn(args) {\n return (options = {}) => {\n // TODO: Remove String()\n const width = options.width ? String(options.width) : args.defaultWidth;\n const format = args.formats[width] || args.formats[args.defaultWidth];\n return format;\n };\n}\n","/**\n * The localize function argument callback which allows to convert raw value to\n * the actual type.\n *\n * @param value - The value to convert\n *\n * @returns The converted value\n */\n\n/**\n * The map of localized values for each width.\n */\n\n/**\n * The index type of the locale unit value. It types conversion of units of\n * values that don't start at 0 (i.e. quarters).\n */\n\n/**\n * Converts the unit value to the tuple of values.\n */\n\n/**\n * The tuple of localized era values. The first element represents BC,\n * the second element represents AD.\n */\n\n/**\n * The tuple of localized quarter values. The first element represents Q1.\n */\n\n/**\n * The tuple of localized day values. The first element represents Sunday.\n */\n\n/**\n * The tuple of localized month values. The first element represents January.\n */\n\nexport function buildLocalizeFn(args) {\n return (value, options) => {\n const context = options?.context ? String(options.context) : \"standalone\";\n\n let valuesArray;\n if (context === \"formatting\" && args.formattingValues) {\n const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;\n const width = options?.width ? String(options.width) : defaultWidth;\n\n valuesArray =\n args.formattingValues[width] || args.formattingValues[defaultWidth];\n } else {\n const defaultWidth = args.defaultWidth;\n const width = options?.width ? String(options.width) : args.defaultWidth;\n\n valuesArray = args.values[width] || args.values[defaultWidth];\n }\n const index = args.argumentCallback ? args.argumentCallback(value) : value;\n\n // @ts-expect-error - For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it!\n return valuesArray[index];\n };\n}\n","export function buildMatchFn(args) {\n return (string, options = {}) => {\n const width = options.width;\n\n const matchPattern =\n (width && args.matchPatterns[width]) ||\n args.matchPatterns[args.defaultMatchWidth];\n const matchResult = string.match(matchPattern);\n\n if (!matchResult) {\n return null;\n }\n const matchedString = matchResult[0];\n\n const parsePatterns =\n (width && args.parsePatterns[width]) ||\n args.parsePatterns[args.defaultParseWidth];\n\n const key = Array.isArray(parsePatterns)\n ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString))\n : // [TODO] -- I challenge you to fix the type\n findKey(parsePatterns, (pattern) => pattern.test(matchedString));\n\n let value;\n\n value = args.valueCallback ? args.valueCallback(key) : key;\n value = options.valueCallback\n ? // [TODO] -- I challenge you to fix the type\n options.valueCallback(value)\n : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n\nfunction findKey(object, predicate) {\n for (const key in object) {\n if (\n Object.prototype.hasOwnProperty.call(object, key) &&\n predicate(object[key])\n ) {\n return key;\n }\n }\n return undefined;\n}\n\nfunction findIndex(array, predicate) {\n for (let key = 0; key < array.length; key++) {\n if (predicate(array[key])) {\n return key;\n }\n }\n return undefined;\n}\n","export function buildMatchPatternFn(args) {\n return (string, options = {}) => {\n const matchResult = string.match(args.matchPattern);\n if (!matchResult) return null;\n const matchedString = matchResult[0];\n\n const parseResult = string.match(args.parsePattern);\n if (!parseResult) return null;\n let value = args.valueCallback\n ? args.valueCallback(parseResult[0])\n : parseResult[0];\n\n // [TODO] I challenge you to fix the type\n value = options.valueCallback ? options.valueCallback(value) : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n","/**\n * @module constants\n * @summary Useful constants\n * @description\n * Collection of useful date constants.\n *\n * The constants could be imported from `date-fns/constants`:\n *\n * ```ts\n * import { maxTime, minTime } from \"./constants/date-fns/constants\";\n *\n * function isAllowedTime(time) {\n * return time <= maxTime && time >= minTime;\n * }\n * ```\n */\n\n/**\n * @constant\n * @name daysInWeek\n * @summary Days in 1 week.\n */\nexport const daysInWeek = 7;\n\n/**\n * @constant\n * @name daysInYear\n * @summary Days in 1 year.\n *\n * @description\n * How many days in a year.\n *\n * One years equals 365.2425 days according to the formula:\n *\n * > Leap year occurs every 4 years, except for years that are divisible by 100 and not divisible by 400.\n * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days\n */\nexport const daysInYear = 365.2425;\n\n/**\n * @constant\n * @name maxTime\n * @summary Maximum allowed time.\n *\n * @example\n * import { maxTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = 8640000000000001 <= maxTime;\n * //=> false\n *\n * new Date(8640000000000001);\n * //=> Invalid Date\n */\nexport const maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000;\n\n/**\n * @constant\n * @name minTime\n * @summary Minimum allowed time.\n *\n * @example\n * import { minTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = -8640000000000001 >= minTime;\n * //=> false\n *\n * new Date(-8640000000000001)\n * //=> Invalid Date\n */\nexport const minTime = -maxTime;\n\n/**\n * @constant\n * @name millisecondsInWeek\n * @summary Milliseconds in 1 week.\n */\nexport const millisecondsInWeek = 604800000;\n\n/**\n * @constant\n * @name millisecondsInDay\n * @summary Milliseconds in 1 day.\n */\nexport const millisecondsInDay = 86400000;\n\n/**\n * @constant\n * @name millisecondsInMinute\n * @summary Milliseconds in 1 minute\n */\nexport const millisecondsInMinute = 60000;\n\n/**\n * @constant\n * @name millisecondsInHour\n * @summary Milliseconds in 1 hour\n */\nexport const millisecondsInHour = 3600000;\n\n/**\n * @constant\n * @name millisecondsInSecond\n * @summary Milliseconds in 1 second\n */\nexport const millisecondsInSecond = 1000;\n\n/**\n * @constant\n * @name minutesInYear\n * @summary Minutes in 1 year.\n */\nexport const minutesInYear = 525600;\n\n/**\n * @constant\n * @name minutesInMonth\n * @summary Minutes in 1 month.\n */\nexport const minutesInMonth = 43200;\n\n/**\n * @constant\n * @name minutesInDay\n * @summary Minutes in 1 day.\n */\nexport const minutesInDay = 1440;\n\n/**\n * @constant\n * @name minutesInHour\n * @summary Minutes in 1 hour.\n */\nexport const minutesInHour = 60;\n\n/**\n * @constant\n * @name monthsInQuarter\n * @summary Months in 1 quarter.\n */\nexport const monthsInQuarter = 3;\n\n/**\n * @constant\n * @name monthsInYear\n * @summary Months in 1 year.\n */\nexport const monthsInYear = 12;\n\n/**\n * @constant\n * @name quartersInYear\n * @summary Quarters in 1 year\n */\nexport const quartersInYear = 4;\n\n/**\n * @constant\n * @name secondsInHour\n * @summary Seconds in 1 hour.\n */\nexport const secondsInHour = 3600;\n\n/**\n * @constant\n * @name secondsInMinute\n * @summary Seconds in 1 minute.\n */\nexport const secondsInMinute = 60;\n\n/**\n * @constant\n * @name secondsInDay\n * @summary Seconds in 1 day.\n */\nexport const secondsInDay = secondsInHour * 24;\n\n/**\n * @constant\n * @name secondsInWeek\n * @summary Seconds in 1 week.\n */\nexport const secondsInWeek = secondsInDay * 7;\n\n/**\n * @constant\n * @name secondsInYear\n * @summary Seconds in 1 year.\n */\nexport const secondsInYear = secondsInDay * daysInYear;\n\n/**\n * @constant\n * @name secondsInMonth\n * @summary Seconds in 1 month\n */\nexport const secondsInMonth = secondsInYear / 12;\n\n/**\n * @constant\n * @name secondsInQuarter\n * @summary Seconds in 1 quarter.\n */\nexport const secondsInQuarter = secondsInMonth * 3;\n\n/**\n * @constant\n * @name constructFromSymbol\n * @summary Symbol enabling Date extensions to inherit properties from the reference date.\n *\n * The symbol is used to enable the `constructFrom` function to construct a date\n * using a reference date and a value. It allows to transfer extra properties\n * from the reference date to the new date. It's useful for extensions like\n * [`TZDate`](https://github.com/date-fns/tz) that accept a time zone as\n * a constructor argument.\n */\nexport const constructFromSymbol = Symbol.for(\"constructDateFrom\");\n","import { constructFromSymbol } from \"./constants.js\";\n\n/**\n * @name constructFrom\n * @category Generic Helpers\n * @summary Constructs a date using the reference date and the value\n *\n * @description\n * The function constructs a new date using the constructor from the reference\n * date and the given value. It helps to build generic functions that accept\n * date extensions.\n *\n * It defaults to `Date` if the passed reference date is a number or a string.\n *\n * Starting from v3.7.0, it allows to construct a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The reference date to take constructor from\n * @param value - The value to create the date\n *\n * @returns Date initialized using the given date and value\n *\n * @example\n * import { constructFrom } from \"./constructFrom/date-fns\";\n *\n * // A function that clones a date preserving the original type\n * function cloneDate<DateType extends Date>(date: DateType): DateType {\n * return constructFrom(\n * date, // Use constructor from the given date\n * date.getTime() // Use the date value to create a new date\n * );\n * }\n */\nexport function constructFrom(date, value) {\n if (typeof date === \"function\") return date(value);\n\n if (date && typeof date === \"object\" && constructFromSymbol in date)\n return date[constructFromSymbol](value);\n\n if (date instanceof Date) return new date.constructor(value);\n\n return new Date(value);\n}\n\n// Fallback for modularized imports:\nexport default constructFrom;\n","let defaultOptions = {};\n\nexport function getDefaultOptions() {\n return defaultOptions;\n}\n\nexport function setDefaultOptions(newOptions) {\n defaultOptions = newOptions;\n}\n","import { constructFrom } from \"./constructFrom.js\";\n\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * Starting from v3.7.0, it clones a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param argument - The value to convert\n *\n * @returns The parsed date in the local time zone\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\nexport function toDate(argument, context) {\n // [TODO] Get rid of `toDate` or `constructFrom`?\n return constructFrom(context || argument, argument);\n}\n\n// Fallback for modularized imports:\nexport default toDate;\n","import { getDefaultOptions } from \"./_lib/defaultOptions.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link startOfWeek} function options.\n */\n\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The original date\n * @param options - An object with options\n *\n * @returns The start of a week\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport function startOfWeek(date, options) {\n const defaultOptions = getDefaultOptions();\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const _date = toDate(date, options?.in);\n const day = _date.getDay();\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n\n _date.setDate(_date.getDate() - diff);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfWeek;\n","import { normalizeDates } from \"./_lib/normalizeDates.js\";\nimport { startOfWeek } from \"./startOfWeek.js\";\n\n/**\n * The {@link isSameWeek} function options.\n */\n\n/**\n * @name isSameWeek\n * @category Week Helpers\n * @summary Are the given dates in the same week (and month and year)?\n *\n * @description\n * Are the given dates in the same week (and month and year)?\n *\n * @param laterDate - The first date to check\n * @param earlierDate - The second date to check\n * @param options - An object with options\n *\n * @returns The dates are in the same week (and month and year)\n *\n * @example\n * // Are 31 August 2014 and 4 September 2014 in the same week?\n * const result = isSameWeek(new Date(2014, 7, 31), new Date(2014, 8, 4))\n * //=> true\n *\n * @example\n * // If week starts with Monday,\n * // are 31 August 2014 and 4 September 2014 in the same week?\n * const result = isSameWeek(new Date(2014, 7, 31), new Date(2014, 8, 4), {\n * weekStartsOn: 1\n * })\n * //=> false\n *\n * @example\n * // Are 1 January 2014 and 1 January 2015 in the same week?\n * const result = isSameWeek(new Date(2014, 0, 1), new Date(2015, 0, 1))\n * //=> false\n */\nexport function isSameWeek(laterDate, earlierDate, options) {\n const [laterDate_, earlierDate_] = normalizeDates(\n options?.in,\n laterDate,\n earlierDate,\n );\n return (\n +startOfWeek(laterDate_, options) === +startOfWeek(earlierDate_, options)\n );\n}\n\n// Fallback for modularized imports:\nexport default isSameWeek;\n","import { constructFrom } from \"../constructFrom.js\";\n\nexport function normalizeDates(context, ...dates) {\n const normalize = constructFrom.bind(\n null,\n context || dates.find((date) => typeof date === \"object\"),\n );\n return dates.map(normalize);\n}\n","const formatDistanceLocale = {\n lessThanXSeconds: {\n one: \"λιγότερο από ένα δευτερόλεπτο\",\n other: \"λιγότερο από {{count}} δευτερόλεπτα\",\n },\n\n xSeconds: {\n one: \"1 δευτερόλεπτο\",\n other: \"{{count}} δευτερόλεπτα\",\n },\n\n halfAMinute: \"μισό λεπτό\",\n\n lessThanXMinutes: {\n one: \"λιγότερο από ένα λεπτό\",\n other: \"λιγότερο από {{count}} λεπτά\",\n },\n\n xMinutes: {\n one: \"1 λεπτό\",\n other: \"{{count}} λεπτά\",\n },\n\n aboutXHours: {\n one: \"περίπου 1 ώρα\",\n other: \"περίπου {{count}} ώρες\",\n },\n\n xHours: {\n one: \"1 ώρα\",\n other: \"{{count}} ώρες\",\n },\n\n xDays: {\n one: \"1 ημέρα\",\n other: \"{{count}} ημέρες\",\n },\n\n aboutXWeeks: {\n one: \"περίπου 1 εβδομάδα\",\n other: \"περίπου {{count}} εβδομάδες\",\n },\n\n xWeeks: {\n one: \"1 εβδομάδα\",\n other: \"{{count}} εβδομάδες\",\n },\n\n aboutXMonths: {\n one: \"περίπου 1 μήνας\",\n other: \"περίπου {{count}} μήνες\",\n },\n\n xMonths: {\n one: \"1 μήνας\",\n other: \"{{count}} μήνες\",\n },\n\n aboutXYears: {\n one: \"περίπου 1 χρόνο\",\n other: \"περίπου {{count}} χρόνια\",\n },\n\n xYears: {\n one: \"1 χρόνο\",\n other: \"{{count}} χρόνια\",\n },\n\n overXYears: {\n one: \"πάνω από 1 χρόνο\",\n other: \"πάνω από {{count}} χρόνια\",\n },\n\n almostXYears: {\n one: \"περίπου 1 χρόνο\",\n other: \"περίπου {{count}} χρόνια\",\n },\n};\n\nexport const formatDistance = (token, count, options) => {\n let result;\n\n const tokenValue = formatDistanceLocale[token];\n if (typeof tokenValue === \"string\") {\n result = tokenValue;\n } else if (count === 1) {\n result = tokenValue.one;\n } else {\n result = tokenValue.other.replace(\"{{count}}\", String(count));\n }\n\n if (options?.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return \"σε \" + result;\n } else {\n return result + \" πριν\";\n }\n }\n\n return result;\n};\n","import { buildFormatLongFn } from \"../../_lib/buildFormatLongFn.js\";\n\nconst dateFormats = {\n full: \"EEEE, d MMMM y\",\n long: \"d MMMM y\",\n medium: \"d MMM y\",\n short: \"d/M/yy\",\n};\n\nconst timeFormats = {\n full: \"h:mm:ss a zzzz\",\n long: \"h:mm:ss a z\",\n medium: \"h:mm:ss a\",\n short: \"h:mm a\",\n};\n\nconst dateTimeFormats = {\n full: \"{{date}} - {{time}}\",\n long: \"{{date}} - {{time}}\",\n medium: \"{{date}}, {{time}}\",\n short: \"{{date}}, {{time}}\",\n};\n\nexport const formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: \"full\",\n }),\n\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: \"full\",\n }),\n\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: \"full\",\n }),\n};\n","const formatRelativeLocale = {\n lastWeek: (date) => {\n switch (date.getDay()) {\n case 6: //Σάββατο\n return \"'το προηγούμενο' eeee 'στις' p\";\n default:\n return \"'την προηγούμενη' eeee 'στις' p\";\n }\n },\n yesterday: \"'χθες στις' p\",\n today: \"'σήμερα στις' p\",\n tomorrow: \"'αύριο στις' p\",\n nextWeek: \"eeee 'στις' p\",\n other: \"P\",\n};\n\nexport const formatRelative = (token, date) => {\n const format = formatRelativeLocale[token];\n\n if (typeof format === \"function\") return format(date);\n\n return format;\n};\n","import { formatDistance } from \"./el/_lib/formatDistance.js\";\nimport { formatLong } from \"./el/_lib/formatLong.js\";\nimport { formatRelative } from \"./el/_lib/formatRelative.js\";\nimport { localize } from \"./el/_lib/localize.js\";\nimport { match } from \"./el/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary Greek locale.\n * @language Greek\n * @iso-639-2 ell\n * @author Fanis Katsimpas [@fanixk](https://github.com/fanixk)\n * @author Theodoros Orfanidis [@teoulas](https://github.com/teoulas)\n */\nexport const el = {\n code: \"el\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 1 /* Monday */,\n firstWeekContainsDate: 4,\n },\n};\n\n// Fallback for modularized imports:\nexport default el;\n","import { buildLocalizeFn } from \"../../_lib/buildLocalizeFn.js\";\n\nconst eraValues = {\n narrow: [\"πΧ\", \"μΧ\"],\n abbreviated: [\"π.Χ.\", \"μ.Χ.\"],\n wide: [\"προ Χριστού\", \"μετά Χριστόν\"],\n};\n\nconst quarterValues = {\n narrow: [\"1\", \"2\", \"3\", \"4\"],\n abbreviated: [\"Τ1\", \"Τ2\", \"Τ3\", \"Τ4\"],\n wide: [\"1ο τρίμηνο\", \"2ο τρίμηνο\", \"3ο τρίμηνο\", \"4ο τρίμηνο\"],\n};\n\nconst monthValues = {\n narrow: [\"Ι\", \"Φ\", \"Μ\", \"Α\", \"Μ\", \"Ι\", \"Ι\", \"Α\", \"Σ\", \"Ο\", \"Ν\", \"Δ\"],\n abbreviated: [\n \"Ιαν\",\n \"Φεβ\",\n \"Μάρ\",\n \"Απρ\",\n \"Μάι\",\n \"Ιούν\",\n \"Ιούλ\",\n \"Αύγ\",\n \"Σεπ\",\n \"Οκτ\",\n \"Νοέ\",\n \"Δεκ\",\n ],\n\n wide: [\n \"Ιανουάριος\",\n \"Φεβρουάριος\",\n \"Μάρτιος\",\n \"Απρίλιος\",\n \"Μάιος\",\n \"Ιούνιος\",\n \"Ιούλιος\",\n \"Αύγουστος\",\n \"Σεπτέμβριος\",\n \"Οκτώβριος\",\n \"Νοέμβριος\",\n \"Δεκέμβριος\",\n ],\n};\n\nconst formattingMonthValues = {\n narrow: [\"Ι\", \"Φ\", \"Μ\", \"Α\", \"Μ\", \"Ι\", \"Ι\", \"Α\", \"Σ\", \"Ο\", \"Ν\", \"Δ\"],\n abbreviated: [\n \"Ιαν\",\n \"Φεβ\",\n \"Μαρ\",\n \"Απρ\",\n \"Μαΐ\",\n \"Ιουν\",\n \"Ιουλ\",\n \"Αυγ\",\n \"Σεπ\",\n \"Οκτ\",\n \"Νοε\",\n \"Δεκ\",\n ],\n\n wide: [\n \"Ιανουαρίου\",\n \"Φεβρουαρίου\",\n \"Μαρτίου\",\n \"Απριλίου\",\n \"Μαΐου\",\n \"Ιουνίου\",\n \"Ιουλίου\",\n \"Αυγούστου\",\n \"Σεπτεμβρίου\",\n \"Οκτωβρίου\",\n \"Νοεμβρίου\",\n \"Δεκεμβρίου\",\n ],\n};\n\nconst dayValues = {\n narrow: [\"Κ\", \"Δ\", \"T\", \"Τ\", \"Π\", \"Π\", \"Σ\"],\n short: [\"Κυ\", \"Δε\", \"Τρ\", \"Τε\", \"Πέ\", \"Πα\", \"Σά\"],\n abbreviated: [\"Κυρ\", \"Δευ\", \"Τρί\", \"Τετ\", \"Πέμ\", \"Παρ\", \"Σάβ\"],\n wide: [\n \"Κυριακή\",\n \"Δευτέρα\",\n \"Τρίτη\",\n \"Τετάρτη\",\n \"Πέμπτη\",\n \"Παρασκευή\",\n \"Σάββατο\",\n ],\n};\n\nconst dayPeriodValues = {\n narrow: {\n am: \"πμ\",\n pm: \"μμ\",\n midnight: \"μεσάνυχτα\",\n noon: \"μεσημέρι\",\n morning: \"πρωί\",\n afternoon: \"απόγευμα\",\n evening: \"βράδυ\",\n night: \"νύχτα\",\n },\n abbreviated: {\n am: \"π.μ.\",\n pm: \"μ.μ.\",\n midnight: \"μεσάνυχτα\",\n noon: \"μεσημέρι\",\n morning: \"πρωί\",\n afternoon: \"απόγευμα\",\n evening: \"βράδυ\",\n night: \"νύχτα\",\n },\n wide: {\n am: \"π.μ.\",\n pm: \"μ.μ.\",\n midnight: \"μεσάνυχτα\",\n noon: \"μεσημέρι\",\n morning: \"πρωί\",\n afternoon: \"απόγευμα\",\n evening: \"βράδυ\",\n night: \"νύχτα\",\n },\n};\n\nconst ordinalNumber = (dirtyNumber, options) => {\n const number = Number(dirtyNumber);\n const unit = options?.unit;\n let suffix;\n\n if (unit === \"year\" || unit === \"month\") {\n suffix = \"ος\";\n } else if (\n unit === \"week\" ||\n unit === \"dayOfYear\" ||\n unit === \"day\" ||\n unit === \"hour\" ||\n unit === \"date\"\n ) {\n suffix = \"η\";\n } else {\n suffix = \"ο\";\n }\n\n return number + suffix;\n};\n\nexport const localize = {\n ordinalNumber,\n\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: \"wide\",\n }),\n\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: \"wide\",\n argumentCallback: (quarter) => quarter - 1,\n }),\n\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: \"wide\",\n formattingValues: formattingMonthValues,\n defaultFormattingWidth: \"wide\",\n }),\n\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: \"wide\",\n }),\n\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: \"wide\",\n }),\n};\n","import { buildMatchFn } from \"../../_lib/buildMatchFn.js\";\nimport { buildMatchPatternFn } from \"../../_lib/buildMatchPatternFn.js\";\n\nconst matchOrdinalNumberPattern = /^(\\d+)(ος|η|ο)?/i;\nconst parseOrdinalNumberPattern = /\\d+/i;\n\nconst matchEraPatterns = {\n narrow: /^(πΧ|μΧ)/i,\n abbreviated: /^(π\\.?\\s?χ\\.?|π\\.?\\s?κ\\.?\\s?χ\\.?|μ\\.?\\s?χ\\.?|κ\\.?\\s?χ\\.?)/i,\n wide: /^(προ Χριστο(ύ|υ)|πριν απ(ό|ο) την Κοιν(ή|η) Χρονολογ(ί|ι)α|μετ(ά|α) Χριστ(ό|ο)ν|Κοιν(ή|η) Χρονολογ(ί|ι)α)/i,\n};\nconst parseEraPatterns = {\n any: [/^π/i, /^(μ|κ)/i],\n};\n\nconst matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^τ[1234]/i,\n wide: /^[1234]ο? τρ(ί|ι)μηνο/i,\n};\nconst parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i],\n};\n\nconst matchMonthPatterns = {\n narrow: /^[ιφμαμιιασονδ]/i,\n abbreviated:\n /^(ιαν|φεβ|μ[άα]ρ|απρ|μ[άα][ιΐ]|ιο[ύυ]ν|ιο[ύυ]λ|α[ύυ]γ|σεπ|οκτ|νο[έε]|δεκ)/i,\n wide: /^(μ[άα][ιΐ]|α[ύυ]γο[υύ]στ)(ος|ου)|(ιανου[άα]ρ|φεβρου[άα]ρ|μ[άα]ρτ|απρ[ίι]λ|ιο[ύυ]ν|ιο[ύυ]λ|σεπτ[έε]μβρ|οκτ[ώω]βρ|νο[έε]μβρ|δεκ[έε]μβρ)(ιος|ίου)/i,\n};\nconst parseMonthPatterns = {\n narrow: [\n /^ι/i,\n /^φ/i,\n /^μ/i,\n /^α/i,\n /^μ/i,\n /^ι/i,\n /^ι/i,\n /^α/i,\n /^σ/i,\n /^ο/i,\n /^ν/i,\n /^δ/i,\n ],\n\n any: [\n /^ια/i,\n /^φ/i,\n /^μ[άα]ρ/i,\n /^απ/i,\n /^μ[άα][ιΐ]/i,\n /^ιο[ύυ]ν/i,\n /^ιο[ύυ]λ/i,\n /^α[ύυ]/i,\n /^σ/i,\n /^ο/i,\n /^ν/i,\n /^δ/i,\n ],\n};\n\nconst matchDayPatterns = {\n narrow: /^[κδτπσ]/i,\n short: /^(κυ|δε|τρ|τε|π[εέ]|π[αά]|σ[αά])/i,\n abbreviated: /^(κυρ|δευ|τρι|τετ|πεμ|παρ|σαβ)/i,\n wide: /^(κυριακ(ή|η)|δευτ(έ|ε)ρα|τρ(ί|ι)τη|τετ(ά|α)ρτη|π(έ|ε)μπτη|παρασκευ(ή|η)|σ(ά|α)ββατο)/i,\n};\nconst parseDayPatterns = {\n narrow: [/^κ/i, /^δ/i, /^τ/i, /^τ/i, /^π/i, /^π/i, /^σ/i],\n any: [/^κ/i, /^δ/i, /^τρ/i, /^τε/i, /^π[εέ]/i, /^π[αά]/i, /^σ/i],\n};\n\nconst matchDayPeriodPatterns = {\n narrow:\n /^(πμ|μμ|μεσ(ά|α)νυχτα|μεσημ(έ|ε)ρι|πρω(ί|ι)|απ(ό|ο)γευμα|βρ(ά|α)δυ|ν(ύ|υ)χτα)/i,\n any: /^([πμ]\\.?\\s?μ\\.?|μεσ(ά|α)νυχτα|μεσημ(έ|ε)ρι|πρω(ί|ι)|απ(ό|ο)γευμα|βρ(ά|α)δυ|ν(ύ|υ)χτα)/i,\n};\nconst parseDayPeriodPatterns = {\n any: {\n am: /^πμ|π\\.\\s?μ\\./i,\n pm: /^μμ|μ\\.\\s?μ\\./i,\n midnight: /^μεσάν/i,\n noon: /^μεσημ(έ|ε)/i,\n morning: /πρω(ί|ι)/i,\n afternoon: /απ(ό|ο)γευμα/i,\n evening: /βρ(ά|α)δυ/i,\n night: /ν(ύ|υ)χτα/i,\n },\n};\n\nexport const match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: (value) => parseInt(value, 10),\n }),\n\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseEraPatterns,\n defaultParseWidth: \"any\",\n }),\n\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: \"any\",\n valueCallback: (index) => index + 1,\n }),\n\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: \"any\",\n }),\n\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPatterns,\n defaultParseWidth: \"any\",\n }),\n\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: \"any\",\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: \"any\",\n }),\n};\n","const formatDistanceLocale = {\n lessThanXSeconds: {\n one: \"less than a second\",\n other: \"less than {{count}} seconds\",\n },\n\n xSeconds: {\n one: \"1 second\",\n other: \"{{count}} seconds\",\n },\n\n halfAMinute: \"half a minute\",\n\n lessThanXMinutes: {\n one: \"less than a minute\",\n other: \"less than {{count}} minutes\",\n },\n\n xMinutes: {\n one: \"1 minute\",\n other: \"{{count}} minutes\",\n },\n\n aboutXHours: {\n one: \"about 1 hour\",\n other: \"about {{count}} hours\",\n },\n\n xHours: {\n one: \"1 hour\",\n other: \"{{count}} hours\",\n },\n\n xDays: {\n one: \"1 day\",\n other: \"{{count}} days\",\n },\n\n aboutXWeeks: {\n one: \"about 1 week\",\n other: \"about {{count}} weeks\",\n },\n\n xWeeks: {\n one: \"1 week\",\n other: \"{{count}} weeks\",\n },\n\n aboutXMonths: {\n one: \"about 1 month\",\n other: \"about {{count}} months\",\n },\n\n xMonths: {\n one: \"1 month\",\n other: \"{{count}} months\",\n },\n\n aboutXYears: {\n one: \"about 1 year\",\n other: \"about {{count}} years\",\n },\n\n xYears: {\n one: \"1 year\",\n other: \"{{count}} years\",\n },\n\n overXYears: {\n one: \"over 1 year\",\n other: \"over {{count}} years\",\n },\n\n almostXYears: {\n one: \"almost 1 year\",\n other: \"almost {{count}} years\",\n },\n};\n\nexport const formatDistance = (token, count, options) => {\n let result;\n\n const tokenValue = formatDistanceLocale[token];\n if (typeof tokenValue === \"string\") {\n result = tokenValue;\n } else if (count === 1) {\n result = tokenValue.one;\n } else {\n result = tokenValue.other.replace(\"{{count}}\", count.toString());\n }\n\n if (options?.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return \"in \" + result;\n } else {\n return result + \" ago\";\n }\n }\n\n return result;\n};\n","const formatRelativeLocale = {\n lastWeek: \"'last' eeee 'at' p\",\n yesterday: \"'yesterday at' p\",\n today: \"'today at' p\",\n tomorrow: \"'tomorrow at' p\",\n nextWeek: \"eeee 'at' p\",\n other: \"P\",\n};\n\nexport const formatRelative = (token, _date, _baseDate, _options) =>\n formatRelativeLocale[token];\n","import { buildLocalizeFn } from \"../../_lib/buildLocalizeFn.js\";\n\nconst eraValues = {\n narrow: [\"B\", \"A\"],\n abbreviated: [\"BC\", \"AD\"],\n wide: [\"Before Christ\", \"Anno Domini\"],\n};\n\nconst quarterValues = {\n narrow: [\"1\", \"2\", \"3\", \"4\"],\n abbreviated: [\"Q1\", \"Q2\", \"Q3\", \"Q4\"],\n wide: [\"1st quarter\", \"2nd quarter\", \"3rd quarter\", \"4th quarter\"],\n};\n\n// Note: in English, the names of days of the week and months are capitalized.\n// If you are making a new locale based on this one, check if the same is true for the language you're working on.\n// Generally, formatted dates should look like they are in the middle of a sentence,\n// e.g. in Spanish language the weekdays and months should be in the lowercase.\nconst monthValues = {\n narrow: [\"J\", \"F\", \"M\", \"A\", \"M\", \"J\", \"J\", \"A\", \"S\", \"O\", \"N\", \"D\"],\n abbreviated: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n\n wide: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n ],\n};\n\nconst dayValues = {\n narrow: [\"S\", \"M\", \"T\", \"W\", \"T\", \"F\", \"S\"],\n short: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n abbreviated: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n wide: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n ],\n};\n\nconst dayPeriodValues = {\n narrow: {\n am: \"a\",\n pm: \"p\",\n midnight: \"mi\",\n noon: \"n\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n abbreviated: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n wide: {\n am: \"a.m.\",\n pm: \"p.m.\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"morning\",\n afternoon: \"afternoon\",\n evening: \"evening\",\n night: \"night\",\n },\n};\n\nconst formattingDayPeriodValues = {\n narrow: {\n am: \"a\",\n pm: \"p\",\n midnight: \"mi\",\n noon: \"n\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n abbreviated: {\n am: \"AM\",\n pm: \"PM\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n wide: {\n am: \"a.m.\",\n pm: \"p.m.\",\n midnight: \"midnight\",\n noon: \"noon\",\n morning: \"in the morning\",\n afternoon: \"in the afternoon\",\n evening: \"in the evening\",\n night: \"at night\",\n },\n};\n\nconst ordinalNumber = (dirtyNumber, _options) => {\n const number = Number(dirtyNumber);\n\n // If ordinal numbers depend on context, for example,\n // if they are different for different grammatical genders,\n // use `options.unit`.\n //\n // `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',\n // 'day', 'hour', 'minute', 'second'.\n\n const rem100 = number % 100;\n if (rem100 > 20 || rem100 < 10) {\n switch (rem100 % 10) {\n case 1:\n return number + \"st\";\n case 2:\n return number + \"nd\";\n case 3:\n return number + \"rd\";\n }\n }\n return number + \"th\";\n};\n\nexport const localize = {\n ordinalNumber,\n\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: \"wide\",\n }),\n\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: \"wide\",\n argumentCallback: (quarter) => quarter - 1,\n }),\n\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: \"wide\",\n }),\n\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: \"wide\",\n }),\n\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: \"wide\",\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: \"wide\",\n }),\n};\n","import { buildMatchFn } from \"../../_lib/buildMatchFn.js\";\nimport { buildMatchPatternFn } from \"../../_lib/buildMatchPatternFn.js\";\n\nconst matchOrdinalNumberPattern = /^(\\d+)(th|st|nd|rd)?/i;\nconst parseOrdinalNumberPattern = /\\d+/i;\n\nconst matchEraPatterns = {\n narrow: /^(b|a)/i,\n abbreviated: /^(b\\.?\\s?c\\.?|b\\.?\\s?c\\.?\\s?e\\.?|a\\.?\\s?d\\.?|c\\.?\\s?e\\.?)/i,\n wide: /^(before christ|before common era|anno domini|common era)/i,\n};\nconst parseEraPatterns = {\n any: [/^b/i, /^(a|c)/i],\n};\n\nconst matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^q[1234]/i,\n wide: /^[1234](th|st|nd|rd)? quarter/i,\n};\nconst parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i],\n};\n\nconst matchMonthPatterns = {\n narrow: /^[jfmasond]/i,\n abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,\n wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i,\n};\nconst parseMonthPatterns = {\n narrow: [\n /^j/i,\n /^f/i,\n /^m/i,\n /^a/i,\n /^m/i,\n /^j/i,\n /^j/i,\n /^a/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n\n any: [\n /^ja/i,\n /^f/i,\n /^mar/i,\n /^ap/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^au/i,\n /^s/i,\n /^o/i,\n /^n/i,\n /^d/i,\n ],\n};\n\nconst matchDayPatterns = {\n narrow: /^[smtwf]/i,\n short: /^(su|mo|tu|we|th|fr|sa)/i,\n abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,\n wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i,\n};\nconst parseDayPatterns = {\n narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],\n any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i],\n};\n\nconst matchDayPeriodPatterns = {\n narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,\n any: /^([ap]\\.?\\s?m\\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i,\n};\nconst parseDayPeriodPatterns = {\n any: {\n am: /^a/i,\n pm: /^p/i,\n midnight: /^mi/i,\n noon: /^no/i,\n morning: /morning/i,\n afternoon: /afternoon/i,\n evening: /evening/i,\n night: /night/i,\n },\n};\n\nexport const match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: (value) => parseInt(value, 10),\n }),\n\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseEraPatterns,\n defaultParseWidth: \"any\",\n }),\n\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: \"any\",\n valueCallback: (index) => index + 1,\n }),\n\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: \"any\",\n }),\n\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPatterns,\n defaultParseWidth: \"any\",\n }),\n\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: \"any\",\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: \"any\",\n }),\n};\n","import { formatDistance } from \"./en-US/_lib/formatDistance.js\";\nimport { formatLong } from \"./en-US/_lib/formatLong.js\";\nimport { formatRelative } from \"./en-US/_lib/formatRelative.js\";\nimport { localize } from \"./en-US/_lib/localize.js\";\nimport { match } from \"./en-US/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp](https://github.com/kossnocorp)\n * @author Lesha Koss [@leshakoss](https://github.com/leshakoss)\n */\nexport const enUS = {\n code: \"en-US\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0 /* Sunday */,\n firstWeekContainsDate: 1,\n },\n};\n\n// Fallback for modularized imports:\nexport default enUS;\n","import { buildFormatLongFn } from \"../../_lib/buildFormatLongFn.js\";\n\nconst dateFormats = {\n full: \"EEEE, MMMM do, y\",\n long: \"MMMM do, y\",\n medium: \"MMM d, y\",\n short: \"MM/dd/yyyy\",\n};\n\nconst timeFormats = {\n full: \"h:mm:ss a zzzz\",\n long: \"h:mm:ss a z\",\n medium: \"h:mm:ss a\",\n short: \"h:mm a\",\n};\n\nconst dateTimeFormats = {\n full: \"{{date}} 'at' {{time}}\",\n long: \"{{date}} 'at' {{time}}\",\n medium: \"{{date}}, {{time}}\",\n short: \"{{date}}, {{time}}\",\n};\n\nexport const formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: \"full\",\n }),\n\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: \"full\",\n }),\n\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: \"full\",\n }),\n};\n","function declension(scheme, count) {\n // scheme for count=1 exists\n if (scheme.one !== undefined && count === 1) {\n return scheme.one;\n }\n\n const rem10 = count % 10;\n const rem100 = count % 100;\n\n // 1, 21, 31, ...\n if (rem10 === 1 && rem100 !== 11) {\n return scheme.singularNominative.replace(\"{{count}}\", String(count));\n\n // 2, 3, 4, 22, 23, 24, 32 ...\n } else if (rem10 >= 2 && rem10 <= 4 && (rem100 < 10 || rem100 > 20)) {\n return scheme.singularGenitive.replace(\"{{count}}\", String(count));\n\n // 5, 6, 7, 8, 9, 10, 11, ...\n } else {\n return scheme.pluralGenitive.replace(\"{{count}}\", String(count));\n }\n}\n\nfunction buildLocalizeTokenFn(scheme) {\n return (count, options) => {\n if (options && options.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n if (scheme.future) {\n return declension(scheme.future, count);\n } else {\n return \"за \" + declension(scheme.regular, count);\n }\n } else {\n if (scheme.past) {\n return declension(scheme.past, count);\n } else {\n return declension(scheme.regular, count) + \" тому\";\n }\n }\n } else {\n return declension(scheme.regular, count);\n }\n };\n}\n\nconst halfAtMinute = (_, options) => {\n if (options && options.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return \"за півхвилини\";\n } else {\n return \"півхвилини тому\";\n }\n }\n\n return \"півхвилини\";\n};\n\nconst formatDistanceLocale = {\n lessThanXSeconds: buildLocalizeTokenFn({\n regular: {\n one: \"менше секунди\",\n singularNominative: \"менше {{count}} секунди\",\n singularGenitive: \"менше {{count}} секунд\",\n pluralGenitive: \"менше {{count}} секунд\",\n },\n future: {\n one: \"менше, ніж за секунду\",\n singularNominative: \"менше, ніж за {{count}} секунду\",\n singularGenitive: \"менше, ніж за {{count}} секунди\",\n pluralGenitive: \"менше, ніж за {{count}} секунд\",\n },\n }),\n\n xSeconds: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} секунда\",\n singularGenitive: \"{{count}} секунди\",\n pluralGenitive: \"{{count}} секунд\",\n },\n past: {\n singularNominative: \"{{count}} секунду тому\",\n singularGenitive: \"{{count}} секунди тому\",\n pluralGenitive: \"{{count}} секунд тому\",\n },\n future: {\n singularNominative: \"за {{count}} секунду\",\n singularGenitive: \"за {{count}} секунди\",\n pluralGenitive: \"за {{count}} секунд\",\n },\n }),\n\n halfAMinute: halfAtMinute,\n\n lessThanXMinutes: buildLocalizeTokenFn({\n regular: {\n one: \"менше хвилини\",\n singularNominative: \"менше {{count}} хвилини\",\n singularGenitive: \"менше {{count}} хвилин\",\n pluralGenitive: \"менше {{count}} хвилин\",\n },\n future: {\n one: \"менше, ніж за хвилину\",\n singularNominative: \"менше, ніж за {{count}} хвилину\",\n singularGenitive: \"менше, ніж за {{count}} хвилини\",\n pluralGenitive: \"менше, ніж за {{count}} хвилин\",\n },\n }),\n\n xMinutes: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} хвилина\",\n singularGenitive: \"{{count}} хвилини\",\n pluralGenitive: \"{{count}} хвилин\",\n },\n past: {\n singularNominative: \"{{count}} хвилину тому\",\n singularGenitive: \"{{count}} хвилини тому\",\n pluralGenitive: \"{{count}} хвилин тому\",\n },\n future: {\n singularNominative: \"за {{count}} хвилину\",\n singularGenitive: \"за {{count}} хвилини\",\n pluralGenitive: \"за {{count}} хвилин\",\n },\n }),\n\n aboutXHours: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"близько {{count}} години\",\n singularGenitive: \"близько {{count}} годин\",\n pluralGenitive: \"близько {{count}} годин\",\n },\n future: {\n singularNominative: \"приблизно за {{count}} годину\",\n singularGenitive: \"приблизно за {{count}} години\",\n pluralGenitive: \"приблизно за {{count}} годин\",\n },\n }),\n\n xHours: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} годину\",\n singularGenitive: \"{{count}} години\",\n pluralGenitive: \"{{count}} годин\",\n },\n }),\n\n xDays: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} день\",\n singularGenitive: \"{{count}} днi\",\n pluralGenitive: \"{{count}} днів\",\n },\n }),\n\n aboutXWeeks: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"близько {{count}} тижня\",\n singularGenitive: \"близько {{count}} тижнів\",\n pluralGenitive: \"близько {{count}} тижнів\",\n },\n future: {\n singularNominative: \"приблизно за {{count}} тиждень\",\n singularGenitive: \"приблизно за {{count}} тижні\",\n pluralGenitive: \"приблизно за {{count}} тижнів\",\n },\n }),\n\n xWeeks: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} тиждень\",\n singularGenitive: \"{{count}} тижні\",\n pluralGenitive: \"{{count}} тижнів\",\n },\n }),\n\n aboutXMonths: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"близько {{count}} місяця\",\n singularGenitive: \"близько {{count}} місяців\",\n pluralGenitive: \"близько {{count}} місяців\",\n },\n future: {\n singularNominative: \"приблизно за {{count}} місяць\",\n singularGenitive: \"приблизно за {{count}} місяці\",\n pluralGenitive: \"приблизно за {{count}} місяців\",\n },\n }),\n\n xMonths: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} місяць\",\n singularGenitive: \"{{count}} місяці\",\n pluralGenitive: \"{{count}} місяців\",\n },\n }),\n\n aboutXYears: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"близько {{count}} року\",\n singularGenitive: \"близько {{count}} років\",\n pluralGenitive: \"близько {{count}} років\",\n },\n future: {\n singularNominative: \"приблизно за {{count}} рік\",\n singularGenitive: \"приблизно за {{count}} роки\",\n pluralGenitive: \"приблизно за {{count}} років\",\n },\n }),\n\n xYears: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"{{count}} рік\",\n singularGenitive: \"{{count}} роки\",\n pluralGenitive: \"{{count}} років\",\n },\n }),\n\n overXYears: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"більше {{count}} року\",\n singularGenitive: \"більше {{count}} років\",\n pluralGenitive: \"більше {{count}} років\",\n },\n future: {\n singularNominative: \"більше, ніж за {{count}} рік\",\n singularGenitive: \"більше, ніж за {{count}} роки\",\n pluralGenitive: \"більше, ніж за {{count}} років\",\n },\n }),\n\n almostXYears: buildLocalizeTokenFn({\n regular: {\n singularNominative: \"майже {{count}} рік\",\n singularGenitive: \"майже {{count}} роки\",\n pluralGenitive: \"майже {{count}} років\",\n },\n future: {\n singularNominative: \"майже за {{count}} рік\",\n singularGenitive: \"майже за {{count}} роки\",\n pluralGenitive: \"майже за {{count}} років\",\n },\n }),\n};\n\nexport const formatDistance = (token, count, options) => {\n options = options || {};\n\n return formatDistanceLocale[token](count, options);\n};\n","import { buildFormatLongFn } from \"../../_lib/buildFormatLongFn.js\";\n\nconst dateFormats = {\n full: \"EEEE, do MMMM y 'р.'\",\n long: \"do MMMM y 'р.'\",\n medium: \"d MMM y 'р.'\",\n short: \"dd.MM.y\",\n};\n\nconst timeFormats = {\n full: \"H:mm:ss zzzz\",\n long: \"H:mm:ss z\",\n medium: \"H:mm:ss\",\n short: \"H:mm\",\n};\n\nconst dateTimeFormats = {\n full: \"{{date}} 'о' {{time}}\",\n long: \"{{date}} 'о' {{time}}\",\n medium: \"{{date}}, {{time}}\",\n short: \"{{date}}, {{time}}\",\n};\n\nexport const formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: \"full\",\n }),\n\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: \"full\",\n }),\n\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: \"full\",\n }),\n};\n","import { isSameWeek } from \"../../../isSameWeek.js\";\nimport { toDate } from \"../../../toDate.js\";\n\nconst accusativeWeekdays = [\n \"неділю\",\n \"понеділок\",\n \"вівторок\",\n \"середу\",\n \"четвер\",\n \"п’ятницю\",\n \"суботу\",\n];\n\nfunction lastWeek(day) {\n const weekday = accusativeWeekdays[day];\n\n switch (day) {\n case 0:\n case 3:\n case 5:\n case 6:\n return \"'у минулу \" + weekday + \" о' p\";\n case 1:\n case 2:\n case 4:\n return \"'у минулий \" + weekday + \" о' p\";\n }\n}\n\nfunction thisWeek(day) {\n const weekday = accusativeWeekdays[day];\n\n return \"'у \" + weekday + \" о' p\";\n}\n\nfunction nextWeek(day) {\n const weekday = accusativeWeekdays[day];\n\n switch (day) {\n case 0:\n case 3:\n case 5:\n case 6:\n return \"'у наступну \" + weekday + \" о' p\";\n case 1:\n case 2:\n case 4:\n return \"'у наступний \" + weekday + \" о' p\";\n }\n}\n\nconst lastWeekFormat = (dirtyDate, baseDate, options) => {\n const date = toDate(dirtyDate);\n const day = date.getDay();\n\n if (isSameWeek(date, baseDate, options)) {\n return thisWeek(day);\n } else {\n return lastWeek(day);\n }\n};\n\nconst nextWeekFormat = (dirtyDate, baseDate, options) => {\n const date = toDate(dirtyDate);\n const day = date.getDay();\n if (isSameWeek(date, baseDate, options)) {\n return thisWeek(day);\n } else {\n return nextWeek(day);\n }\n};\n\nconst formatRelativeLocale = {\n lastWeek: lastWeekFormat,\n yesterday: \"'вчора о' p\",\n today: \"'сьогодні о' p\",\n tomorrow: \"'завтра о' p\",\n nextWeek: nextWeekFormat,\n other: \"P\",\n};\n\nexport const formatRelative = (token, date, baseDate, options) => {\n const format = formatRelativeLocale[token];\n\n if (typeof format === \"function\") {\n return format(date, baseDate, options);\n }\n\n return format;\n};\n","import { formatDistance } from \"./uk/_lib/formatDistance.js\";\nimport { formatLong } from \"./uk/_lib/formatLong.js\";\nimport { formatRelative } from \"./uk/_lib/formatRelative.js\";\nimport { localize } from \"./uk/_lib/localize.js\";\nimport { match } from \"./uk/_lib/match.js\";\n\n/**\n * @category Locales\n * @summary Ukrainian locale.\n * @language Ukrainian\n * @iso-639-2 ukr\n * @author Andrii Korzh [@korzhyk](https://github.com/korzhyk)\n * @author Andriy Shcherbyak [@shcherbyakdev](https://github.com/shcherbyakdev)\n */\nexport const uk = {\n code: \"uk\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 1 /* Monday */,\n firstWeekContainsDate: 1,\n },\n};\n\n// Fallback for modularized imports:\nexport default uk;\n","import { buildLocalizeFn } from \"../../_lib/buildLocalizeFn.js\";\n\nconst eraValues = {\n narrow: [\"до н.е.\", \"н.е.\"],\n abbreviated: [\"до н. е.\", \"н. е.\"],\n wide: [\"до нашої ери\", \"нашої ери\"],\n};\n\nconst quarterValues = {\n narrow: [\"1\", \"2\", \"3\", \"4\"],\n abbreviated: [\"1-й кв.\", \"2-й кв.\", \"3-й кв.\", \"4-й кв.\"],\n wide: [\"1-й квартал\", \"2-й квартал\", \"3-й квартал\", \"4-й квартал\"],\n};\n\nconst monthValues = {\n // ДСТУ 3582:2013\n narrow: [\"С\", \"Л\", \"Б\", \"К\", \"Т\", \"Ч\", \"Л\", \"С\", \"В\", \"Ж\", \"Л\", \"Г\"],\n abbreviated: [\n \"січ.\",\n \"лют.\",\n \"берез.\",\n \"квіт.\",\n \"трав.\",\n \"черв.\",\n \"лип.\",\n \"серп.\",\n \"верес.\",\n \"жовт.\",\n \"листоп.\",\n \"груд.\",\n ],\n\n wide: [\n \"січень\",\n \"лютий\",\n \"березень\",\n \"квітень\",\n \"травень\",\n \"червень\",\n \"липень\",\n \"серпень\",\n \"вересень\",\n \"жовтень\",\n \"листопад\",\n \"грудень\",\n ],\n};\n\nconst formattingMonthValues = {\n narrow: [\"С\", \"Л\", \"Б\", \"К\", \"Т\", \"Ч\", \"Л\", \"С\", \"В\", \"Ж\", \"Л\", \"Г\"],\n abbreviated: [\n \"січ.\",\n \"лют.\",\n \"берез.\",\n \"квіт.\",\n \"трав.\",\n \"черв.\",\n \"лип.\",\n \"серп.\",\n \"верес.\",\n \"жовт.\",\n \"листоп.\",\n \"груд.\",\n ],\n\n wide: [\n \"січня\",\n \"лютого\",\n \"березня\",\n \"квітня\",\n \"травня\",\n \"червня\",\n \"липня\",\n \"серпня\",\n \"вересня\",\n \"жовтня\",\n \"листопада\",\n \"грудня\",\n ],\n};\n\nconst dayValues = {\n narrow: [\"Н\", \"П\", \"В\", \"С\", \"Ч\", \"П\", \"С\"],\n short: [\"нд\", \"пн\", \"вт\", \"ср\", \"чт\", \"пт\", \"сб\"],\n abbreviated: [\"нед\", \"пон\", \"вів\", \"сер\", \"чтв\", \"птн\", \"суб\"],\n wide: [\n \"неділя\",\n \"понеділок\",\n \"вівторок\",\n \"середа\",\n \"четвер\",\n \"п’ятниця\",\n \"субота\",\n ],\n};\n\nconst dayPeriodValues = {\n narrow: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"півн.\",\n noon: \"пол.\",\n morning: \"ранок\",\n afternoon: \"день\",\n evening: \"веч.\",\n night: \"ніч\",\n },\n abbreviated: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"півн.\",\n noon: \"пол.\",\n morning: \"ранок\",\n afternoon: \"день\",\n evening: \"веч.\",\n night: \"ніч\",\n },\n wide: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"північ\",\n noon: \"полудень\",\n morning: \"ранок\",\n afternoon: \"день\",\n evening: \"вечір\",\n night: \"ніч\",\n },\n};\n\nconst formattingDayPeriodValues = {\n narrow: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"півн.\",\n noon: \"пол.\",\n morning: \"ранку\",\n afternoon: \"дня\",\n evening: \"веч.\",\n night: \"ночі\",\n },\n abbreviated: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"півн.\",\n noon: \"пол.\",\n morning: \"ранку\",\n afternoon: \"дня\",\n evening: \"веч.\",\n night: \"ночі\",\n },\n wide: {\n am: \"ДП\",\n pm: \"ПП\",\n midnight: \"північ\",\n noon: \"полудень\",\n morning: \"ранку\",\n afternoon: \"дня\",\n evening: \"веч.\",\n night: \"ночі\",\n },\n};\n\nconst ordinalNumber = (dirtyNumber, options) => {\n const unit = String(options?.unit);\n const number = Number(dirtyNumber);\n let suffix;\n\n if (unit === \"date\") {\n if (number === 3 || number === 23) {\n suffix = \"-є\";\n } else {\n suffix = \"-е\";\n }\n } else if (unit === \"minute\" || unit === \"second\" || unit === \"hour\") {\n suffix = \"-а\";\n } else {\n suffix = \"-й\";\n }\n\n return number + suffix;\n};\n\nexport const localize = {\n ordinalNumber,\n\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: \"wide\",\n }),\n\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: \"wide\",\n argumentCallback: (quarter) => quarter - 1,\n }),\n\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: \"wide\",\n formattingValues: formattingMonthValues,\n defaultFormattingWidth: \"wide\",\n }),\n\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: \"wide\",\n }),\n\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: \"any\",\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: \"wide\",\n }),\n};\n","import { buildMatchFn } from \"../../_lib/buildMatchFn.js\";\nimport { buildMatchPatternFn } from \"../../_lib/buildMatchPatternFn.js\";\n\nconst matchOrdinalNumberPattern = /^(\\d+)(-?(е|й|є|а|я))?/i;\nconst parseOrdinalNumberPattern = /\\d+/i;\n\nconst matchEraPatterns = {\n narrow: /^((до )?н\\.?\\s?е\\.?)/i,\n abbreviated: /^((до )?н\\.?\\s?е\\.?)/i,\n wide: /^(до нашої ери|нашої ери|наша ера)/i,\n};\n\nconst parseEraPatterns = {\n any: [/^д/i, /^н/i],\n};\n\nconst matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^[1234](-?[иі]?й?)? кв.?/i,\n wide: /^[1234](-?[иі]?й?)? квартал/i,\n};\n\nconst parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i],\n};\n\nconst matchMonthPatterns = {\n narrow: /^[слбктчвжг]/i,\n abbreviated:\n /^(січ|лют|бер(ез)?|квіт|трав|черв|лип|серп|вер(ес)?|жовт|лис(топ)?|груд)\\.?/i,\n wide: /^(січень|січня|лютий|лютого|березень|березня|квітень|квітня|травень|травня|червня|червень|липень|липня|серпень|серпня|вересень|вересня|жовтень|жовтня|листопад[а]?|грудень|грудня)/i,\n};\n\nconst parseMonthPatterns = {\n narrow: [\n /^с/i,\n /^л/i,\n /^б/i,\n /^к/i,\n /^т/i,\n /^ч/i,\n /^л/i,\n /^с/i,\n /^в/i,\n /^ж/i,\n /^л/i,\n /^г/i,\n ],\n\n any: [\n /^сі/i,\n /^лю/i,\n /^б/i,\n /^к/i,\n /^т/i,\n /^ч/i,\n /^лип/i,\n /^се/i,\n /^в/i,\n /^ж/i,\n /^лис/i,\n /^г/i,\n ],\n};\n\nconst matchDayPatterns = {\n narrow: /^[нпвсч]/i,\n short: /^(нд|пн|вт|ср|чт|пт|сб)\\.?/i,\n abbreviated: /^(нед|пон|вів|сер|че?тв|птн?|суб)\\.?/i,\n wide: /^(неділ[яі]|понеділ[ок][ка]|вівтор[ок][ка]|серед[аи]|четвер(га)?|п\\W*?ятниц[яі]|субот[аи])/i,\n};\n\nconst parseDayPatterns = {\n narrow: [/^н/i, /^п/i, /^в/i, /^с/i, /^ч/i, /^п/i, /^с/i],\n any: [/^н/i, /^п[он]/i, /^в/i, /^с[ер]/i, /^ч/i, /^п\\W*?[ят]/i, /^с[уб]/i],\n};\n\nconst matchDayPeriodPatterns = {\n narrow: /^([дп]п|півн\\.?|пол\\.?|ранок|ранку|день|дня|веч\\.?|ніч|ночі)/i,\n abbreviated: /^([дп]п|півн\\.?|пол\\.?|ранок|ранку|день|дня|веч\\.?|ніч|ночі)/i,\n wide: /^([дп]п|північ|полудень|ранок|ранку|день|дня|вечір|вечора|ніч|ночі)/i,\n};\n\nconst parseDayPeriodPatterns = {\n any: {\n am: /^дп/i,\n pm: /^пп/i,\n midnight: /^півн/i,\n noon: /^пол/i,\n morning: /^р/i,\n afternoon: /^д[ен]/i,\n evening: /^в/i,\n night: /^н/i,\n },\n};\n\nexport const match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: (value) => parseInt(value, 10),\n }),\n\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseEraPatterns,\n defaultParseWidth: \"any\",\n }),\n\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: \"any\",\n valueCallback: (index) => index + 1,\n }),\n\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: \"any\",\n }),\n\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPatterns,\n defaultParseWidth: \"any\",\n }),\n\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: \"wide\",\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: \"any\",\n }),\n};\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["cn","inputs","twMerge","clsx","getRandomString","length","Date","now","Math","random","toString","replace","slice","capitalize","str","toUpperCase","buttonVariants","cva","variants","variant","default","destructive","outline","secondary","ghost","link","size","sm","lg","icon","defaultVariants","Button","forwardRef","asChild","className","props","ref","_jsx","Slot","displayName","AlertDialog","title","description","cancelTitle","actionTitle","onCancel","onConfirm","rootProps","triggerElement","triggerProps","portalProps","overlayProps","contentProps","headerProps","titleProps","descriptionProps","footerProps","cancelProps","cancelButtonProps","actionProps","actionButtonProps","_jsxs","AlertDialogPrimitive","Root","children","Trigger","Portal","Overlay","Content","Title","Description","Cancel","onClick","Action","Spinner","loading","layout","type","spinnerElement","LoaderCircle","Loader","strokeWidth","AttachmentLink","url","pending","target","rel","href","AttachmentAudio","uid","containerProps","audioId","src","id","controls","AttachmentVideo","maxSize","onReady","videoId","videoMaxSize","playerRef","useRef","style","setStyle","useState","maxHeight","maxWidth","useImperativeHandle","current","preload","onCanPlay","event","player","videoWidth","videoHeight","ratio","height","round","width","AttachmentImage","linkProps","imageId","alt","onLoad","AttachmentFile","name","iconElement","fileId","File","AttachmentFailed","failedId","FileXCorner","Attachment","memo","mimeType","split","PresenceBadge","status","xmlns","fill","viewBox","d","Presence","badge","label","badgeProps","labelProps","presence","Avatar","fallbackIconElement","online","onlineProps","presenceProps","imageProps","fallbackProps","initials","words","trim","filter","Boolean","getInitialsFromName","AvatarPrimitive","Image","Fallback","badgeVariants","Badge","buildFormatLongFn","args","options","String","defaultWidth","formats","buildLocalizeFn","value","valuesArray","context","formattingValues","defaultFormattingWidth","values","argumentCallback","buildMatchFn","string","matchPattern","matchPatterns","defaultMatchWidth","matchResult","match","matchedString","parsePatterns","defaultParseWidth","key","Array","isArray","array","predicate","findIndex","pattern","test","object","Object","prototype","hasOwnProperty","call","findKey","valueCallback","rest","buildMatchPatternFn","parseResult","parsePattern","constructFromSymbol","Symbol","for","constructFrom","date","constructor","defaultOptions","getDefaultOptions","toDate","argument","startOfWeek","weekStartsOn","locale","_date","in","day","getDay","diff","setDate","getDate","setHours","isSameWeek","laterDate","earlierDate","laterDate_","earlierDate_","dates","normalize","bind","find","map","normalizeDates","formatDistanceLocale","lessThanXSeconds","one","other","xSeconds","halfAMinute","lessThanXMinutes","xMinutes","aboutXHours","xHours","xDays","aboutXWeeks","xWeeks","aboutXMonths","xMonths","aboutXYears","xYears","overXYears","almostXYears","formatLong","full","long","medium","short","time","dateTime","formatRelativeLocale","lastWeek","yesterday","today","tomorrow","nextWeek","el","code","formatDistance","token","count","result","tokenValue","addSuffix","comparison","formatRelative","format","localize","ordinalNumber","dirtyNumber","number","Number","unit","suffix","era","narrow","abbreviated","wide","quarter","month","dayPeriod","am","pm","midnight","noon","morning","afternoon","evening","night","parseInt","any","index","firstWeekContainsDate","_options","rem100","enUS","_baseDate","declension","scheme","undefined","rem10","singularNominative","singularGenitive","pluralGenitive","buildLocalizeTokenFn","future","regular","past","_","accusativeWeekdays","thisWeek","dirtyDate","baseDate","weekday","uk","locales","en","ua","formatDate","language","distanceToNow","formatDistanceToNow","isToday","differenceInCalendarDays","isWithinLast7Days","FormattedDate","StatusSent","Clock","Check","CheckCheck","Ban","ChatBubble","onView","isLast","setRef","inView","useInView","messageRef","setRefs","useCallback","node","useEffect","ChatBubbleMessage","fromMe","sameSenderAbove","senderName","senderAvatar","statusSent","avatarProps","bubbleProps","formattedDateProps","statusSentProps","hasAvatar","hasAvatarMargin","ChatBubbleInfo","info","infoProps","Label","LabelRoot","ChatInputSend","onSend","iconProps","SendHorizontal","ChatInput","draft","onDraft","onTyping","onHeightGrow","hideChatInputSend","chatInputSendProps","setValue","textareaRef","textareaHeightRef","typingRef","typingTimeoutRef","handleStopTyping","clearTimeout","handleOnSend","async","focus","textarea","queueMicrotask","TextareaAutosize","autoFocus","minRows","maxRows","onChange","data","nativeEvent","setTimeout","onKeyDown","shiftKey","preventDefault","onHeightChange","meta","shift","rowHeight","handleFiles","fileList","accept","multiple","onSelectFile","onInvalidFile","files","from","validated","acceptList","toLowerCase","every","file","fileMimeType","fileType","fileSubtype","some","acceptType","startsWith","endsWith","areValidFiles","FilePickerInput","htmlFor","Paperclip","currentTarget","FilePickerDropzone","placeholder","dropZoneProps","placeholderContainerProps","placeholderProps","isDragging","setIsDragging","handleDragEvent","stopPropagation","onDragEnter","dataTransfer","items","onDragLeave","contains","relatedTarget","onDragOver","onDrop","clearData","FilePlusCorner","absoluteStrokeWidth","QuickActions","actions","onAction","action","DefaultChatListWrapper","ChatList","textareaMeasurement","offsetToReach","onScrollStartReached","onScrollEndReached","onListReset","onListCreate","onListGrow","enableFilePickerDropzone","filePickerDropzoneProps","quickActionsProps","quickActionsVisible","minItemsCount","ChatListWrapper","chatListWrapperProps","itemsCount","itemsCountRef","keyRef","shouldPrependMessages","setShouldPrependMessages","isPreparing","setIsPreparing","virtuaRef","prepareNextVirtualizer","scrollToBottom","force","scrollSize","scrollOffset","viewportSize","scrollToIndex","align","scrollBy","Virtualizer","onScroll","offset","Checkbox","indicatorProps","CheckboxPrimitive","Indicator","CheckIcon","DialogItem","isPrivateDialog","selected","onSelect","photo","userOnline","userPresence","hasGroupIcon","lastSentStatus","lastSentDate","lastSenderName","lastMessage","typingStatusText","draftLabel","unreadCount","divider","headerLeftProps","groupIconProps","nameProps","headerRightProps","statusSentIconProps","lastMessageProps","draftLabelProps","lastSenderNameProps","unreadBadgeProps","dividerProps","avatarSource","avatarFallback","avatarOnline","avatarPresence","showTopDivider","showBottomDivider","Users","PlaceholderText","titles","rowProps","rows","row","PendingItem","DialogsList","pendingListLength","placeholderVisible","placeholderTitles","vListRef","skeletonList","i","VList","DismissLayer","active","onDismiss","disableClickOutside","disableEscKeyPress","disabled","innerRef","handleClickOrTouch","e","handleKeyEvent","ev","document","addEventListener","removeEventListener","onTouchStart","Input","decodeHtmlEntities","text","element","createElement","innerHTML","textContent","LinkPreview","thin","iconFallbackElement","image","titleContainerProps","iconFallbackProps","imageContainerProps","iconSrc","setIconSrc","imageSrc","setImageSrc","handleOnLoad","handleIconOnError","onError","handleImageOnError","Globe","DEFAULT_LINKIFY_OPTIONS","DEFAULT_SKELETON_LINES_CLASS_NAMES","LinkifyText","linkifyProps","skeletonContainerProps","skeletonLineProps","skeletonLinesClassNames","pendingRef","useMemo","_createElement","Linkify","Search","onSearch","hasSearchIcon","hasCancelIcon","searchIconProps","cancelIconProps","SearchIcon","keyword","CloseIcon","StatusCall","Phone","PhoneOutgoing","PhoneIncoming","PhoneMissed","StatusIndicator","statusColorConfig","unknown","statusProps","tooltipProviderProps","tooltipProps","tooltipTriggerProps","tooltipPortalProps","tooltipContentProps","tooltipArrowProps","tooltip","TooltipPrimitive","Provider","Arrow","StreamView","stream","mirror","muted","elementId","isMuted","mirrorClassName","srcObject","playVideo","play","error","console","onloadedmetadata","autoPlay","playsInline","LocalStreamView","RemoteStreamView","FullscreenStreamView","pipElement","navElement","hideIconElement","showIconElement","fullscreenButtonProps","fullscreenButtonIconProps","pipProps","pipButtonProps","pipButtonIconProps","isFullscreen","setIsFullscreen","isPictureInPicture","setIsPictureInPicture","toggleFullscreen","container","fullscreenElement","exitFullscreen","requestFullscreen","err","togglePictureInPicture","prevState","onFullscreenChange","Minimize","Maximize","PictureInPicture2","Switch","SwitchPrimitive","Thumb"],"mappings":"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","x_google_ignoreList":[8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36]}