@northguild/gmt 1.19.0 → 1.20.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 (1024) hide show
  1. package/README.md +12 -12
  2. package/dist/calendar/business/businessDaysBetween.d.ts +2 -2
  3. package/dist/calendar/business/businessDaysBetween.js +11 -35
  4. package/dist/calendar/business/mergeCalendars.d.ts +1 -1
  5. package/dist/calendar/business/mergeCalendars.js +8 -9
  6. package/dist/calendar/business/nextBusinessDay.d.ts +2 -2
  7. package/dist/calendar/business/nextBusinessDay.js +2 -2
  8. package/dist/calendar/business/previousBusinessDay.d.ts +2 -2
  9. package/dist/calendar/business/previousBusinessDay.js +2 -2
  10. package/dist/calendar/business/rollDate.d.ts +3 -3
  11. package/dist/calendar/business/rollDate.js +10 -43
  12. package/dist/calendar/calculate/bucketRange.d.ts +9 -9
  13. package/dist/calendar/calculate/bucketRange.js +9 -9
  14. package/dist/calendar/calculate/floorToZone.d.ts +2 -2
  15. package/dist/calendar/calculate/floorToZone.js +1 -1
  16. package/dist/calendar/calculate/getFiscalPeriod.d.ts +50 -40
  17. package/dist/calendar/calculate/getFiscalPeriod.js +78 -57
  18. package/dist/calendar/calculate/getQuarter.d.ts +26 -21
  19. package/dist/calendar/calculate/getQuarter.js +48 -19
  20. package/dist/calendar/hours/addOperatingTime.d.ts +3 -3
  21. package/dist/calendar/hours/addOperatingTime.js +3 -3
  22. package/dist/calendar/hours/isOpenAt.d.ts +3 -3
  23. package/dist/calendar/hours/isOpenAt.js +3 -3
  24. package/dist/calendar/hours/nextCloseAt.d.ts +2 -2
  25. package/dist/calendar/hours/nextCloseAt.js +2 -2
  26. package/dist/calendar/hours/nextOpenAt.d.ts +3 -3
  27. package/dist/calendar/hours/nextOpenAt.js +3 -3
  28. package/dist/calendar/hours/operatingIntervals.d.ts +2 -2
  29. package/dist/calendar/hours/operatingIntervals.js +4 -6
  30. package/dist/calendar/hours/operatingTimeBetween.d.ts +3 -3
  31. package/dist/calendar/hours/operatingTimeBetween.js +6 -8
  32. package/dist/calendar/hours/recurringWindows.d.ts +5 -5
  33. package/dist/calendar/hours/recurringWindows.js +9 -10
  34. package/dist/calendar/index.d.ts +1 -1
  35. package/dist/calendar/index.js +2 -2
  36. package/dist/calendar/validate/index.d.ts +3 -0
  37. package/dist/calendar/validate/index.js +3 -0
  38. package/dist/calendar/validate/isValidFiscalCalendar.d.ts +23 -0
  39. package/dist/calendar/validate/isValidFiscalCalendar.js +44 -0
  40. package/dist/calendar/validate/isValidFiscalExtraWeek.d.ts +19 -0
  41. package/dist/calendar/validate/isValidFiscalExtraWeek.js +23 -0
  42. package/dist/calendar/validate/isValidFiscalPattern.d.ts +7 -7
  43. package/dist/calendar/validate/isValidFiscalPattern.js +7 -7
  44. package/dist/calendar/validate/isValidFiscalYearLabel.d.ts +20 -0
  45. package/dist/calendar/validate/isValidFiscalYearLabel.js +24 -0
  46. package/dist/calendar/validate/isValidRollConvention.js +2 -10
  47. package/dist/calendar/validate/isValidZoneBucketUnit.d.ts +1 -1
  48. package/dist/duration/calculate/absDuration.js +1 -1
  49. package/dist/duration/calculate/addDuration.js +1 -1
  50. package/dist/duration/calculate/durationFromUnits.js +1 -1
  51. package/dist/duration/calculate/getDurationSign.js +1 -1
  52. package/dist/duration/calculate/getDurationUnit.d.ts +1 -1
  53. package/dist/duration/calculate/getDurationUnit.js +1 -1
  54. package/dist/duration/calculate/negateDuration.js +1 -1
  55. package/dist/duration/calculate/subtractDuration.js +1 -1
  56. package/dist/duration/calculate/totalDuration.d.ts +4 -4
  57. package/dist/duration/calculate/totalDuration.js +4 -4
  58. package/dist/duration/calculate/totalUnits.js +1 -1
  59. package/dist/duration/compare/compareDurations.d.ts +3 -3
  60. package/dist/duration/compare/compareDurations.js +3 -3
  61. package/dist/duration/format/formatDuration.d.ts +9 -9
  62. package/dist/duration/format/formatDuration.js +14 -13
  63. package/dist/duration/index.d.ts +1 -1
  64. package/dist/duration/index.js +2 -2
  65. package/dist/duration/normalize/normalizeDuration.d.ts +3 -3
  66. package/dist/duration/normalize/normalizeDuration.js +3 -3
  67. package/dist/duration/parse/parseDuration.d.ts +1 -1
  68. package/dist/duration/parse/parseDuration.js +1 -1
  69. package/dist/duration/validate/isValidDuration.js +2 -11
  70. package/dist/gnss/convert/gnssToUtc.d.ts +24 -0
  71. package/dist/gnss/convert/gnssToUtc.js +39 -0
  72. package/dist/gnss/convert/gnssWeekToUtc.d.ts +53 -0
  73. package/dist/gnss/convert/gnssWeekToUtc.js +80 -0
  74. package/dist/gnss/convert/index.d.ts +6 -0
  75. package/dist/gnss/convert/index.js +6 -0
  76. package/dist/gnss/convert/rinexWeekToUtc.d.ts +34 -0
  77. package/dist/gnss/convert/rinexWeekToUtc.js +57 -0
  78. package/dist/gnss/convert/utcToGnss.d.ts +38 -0
  79. package/dist/gnss/convert/utcToGnss.js +53 -0
  80. package/dist/gnss/convert/utcToGnssWeek.d.ts +24 -0
  81. package/dist/gnss/convert/utcToGnssWeek.js +40 -0
  82. package/dist/gnss/convert/utcToRinexWeek.d.ts +19 -0
  83. package/dist/gnss/convert/utcToRinexWeek.js +45 -0
  84. package/dist/gnss/index.d.ts +2 -0
  85. package/dist/gnss/index.js +3 -0
  86. package/dist/index.d.ts +4 -2
  87. package/dist/index.js +4 -2
  88. package/dist/instant/convert/classifyLocal.d.ts +4 -4
  89. package/dist/instant/convert/classifyLocal.js +8 -19
  90. package/dist/instant/convert/fromOffsetInstant.d.ts +4 -4
  91. package/dist/instant/convert/fromOffsetInstant.js +5 -5
  92. package/dist/instant/convert/resolveLocal.d.ts +9 -9
  93. package/dist/instant/convert/resolveLocal.js +9 -9
  94. package/dist/instant/convert/toOffsetInstant.d.ts +11 -11
  95. package/dist/instant/convert/toOffsetInstant.js +11 -28
  96. package/dist/instant/index.d.ts +1 -1
  97. package/dist/instant/index.js +2 -2
  98. package/dist/instant/validate/isValidUtcOffset.d.ts +1 -1
  99. package/dist/instant/validate/isValidUtcOffset.js +1 -1
  100. package/dist/intermodal/calculate/billingTimeline.js +1 -1
  101. package/dist/intermodal/calculate/chargeableDays.d.ts +12 -12
  102. package/dist/intermodal/calculate/chargeableDays.js +17 -16
  103. package/dist/intermodal/calculate/demurrageClock.d.ts +1 -1
  104. package/dist/intermodal/calculate/demurrageClock.js +2 -2
  105. package/dist/intermodal/calculate/freeTimeExpiry.d.ts +10 -10
  106. package/dist/intermodal/calculate/freeTimeExpiry.js +19 -15
  107. package/dist/intermodal/calculate/multimodalETA.d.ts +1 -1
  108. package/dist/intermodal/calculate/multimodalETA.js +2 -2
  109. package/dist/intermodal/format/bolTimestamp.d.ts +6 -6
  110. package/dist/intermodal/format/bolTimestamp.js +6 -6
  111. package/dist/intermodal/format/formatEpcisEvent.d.ts +1 -1
  112. package/dist/intermodal/format/formatEpcisEvent.js +2 -2
  113. package/dist/intermodal/index.d.ts +1 -1
  114. package/dist/intermodal/index.js +2 -2
  115. package/dist/intermodal/parse/parseEpcisEvent.js +1 -1
  116. package/dist/intermodal/validate/isValidEpcisEventTime.js +1 -1
  117. package/dist/internal/advanceToWeekday.d.ts +1 -1
  118. package/dist/internal/businessCalendar.d.ts +28 -12
  119. package/dist/internal/businessCalendar.js +129 -118
  120. package/dist/internal/businessDayValues.js +1 -1
  121. package/dist/internal/calendarDatePairPolicy.d.ts +1 -1
  122. package/dist/internal/calendarDateString.d.ts +1 -1
  123. package/dist/internal/calendarDateString.js +1 -1
  124. package/dist/internal/calendarSystemIds.js +1 -1
  125. package/dist/internal/calendarValueOfDate.js +1 -1
  126. package/dist/internal/calendarZonedPairPolicy.d.ts +1 -1
  127. package/dist/internal/calendarZonedString.d.ts +3 -3
  128. package/dist/internal/calendarZonedString.js +4 -4
  129. package/dist/internal/compareUnixEpochs.js +1 -1
  130. package/dist/internal/cutoffAtResolved.d.ts +62 -0
  131. package/dist/internal/cutoffAtResolved.js +162 -0
  132. package/dist/internal/cycleFieldValue.d.ts +0 -2
  133. package/dist/internal/cycleFieldValue.js +0 -2
  134. package/dist/internal/dateTimeUnitHelpers.d.ts +1 -1
  135. package/dist/internal/dateUnitHelpers.d.ts +1 -1
  136. package/dist/internal/daylightTime.d.ts +1 -1
  137. package/dist/internal/differenceRecord.d.ts +1 -1
  138. package/dist/internal/durationUntilString.d.ts +1 -1
  139. package/dist/internal/durationUntilString.js +1 -1
  140. package/dist/internal/dutyEngine.d.ts +6 -6
  141. package/dist/internal/dutyEngine.js +206 -197
  142. package/dist/internal/dutyPeriods.d.ts +1 -1
  143. package/dist/internal/dutyPeriods.js +8 -2
  144. package/dist/internal/dutyRules.d.ts +2 -1
  145. package/dist/internal/dutyRules.js +1 -1
  146. package/dist/internal/dutyRunIndex.d.ts +150 -0
  147. package/dist/internal/dutyRunIndex.js +398 -0
  148. package/dist/internal/earlierOccurrence.d.ts +41 -0
  149. package/dist/internal/earlierOccurrence.js +57 -0
  150. package/dist/internal/ediDateTimeFields.js +1 -1
  151. package/dist/internal/ediDateTimeWriter.js +1 -1
  152. package/dist/internal/englishCalendarNames.d.ts +1 -1
  153. package/dist/internal/epochDay.d.ts +41 -0
  154. package/dist/internal/epochDay.js +129 -0
  155. package/dist/internal/exactDuration.js +1 -1
  156. package/dist/internal/exactMoment.d.ts +4 -4
  157. package/dist/internal/exactMoment.js +5 -5
  158. package/dist/internal/fiscalCalendar.d.ts +41 -7
  159. package/dist/internal/fiscalCalendar.js +77 -9
  160. package/dist/internal/foreignEpochs.d.ts +5 -0
  161. package/dist/internal/foreignEpochs.js +5 -0
  162. package/dist/internal/formatCalendarDays.d.ts +4 -4
  163. package/dist/internal/formatCalendarDays.js +6 -5
  164. package/dist/internal/formatDateInCalendar.d.ts +1 -1
  165. package/dist/internal/formatRelativeDuration.d.ts +7 -7
  166. package/dist/internal/formatRelativeDuration.js +8 -7
  167. package/dist/internal/formatterCache.d.ts +40 -0
  168. package/dist/internal/formatterCache.js +181 -0
  169. package/dist/internal/freeTimeLedger.d.ts +31 -43
  170. package/dist/internal/freeTimeLedger.js +322 -30
  171. package/dist/internal/getLocaleWeekYearBounds.d.ts +1 -1
  172. package/dist/internal/gnssTimeScales.d.ts +53 -0
  173. package/dist/internal/gnssTimeScales.js +128 -0
  174. package/dist/internal/gnssWeek.d.ts +92 -0
  175. package/dist/internal/gnssWeek.js +212 -0
  176. package/dist/internal/halfOpenIntervals.d.ts +1 -1
  177. package/dist/internal/halfOpenIntervals.js +1 -1
  178. package/dist/internal/hasCalendarAnnotation.d.ts +3 -3
  179. package/dist/internal/hasCalendarAnnotation.js +3 -3
  180. package/dist/internal/hourDurationString.js +1 -1
  181. package/dist/internal/httpDateFields.js +1 -1
  182. package/dist/internal/index.d.ts +9 -3
  183. package/dist/internal/index.js +9 -3
  184. package/dist/internal/inputChecks.d.ts +53 -0
  185. package/dist/internal/inputChecks.js +132 -0
  186. package/dist/internal/instantFormatOptions.d.ts +1 -1
  187. package/dist/internal/instantFormatOptions.js +4 -8
  188. package/dist/internal/instantIntervalText.js +1 -1
  189. package/dist/internal/instantNanoseconds.d.ts +2 -2
  190. package/dist/internal/instantNanoseconds.js +2 -2
  191. package/dist/internal/intervalCountHelpers.d.ts +1 -1
  192. package/dist/internal/isoStringBody.d.ts +2 -2
  193. package/dist/internal/isoStringBody.js +2 -2
  194. package/dist/internal/joinDateTimeConnector.js +3 -2
  195. package/dist/internal/leapSeconds.d.ts +63 -0
  196. package/dist/internal/leapSeconds.js +162 -0
  197. package/dist/internal/localeWeekInfo.d.ts +1 -1
  198. package/dist/internal/localeWeekInfo.js +1 -1
  199. package/dist/internal/monthGridWeekRow.d.ts +1 -1
  200. package/dist/internal/normalizeDateTime.d.ts +2 -1
  201. package/dist/internal/normalizeDateTime.js +3 -2
  202. package/dist/internal/normalizeTimeZone.d.ts +1 -1
  203. package/dist/internal/normalizeTimeZone.js +1 -1
  204. package/dist/internal/offsetTimeline.d.ts +56 -0
  205. package/dist/internal/offsetTimeline.js +166 -0
  206. package/dist/internal/operatingSchedule.d.ts +28 -32
  207. package/dist/internal/operatingSchedule.js +538 -176
  208. package/dist/internal/patternToken.js +10 -7
  209. package/dist/internal/plainDateAdd.d.ts +1 -1
  210. package/dist/internal/plainDateAdd.js +1 -1
  211. package/dist/internal/plainDateUntil.d.ts +1 -1
  212. package/dist/internal/plainDateUntil.js +1 -1
  213. package/dist/internal/readSetFields.js +1 -1
  214. package/dist/internal/resolveDurationRelativeTo.d.ts +1 -1
  215. package/dist/internal/resolveDurationRelativeTo.js +1 -1
  216. package/dist/internal/resolveLocale.d.ts +2 -2
  217. package/dist/internal/resolveLocale.js +2 -2
  218. package/dist/internal/resolveManualRoundingOptions.d.ts +1 -1
  219. package/dist/internal/resolveUnixIntervalPair.d.ts +1 -1
  220. package/dist/internal/rinexWeek.d.ts +22 -0
  221. package/dist/internal/rinexWeek.js +30 -0
  222. package/dist/internal/rollBusinessDate.d.ts +15 -0
  223. package/dist/internal/rollBusinessDate.js +46 -0
  224. package/dist/internal/splitStep.d.ts +1 -1
  225. package/dist/internal/splitStep.js +1 -1
  226. package/dist/internal/startOrEndOfUnix.d.ts +1 -1
  227. package/dist/internal/startOrEndOfUtc.d.ts +1 -1
  228. package/dist/internal/startOrEndOfUtc.js +1 -1
  229. package/dist/internal/startOrEndOfZoned.d.ts +1 -1
  230. package/dist/internal/temporal.d.ts +5 -0
  231. package/dist/internal/temporal.js +5 -0
  232. package/dist/internal/temporalCompat/calendarDateArithmetic.d.ts +1 -1
  233. package/dist/internal/temporalCompat/calendarDateFromFields.d.ts +1 -1
  234. package/dist/internal/temporalCompat/calendarDateFromFields.js +1 -1
  235. package/dist/internal/temporalCompat/calendarFields.d.ts +1 -1
  236. package/dist/internal/temporalCompat/capabilities.d.ts +27 -5
  237. package/dist/internal/temporalCompat/capabilities.js +28 -4
  238. package/dist/internal/temporalCompat/fieldSearch.d.ts +1 -1
  239. package/dist/internal/temporalCompat/fieldSearch.js +1 -1
  240. package/dist/internal/temporalCompat/fixedDay.d.ts +1 -1
  241. package/dist/internal/temporalCompat/fixedDay.js +1 -1
  242. package/dist/internal/temporalCompat/index.d.ts +1 -1
  243. package/dist/internal/temporalCompat/index.js +1 -1
  244. package/dist/internal/temporalCompat/largeMonthSpan.js +1 -1
  245. package/dist/internal/temporalCompat/nonIsoArithmetic.d.ts +1 -1
  246. package/dist/internal/temporalCompat/nonIsoArithmetic.js +1 -1
  247. package/dist/internal/temporalCompat/probeRepros.d.ts +35 -0
  248. package/dist/internal/temporalCompat/probeRepros.js +571 -0
  249. package/dist/internal/temporalCompat/readArithmeticModel.js +2 -2
  250. package/dist/internal/temporalCompat/repros.d.ts +3 -10
  251. package/dist/internal/temporalCompat/repros.js +13 -520
  252. package/dist/internal/timeScaleString.d.ts +47 -0
  253. package/dist/internal/timeScaleString.js +86 -0
  254. package/dist/internal/toInstantFromUtc.d.ts +1 -1
  255. package/dist/internal/toInstantFromUtc.js +1 -1
  256. package/dist/internal/unixEpochValue.d.ts +1 -1
  257. package/dist/internal/unixEpochValue.js +1 -1
  258. package/dist/internal/unixFormatReference.d.ts +1 -1
  259. package/dist/internal/unixFormatReference.js +1 -1
  260. package/dist/internal/unixWallClock.d.ts +1 -1
  261. package/dist/internal/utcOffsetString.d.ts +16 -0
  262. package/dist/internal/utcOffsetString.js +31 -1
  263. package/dist/internal/utcReading.d.ts +59 -0
  264. package/dist/internal/utcReading.js +113 -0
  265. package/dist/internal/utcWallClock.d.ts +1 -1
  266. package/dist/internal/utcWallClock.js +1 -1
  267. package/dist/internal/validatedZones.d.ts +20 -0
  268. package/dist/internal/validatedZones.js +33 -0
  269. package/dist/internal/wallClockAtOffset.d.ts +1 -1
  270. package/dist/internal/yearWindowStart.js +1 -1
  271. package/dist/internal/zoneBucketCap.d.ts +1 -1
  272. package/dist/internal/zoneBucketCap.js +2 -2
  273. package/dist/internal/zoneFrame.d.ts +4 -4
  274. package/dist/internal/zoneFrame.js +4 -4
  275. package/dist/internal/zonedBucket.d.ts +2 -2
  276. package/dist/internal/zonedBucket.js +92 -21
  277. package/dist/internal/zonedFormatReference.d.ts +1 -1
  278. package/dist/internal/zonedFormatReference.js +1 -1
  279. package/dist/internal/zonedLocalDates.d.ts +1 -1
  280. package/dist/internal/zonedLocalDates.js +22 -19
  281. package/dist/internal/zonedNowUnitValue.d.ts +1 -1
  282. package/dist/internal/zonedNowUnitValue.js +1 -1
  283. package/dist/internal/zonedTransitionSearch.d.ts +2 -0
  284. package/dist/internal/zonedTransitionSearch.js +165 -16
  285. package/dist/internal/zonedWallClock.d.ts +15 -4
  286. package/dist/internal/zonedWallClock.js +34 -6
  287. package/dist/internal/zonedWallClockDifference.d.ts +1 -1
  288. package/dist/internal/zonedWallClockDifference.js +2 -2
  289. package/dist/internal/zonedWallClockOperations.d.ts +2 -2
  290. package/dist/internal/zonedWallClockOperations.js +51 -6
  291. package/dist/internal/zonelessCalendarDate.d.ts +1 -1
  292. package/dist/internal/zonelessCalendarDate.js +1 -1
  293. package/dist/interval/index.d.ts +1 -1
  294. package/dist/interval/index.js +2 -2
  295. package/dist/plain/calculate/addBusinessDays.d.ts +2 -2
  296. package/dist/plain/calculate/addBusinessDays.js +2 -2
  297. package/dist/plain/calculate/addDateTime.js +1 -1
  298. package/dist/plain/calculate/addTime.js +1 -1
  299. package/dist/plain/calculate/clampDate.js +1 -1
  300. package/dist/plain/calculate/closestDateTo.js +1 -1
  301. package/dist/plain/calculate/cycleDate.js +1 -1
  302. package/dist/plain/calculate/cycleDateTime.js +1 -1
  303. package/dist/plain/calculate/cycleTime.js +1 -1
  304. package/dist/plain/calculate/diffDate.d.ts +1 -1
  305. package/dist/plain/calculate/diffDateAsDuration.d.ts +1 -1
  306. package/dist/plain/calculate/diffDateTime.d.ts +1 -1
  307. package/dist/plain/calculate/diffDateTime.js +1 -1
  308. package/dist/plain/calculate/diffDateTimeAsDuration.d.ts +1 -1
  309. package/dist/plain/calculate/diffDateTimeAsDuration.js +1 -1
  310. package/dist/plain/calculate/diffTime.d.ts +1 -1
  311. package/dist/plain/calculate/diffTime.js +1 -1
  312. package/dist/plain/calculate/endOfDate.d.ts +1 -1
  313. package/dist/plain/calculate/endOfDate.js +1 -1
  314. package/dist/plain/calculate/endOfDateTime.d.ts +1 -1
  315. package/dist/plain/calculate/endOfDateTime.js +1 -1
  316. package/dist/plain/calculate/endOfQuarterForDate.js +1 -1
  317. package/dist/plain/calculate/endOfQuarterForDateTime.js +1 -1
  318. package/dist/plain/calculate/endOfTime.d.ts +1 -1
  319. package/dist/plain/calculate/endOfTime.js +1 -1
  320. package/dist/plain/calculate/getDayOfYear.js +1 -1
  321. package/dist/plain/calculate/getDaysInMonth.js +1 -1
  322. package/dist/plain/calculate/getDaysInYear.js +1 -1
  323. package/dist/plain/calculate/getLargestDateDurationUnit.d.ts +1 -1
  324. package/dist/plain/calculate/getLargestDateTimeDurationUnit.d.ts +1 -1
  325. package/dist/plain/calculate/getLargestTimeDurationUnit.d.ts +1 -1
  326. package/dist/plain/calculate/getLocaleDayOfWeek.d.ts +6 -6
  327. package/dist/plain/calculate/getLocaleDayOfWeek.js +7 -7
  328. package/dist/plain/calculate/getLocaleEndOfWeek.d.ts +4 -4
  329. package/dist/plain/calculate/getLocaleEndOfWeek.js +5 -5
  330. package/dist/plain/calculate/getLocaleStartOfWeek.d.ts +5 -5
  331. package/dist/plain/calculate/getLocaleStartOfWeek.js +6 -6
  332. package/dist/plain/calculate/getLocaleWeekYear.d.ts +10 -10
  333. package/dist/plain/calculate/getLocaleWeekYear.js +11 -11
  334. package/dist/plain/calculate/getQuarterForDate.js +1 -1
  335. package/dist/plain/calculate/getQuarterForDateTime.js +1 -1
  336. package/dist/plain/calculate/getWeekNumber.js +1 -1
  337. package/dist/plain/calculate/getWeekOfMonth.d.ts +10 -14
  338. package/dist/plain/calculate/getWeekOfMonth.js +11 -15
  339. package/dist/plain/calculate/getWeekYear.js +1 -1
  340. package/dist/plain/calculate/getWeeksInLocaleWeekYear.d.ts +7 -7
  341. package/dist/plain/calculate/getWeeksInLocaleWeekYear.js +8 -8
  342. package/dist/plain/calculate/getWeeksInMonth.d.ts +8 -11
  343. package/dist/plain/calculate/getWeeksInMonth.js +9 -12
  344. package/dist/plain/calculate/getWeeksInYear.js +1 -1
  345. package/dist/plain/calculate/maxDate.js +1 -1
  346. package/dist/plain/calculate/maxDateTime.js +1 -1
  347. package/dist/plain/calculate/maxTime.js +1 -1
  348. package/dist/plain/calculate/minDate.js +1 -1
  349. package/dist/plain/calculate/minDateTime.js +1 -1
  350. package/dist/plain/calculate/minTime.js +1 -1
  351. package/dist/plain/calculate/nextWeekday.d.ts +14 -12
  352. package/dist/plain/calculate/nextWeekday.js +15 -13
  353. package/dist/plain/calculate/previousWeekday.d.ts +14 -12
  354. package/dist/plain/calculate/previousWeekday.js +15 -13
  355. package/dist/plain/calculate/roundDate.d.ts +1 -1
  356. package/dist/plain/calculate/roundDate.js +1 -1
  357. package/dist/plain/calculate/roundDateTime.d.ts +1 -1
  358. package/dist/plain/calculate/roundDateTime.js +1 -1
  359. package/dist/plain/calculate/roundTime.d.ts +1 -1
  360. package/dist/plain/calculate/roundTime.js +1 -1
  361. package/dist/plain/calculate/setDate.d.ts +1 -1
  362. package/dist/plain/calculate/setDate.js +1 -1
  363. package/dist/plain/calculate/setDateTime.d.ts +1 -1
  364. package/dist/plain/calculate/setDateTime.js +1 -1
  365. package/dist/plain/calculate/setTime.d.ts +1 -1
  366. package/dist/plain/calculate/setTime.js +1 -1
  367. package/dist/plain/calculate/sortDateTimes.js +1 -1
  368. package/dist/plain/calculate/sortDates.js +1 -1
  369. package/dist/plain/calculate/sortTimes.js +1 -1
  370. package/dist/plain/calculate/startOfDate.d.ts +1 -1
  371. package/dist/plain/calculate/startOfDate.js +1 -1
  372. package/dist/plain/calculate/startOfDateTime.d.ts +1 -1
  373. package/dist/plain/calculate/startOfDateTime.js +1 -1
  374. package/dist/plain/calculate/startOfQuarterForDate.js +1 -1
  375. package/dist/plain/calculate/startOfQuarterForDateTime.js +1 -1
  376. package/dist/plain/calculate/startOfTime.d.ts +1 -1
  377. package/dist/plain/calculate/startOfTime.js +1 -1
  378. package/dist/plain/calculate/subtractBusinessDays.d.ts +2 -2
  379. package/dist/plain/calculate/subtractBusinessDays.js +2 -2
  380. package/dist/plain/calculate/subtractDate.js +1 -1
  381. package/dist/plain/calculate/subtractDateTime.js +1 -1
  382. package/dist/plain/calculate/subtractTime.js +1 -1
  383. package/dist/plain/calculate/weekOfYearForDate.js +1 -1
  384. package/dist/plain/calculate/weekOfYearForDateTime.js +1 -1
  385. package/dist/plain/chop/chopDate.js +1 -1
  386. package/dist/plain/chop/chopMilliseconds.js +1 -1
  387. package/dist/plain/chop/chopSeconds.js +1 -1
  388. package/dist/plain/chop/chopTime.js +1 -1
  389. package/dist/plain/compare/areDateTimesEqual.js +1 -1
  390. package/dist/plain/compare/areDateTimesEqualBy.d.ts +2 -4
  391. package/dist/plain/compare/areDateTimesEqualBy.js +2 -4
  392. package/dist/plain/compare/areDatesEqual.js +1 -1
  393. package/dist/plain/compare/areDatesEqualBy.d.ts +5 -5
  394. package/dist/plain/compare/areDatesEqualBy.js +5 -5
  395. package/dist/plain/compare/areTimesEqual.js +1 -1
  396. package/dist/plain/compare/isAfterDate.js +1 -1
  397. package/dist/plain/compare/isAfterDateTime.js +1 -1
  398. package/dist/plain/compare/isAfterTime.js +1 -1
  399. package/dist/plain/compare/isBeforeDate.js +1 -1
  400. package/dist/plain/compare/isBeforeDateTime.js +1 -1
  401. package/dist/plain/compare/isBeforeTime.js +1 -1
  402. package/dist/plain/compare/isBetweenDate.js +1 -1
  403. package/dist/plain/compare/isBetweenDateTime.js +1 -1
  404. package/dist/plain/compare/isBetweenTime.js +1 -1
  405. package/dist/plain/compare/isBusinessDay.d.ts +2 -2
  406. package/dist/plain/compare/isBusinessDay.js +3 -3
  407. package/dist/plain/compare/isRelativeDay.d.ts +1 -1
  408. package/dist/plain/compare/isRelativeDay.js +1 -1
  409. package/dist/plain/compare/isThisUnit.d.ts +8 -6
  410. package/dist/plain/compare/isThisUnit.js +7 -5
  411. package/dist/plain/compare/isWeekend.d.ts +5 -5
  412. package/dist/plain/compare/isWeekend.js +6 -6
  413. package/dist/plain/format/formatCalendar.d.ts +3 -5
  414. package/dist/plain/format/formatCalendar.js +10 -9
  415. package/dist/plain/format/formatDate.d.ts +4 -4
  416. package/dist/plain/format/formatDate.js +8 -7
  417. package/dist/plain/format/formatDateRange.d.ts +4 -4
  418. package/dist/plain/format/formatDateRange.js +8 -7
  419. package/dist/plain/format/formatDateTime.d.ts +4 -4
  420. package/dist/plain/format/formatDateTime.js +8 -7
  421. package/dist/plain/format/formatDateTimeRange.d.ts +4 -4
  422. package/dist/plain/format/formatDateTimeRange.js +8 -7
  423. package/dist/plain/format/formatDateTimeToParts.d.ts +6 -6
  424. package/dist/plain/format/formatDateTimeToParts.js +10 -9
  425. package/dist/plain/format/formatDateToParts.d.ts +6 -6
  426. package/dist/plain/format/formatDateToParts.js +10 -9
  427. package/dist/plain/format/formatRelativeDate.d.ts +3 -3
  428. package/dist/plain/format/formatRelativeDate.js +4 -4
  429. package/dist/plain/format/formatRelativeDateTime.d.ts +3 -3
  430. package/dist/plain/format/formatRelativeDateTime.js +4 -4
  431. package/dist/plain/format/formatRelativeTime.d.ts +3 -3
  432. package/dist/plain/format/formatRelativeTime.js +4 -4
  433. package/dist/plain/format/formatSqlDateTime.js +1 -1
  434. package/dist/plain/format/formatTime.d.ts +4 -4
  435. package/dist/plain/format/formatTime.js +8 -7
  436. package/dist/plain/get/getDay.js +1 -1
  437. package/dist/plain/get/getDayOfWeek.js +1 -1
  438. package/dist/plain/get/getHour.js +1 -1
  439. package/dist/plain/get/getMicrosecond.js +1 -1
  440. package/dist/plain/get/getMillisecond.js +1 -1
  441. package/dist/plain/get/getMinute.js +1 -1
  442. package/dist/plain/get/getMonth.js +1 -1
  443. package/dist/plain/get/getNanosecond.js +1 -1
  444. package/dist/plain/get/getNow.js +1 -1
  445. package/dist/plain/get/getNowUnit.js +1 -1
  446. package/dist/plain/get/getSecond.js +1 -1
  447. package/dist/plain/get/getToday.js +1 -1
  448. package/dist/plain/get/getWeekOfYear.js +1 -1
  449. package/dist/plain/get/getYear.js +1 -1
  450. package/dist/plain/index.d.ts +1 -1
  451. package/dist/plain/index.js +2 -2
  452. package/dist/plain/interval/intervalAbutsDate.d.ts +1 -2
  453. package/dist/plain/interval/intervalAbutsDate.js +2 -3
  454. package/dist/plain/interval/intervalAbutsDateTime.js +1 -1
  455. package/dist/plain/interval/intervalAbutsTime.js +1 -1
  456. package/dist/plain/interval/intervalContainsDate.d.ts +1 -1
  457. package/dist/plain/interval/intervalContainsDate.js +2 -2
  458. package/dist/plain/interval/intervalContainsDateTime.js +1 -1
  459. package/dist/plain/interval/intervalContainsTime.js +1 -1
  460. package/dist/plain/interval/intervalCountDate.js +1 -1
  461. package/dist/plain/interval/intervalCountDateTime.js +1 -1
  462. package/dist/plain/interval/intervalCountTime.js +1 -1
  463. package/dist/plain/interval/intervalDifferenceDate.d.ts +1 -1
  464. package/dist/plain/interval/intervalDifferenceDate.js +2 -2
  465. package/dist/plain/interval/intervalDifferenceDateTime.js +1 -1
  466. package/dist/plain/interval/intervalDifferenceTime.js +1 -1
  467. package/dist/plain/interval/intervalDivideEquallyDate.d.ts +3 -3
  468. package/dist/plain/interval/intervalDivideEquallyDate.js +3 -3
  469. package/dist/plain/interval/intervalDivideEquallyDateTime.js +1 -1
  470. package/dist/plain/interval/intervalDivideEquallyTime.js +1 -1
  471. package/dist/plain/interval/intervalEngulfsDate.d.ts +1 -1
  472. package/dist/plain/interval/intervalEngulfsDate.js +2 -2
  473. package/dist/plain/interval/intervalEngulfsDateTime.js +1 -1
  474. package/dist/plain/interval/intervalEngulfsTime.js +1 -1
  475. package/dist/plain/interval/intervalFromDurationDate.js +1 -1
  476. package/dist/plain/interval/intervalFromDurationDateTime.js +1 -1
  477. package/dist/plain/interval/intervalFromDurationTime.js +1 -1
  478. package/dist/plain/interval/intervalIntersectionDate.d.ts +1 -1
  479. package/dist/plain/interval/intervalIntersectionDate.js +2 -2
  480. package/dist/plain/interval/intervalIntersectionDateTime.js +1 -1
  481. package/dist/plain/interval/intervalIntersectionTime.js +1 -1
  482. package/dist/plain/interval/intervalLengthDateTime.js +1 -1
  483. package/dist/plain/interval/intervalLengthTime.js +1 -1
  484. package/dist/plain/interval/intervalOverlappingDaysDate.js +1 -1
  485. package/dist/plain/interval/intervalOverlappingDaysDateTime.js +1 -1
  486. package/dist/plain/interval/intervalSplitAtDate.d.ts +1 -1
  487. package/dist/plain/interval/intervalSplitAtDate.js +2 -2
  488. package/dist/plain/interval/intervalSplitAtDateTime.js +1 -1
  489. package/dist/plain/interval/intervalSplitAtTime.js +1 -1
  490. package/dist/plain/interval/intervalUnionDate.d.ts +2 -2
  491. package/dist/plain/interval/intervalUnionDate.js +3 -3
  492. package/dist/plain/interval/intervalUnionDateTime.js +1 -1
  493. package/dist/plain/interval/intervalUnionTime.js +1 -1
  494. package/dist/plain/interval/intervalXorAllDate.d.ts +1 -1
  495. package/dist/plain/interval/intervalXorAllDate.js +2 -2
  496. package/dist/plain/interval/intervalXorAllDateTime.js +1 -1
  497. package/dist/plain/interval/intervalXorAllTime.js +1 -1
  498. package/dist/plain/interval/intervalXorDate.d.ts +1 -1
  499. package/dist/plain/interval/intervalXorDate.js +2 -2
  500. package/dist/plain/interval/intervalXorDateTime.js +1 -1
  501. package/dist/plain/interval/intervalXorTime.js +1 -1
  502. package/dist/plain/interval/intervalsOverlapDate.d.ts +1 -1
  503. package/dist/plain/interval/intervalsOverlapDate.js +2 -2
  504. package/dist/plain/interval/intervalsOverlapDateTime.js +1 -1
  505. package/dist/plain/interval/intervalsOverlapTime.js +1 -1
  506. package/dist/plain/interval/mergeIntervalsDate.d.ts +1 -1
  507. package/dist/plain/interval/mergeIntervalsDate.js +2 -2
  508. package/dist/plain/interval/mergeIntervalsDateTime.js +1 -1
  509. package/dist/plain/interval/mergeIntervalsTime.js +1 -1
  510. package/dist/plain/interval/splitIntervalByUnitDate.d.ts +2 -3
  511. package/dist/plain/interval/splitIntervalByUnitDate.js +3 -4
  512. package/dist/plain/interval/splitIntervalByUnitDateTime.d.ts +2 -1
  513. package/dist/plain/interval/splitIntervalByUnitDateTime.js +3 -2
  514. package/dist/plain/interval/splitIntervalByUnitTime.js +1 -1
  515. package/dist/plain/interval/validate/isValidDateInterval.d.ts +1 -1
  516. package/dist/plain/interval/validate/isValidDateInterval.js +2 -2
  517. package/dist/plain/interval/validate/isValidDateTimeInterval.js +1 -1
  518. package/dist/plain/interval/validate/isValidTimeInterval.js +1 -1
  519. package/dist/plain/locale/getLocaleEraNames.d.ts +6 -6
  520. package/dist/plain/locale/getLocaleEraNames.js +8 -7
  521. package/dist/plain/locale/getLocaleMeridiems.d.ts +5 -5
  522. package/dist/plain/locale/getLocaleMeridiems.js +7 -6
  523. package/dist/plain/locale/getLocaleMonthNames.d.ts +6 -6
  524. package/dist/plain/locale/getLocaleMonthNames.js +17 -11
  525. package/dist/plain/locale/getLocaleWeekdayNames.d.ts +3 -3
  526. package/dist/plain/locale/getLocaleWeekdayNames.js +12 -5
  527. package/dist/plain/map/mapDatesInRange.js +1 -1
  528. package/dist/plain/map/mapDaysInMonth.js +1 -1
  529. package/dist/plain/parse/parseDateTimeWithPattern.d.ts +14 -13
  530. package/dist/plain/parse/parseDateTimeWithPattern.js +15 -14
  531. package/dist/plain/parse/parseDateWithPattern.d.ts +18 -17
  532. package/dist/plain/parse/parseDateWithPattern.js +19 -18
  533. package/dist/plain/parse/parseDayFromDate.js +1 -1
  534. package/dist/plain/parse/parseDayFromDateTime.js +1 -1
  535. package/dist/plain/parse/parseDayOfWeekFromDate.js +1 -1
  536. package/dist/plain/parse/parseDayOfWeekFromDateTime.js +1 -1
  537. package/dist/plain/parse/parseHourFromDateTime.js +1 -1
  538. package/dist/plain/parse/parseHourFromTime.js +1 -1
  539. package/dist/plain/parse/parseMicrosecondFromDateTime.js +1 -1
  540. package/dist/plain/parse/parseMicrosecondFromTime.js +1 -1
  541. package/dist/plain/parse/parseMillisecondFromDateTime.js +1 -1
  542. package/dist/plain/parse/parseMillisecondFromTime.js +1 -1
  543. package/dist/plain/parse/parseMinuteFromDateTime.js +1 -1
  544. package/dist/plain/parse/parseMinuteFromTime.js +1 -1
  545. package/dist/plain/parse/parseMonthFromDate.js +1 -1
  546. package/dist/plain/parse/parseMonthFromDateTime.js +1 -1
  547. package/dist/plain/parse/parseNanosecondFromDateTime.js +1 -1
  548. package/dist/plain/parse/parseNanosecondFromTime.js +1 -1
  549. package/dist/plain/parse/parseSecondFromDateTime.js +1 -1
  550. package/dist/plain/parse/parseSecondFromTime.js +1 -1
  551. package/dist/plain/parse/parseSqlDateTime.js +1 -1
  552. package/dist/plain/parse/parseTimeWithPattern.d.ts +6 -4
  553. package/dist/plain/parse/parseTimeWithPattern.js +7 -5
  554. package/dist/plain/parse/parseUnitFromDate.d.ts +1 -1
  555. package/dist/plain/parse/parseUnitFromDate.js +1 -1
  556. package/dist/plain/parse/parseUnitFromDateTime.d.ts +1 -1
  557. package/dist/plain/parse/parseUnitFromDateTime.js +1 -1
  558. package/dist/plain/parse/parseUnitFromTime.d.ts +1 -1
  559. package/dist/plain/parse/parseUnitFromTime.js +1 -1
  560. package/dist/plain/parse/parseWeekFromDateTime.js +1 -1
  561. package/dist/plain/parse/parseYearFromDate.js +1 -1
  562. package/dist/plain/parse/parseYearFromDateTime.js +1 -1
  563. package/dist/plain/validate/{isLeapSecond.d.ts → hasSecond60.d.ts} +16 -14
  564. package/dist/plain/validate/{isLeapSecond.js → hasSecond60.js} +16 -14
  565. package/dist/plain/validate/index.d.ts +1 -1
  566. package/dist/plain/validate/index.js +1 -1
  567. package/dist/plain/validate/isLeapYear.js +1 -1
  568. package/dist/plain/validate/isValidDate.js +2 -17
  569. package/dist/plain/validate/isValidDateRange.js +1 -1
  570. package/dist/plain/validate/isValidDateTime.d.ts +1 -1
  571. package/dist/plain/validate/isValidDateTime.js +4 -4
  572. package/dist/plain/validate/isValidDateTimeRange.js +1 -1
  573. package/dist/plain/validate/isValidIsoDateLike.js +3 -3
  574. package/dist/plain/validate/isValidTime.js +2 -18
  575. package/dist/plain/validate/isValidTimeRange.js +1 -1
  576. package/dist/precision/convert/fromNanoseconds.d.ts +2 -2
  577. package/dist/precision/convert/fromNanoseconds.js +3 -3
  578. package/dist/precision/convert/toNanoseconds.d.ts +2 -2
  579. package/dist/precision/convert/toNanoseconds.js +2 -2
  580. package/dist/precision/index.d.ts +1 -1
  581. package/dist/precision/index.js +2 -2
  582. package/dist/precision/validate/isValidInstant.d.ts +1 -1
  583. package/dist/precision/validate/isValidInstant.js +1 -1
  584. package/dist/regex/calendar-zoned-date-time.d.ts +4 -4
  585. package/dist/regex/calendar-zoned-date-time.js +4 -4
  586. package/dist/regex/index.d.ts +1 -1
  587. package/dist/regex/index.js +2 -2
  588. package/dist/regex/leap-second.d.ts +1 -1
  589. package/dist/regex/leap-second.js +1 -1
  590. package/dist/regex/time-zone-like.d.ts +2 -2
  591. package/dist/regex/time-zone-like.js +2 -2
  592. package/dist/span/calculate/spanMs.d.ts +4 -3
  593. package/dist/span/calculate/spanMs.js +4 -3
  594. package/dist/span/calculate/spanNs.d.ts +4 -3
  595. package/dist/span/calculate/spanNs.js +4 -3
  596. package/dist/span/calculate/spanWallClock.d.ts +12 -12
  597. package/dist/span/calculate/spanWallClock.js +13 -13
  598. package/dist/span/index.d.ts +1 -1
  599. package/dist/span/index.js +2 -2
  600. package/dist/span/validate/isValidSpan.d.ts +3 -3
  601. package/dist/span/validate/isValidSpan.js +3 -3
  602. package/dist/timescale/calculate/index.d.ts +3 -0
  603. package/dist/timescale/calculate/index.js +3 -0
  604. package/dist/timescale/calculate/leapSecondsBetween.d.ts +26 -0
  605. package/dist/timescale/calculate/leapSecondsBetween.js +62 -0
  606. package/dist/timescale/calculate/nextLeapSecond.d.ts +18 -0
  607. package/dist/timescale/calculate/nextLeapSecond.js +33 -0
  608. package/dist/timescale/calculate/taiMinusUtc.d.ts +21 -0
  609. package/dist/timescale/calculate/taiMinusUtc.js +38 -0
  610. package/dist/timescale/convert/fromTAI.d.ts +22 -0
  611. package/dist/timescale/convert/fromTAI.js +35 -0
  612. package/dist/timescale/convert/index.d.ts +2 -0
  613. package/dist/timescale/convert/index.js +2 -0
  614. package/dist/timescale/convert/toTAI.d.ts +23 -0
  615. package/dist/timescale/convert/toTAI.js +39 -0
  616. package/dist/timescale/index.d.ts +4 -0
  617. package/dist/timescale/index.js +5 -0
  618. package/dist/timescale/validate/index.d.ts +1 -0
  619. package/dist/timescale/validate/index.js +1 -0
  620. package/dist/timescale/validate/isLeapSecond.d.ts +25 -0
  621. package/dist/timescale/validate/isLeapSecond.js +36 -0
  622. package/dist/transport/calculate/crossingTime.d.ts +2 -2
  623. package/dist/transport/calculate/crossingTime.js +3 -3
  624. package/dist/transport/calculate/cutoffAt.d.ts +4 -4
  625. package/dist/transport/calculate/cutoffAt.js +24 -133
  626. package/dist/transport/calculate/cutoffSchedule.d.ts +2 -2
  627. package/dist/transport/calculate/cutoffSchedule.js +52 -20
  628. package/dist/transport/calculate/dwellTime.d.ts +3 -3
  629. package/dist/transport/calculate/dwellTime.js +4 -4
  630. package/dist/transport/calculate/estimateDrift.d.ts +1 -1
  631. package/dist/transport/calculate/estimateDrift.js +1 -1
  632. package/dist/transport/calculate/nextDeparture.d.ts +2 -2
  633. package/dist/transport/calculate/nextDeparture.js +2 -2
  634. package/dist/transport/calculate/scheduleDelivery.d.ts +2 -2
  635. package/dist/transport/calculate/scheduleDelivery.js +3 -3
  636. package/dist/transport/calculate/transitTime.d.ts +11 -11
  637. package/dist/transport/calculate/transitTime.js +11 -11
  638. package/dist/transport/compare/classifyPunctuality.d.ts +1 -1
  639. package/dist/transport/compare/classifyPunctuality.js +1 -1
  640. package/dist/transport/compare/isPastCutoff.d.ts +1 -1
  641. package/dist/transport/compare/isPastCutoff.js +2 -2
  642. package/dist/transport/compare/scheduleDeviation.d.ts +1 -1
  643. package/dist/transport/compare/scheduleDeviation.js +1 -1
  644. package/dist/transport/compare/timeToCutoff.d.ts +1 -1
  645. package/dist/transport/compare/timeToCutoff.js +1 -1
  646. package/dist/transport/convert/etaAtZone.d.ts +2 -2
  647. package/dist/transport/convert/etaAtZone.js +2 -2
  648. package/dist/transport/index.d.ts +1 -1
  649. package/dist/transport/index.js +2 -2
  650. package/dist/types/date-duration-unit.d.ts +1 -1
  651. package/dist/types/date-time-duration-units.d.ts +1 -1
  652. package/dist/types/date-time-unit.d.ts +1 -1
  653. package/dist/types/date-unit.d.ts +1 -1
  654. package/dist/types/disambiguation.d.ts +1 -1
  655. package/dist/types/duration-relative-to.d.ts +1 -1
  656. package/dist/types/duration-string-options.d.ts +1 -1
  657. package/dist/types/exact-duration-unit.d.ts +1 -1
  658. package/dist/types/fiscal-calendar.d.ts +40 -4
  659. package/dist/types/gnss.d.ts +51 -0
  660. package/dist/types/gnss.js +0 -0
  661. package/dist/types/index.d.ts +2 -0
  662. package/dist/types/index.js +2 -0
  663. package/dist/types/now-unit.d.ts +1 -1
  664. package/dist/types/offset.d.ts +1 -1
  665. package/dist/types/overflow.d.ts +1 -1
  666. package/dist/types/rounding-options.d.ts +1 -1
  667. package/dist/types/stored-zoned-classification.d.ts +83 -0
  668. package/dist/types/stored-zoned-classification.js +0 -0
  669. package/dist/types/time-duration-unit.d.ts +1 -1
  670. package/dist/types/time-unit.d.ts +1 -1
  671. package/dist/types/utc-now-unit.d.ts +1 -1
  672. package/dist/unix/calculate/diffUnix.d.ts +1 -1
  673. package/dist/unix/calculate/diffUnixAsDuration.d.ts +1 -1
  674. package/dist/unix/calculate/endOfUnix.d.ts +2 -2
  675. package/dist/unix/calculate/endOfUnix.js +1 -1
  676. package/dist/unix/calculate/isBetweenUnix.js +1 -1
  677. package/dist/unix/calculate/roundUnix.d.ts +7 -5
  678. package/dist/unix/calculate/roundUnix.js +6 -4
  679. package/dist/unix/calculate/setUnix.d.ts +3 -3
  680. package/dist/unix/calculate/setUnix.js +2 -2
  681. package/dist/unix/calculate/startOfUnix.d.ts +2 -2
  682. package/dist/unix/calculate/startOfUnix.js +1 -1
  683. package/dist/unix/compare/areUnixEqualBy.d.ts +6 -6
  684. package/dist/unix/compare/areUnixEqualBy.js +5 -5
  685. package/dist/unix/convert/convertUnixToPlainTime.d.ts +1 -1
  686. package/dist/unix/convert/convertUnixToPlainTime.js +1 -1
  687. package/dist/unix/convert/convertUnixToZoned.d.ts +1 -1
  688. package/dist/unix/convert/convertUnixToZoned.js +1 -1
  689. package/dist/unix/format/formatCalendarUnix.d.ts +10 -9
  690. package/dist/unix/format/formatCalendarUnix.js +6 -6
  691. package/dist/unix/format/formatRelativeUnix.d.ts +7 -7
  692. package/dist/unix/format/formatRelativeUnix.js +7 -7
  693. package/dist/unix/format/formatUnix.d.ts +9 -9
  694. package/dist/unix/format/formatUnix.js +9 -9
  695. package/dist/unix/get/getUnixDay.js +1 -1
  696. package/dist/unix/get/getUnixHour.js +1 -1
  697. package/dist/unix/get/getUnixMicrosecond.js +1 -1
  698. package/dist/unix/get/getUnixMillisecond.js +1 -1
  699. package/dist/unix/get/getUnixMinute.js +1 -1
  700. package/dist/unix/get/getUnixMonth.js +1 -1
  701. package/dist/unix/get/getUnixNanosecond.js +1 -1
  702. package/dist/unix/get/getUnixNow.js +1 -1
  703. package/dist/unix/get/getUnixNowUnit.d.ts +1 -1
  704. package/dist/unix/get/getUnixNowUnit.js +1 -1
  705. package/dist/unix/get/getUnixSecond.js +1 -1
  706. package/dist/unix/get/getUnixYear.js +1 -1
  707. package/dist/unix/index.d.ts +1 -1
  708. package/dist/unix/index.js +2 -2
  709. package/dist/unix/interval/intervalFromDurationUnix.js +1 -1
  710. package/dist/unix/interval/intervalLengthUnix.d.ts +2 -2
  711. package/dist/unix/interval/intervalLengthUnix.js +2 -2
  712. package/dist/unix/interval/splitIntervalByUnitUnix.d.ts +3 -2
  713. package/dist/unix/interval/splitIntervalByUnitUnix.js +4 -3
  714. package/dist/unix/parse/parseUnitFromUnix.d.ts +1 -1
  715. package/dist/utc/calculate/addUtc.js +1 -1
  716. package/dist/utc/calculate/diffUtc.d.ts +1 -1
  717. package/dist/utc/calculate/diffUtc.js +1 -1
  718. package/dist/utc/calculate/diffUtcAsDuration.d.ts +1 -1
  719. package/dist/utc/calculate/diffUtcAsDuration.js +1 -1
  720. package/dist/utc/calculate/endOfQuarterForUtc.js +1 -1
  721. package/dist/utc/calculate/endOfUtc.d.ts +1 -1
  722. package/dist/utc/calculate/isBetweenUtc.js +1 -1
  723. package/dist/utc/calculate/maxUtc.js +1 -1
  724. package/dist/utc/calculate/minUtc.js +1 -1
  725. package/dist/utc/calculate/roundUtc.d.ts +1 -1
  726. package/dist/utc/calculate/roundUtc.js +1 -1
  727. package/dist/utc/calculate/setUtc.d.ts +1 -1
  728. package/dist/utc/calculate/setUtc.js +1 -1
  729. package/dist/utc/calculate/sortUtc.js +1 -1
  730. package/dist/utc/calculate/startOfQuarterForUtc.js +1 -1
  731. package/dist/utc/calculate/startOfUtc.d.ts +1 -1
  732. package/dist/utc/calculate/subtractUtc.js +1 -1
  733. package/dist/utc/compare/areUtcEqual.js +1 -1
  734. package/dist/utc/compare/areUtcEqualBy.d.ts +2 -2
  735. package/dist/utc/compare/areUtcEqualBy.js +2 -2
  736. package/dist/utc/compare/isAfterUtc.js +1 -1
  737. package/dist/utc/compare/isBeforeUtc.js +1 -1
  738. package/dist/utc/convert/convertUtcToPlainDate.d.ts +1 -1
  739. package/dist/utc/convert/convertUtcToPlainDate.js +2 -2
  740. package/dist/utc/convert/convertUtcToPlainDateTime.d.ts +1 -1
  741. package/dist/utc/convert/convertUtcToPlainDateTime.js +2 -2
  742. package/dist/utc/convert/convertUtcToPlainTime.d.ts +1 -1
  743. package/dist/utc/convert/convertUtcToPlainTime.js +2 -2
  744. package/dist/utc/convert/convertUtcToUnix.js +1 -1
  745. package/dist/utc/convert/convertUtcToZoned.d.ts +1 -1
  746. package/dist/utc/convert/convertUtcToZoned.js +2 -2
  747. package/dist/utc/format/formatCalendarUtc.d.ts +6 -5
  748. package/dist/utc/format/formatCalendarUtc.js +3 -3
  749. package/dist/utc/format/formatHttpDate.js +1 -1
  750. package/dist/utc/format/formatRelativeUtc.d.ts +5 -5
  751. package/dist/utc/format/formatRelativeUtc.js +5 -5
  752. package/dist/utc/format/formatUtc.d.ts +8 -8
  753. package/dist/utc/format/formatUtc.js +8 -8
  754. package/dist/utc/get/getUtcDay.js +1 -1
  755. package/dist/utc/get/getUtcHour.js +1 -1
  756. package/dist/utc/get/getUtcMicrosecond.js +1 -1
  757. package/dist/utc/get/getUtcMillisecond.js +1 -1
  758. package/dist/utc/get/getUtcMinute.js +1 -1
  759. package/dist/utc/get/getUtcMonth.js +1 -1
  760. package/dist/utc/get/getUtcNanosecond.js +1 -1
  761. package/dist/utc/get/getUtcNow.js +1 -1
  762. package/dist/utc/get/getUtcNowUnit.js +1 -1
  763. package/dist/utc/get/getUtcSecond.js +1 -1
  764. package/dist/utc/get/getUtcYear.js +1 -1
  765. package/dist/utc/index.d.ts +1 -1
  766. package/dist/utc/index.js +2 -2
  767. package/dist/utc/interval/intervalAbutsUtc.js +1 -1
  768. package/dist/utc/interval/intervalContainsUtc.js +1 -1
  769. package/dist/utc/interval/intervalCountUtc.js +1 -1
  770. package/dist/utc/interval/intervalDivideEquallyUtc.js +1 -1
  771. package/dist/utc/interval/intervalEngulfsUtc.js +1 -1
  772. package/dist/utc/interval/intervalFromDurationUtc.js +1 -1
  773. package/dist/utc/interval/intervalLengthUtc.js +1 -1
  774. package/dist/utc/interval/intervalOverlappingDaysUtc.js +1 -1
  775. package/dist/utc/interval/intervalSplitAtUtc.js +1 -1
  776. package/dist/utc/interval/intervalXorAllUtc.js +1 -1
  777. package/dist/utc/interval/intervalXorUtc.js +1 -1
  778. package/dist/utc/interval/splitIntervalByUnitUtc.d.ts +2 -1
  779. package/dist/utc/interval/splitIntervalByUnitUtc.js +3 -2
  780. package/dist/utc/interval/validate/isValidUtcInterval.js +1 -1
  781. package/dist/utc/parse/parseDateFromUtc.d.ts +1 -1
  782. package/dist/utc/parse/parseDateFromUtc.js +1 -1
  783. package/dist/utc/parse/parseDayFromUtc.d.ts +1 -1
  784. package/dist/utc/parse/parseDayFromUtc.js +1 -1
  785. package/dist/utc/parse/parseDayOfWeekFromUtc.d.ts +1 -1
  786. package/dist/utc/parse/parseDayOfWeekFromUtc.js +2 -2
  787. package/dist/utc/parse/parseHourFromUtc.d.ts +1 -1
  788. package/dist/utc/parse/parseHourFromUtc.js +1 -1
  789. package/dist/utc/parse/parseHttpDate.js +1 -1
  790. package/dist/utc/parse/parseMicrosecondFromUtc.d.ts +1 -1
  791. package/dist/utc/parse/parseMicrosecondFromUtc.js +1 -1
  792. package/dist/utc/parse/parseMillisecondFromUtc.d.ts +1 -1
  793. package/dist/utc/parse/parseMillisecondFromUtc.js +1 -1
  794. package/dist/utc/parse/parseMonthFromUtc.d.ts +1 -1
  795. package/dist/utc/parse/parseMonthFromUtc.js +1 -1
  796. package/dist/utc/parse/parseNanosecondFromUtc.d.ts +1 -1
  797. package/dist/utc/parse/parseNanosecondFromUtc.js +1 -1
  798. package/dist/utc/parse/parseSecondFromUtc.d.ts +1 -1
  799. package/dist/utc/parse/parseSecondFromUtc.js +1 -1
  800. package/dist/utc/parse/parseTimeFromUtc.d.ts +1 -1
  801. package/dist/utc/parse/parseTimeFromUtc.js +2 -2
  802. package/dist/utc/parse/parseUnitFromUtc.d.ts +2 -2
  803. package/dist/utc/parse/parseUnitFromUtc.js +2 -2
  804. package/dist/utc/parse/parseWeekFromUtc.d.ts +1 -1
  805. package/dist/utc/parse/parseWeekFromUtc.js +2 -2
  806. package/dist/utc/parse/parseYearFromUtc.d.ts +1 -1
  807. package/dist/utc/parse/parseYearFromUtc.js +1 -1
  808. package/dist/utc/validate/isValidUtc.js +3 -3
  809. package/dist/utc/validate/isValidUtcRange.js +1 -1
  810. package/dist/{duty → workforce}/calculate/dutyDayFor.js +1 -1
  811. package/dist/{duty → workforce}/calculate/evaluateDutyLog.js +1 -1
  812. package/dist/{duty → workforce}/calculate/longestRun.js +1 -1
  813. package/dist/{duty → workforce}/calculate/qualifyingRestPairs.js +1 -1
  814. package/dist/{duty → workforce}/calculate/qualifyingRests.js +1 -1
  815. package/dist/workforce/index.d.ts +3 -0
  816. package/dist/workforce/index.js +4 -0
  817. package/dist/{duty → workforce}/validate/isValidDutyLog.d.ts +2 -2
  818. package/dist/{duty → workforce}/validate/isValidDutyLog.js +2 -2
  819. package/dist/zoned/calculate/addZoned.d.ts +15 -15
  820. package/dist/zoned/calculate/addZoned.js +15 -15
  821. package/dist/zoned/calculate/addZonedBusinessDays.d.ts +5 -4
  822. package/dist/zoned/calculate/addZonedBusinessDays.js +5 -4
  823. package/dist/zoned/calculate/clampZoned.js +1 -1
  824. package/dist/zoned/calculate/diffZoned.d.ts +8 -8
  825. package/dist/zoned/calculate/diffZoned.js +7 -7
  826. package/dist/zoned/calculate/diffZonedAsDuration.d.ts +5 -5
  827. package/dist/zoned/calculate/diffZonedAsDuration.js +4 -4
  828. package/dist/zoned/calculate/endOfZoned.d.ts +3 -3
  829. package/dist/zoned/calculate/endOfZoned.js +2 -2
  830. package/dist/zoned/calculate/getHoursInZonedDay.d.ts +2 -2
  831. package/dist/zoned/calculate/getHoursInZonedDay.js +2 -2
  832. package/dist/zoned/calculate/getLocaleZonedDayOfWeek.d.ts +6 -5
  833. package/dist/zoned/calculate/getLocaleZonedDayOfWeek.js +6 -5
  834. package/dist/zoned/calculate/getLocaleZonedEndOfWeek.d.ts +5 -5
  835. package/dist/zoned/calculate/getLocaleZonedEndOfWeek.js +5 -5
  836. package/dist/zoned/calculate/getLocaleZonedStartOfWeek.d.ts +6 -6
  837. package/dist/zoned/calculate/getLocaleZonedStartOfWeek.js +6 -6
  838. package/dist/zoned/calculate/maxZoned.d.ts +2 -2
  839. package/dist/zoned/calculate/maxZoned.js +3 -3
  840. package/dist/zoned/calculate/minZoned.d.ts +2 -2
  841. package/dist/zoned/calculate/minZoned.js +3 -3
  842. package/dist/zoned/calculate/roundZoned.d.ts +11 -9
  843. package/dist/zoned/calculate/roundZoned.js +11 -9
  844. package/dist/zoned/calculate/setZoned.d.ts +8 -8
  845. package/dist/zoned/calculate/setZoned.js +8 -8
  846. package/dist/zoned/calculate/sortZoned.d.ts +3 -3
  847. package/dist/zoned/calculate/sortZoned.js +4 -4
  848. package/dist/zoned/calculate/startOfZoned.d.ts +3 -3
  849. package/dist/zoned/calculate/startOfZoned.js +2 -2
  850. package/dist/zoned/calculate/subtractZoned.d.ts +14 -14
  851. package/dist/zoned/calculate/subtractZoned.js +14 -14
  852. package/dist/zoned/calculate/subtractZonedBusinessDays.d.ts +5 -4
  853. package/dist/zoned/calculate/subtractZonedBusinessDays.js +5 -4
  854. package/dist/zoned/chop/chopZonedDate.d.ts +1 -1
  855. package/dist/zoned/chop/chopZonedDate.js +1 -1
  856. package/dist/zoned/chop/chopZonedMilliseconds.d.ts +1 -1
  857. package/dist/zoned/chop/chopZonedMilliseconds.js +1 -1
  858. package/dist/zoned/chop/chopZonedSeconds.d.ts +1 -1
  859. package/dist/zoned/chop/chopZonedSeconds.js +1 -1
  860. package/dist/zoned/chop/chopZonedTime.d.ts +1 -1
  861. package/dist/zoned/chop/chopZonedTime.js +1 -1
  862. package/dist/zoned/chop/chopZonedTimezone.d.ts +1 -1
  863. package/dist/zoned/chop/chopZonedTimezone.js +1 -1
  864. package/dist/zoned/classify/classifyStoredZoned.d.ts +46 -0
  865. package/dist/zoned/classify/classifyStoredZoned.js +177 -0
  866. package/dist/zoned/classify/index.d.ts +1 -0
  867. package/dist/zoned/classify/index.js +1 -0
  868. package/dist/zoned/compare/areZonedEqual.js +1 -1
  869. package/dist/zoned/compare/areZonedEqualBy.d.ts +8 -10
  870. package/dist/zoned/compare/areZonedEqualBy.js +8 -10
  871. package/dist/zoned/compare/isAfterZoned.js +1 -1
  872. package/dist/zoned/compare/isBeforeZoned.d.ts +2 -2
  873. package/dist/zoned/compare/isBeforeZoned.js +3 -3
  874. package/dist/zoned/compare/isBetweenZoned.js +1 -1
  875. package/dist/zoned/compare/isInDaylightSaving.d.ts +2 -2
  876. package/dist/zoned/compare/isInDaylightSaving.js +2 -2
  877. package/dist/zoned/compare/isZonedBusinessDay.d.ts +7 -6
  878. package/dist/zoned/compare/isZonedBusinessDay.js +7 -6
  879. package/dist/zoned/compare/isZonedFuture.js +1 -1
  880. package/dist/zoned/compare/isZonedPast.js +1 -1
  881. package/dist/zoned/compare/isZonedRelativeDay.d.ts +2 -2
  882. package/dist/zoned/compare/isZonedRelativeDay.js +3 -3
  883. package/dist/zoned/compare/isZonedThisUnit.d.ts +7 -7
  884. package/dist/zoned/compare/isZonedThisUnit.js +7 -7
  885. package/dist/zoned/compare/isZonedWeekend.d.ts +5 -5
  886. package/dist/zoned/compare/isZonedWeekend.js +5 -5
  887. package/dist/zoned/convert/convertPlainDateTimeToZoned.d.ts +6 -6
  888. package/dist/zoned/convert/convertPlainDateTimeToZoned.js +6 -6
  889. package/dist/zoned/convert/convertZonedToCalendar.d.ts +5 -5
  890. package/dist/zoned/convert/convertZonedToCalendar.js +5 -5
  891. package/dist/zoned/convert/convertZonedToPlainDateTime.d.ts +3 -3
  892. package/dist/zoned/convert/convertZonedToPlainDateTime.js +3 -3
  893. package/dist/zoned/convert/convertZonedToZoned.d.ts +2 -2
  894. package/dist/zoned/convert/convertZonedToZoned.js +2 -2
  895. package/dist/zoned/format/formatCalendarZoned.d.ts +7 -6
  896. package/dist/zoned/format/formatCalendarZoned.js +5 -5
  897. package/dist/zoned/format/formatRelativeZoned.d.ts +3 -3
  898. package/dist/zoned/format/formatRelativeZoned.js +4 -4
  899. package/dist/zoned/format/formatRfc2822.d.ts +3 -3
  900. package/dist/zoned/format/formatRfc2822.js +3 -3
  901. package/dist/zoned/format/formatRfc3339.d.ts +2 -2
  902. package/dist/zoned/format/formatRfc3339.js +2 -2
  903. package/dist/zoned/format/formatTimeZoneName.d.ts +17 -17
  904. package/dist/zoned/format/formatTimeZoneName.js +13 -12
  905. package/dist/zoned/format/formatZonedDateTime.d.ts +10 -10
  906. package/dist/zoned/format/formatZonedDateTime.js +12 -11
  907. package/dist/zoned/format/formatZonedRange.d.ts +7 -7
  908. package/dist/zoned/format/formatZonedRange.js +9 -8
  909. package/dist/zoned/format/formatZonedToParts.d.ts +11 -11
  910. package/dist/zoned/format/formatZonedToParts.js +13 -12
  911. package/dist/zoned/get/getDstTransitions.d.ts +9 -9
  912. package/dist/zoned/get/getDstTransitions.js +3 -3
  913. package/dist/zoned/get/getSystemTimeZone.d.ts +2 -2
  914. package/dist/zoned/get/getSystemTimeZone.js +2 -2
  915. package/dist/zoned/get/getTimeZoneOffset.d.ts +5 -5
  916. package/dist/zoned/get/getTimeZoneOffset.js +5 -5
  917. package/dist/zoned/get/getTimeZones.d.ts +1 -1
  918. package/dist/zoned/get/getTimeZones.js +1 -1
  919. package/dist/zoned/get/getZonedDay.d.ts +1 -1
  920. package/dist/zoned/get/getZonedDay.js +1 -1
  921. package/dist/zoned/get/getZonedDayOfWeek.d.ts +1 -1
  922. package/dist/zoned/get/getZonedDayOfWeek.js +1 -1
  923. package/dist/zoned/get/getZonedHour.d.ts +1 -1
  924. package/dist/zoned/get/getZonedHour.js +1 -1
  925. package/dist/zoned/get/getZonedMicrosecond.d.ts +1 -1
  926. package/dist/zoned/get/getZonedMicrosecond.js +1 -1
  927. package/dist/zoned/get/getZonedMillisecond.d.ts +1 -1
  928. package/dist/zoned/get/getZonedMillisecond.js +1 -1
  929. package/dist/zoned/get/getZonedMinute.d.ts +1 -1
  930. package/dist/zoned/get/getZonedMinute.js +1 -1
  931. package/dist/zoned/get/getZonedMonth.d.ts +1 -1
  932. package/dist/zoned/get/getZonedMonth.js +1 -1
  933. package/dist/zoned/get/getZonedNanosecond.d.ts +1 -1
  934. package/dist/zoned/get/getZonedNanosecond.js +1 -1
  935. package/dist/zoned/get/getZonedNow.d.ts +4 -4
  936. package/dist/zoned/get/getZonedNow.js +4 -4
  937. package/dist/zoned/get/getZonedNowUnit.d.ts +2 -2
  938. package/dist/zoned/get/getZonedNowUnit.js +1 -1
  939. package/dist/zoned/get/getZonedSecond.d.ts +1 -1
  940. package/dist/zoned/get/getZonedSecond.js +1 -1
  941. package/dist/zoned/get/getZonedToday.d.ts +1 -1
  942. package/dist/zoned/get/getZonedToday.js +1 -1
  943. package/dist/zoned/get/getZonedWeekOfYear.d.ts +1 -1
  944. package/dist/zoned/get/getZonedWeekOfYear.js +1 -1
  945. package/dist/zoned/get/getZonedYear.d.ts +1 -1
  946. package/dist/zoned/get/getZonedYear.js +1 -1
  947. package/dist/zoned/index.d.ts +2 -1
  948. package/dist/zoned/index.js +3 -2
  949. package/dist/zoned/interval/intervalAbutsZoned.d.ts +2 -2
  950. package/dist/zoned/interval/intervalAbutsZoned.js +3 -3
  951. package/dist/zoned/interval/intervalContainsZoned.d.ts +1 -1
  952. package/dist/zoned/interval/intervalContainsZoned.js +2 -2
  953. package/dist/zoned/interval/intervalCountZoned.d.ts +4 -4
  954. package/dist/zoned/interval/intervalCountZoned.js +5 -5
  955. package/dist/zoned/interval/intervalDifferenceZoned.js +1 -1
  956. package/dist/zoned/interval/intervalDivideEquallyZoned.d.ts +1 -1
  957. package/dist/zoned/interval/intervalDivideEquallyZoned.js +2 -2
  958. package/dist/zoned/interval/intervalEngulfsZoned.d.ts +1 -1
  959. package/dist/zoned/interval/intervalEngulfsZoned.js +2 -2
  960. package/dist/zoned/interval/intervalFromDurationZoned.d.ts +6 -6
  961. package/dist/zoned/interval/intervalFromDurationZoned.js +7 -7
  962. package/dist/zoned/interval/intervalIntersectionZoned.js +1 -1
  963. package/dist/zoned/interval/intervalLengthZoned.d.ts +5 -5
  964. package/dist/zoned/interval/intervalLengthZoned.js +5 -5
  965. package/dist/zoned/interval/intervalOverlappingDaysZoned.d.ts +2 -2
  966. package/dist/zoned/interval/intervalOverlappingDaysZoned.js +3 -3
  967. package/dist/zoned/interval/intervalSplitAtZoned.js +14 -16
  968. package/dist/zoned/interval/intervalUnionZoned.js +1 -1
  969. package/dist/zoned/interval/intervalXorAllZoned.js +1 -1
  970. package/dist/zoned/interval/intervalXorZoned.js +1 -1
  971. package/dist/zoned/interval/intervalsOverlapZoned.d.ts +2 -2
  972. package/dist/zoned/interval/intervalsOverlapZoned.js +3 -3
  973. package/dist/zoned/interval/mergeIntervalsZoned.js +1 -1
  974. package/dist/zoned/interval/splitIntervalByUnitZoned.d.ts +2 -1
  975. package/dist/zoned/interval/splitIntervalByUnitZoned.js +3 -2
  976. package/dist/zoned/interval/validate/isValidCalendarZonedInterval.d.ts +2 -2
  977. package/dist/zoned/interval/validate/isValidCalendarZonedInterval.js +3 -3
  978. package/dist/zoned/interval/validate/isValidZonedInterval.d.ts +1 -1
  979. package/dist/zoned/interval/validate/isValidZonedInterval.js +2 -2
  980. package/dist/zoned/map/mapZonedDatesInRange.js +1 -1
  981. package/dist/zoned/map/mapZonedHoursInDay.d.ts +1 -1
  982. package/dist/zoned/map/mapZonedHoursInDay.js +2 -2
  983. package/dist/zoned/parse/getZonedOffset.d.ts +1 -1
  984. package/dist/zoned/parse/getZonedOffset.js +1 -1
  985. package/dist/zoned/parse/getZonedOffsetAs.d.ts +6 -6
  986. package/dist/zoned/parse/getZonedOffsetAs.js +3 -3
  987. package/dist/zoned/parse/parseDateTimeFromZoned.js +2 -2
  988. package/dist/zoned/parse/parseRfc2822.js +1 -1
  989. package/dist/zoned/parse/parseRfc3339.js +1 -1
  990. package/dist/zoned/parse/parseUnitFromZoned.d.ts +1 -1
  991. package/dist/zoned/validate/hasDaylightSaving.d.ts +2 -2
  992. package/dist/zoned/validate/hasDaylightSaving.js +3 -3
  993. package/dist/zoned/validate/isValidCalendarZonedDateTime.d.ts +8 -8
  994. package/dist/zoned/validate/isValidCalendarZonedDateTime.js +8 -8
  995. package/dist/zoned/validate/isValidTimeZone.d.ts +1 -1
  996. package/dist/zoned/validate/isValidTimeZone.js +3 -18
  997. package/dist/zoned/validate/isValidZonedDateTime.d.ts +7 -7
  998. package/dist/zoned/validate/isValidZonedDateTime.js +9 -9
  999. package/dist/zoned/validate/isValidZonedRange.d.ts +1 -1
  1000. package/dist/zoned/validate/isValidZonedRange.js +5 -5
  1001. package/package.json +71 -21
  1002. package/skills/gmt-arithmetic/SKILL.md +18 -59
  1003. package/skills/gmt-basics/SKILL.md +32 -12
  1004. package/skills/gmt-gnss/SKILL.md +92 -0
  1005. package/skills/gmt-integration/SKILL.md +48 -15
  1006. package/skills/gmt-intermodal/SKILL.md +189 -0
  1007. package/skills/gmt-timezone/SKILL.md +34 -257
  1008. package/skills/gmt-transport/SKILL.md +133 -0
  1009. package/skills/gmt-workforce/SKILL.md +84 -0
  1010. package/dist/duty/index.d.ts +0 -3
  1011. package/dist/duty/index.js +0 -4
  1012. /package/dist/{duty → workforce}/calculate/dutyDayFor.d.ts +0 -0
  1013. /package/dist/{duty → workforce}/calculate/dutyTotals.d.ts +0 -0
  1014. /package/dist/{duty → workforce}/calculate/dutyTotals.js +0 -0
  1015. /package/dist/{duty → workforce}/calculate/dutyViolations.d.ts +0 -0
  1016. /package/dist/{duty → workforce}/calculate/dutyViolations.js +0 -0
  1017. /package/dist/{duty → workforce}/calculate/evaluateDutyLog.d.ts +0 -0
  1018. /package/dist/{duty → workforce}/calculate/index.d.ts +0 -0
  1019. /package/dist/{duty → workforce}/calculate/index.js +0 -0
  1020. /package/dist/{duty → workforce}/calculate/longestRun.d.ts +0 -0
  1021. /package/dist/{duty → workforce}/calculate/qualifyingRestPairs.d.ts +0 -0
  1022. /package/dist/{duty → workforce}/calculate/qualifyingRests.d.ts +0 -0
  1023. /package/dist/{duty → workforce}/validate/index.d.ts +0 -0
  1024. /package/dist/{duty → workforce}/validate/index.js +0 -0
