@wistia/utils 0.17.0 → 1.0.1

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.
package/CHANGELOG.md ADDED
@@ -0,0 +1,167 @@
1
+ # @wistia/utils
2
+
3
+ ## 1.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#283](https://github.com/wistia/utils/pull/283) [`2b5d406`](https://github.com/wistia/utils/commit/2b5d40638a989b283bd22ce2b4d1b388d70f4eaa) Thanks [@okize](https://github.com/okize)! - Bundlers can now drop the date setup code from apps that use no date utility, so those apps no longer run it when the bundle loads
8
+
9
+ ## 1.0.0
10
+
11
+ ### Major Changes
12
+
13
+ - [#280](https://github.com/wistia/utils/pull/280) [`4201db5`](https://github.com/wistia/utils/commit/4201db5b2561fa55400a97ae8fd0446d96b0e725) Thanks [@okize](https://github.com/okize)! - feat!: drop commonJS support (ESM only)
14
+
15
+ The package was renamed from `@wistia/type-guards` to `@wistia/utils`.
16
+
17
+ ## 0.17.0
18
+
19
+ ### Minor Changes
20
+
21
+ - [#275](https://github.com/wistia/type-guards/pull/275) [`feabe44`](https://github.com/wistia/type-guards/commit/feabe441245825095c43ed58a37bdf2724d23a70) Thanks [@okize](https://github.com/okize)! - Add the `isEmail` utility, ported from the Wistia app
22
+
23
+ ## 0.16.0
24
+
25
+ ### Minor Changes
26
+
27
+ - [#273](https://github.com/wistia/type-guards/pull/273) [`1e36fd8`](https://github.com/wistia/type-guards/commit/1e36fd8762af671d8bd24e028787c58589129ac1) Thanks [@okize](https://github.com/okize)! - Add the `noOpFn`, `noOpFnReturningFalse`, `noOpFnReturningNull`, and `asyncNoOpFn` utilities and the `NoOpFn`, `NoOpFnReturningFalse`, `NoOpFnReturningNull`, `AsyncNoOpFn`, and `AsyncOrSyncNoOpFn` types. Each function does nothing; they serve as default or placeholder callbacks
28
+
29
+ ## 0.15.0
30
+
31
+ ### Minor Changes
32
+
33
+ - [#251](https://github.com/wistia/type-guards/pull/251) [`7740fc8`](https://github.com/wistia/type-guards/commit/7740fc8d652831074d429aa207500e226c49f8e5) Thanks [@okize](https://github.com/okize)! - Add the `deepMerge` utility and `DeepMerged` type. Deeply merges objects without mutating them, inferring the return type from the inputs; plain objects merge recursively, arrays concatenate with duplicates removed, and other values are overwritten in argument order
34
+
35
+ ## 0.14.0
36
+
37
+ ### Minor Changes
38
+
39
+ - [#247](https://github.com/wistia/type-guards/pull/247) [`e4c822c`](https://github.com/wistia/type-guards/commit/e4c822cde3e776b2985da90cfc20ddbaa03d5435) Thanks [@okize](https://github.com/okize)! - Add the date and time utilities from `@wistia/ui`: `buildTimeDuration`, `dateOnlyISOString`, `dateOnlyString`, `dateOnlyStringForSentence`, `dateOnlyStringNumeric`, `dateTimeRounded`, `dateTimeString`, `dateTimeStringForSentence`, `dateTimeToDate`, `dateTimeToISO`, `dateToDateTime`, `dateUTCOffset`, `dayOfWeekString`, `mediaDurationString`, `millisecondsToDurationISOString`, `monthDayStringNumeric`, `parseDateString`, `sessionDurationString`, `timeAgoString`, and `timeOnlyString`, plus the `DateOnlyStringOptions`, `DateTimeRoundedOverload`, `TimeAgoOptions`, `TimeDuration`, and `WistiaDateTimeObject` types
40
+
41
+ ## 0.13.1
42
+
43
+ ### Patch Changes
44
+
45
+ - [#240](https://github.com/wistia/type-guards/pull/240) [`9e86ea9`](https://github.com/wistia/type-guards/commit/9e86ea9b9271da61f3e90dbd41b2e01b347ad0ba) Thanks [@okize](https://github.com/okize)! - fix: narrow `isRecord` to `Record<string, unknown>` instead of `EmptyObject | Record<string, unknown>`
46
+
47
+ The `EmptyObject` union member was redundant — `Record<string, unknown>` already
48
+ accepts `{}` — and it broke the guard's primary use: because `EmptyObject` has no
49
+ index signature, every `value['someKey']` read after a passing `isRecord` check
50
+ failed with TS7053. `isNotRecord`'s declared type is updated to match; its
51
+ resolved type is unchanged.
52
+
53
+ ## 0.13.0
54
+
55
+ ### Minor Changes
56
+
57
+ - [#235](https://github.com/wistia/type-guards/pull/235) [`6a92f7f`](https://github.com/wistia/type-guards/commit/6a92f7f744b6268308031dadd9ddc0b4c475297c) Thanks [@okize](https://github.com/okize)! - feat: add guards `isRegExp`, `isBigInt`, `isSymbol`, `isPromise`, `isIterable`, `isMap`, `isSet`, `isWeakMap`, `isWeakSet`, `isAsyncFunction`
58
+
59
+ ## 0.12.0
60
+
61
+ ### Minor Changes
62
+
63
+ - [#233](https://github.com/wistia/type-guards/pull/233) [`ff94757`](https://github.com/wistia/type-guards/commit/ff947573899f4265e68a3a8ab9e7842da8d9fedf) Thanks [@okize](https://github.com/okize)! - feat: add guards `isNonBlankString`, `isNonNaNNumber`, `isFiniteNumber`, `isPlainObject`, `isHtmlElement`, `isHtmlInputElement`, `isHtmlVideoElement`, `isHtmlButtonElement`, `isSvgElement`, `isTextNode`, `readonlyArrayIncludes`, `isMouseEvent` and utilities `getObjectEntries`, `getObjectKeys`, `getObjectValues`, `tupleIncludes`
64
+
65
+ ## 0.11.4
66
+
67
+ ### Patch Changes
68
+
69
+ - [#225](https://github.com/wistia/type-guards/pull/225) [`d3b2734`](https://github.com/wistia/type-guards/commit/d3b273448baff8c4e17061846214eb5bbfca9466) Thanks [@okize](https://github.com/okize)! - feat: add `NullableProperties` type
70
+
71
+ ## 0.11.3
72
+
73
+ ### Patch Changes
74
+
75
+ - [#217](https://github.com/wistia/type-guards/pull/217) [`0f0b7bb`](https://github.com/wistia/type-guards/commit/0f0b7bba1cd0dd8af8d5d0dda4ff80d88e9e6ee4) Thanks [@okize](https://github.com/okize)! - feat: add llms.txt and llms-full.txt for agent consumption
76
+
77
+ ## 0.11.2
78
+
79
+ ### Patch Changes
80
+
81
+ - [#211](https://github.com/wistia/type-guards/pull/211) [`6c2bbcd`](https://github.com/wistia/type-guards/commit/6c2bbcdd41a68886429d9d0ef2ff7784cedc7207) Thanks [@okize](https://github.com/okize)! - fix: split index.ts into per-guard files under `src`
82
+
83
+ ## 0.11.1
84
+
85
+ ### Patch Changes
86
+
87
+ - [#206](https://github.com/wistia/type-guards/pull/206) [`ec39edd`](https://github.com/wistia/type-guards/commit/ec39edd03204174e1956e16d4567efb2c6122253) Thanks [@okize](https://github.com/okize)! - feat: add `Arrayable` type
88
+
89
+ ## 0.11.0
90
+
91
+ ### Minor Changes
92
+
93
+ - [#194](https://github.com/wistia/type-guards/pull/194) [`ef44620`](https://github.com/wistia/type-guards/commit/ef446209c3099ac53cbc17a18b18df09d779c0a3) Thanks [@okize](https://github.com/okize)! - feat: add `isDate` type guard
94
+
95
+ ## 0.10.0
96
+
97
+ ### Minor Changes
98
+
99
+ - [#182](https://github.com/wistia/type-guards/pull/182) [`b1ce2fe`](https://github.com/wistia/type-guards/commit/b1ce2fe8beccb9375cbc25bf534ab57b313bb45c) Thanks [@okize](https://github.com/okize)! - feat: switch build from `tsup` to `tsdown`
100
+
101
+ ## 0.9.3
102
+
103
+ ### Patch Changes
104
+
105
+ - [#163](https://github.com/wistia/type-guards/pull/163) [`67fe310`](https://github.com/wistia/type-guards/commit/67fe310ce9dd5f14e24694bdd3cd5342476c28cf) Thanks [@okize](https://github.com/okize)! - fix: remove remaining GH links from `package.json`
106
+
107
+ ## 0.9.2
108
+
109
+ ### Patch Changes
110
+
111
+ - [#161](https://github.com/wistia/type-guards/pull/161) [`966b9ea`](https://github.com/wistia/type-guards/commit/966b9eafdd667ac0a82891aec91ff73d41879eba) Thanks [@okize](https://github.com/okize)! - fix: set license to MIT
112
+
113
+ ## 0.9.1
114
+
115
+ ### Patch Changes
116
+
117
+ - [#113](https://github.com/wistia/type-guards/pull/113) [`1be4586`](https://github.com/wistia/type-guards/commit/1be458654816bc1b3752fd0648c592d7189e6cb2) Thanks [@okize](https://github.com/okize)! - fix: ensure build emits correct commonjs & esm exports
118
+
119
+ ## 0.9.0
120
+
121
+ ### Minor Changes
122
+
123
+ - [#109](https://github.com/wistia/type-guards/pull/109) [`6f54871`](https://github.com/wistia/type-guards/commit/6f548712fec133bc9d9c47aab226e3d8ed9568bd) Thanks [@okize](https://github.com/okize)! - feat: add isTruthy type guard
124
+
125
+ ## 0.8.0
126
+
127
+ ### Minor Changes
128
+
129
+ - [#107](https://github.com/wistia/type-guards/pull/107) [`2bae8ba`](https://github.com/wistia/type-guards/commit/2bae8baff6f069686d76f53cba0e1b396aa456e1) Thanks [@okize](https://github.com/okize)! - feat: add isFalsy type guard
130
+
131
+ ## 0.7.0
132
+
133
+ ### Minor Changes
134
+
135
+ - [#73](https://github.com/wistia/type-guards/pull/73) [`38c0b23`](https://github.com/wistia/type-guards/commit/38c0b231692a2b16335913d6862387dbc1b0306e) Thanks [@okize](https://github.com/okize)! - feat: add isNotRecord type guard
136
+
137
+ - [#91](https://github.com/wistia/type-guards/pull/91) [`9b2beed`](https://github.com/wistia/type-guards/commit/9b2beeddfbf456007dce87f6afba5e85796f59f1) Thanks [@okize](https://github.com/okize)! - feat: add `isNotVoid` type guard
138
+
139
+ ## 0.6.0
140
+
141
+ ### Minor Changes
142
+
143
+ - [#69](https://github.com/wistia/type-guards/pull/69) [`cacf785`](https://github.com/wistia/type-guards/commit/cacf785d526a01ed134d5dbd6b7d595012dc20f5) Thanks [@okize](https://github.com/okize)! - feat: add isNotArray type guard
144
+
145
+ ## 0.5.0
146
+
147
+ ### Minor Changes
148
+
149
+ - [`ab086eb`](https://github.com/wistia/type-guards/commit/ab086eb1d095522cdfa80d3e1f330afea0bb826f) Thanks [@okize](https://github.com/okize)! - feat: add `isNotBoolean` type guard
150
+
151
+ ## 0.4.0
152
+
153
+ ### Minor Changes
154
+
155
+ - [#61](https://github.com/wistia/type-guards/pull/61) [`41f8d7b`](https://github.com/wistia/type-guards/commit/41f8d7b3d6e18012df2615412df8586ad1872424) Thanks [@okize](https://github.com/okize)! - feat: add `isNotFunction` type guard
156
+
157
+ ## 0.3.0
158
+
159
+ ### Minor Changes
160
+
161
+ - [#56](https://github.com/wistia/type-guards/pull/56) [`08804e5`](https://github.com/wistia/type-guards/commit/08804e53af325090ff26894f953cdc972fe8c660) Thanks [@okize](https://github.com/okize)! - feat: add `isNotNumber` type guard
162
+
163
+ ## 0.2.0
164
+
165
+ ### Minor Changes
166
+
167
+ - [`e873b82`](https://github.com/wistia/type-guards/commit/e873b82478bf8868cb99dc0d5ad70e10226f9d40) Thanks [@okize](https://github.com/okize)! - feat: add `isNotString` type guard
package/dist/index.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  /*
3
- * @license @wistia/utils v0.17.0
3
+ * @license @wistia/utils v1.0.1
4
4
  *
5
5
  * Copyright (c) 2023-2026, Wistia, Inc. and its affiliates.
6
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/guards/hasKey.ts","../src/guards/isArray.ts","../src/guards/isAsyncFunction.ts","../src/guards/isBigInt.ts","../src/guards/isBoolean.ts","../src/guards/isDate.ts","../src/guards/isEmptyArray.ts","../src/guards/isEmptyRecord.ts","../src/guards/isEmptyString.ts","../src/guards/isError.ts","../src/types/Falsy.ts","../src/guards/isFalsy.ts","../src/guards/isFiniteNumber.ts","../src/guards/isFunction.ts","../src/guards/isHtmlButtonElement.ts","../src/guards/isHtmlElement.ts","../src/guards/isHtmlInputElement.ts","../src/guards/isHtmlVideoElement.ts","../src/guards/isInteger.ts","../src/guards/isIterable.ts","../src/guards/isMap.ts","../src/guards/isMouseEvent.ts","../src/guards/isNaN.ts","../src/types/Nil.ts","../src/guards/isNil.ts","../src/guards/isNonBlankString.ts","../src/types/Nilable.ts","../src/types/NonEmptyArray.ts","../src/guards/isNonEmptyArray.ts","../src/guards/isNonEmptyRecord.ts","../src/guards/isNonEmptyString.ts","../src/guards/isNonNaNNumber.ts","../src/guards/isNotArray.ts","../src/guards/isNotBoolean.ts","../src/guards/isNotFunction.ts","../src/guards/isNotNil.ts","../src/guards/isNotNull.ts","../src/guards/isNotNumber.ts","../src/guards/isNotRecord.ts","../src/guards/isNotString.ts","../src/types/Undefinable.ts","../src/guards/isNotUndefined.ts","../src/guards/isNotVoid.ts","../src/guards/isNull.ts","../src/guards/isNumber.ts","../src/guards/isPlainObject.ts","../src/guards/isPromise.ts","../src/guards/isRecord.ts","../src/guards/isRegExp.ts","../src/guards/isSet.ts","../src/guards/isString.ts","../src/guards/isSvgElement.ts","../src/guards/isSymbol.ts","../src/guards/isTextNode.ts","../src/guards/isTruthy.ts","../src/guards/isUndefined.ts","../src/guards/isVoid.ts","../src/guards/isWeakMap.ts","../src/guards/isWeakSet.ts","../src/guards/readonlyArrayIncludes.ts","../src/types/Arrayable.ts","../src/types/NestedNonNullable.ts","../src/types/NilableArray.ts","../src/types/NotNilable.ts","../src/types/Nullable.ts","../src/types/NullableProperties.ts","../src/types/Truthy.ts","../src/utilities/noOpFn.ts","../src/utilities/asyncNoOpFn.ts","../src/utilities/buildTimeDuration.ts","../src/utilities/coerceToBoolean.ts","../src/utilities/dateOnlyString.ts","../src/utilities/dateOnlyISOString.ts","../src/utilities/dateOnlyStringForSentence.ts","../src/utilities/dateOnlyStringNumeric.ts","../src/utilities/dateTimeRounded.ts","../src/utilities/dateTimeString.ts","../src/utilities/dateTimeStringForSentence.ts","../src/utilities/dateToDateTime.ts","../src/utilities/dateTimeToDate.ts","../src/utilities/dateTimeToISO.ts","../src/utilities/dateUTCOffset.ts","../src/utilities/dayOfWeekString.ts","../src/utilities/deepMerge.ts","../src/utilities/getObjectEntries.ts","../src/utilities/getObjectKeys.ts","../src/utilities/getObjectValues.ts","../src/utilities/isEmail.ts","../src/utilities/isUrl.ts","../src/utilities/mediaDurationString.ts","../src/utilities/millisecondsToDurationISOString.ts","../src/utilities/monthDayStringNumeric.ts","../src/utilities/noOpFnReturningFalse.ts","../src/utilities/noOpFnReturningNull.ts","../src/utilities/parseDateString.ts","../src/utilities/sessionDurationString.ts","../src/utilities/stripExtension.ts","../src/utilities/timeAgoString.ts","../src/utilities/timeOnlyString.ts","../src/utilities/tupleIncludes.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/guards/hasKey.ts","../src/guards/isArray.ts","../src/guards/isAsyncFunction.ts","../src/guards/isBigInt.ts","../src/guards/isBoolean.ts","../src/guards/isDate.ts","../src/guards/isEmptyArray.ts","../src/guards/isEmptyRecord.ts","../src/guards/isEmptyString.ts","../src/guards/isError.ts","../src/types/Falsy.ts","../src/guards/isFalsy.ts","../src/guards/isFiniteNumber.ts","../src/guards/isFunction.ts","../src/guards/isHtmlButtonElement.ts","../src/guards/isHtmlElement.ts","../src/guards/isHtmlInputElement.ts","../src/guards/isHtmlVideoElement.ts","../src/guards/isInteger.ts","../src/guards/isIterable.ts","../src/guards/isMap.ts","../src/guards/isMouseEvent.ts","../src/guards/isNaN.ts","../src/types/Nil.ts","../src/guards/isNil.ts","../src/guards/isNonBlankString.ts","../src/types/Nilable.ts","../src/types/NonEmptyArray.ts","../src/guards/isNonEmptyArray.ts","../src/guards/isNonEmptyRecord.ts","../src/guards/isNonEmptyString.ts","../src/guards/isNonNaNNumber.ts","../src/guards/isNotArray.ts","../src/guards/isNotBoolean.ts","../src/guards/isNotFunction.ts","../src/guards/isNotNil.ts","../src/guards/isNotNull.ts","../src/guards/isNotNumber.ts","../src/guards/isNotRecord.ts","../src/guards/isNotString.ts","../src/types/Undefinable.ts","../src/guards/isNotUndefined.ts","../src/guards/isNotVoid.ts","../src/guards/isNull.ts","../src/guards/isNumber.ts","../src/guards/isPlainObject.ts","../src/guards/isPromise.ts","../src/guards/isRecord.ts","../src/guards/isRegExp.ts","../src/guards/isSet.ts","../src/guards/isString.ts","../src/guards/isSvgElement.ts","../src/guards/isSymbol.ts","../src/guards/isTextNode.ts","../src/guards/isTruthy.ts","../src/guards/isUndefined.ts","../src/guards/isVoid.ts","../src/guards/isWeakMap.ts","../src/guards/isWeakSet.ts","../src/guards/readonlyArrayIncludes.ts","../src/types/Arrayable.ts","../src/types/NestedNonNullable.ts","../src/types/NilableArray.ts","../src/types/NotNilable.ts","../src/types/Nullable.ts","../src/types/NullableProperties.ts","../src/types/Truthy.ts","../src/utilities/noOpFn.ts","../src/utilities/asyncNoOpFn.ts","../src/utilities/buildTimeDuration.ts","../src/utilities/coerceToBoolean.ts","../src/utilities/dateOnlyString.ts","../src/utilities/dateOnlyISOString.ts","../src/utilities/dateOnlyStringForSentence.ts","../src/utilities/dateOnlyStringNumeric.ts","../src/utilities/dateTimeRounded.ts","../src/utilities/dateTimeString.ts","../src/utilities/dateTimeStringForSentence.ts","../src/utilities/dateToDateTime.ts","../src/utilities/dateTimeToDate.ts","../src/utilities/dateTimeToISO.ts","../src/utilities/dateUTCOffset.ts","../src/utilities/dayOfWeekString.ts","../src/utilities/deepMerge.ts","../src/utilities/getObjectEntries.ts","../src/utilities/getObjectKeys.ts","../src/utilities/getObjectValues.ts","../src/utilities/isEmail.ts","../src/utilities/isUrl.ts","../src/utilities/mediaDurationString.ts","../src/utilities/millisecondsToDurationISOString.ts","../src/utilities/monthDayStringNumeric.ts","../src/utilities/noOpFnReturningFalse.ts","../src/utilities/noOpFnReturningNull.ts","../src/utilities/parseDateString.ts","../src/utilities/sessionDurationString.ts","../src/utilities/stripExtension.ts","../src/utilities/timeAgoString.ts","../src/utilities/timeOnlyString.ts","../src/utilities/tupleIncludes.ts"],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  /*
3
- * @license @wistia/utils v0.17.0
3
+ * @license @wistia/utils v1.0.1
4
4
  *
5
5
  * Copyright (c) 2023-2026, Wistia, Inc. and its affiliates.
6
6
  *
@@ -962,7 +962,7 @@ const asyncNoOpFn = async () => {};
962
962
  //#endregion
963
963
  //#region src/utilities/_constants.ts
964
964
  const defaultLocales = ["en-US"];
965
- const defaultTimeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
965
+ const defaultTimeZone = /* @__PURE__ */ (() => Intl.DateTimeFormat().resolvedOptions().timeZone)();
966
966
  const milisecondsInSecond = 1e3;
967
967
  const millisecondsInDay = 86400 * milisecondsInSecond;
968
968
  //#endregion
@@ -1570,7 +1570,6 @@ const MONTH_NAMES = [
1570
1570
  "November",
1571
1571
  "December"
1572
1572
  ];
1573
- const MONTH_ABBREVIATIONS = MONTH_NAMES.map((name) => name.slice(0, 3));
1574
1573
  const startOfDay = (date) => {
1575
1574
  const result = new Date(date);
1576
1575
  result.setHours(0, 0, 0, 0);
@@ -1584,48 +1583,52 @@ const startOfTomorrow = () => {
1584
1583
  };
1585
1584
  const monthIndexIn = (names, value) => names.findIndex((name) => name.toLowerCase() === value.toLowerCase());
1586
1585
  const toNumberOrUndefined = (value) => value === void 0 ? void 0 : Number(value);
1587
- const DATE_PATTERNS = [
1588
- {
1589
- regex: new RegExp(`^(${MONTH_ABBREVIATIONS.join("|")}) (\\d{1,2})(?:, (\\d{1,4}))?$`, "i"),
1590
- toParts: ([, month, day, year]) => ({
1591
- monthIndex: monthIndexIn(MONTH_ABBREVIATIONS, String(month)),
1592
- day: Number(day),
1593
- year: toNumberOrUndefined(year)
1594
- })
1595
- },
1596
- {
1597
- regex: new RegExp(`^(${MONTH_NAMES.join("|")}) (\\d{1,2})(?:, (\\d{1,4}))?$`, "i"),
1598
- toParts: ([, month, day, year]) => ({
1599
- monthIndex: monthIndexIn(MONTH_NAMES, String(month)),
1600
- day: Number(day),
1601
- year: toNumberOrUndefined(year)
1602
- })
1603
- },
1604
- {
1605
- regex: /^(\d{1,2})\/(\d{1,2})(?:\/(\d{1,4}))?$/,
1606
- toParts: ([, month, day, year]) => ({
1607
- monthIndex: Number(month) - 1,
1608
- day: Number(day),
1609
- year: toNumberOrUndefined(year)
1610
- })
1611
- },
1612
- {
1613
- regex: /^(\d{1,2})-(\d{1,2})(?:-(\d{1,4}))?$/,
1614
- toParts: ([, month, day, year]) => ({
1615
- monthIndex: Number(month) - 1,
1616
- day: Number(day),
1617
- year: toNumberOrUndefined(year)
1618
- })
1619
- },
1620
- {
1621
- regex: /^(\d{1,4})-(\d{1,2})-(\d{1,2})$/,
1622
- toParts: ([, year, month, day]) => ({
1623
- monthIndex: Number(month) - 1,
1624
- day: Number(day),
1625
- year: Number(year)
1626
- })
1627
- }
1628
- ];
1586
+ const buildDatePatterns = () => {
1587
+ const monthAbbreviations = MONTH_NAMES.map((name) => name.slice(0, 3));
1588
+ return [
1589
+ {
1590
+ regex: new RegExp(`^(${monthAbbreviations.join("|")}) (\\d{1,2})(?:, (\\d{1,4}))?$`, "i"),
1591
+ toParts: ([, month, day, year]) => ({
1592
+ monthIndex: monthIndexIn(monthAbbreviations, String(month)),
1593
+ day: Number(day),
1594
+ year: toNumberOrUndefined(year)
1595
+ })
1596
+ },
1597
+ {
1598
+ regex: new RegExp(`^(${MONTH_NAMES.join("|")}) (\\d{1,2})(?:, (\\d{1,4}))?$`, "i"),
1599
+ toParts: ([, month, day, year]) => ({
1600
+ monthIndex: monthIndexIn(MONTH_NAMES, String(month)),
1601
+ day: Number(day),
1602
+ year: toNumberOrUndefined(year)
1603
+ })
1604
+ },
1605
+ {
1606
+ regex: /^(\d{1,2})\/(\d{1,2})(?:\/(\d{1,4}))?$/,
1607
+ toParts: ([, month, day, year]) => ({
1608
+ monthIndex: Number(month) - 1,
1609
+ day: Number(day),
1610
+ year: toNumberOrUndefined(year)
1611
+ })
1612
+ },
1613
+ {
1614
+ regex: /^(\d{1,2})-(\d{1,2})(?:-(\d{1,4}))?$/,
1615
+ toParts: ([, month, day, year]) => ({
1616
+ monthIndex: Number(month) - 1,
1617
+ day: Number(day),
1618
+ year: toNumberOrUndefined(year)
1619
+ })
1620
+ },
1621
+ {
1622
+ regex: /^(\d{1,4})-(\d{1,2})-(\d{1,2})$/,
1623
+ toParts: ([, year, month, day]) => ({
1624
+ monthIndex: Number(month) - 1,
1625
+ day: Number(day),
1626
+ year: Number(year)
1627
+ })
1628
+ }
1629
+ ];
1630
+ };
1631
+ const DATE_PATTERNS = /* @__PURE__ */ buildDatePatterns();
1629
1632
  const toValidDate = ({ monthIndex, day, year }, referenceDate) => {
1630
1633
  if (year === 0) return null;
1631
1634
  const resolvedYear = year ?? referenceDate.getFullYear();