@@ -26,7 +26,7 @@
26
26
  * @example isPastCutoff("2024-06-12T16:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // true
27
27
  * @example isPastCutoff("2024-06-12T14:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // false
28
28
  * @example isPastCutoff("2024-06-12T15:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // true (at the cut-off, the window has closed)
29
- * @example isPastCutoff("2024-11-03T01:30:00-05:00[America/New_York]", "2024-11-03T01:30:00-04:00[America/New_York]") // true (the second 01:30 is an hour after the first)
29
+ * @example isPastCutoff("2024-04-07T02:30:00+10:00[Australia/Sydney]", "2024-04-07T02:30:00+11:00[Australia/Sydney]") // true (the second 02:30 is an hour after the first)
30
30
  * @example isPastCutoff("2024-06-12T16:00:00", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // false (a zoneless now is not a moment)
31
31
  * @example isPastCutoff("2024-06-12T16:00:00Z", "") // false
32
32
  */
@@ -1,4 +1,4 @@
1
- import { Temporal } from "@js-temporal/polyfill";
1
+ import { Temporal } from "../../internal/temporal.js";
2
2
  import { instantFrom } from "../../internal/index.js";
3
3
  import { isValidInstant } from "../../precision/validate/isValidInstant.js";
4
4
  /**
@@ -29,7 +29,7 @@ import { isValidInstant } from "../../precision/validate/isValidInstant.js";
29
29
  * @example isPastCutoff("2024-06-12T16:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // true
30
30
  * @example isPastCutoff("2024-06-12T14:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // false
31
31
  * @example isPastCutoff("2024-06-12T15:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // true (at the cut-off, the window has closed)
32
- * @example isPastCutoff("2024-11-03T01:30:00-05:00[America/New_York]", "2024-11-03T01:30:00-04:00[America/New_York]") // true (the second 01:30 is an hour after the first)
32
+ * @example isPastCutoff("2024-04-07T02:30:00+10:00[Australia/Sydney]", "2024-04-07T02:30:00+11:00[Australia/Sydney]") // true (the second 02:30 is an hour after the first)
33
33
  * @example isPastCutoff("2024-06-12T16:00:00", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // false (a zoneless now is not a moment)
34
34
  * @example isPastCutoff("2024-06-12T16:00:00Z", "") // false
35
35
  */
@@ -30,7 +30,7 @@
30
30
  * @example scheduleDeviation("2024-06-15T10:00:00Z", "2024-06-15T09:55:00Z") // "-PT5M" (five minutes early)
31
31
  * @example scheduleDeviation("2024-06-15T10:00:00Z", "2024-06-15T10:00:00Z") // "PT0S"
32
32
  * @example scheduleDeviation("2024-06-15T10:00:00Z", "2024-06-17T11:30:00Z") // "PT49H30M" (hours, never days)
33
- * @example scheduleDeviation("2024-11-03T01:30:00-04:00[America/New_York]", "2024-11-03T01:30:00-05:00[America/New_York]") // "PT1H" (the same wall time, one hour later across the fall-back)
33
+ * @example scheduleDeviation("2024-04-07T02:30:00+11:00[Australia/Sydney]", "2024-04-07T02:30:00+10:00[Australia/Sydney]") // "PT1H" (the same wall time, one hour later across the fall-back)
34
34
  * @example scheduleDeviation("2024-06-15T10:00:00Z", "2024-06-15T12:14:00+02:00[Europe/Amsterdam]") // "PT14M" (the zone it is written in does not matter)
35
35
  * @example scheduleDeviation("2024-06-15T10:00:00", "2024-06-15T10:14:00Z") // "" (a zoneless plan is not a moment)
36
36
  */
@@ -32,7 +32,7 @@ import { isValidInstant } from "../../precision/validate/isValidInstant.js";
32
32
  * @example scheduleDeviation("2024-06-15T10:00:00Z", "2024-06-15T09:55:00Z") // "-PT5M" (five minutes early)
33
33
  * @example scheduleDeviation("2024-06-15T10:00:00Z", "2024-06-15T10:00:00Z") // "PT0S"
34
34
  * @example scheduleDeviation("2024-06-15T10:00:00Z", "2024-06-17T11:30:00Z") // "PT49H30M" (hours, never days)
35
- * @example scheduleDeviation("2024-11-03T01:30:00-04:00[America/New_York]", "2024-11-03T01:30:00-05:00[America/New_York]") // "PT1H" (the same wall time, one hour later across the fall-back)
35
+ * @example scheduleDeviation("2024-04-07T02:30:00+11:00[Australia/Sydney]", "2024-04-07T02:30:00+10:00[Australia/Sydney]") // "PT1H" (the same wall time, one hour later across the fall-back)
36
36
  * @example scheduleDeviation("2024-06-15T10:00:00Z", "2024-06-15T12:14:00+02:00[Europe/Amsterdam]") // "PT14M" (the zone it is written in does not matter)
37
37
  * @example scheduleDeviation("2024-06-15T10:00:00", "2024-06-15T10:14:00Z") // "" (a zoneless plan is not a moment)
38
38
  */
@@ -25,7 +25,7 @@
25
25
  * @example timeToCutoff("2024-06-12T13:30:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // "PT1H30M"
26
26
  * @example timeToCutoff("2024-06-12T16:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // "-PT1H" (an hour past the cut-off)
27
27
  * @example timeToCutoff("2024-06-12T15:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // "PT0S"
28
- * @example timeToCutoff("2024-11-02T17:00:00-04:00[America/New_York]", "2024-11-03T17:00:00-05:00[America/New_York]") // "PT25H" (across the fall-back)
28
+ * @example timeToCutoff("2024-10-26T17:00:00+01:00[Europe/London]", "2024-10-27T17:00:00+00:00[Europe/London]") // "PT25H" (across the fall-back)
29
29
  * @example timeToCutoff("2024-06-12T16:00:00Z", "") // ""
30
30
  */
31
31
  export declare function timeToCutoff(now: string, cutoff: string): string;
@@ -27,7 +27,7 @@ import { isValidInstant } from "../../precision/validate/isValidInstant.js";
27
27
  * @example timeToCutoff("2024-06-12T13:30:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // "PT1H30M"
28
28
  * @example timeToCutoff("2024-06-12T16:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // "-PT1H" (an hour past the cut-off)
29
29
  * @example timeToCutoff("2024-06-12T15:00:00Z", "2024-06-12T17:00:00+02:00[Europe/Amsterdam]") // "PT0S"
30
- * @example timeToCutoff("2024-11-02T17:00:00-04:00[America/New_York]", "2024-11-03T17:00:00-05:00[America/New_York]") // "PT25H" (across the fall-back)
30
+ * @example timeToCutoff("2024-10-26T17:00:00+01:00[Europe/London]", "2024-10-27T17:00:00+00:00[Europe/London]") // "PT25H" (across the fall-back)
31
31
  * @example timeToCutoff("2024-06-12T16:00:00Z", "") // ""
32
32
  */
33
33
  export function timeToCutoff(now, cutoff) {
@@ -40,8 +40,8 @@
40
40
  * @example etaAtZone("2024-06-15T12:30:00Z", "Asia/Tokyo") // "2024-06-15T21:30:00+09:00[Asia/Tokyo]"
41
41
  * @example etaAtZone("2024-06-15T12:30:00Z", "America/Los_Angeles") // "2024-06-15T05:30:00-07:00[America/Los_Angeles]"
42
42
  * @example etaAtZone("2024-06-15T12:30:00+02:00", "Pacific/Apia") // "2024-06-15T23:30:00+13:00[Pacific/Apia]" (the offset fixes the instant; the zone renders it)
43
- * @example etaAtZone("2024-11-03T05:30:00Z", "America/New_York") // "2024-11-03T01:30:00-04:00[America/New_York]" (the first 01:30 of the fall-back night)
44
- * @example etaAtZone("2024-11-03T06:30:00Z", "America/New_York") // "2024-11-03T01:30:00-05:00[America/New_York]" (the second; the offset tells them apart)
43
+ * @example etaAtZone("2024-04-06T15:30:00Z", "Australia/Sydney") // "2024-04-07T02:30:00+11:00[Australia/Sydney]" (the first 02:30 of the fall-back night)
44
+ * @example etaAtZone("2024-04-06T16:30:00Z", "Australia/Sydney") // "2024-04-07T02:30:00+10:00[Australia/Sydney]" (the second; the offset tells them apart)
45
45
  * @example etaAtZone("2024-06-15T12:30:00", "Asia/Tokyo") // "" (no offset designator: not a moment)
46
46
  * @example etaAtZone("2024-06-15T12:30:00Z", "Asia/Tokio") // ""
47
47
  */
@@ -43,8 +43,8 @@ import { isValidTimeZone } from "../../zoned/validate/isValidTimeZone.js";
43
43
  * @example etaAtZone("2024-06-15T12:30:00Z", "Asia/Tokyo") // "2024-06-15T21:30:00+09:00[Asia/Tokyo]"
44
44
  * @example etaAtZone("2024-06-15T12:30:00Z", "America/Los_Angeles") // "2024-06-15T05:30:00-07:00[America/Los_Angeles]"
45
45
  * @example etaAtZone("2024-06-15T12:30:00+02:00", "Pacific/Apia") // "2024-06-15T23:30:00+13:00[Pacific/Apia]" (the offset fixes the instant; the zone renders it)
46
- * @example etaAtZone("2024-11-03T05:30:00Z", "America/New_York") // "2024-11-03T01:30:00-04:00[America/New_York]" (the first 01:30 of the fall-back night)
47
- * @example etaAtZone("2024-11-03T06:30:00Z", "America/New_York") // "2024-11-03T01:30:00-05:00[America/New_York]" (the second; the offset tells them apart)
46
+ * @example etaAtZone("2024-04-06T15:30:00Z", "Australia/Sydney") // "2024-04-07T02:30:00+11:00[Australia/Sydney]" (the first 02:30 of the fall-back night)
47
+ * @example etaAtZone("2024-04-06T16:30:00Z", "Australia/Sydney") // "2024-04-07T02:30:00+10:00[Australia/Sydney]" (the second; the offset tells them apart)
48
48
  * @example etaAtZone("2024-06-15T12:30:00", "Asia/Tokyo") // "" (no offset designator: not a moment)
49
49
  * @example etaAtZone("2024-06-15T12:30:00Z", "Asia/Tokio") // ""
50
50
  */
@@ -1,4 +1,4 @@
1
- export * from "@js-temporal/polyfill";
1
+ export { Intl, Temporal, toTemporalInstant } from "../internal/temporal.js";
2
2
  export * from "./calculate/index.js";
3
3
  export * from "./compare/index.js";
4
4
  export * from "./convert/index.js";
@@ -1,5 +1,5 @@
1
- // Re-export the Temporal polyfill (`Temporal`, `Intl`, `toTemporalInstant`) so every namespace subpath offers it
2
- export * from "@js-temporal/polyfill";
1
+ // Re-export `Temporal`, `Intl` and `toTemporalInstant` from the internal seam so every namespace subpath offers them
2
+ export { Intl, Temporal, toTemporalInstant } from "../internal/temporal.js";
3
3
  export * from "./calculate/index.js";
4
4
  export * from "./compare/index.js";
5
5
  export * from "./convert/index.js";
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * A date field of an ISO 8601 duration, in the plural: `"years"`, `"months"`, `"weeks"` or
4
4
  * `"days"`. It names the unit an amount of dates is given in or a date difference is measured in.
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * Any field of an ISO 8601 duration, in the plural, from `"years"` down to `"nanoseconds"`. It
4
4
  * names the unit an amount of time is given in or a difference is measured in.
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * A date or time unit in the singular, from `"year"` down to `"nanosecond"`, as Temporal's
4
4
  * rounding and difference options name units.
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * A date unit in the singular: `"year"`, `"month"`, `"week"` or `"day"`, as Temporal's rounding
4
4
  * and difference options name units.
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * How a local wall time that a time zone's clock shows twice or never is resolved to an instant,
4
4
  * as Temporal's `disambiguation` option (`Temporal.ZonedDateTime.from(item, { disambiguation })`).
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * The anchor a calendar-unit duration operation is measured from, as Temporal's `relativeTo`
4
4
  * option takes it (`Duration.prototype.round`, `Duration.prototype.total`, `Duration.compare`).
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * Precision options for the ISO 8601 duration string a `diff*AsDuration` function writes, passed
4
4
  * to `Temporal.Duration.prototype.toString()`.
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * The plural name of a duration field that has an exact length: `"days"`, or a time field from
4
4
  * `"hours"` down to `"nanoseconds"`. A day is 24 hours when nothing anchors it, as
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * Week-per-period shape of a 52/53-week fiscal year, one entry per month of a quarter.
3
3
  *
4
- * - `"4-5-4"` — the NRF retail calendar, the US retail standard.
4
+ * - `"4-5-4"` — the longer month falls in the middle of the quarter. One published
5
+ * example is the NRF retail calendar (US).
5
6
  * - `"4-4-5"` — the longer month falls at the end of the quarter.
6
7
  * - `"5-4-4"` — the longer month falls at the start of the quarter.
7
8
  *
@@ -9,14 +10,49 @@
9
10
  * `isValidFiscalPattern`.
10
11
  */
11
12
  export type FiscalPattern = "4-5-4" | "4-4-5" | "5-4-4";
12
- /** Caller-supplied 52/53-week fiscal calendar. GMT bundles none. */
13
+ /**
14
+ * The period a 53rd week is added to, in a fiscal year that has one.
15
+ *
16
+ * - `"firstPeriod"` — the first period gets the extra week, so quarter 1 has 14 weeks. One
17
+ * published example is the ONS retail trading periods (UK): "a five week January is
18
+ * introduced every five to six years".
19
+ * - `"lastPeriod"` — the last period gets it, so quarter 4 has 14 weeks. One published example
20
+ * is the NRF 4-5-4 calendar (US), which adds the week "to the end of the calendar".
21
+ *
22
+ * Narrow a candidate with `isValidFiscalExtraWeek`.
23
+ */
24
+ export type FiscalExtraWeek = "firstPeriod" | "lastPeriod";
25
+ /**
26
+ * The calendar year that names a fiscal year.
27
+ *
28
+ * - `"startYear"` — the year its first day falls in. NRF (US): fiscal 2023 runs 2023-01-29 to
29
+ * 2024-02-03.
30
+ * - `"endYear"` — the year its last day falls in. IFRS 18 ¶27(c) (formerly IAS 1 ¶51(c)) lets
31
+ * a reporting period be identified by the date it ends. Under `yearEndsOn: "2021-06-27"`,
32
+ * the year 2023-06-26 to 2024-06-30 is 2024.
33
+ * - `"majorityYear"` — the calendar year holding the most of its days. ONS (UK): 2025 runs
34
+ * 2024-12-29 to 2026-01-03. When two years hold exactly half each, the label is the end year,
35
+ * the year holding the date the period ends on.
36
+ *
37
+ * Narrow a candidate with `isValidFiscalYearLabel`.
38
+ */
39
+ export type FiscalYearLabel = "startYear" | "endYear" | "majorityYear";
40
+ /** Caller-supplied 52/53-week fiscal calendar. GMT bundles none, and has no defaults. */
13
41
  export interface FiscalCalendar {
14
42
  /** The weeks per period within each quarter. */
15
43
  pattern: FiscalPattern;
16
44
  /**
17
45
  * The year-end rule, stated as one ISO date: fiscal years end on this date's **weekday**,
18
- * on the occurrence nearest this date's **month and day**. For the NRF retail calendar —
19
- * "the Saturday nearest to January 31" — that is `"2026-01-31"`.
46
+ * on the occurrence nearest this date's **month and day**. NRF (US) adds a 53rd week when
47
+ * "there are four or more days left in January", which is the Saturday nearest
48
+ * January 31: `"2026-01-31"`. One rule covers one run of years: ONS (UK) trading periods
49
+ * end on the Saturday nearest December 31 (`"2022-12-31"`) from 2004, but when December 31
50
+ * fell on a Tuesday before then, on the Saturday after it (1997-01-04). Years before 2004
51
+ * need a second `FiscalCalendar`.
20
52
  */
21
53
  yearEndsOn: string;
54
+ /** The period a 53rd week is added to. */
55
+ extraWeek: FiscalExtraWeek;
56
+ /** The calendar year that names a fiscal year. */
57
+ yearLabel: FiscalYearLabel;
22
58
  }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * A satellite navigation system's time scale, by its RINEX 4.02 time-system identifier: GPS time,
3
+ * Galileo time, BeiDou time, QZSS time, GLONASS time (in UTC hours, as RINEX and BIPM report it),
4
+ * NavIC time. The six are peers: IMO recognises GPS, GLONASS, BeiDou, Galileo, NavIC (IRNSS) and
5
+ * QZSS as components of the Worldwide Radionavigation System (resolution A.1046(27), annex revised
6
+ * by MSC.599(111)).
7
+ */
8
+ export type GnssSystem = "GPS" | "GAL" | "BDT" | "QZS" | "GLO" | "IRN";
9
+ /**
10
+ * A satellite week counter, named by system and, where a system broadcasts two, by navigation
11
+ * message: GPS and QZSS LNAV count modulo 1024, their CNAV modulo 8192, Galileo modulo 4096,
12
+ * BeiDou modulo 8192, NavIC LNAV (L5/S) modulo 1024 and L1NV modulo 8192. GLONASS has no week
13
+ * counter. A RINEX navigation-file week is not one of these: see `RinexWeekSystem`.
14
+ */
15
+ export type GnssWeekCounter = "GPS-LNAV" | "GPS-CNAV" | "GAL" | "BDT" | "QZS-LNAV" | "QZS-CNAV" | "IRN-LNAV" | "IRN-L1NV";
16
+ /**
17
+ * Which pass of a wrapping week counter a week number belongs to, in one of three forms. An
18
+ * integer from 0 is the era itself (era 0 starts at the system's epoch). `"rolling"` picks the era
19
+ * that puts the week within half a counter period of today, or era 0, when the week would
20
+ * otherwise fall before the system's epoch; it is for live receiver output and reads the clock, so
21
+ * the same stored value can give a different answer in a later year. `{ notBefore }`
22
+ * picks the earliest occurrence at or after an instant you state (a receiver's firmware build
23
+ * date, or the start of a recorded log) and gives the same answer in any year.
24
+ */
25
+ export type RolloverEra = number | "rolling" | {
26
+ /**
27
+ * An ISO 8601 UTC instant; a listed leap second (`…T23:59:60Z`) is accepted. The week
28
+ * resolves to the earliest instant at or after it; an instant exactly equal to it counts.
29
+ * Before the counter's epoch it gives era 0. A value that is not an instant returns the
30
+ * sentinel.
31
+ */
32
+ notBefore: string;
33
+ };
34
+ /** A week and time of week on one satellite week counter. */
35
+ export interface GnssWeek {
36
+ /** The week number as the counter shows it, from 0 to the counter's modulus − 1. */
37
+ week: number;
38
+ /** Seconds since the start of the week, from 0 up to but not including 604 800. */
39
+ timeOfWeekSeconds: number;
40
+ /** How many times the counter has wrapped since the system's epoch. */
41
+ era: number;
42
+ }
43
+ /** The systems whose RINEX navigation records carry a week number. GLONASS records do not. */
44
+ export type RinexWeekSystem = "GPS" | "GAL" | "BDT" | "QZS" | "IRN";
45
+ /** A week and time of week as a RINEX navigation record counts them: continuous, so no era. */
46
+ export interface RinexWeek {
47
+ /** The continuous week number, counted from the record's epoch without wrapping. */
48
+ week: number;
49
+ /** Seconds since the start of the week, from 0 up to but not including 604 800. */
50
+ timeOfWeekSeconds: number;
51
+ }
File without changes
@@ -18,6 +18,7 @@ export * from "./exact-duration-unit.js";
18
18
  export * from "./fiscal-calendar.js";
19
19
  export * from "./fractional-digit.js";
20
20
  export * from "./free-time-options.js";
21
+ export * from "./gnss.js";
21
22
  export * from "./interval.js";
22
23
  export * from "./now-unit.js";
23
24
  export * from "./offset.js";
@@ -31,6 +32,7 @@ export * from "./relative-time-unit.js";
31
32
  export * from "./relative-unit.js";
32
33
  export * from "./roll-convention.js";
33
34
  export * from "./rounding-options.js";
35
+ export * from "./stored-zoned-classification.js";
34
36
  export * from "./time-cycle-field.js";
35
37
  export * from "./time-duration-unit.js";
36
38
  export * from "./time-unit.js";
@@ -18,6 +18,7 @@ export * from "./exact-duration-unit.js";
18
18
  export * from "./fiscal-calendar.js";
19
19
  export * from "./fractional-digit.js";
20
20
  export * from "./free-time-options.js";
21
+ export * from "./gnss.js";
21
22
  export * from "./interval.js";
22
23
  export * from "./now-unit.js";
23
24
  export * from "./offset.js";
@@ -31,6 +32,7 @@ export * from "./relative-time-unit.js";
31
32
  export * from "./relative-unit.js";
32
33
  export * from "./roll-convention.js";
33
34
  export * from "./rounding-options.js";
35
+ export * from "./stored-zoned-classification.js";
34
36
  export * from "./time-cycle-field.js";
35
37
  export * from "./time-duration-unit.js";
36
38
  export * from "./time-unit.js";
@@ -2,4 +2,4 @@
2
2
  * Units extractable from the current system local time via `getNowUnit`.
3
3
  * Defined as `DateTimeUnit | "dayOfWeek"`.
4
4
  */
5
- export type NowUnit = import("@js-temporal/polyfill").Temporal.SmallestUnit<import("./date-time-unit.js").DateTimeUnit> | "dayOfWeek";
5
+ export type NowUnit = import("../internal/temporal.js").Temporal.SmallestUnit<import("./date-time-unit.js").DateTimeUnit> | "dayOfWeek";
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * What to do when the UTC offset written in a zoned value disagrees with its time zone, as
4
4
  * Temporal's `offset` option (`Temporal.ZonedDateTime.prototype.with(item, { offset })`). It is
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * What to do when a date or time field is out of range, as Temporal's `overflow` option
4
4
  * (`Temporal.PlainDate.prototype.add(item, { overflow })`). `"constrain"` clamps the field to the
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * How a difference is rounded, as the rounding options of Temporal's `until()` and `since()`
4
4
  * (`Temporal.PlainDate.prototype.until(other, options)`). `Unit` is the set of units the values
@@ -0,0 +1,83 @@
1
+ /**
2
+ * What `classifyStoredZoned` finds when an RFC 9557 string carries both a UTC offset and a
3
+ * bracketed IANA zone. Every reading is a `Z` instant string (`Temporal.Instant#toString`), and
4
+ * every offset is `±HH:MM[:SS]`. Each kind carries enough readings to reproduce each of
5
+ * Temporal's `offset` values (`use`, `ignore`, `prefer`, `reject`).
6
+ *
7
+ * @example
8
+ * import type { StoredZonedClassification } from "@northguild/gmt/types";
9
+ * const found: StoredZonedClassification = {
10
+ * kind: "offsetMismatch",
11
+ * storedOffset: "+02:00",
12
+ * zoneOffset: "+03:00",
13
+ * atStoredOffset: "2016-12-01T07:00:00Z",
14
+ * atZoneOffset: "2016-12-01T06:00:00Z",
15
+ * };
16
+ */
17
+ export type StoredZonedClassification = {
18
+ /**
19
+ * The string names one instant. Either it ends in `Z`, which Temporal reads as exact
20
+ * whatever the zone's wall clock does, or its offset matches the zone's offset at that
21
+ * local time (to the minute, or exactly when written with seconds) and the local time
22
+ * occurs once. `instant` is what `reject`, `prefer` and `ignore` give.
23
+ */
24
+ kind: "valid";
25
+ /** The instant the string names. */
26
+ instant: string;
27
+ /** The instant `offset: "use"` gives: the written wall clock minus the written offset. */
28
+ atStoredOffset: string;
29
+ } | {
30
+ /**
31
+ * The local time occurs twice, and the stored offset picks one of the two: `instant`, which
32
+ * is either `earlier` or `later`. `ignore` gives `earlier` or `later` by `disambiguation`.
33
+ */
34
+ kind: "validInOverlap";
35
+ /** The occurrence the stored offset picks. `reject` and `prefer` give it. */
36
+ instant: string;
37
+ /** The first occurrence. */
38
+ earlier: string;
39
+ /** The second occurrence. */
40
+ later: string;
41
+ /** The instant `offset: "use"` gives. */
42
+ atStoredOffset: string;
43
+ } | {
44
+ /**
45
+ * The local time occurs once, but not at the stored offset. `reject` refuses it, and `ignore`
46
+ * and `prefer` give `atZoneOffset`.
47
+ */
48
+ kind: "offsetMismatch";
49
+ /** The offset as written in the string, `±HH:MM` or `±HH:MM:SS`. Seconds are kept when written. */
50
+ storedOffset: string;
51
+ /** The offset the zone has at that local time. */
52
+ zoneOffset: string;
53
+ /** The instant `offset: "use"` gives. */
54
+ atStoredOffset: string;
55
+ /** The instant the zone's own offset gives. */
56
+ atZoneOffset: string;
57
+ } | {
58
+ /**
59
+ * The local time occurs twice, and the stored offset picks neither occurrence. `reject`
60
+ * refuses it, and `ignore` and `prefer` give `earlier` or `later` by `disambiguation`.
61
+ */
62
+ kind: "ambiguous";
63
+ /** The first occurrence. */
64
+ earlier: string;
65
+ /** The second occurrence. */
66
+ later: string;
67
+ /** The instant `offset: "use"` gives. */
68
+ atStoredOffset: string;
69
+ } | {
70
+ /**
71
+ * The local time falls in a gap, so there is no occurrence to match. `reject` refuses it,
72
+ * and `ignore` and `prefer` give `earlier` or `later` by `disambiguation`. `earlier` and
73
+ * `later` are the wall time shifted back or forward by the size of the gap, as
74
+ * `disambiguation` names them.
75
+ */
76
+ kind: "nonexistent";
77
+ /** The reading `disambiguation: "earlier"` gives. */
78
+ earlier: string;
79
+ /** The reading `disambiguation: "later"` and `"compatible"` give. */
80
+ later: string;
81
+ /** The instant `offset: "use"` gives. */
82
+ atStoredOffset: string;
83
+ };
File without changes
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * A time field of an ISO 8601 duration, in the plural, from `"hours"` down to `"nanoseconds"`.
4
4
  * It names the unit an amount of time is given in or a time difference is measured in.
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../internal/temporal.js";
2
2
  /**
3
3
  * A time unit in the singular, from `"hour"` down to `"nanosecond"`, as Temporal's rounding and
4
4
  * difference options name units.
@@ -2,4 +2,4 @@
2
2
  * Units extractable from the current UTC instant via `getUtcNowUnit`.
3
3
  * Defined as `DateTimeUnit | "dayOfWeek"`.
4
4
  */
5
- export type UtcNowUnit = import("@js-temporal/polyfill").Temporal.SmallestUnit<import("./date-time-unit.js").DateTimeUnit> | "dayOfWeek";
5
+ export type UtcNowUnit = import("../internal/temporal.js").Temporal.SmallestUnit<import("./date-time-unit.js").DateTimeUnit> | "dayOfWeek";
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../../internal/temporal.js";
2
2
  import type { DateTimeDurationUnit, RoundingOptions } from "../../types/index.js";
3
3
  import type { UnixUnit } from "../validate/isValidUnixUnit.js";
4
4
  /**
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../../internal/temporal.js";
2
2
  import type { DateTimeDurationUnit, DurationStringOptions, RoundingOptions } from "../../types/index.js";
3
3
  import type { UnixUnit } from "../validate/isValidUnixUnit.js";
4
4
  /**
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../../internal/temporal.js";
2
2
  import type { UnixUnit } from "../validate/isValidUnixUnit.js";
3
3
  /**
4
4
  * Return the end of the specified unit for a Unix timestamp.
@@ -26,7 +26,7 @@ import type { UnixUnit } from "../validate/isValidUnixUnit.js";
26
26
  * @example endOfUnix(1706659200000, "month", { timeZone: "UTC" }) // 1706745599999
27
27
  * @example endOfUnix(1706659200, "day", { epochUnit: "seconds", timeZone: "UTC" }) // 1706745599
28
28
  * @example endOfUnix(-86400000, "year", { timeZone: "UTC" }) // -1 (end of 1969)
29
- * @example endOfUnix(1730616300000, "hour", { timeZone: "America/New_York" }) // 1730617199999 (1730616300000 is the second, repeated 1:45am of the Nov 3 2024 fall-back; its hour ends at the second 1:59:59.999)
29
+ * @example endOfUnix(1729993500000, "hour", { timeZone: "Europe/London" }) // 1729994399999 (1729993500000 is the second, repeated 1:45am of the Oct 27 2024 fall-back; its hour ends at the second 1:59:59.999)
30
30
  * @example endOfUnix(1706780800, "days", { epochUnit: "second" }) // 1706831999 (plural unit, singular epochUnit, UTC by default)
31
31
  * @example endOfUnix(1706659200000, "quarter") // null (use endOfQuarterForUnix)
32
32
  * @example endOfUnix(NaN, "day") // null
@@ -28,7 +28,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
28
28
  * @example endOfUnix(1706659200000, "month", { timeZone: "UTC" }) // 1706745599999
29
29
  * @example endOfUnix(1706659200, "day", { epochUnit: "seconds", timeZone: "UTC" }) // 1706745599
30
30
  * @example endOfUnix(-86400000, "year", { timeZone: "UTC" }) // -1 (end of 1969)
31
- * @example endOfUnix(1730616300000, "hour", { timeZone: "America/New_York" }) // 1730617199999 (1730616300000 is the second, repeated 1:45am of the Nov 3 2024 fall-back; its hour ends at the second 1:59:59.999)
31
+ * @example endOfUnix(1729993500000, "hour", { timeZone: "Europe/London" }) // 1729994399999 (1729993500000 is the second, repeated 1:45am of the Oct 27 2024 fall-back; its hour ends at the second 1:59:59.999)
32
32
  * @example endOfUnix(1706780800, "days", { epochUnit: "second" }) // 1706831999 (plural unit, singular epochUnit, UTC by default)
33
33
  * @example endOfUnix(1706659200000, "quarter") // null (use endOfQuarterForUnix)
34
34
  * @example endOfUnix(NaN, "day") // null
@@ -1,5 +1,5 @@
1
1
  // fallow-ignore-file code-duplication -- cross-family Temporal type clone, by design (rule 5)
2
- import { Temporal } from "@js-temporal/polyfill";
2
+ import { Temporal } from "../../internal/temporal.js";
3
3
  import { normalizeZoneFrame } from "../../internal/zoneFrame.js";
4
4
  import { resolveUnixEpochUnit, unixEpochToInstant, } from "../../internal/unixEpochValue.js";
5
5
  import { isOptionsArgument } from "../../internal/isObject.js";
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../../internal/temporal.js";
2
2
  import type { UnixUnit } from "../validate/isValidUnixUnit.js";
3
3
  /**
4
4
  * Round a Unix timestamp to the specified unit.
@@ -9,10 +9,12 @@ import type { UnixUnit } from "../validate/isValidUnixUnit.js";
9
9
  * GetTemporalUnitValuedOption accepts both (§13.17).
10
10
  * - Date units ("year", "month", "week", in either form) return null: Temporal's
11
11
  * ZonedDateTime.prototype.round accepts no unit larger than "day".
12
- * - Follows TC39 `ZonedDateTime.round`, which rounds the wall clock and re-resolves it in the
13
- * zone. Across a transition the result can land after the input — in `Pacific/Chatham`,
14
- * 1727532300000 (03:50+13:45) truncated to the hour gives 1727532900000, 15 minutes later.
15
- * Use `floorToZone` for a boundary that never exceeds the instant.
12
+ * - Follows TC39 `ZonedDateTime.round`. Below the day it rounds the wall clock and re-resolves it
13
+ * in the zone, so across a transition the result can land after the input — in
14
+ * `Pacific/Chatham`, 1727532300000 (03:50+13:45) truncated to the hour gives 1727532900000,
15
+ * 15 minutes later. To the day it rounds between the start of the input's date and the start of
16
+ * the next, so `"floor"` and `"trunc"` never leave the input's date, even when a clock change
17
+ * makes that date start twice. Use `floorToZone` for a boundary that never exceeds the instant.
16
18
  * - `value` is a safe integer or a digit string (`"1706661000000"`); anything else returns null.
17
19
  * - Returns null for invalid input.
18
20
  * - **Limit at an offset with seconds.** The instant is placed in the offset's whole-minute zone,
@@ -22,10 +22,12 @@ function isZonedRoundingUnit(unit) {
22
22
  * GetTemporalUnitValuedOption accepts both (§13.17).
23
23
  * - Date units ("year", "month", "week", in either form) return null: Temporal's
24
24
  * ZonedDateTime.prototype.round accepts no unit larger than "day".
25
- * - Follows TC39 `ZonedDateTime.round`, which rounds the wall clock and re-resolves it in the
26
- * zone. Across a transition the result can land after the input — in `Pacific/Chatham`,
27
- * 1727532300000 (03:50+13:45) truncated to the hour gives 1727532900000, 15 minutes later.
28
- * Use `floorToZone` for a boundary that never exceeds the instant.
25
+ * - Follows TC39 `ZonedDateTime.round`. Below the day it rounds the wall clock and re-resolves it
26
+ * in the zone, so across a transition the result can land after the input — in
27
+ * `Pacific/Chatham`, 1727532300000 (03:50+13:45) truncated to the hour gives 1727532900000,
28
+ * 15 minutes later. To the day it rounds between the start of the input's date and the start of
29
+ * the next, so `"floor"` and `"trunc"` never leave the input's date, even when a clock change
30
+ * makes that date start twice. Use `floorToZone` for a boundary that never exceeds the instant.
29
31
  * - `value` is a safe integer or a digit string (`"1706661000000"`); anything else returns null.
30
32
  * - Returns null for invalid input.
31
33
  * - **Limit at an offset with seconds.** The instant is placed in the offset's whole-minute zone,
@@ -1,4 +1,4 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../../internal/temporal.js";
2
2
  import type { Disambiguation, Offset, Overflow } from "../../types/index.js";
3
3
  import type { UnixUnit } from "../validate/isValidUnixUnit.js";
4
4
  /**
@@ -41,8 +41,8 @@ import type { UnixUnit } from "../validate/isValidUnixUnit.js";
41
41
  * @example setUnix(1710072000000, { hour: 9 }, { timeZone: "UTC" }) // 1710061200000 (2024-03-10T09:00:00Z)
42
42
  * @example setUnix(1706659200000, { year: 2025 }, { timeZone: "UTC" }) // 1738281600000 (2025-01-31T00:00:00Z)
43
43
  * @example setUnix(1706659200000, {}, { timeZone: "UTC" }) // 1706659200000 (empty fields object is a no-op)
44
- * @example setUnix(1730615400000, { minute: 45 }, { timeZone: "America/New_York" }) // 1730616300000 (the second 01:30 keeps -05:00)
45
- * @example setUnix(1730615400000, { minute: 45 }, { timeZone: "America/New_York", offset: "ignore" }) // 1730612700000 (re-resolved: the earlier 01:45)
44
+ * @example setUnix(1729992600000, { minute: 45 }, { timeZone: "Europe/London" }) // 1729993500000 (the second 01:30 keeps +00:00)
45
+ * @example setUnix(1729992600000, { minute: 45 }, { timeZone: "Europe/London", offset: "ignore" }) // 1729989900000 (re-resolved: the earlier 01:45)
46
46
  * @example setUnix(1710072000000, { hour: "9" }, { timeZone: "UTC" }) // null (not converted)
47
47
  * @example setUnix(NaN, { hour: 9 }) // null
48
48
  */
@@ -42,8 +42,8 @@ import { optionOrDefault } from "../../internal/optionOrDefault.js";
42
42
  * @example setUnix(1710072000000, { hour: 9 }, { timeZone: "UTC" }) // 1710061200000 (2024-03-10T09:00:00Z)
43
43
  * @example setUnix(1706659200000, { year: 2025 }, { timeZone: "UTC" }) // 1738281600000 (2025-01-31T00:00:00Z)
44
44
  * @example setUnix(1706659200000, {}, { timeZone: "UTC" }) // 1706659200000 (empty fields object is a no-op)
45
- * @example setUnix(1730615400000, { minute: 45 }, { timeZone: "America/New_York" }) // 1730616300000 (the second 01:30 keeps -05:00)
46
- * @example setUnix(1730615400000, { minute: 45 }, { timeZone: "America/New_York", offset: "ignore" }) // 1730612700000 (re-resolved: the earlier 01:45)
45
+ * @example setUnix(1729992600000, { minute: 45 }, { timeZone: "Europe/London" }) // 1729993500000 (the second 01:30 keeps +00:00)
46
+ * @example setUnix(1729992600000, { minute: 45 }, { timeZone: "Europe/London", offset: "ignore" }) // 1729989900000 (re-resolved: the earlier 01:45)
47
47
  * @example setUnix(1710072000000, { hour: "9" }, { timeZone: "UTC" }) // null (not converted)
48
48
  * @example setUnix(NaN, { hour: 9 }) // null
49
49
  */