@northguild/gmt 1.18.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 (1283) hide show
  1. package/README.md +55 -2920
  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 +19 -11
  13. package/dist/calendar/calculate/bucketRange.js +27 -70
  14. package/dist/calendar/calculate/floorToZone.d.ts +12 -4
  15. package/dist/calendar/calculate/floorToZone.js +16 -8
  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 +9 -3
  21. package/dist/calendar/hours/addOperatingTime.js +10 -4
  22. package/dist/calendar/hours/isOpenAt.d.ts +9 -3
  23. package/dist/calendar/hours/isOpenAt.js +9 -3
  24. package/dist/calendar/hours/nextCloseAt.d.ts +8 -2
  25. package/dist/calendar/hours/nextCloseAt.js +9 -3
  26. package/dist/calendar/hours/nextOpenAt.d.ts +9 -3
  27. package/dist/calendar/hours/nextOpenAt.js +10 -4
  28. package/dist/calendar/hours/operatingIntervals.d.ts +7 -2
  29. package/dist/calendar/hours/operatingIntervals.js +9 -6
  30. package/dist/calendar/hours/operatingTimeBetween.d.ts +8 -3
  31. package/dist/calendar/hours/operatingTimeBetween.js +11 -8
  32. package/dist/calendar/hours/recurringWindows.d.ts +13 -6
  33. package/dist/calendar/hours/recurringWindows.js +21 -14
  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.d.ts +47 -0
  51. package/dist/duration/calculate/durationFromUnits.js +67 -0
  52. package/dist/duration/calculate/getDurationSign.js +1 -1
  53. package/dist/duration/calculate/getDurationUnit.d.ts +3 -3
  54. package/dist/duration/calculate/getDurationUnit.js +3 -3
  55. package/dist/duration/calculate/index.d.ts +3 -1
  56. package/dist/duration/calculate/index.js +3 -1
  57. package/dist/duration/calculate/negateDuration.d.ts +1 -1
  58. package/dist/duration/calculate/negateDuration.js +2 -2
  59. package/dist/duration/calculate/subtractDuration.js +1 -1
  60. package/dist/duration/calculate/{durationAs.d.ts → totalDuration.d.ts} +27 -21
  61. package/dist/duration/calculate/{durationAs.js → totalDuration.js} +27 -21
  62. package/dist/duration/calculate/totalUnits.d.ts +49 -0
  63. package/dist/duration/calculate/totalUnits.js +73 -0
  64. package/dist/duration/compare/compareDurations.d.ts +4 -4
  65. package/dist/duration/compare/compareDurations.js +4 -4
  66. package/dist/duration/format/formatDuration.d.ts +9 -9
  67. package/dist/duration/format/formatDuration.js +14 -13
  68. package/dist/duration/index.d.ts +1 -1
  69. package/dist/duration/index.js +2 -2
  70. package/dist/duration/normalize/normalizeDuration.d.ts +3 -3
  71. package/dist/duration/normalize/normalizeDuration.js +3 -3
  72. package/dist/duration/parse/parseDuration.d.ts +1 -1
  73. package/dist/duration/parse/parseDuration.js +1 -1
  74. package/dist/duration/validate/isValidDuration.js +2 -11
  75. package/dist/gnss/convert/gnssToUtc.d.ts +24 -0
  76. package/dist/gnss/convert/gnssToUtc.js +39 -0
  77. package/dist/gnss/convert/gnssWeekToUtc.d.ts +53 -0
  78. package/dist/gnss/convert/gnssWeekToUtc.js +80 -0
  79. package/dist/gnss/convert/index.d.ts +6 -0
  80. package/dist/gnss/convert/index.js +6 -0
  81. package/dist/gnss/convert/rinexWeekToUtc.d.ts +34 -0
  82. package/dist/gnss/convert/rinexWeekToUtc.js +57 -0
  83. package/dist/gnss/convert/utcToGnss.d.ts +38 -0
  84. package/dist/gnss/convert/utcToGnss.js +53 -0
  85. package/dist/gnss/convert/utcToGnssWeek.d.ts +24 -0
  86. package/dist/gnss/convert/utcToGnssWeek.js +40 -0
  87. package/dist/gnss/convert/utcToRinexWeek.d.ts +19 -0
  88. package/dist/gnss/convert/utcToRinexWeek.js +45 -0
  89. package/dist/gnss/index.d.ts +2 -0
  90. package/dist/gnss/index.js +3 -0
  91. package/dist/index.d.ts +4 -1
  92. package/dist/index.js +4 -1
  93. package/dist/instant/convert/classifyLocal.d.ts +9 -5
  94. package/dist/instant/convert/classifyLocal.js +19 -20
  95. package/dist/instant/convert/fromOffsetInstant.d.ts +8 -4
  96. package/dist/instant/convert/fromOffsetInstant.js +11 -6
  97. package/dist/instant/convert/resolveLocal.d.ts +16 -11
  98. package/dist/instant/convert/resolveLocal.js +25 -17
  99. package/dist/instant/convert/toOffsetInstant.d.ts +23 -19
  100. package/dist/instant/convert/toOffsetInstant.js +29 -38
  101. package/dist/instant/index.d.ts +2 -1
  102. package/dist/instant/index.js +3 -2
  103. package/dist/instant/validate/index.d.ts +1 -0
  104. package/dist/instant/validate/index.js +1 -0
  105. package/dist/instant/validate/isValidUtcOffset.d.ts +32 -0
  106. package/dist/instant/validate/isValidUtcOffset.js +35 -0
  107. package/dist/intermodal/calculate/billingTimeline.js +1 -1
  108. package/dist/intermodal/calculate/chargeableDays.d.ts +18 -12
  109. package/dist/intermodal/calculate/chargeableDays.js +27 -18
  110. package/dist/intermodal/calculate/demurrageClock.d.ts +1 -1
  111. package/dist/intermodal/calculate/demurrageClock.js +2 -2
  112. package/dist/intermodal/calculate/freeTimeExpiry.d.ts +17 -10
  113. package/dist/intermodal/calculate/freeTimeExpiry.js +32 -17
  114. package/dist/intermodal/calculate/index.d.ts +1 -0
  115. package/dist/intermodal/calculate/index.js +1 -0
  116. package/dist/intermodal/calculate/multimodalETA.d.ts +76 -0
  117. package/dist/intermodal/calculate/multimodalETA.js +145 -0
  118. package/dist/intermodal/format/bolTimestamp.d.ts +76 -0
  119. package/dist/intermodal/format/bolTimestamp.js +78 -0
  120. package/dist/intermodal/format/formatEdifactDate.d.ts +34 -0
  121. package/dist/intermodal/format/formatEdifactDate.js +42 -0
  122. package/dist/intermodal/format/formatEdifactDatePeriod.d.ts +35 -0
  123. package/dist/intermodal/format/formatEdifactDatePeriod.js +43 -0
  124. package/dist/intermodal/format/formatEdifactDateTime.d.ts +37 -0
  125. package/dist/intermodal/format/formatEdifactDateTime.js +45 -0
  126. package/dist/intermodal/format/formatEdifactDateTimePeriod.d.ts +40 -0
  127. package/dist/intermodal/format/formatEdifactDateTimePeriod.js +48 -0
  128. package/dist/intermodal/format/formatEdifactOffsetDateTime.d.ts +62 -0
  129. package/dist/intermodal/format/formatEdifactOffsetDateTime.js +70 -0
  130. package/dist/intermodal/format/formatEdifactTime.d.ts +35 -0
  131. package/dist/intermodal/format/formatEdifactTime.js +43 -0
  132. package/dist/intermodal/format/formatEpcisEvent.d.ts +47 -0
  133. package/dist/intermodal/format/formatEpcisEvent.js +79 -0
  134. package/dist/intermodal/format/formatX12Date.d.ts +35 -0
  135. package/dist/intermodal/format/formatX12Date.js +43 -0
  136. package/dist/intermodal/format/formatX12DateRange.d.ts +37 -0
  137. package/dist/intermodal/format/formatX12DateRange.js +45 -0
  138. package/dist/intermodal/format/formatX12DateTime.d.ts +39 -0
  139. package/dist/intermodal/format/formatX12DateTime.js +47 -0
  140. package/dist/intermodal/format/formatX12DateTimeRange.d.ts +40 -0
  141. package/dist/intermodal/format/formatX12DateTimeRange.js +48 -0
  142. package/dist/intermodal/format/formatX12Time.d.ts +42 -0
  143. package/dist/intermodal/format/formatX12Time.js +50 -0
  144. package/dist/intermodal/format/formatX12TimeElement.d.ts +46 -0
  145. package/dist/intermodal/format/formatX12TimeElement.js +54 -0
  146. package/dist/intermodal/format/index.d.ts +14 -0
  147. package/dist/intermodal/format/index.js +14 -0
  148. package/dist/intermodal/index.d.ts +4 -1
  149. package/dist/intermodal/index.js +5 -2
  150. package/dist/intermodal/parse/classifyEdifactDtmFormat.d.ts +48 -0
  151. package/dist/intermodal/parse/classifyEdifactDtmFormat.js +55 -0
  152. package/dist/intermodal/parse/classifyX12DateTimePeriodFormat.d.ts +50 -0
  153. package/dist/intermodal/parse/classifyX12DateTimePeriodFormat.js +57 -0
  154. package/dist/intermodal/parse/classifyX12TimeCode.d.ts +46 -0
  155. package/dist/intermodal/parse/classifyX12TimeCode.js +57 -0
  156. package/dist/intermodal/parse/index.d.ts +18 -0
  157. package/dist/intermodal/parse/index.js +18 -0
  158. package/dist/intermodal/parse/parseEdifactDate.d.ts +37 -0
  159. package/dist/intermodal/parse/parseEdifactDate.js +45 -0
  160. package/dist/intermodal/parse/parseEdifactDatePeriod.d.ts +43 -0
  161. package/dist/intermodal/parse/parseEdifactDatePeriod.js +51 -0
  162. package/dist/intermodal/parse/parseEdifactDateTime.d.ts +43 -0
  163. package/dist/intermodal/parse/parseEdifactDateTime.js +51 -0
  164. package/dist/intermodal/parse/parseEdifactDateTimePeriod.d.ts +45 -0
  165. package/dist/intermodal/parse/parseEdifactDateTimePeriod.js +53 -0
  166. package/dist/intermodal/parse/parseEdifactOffsetDateTime.d.ts +60 -0
  167. package/dist/intermodal/parse/parseEdifactOffsetDateTime.js +68 -0
  168. package/dist/intermodal/parse/parseEdifactTime.d.ts +37 -0
  169. package/dist/intermodal/parse/parseEdifactTime.js +45 -0
  170. package/dist/intermodal/parse/parseEpcisEvent.d.ts +95 -0
  171. package/dist/intermodal/parse/parseEpcisEvent.js +102 -0
  172. package/dist/intermodal/parse/parseX12Date.d.ts +39 -0
  173. package/dist/intermodal/parse/parseX12Date.js +47 -0
  174. package/dist/intermodal/parse/parseX12DateAndTime.d.ts +52 -0
  175. package/dist/intermodal/parse/parseX12DateAndTime.js +61 -0
  176. package/dist/intermodal/parse/parseX12DateRange.d.ts +44 -0
  177. package/dist/intermodal/parse/parseX12DateRange.js +52 -0
  178. package/dist/intermodal/parse/parseX12DateTime.d.ts +45 -0
  179. package/dist/intermodal/parse/parseX12DateTime.js +53 -0
  180. package/dist/intermodal/parse/parseX12DateTimeRange.d.ts +46 -0
  181. package/dist/intermodal/parse/parseX12DateTimeRange.js +54 -0
  182. package/dist/intermodal/parse/parseX12Time.d.ts +65 -0
  183. package/dist/intermodal/parse/parseX12Time.js +77 -0
  184. package/dist/intermodal/parse/x12TimeCodeOffset.d.ts +57 -0
  185. package/dist/intermodal/parse/x12TimeCodeOffset.js +110 -0
  186. package/dist/intermodal/parse/x12TimeCodeZone.d.ts +57 -0
  187. package/dist/intermodal/parse/x12TimeCodeZone.js +105 -0
  188. package/dist/intermodal/validate/index.d.ts +18 -0
  189. package/dist/intermodal/validate/index.js +18 -0
  190. package/dist/intermodal/validate/isValidEdifactDate.d.ts +26 -0
  191. package/dist/intermodal/validate/isValidEdifactDate.js +28 -0
  192. package/dist/intermodal/validate/isValidEdifactDatePeriod.d.ts +28 -0
  193. package/dist/intermodal/validate/isValidEdifactDatePeriod.js +30 -0
  194. package/dist/intermodal/validate/isValidEdifactDateTime.d.ts +30 -0
  195. package/dist/intermodal/validate/isValidEdifactDateTime.js +32 -0
  196. package/dist/intermodal/validate/isValidEdifactDateTimePeriod.d.ts +28 -0
  197. package/dist/intermodal/validate/isValidEdifactDateTimePeriod.js +30 -0
  198. package/dist/intermodal/validate/isValidEdifactDtmFormat.d.ts +39 -0
  199. package/dist/intermodal/validate/isValidEdifactDtmFormat.js +42 -0
  200. package/dist/intermodal/validate/isValidEdifactOffsetDateTime.d.ts +36 -0
  201. package/dist/intermodal/validate/isValidEdifactOffsetDateTime.js +38 -0
  202. package/dist/intermodal/validate/isValidEdifactTime.d.ts +28 -0
  203. package/dist/intermodal/validate/isValidEdifactTime.js +30 -0
  204. package/dist/intermodal/validate/isValidEpcisEvent.d.ts +41 -0
  205. package/dist/intermodal/validate/isValidEpcisEvent.js +58 -0
  206. package/dist/intermodal/validate/isValidEpcisEventTime.d.ts +33 -0
  207. package/dist/intermodal/validate/isValidEpcisEventTime.js +48 -0
  208. package/dist/intermodal/validate/isValidEpcisTimeZoneOffset.d.ts +30 -0
  209. package/dist/intermodal/validate/isValidEpcisTimeZoneOffset.js +38 -0
  210. package/dist/intermodal/validate/isValidX12Date.d.ts +28 -0
  211. package/dist/intermodal/validate/isValidX12Date.js +30 -0
  212. package/dist/intermodal/validate/isValidX12DateAndTime.d.ts +32 -0
  213. package/dist/intermodal/validate/isValidX12DateAndTime.js +35 -0
  214. package/dist/intermodal/validate/isValidX12DateRange.d.ts +29 -0
  215. package/dist/intermodal/validate/isValidX12DateRange.js +31 -0
  216. package/dist/intermodal/validate/isValidX12DateTime.d.ts +30 -0
  217. package/dist/intermodal/validate/isValidX12DateTime.js +32 -0
  218. package/dist/intermodal/validate/isValidX12DateTimePeriodFormat.d.ts +43 -0
  219. package/dist/intermodal/validate/isValidX12DateTimePeriodFormat.js +46 -0
  220. package/dist/intermodal/validate/isValidX12DateTimeRange.d.ts +31 -0
  221. package/dist/intermodal/validate/isValidX12DateTimeRange.js +33 -0
  222. package/dist/intermodal/validate/isValidX12Time.d.ts +38 -0
  223. package/dist/intermodal/validate/isValidX12Time.js +40 -0
  224. package/dist/intermodal/validate/isValidX12TimeCode.d.ts +38 -0
  225. package/dist/intermodal/validate/isValidX12TimeCode.js +41 -0
  226. package/dist/internal/advanceToWeekday.d.ts +1 -1
  227. package/dist/internal/businessCalendar.d.ts +28 -12
  228. package/dist/internal/businessCalendar.js +131 -125
  229. package/dist/internal/businessDayValues.js +1 -1
  230. package/dist/internal/calendarDatePairPolicy.d.ts +1 -1
  231. package/dist/internal/calendarDateString.d.ts +1 -1
  232. package/dist/internal/calendarDateString.js +1 -1
  233. package/dist/internal/calendarSystemIds.js +1 -1
  234. package/dist/internal/calendarValueOfDate.js +1 -1
  235. package/dist/internal/calendarZonedPairPolicy.d.ts +1 -1
  236. package/dist/internal/calendarZonedString.d.ts +3 -3
  237. package/dist/internal/calendarZonedString.js +4 -4
  238. package/dist/internal/compareUnixEpochs.js +1 -1
  239. package/dist/internal/cutoffAtResolved.d.ts +62 -0
  240. package/dist/internal/cutoffAtResolved.js +162 -0
  241. package/dist/internal/cycleFieldValue.d.ts +0 -2
  242. package/dist/internal/cycleFieldValue.js +0 -2
  243. package/dist/internal/dateTimeUnitHelpers.d.ts +1 -1
  244. package/dist/internal/dateUnitHelpers.d.ts +1 -1
  245. package/dist/internal/daylightTime.d.ts +1 -1
  246. package/dist/internal/differenceRecord.d.ts +1 -1
  247. package/dist/internal/durationUntilString.d.ts +1 -1
  248. package/dist/internal/durationUntilString.js +1 -1
  249. package/dist/internal/dutyEngine.d.ts +125 -0
  250. package/dist/internal/dutyEngine.js +1755 -0
  251. package/dist/internal/dutyLog.d.ts +27 -0
  252. package/dist/internal/dutyLog.js +47 -0
  253. package/dist/internal/dutyPeriods.d.ts +135 -0
  254. package/dist/internal/dutyPeriods.js +375 -0
  255. package/dist/internal/dutyRules.d.ts +198 -0
  256. package/dist/internal/dutyRules.js +484 -0
  257. package/dist/internal/dutyRunIndex.d.ts +150 -0
  258. package/dist/internal/dutyRunIndex.js +398 -0
  259. package/dist/internal/earlierOccurrence.d.ts +41 -0
  260. package/dist/internal/earlierOccurrence.js +57 -0
  261. package/dist/internal/ediDateTimeFields.d.ts +97 -0
  262. package/dist/internal/ediDateTimeFields.js +288 -0
  263. package/dist/internal/ediDateTimeWriter.d.ts +92 -0
  264. package/dist/internal/ediDateTimeWriter.js +298 -0
  265. package/dist/internal/ediGrammar.d.ts +158 -0
  266. package/dist/internal/ediGrammar.js +384 -0
  267. package/dist/internal/englishCalendarNames.d.ts +4 -2
  268. package/dist/internal/englishCalendarNames.js +3 -1
  269. package/dist/internal/epochDay.d.ts +41 -0
  270. package/dist/internal/epochDay.js +129 -0
  271. package/dist/internal/exactDuration.js +1 -1
  272. package/dist/internal/exactMoment.d.ts +4 -4
  273. package/dist/internal/exactMoment.js +5 -5
  274. package/dist/internal/fiscalCalendar.d.ts +41 -7
  275. package/dist/internal/fiscalCalendar.js +77 -9
  276. package/dist/internal/foreignEpochs.d.ts +5 -0
  277. package/dist/internal/foreignEpochs.js +5 -0
  278. package/dist/internal/formatCalendarDays.d.ts +4 -4
  279. package/dist/internal/formatCalendarDays.js +6 -5
  280. package/dist/internal/formatDateInCalendar.d.ts +1 -1
  281. package/dist/internal/formatRelativeDuration.d.ts +7 -7
  282. package/dist/internal/formatRelativeDuration.js +8 -7
  283. package/dist/internal/formatterCache.d.ts +40 -0
  284. package/dist/internal/formatterCache.js +181 -0
  285. package/dist/internal/freeTimeLedger.d.ts +35 -42
  286. package/dist/internal/freeTimeLedger.js +332 -31
  287. package/dist/internal/getLocaleWeekYearBounds.d.ts +1 -1
  288. package/dist/internal/gnssTimeScales.d.ts +53 -0
  289. package/dist/internal/gnssTimeScales.js +128 -0
  290. package/dist/internal/gnssWeek.d.ts +92 -0
  291. package/dist/internal/gnssWeek.js +212 -0
  292. package/dist/internal/halfOpenIntervals.d.ts +1 -1
  293. package/dist/internal/halfOpenIntervals.js +1 -1
  294. package/dist/internal/hasCalendarAnnotation.d.ts +3 -3
  295. package/dist/internal/hasCalendarAnnotation.js +3 -3
  296. package/dist/internal/hourDurationString.js +1 -1
  297. package/dist/internal/httpDateFields.js +1 -1
  298. package/dist/internal/index.d.ts +14 -5
  299. package/dist/internal/index.js +18 -5
  300. package/dist/internal/inputChecks.d.ts +53 -0
  301. package/dist/internal/inputChecks.js +132 -0
  302. package/dist/internal/instantFormatOptions.d.ts +1 -1
  303. package/dist/internal/instantFormatOptions.js +4 -8
  304. package/dist/internal/instantIntervalText.js +1 -1
  305. package/dist/internal/instantNanoseconds.d.ts +2 -2
  306. package/dist/internal/instantNanoseconds.js +2 -2
  307. package/dist/internal/intervalCountHelpers.d.ts +1 -1
  308. package/dist/internal/intervalNanoseconds.js +2 -1
  309. package/dist/internal/isObject.d.ts +13 -6
  310. package/dist/internal/isObject.js +14 -7
  311. package/dist/internal/isoStringBody.d.ts +2 -2
  312. package/dist/internal/isoStringBody.js +2 -2
  313. package/dist/internal/isoYearString.d.ts +21 -0
  314. package/dist/internal/isoYearString.js +27 -0
  315. package/dist/internal/joinDateTimeConnector.js +3 -2
  316. package/dist/internal/leapSeconds.d.ts +63 -0
  317. package/dist/internal/leapSeconds.js +162 -0
  318. package/dist/internal/localeWeekInfo.d.ts +1 -1
  319. package/dist/internal/localeWeekInfo.js +1 -1
  320. package/dist/internal/maxPieces.js +2 -1
  321. package/dist/internal/monthGridWeekRow.d.ts +1 -1
  322. package/dist/internal/normalizeDateTime.d.ts +2 -1
  323. package/dist/internal/normalizeDateTime.js +3 -2
  324. package/dist/internal/normalizeTimeZone.d.ts +5 -2
  325. package/dist/internal/normalizeTimeZone.js +5 -2
  326. package/dist/internal/offsetTimeline.d.ts +56 -0
  327. package/dist/internal/offsetTimeline.js +166 -0
  328. package/dist/internal/operatingSchedule.d.ts +39 -34
  329. package/dist/internal/operatingSchedule.js +672 -222
  330. package/dist/internal/patternToken.d.ts +10 -3
  331. package/dist/internal/patternToken.js +41 -19
  332. package/dist/internal/plainDateAdd.d.ts +1 -1
  333. package/dist/internal/plainDateAdd.js +1 -1
  334. package/dist/internal/plainDateUntil.d.ts +1 -1
  335. package/dist/internal/plainDateUntil.js +1 -1
  336. package/dist/internal/readDurationUnits.d.ts +34 -0
  337. package/dist/internal/readDurationUnits.js +78 -0
  338. package/dist/internal/readSetFields.d.ts +50 -0
  339. package/dist/internal/readSetFields.js +179 -0
  340. package/dist/internal/resolveDurationRelativeTo.d.ts +1 -1
  341. package/dist/internal/resolveDurationRelativeTo.js +1 -1
  342. package/dist/internal/resolveLocale.d.ts +2 -2
  343. package/dist/internal/resolveLocale.js +2 -2
  344. package/dist/internal/resolveManualRoundingOptions.d.ts +1 -1
  345. package/dist/internal/resolveRelativeUnit.d.ts +1 -1
  346. package/dist/internal/resolveRelativeUnit.js +1 -1
  347. package/dist/internal/resolveUnixIntervalPair.d.ts +9 -3
  348. package/dist/internal/resolveUnixIntervalPair.js +11 -7
  349. package/dist/internal/rinexWeek.d.ts +22 -0
  350. package/dist/internal/rinexWeek.js +30 -0
  351. package/dist/internal/rollBusinessDate.d.ts +15 -0
  352. package/dist/internal/rollBusinessDate.js +46 -0
  353. package/dist/internal/splitStep.d.ts +1 -1
  354. package/dist/internal/splitStep.js +1 -1
  355. package/dist/internal/startOrEndOfUnix.d.ts +3 -2
  356. package/dist/internal/startOrEndOfUnix.js +9 -6
  357. package/dist/internal/startOrEndOfUtc.d.ts +1 -1
  358. package/dist/internal/startOrEndOfUtc.js +1 -1
  359. package/dist/internal/startOrEndOfZoned.d.ts +1 -1
  360. package/dist/internal/temporal.d.ts +5 -0
  361. package/dist/internal/temporal.js +5 -0
  362. package/dist/internal/temporalCompat/calendarDateArithmetic.d.ts +1 -1
  363. package/dist/internal/temporalCompat/calendarDateFromFields.d.ts +1 -1
  364. package/dist/internal/temporalCompat/calendarDateFromFields.js +1 -1
  365. package/dist/internal/temporalCompat/calendarFields.d.ts +1 -1
  366. package/dist/internal/temporalCompat/capabilities.d.ts +27 -5
  367. package/dist/internal/temporalCompat/capabilities.js +28 -4
  368. package/dist/internal/temporalCompat/fieldSearch.d.ts +1 -1
  369. package/dist/internal/temporalCompat/fieldSearch.js +1 -1
  370. package/dist/internal/temporalCompat/fixedDay.d.ts +1 -1
  371. package/dist/internal/temporalCompat/fixedDay.js +1 -1
  372. package/dist/internal/temporalCompat/index.d.ts +1 -1
  373. package/dist/internal/temporalCompat/index.js +1 -1
  374. package/dist/internal/temporalCompat/largeMonthSpan.js +1 -1
  375. package/dist/internal/temporalCompat/nonIsoArithmetic.d.ts +1 -1
  376. package/dist/internal/temporalCompat/nonIsoArithmetic.js +1 -1
  377. package/dist/internal/temporalCompat/probeRepros.d.ts +35 -0
  378. package/dist/internal/temporalCompat/probeRepros.js +571 -0
  379. package/dist/internal/temporalCompat/readArithmeticModel.js +2 -2
  380. package/dist/internal/temporalCompat/repros.d.ts +3 -10
  381. package/dist/internal/temporalCompat/repros.js +13 -520
  382. package/dist/internal/timeScaleString.d.ts +47 -0
  383. package/dist/internal/timeScaleString.js +86 -0
  384. package/dist/internal/toInstantFromUtc.d.ts +1 -1
  385. package/dist/internal/toInstantFromUtc.js +1 -1
  386. package/dist/internal/twoDigitYear.d.ts +19 -0
  387. package/dist/internal/twoDigitYear.js +22 -0
  388. package/dist/internal/unixEpochValue.d.ts +1 -1
  389. package/dist/internal/unixEpochValue.js +4 -3
  390. package/dist/internal/unixFormatReference.d.ts +1 -1
  391. package/dist/internal/unixFormatReference.js +1 -1
  392. package/dist/internal/unixWallClock.d.ts +24 -0
  393. package/dist/internal/unixWallClock.js +35 -0
  394. package/dist/internal/utcOffsetString.d.ts +16 -0
  395. package/dist/internal/utcOffsetString.js +31 -1
  396. package/dist/internal/utcReading.d.ts +59 -0
  397. package/dist/internal/utcReading.js +113 -0
  398. package/dist/internal/utcWallClock.d.ts +20 -0
  399. package/dist/internal/utcWallClock.js +32 -0
  400. package/dist/internal/validatedZones.d.ts +20 -0
  401. package/dist/internal/validatedZones.js +33 -0
  402. package/dist/internal/wallClockAtOffset.d.ts +1 -1
  403. package/dist/internal/yearWindowStart.d.ts +28 -0
  404. package/dist/internal/yearWindowStart.js +52 -0
  405. package/dist/internal/zoneBucketCap.d.ts +18 -0
  406. package/dist/internal/zoneBucketCap.js +64 -0
  407. package/dist/internal/zoneFrame.d.ts +180 -0
  408. package/dist/internal/zoneFrame.js +221 -0
  409. package/dist/internal/zonedBucket.d.ts +2 -2
  410. package/dist/internal/zonedBucket.js +92 -21
  411. package/dist/internal/zonedFormatReference.d.ts +1 -1
  412. package/dist/internal/zonedFormatReference.js +1 -1
  413. package/dist/internal/zonedLocalDates.d.ts +1 -1
  414. package/dist/internal/zonedLocalDates.js +22 -19
  415. package/dist/internal/zonedNowUnitValue.d.ts +8 -5
  416. package/dist/internal/zonedNowUnitValue.js +9 -5
  417. package/dist/internal/zonedTransitionSearch.d.ts +2 -0
  418. package/dist/internal/zonedTransitionSearch.js +165 -16
  419. package/dist/internal/zonedWallClock.d.ts +15 -4
  420. package/dist/internal/zonedWallClock.js +34 -6
  421. package/dist/internal/zonedWallClockDifference.d.ts +1 -1
  422. package/dist/internal/zonedWallClockDifference.js +6 -6
  423. package/dist/internal/zonedWallClockOperations.d.ts +7 -4
  424. package/dist/internal/zonedWallClockOperations.js +58 -16
  425. package/dist/internal/zonelessCalendarDate.d.ts +1 -1
  426. package/dist/internal/zonelessCalendarDate.js +1 -1
  427. package/dist/interval/index.d.ts +1 -1
  428. package/dist/interval/index.js +2 -2
  429. package/dist/plain/calculate/addBusinessDays.d.ts +2 -2
  430. package/dist/plain/calculate/addBusinessDays.js +2 -2
  431. package/dist/plain/calculate/addDate.js +4 -7
  432. package/dist/plain/calculate/addDateTime.js +5 -8
  433. package/dist/plain/calculate/addTime.js +5 -8
  434. package/dist/plain/calculate/clampDate.js +1 -1
  435. package/dist/plain/calculate/closestDateTo.js +1 -1
  436. package/dist/plain/calculate/cycleDate.js +1 -1
  437. package/dist/plain/calculate/cycleDateTime.js +1 -1
  438. package/dist/plain/calculate/cycleTime.js +1 -1
  439. package/dist/plain/calculate/diffDate.d.ts +1 -1
  440. package/dist/plain/calculate/diffDateAsDuration.d.ts +1 -1
  441. package/dist/plain/calculate/diffDateTime.d.ts +1 -1
  442. package/dist/plain/calculate/diffDateTime.js +1 -1
  443. package/dist/plain/calculate/diffDateTimeAsDuration.d.ts +1 -1
  444. package/dist/plain/calculate/diffDateTimeAsDuration.js +1 -1
  445. package/dist/plain/calculate/diffTime.d.ts +1 -1
  446. package/dist/plain/calculate/diffTime.js +1 -1
  447. package/dist/plain/calculate/endOfDate.d.ts +1 -1
  448. package/dist/plain/calculate/endOfDate.js +1 -1
  449. package/dist/plain/calculate/endOfDateTime.d.ts +1 -1
  450. package/dist/plain/calculate/endOfDateTime.js +1 -1
  451. package/dist/plain/calculate/endOfQuarterForDate.js +1 -1
  452. package/dist/plain/calculate/endOfQuarterForDateTime.js +1 -1
  453. package/dist/plain/calculate/endOfTime.d.ts +2 -2
  454. package/dist/plain/calculate/endOfTime.js +1 -1
  455. package/dist/plain/calculate/getDayOfYear.js +1 -1
  456. package/dist/plain/calculate/getDaysInMonth.js +1 -1
  457. package/dist/plain/calculate/getDaysInYear.js +1 -1
  458. package/dist/plain/calculate/getLargestDateDurationUnit.d.ts +1 -1
  459. package/dist/plain/calculate/getLargestDateTimeDurationUnit.d.ts +1 -1
  460. package/dist/plain/calculate/getLargestTimeDurationUnit.d.ts +1 -1
  461. package/dist/plain/calculate/getLocaleDayOfWeek.d.ts +6 -6
  462. package/dist/plain/calculate/getLocaleDayOfWeek.js +7 -7
  463. package/dist/plain/calculate/getLocaleEndOfWeek.d.ts +4 -4
  464. package/dist/plain/calculate/getLocaleEndOfWeek.js +5 -5
  465. package/dist/plain/calculate/getLocaleStartOfWeek.d.ts +5 -5
  466. package/dist/plain/calculate/getLocaleStartOfWeek.js +6 -6
  467. package/dist/plain/calculate/getLocaleWeekYear.d.ts +10 -10
  468. package/dist/plain/calculate/getLocaleWeekYear.js +11 -11
  469. package/dist/plain/calculate/getQuarterForDate.js +1 -1
  470. package/dist/plain/calculate/getQuarterForDateTime.js +1 -1
  471. package/dist/plain/calculate/getWeekNumber.js +1 -1
  472. package/dist/plain/calculate/getWeekOfMonth.d.ts +10 -14
  473. package/dist/plain/calculate/getWeekOfMonth.js +11 -15
  474. package/dist/plain/calculate/getWeekYear.js +1 -1
  475. package/dist/plain/calculate/getWeeksInLocaleWeekYear.d.ts +7 -7
  476. package/dist/plain/calculate/getWeeksInLocaleWeekYear.js +8 -8
  477. package/dist/plain/calculate/getWeeksInMonth.d.ts +8 -11
  478. package/dist/plain/calculate/getWeeksInMonth.js +9 -12
  479. package/dist/plain/calculate/getWeeksInYear.js +1 -1
  480. package/dist/plain/calculate/maxDate.js +1 -1
  481. package/dist/plain/calculate/maxDateTime.js +1 -1
  482. package/dist/plain/calculate/maxTime.js +1 -1
  483. package/dist/plain/calculate/minDate.js +1 -1
  484. package/dist/plain/calculate/minDateTime.js +1 -1
  485. package/dist/plain/calculate/minTime.js +1 -1
  486. package/dist/plain/calculate/nextWeekday.d.ts +14 -12
  487. package/dist/plain/calculate/nextWeekday.js +15 -13
  488. package/dist/plain/calculate/previousWeekday.d.ts +14 -12
  489. package/dist/plain/calculate/previousWeekday.js +15 -13
  490. package/dist/plain/calculate/roundDate.d.ts +1 -1
  491. package/dist/plain/calculate/roundDate.js +1 -1
  492. package/dist/plain/calculate/roundDateTime.d.ts +1 -1
  493. package/dist/plain/calculate/roundDateTime.js +1 -1
  494. package/dist/plain/calculate/roundTime.d.ts +1 -1
  495. package/dist/plain/calculate/roundTime.js +1 -1
  496. package/dist/plain/calculate/setDate.d.ts +21 -4
  497. package/dist/plain/calculate/setDate.js +28 -8
  498. package/dist/plain/calculate/setDateTime.d.ts +16 -4
  499. package/dist/plain/calculate/setDateTime.js +23 -8
  500. package/dist/plain/calculate/setTime.d.ts +14 -2
  501. package/dist/plain/calculate/setTime.js +22 -7
  502. package/dist/plain/calculate/sortDateTimes.js +1 -1
  503. package/dist/plain/calculate/sortDates.js +1 -1
  504. package/dist/plain/calculate/sortTimes.js +1 -1
  505. package/dist/plain/calculate/startOfDate.d.ts +1 -1
  506. package/dist/plain/calculate/startOfDate.js +1 -1
  507. package/dist/plain/calculate/startOfDateTime.d.ts +1 -1
  508. package/dist/plain/calculate/startOfDateTime.js +1 -1
  509. package/dist/plain/calculate/startOfQuarterForDate.js +1 -1
  510. package/dist/plain/calculate/startOfQuarterForDateTime.js +1 -1
  511. package/dist/plain/calculate/startOfTime.d.ts +2 -2
  512. package/dist/plain/calculate/startOfTime.js +1 -1
  513. package/dist/plain/calculate/subtractBusinessDays.d.ts +2 -2
  514. package/dist/plain/calculate/subtractBusinessDays.js +2 -2
  515. package/dist/plain/calculate/subtractDate.js +5 -8
  516. package/dist/plain/calculate/subtractDateTime.js +5 -8
  517. package/dist/plain/calculate/subtractTime.js +5 -8
  518. package/dist/plain/calculate/weekOfYearForDate.js +1 -1
  519. package/dist/plain/calculate/weekOfYearForDateTime.js +1 -1
  520. package/dist/plain/chop/chopDate.js +1 -1
  521. package/dist/plain/chop/chopMilliseconds.js +1 -1
  522. package/dist/plain/chop/chopSeconds.js +1 -1
  523. package/dist/plain/chop/chopTime.js +1 -1
  524. package/dist/plain/compare/areDateTimesEqual.js +1 -1
  525. package/dist/plain/compare/areDateTimesEqualBy.d.ts +2 -4
  526. package/dist/plain/compare/areDateTimesEqualBy.js +2 -4
  527. package/dist/plain/compare/areDatesEqual.js +1 -1
  528. package/dist/plain/compare/areDatesEqualBy.d.ts +5 -5
  529. package/dist/plain/compare/areDatesEqualBy.js +5 -5
  530. package/dist/plain/compare/areTimesEqual.js +1 -1
  531. package/dist/plain/compare/isAfterDate.js +1 -1
  532. package/dist/plain/compare/isAfterDateTime.js +1 -1
  533. package/dist/plain/compare/isAfterTime.js +1 -1
  534. package/dist/plain/compare/isBeforeDate.js +1 -1
  535. package/dist/plain/compare/isBeforeDateTime.js +1 -1
  536. package/dist/plain/compare/isBeforeTime.js +1 -1
  537. package/dist/plain/compare/isBetweenDate.js +1 -1
  538. package/dist/plain/compare/isBetweenDateTime.js +1 -1
  539. package/dist/plain/compare/isBetweenTime.js +1 -1
  540. package/dist/plain/compare/isBusinessDay.d.ts +2 -2
  541. package/dist/plain/compare/isBusinessDay.js +3 -3
  542. package/dist/plain/compare/isRelativeDay.d.ts +1 -1
  543. package/dist/plain/compare/isRelativeDay.js +1 -1
  544. package/dist/plain/compare/isThisUnit.d.ts +8 -6
  545. package/dist/plain/compare/isThisUnit.js +7 -5
  546. package/dist/plain/compare/isWeekend.d.ts +5 -5
  547. package/dist/plain/compare/isWeekend.js +6 -6
  548. package/dist/plain/format/formatCalendar.d.ts +3 -5
  549. package/dist/plain/format/formatCalendar.js +12 -10
  550. package/dist/plain/format/formatDate.d.ts +4 -4
  551. package/dist/plain/format/formatDate.js +8 -7
  552. package/dist/plain/format/formatDateRange.d.ts +4 -4
  553. package/dist/plain/format/formatDateRange.js +8 -7
  554. package/dist/plain/format/formatDateTime.d.ts +4 -4
  555. package/dist/plain/format/formatDateTime.js +8 -7
  556. package/dist/plain/format/formatDateTimeRange.d.ts +4 -4
  557. package/dist/plain/format/formatDateTimeRange.js +8 -7
  558. package/dist/plain/format/formatDateTimeToParts.d.ts +6 -6
  559. package/dist/plain/format/formatDateTimeToParts.js +10 -9
  560. package/dist/plain/format/formatDateToParts.d.ts +6 -6
  561. package/dist/plain/format/formatDateToParts.js +10 -9
  562. package/dist/plain/format/formatRelativeDate.d.ts +3 -3
  563. package/dist/plain/format/formatRelativeDate.js +6 -5
  564. package/dist/plain/format/formatRelativeDateTime.d.ts +3 -3
  565. package/dist/plain/format/formatRelativeDateTime.js +6 -5
  566. package/dist/plain/format/formatRelativeTime.d.ts +3 -3
  567. package/dist/plain/format/formatRelativeTime.js +6 -5
  568. package/dist/plain/format/{formatSql.d.ts → formatSqlDateTime.d.ts} +7 -7
  569. package/dist/plain/format/{formatSql.js → formatSqlDateTime.js} +8 -8
  570. package/dist/plain/format/formatTime.d.ts +4 -4
  571. package/dist/plain/format/formatTime.js +8 -7
  572. package/dist/plain/format/index.d.ts +1 -1
  573. package/dist/plain/format/index.js +1 -1
  574. package/dist/plain/get/getDay.js +1 -1
  575. package/dist/plain/get/getDayOfWeek.js +1 -1
  576. package/dist/plain/get/getHour.js +1 -1
  577. package/dist/plain/get/getMicrosecond.js +1 -1
  578. package/dist/plain/get/getMillisecond.js +1 -1
  579. package/dist/plain/get/getMinute.js +1 -1
  580. package/dist/plain/get/getMonth.js +1 -1
  581. package/dist/plain/get/getNanosecond.js +1 -1
  582. package/dist/plain/get/getNow.js +1 -1
  583. package/dist/plain/get/getNowUnit.d.ts +2 -0
  584. package/dist/plain/get/getNowUnit.js +3 -1
  585. package/dist/plain/get/getSecond.js +1 -1
  586. package/dist/plain/get/getToday.js +1 -1
  587. package/dist/plain/get/getWeekOfYear.js +1 -1
  588. package/dist/plain/get/getYear.d.ts +2 -0
  589. package/dist/plain/get/getYear.js +5 -4
  590. package/dist/plain/index.d.ts +1 -1
  591. package/dist/plain/index.js +2 -2
  592. package/dist/plain/interval/intervalAbutsDate.d.ts +1 -2
  593. package/dist/plain/interval/intervalAbutsDate.js +2 -3
  594. package/dist/plain/interval/intervalAbutsDateTime.js +1 -1
  595. package/dist/plain/interval/intervalAbutsTime.js +1 -1
  596. package/dist/plain/interval/intervalContainsDate.d.ts +1 -1
  597. package/dist/plain/interval/intervalContainsDate.js +2 -2
  598. package/dist/plain/interval/intervalContainsDateTime.js +1 -1
  599. package/dist/plain/interval/intervalContainsTime.js +1 -1
  600. package/dist/plain/interval/intervalCountDate.js +1 -1
  601. package/dist/plain/interval/intervalCountDateTime.js +1 -1
  602. package/dist/plain/interval/intervalCountTime.js +1 -1
  603. package/dist/plain/interval/intervalDifferenceDate.d.ts +1 -1
  604. package/dist/plain/interval/intervalDifferenceDate.js +2 -2
  605. package/dist/plain/interval/intervalDifferenceDateTime.js +1 -1
  606. package/dist/plain/interval/intervalDifferenceTime.js +1 -1
  607. package/dist/plain/interval/intervalDivideEquallyDate.d.ts +3 -3
  608. package/dist/plain/interval/intervalDivideEquallyDate.js +3 -3
  609. package/dist/plain/interval/intervalDivideEquallyDateTime.js +1 -1
  610. package/dist/plain/interval/intervalDivideEquallyTime.js +1 -1
  611. package/dist/plain/interval/intervalEngulfsDate.d.ts +1 -1
  612. package/dist/plain/interval/intervalEngulfsDate.js +2 -2
  613. package/dist/plain/interval/intervalEngulfsDateTime.js +1 -1
  614. package/dist/plain/interval/intervalEngulfsTime.js +1 -1
  615. package/dist/plain/interval/intervalFromDurationDate.js +1 -1
  616. package/dist/plain/interval/intervalFromDurationDateTime.js +1 -1
  617. package/dist/plain/interval/intervalFromDurationTime.js +1 -1
  618. package/dist/plain/interval/intervalIntersectionDate.d.ts +1 -1
  619. package/dist/plain/interval/intervalIntersectionDate.js +2 -2
  620. package/dist/plain/interval/intervalIntersectionDateTime.js +1 -1
  621. package/dist/plain/interval/intervalIntersectionTime.js +1 -1
  622. package/dist/plain/interval/intervalLengthDateTime.js +1 -1
  623. package/dist/plain/interval/intervalLengthTime.js +1 -1
  624. package/dist/plain/interval/intervalOverlappingDaysDate.js +1 -1
  625. package/dist/plain/interval/intervalOverlappingDaysDateTime.js +1 -1
  626. package/dist/plain/interval/intervalSplitAtDate.d.ts +1 -1
  627. package/dist/plain/interval/intervalSplitAtDate.js +2 -2
  628. package/dist/plain/interval/intervalSplitAtDateTime.js +1 -1
  629. package/dist/plain/interval/intervalSplitAtTime.js +1 -1
  630. package/dist/plain/interval/intervalUnionDate.d.ts +2 -2
  631. package/dist/plain/interval/intervalUnionDate.js +3 -3
  632. package/dist/plain/interval/intervalUnionDateTime.js +1 -1
  633. package/dist/plain/interval/intervalUnionTime.js +1 -1
  634. package/dist/plain/interval/intervalXorAllDate.d.ts +1 -1
  635. package/dist/plain/interval/intervalXorAllDate.js +4 -4
  636. package/dist/plain/interval/intervalXorAllDateTime.js +3 -3
  637. package/dist/plain/interval/intervalXorAllTime.js +3 -3
  638. package/dist/plain/interval/intervalXorDate.d.ts +1 -1
  639. package/dist/plain/interval/intervalXorDate.js +2 -2
  640. package/dist/plain/interval/intervalXorDateTime.js +1 -1
  641. package/dist/plain/interval/intervalXorTime.js +1 -1
  642. package/dist/plain/interval/intervalsOverlapDate.d.ts +1 -1
  643. package/dist/plain/interval/intervalsOverlapDate.js +2 -2
  644. package/dist/plain/interval/intervalsOverlapDateTime.js +1 -1
  645. package/dist/plain/interval/intervalsOverlapTime.js +1 -1
  646. package/dist/plain/interval/mergeIntervalsDate.d.ts +1 -1
  647. package/dist/plain/interval/mergeIntervalsDate.js +4 -4
  648. package/dist/plain/interval/mergeIntervalsDateTime.js +3 -3
  649. package/dist/plain/interval/mergeIntervalsTime.js +3 -3
  650. package/dist/plain/interval/splitIntervalByUnitDate.d.ts +2 -3
  651. package/dist/plain/interval/splitIntervalByUnitDate.js +3 -4
  652. package/dist/plain/interval/splitIntervalByUnitDateTime.d.ts +2 -1
  653. package/dist/plain/interval/splitIntervalByUnitDateTime.js +3 -2
  654. package/dist/plain/interval/splitIntervalByUnitTime.js +1 -1
  655. package/dist/plain/interval/validate/isValidDateInterval.d.ts +1 -1
  656. package/dist/plain/interval/validate/isValidDateInterval.js +2 -2
  657. package/dist/plain/interval/validate/isValidDateTimeInterval.js +1 -1
  658. package/dist/plain/interval/validate/isValidTimeInterval.js +1 -1
  659. package/dist/plain/locale/getLocaleEraNames.d.ts +6 -6
  660. package/dist/plain/locale/getLocaleEraNames.js +8 -7
  661. package/dist/plain/locale/getLocaleMeridiems.d.ts +5 -5
  662. package/dist/plain/locale/getLocaleMeridiems.js +7 -6
  663. package/dist/plain/locale/getLocaleMonthNames.d.ts +6 -6
  664. package/dist/plain/locale/getLocaleMonthNames.js +17 -11
  665. package/dist/plain/locale/getLocaleWeekdayNames.d.ts +3 -3
  666. package/dist/plain/locale/getLocaleWeekdayNames.js +12 -5
  667. package/dist/plain/map/mapDatesInRange.js +1 -1
  668. package/dist/plain/map/mapDaysInMonth.js +1 -1
  669. package/dist/plain/parse/index.d.ts +1 -1
  670. package/dist/plain/parse/index.js +1 -1
  671. package/dist/plain/parse/parseDateTimeWithPattern.d.ts +28 -14
  672. package/dist/plain/parse/parseDateTimeWithPattern.js +33 -17
  673. package/dist/plain/parse/parseDateWithPattern.d.ts +29 -14
  674. package/dist/plain/parse/parseDateWithPattern.js +34 -17
  675. package/dist/plain/parse/parseDayFromDate.js +1 -1
  676. package/dist/plain/parse/parseDayFromDateTime.js +1 -1
  677. package/dist/plain/parse/parseDayOfWeekFromDate.js +1 -1
  678. package/dist/plain/parse/parseDayOfWeekFromDateTime.js +1 -1
  679. package/dist/plain/parse/parseHourFromDateTime.js +1 -1
  680. package/dist/plain/parse/parseHourFromTime.js +1 -1
  681. package/dist/plain/parse/parseMicrosecondFromDateTime.js +1 -1
  682. package/dist/plain/parse/parseMicrosecondFromTime.js +1 -1
  683. package/dist/plain/parse/parseMillisecondFromDateTime.js +1 -1
  684. package/dist/plain/parse/parseMillisecondFromTime.js +1 -1
  685. package/dist/plain/parse/parseMinuteFromDateTime.js +1 -1
  686. package/dist/plain/parse/parseMinuteFromTime.js +1 -1
  687. package/dist/plain/parse/parseMonthFromDate.js +1 -1
  688. package/dist/plain/parse/parseMonthFromDateTime.js +1 -1
  689. package/dist/plain/parse/parseNanosecondFromDateTime.js +1 -1
  690. package/dist/plain/parse/parseNanosecondFromTime.js +1 -1
  691. package/dist/plain/parse/parseSecondFromDateTime.js +1 -1
  692. package/dist/plain/parse/parseSecondFromTime.js +1 -1
  693. package/dist/plain/parse/{parseSql.d.ts → parseSqlDateTime.d.ts} +8 -8
  694. package/dist/plain/parse/{parseSql.js → parseSqlDateTime.js} +9 -9
  695. package/dist/plain/parse/parseTimeWithPattern.d.ts +6 -4
  696. package/dist/plain/parse/parseTimeWithPattern.js +8 -5
  697. package/dist/plain/parse/parseUnitFromDate.d.ts +4 -1
  698. package/dist/plain/parse/parseUnitFromDate.js +6 -2
  699. package/dist/plain/parse/parseUnitFromDateTime.d.ts +4 -1
  700. package/dist/plain/parse/parseUnitFromDateTime.js +6 -2
  701. package/dist/plain/parse/parseUnitFromTime.d.ts +1 -1
  702. package/dist/plain/parse/parseUnitFromTime.js +1 -1
  703. package/dist/plain/parse/parseWeekFromDateTime.js +1 -1
  704. package/dist/plain/parse/parseYearFromDate.d.ts +5 -2
  705. package/dist/plain/parse/parseYearFromDate.js +8 -4
  706. package/dist/plain/parse/parseYearFromDateTime.d.ts +4 -2
  707. package/dist/plain/parse/parseYearFromDateTime.js +7 -4
  708. package/dist/plain/validate/{isLeapSecond.d.ts → hasSecond60.d.ts} +16 -14
  709. package/dist/plain/validate/{isLeapSecond.js → hasSecond60.js} +16 -14
  710. package/dist/plain/validate/index.d.ts +2 -1
  711. package/dist/plain/validate/index.js +2 -1
  712. package/dist/plain/validate/isLeapYear.js +1 -1
  713. package/dist/plain/validate/isValidDate.js +2 -17
  714. package/dist/plain/validate/isValidDateRange.js +1 -1
  715. package/dist/plain/validate/isValidDateTime.d.ts +1 -1
  716. package/dist/plain/validate/isValidDateTime.js +4 -4
  717. package/dist/plain/validate/isValidDateTimeRange.js +1 -1
  718. package/dist/plain/validate/isValidIsoDateLike.js +3 -3
  719. package/dist/plain/validate/isValidSqlDateTime.d.ts +33 -0
  720. package/dist/plain/validate/isValidSqlDateTime.js +36 -0
  721. package/dist/plain/validate/isValidTime.js +2 -18
  722. package/dist/plain/validate/isValidTimeRange.js +1 -1
  723. package/dist/precision/convert/fromNanoseconds.d.ts +11 -5
  724. package/dist/precision/convert/fromNanoseconds.js +12 -6
  725. package/dist/precision/convert/toNanoseconds.d.ts +2 -2
  726. package/dist/precision/convert/toNanoseconds.js +2 -2
  727. package/dist/precision/index.d.ts +1 -1
  728. package/dist/precision/index.js +2 -2
  729. package/dist/precision/validate/isValidInstant.d.ts +1 -1
  730. package/dist/precision/validate/isValidInstant.js +1 -1
  731. package/dist/regex/calendar-zoned-date-time.d.ts +4 -4
  732. package/dist/regex/calendar-zoned-date-time.js +4 -4
  733. package/dist/regex/epcis.d.ts +60 -0
  734. package/dist/regex/epcis.js +60 -0
  735. package/dist/regex/http-date.d.ts +6 -4
  736. package/dist/regex/http-date.js +6 -4
  737. package/dist/regex/index.d.ts +2 -1
  738. package/dist/regex/index.js +3 -2
  739. package/dist/regex/leap-second.d.ts +1 -1
  740. package/dist/regex/leap-second.js +1 -1
  741. package/dist/regex/rfc-2822.d.ts +2 -0
  742. package/dist/regex/rfc-2822.js +2 -0
  743. package/dist/regex/rfc-3339.d.ts +3 -1
  744. package/dist/regex/rfc-3339.js +3 -1
  745. package/dist/regex/sql-date-time.d.ts +2 -1
  746. package/dist/regex/sql-date-time.js +2 -1
  747. package/dist/regex/time-zone-like.d.ts +5 -4
  748. package/dist/regex/time-zone-like.js +5 -4
  749. package/dist/regex/utc-offset.d.ts +2 -1
  750. package/dist/regex/utc-offset.js +2 -1
  751. package/dist/span/calculate/spanMs.d.ts +4 -3
  752. package/dist/span/calculate/spanMs.js +4 -3
  753. package/dist/span/calculate/spanNs.d.ts +4 -3
  754. package/dist/span/calculate/spanNs.js +4 -3
  755. package/dist/span/calculate/spanWallClock.d.ts +12 -12
  756. package/dist/span/calculate/spanWallClock.js +13 -13
  757. package/dist/span/index.d.ts +1 -1
  758. package/dist/span/index.js +2 -2
  759. package/dist/span/validate/isValidSpan.d.ts +3 -3
  760. package/dist/span/validate/isValidSpan.js +3 -3
  761. package/dist/timescale/calculate/index.d.ts +3 -0
  762. package/dist/timescale/calculate/index.js +3 -0
  763. package/dist/timescale/calculate/leapSecondsBetween.d.ts +26 -0
  764. package/dist/timescale/calculate/leapSecondsBetween.js +62 -0
  765. package/dist/timescale/calculate/nextLeapSecond.d.ts +18 -0
  766. package/dist/timescale/calculate/nextLeapSecond.js +33 -0
  767. package/dist/timescale/calculate/taiMinusUtc.d.ts +21 -0
  768. package/dist/timescale/calculate/taiMinusUtc.js +38 -0
  769. package/dist/timescale/convert/fromTAI.d.ts +22 -0
  770. package/dist/timescale/convert/fromTAI.js +35 -0
  771. package/dist/timescale/convert/index.d.ts +2 -0
  772. package/dist/timescale/convert/index.js +2 -0
  773. package/dist/timescale/convert/toTAI.d.ts +23 -0
  774. package/dist/timescale/convert/toTAI.js +39 -0
  775. package/dist/timescale/index.d.ts +4 -0
  776. package/dist/timescale/index.js +5 -0
  777. package/dist/timescale/validate/index.d.ts +1 -0
  778. package/dist/timescale/validate/index.js +1 -0
  779. package/dist/timescale/validate/isLeapSecond.d.ts +25 -0
  780. package/dist/timescale/validate/isLeapSecond.js +36 -0
  781. package/dist/transport/calculate/crossingTime.d.ts +8 -3
  782. package/dist/transport/calculate/crossingTime.js +9 -4
  783. package/dist/transport/calculate/cutoffAt.d.ts +10 -5
  784. package/dist/transport/calculate/cutoffAt.js +26 -133
  785. package/dist/transport/calculate/cutoffSchedule.d.ts +8 -3
  786. package/dist/transport/calculate/cutoffSchedule.js +54 -20
  787. package/dist/transport/calculate/dwellTime.d.ts +9 -4
  788. package/dist/transport/calculate/dwellTime.js +10 -5
  789. package/dist/transport/calculate/estimateDrift.d.ts +1 -1
  790. package/dist/transport/calculate/estimateDrift.js +1 -1
  791. package/dist/transport/calculate/nextDeparture.d.ts +2 -2
  792. package/dist/transport/calculate/nextDeparture.js +2 -2
  793. package/dist/transport/calculate/scheduleDelivery.d.ts +15 -7
  794. package/dist/transport/calculate/scheduleDelivery.js +9 -4
  795. package/dist/transport/calculate/transitTime.d.ts +11 -11
  796. package/dist/transport/calculate/transitTime.js +11 -11
  797. package/dist/transport/compare/classifyPunctuality.d.ts +1 -1
  798. package/dist/transport/compare/classifyPunctuality.js +1 -1
  799. package/dist/transport/compare/isPastCutoff.d.ts +1 -1
  800. package/dist/transport/compare/isPastCutoff.js +2 -2
  801. package/dist/transport/compare/scheduleDeviation.d.ts +1 -1
  802. package/dist/transport/compare/scheduleDeviation.js +1 -1
  803. package/dist/transport/compare/timeToCutoff.d.ts +1 -1
  804. package/dist/transport/compare/timeToCutoff.js +1 -1
  805. package/dist/transport/convert/etaAtZone.d.ts +8 -3
  806. package/dist/transport/convert/etaAtZone.js +8 -3
  807. package/dist/transport/index.d.ts +1 -1
  808. package/dist/transport/index.js +2 -2
  809. package/dist/types/business-calendar.d.ts +5 -4
  810. package/dist/types/date-duration-unit.d.ts +1 -1
  811. package/dist/types/date-time-duration-units.d.ts +1 -1
  812. package/dist/types/date-time-unit.d.ts +1 -1
  813. package/dist/types/date-unit.d.ts +1 -1
  814. package/dist/types/disambiguation.d.ts +1 -1
  815. package/dist/types/duration-relative-to.d.ts +1 -1
  816. package/dist/types/duration-string-options.d.ts +1 -1
  817. package/dist/types/duty.d.ts +777 -0
  818. package/dist/types/duty.js +0 -0
  819. package/dist/types/edi.d.ts +407 -0
  820. package/dist/types/edi.js +0 -0
  821. package/dist/types/epcis.d.ts +25 -0
  822. package/dist/types/epcis.js +0 -0
  823. package/dist/types/exact-duration-unit.d.ts +8 -0
  824. package/dist/types/exact-duration-unit.js +0 -0
  825. package/dist/types/fiscal-calendar.d.ts +40 -4
  826. package/dist/types/free-time-options.d.ts +4 -3
  827. package/dist/types/gnss.d.ts +51 -0
  828. package/dist/types/gnss.js +0 -0
  829. package/dist/types/index.d.ts +7 -0
  830. package/dist/types/index.js +7 -0
  831. package/dist/types/now-unit.d.ts +1 -1
  832. package/dist/types/offset.d.ts +1 -1
  833. package/dist/types/operating-schedule.d.ts +3 -2
  834. package/dist/types/overflow.d.ts +1 -1
  835. package/dist/types/rounding-options.d.ts +1 -1
  836. package/dist/types/stored-zoned-classification.d.ts +83 -0
  837. package/dist/types/stored-zoned-classification.js +0 -0
  838. package/dist/types/time-duration-unit.d.ts +1 -1
  839. package/dist/types/time-unit.d.ts +1 -1
  840. package/dist/types/two-digit-year.d.ts +23 -0
  841. package/dist/types/two-digit-year.js +0 -0
  842. package/dist/types/utc-now-unit.d.ts +1 -1
  843. package/dist/types/zone-bucket-unit.d.ts +1 -1
  844. package/dist/unix/calculate/addUnix.d.ts +11 -2
  845. package/dist/unix/calculate/addUnix.js +14 -11
  846. package/dist/unix/calculate/diffUnix.d.ts +11 -3
  847. package/dist/unix/calculate/diffUnix.js +11 -6
  848. package/dist/unix/calculate/diffUnixAsDuration.d.ts +11 -3
  849. package/dist/unix/calculate/diffUnixAsDuration.js +10 -5
  850. package/dist/unix/calculate/endOfQuarterForUnix.d.ts +10 -2
  851. package/dist/unix/calculate/endOfQuarterForUnix.js +6 -0
  852. package/dist/unix/calculate/endOfUnix.d.ts +13 -4
  853. package/dist/unix/calculate/endOfUnix.js +8 -1
  854. package/dist/unix/calculate/isBetweenUnix.d.ts +3 -2
  855. package/dist/unix/calculate/isBetweenUnix.js +4 -4
  856. package/dist/unix/calculate/roundUnix.d.ts +17 -7
  857. package/dist/unix/calculate/roundUnix.js +19 -10
  858. package/dist/unix/calculate/setUnix.d.ts +28 -8
  859. package/dist/unix/calculate/setUnix.js +35 -14
  860. package/dist/unix/calculate/startOfQuarterForUnix.d.ts +10 -2
  861. package/dist/unix/calculate/startOfQuarterForUnix.js +6 -0
  862. package/dist/unix/calculate/startOfUnix.d.ts +13 -4
  863. package/dist/unix/calculate/startOfUnix.js +8 -1
  864. package/dist/unix/calculate/subtractUnix.d.ts +10 -2
  865. package/dist/unix/calculate/subtractUnix.js +13 -11
  866. package/dist/unix/compare/areUnixEqualBy.d.ts +13 -4
  867. package/dist/unix/compare/areUnixEqualBy.js +8 -1
  868. package/dist/unix/convert/convertUnixToPlainDate.d.ts +5 -2
  869. package/dist/unix/convert/convertUnixToPlainDate.js +5 -4
  870. package/dist/unix/convert/convertUnixToPlainDateTime.d.ts +5 -2
  871. package/dist/unix/convert/convertUnixToPlainDateTime.js +5 -4
  872. package/dist/unix/convert/convertUnixToPlainTime.d.ts +6 -3
  873. package/dist/unix/convert/convertUnixToPlainTime.js +6 -5
  874. package/dist/unix/convert/convertUnixToZoned.d.ts +6 -2
  875. package/dist/unix/convert/convertUnixToZoned.js +6 -2
  876. package/dist/unix/format/formatCalendarUnix.d.ts +16 -11
  877. package/dist/unix/format/formatCalendarUnix.js +12 -7
  878. package/dist/unix/format/formatRelativeUnix.d.ts +17 -9
  879. package/dist/unix/format/formatRelativeUnix.js +19 -11
  880. package/dist/unix/format/formatUnix.d.ts +16 -11
  881. package/dist/unix/format/formatUnix.js +13 -9
  882. package/dist/unix/get/getUnixDay.d.ts +1 -3
  883. package/dist/unix/get/getUnixDay.js +6 -13
  884. package/dist/unix/get/getUnixHour.d.ts +1 -3
  885. package/dist/unix/get/getUnixHour.js +6 -13
  886. package/dist/unix/get/getUnixMicrosecond.d.ts +1 -3
  887. package/dist/unix/get/getUnixMicrosecond.js +5 -12
  888. package/dist/unix/get/getUnixMillisecond.d.ts +1 -3
  889. package/dist/unix/get/getUnixMillisecond.js +6 -13
  890. package/dist/unix/get/getUnixMinute.d.ts +1 -3
  891. package/dist/unix/get/getUnixMinute.js +6 -13
  892. package/dist/unix/get/getUnixMonth.d.ts +1 -3
  893. package/dist/unix/get/getUnixMonth.js +6 -13
  894. package/dist/unix/get/getUnixNanosecond.d.ts +1 -3
  895. package/dist/unix/get/getUnixNanosecond.js +5 -12
  896. package/dist/unix/get/getUnixNow.js +1 -1
  897. package/dist/unix/get/getUnixNowUnit.d.ts +3 -1
  898. package/dist/unix/get/getUnixNowUnit.js +3 -1
  899. package/dist/unix/get/getUnixSecond.d.ts +1 -3
  900. package/dist/unix/get/getUnixSecond.js +6 -13
  901. package/dist/unix/get/getUnixYear.d.ts +3 -3
  902. package/dist/unix/get/getUnixYear.js +6 -13
  903. package/dist/unix/index.d.ts +1 -1
  904. package/dist/unix/index.js +2 -2
  905. package/dist/unix/interval/intervalCountUnix.d.ts +11 -2
  906. package/dist/unix/interval/intervalCountUnix.js +7 -0
  907. package/dist/unix/interval/intervalFromDurationUnix.d.ts +10 -2
  908. package/dist/unix/interval/intervalFromDurationUnix.js +13 -8
  909. package/dist/unix/interval/intervalLengthUnix.d.ts +12 -4
  910. package/dist/unix/interval/intervalLengthUnix.js +8 -2
  911. package/dist/unix/interval/intervalOverlappingDaysUnix.d.ts +10 -2
  912. package/dist/unix/interval/intervalOverlappingDaysUnix.js +10 -5
  913. package/dist/unix/interval/splitIntervalByUnitUnix.d.ts +13 -4
  914. package/dist/unix/interval/splitIntervalByUnitUnix.js +16 -9
  915. package/dist/unix/parse/parseDateFromUnix.d.ts +4 -2
  916. package/dist/unix/parse/parseDateFromUnix.js +3 -3
  917. package/dist/unix/parse/parseDayFromUnix.d.ts +4 -2
  918. package/dist/unix/parse/parseDayOfWeekFromUnix.d.ts +4 -2
  919. package/dist/unix/parse/parseDayOfWeekFromUnix.js +2 -2
  920. package/dist/unix/parse/parseHourFromUnix.d.ts +4 -2
  921. package/dist/unix/parse/parseMicrosecondFromUnix.d.ts +4 -2
  922. package/dist/unix/parse/parseMillisecondFromUnix.d.ts +4 -2
  923. package/dist/unix/parse/parseMinuteFromUnix.d.ts +4 -2
  924. package/dist/unix/parse/parseMonthFromUnix.d.ts +4 -2
  925. package/dist/unix/parse/parseNanosecondFromUnix.d.ts +4 -2
  926. package/dist/unix/parse/parseSecondFromUnix.d.ts +4 -2
  927. package/dist/unix/parse/parseTimeFromUnix.d.ts +5 -2
  928. package/dist/unix/parse/parseTimeFromUnix.js +4 -3
  929. package/dist/unix/parse/parseUnitFromUnix.d.ts +10 -4
  930. package/dist/unix/parse/parseUnitFromUnix.js +21 -14
  931. package/dist/unix/parse/parseWeekFromUnix.d.ts +3 -2
  932. package/dist/unix/parse/parseWeekFromUnix.js +4 -4
  933. package/dist/unix/parse/parseYearFromUnix.d.ts +8 -3
  934. package/dist/unix/parse/parseYearFromUnix.js +4 -1
  935. package/dist/unix/validate/isValidUnixUnit.d.ts +1 -1
  936. package/dist/utc/calculate/addUtc.js +5 -8
  937. package/dist/utc/calculate/diffUtc.d.ts +1 -1
  938. package/dist/utc/calculate/diffUtc.js +1 -1
  939. package/dist/utc/calculate/diffUtcAsDuration.d.ts +1 -1
  940. package/dist/utc/calculate/diffUtcAsDuration.js +1 -1
  941. package/dist/utc/calculate/endOfQuarterForUtc.js +1 -1
  942. package/dist/utc/calculate/endOfUtc.d.ts +1 -1
  943. package/dist/utc/calculate/isBetweenUtc.js +1 -1
  944. package/dist/utc/calculate/maxUtc.js +1 -1
  945. package/dist/utc/calculate/minUtc.js +1 -1
  946. package/dist/utc/calculate/roundUtc.d.ts +1 -1
  947. package/dist/utc/calculate/roundUtc.js +1 -1
  948. package/dist/utc/calculate/setUtc.d.ts +17 -4
  949. package/dist/utc/calculate/setUtc.js +23 -9
  950. package/dist/utc/calculate/sortUtc.js +1 -1
  951. package/dist/utc/calculate/startOfQuarterForUtc.js +1 -1
  952. package/dist/utc/calculate/startOfUtc.d.ts +1 -1
  953. package/dist/utc/calculate/subtractUtc.js +5 -8
  954. package/dist/utc/compare/areUtcEqual.js +1 -1
  955. package/dist/utc/compare/areUtcEqualBy.d.ts +2 -2
  956. package/dist/utc/compare/areUtcEqualBy.js +2 -2
  957. package/dist/utc/compare/isAfterUtc.js +1 -1
  958. package/dist/utc/compare/isBeforeUtc.js +1 -1
  959. package/dist/utc/convert/convertUtcToPlainDate.d.ts +9 -3
  960. package/dist/utc/convert/convertUtcToPlainDate.js +12 -9
  961. package/dist/utc/convert/convertUtcToPlainDateTime.d.ts +10 -3
  962. package/dist/utc/convert/convertUtcToPlainDateTime.js +14 -15
  963. package/dist/utc/convert/convertUtcToPlainTime.d.ts +6 -3
  964. package/dist/utc/convert/convertUtcToPlainTime.js +9 -8
  965. package/dist/utc/convert/convertUtcToUnix.js +1 -1
  966. package/dist/utc/convert/convertUtcToZoned.d.ts +6 -2
  967. package/dist/utc/convert/convertUtcToZoned.js +7 -3
  968. package/dist/utc/format/formatCalendarUtc.d.ts +12 -7
  969. package/dist/utc/format/formatCalendarUtc.js +9 -4
  970. package/dist/utc/format/{formatHttp.d.ts → formatHttpDate.d.ts} +7 -7
  971. package/dist/utc/format/{formatHttp.js → formatHttpDate.js} +8 -8
  972. package/dist/utc/format/formatRelativeUtc.d.ts +15 -7
  973. package/dist/utc/format/formatRelativeUtc.js +17 -9
  974. package/dist/utc/format/formatUtc.d.ts +15 -10
  975. package/dist/utc/format/formatUtc.js +12 -8
  976. package/dist/utc/format/index.d.ts +1 -1
  977. package/dist/utc/format/index.js +1 -1
  978. package/dist/utc/get/getUtcDay.d.ts +1 -3
  979. package/dist/utc/get/getUtcDay.js +6 -13
  980. package/dist/utc/get/getUtcHour.d.ts +1 -3
  981. package/dist/utc/get/getUtcHour.js +6 -13
  982. package/dist/utc/get/getUtcMicrosecond.d.ts +1 -3
  983. package/dist/utc/get/getUtcMicrosecond.js +5 -12
  984. package/dist/utc/get/getUtcMillisecond.d.ts +1 -3
  985. package/dist/utc/get/getUtcMillisecond.js +6 -13
  986. package/dist/utc/get/getUtcMinute.d.ts +1 -3
  987. package/dist/utc/get/getUtcMinute.js +6 -13
  988. package/dist/utc/get/getUtcMonth.d.ts +1 -3
  989. package/dist/utc/get/getUtcMonth.js +6 -13
  990. package/dist/utc/get/getUtcNanosecond.d.ts +1 -3
  991. package/dist/utc/get/getUtcNanosecond.js +5 -12
  992. package/dist/utc/get/getUtcNow.d.ts +1 -3
  993. package/dist/utc/get/getUtcNow.js +3 -10
  994. package/dist/utc/get/getUtcNowUnit.d.ts +2 -0
  995. package/dist/utc/get/getUtcNowUnit.js +3 -1
  996. package/dist/utc/get/getUtcSecond.d.ts +1 -3
  997. package/dist/utc/get/getUtcSecond.js +6 -13
  998. package/dist/utc/get/getUtcYear.d.ts +3 -3
  999. package/dist/utc/get/getUtcYear.js +6 -13
  1000. package/dist/utc/index.d.ts +1 -1
  1001. package/dist/utc/index.js +2 -2
  1002. package/dist/utc/interval/intervalAbutsUtc.js +1 -1
  1003. package/dist/utc/interval/intervalContainsUtc.js +1 -1
  1004. package/dist/utc/interval/intervalCountUtc.js +1 -1
  1005. package/dist/utc/interval/intervalDivideEquallyUtc.js +1 -1
  1006. package/dist/utc/interval/intervalEngulfsUtc.js +1 -1
  1007. package/dist/utc/interval/intervalFromDurationUtc.js +1 -1
  1008. package/dist/utc/interval/intervalLengthUtc.js +1 -1
  1009. package/dist/utc/interval/intervalOverlappingDaysUtc.js +1 -1
  1010. package/dist/utc/interval/intervalSplitAtUtc.js +1 -1
  1011. package/dist/utc/interval/intervalXorAllUtc.js +3 -3
  1012. package/dist/utc/interval/intervalXorUtc.js +1 -1
  1013. package/dist/utc/interval/mergeIntervalsUtc.js +2 -2
  1014. package/dist/utc/interval/splitIntervalByUnitUtc.d.ts +2 -1
  1015. package/dist/utc/interval/splitIntervalByUnitUtc.js +3 -2
  1016. package/dist/utc/interval/validate/isValidUtcInterval.js +1 -1
  1017. package/dist/utc/parse/index.d.ts +1 -1
  1018. package/dist/utc/parse/index.js +1 -1
  1019. package/dist/utc/parse/parseDateFromUtc.d.ts +5 -3
  1020. package/dist/utc/parse/parseDateFromUtc.js +3 -3
  1021. package/dist/utc/parse/parseDayFromUtc.d.ts +5 -3
  1022. package/dist/utc/parse/parseDayFromUtc.js +3 -3
  1023. package/dist/utc/parse/parseDayOfWeekFromUtc.d.ts +5 -3
  1024. package/dist/utc/parse/parseDayOfWeekFromUtc.js +6 -6
  1025. package/dist/utc/parse/parseHourFromUtc.d.ts +5 -3
  1026. package/dist/utc/parse/parseHourFromUtc.js +3 -3
  1027. package/dist/utc/parse/{parseHttp.d.ts → parseHttpDate.d.ts} +12 -12
  1028. package/dist/utc/parse/{parseHttp.js → parseHttpDate.js} +13 -13
  1029. package/dist/utc/parse/parseMicrosecondFromUtc.d.ts +5 -3
  1030. package/dist/utc/parse/parseMicrosecondFromUtc.js +3 -3
  1031. package/dist/utc/parse/parseMillisecondFromUtc.d.ts +5 -3
  1032. package/dist/utc/parse/parseMillisecondFromUtc.js +3 -3
  1033. package/dist/utc/parse/parseMinuteFromUtc.d.ts +4 -2
  1034. package/dist/utc/parse/parseMinuteFromUtc.js +2 -2
  1035. package/dist/utc/parse/parseMonthFromUtc.d.ts +5 -3
  1036. package/dist/utc/parse/parseMonthFromUtc.js +3 -3
  1037. package/dist/utc/parse/parseNanosecondFromUtc.d.ts +5 -3
  1038. package/dist/utc/parse/parseNanosecondFromUtc.js +3 -3
  1039. package/dist/utc/parse/parseSecondFromUtc.d.ts +5 -3
  1040. package/dist/utc/parse/parseSecondFromUtc.js +3 -3
  1041. package/dist/utc/parse/parseTimeFromUtc.d.ts +6 -3
  1042. package/dist/utc/parse/parseTimeFromUtc.js +7 -6
  1043. package/dist/utc/parse/parseUnitFromUtc.d.ts +12 -5
  1044. package/dist/utc/parse/parseUnitFromUtc.js +13 -7
  1045. package/dist/utc/parse/parseWeekFromUtc.d.ts +5 -3
  1046. package/dist/utc/parse/parseWeekFromUtc.js +6 -6
  1047. package/dist/utc/parse/parseYearFromUtc.d.ts +9 -5
  1048. package/dist/utc/parse/parseYearFromUtc.js +9 -6
  1049. package/dist/utc/validate/index.d.ts +2 -0
  1050. package/dist/utc/validate/index.js +2 -0
  1051. package/dist/utc/validate/isValidHttpDate.d.ts +35 -0
  1052. package/dist/utc/validate/isValidHttpDate.js +38 -0
  1053. package/dist/utc/validate/isValidUtc.d.ts +4 -0
  1054. package/dist/utc/validate/isValidUtc.js +7 -3
  1055. package/dist/utc/validate/isValidUtcRange.js +1 -1
  1056. package/dist/utc/validate/isValidUtcTimestamp.d.ts +43 -0
  1057. package/dist/utc/validate/isValidUtcTimestamp.js +48 -0
  1058. package/dist/workforce/calculate/dutyDayFor.d.ts +38 -0
  1059. package/dist/workforce/calculate/dutyDayFor.js +71 -0
  1060. package/dist/workforce/calculate/dutyTotals.d.ts +24 -0
  1061. package/dist/workforce/calculate/dutyTotals.js +41 -0
  1062. package/dist/workforce/calculate/dutyViolations.d.ts +74 -0
  1063. package/dist/workforce/calculate/dutyViolations.js +65 -0
  1064. package/dist/workforce/calculate/evaluateDutyLog.d.ts +77 -0
  1065. package/dist/workforce/calculate/evaluateDutyLog.js +75 -0
  1066. package/dist/workforce/calculate/index.d.ts +7 -0
  1067. package/dist/workforce/calculate/index.js +7 -0
  1068. package/dist/workforce/calculate/longestRun.d.ts +28 -0
  1069. package/dist/workforce/calculate/longestRun.js +54 -0
  1070. package/dist/workforce/calculate/qualifyingRestPairs.d.ts +37 -0
  1071. package/dist/workforce/calculate/qualifyingRestPairs.js +58 -0
  1072. package/dist/workforce/calculate/qualifyingRests.d.ts +27 -0
  1073. package/dist/workforce/calculate/qualifyingRests.js +49 -0
  1074. package/dist/workforce/index.d.ts +3 -0
  1075. package/dist/workforce/index.js +4 -0
  1076. package/dist/workforce/validate/index.d.ts +1 -0
  1077. package/dist/workforce/validate/index.js +1 -0
  1078. package/dist/workforce/validate/isValidDutyLog.d.ts +24 -0
  1079. package/dist/workforce/validate/isValidDutyLog.js +34 -0
  1080. package/dist/zoned/calculate/addZoned.d.ts +15 -15
  1081. package/dist/zoned/calculate/addZoned.js +19 -22
  1082. package/dist/zoned/calculate/addZonedBusinessDays.d.ts +5 -4
  1083. package/dist/zoned/calculate/addZonedBusinessDays.js +5 -4
  1084. package/dist/zoned/calculate/clampZoned.js +1 -1
  1085. package/dist/zoned/calculate/diffZoned.d.ts +8 -8
  1086. package/dist/zoned/calculate/diffZoned.js +7 -7
  1087. package/dist/zoned/calculate/diffZonedAsDuration.d.ts +5 -5
  1088. package/dist/zoned/calculate/diffZonedAsDuration.js +4 -4
  1089. package/dist/zoned/calculate/endOfZoned.d.ts +3 -3
  1090. package/dist/zoned/calculate/endOfZoned.js +2 -2
  1091. package/dist/zoned/calculate/getHoursInZonedDay.d.ts +2 -2
  1092. package/dist/zoned/calculate/getHoursInZonedDay.js +2 -2
  1093. package/dist/zoned/calculate/getLocaleZonedDayOfWeek.d.ts +6 -5
  1094. package/dist/zoned/calculate/getLocaleZonedDayOfWeek.js +6 -5
  1095. package/dist/zoned/calculate/getLocaleZonedEndOfWeek.d.ts +5 -5
  1096. package/dist/zoned/calculate/getLocaleZonedEndOfWeek.js +5 -5
  1097. package/dist/zoned/calculate/getLocaleZonedStartOfWeek.d.ts +6 -6
  1098. package/dist/zoned/calculate/getLocaleZonedStartOfWeek.js +6 -6
  1099. package/dist/zoned/calculate/maxZoned.d.ts +2 -2
  1100. package/dist/zoned/calculate/maxZoned.js +3 -3
  1101. package/dist/zoned/calculate/minZoned.d.ts +2 -2
  1102. package/dist/zoned/calculate/minZoned.js +3 -3
  1103. package/dist/zoned/calculate/roundZoned.d.ts +11 -9
  1104. package/dist/zoned/calculate/roundZoned.js +11 -9
  1105. package/dist/zoned/calculate/setZoned.d.ts +26 -12
  1106. package/dist/zoned/calculate/setZoned.js +33 -16
  1107. package/dist/zoned/calculate/sortZoned.d.ts +3 -3
  1108. package/dist/zoned/calculate/sortZoned.js +4 -4
  1109. package/dist/zoned/calculate/startOfZoned.d.ts +3 -3
  1110. package/dist/zoned/calculate/startOfZoned.js +2 -2
  1111. package/dist/zoned/calculate/subtractZoned.d.ts +14 -14
  1112. package/dist/zoned/calculate/subtractZoned.js +18 -21
  1113. package/dist/zoned/calculate/subtractZonedBusinessDays.d.ts +5 -4
  1114. package/dist/zoned/calculate/subtractZonedBusinessDays.js +5 -4
  1115. package/dist/zoned/chop/chopZonedDate.d.ts +1 -1
  1116. package/dist/zoned/chop/chopZonedDate.js +1 -1
  1117. package/dist/zoned/chop/chopZonedMilliseconds.d.ts +1 -1
  1118. package/dist/zoned/chop/chopZonedMilliseconds.js +1 -1
  1119. package/dist/zoned/chop/chopZonedSeconds.d.ts +1 -1
  1120. package/dist/zoned/chop/chopZonedSeconds.js +1 -1
  1121. package/dist/zoned/chop/chopZonedTime.d.ts +1 -1
  1122. package/dist/zoned/chop/chopZonedTime.js +1 -1
  1123. package/dist/zoned/chop/chopZonedTimezone.d.ts +1 -1
  1124. package/dist/zoned/chop/chopZonedTimezone.js +1 -1
  1125. package/dist/zoned/classify/classifyStoredZoned.d.ts +46 -0
  1126. package/dist/zoned/classify/classifyStoredZoned.js +177 -0
  1127. package/dist/zoned/classify/index.d.ts +1 -0
  1128. package/dist/zoned/classify/index.js +1 -0
  1129. package/dist/zoned/compare/areZonedEqual.js +1 -1
  1130. package/dist/zoned/compare/areZonedEqualBy.d.ts +8 -10
  1131. package/dist/zoned/compare/areZonedEqualBy.js +8 -10
  1132. package/dist/zoned/compare/isAfterZoned.js +1 -1
  1133. package/dist/zoned/compare/isBeforeZoned.d.ts +2 -2
  1134. package/dist/zoned/compare/isBeforeZoned.js +3 -3
  1135. package/dist/zoned/compare/isBetweenZoned.js +1 -1
  1136. package/dist/zoned/compare/isInDaylightSaving.d.ts +2 -2
  1137. package/dist/zoned/compare/isInDaylightSaving.js +2 -2
  1138. package/dist/zoned/compare/isZonedBusinessDay.d.ts +7 -6
  1139. package/dist/zoned/compare/isZonedBusinessDay.js +7 -6
  1140. package/dist/zoned/compare/isZonedFuture.js +1 -1
  1141. package/dist/zoned/compare/isZonedPast.js +1 -1
  1142. package/dist/zoned/compare/isZonedRelativeDay.d.ts +2 -2
  1143. package/dist/zoned/compare/isZonedRelativeDay.js +3 -3
  1144. package/dist/zoned/compare/isZonedThisUnit.d.ts +7 -7
  1145. package/dist/zoned/compare/isZonedThisUnit.js +7 -7
  1146. package/dist/zoned/compare/isZonedWeekend.d.ts +5 -5
  1147. package/dist/zoned/compare/isZonedWeekend.js +5 -5
  1148. package/dist/zoned/convert/convertPlainDateTimeToZoned.d.ts +10 -7
  1149. package/dist/zoned/convert/convertPlainDateTimeToZoned.js +10 -7
  1150. package/dist/zoned/convert/convertZonedToCalendar.d.ts +5 -5
  1151. package/dist/zoned/convert/convertZonedToCalendar.js +5 -5
  1152. package/dist/zoned/convert/convertZonedToPlainDateTime.d.ts +3 -3
  1153. package/dist/zoned/convert/convertZonedToPlainDateTime.js +3 -3
  1154. package/dist/zoned/convert/convertZonedToZoned.d.ts +7 -3
  1155. package/dist/zoned/convert/convertZonedToZoned.js +7 -3
  1156. package/dist/zoned/format/formatCalendarZoned.d.ts +7 -6
  1157. package/dist/zoned/format/formatCalendarZoned.js +7 -6
  1158. package/dist/zoned/format/formatRelativeZoned.d.ts +3 -3
  1159. package/dist/zoned/format/formatRelativeZoned.js +6 -5
  1160. package/dist/zoned/format/formatRfc2822.d.ts +3 -3
  1161. package/dist/zoned/format/formatRfc2822.js +3 -3
  1162. package/dist/zoned/format/formatRfc3339.d.ts +2 -2
  1163. package/dist/zoned/format/formatRfc3339.js +2 -2
  1164. package/dist/zoned/format/formatTimeZoneName.d.ts +22 -18
  1165. package/dist/zoned/format/formatTimeZoneName.js +18 -13
  1166. package/dist/zoned/format/formatZonedDateTime.d.ts +10 -10
  1167. package/dist/zoned/format/formatZonedDateTime.js +12 -11
  1168. package/dist/zoned/format/formatZonedRange.d.ts +7 -7
  1169. package/dist/zoned/format/formatZonedRange.js +9 -8
  1170. package/dist/zoned/format/formatZonedToParts.d.ts +11 -11
  1171. package/dist/zoned/format/formatZonedToParts.js +13 -12
  1172. package/dist/zoned/get/getDstTransitions.d.ts +14 -12
  1173. package/dist/zoned/get/getDstTransitions.js +15 -10
  1174. package/dist/zoned/get/getSystemTimeZone.d.ts +5 -3
  1175. package/dist/zoned/get/getSystemTimeZone.js +7 -4
  1176. package/dist/zoned/get/getTimeZoneOffset.d.ts +15 -7
  1177. package/dist/zoned/get/getTimeZoneOffset.js +23 -10
  1178. package/dist/zoned/get/getTimeZones.d.ts +1 -1
  1179. package/dist/zoned/get/getTimeZones.js +1 -1
  1180. package/dist/zoned/get/getZonedDay.d.ts +3 -2
  1181. package/dist/zoned/get/getZonedDay.js +7 -8
  1182. package/dist/zoned/get/getZonedDayOfWeek.d.ts +3 -2
  1183. package/dist/zoned/get/getZonedDayOfWeek.js +7 -6
  1184. package/dist/zoned/get/getZonedHour.d.ts +3 -2
  1185. package/dist/zoned/get/getZonedHour.js +7 -8
  1186. package/dist/zoned/get/getZonedMicrosecond.d.ts +3 -2
  1187. package/dist/zoned/get/getZonedMicrosecond.js +7 -6
  1188. package/dist/zoned/get/getZonedMillisecond.d.ts +3 -2
  1189. package/dist/zoned/get/getZonedMillisecond.js +7 -8
  1190. package/dist/zoned/get/getZonedMinute.d.ts +3 -2
  1191. package/dist/zoned/get/getZonedMinute.js +7 -8
  1192. package/dist/zoned/get/getZonedMonth.d.ts +3 -2
  1193. package/dist/zoned/get/getZonedMonth.js +7 -8
  1194. package/dist/zoned/get/getZonedNanosecond.d.ts +3 -2
  1195. package/dist/zoned/get/getZonedNanosecond.js +7 -6
  1196. package/dist/zoned/get/getZonedNow.d.ts +9 -5
  1197. package/dist/zoned/get/getZonedNow.js +9 -5
  1198. package/dist/zoned/get/getZonedNowUnit.d.ts +7 -4
  1199. package/dist/zoned/get/getZonedNowUnit.js +11 -8
  1200. package/dist/zoned/get/getZonedSecond.d.ts +3 -2
  1201. package/dist/zoned/get/getZonedSecond.js +7 -8
  1202. package/dist/zoned/get/getZonedToday.d.ts +3 -2
  1203. package/dist/zoned/get/getZonedToday.js +7 -6
  1204. package/dist/zoned/get/getZonedWeekOfYear.d.ts +3 -2
  1205. package/dist/zoned/get/getZonedWeekOfYear.js +7 -6
  1206. package/dist/zoned/get/getZonedYear.d.ts +5 -2
  1207. package/dist/zoned/get/getZonedYear.js +10 -8
  1208. package/dist/zoned/index.d.ts +2 -1
  1209. package/dist/zoned/index.js +3 -2
  1210. package/dist/zoned/interval/intervalAbutsZoned.d.ts +2 -2
  1211. package/dist/zoned/interval/intervalAbutsZoned.js +3 -3
  1212. package/dist/zoned/interval/intervalContainsZoned.d.ts +1 -1
  1213. package/dist/zoned/interval/intervalContainsZoned.js +2 -2
  1214. package/dist/zoned/interval/intervalCountZoned.d.ts +4 -4
  1215. package/dist/zoned/interval/intervalCountZoned.js +5 -5
  1216. package/dist/zoned/interval/intervalDifferenceZoned.js +1 -1
  1217. package/dist/zoned/interval/intervalDivideEquallyZoned.d.ts +1 -1
  1218. package/dist/zoned/interval/intervalDivideEquallyZoned.js +2 -2
  1219. package/dist/zoned/interval/intervalEngulfsZoned.d.ts +1 -1
  1220. package/dist/zoned/interval/intervalEngulfsZoned.js +2 -2
  1221. package/dist/zoned/interval/intervalFromDurationZoned.d.ts +6 -6
  1222. package/dist/zoned/interval/intervalFromDurationZoned.js +7 -7
  1223. package/dist/zoned/interval/intervalIntersectionZoned.js +1 -1
  1224. package/dist/zoned/interval/intervalLengthZoned.d.ts +5 -5
  1225. package/dist/zoned/interval/intervalLengthZoned.js +5 -5
  1226. package/dist/zoned/interval/intervalOverlappingDaysZoned.d.ts +2 -2
  1227. package/dist/zoned/interval/intervalOverlappingDaysZoned.js +3 -3
  1228. package/dist/zoned/interval/intervalSplitAtZoned.js +14 -16
  1229. package/dist/zoned/interval/intervalUnionZoned.js +1 -1
  1230. package/dist/zoned/interval/intervalXorAllZoned.js +3 -3
  1231. package/dist/zoned/interval/intervalXorZoned.js +1 -1
  1232. package/dist/zoned/interval/intervalsOverlapZoned.d.ts +2 -2
  1233. package/dist/zoned/interval/intervalsOverlapZoned.js +3 -3
  1234. package/dist/zoned/interval/mergeIntervalsZoned.js +3 -3
  1235. package/dist/zoned/interval/splitIntervalByUnitZoned.d.ts +2 -1
  1236. package/dist/zoned/interval/splitIntervalByUnitZoned.js +3 -2
  1237. package/dist/zoned/interval/validate/isValidCalendarZonedInterval.d.ts +2 -2
  1238. package/dist/zoned/interval/validate/isValidCalendarZonedInterval.js +3 -3
  1239. package/dist/zoned/interval/validate/isValidZonedInterval.d.ts +1 -1
  1240. package/dist/zoned/interval/validate/isValidZonedInterval.js +2 -2
  1241. package/dist/zoned/map/mapZonedDatesInRange.js +1 -1
  1242. package/dist/zoned/map/mapZonedHoursInDay.d.ts +1 -1
  1243. package/dist/zoned/map/mapZonedHoursInDay.js +2 -2
  1244. package/dist/zoned/parse/getZonedOffset.d.ts +1 -1
  1245. package/dist/zoned/parse/getZonedOffset.js +1 -1
  1246. package/dist/zoned/parse/getZonedOffsetAs.d.ts +6 -6
  1247. package/dist/zoned/parse/getZonedOffsetAs.js +3 -3
  1248. package/dist/zoned/parse/parseDateTimeFromZoned.js +2 -2
  1249. package/dist/zoned/parse/parseRfc2822.js +1 -1
  1250. package/dist/zoned/parse/parseRfc3339.js +1 -1
  1251. package/dist/zoned/parse/parseUnitFromZoned.d.ts +5 -2
  1252. package/dist/zoned/parse/parseUnitFromZoned.js +5 -1
  1253. package/dist/zoned/parse/parseYearFromZoned.d.ts +4 -2
  1254. package/dist/zoned/parse/parseYearFromZoned.js +6 -3
  1255. package/dist/zoned/validate/hasDaylightSaving.d.ts +6 -4
  1256. package/dist/zoned/validate/hasDaylightSaving.js +16 -10
  1257. package/dist/zoned/validate/index.d.ts +2 -0
  1258. package/dist/zoned/validate/index.js +2 -0
  1259. package/dist/zoned/validate/isValidCalendarZonedDateTime.d.ts +8 -8
  1260. package/dist/zoned/validate/isValidCalendarZonedDateTime.js +8 -8
  1261. package/dist/zoned/validate/isValidRfc2822DateTime.d.ts +32 -0
  1262. package/dist/zoned/validate/isValidRfc2822DateTime.js +35 -0
  1263. package/dist/zoned/validate/isValidRfc3339DateTime.d.ts +31 -0
  1264. package/dist/zoned/validate/isValidRfc3339DateTime.js +34 -0
  1265. package/dist/zoned/validate/isValidTimeZone.d.ts +6 -2
  1266. package/dist/zoned/validate/isValidTimeZone.js +8 -19
  1267. package/dist/zoned/validate/isValidZonedDateTime.d.ts +7 -7
  1268. package/dist/zoned/validate/isValidZonedDateTime.js +9 -9
  1269. package/dist/zoned/validate/isValidZonedRange.d.ts +1 -1
  1270. package/dist/zoned/validate/isValidZonedRange.js +5 -5
  1271. package/package.json +103 -4
  1272. package/skills/gmt-arithmetic/SKILL.md +63 -17
  1273. package/skills/gmt-basics/SKILL.md +83 -21
  1274. package/skills/gmt-gnss/SKILL.md +92 -0
  1275. package/skills/gmt-integration/SKILL.md +58 -10
  1276. package/skills/gmt-intermodal/SKILL.md +189 -0
  1277. package/skills/gmt-timezone/SKILL.md +51 -169
  1278. package/skills/gmt-transport/SKILL.md +133 -0
  1279. package/skills/gmt-workforce/SKILL.md +84 -0
  1280. package/dist/internal/unixZonedDateTime.d.ts +0 -22
  1281. package/dist/internal/unixZonedDateTime.js +0 -32
  1282. package/dist/internal/utcZonedDateTime.d.ts +0 -19
  1283. package/dist/internal/utcZonedDateTime.js +0 -31
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * Return a zoned ISO 8601 datetime string with `amount` business days added to `value`.
3
3
  *
4
- * - Uses fixed ISO Monday–Friday business days (no locale awareness).
4
+ * - Uses a fixed Monday–Friday business week (no locale awareness). Saturday–Sunday is
5
+ * CLDR's world-default weekend; ISO 8601 defines no weekend.
5
6
  * - Has no calendar parameter, so no other weekend and no holidays. It is not the
6
7
  * zoned form of the plain `addBusinessDays`, which takes a `BusinessCalendar`.
7
8
  * - Saturday and Sunday are skipped during the count.
@@ -12,9 +13,9 @@
12
13
  * @param amount number of business days to add
13
14
  * @returns Zoned ISO 8601 datetime string after adding business days, or "" on invalid input
14
15
  *
15
- * @example addZonedBusinessDays("2024-03-15T14:30:00-04:00[America/New_York]", 1) // "2024-03-18T14:30:00-04:00[America/New_York]"
16
- * @example addZonedBusinessDays("2024-03-16T14:30:00-04:00[America/New_York]", 1) // "2024-03-18T14:30:00-04:00[America/New_York]"
17
- * @example addZonedBusinessDays("2024-03-15T14:30:00-04:00[America/New_York]", 0) // "2024-03-15T14:30:00-04:00[America/New_York]"
16
+ * @example addZonedBusinessDays("2024-03-15T14:30:00+09:00[Asia/Tokyo]", 1) // "2024-03-18T14:30:00+09:00[Asia/Tokyo]"
17
+ * @example addZonedBusinessDays("2024-03-16T14:30:00+09:00[Asia/Tokyo]", 1) // "2024-03-18T14:30:00+09:00[Asia/Tokyo]"
18
+ * @example addZonedBusinessDays("2024-03-15T14:30:00+09:00[Asia/Tokyo]", 0) // "2024-03-15T14:30:00+09:00[Asia/Tokyo]"
18
19
  * @example addZonedBusinessDays("invalid", 1) // ""
19
20
  */
20
21
  export declare function addZonedBusinessDays(value: string, amount: number): string;
@@ -4,7 +4,8 @@ import { isValidZonedDateTime } from "../validate/index.js";
4
4
  /**
5
5
  * Return a zoned ISO 8601 datetime string with `amount` business days added to `value`.
6
6
  *
7
- * - Uses fixed ISO Monday–Friday business days (no locale awareness).
7
+ * - Uses a fixed Monday–Friday business week (no locale awareness). Saturday–Sunday is
8
+ * CLDR's world-default weekend; ISO 8601 defines no weekend.
8
9
  * - Has no calendar parameter, so no other weekend and no holidays. It is not the
9
10
  * zoned form of the plain `addBusinessDays`, which takes a `BusinessCalendar`.
10
11
  * - Saturday and Sunday are skipped during the count.
@@ -15,9 +16,9 @@ import { isValidZonedDateTime } from "../validate/index.js";
15
16
  * @param amount number of business days to add
16
17
  * @returns Zoned ISO 8601 datetime string after adding business days, or "" on invalid input
17
18
  *
18
- * @example addZonedBusinessDays("2024-03-15T14:30:00-04:00[America/New_York]", 1) // "2024-03-18T14:30:00-04:00[America/New_York]"
19
- * @example addZonedBusinessDays("2024-03-16T14:30:00-04:00[America/New_York]", 1) // "2024-03-18T14:30:00-04:00[America/New_York]"
20
- * @example addZonedBusinessDays("2024-03-15T14:30:00-04:00[America/New_York]", 0) // "2024-03-15T14:30:00-04:00[America/New_York]"
19
+ * @example addZonedBusinessDays("2024-03-15T14:30:00+09:00[Asia/Tokyo]", 1) // "2024-03-18T14:30:00+09:00[Asia/Tokyo]"
20
+ * @example addZonedBusinessDays("2024-03-16T14:30:00+09:00[Asia/Tokyo]", 1) // "2024-03-18T14:30:00+09:00[Asia/Tokyo]"
21
+ * @example addZonedBusinessDays("2024-03-15T14:30:00+09:00[Asia/Tokyo]", 0) // "2024-03-15T14:30:00+09:00[Asia/Tokyo]"
21
22
  * @example addZonedBusinessDays("invalid", 1) // ""
22
23
  */
23
24
  export function addZonedBusinessDays(value, amount) {
@@ -1,4 +1,4 @@
1
- import { Temporal } from "@js-temporal/polyfill";
1
+ import { Temporal } from "../../internal/temporal.js";
2
2
  import { isValidZonedDateTime } from "../validate/index.js";
3
3
  import { zonedDateTimeFrom } from "../../internal/index.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, RoundingOptions } from "../../types/index.js";
3
3
  /**
4
4
  * Return the difference between two zoned datetimes measured in the given date-time unit.
@@ -47,15 +47,15 @@ import type { DateTimeDurationUnit, RoundingOptions } from "../../types/index.js
47
47
  * @returns numeric difference in the requested unit, or null on invalid input
48
48
  *
49
49
  * @example diffZoned("2024-02-28T14:30:00+00:00[UTC]", "2024-03-01T15:30:00+00:00[UTC]", "days") // 2
50
- * @example diffZoned("2024-03-09T12:00:00-05:00[America/New_York]", "2024-03-10T12:00:00-04:00[America/New_York]", "days") // 1 (a 23-hour local day)
51
- * @example diffZoned("2024-01-01T00:00:00-05:00[America/New_York]", "2024-01-03T00:00:00+01:00[Europe/Paris]", "days") // null (calendar unit across two time zones)
52
- * @example diffUtc(convertZonedToUtc("2024-03-09T12:00:00-05:00[America/New_York]"), convertZonedToUtc("2024-03-10T12:00:00-04:00[America/New_York]"), "days") // 0 (pre-1.16.0 UTC-clock result)
50
+ * @example diffZoned("2024-03-30T12:00:00+00:00[Europe/London]", "2024-03-31T12:00:00+01:00[Europe/London]", "days") // 1 (a 23-hour local day)
51
+ * @example diffZoned("2024-01-01T00:00:00+09:00[Asia/Tokyo]", "2024-01-03T00:00:00+01:00[Europe/Paris]", "days") // null (calendar unit across two time zones)
52
+ * @example diffUtc(convertZonedToUtc("2024-03-30T12:00:00+00:00[Europe/London]"), convertZonedToUtc("2024-03-31T12:00:00+01:00[Europe/London]"), "days") // 0 (pre-1.16.0 UTC-clock result)
53
53
  * @example diffZoned("2024-02-28T14:30:00+00:00[UTC]", "2024-03-01T15:30:00+00:00[UTC]", ["day", "hour"]) // { days: 2, hours: 1 } (singular names, plural keys)
54
54
  * @example diffZoned("invalid", "2024-03-01T15:30:00+00:00[UTC]", "days") // null
55
- * @example diffZoned("2023-09-16T00:00:00-04:00[America/New_York][u-ca=hebrew]", "2024-10-03T00:00:00-04:00[America/New_York][u-ca=hebrew]", "months") // 13 (Hebrew leap year 5784; the ISO equivalent is 12)
56
- * @example diffZoned("2023-09-16T00:00:00-04:00[America/New_York][u-ca=hebrew]", "2024-10-03T00:00:00-04:00[America/New_York][u-ca=islamic-tbla]", "hours") // null (different calendars)
57
- * @example diffZoned("2024-03-10T14:30:00-04:00[u-ca=hebrew][America/New_York]", "2024-03-11T14:30:00-04:00[America/New_York]", "days") // null (calendar before zone is not RFC 9557)
55
+ * @example diffZoned("2023-09-16T00:00:00-03:00[America/Sao_Paulo][u-ca=hebrew]", "2024-10-03T00:00:00-03:00[America/Sao_Paulo][u-ca=hebrew]", "months") // 13 (Hebrew leap year 5784; the ISO equivalent is 12)
56
+ * @example diffZoned("2023-09-16T00:00:00-03:00[America/Sao_Paulo][u-ca=hebrew]", "2024-10-03T00:00:00-03:00[America/Sao_Paulo][u-ca=islamic-tbla]", "hours") // null (different calendars)
57
+ * @example diffZoned("2024-03-10T14:30:00+05:30[u-ca=hebrew][Asia/Kolkata]", "2024-03-11T14:30:00+05:30[Asia/Kolkata]", "days") // null (calendar before zone is not RFC 9557)
58
58
  * @example diffZoned("2024-01-01T00:00:00+00:00[UTC]", "2025-03-01T00:00:00+00:00[UTC]", ["years", "days"]) // { years: 1, days: 59 } (P1Y2M; the 2 months are carried into days)
59
- * @example diffZoned("2024-02-09T12:00:00-05:00[America/New_York]", "2024-03-11T12:00:00-04:00[America/New_York]", ["months", "hours"]) // { months: 1, hours: 47 } (P1M2D; the 2 days include the 23-hour 2024-03-10)
59
+ * @example diffZoned("2024-02-29T12:00:00+00:00[Europe/London]", "2024-03-31T12:00:00+01:00[Europe/London]", ["months", "hours"]) // { months: 1, hours: 47 } (P1M2D; the 2 days include the 23-hour 2024-03-31)
60
60
  */
61
61
  export declare function diffZoned(value1: string, value2: string, units: DateTimeDurationUnit | Temporal.DateTimeUnit | Array<DateTimeDurationUnit | Temporal.DateTimeUnit>, options?: RoundingOptions<Temporal.DateTimeUnit>): number | Record<DateTimeDurationUnit, number> | null;
@@ -52,16 +52,16 @@ import { isOptionsArgument } from "../../internal/isObject.js";
52
52
  * @returns numeric difference in the requested unit, or null on invalid input
53
53
  *
54
54
  * @example diffZoned("2024-02-28T14:30:00+00:00[UTC]", "2024-03-01T15:30:00+00:00[UTC]", "days") // 2
55
- * @example diffZoned("2024-03-09T12:00:00-05:00[America/New_York]", "2024-03-10T12:00:00-04:00[America/New_York]", "days") // 1 (a 23-hour local day)
56
- * @example diffZoned("2024-01-01T00:00:00-05:00[America/New_York]", "2024-01-03T00:00:00+01:00[Europe/Paris]", "days") // null (calendar unit across two time zones)
57
- * @example diffUtc(convertZonedToUtc("2024-03-09T12:00:00-05:00[America/New_York]"), convertZonedToUtc("2024-03-10T12:00:00-04:00[America/New_York]"), "days") // 0 (pre-1.16.0 UTC-clock result)
55
+ * @example diffZoned("2024-03-30T12:00:00+00:00[Europe/London]", "2024-03-31T12:00:00+01:00[Europe/London]", "days") // 1 (a 23-hour local day)
56
+ * @example diffZoned("2024-01-01T00:00:00+09:00[Asia/Tokyo]", "2024-01-03T00:00:00+01:00[Europe/Paris]", "days") // null (calendar unit across two time zones)
57
+ * @example diffUtc(convertZonedToUtc("2024-03-30T12:00:00+00:00[Europe/London]"), convertZonedToUtc("2024-03-31T12:00:00+01:00[Europe/London]"), "days") // 0 (pre-1.16.0 UTC-clock result)
58
58
  * @example diffZoned("2024-02-28T14:30:00+00:00[UTC]", "2024-03-01T15:30:00+00:00[UTC]", ["day", "hour"]) // { days: 2, hours: 1 } (singular names, plural keys)
59
59
  * @example diffZoned("invalid", "2024-03-01T15:30:00+00:00[UTC]", "days") // null
60
- * @example diffZoned("2023-09-16T00:00:00-04:00[America/New_York][u-ca=hebrew]", "2024-10-03T00:00:00-04:00[America/New_York][u-ca=hebrew]", "months") // 13 (Hebrew leap year 5784; the ISO equivalent is 12)
61
- * @example diffZoned("2023-09-16T00:00:00-04:00[America/New_York][u-ca=hebrew]", "2024-10-03T00:00:00-04:00[America/New_York][u-ca=islamic-tbla]", "hours") // null (different calendars)
62
- * @example diffZoned("2024-03-10T14:30:00-04:00[u-ca=hebrew][America/New_York]", "2024-03-11T14:30:00-04:00[America/New_York]", "days") // null (calendar before zone is not RFC 9557)
60
+ * @example diffZoned("2023-09-16T00:00:00-03:00[America/Sao_Paulo][u-ca=hebrew]", "2024-10-03T00:00:00-03:00[America/Sao_Paulo][u-ca=hebrew]", "months") // 13 (Hebrew leap year 5784; the ISO equivalent is 12)
61
+ * @example diffZoned("2023-09-16T00:00:00-03:00[America/Sao_Paulo][u-ca=hebrew]", "2024-10-03T00:00:00-03:00[America/Sao_Paulo][u-ca=islamic-tbla]", "hours") // null (different calendars)
62
+ * @example diffZoned("2024-03-10T14:30:00+05:30[u-ca=hebrew][Asia/Kolkata]", "2024-03-11T14:30:00+05:30[Asia/Kolkata]", "days") // null (calendar before zone is not RFC 9557)
63
63
  * @example diffZoned("2024-01-01T00:00:00+00:00[UTC]", "2025-03-01T00:00:00+00:00[UTC]", ["years", "days"]) // { years: 1, days: 59 } (P1Y2M; the 2 months are carried into days)
64
- * @example diffZoned("2024-02-09T12:00:00-05:00[America/New_York]", "2024-03-11T12:00:00-04:00[America/New_York]", ["months", "hours"]) // { months: 1, hours: 47 } (P1M2D; the 2 days include the 23-hour 2024-03-10)
64
+ * @example diffZoned("2024-02-29T12:00:00+00:00[Europe/London]", "2024-03-31T12:00:00+01:00[Europe/London]", ["months", "hours"]) // { months: 1, hours: 47 } (P1M2D; the 2 days include the 23-hour 2024-03-31)
65
65
  */
66
66
  export function diffZoned(value1, value2, units, options) {
67
67
  try {
@@ -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
  /**
4
4
  * Return the difference between two zoned datetimes as an ISO 8601 duration string,
@@ -35,12 +35,12 @@ import type { DateTimeDurationUnit, DurationStringOptions, RoundingOptions } fro
35
35
  * @param options optional: how the difference is rounded and how the string is rendered; a non-object value (such as `null`) is invalid
36
36
  * @returns ISO 8601 duration string, or "" on invalid input
37
37
  *
38
- * @example diffZonedAsDuration("2024-03-09T12:00:00-05:00[America/New_York]", "2024-03-11T12:00:00-04:00[America/New_York]", "days") // "P2D" (wall-clock days; 47 elapsed hours)
38
+ * @example diffZonedAsDuration("2024-10-05T12:00:00+10:00[Australia/Sydney]", "2024-10-07T12:00:00+11:00[Australia/Sydney]", "days") // "P2D" (wall-clock days; 47 elapsed hours)
39
39
  * @example diffZonedAsDuration("2028-01-01T00:00:00+00:00[UTC]", "2028-01-01T00:00:00+00:00[UTC]", "hours") // "PT0S"
40
40
  * @example diffZonedAsDuration("2028-01-01T00:00:00+00:00[UTC]", "2028-01-02T13:00:00+13:00[Pacific/Apia]", "days") // "" (calendar unit across two time zones)
41
- * @example diffUtcAsDuration(convertZonedToUtc("2024-03-09T12:00:00-05:00[America/New_York]"), convertZonedToUtc("2024-03-11T12:00:00-04:00[America/New_York]"), "days") // "P1DT23H" (pre-1.16.0 UTC-clock result)
41
+ * @example diffUtcAsDuration(convertZonedToUtc("2024-10-05T12:00:00+10:00[Australia/Sydney]"), convertZonedToUtc("2024-10-07T12:00:00+11:00[Australia/Sydney]"), "days") // "P1DT23H" (pre-1.16.0 UTC-clock result)
42
42
  * @example diffZonedAsDuration("invalid", "2028-01-01T00:00:00+00:00[UTC]", "days") // ""
43
- * @example diffZonedAsDuration("2023-09-16T00:00:00-04:00[America/New_York][u-ca=hebrew]", "2024-10-03T00:00:00-04:00[America/New_York][u-ca=hebrew]", "months") // "P13M" (Hebrew leap year 5784)
44
- * @example diffZonedAsDuration("2024-03-10T14:30:00-04:00[u-ca=hebrew][America/New_York]", "2024-03-11T14:30:00-04:00[America/New_York]", "days") // "" (calendar before zone is not RFC 9557)
43
+ * @example diffZonedAsDuration("2023-09-16T00:00:00+02:00[Africa/Johannesburg][u-ca=hebrew]", "2024-10-03T00:00:00+02:00[Africa/Johannesburg][u-ca=hebrew]", "months") // "P13M" (Hebrew leap year 5784)
44
+ * @example diffZonedAsDuration("2024-03-10T14:30:00+09:00[u-ca=hebrew][Asia/Tokyo]", "2024-03-11T14:30:00+09:00[Asia/Tokyo]", "days") // "" (calendar before zone is not RFC 9557)
45
45
  */
46
46
  export declare function diffZonedAsDuration(value1: string, value2: string, unit: DateTimeDurationUnit | Temporal.DateTimeUnit, options?: RoundingOptions<Temporal.DateTimeUnit> & DurationStringOptions): string;
@@ -38,13 +38,13 @@ import { isOptionsArgument } from "../../internal/isObject.js";
38
38
  * @param options optional: how the difference is rounded and how the string is rendered; a non-object value (such as `null`) is invalid
39
39
  * @returns ISO 8601 duration string, or "" on invalid input
40
40
  *
41
- * @example diffZonedAsDuration("2024-03-09T12:00:00-05:00[America/New_York]", "2024-03-11T12:00:00-04:00[America/New_York]", "days") // "P2D" (wall-clock days; 47 elapsed hours)
41
+ * @example diffZonedAsDuration("2024-10-05T12:00:00+10:00[Australia/Sydney]", "2024-10-07T12:00:00+11:00[Australia/Sydney]", "days") // "P2D" (wall-clock days; 47 elapsed hours)
42
42
  * @example diffZonedAsDuration("2028-01-01T00:00:00+00:00[UTC]", "2028-01-01T00:00:00+00:00[UTC]", "hours") // "PT0S"
43
43
  * @example diffZonedAsDuration("2028-01-01T00:00:00+00:00[UTC]", "2028-01-02T13:00:00+13:00[Pacific/Apia]", "days") // "" (calendar unit across two time zones)
44
- * @example diffUtcAsDuration(convertZonedToUtc("2024-03-09T12:00:00-05:00[America/New_York]"), convertZonedToUtc("2024-03-11T12:00:00-04:00[America/New_York]"), "days") // "P1DT23H" (pre-1.16.0 UTC-clock result)
44
+ * @example diffUtcAsDuration(convertZonedToUtc("2024-10-05T12:00:00+10:00[Australia/Sydney]"), convertZonedToUtc("2024-10-07T12:00:00+11:00[Australia/Sydney]"), "days") // "P1DT23H" (pre-1.16.0 UTC-clock result)
45
45
  * @example diffZonedAsDuration("invalid", "2028-01-01T00:00:00+00:00[UTC]", "days") // ""
46
- * @example diffZonedAsDuration("2023-09-16T00:00:00-04:00[America/New_York][u-ca=hebrew]", "2024-10-03T00:00:00-04:00[America/New_York][u-ca=hebrew]", "months") // "P13M" (Hebrew leap year 5784)
47
- * @example diffZonedAsDuration("2024-03-10T14:30:00-04:00[u-ca=hebrew][America/New_York]", "2024-03-11T14:30:00-04:00[America/New_York]", "days") // "" (calendar before zone is not RFC 9557)
46
+ * @example diffZonedAsDuration("2023-09-16T00:00:00+02:00[Africa/Johannesburg][u-ca=hebrew]", "2024-10-03T00:00:00+02:00[Africa/Johannesburg][u-ca=hebrew]", "months") // "P13M" (Hebrew leap year 5784)
47
+ * @example diffZonedAsDuration("2024-03-10T14:30:00+09:00[u-ca=hebrew][Asia/Tokyo]", "2024-03-11T14:30:00+09:00[Asia/Tokyo]", "days") // "" (calendar before zone is not RFC 9557)
48
48
  */
49
49
  export function diffZonedAsDuration(value1, value2, unit, options) {
50
50
  // Temporal GetOptionsObject: options are an object or omitted; null and primitives are invalid.
@@ -1,10 +1,10 @@
1
- import type { Temporal } from "@js-temporal/polyfill";
1
+ import type { Temporal } from "../../internal/temporal.js";
2
2
  import type { DateTimeUnit, FractionalDigit } from "../../types/index.js";
3
3
  /**
4
4
  * Return the end of the specified date-time `unit` for a given zoned ISO 8601 datetime string.
5
5
  *
6
6
  * - Supports: "year", "month", "week", "day", "hour", "minute", "second", "millisecond", "microsecond", "nanosecond", each also in its plural form (`"days"`), as Temporal accepts.
7
- * - Returns the last instant of the real local `unit` containing `value` in its own zone — one nanosecond before the next bucket `floorToZone` would return — so the result is never before `value`. The second pass of New York's repeated fall-back hour ends at 01:59:59.999999999 −05:00, and `Australia/Lord_Howe`'s 90-minute fall-back hour ends in its new offset.
7
+ * - Returns the last instant of the real local `unit` containing `value` in its own zone — one nanosecond before the next bucket `floorToZone` would return — so the result is never before `value`. The second pass of London's repeated fall-back hour ends at 01:59:59.999999999 +00:00, and `Australia/Lord_Howe`'s 90-minute fall-back hour ends in its new offset.
8
8
  * - A transition that reopens the previous local date makes that stretch its own bucket: `America/Goose_Bay`'s 00:01 fall-back on 7 November 2010 re-entered 6 November for 59 minutes, so the day holding `2010-11-06T23:30:00-04:00` ends at 23:59:59.999999999 −04:00.
9
9
  * - A midnight repeated on the same date stays one day: `America/Havana`'s 25-hour 2024-11-03 ends at 23:59:59.999999999 −05:00 from either pass of its repeated first hour.
10
10
  * - Takes no `disambiguation` or `offset`: a boundary is always a real instant, as TC39's `startOfDay()`
@@ -25,7 +25,7 @@ import type { DateTimeUnit, FractionalDigit } from "../../types/index.js";
25
25
  * @example endOfZoned("2024-02-29T12:34:56+00:00[UTC]", "month", { fractionalSecondDigits: 3 }) // "2024-02-29T23:59:59.999+00:00[UTC]"
26
26
  * @example endOfZoned("2024-02-29T12:34:56+01:00[Europe/Berlin]", "hours") // "2024-02-29T12:59:59.999999999+01:00[Europe/Berlin]"
27
27
  * @example endOfZoned("invalid", "month") // ""
28
- * @example endOfZoned("2024-11-03T01:15:00-05:00[America/New_York]", "hour") // "2024-11-03T01:59:59.999999999-05:00[America/New_York]" (the second, repeated 1am is its own hour)
28
+ * @example endOfZoned("2024-10-27T01:15:00+00:00[Europe/London]", "hour") // "2024-10-27T01:59:59.999999999+00:00[Europe/London]" (the second, repeated 1am is its own hour)
29
29
  * @example endOfZoned("2024-11-03T00:30:00-04:00[America/Havana]", "day") // "2024-11-03T23:59:59.999999999-05:00[America/Havana]" (midnight repeated on the same date: one 25-hour day)
30
30
  */
31
31
  export declare function endOfZoned(value: string, unit: Temporal.SmallestUnit<DateTimeUnit>, optionsArg?: {
@@ -4,7 +4,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
4
4
  * Return the end of the specified date-time `unit` for a given zoned ISO 8601 datetime string.
5
5
  *
6
6
  * - Supports: "year", "month", "week", "day", "hour", "minute", "second", "millisecond", "microsecond", "nanosecond", each also in its plural form (`"days"`), as Temporal accepts.
7
- * - Returns the last instant of the real local `unit` containing `value` in its own zone — one nanosecond before the next bucket `floorToZone` would return — so the result is never before `value`. The second pass of New York's repeated fall-back hour ends at 01:59:59.999999999 −05:00, and `Australia/Lord_Howe`'s 90-minute fall-back hour ends in its new offset.
7
+ * - Returns the last instant of the real local `unit` containing `value` in its own zone — one nanosecond before the next bucket `floorToZone` would return — so the result is never before `value`. The second pass of London's repeated fall-back hour ends at 01:59:59.999999999 +00:00, and `Australia/Lord_Howe`'s 90-minute fall-back hour ends in its new offset.
8
8
  * - A transition that reopens the previous local date makes that stretch its own bucket: `America/Goose_Bay`'s 00:01 fall-back on 7 November 2010 re-entered 6 November for 59 minutes, so the day holding `2010-11-06T23:30:00-04:00` ends at 23:59:59.999999999 −04:00.
9
9
  * - A midnight repeated on the same date stays one day: `America/Havana`'s 25-hour 2024-11-03 ends at 23:59:59.999999999 −05:00 from either pass of its repeated first hour.
10
10
  * - Takes no `disambiguation` or `offset`: a boundary is always a real instant, as TC39's `startOfDay()`
@@ -25,7 +25,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
25
25
  * @example endOfZoned("2024-02-29T12:34:56+00:00[UTC]", "month", { fractionalSecondDigits: 3 }) // "2024-02-29T23:59:59.999+00:00[UTC]"
26
26
  * @example endOfZoned("2024-02-29T12:34:56+01:00[Europe/Berlin]", "hours") // "2024-02-29T12:59:59.999999999+01:00[Europe/Berlin]"
27
27
  * @example endOfZoned("invalid", "month") // ""
28
- * @example endOfZoned("2024-11-03T01:15:00-05:00[America/New_York]", "hour") // "2024-11-03T01:59:59.999999999-05:00[America/New_York]" (the second, repeated 1am is its own hour)
28
+ * @example endOfZoned("2024-10-27T01:15:00+00:00[Europe/London]", "hour") // "2024-10-27T01:59:59.999999999+00:00[Europe/London]" (the second, repeated 1am is its own hour)
29
29
  * @example endOfZoned("2024-11-03T00:30:00-04:00[America/Havana]", "day") // "2024-11-03T23:59:59.999999999-05:00[America/Havana]" (midnight repeated on the same date: one 25-hour day)
30
30
  */
31
31
  export function endOfZoned(value, unit, optionsArg) {
@@ -19,8 +19,8 @@
19
19
  * @returns number of hours in the day (usually 23, 24, or 25; fractional for
20
20
  * non-whole-hour DST shifts), or null on invalid input
21
21
  *
22
- * @example getHoursInZonedDay("2024-03-10T12:00:00-04:00[America/New_York]") // 23
23
- * @example getHoursInZonedDay("2024-11-03T12:00:00-05:00[America/New_York]") // 25
22
+ * @example getHoursInZonedDay("2024-03-31T12:00:00+01:00[Europe/London]") // 23
23
+ * @example getHoursInZonedDay("2024-04-07T12:00:00+10:00[Australia/Sydney]") // 25
24
24
  * @example getHoursInZonedDay("2024-02-29T12:00:00+00:00[UTC]") // 24
25
25
  * @example getHoursInZonedDay("2024-10-06T12:00:00+11:00[Australia/Lord_Howe]") // 23.5
26
26
  * @example getHoursInZonedDay("2024-09-08T12:00:00-03:00[America/Santiago]") // 23 (midnight skipped)
@@ -21,8 +21,8 @@ import { zonedDateTimeFrom, zonedHoursInDay } from "../../internal/index.js";
21
21
  * @returns number of hours in the day (usually 23, 24, or 25; fractional for
22
22
  * non-whole-hour DST shifts), or null on invalid input
23
23
  *
24
- * @example getHoursInZonedDay("2024-03-10T12:00:00-04:00[America/New_York]") // 23
25
- * @example getHoursInZonedDay("2024-11-03T12:00:00-05:00[America/New_York]") // 25
24
+ * @example getHoursInZonedDay("2024-03-31T12:00:00+01:00[Europe/London]") // 23
25
+ * @example getHoursInZonedDay("2024-04-07T12:00:00+10:00[Australia/Sydney]") // 25
26
26
  * @example getHoursInZonedDay("2024-02-29T12:00:00+00:00[UTC]") // 24
27
27
  * @example getHoursInZonedDay("2024-10-06T12:00:00+11:00[Australia/Lord_Howe]") // 23.5
28
28
  * @example getHoursInZonedDay("2024-09-08T12:00:00-03:00[America/Santiago]") // 23 (midnight skipped)
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * Return the locale-relative day-of-week index for a zoned `value`.
3
3
  *
4
- * - `0` = the locale's first day of week (e.g. Sunday for en-US, Monday for fr-FR).
4
+ * - `0` = the locale's first day of week (e.g. Monday for fr-FR, Sunday for pt-BR,
5
+ * Saturday for ar-EG).
5
6
  * - Resolves the locale's first day of week via `Intl.Locale.prototype.weekInfo`.
6
7
  * - Falls back to Monday if the runtime's `weekInfo` data doesn't resolve
7
8
  * a first day for the locale.
@@ -11,13 +12,13 @@
11
12
  * default locale, as ECMA-402 `ResolveLocale` requires.
12
13
  *
13
14
  * @param value zoned ISO 8601 datetime string
14
- * @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns null
15
+ * @param locale BCP 47 locale tag (e.g. "fr-FR", "pt-BR", "ar-EG"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns null
15
16
  * @returns locale-relative day-of-week index (0–6) or null on invalid input
16
17
  *
17
- * @example getLocaleZonedDayOfWeek("2024-02-25T12:00:00+00:00[UTC]", "en-US") // 0 (Sunday)
18
- * @example getLocaleZonedDayOfWeek("2024-02-26T12:00:00+00:00[UTC]", "en-US") // 1 (Monday)
18
+ * @example getLocaleZonedDayOfWeek("2024-02-25T12:00:00+00:00[UTC]", "pt-BR") // 0 (Sunday)
19
+ * @example getLocaleZonedDayOfWeek("2024-02-26T12:00:00+00:00[UTC]", "ja-JP") // 1 (Monday)
19
20
  * @example getLocaleZonedDayOfWeek("2024-02-26T12:00:00+00:00[UTC]", "fr-FR") // 0 (Monday)
20
- * @example getLocaleZonedDayOfWeek("invalid-zoned", "en-US") // null
21
+ * @example getLocaleZonedDayOfWeek("invalid-zoned", "en-GB") // null
21
22
  * @example getLocaleZonedDayOfWeek("2024-02-26T12:00:00+00:00[UTC]", "not-a-locale-!!") // null
22
23
  * @example getLocaleZonedDayOfWeek("2024-05-15T12:00:00+02:00[Europe/Berlin]", ["fr-FR", "en-US"]) // 2
23
24
  */
@@ -3,7 +3,8 @@ import { isValidZonedDateTime } from "../validate/index.js";
3
3
  /**
4
4
  * Return the locale-relative day-of-week index for a zoned `value`.
5
5
  *
6
- * - `0` = the locale's first day of week (e.g. Sunday for en-US, Monday for fr-FR).
6
+ * - `0` = the locale's first day of week (e.g. Monday for fr-FR, Sunday for pt-BR,
7
+ * Saturday for ar-EG).
7
8
  * - Resolves the locale's first day of week via `Intl.Locale.prototype.weekInfo`.
8
9
  * - Falls back to Monday if the runtime's `weekInfo` data doesn't resolve
9
10
  * a first day for the locale.
@@ -13,13 +14,13 @@ import { isValidZonedDateTime } from "../validate/index.js";
13
14
  * default locale, as ECMA-402 `ResolveLocale` requires.
14
15
  *
15
16
  * @param value zoned ISO 8601 datetime string
16
- * @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns null
17
+ * @param locale BCP 47 locale tag (e.g. "fr-FR", "pt-BR", "ar-EG"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns null
17
18
  * @returns locale-relative day-of-week index (0–6) or null on invalid input
18
19
  *
19
- * @example getLocaleZonedDayOfWeek("2024-02-25T12:00:00+00:00[UTC]", "en-US") // 0 (Sunday)
20
- * @example getLocaleZonedDayOfWeek("2024-02-26T12:00:00+00:00[UTC]", "en-US") // 1 (Monday)
20
+ * @example getLocaleZonedDayOfWeek("2024-02-25T12:00:00+00:00[UTC]", "pt-BR") // 0 (Sunday)
21
+ * @example getLocaleZonedDayOfWeek("2024-02-26T12:00:00+00:00[UTC]", "ja-JP") // 1 (Monday)
21
22
  * @example getLocaleZonedDayOfWeek("2024-02-26T12:00:00+00:00[UTC]", "fr-FR") // 0 (Monday)
22
- * @example getLocaleZonedDayOfWeek("invalid-zoned", "en-US") // null
23
+ * @example getLocaleZonedDayOfWeek("invalid-zoned", "en-GB") // null
23
24
  * @example getLocaleZonedDayOfWeek("2024-02-26T12:00:00+00:00[UTC]", "not-a-locale-!!") // null
24
25
  * @example getLocaleZonedDayOfWeek("2024-05-15T12:00:00+02:00[Europe/Berlin]", ["fr-FR", "en-US"]) // 2
25
26
  */
@@ -1,7 +1,7 @@
1
1
  import type { FractionalDigit } from "../../types/index.js";
2
2
  /**
3
3
  * Return the end of the week containing `value`, using `locale`'s first
4
- * day of week (e.g. en-US: week ends Saturday, fr-FR: week ends Sunday).
4
+ * day of week (e.g. fr-FR: week ends Sunday, ja-JP: week ends Saturday).
5
5
  *
6
6
  * - Resolves the locale's first day of week via
7
7
  * `Intl.Locale.prototype.weekInfo`.
@@ -22,14 +22,14 @@ import type { FractionalDigit } from "../../types/index.js";
22
22
  * default locale, as ECMA-402 `ResolveLocale` requires.
23
23
  *
24
24
  * @param value zoned ISO 8601 datetime string
25
- * @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns ""
25
+ * @param locale BCP 47 locale tag (e.g. "fr-FR", "ja-JP", "ar-EG"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns ""
26
26
  * @param optionsArg optional setting for the precision of the output string
27
27
  * @returns zoned ISO 8601 string for the end of `value`'s locale-relative week, or "" on invalid input
28
28
  *
29
- * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "en-US") // "2024-03-02T23:59:59.999999999+00:00[UTC]" (Saturday)
29
+ * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "ja-JP") // "2024-03-02T23:59:59.999999999+00:00[UTC]" (Saturday)
30
30
  * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "fr-FR") // "2024-03-03T23:59:59.999999999+00:00[UTC]" (Sunday)
31
- * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "en-US", { fractionalSecondDigits: 0 }) // "2024-03-02T23:59:59+00:00[UTC]" (the pre-1.16.0 string)
32
- * @example getLocaleZonedEndOfWeek("invalid", "en-US") // ""
31
+ * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "ja-JP", { fractionalSecondDigits: 0 }) // "2024-03-02T23:59:59+00:00[UTC]" (the pre-1.16.0 string)
32
+ * @example getLocaleZonedEndOfWeek("invalid", "de-DE") // ""
33
33
  * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "not-a-locale-!!") // ""
34
34
  * @example getLocaleZonedEndOfWeek("2024-05-15T12:00:00+02:00[Europe/Berlin]", ["fr-FR", "en-US"]) // "2024-05-19T23:59:59.999999999+02:00[Europe/Berlin]"
35
35
  */
@@ -4,7 +4,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
4
4
  import { optionOrDefault } from "../../internal/optionOrDefault.js";
5
5
  /**
6
6
  * Return the end of the week containing `value`, using `locale`'s first
7
- * day of week (e.g. en-US: week ends Saturday, fr-FR: week ends Sunday).
7
+ * day of week (e.g. fr-FR: week ends Sunday, ja-JP: week ends Saturday).
8
8
  *
9
9
  * - Resolves the locale's first day of week via
10
10
  * `Intl.Locale.prototype.weekInfo`.
@@ -25,14 +25,14 @@ import { optionOrDefault } from "../../internal/optionOrDefault.js";
25
25
  * default locale, as ECMA-402 `ResolveLocale` requires.
26
26
  *
27
27
  * @param value zoned ISO 8601 datetime string
28
- * @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns ""
28
+ * @param locale BCP 47 locale tag (e.g. "fr-FR", "ja-JP", "ar-EG"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns ""
29
29
  * @param optionsArg optional setting for the precision of the output string
30
30
  * @returns zoned ISO 8601 string for the end of `value`'s locale-relative week, or "" on invalid input
31
31
  *
32
- * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "en-US") // "2024-03-02T23:59:59.999999999+00:00[UTC]" (Saturday)
32
+ * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "ja-JP") // "2024-03-02T23:59:59.999999999+00:00[UTC]" (Saturday)
33
33
  * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "fr-FR") // "2024-03-03T23:59:59.999999999+00:00[UTC]" (Sunday)
34
- * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "en-US", { fractionalSecondDigits: 0 }) // "2024-03-02T23:59:59+00:00[UTC]" (the pre-1.16.0 string)
35
- * @example getLocaleZonedEndOfWeek("invalid", "en-US") // ""
34
+ * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "ja-JP", { fractionalSecondDigits: 0 }) // "2024-03-02T23:59:59+00:00[UTC]" (the pre-1.16.0 string)
35
+ * @example getLocaleZonedEndOfWeek("invalid", "de-DE") // ""
36
36
  * @example getLocaleZonedEndOfWeek("2024-02-29T12:00:00+00:00[UTC]", "not-a-locale-!!") // ""
37
37
  * @example getLocaleZonedEndOfWeek("2024-05-15T12:00:00+02:00[Europe/Berlin]", ["fr-FR", "en-US"]) // "2024-05-19T23:59:59.999999999+02:00[Europe/Berlin]"
38
38
  */
@@ -1,7 +1,7 @@
1
1
  import type { FractionalDigit } from "../../types/index.js";
2
2
  /**
3
3
  * Return the start of the week containing `value`, using `locale`'s
4
- * first day of week (e.g. en-US: Sunday, fr-FR: Monday).
4
+ * first day of week (e.g. fr-FR: Monday, hi-IN: Sunday).
5
5
  *
6
6
  * - Resolves the locale's first day of week via
7
7
  * `Intl.Locale.prototype.weekInfo`.
@@ -20,16 +20,16 @@ import type { FractionalDigit } from "../../types/index.js";
20
20
  * default locale, as ECMA-402 `ResolveLocale` requires.
21
21
  *
22
22
  * @param value zoned ISO 8601 datetime string
23
- * @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns ""
23
+ * @param locale BCP 47 locale tag (e.g. "fr-FR", "hi-IN", "ar-EG"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns ""
24
24
  * @param optionsArg optional setting for the precision of the output string
25
25
  * @returns zoned ISO 8601 string for the start of `value`'s locale-relative week, or "" on invalid input
26
26
  *
27
- * @example getLocaleZonedStartOfWeek("2024-02-29T12:00:00+00:00[UTC]", "en-US") // "2024-02-25T00:00:00+00:00[UTC]" (Sunday)
27
+ * @example getLocaleZonedStartOfWeek("2024-02-29T12:00:00+00:00[UTC]", "hi-IN") // "2024-02-25T00:00:00+00:00[UTC]" (Sunday)
28
28
  * @example getLocaleZonedStartOfWeek("2024-02-29T12:00:00+00:00[UTC]", "fr-FR") // "2024-02-26T00:00:00+00:00[UTC]" (Monday)
29
- * @example getLocaleZonedStartOfWeek("2024-09-11T12:00:00-03:00[America/Santiago]", "en-US") // "2024-09-08T01:00:00-03:00[America/Santiago]" (that Sunday's midnight was skipped)
30
- * @example getLocaleZonedStartOfWeek("invalid", "en-US") // ""
29
+ * @example getLocaleZonedStartOfWeek("2024-09-11T12:00:00-03:00[America/Santiago]", "pt-BR") // "2024-09-08T01:00:00-03:00[America/Santiago]" (that Sunday's midnight was skipped)
30
+ * @example getLocaleZonedStartOfWeek("invalid", "ja-JP") // ""
31
31
  * @example getLocaleZonedStartOfWeek("2024-02-29T12:00:00+00:00[UTC]", "not-a-locale-!!") // ""
32
- * @example getLocaleZonedStartOfWeek("2024-05-15T12:00:00+02:00[Europe/Berlin]", ["en-US", "fr-FR"]) // "2024-05-12T00:00:00+02:00[Europe/Berlin]"
32
+ * @example getLocaleZonedStartOfWeek("2024-05-15T12:00:00+02:00[Europe/Berlin]", ["hi-IN", "fr-FR"]) // "2024-05-12T00:00:00+02:00[Europe/Berlin]"
33
33
  */
34
34
  export declare function getLocaleZonedStartOfWeek(value: string, locale: string | string[], optionsArg?: {
35
35
  /**
@@ -4,7 +4,7 @@ import { isOptionsArgument } from "../../internal/isObject.js";
4
4
  import { optionOrDefault } from "../../internal/optionOrDefault.js";
5
5
  /**
6
6
  * Return the start of the week containing `value`, using `locale`'s
7
- * first day of week (e.g. en-US: Sunday, fr-FR: Monday).
7
+ * first day of week (e.g. fr-FR: Monday, hi-IN: Sunday).
8
8
  *
9
9
  * - Resolves the locale's first day of week via
10
10
  * `Intl.Locale.prototype.weekInfo`.
@@ -23,16 +23,16 @@ import { optionOrDefault } from "../../internal/optionOrDefault.js";
23
23
  * default locale, as ECMA-402 `ResolveLocale` requires.
24
24
  *
25
25
  * @param value zoned ISO 8601 datetime string
26
- * @param locale BCP 47 locale tag (e.g. "en-US", "fr-FR"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns ""
26
+ * @param locale BCP 47 locale tag (e.g. "fr-FR", "hi-IN", "ar-EG"), or a preference list of tags (ECMA-402; the first with locale data is read). Required: omitted, or an empty list (which ECMA-402 would resolve to the host default), returns ""
27
27
  * @param optionsArg optional setting for the precision of the output string
28
28
  * @returns zoned ISO 8601 string for the start of `value`'s locale-relative week, or "" on invalid input
29
29
  *
30
- * @example getLocaleZonedStartOfWeek("2024-02-29T12:00:00+00:00[UTC]", "en-US") // "2024-02-25T00:00:00+00:00[UTC]" (Sunday)
30
+ * @example getLocaleZonedStartOfWeek("2024-02-29T12:00:00+00:00[UTC]", "hi-IN") // "2024-02-25T00:00:00+00:00[UTC]" (Sunday)
31
31
  * @example getLocaleZonedStartOfWeek("2024-02-29T12:00:00+00:00[UTC]", "fr-FR") // "2024-02-26T00:00:00+00:00[UTC]" (Monday)
32
- * @example getLocaleZonedStartOfWeek("2024-09-11T12:00:00-03:00[America/Santiago]", "en-US") // "2024-09-08T01:00:00-03:00[America/Santiago]" (that Sunday's midnight was skipped)
33
- * @example getLocaleZonedStartOfWeek("invalid", "en-US") // ""
32
+ * @example getLocaleZonedStartOfWeek("2024-09-11T12:00:00-03:00[America/Santiago]", "pt-BR") // "2024-09-08T01:00:00-03:00[America/Santiago]" (that Sunday's midnight was skipped)
33
+ * @example getLocaleZonedStartOfWeek("invalid", "ja-JP") // ""
34
34
  * @example getLocaleZonedStartOfWeek("2024-02-29T12:00:00+00:00[UTC]", "not-a-locale-!!") // ""
35
- * @example getLocaleZonedStartOfWeek("2024-05-15T12:00:00+02:00[Europe/Berlin]", ["en-US", "fr-FR"]) // "2024-05-12T00:00:00+02:00[Europe/Berlin]"
35
+ * @example getLocaleZonedStartOfWeek("2024-05-15T12:00:00+02:00[Europe/Berlin]", ["hi-IN", "fr-FR"]) // "2024-05-12T00:00:00+02:00[Europe/Berlin]"
36
36
  */
37
37
  export function getLocaleZonedStartOfWeek(value, locale, optionsArg) {
38
38
  try {
@@ -7,8 +7,8 @@
7
7
  * @param zonedDateTimes Array of ISO ZonedDateTime strings
8
8
  * @returns The latest zoned datetime string, or null on invalid input
9
9
  *
10
- * @example maxZoned(["2024-03-10T12:00:00[America/New_York]", "2024-03-15T12:00:00[America/New_York]"]) // "2024-03-15T12:00:00-04:00[America/New_York]"
11
- * @example maxZoned(["invalid", "2024-03-15T12:00:00[America/New_York]"]) // "2024-03-15T12:00:00-04:00[America/New_York]"
10
+ * @example maxZoned(["2024-03-10T12:00:00[Asia/Kolkata]", "2024-03-15T12:00:00[Asia/Kolkata]"]) // "2024-03-15T12:00:00+05:30[Asia/Kolkata]"
11
+ * @example maxZoned(["invalid", "2024-03-15T12:00:00[Asia/Kolkata]"]) // "2024-03-15T12:00:00+05:30[Asia/Kolkata]"
12
12
  * @example maxZoned(["invalid", "also invalid"]) // null
13
13
  * @example maxZoned([]) // null
14
14
  */
@@ -1,4 +1,4 @@
1
- import { Temporal } from "@js-temporal/polyfill";
1
+ import { Temporal } from "../../internal/temporal.js";
2
2
  import { isValidZonedDateTime } from "../validate/index.js";
3
3
  import { zonedDateTimeFrom } from "../../internal/index.js";
4
4
  /**
@@ -10,8 +10,8 @@ import { zonedDateTimeFrom } from "../../internal/index.js";
10
10
  * @param zonedDateTimes Array of ISO ZonedDateTime strings
11
11
  * @returns The latest zoned datetime string, or null on invalid input
12
12
  *
13
- * @example maxZoned(["2024-03-10T12:00:00[America/New_York]", "2024-03-15T12:00:00[America/New_York]"]) // "2024-03-15T12:00:00-04:00[America/New_York]"
14
- * @example maxZoned(["invalid", "2024-03-15T12:00:00[America/New_York]"]) // "2024-03-15T12:00:00-04:00[America/New_York]"
13
+ * @example maxZoned(["2024-03-10T12:00:00[Asia/Kolkata]", "2024-03-15T12:00:00[Asia/Kolkata]"]) // "2024-03-15T12:00:00+05:30[Asia/Kolkata]"
14
+ * @example maxZoned(["invalid", "2024-03-15T12:00:00[Asia/Kolkata]"]) // "2024-03-15T12:00:00+05:30[Asia/Kolkata]"
15
15
  * @example maxZoned(["invalid", "also invalid"]) // null
16
16
  * @example maxZoned([]) // null
17
17
  */
@@ -7,8 +7,8 @@
7
7
  * @param zonedDateTimes Array of ISO ZonedDateTime strings
8
8
  * @returns The earliest zoned datetime string, or null on invalid input
9
9
  *
10
- * @example minZoned(["2024-03-10T12:00:00[America/New_York]", "2024-03-15T12:00:00[America/New_York]"]) // "2024-03-10T12:00:00-04:00[America/New_York]"
11
- * @example minZoned(["invalid", "2024-03-15T12:00:00[America/New_York]"]) // "2024-03-15T12:00:00-04:00[America/New_York]"
10
+ * @example minZoned(["2024-03-10T12:00:00[America/Sao_Paulo]", "2024-03-15T12:00:00[America/Sao_Paulo]"]) // "2024-03-10T12:00:00-03:00[America/Sao_Paulo]"
11
+ * @example minZoned(["invalid", "2024-03-15T12:00:00[America/Sao_Paulo]"]) // "2024-03-15T12:00:00-03:00[America/Sao_Paulo]"
12
12
  * @example minZoned(["invalid", "also invalid"]) // null
13
13
  * @example minZoned([]) // null
14
14
  */
@@ -1,4 +1,4 @@
1
- import { Temporal } from "@js-temporal/polyfill";
1
+ import { Temporal } from "../../internal/temporal.js";
2
2
  import { isValidZonedDateTime } from "../validate/index.js";
3
3
  import { zonedDateTimeFrom } from "../../internal/index.js";
4
4
  /**
@@ -10,8 +10,8 @@ import { zonedDateTimeFrom } from "../../internal/index.js";
10
10
  * @param zonedDateTimes Array of ISO ZonedDateTime strings
11
11
  * @returns The earliest zoned datetime string, or null on invalid input
12
12
  *
13
- * @example minZoned(["2024-03-10T12:00:00[America/New_York]", "2024-03-15T12:00:00[America/New_York]"]) // "2024-03-10T12:00:00-04:00[America/New_York]"
14
- * @example minZoned(["invalid", "2024-03-15T12:00:00[America/New_York]"]) // "2024-03-15T12:00:00-04:00[America/New_York]"
13
+ * @example minZoned(["2024-03-10T12:00:00[America/Sao_Paulo]", "2024-03-15T12:00:00[America/Sao_Paulo]"]) // "2024-03-10T12:00:00-03:00[America/Sao_Paulo]"
14
+ * @example minZoned(["invalid", "2024-03-15T12:00:00[America/Sao_Paulo]"]) // "2024-03-15T12:00:00-03:00[America/Sao_Paulo]"
15
15
  * @example minZoned(["invalid", "also invalid"]) // null
16
16
  * @example minZoned([]) // null
17
17
  */
@@ -1,4 +1,4 @@
1
- import { Temporal } from "@js-temporal/polyfill";
1
+ import { Temporal } from "../../internal/temporal.js";
2
2
  /**
3
3
  * Round an ISO 8601 zoned datetime string to the specified unit.
4
4
  *
@@ -11,20 +11,22 @@ import { Temporal } from "@js-temporal/polyfill";
11
11
  * coarser, 3 digits for "millisecond", 6 for "microsecond" and 9 for "nanosecond", so the
12
12
  * result never hides the precision the unit asked for.
13
13
  * - Note: Temporal's `ZonedDateTime.prototype.round` takes no `disambiguation` or `offset` options.
14
- * - Follows TC39 `ZonedDateTime.round`, which rounds the wall clock and re-resolves it in the
15
- * zone. Across a transition the result can land after the input or on another local date —
16
- * `Pacific/Chatham` "2024-09-29T03:50:00+13:45" truncated to the hour gives 04:00+13:45, 15
17
- * minutes later. Use `floorToZone` for a boundary that never exceeds the instant.
14
+ * - Follows TC39 `ZonedDateTime.round`. Below the day it rounds the wall clock and re-resolves it
15
+ * in the zone, so across a transition the result can land after the input or on another local
16
+ * date — `Pacific/Chatham` "2024-09-29T03:50:00+13:45" truncated to the hour gives 04:00+13:45,
17
+ * 15 minutes later. To the day it rounds between the start of the input's date and the start of
18
+ * the next, so `"floor"` and `"trunc"` never leave the input's date, even when a clock change
19
+ * makes that date start twice. Use `floorToZone` for a boundary that never exceeds the instant.
18
20
  *
19
21
  * @param value ISO 8601 zoned datetime string
20
22
  * @param options the unit to round to, with an optional increment and rounding mode
21
23
  * @returns Rounded ISO 8601 zoned datetime string, or "" on invalid input
22
24
  *
23
- * @example roundZoned("2024-06-15T12:34:56-04:00[America/New_York]", { smallestUnit: "hour" }) // "2024-06-15T13:00:00-04:00[America/New_York]"
24
- * @example roundZoned("2024-06-15T12:34:56-04:00[America/New_York]", { smallestUnit: "minute", roundingIncrement: 15 }) // "2024-06-15T12:30:00-04:00[America/New_York]"
25
+ * @example roundZoned("2024-06-15T12:34:56+02:00[Africa/Johannesburg]", { smallestUnit: "hour" }) // "2024-06-15T13:00:00+02:00[Africa/Johannesburg]"
26
+ * @example roundZoned("2024-06-15T12:34:56+02:00[Africa/Johannesburg]", { smallestUnit: "minute", roundingIncrement: 15 }) // "2024-06-15T12:30:00+02:00[Africa/Johannesburg]"
25
27
  * @example roundZoned("2024-09-29T03:50:00+13:45[Pacific/Chatham]", { smallestUnit: "hour", roundingMode: "trunc" }) // "2024-09-29T04:00:00+13:45[Pacific/Chatham]" (after the input — TC39 wall-clock rounding)
26
- * @example roundZoned("2024-06-15T12:34:56-04:00[America/New_York]", { smallestUnit: "hours" }) // "2024-06-15T13:00:00-04:00[America/New_York]" (plural unit name)
27
- * @example roundZoned("2024-06-15T12:34:56.123456789-04:00[America/New_York]", { smallestUnit: "millisecond" }) // "2024-06-15T12:34:56.123-04:00[America/New_York]" (precision follows the unit)
28
+ * @example roundZoned("2024-06-15T12:34:56+02:00[Africa/Johannesburg]", { smallestUnit: "hours" }) // "2024-06-15T13:00:00+02:00[Africa/Johannesburg]" (plural unit name)
29
+ * @example roundZoned("2024-06-15T12:34:56.123456789+02:00[Africa/Johannesburg]", { smallestUnit: "millisecond" }) // "2024-06-15T12:34:56.123+02:00[Africa/Johannesburg]" (precision follows the unit)
28
30
  * @example roundZoned("invalid", { smallestUnit: "hour" }) // ""
29
31
  */
30
32
  export declare function roundZoned(value: string, options: {
@@ -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 { defaultFractionalDigits, isObject, resolveDateTimeUnit, roundZonedDateTime, zonedDateTimeFrom, } from "../../internal/index.js";
4
4
  import { isValidZonedDateTime } from "../validate/index.js";
5
5
  const ZONED_ROUNDING_UNITS = [
@@ -26,20 +26,22 @@ function isZonedRoundingUnit(unit) {
26
26
  * coarser, 3 digits for "millisecond", 6 for "microsecond" and 9 for "nanosecond", so the
27
27
  * result never hides the precision the unit asked for.
28
28
  * - Note: Temporal's `ZonedDateTime.prototype.round` takes no `disambiguation` or `offset` options.
29
- * - Follows TC39 `ZonedDateTime.round`, which rounds the wall clock and re-resolves it in the
30
- * zone. Across a transition the result can land after the input or on another local date —
31
- * `Pacific/Chatham` "2024-09-29T03:50:00+13:45" truncated to the hour gives 04:00+13:45, 15
32
- * minutes later. Use `floorToZone` for a boundary that never exceeds the instant.
29
+ * - Follows TC39 `ZonedDateTime.round`. Below the day it rounds the wall clock and re-resolves it
30
+ * in the zone, so across a transition the result can land after the input or on another local
31
+ * date — `Pacific/Chatham` "2024-09-29T03:50:00+13:45" truncated to the hour gives 04:00+13:45,
32
+ * 15 minutes later. To the day it rounds between the start of the input's date and the start of
33
+ * the next, so `"floor"` and `"trunc"` never leave the input's date, even when a clock change
34
+ * makes that date start twice. Use `floorToZone` for a boundary that never exceeds the instant.
33
35
  *
34
36
  * @param value ISO 8601 zoned datetime string
35
37
  * @param options the unit to round to, with an optional increment and rounding mode
36
38
  * @returns Rounded ISO 8601 zoned datetime string, or "" on invalid input
37
39
  *
38
- * @example roundZoned("2024-06-15T12:34:56-04:00[America/New_York]", { smallestUnit: "hour" }) // "2024-06-15T13:00:00-04:00[America/New_York]"
39
- * @example roundZoned("2024-06-15T12:34:56-04:00[America/New_York]", { smallestUnit: "minute", roundingIncrement: 15 }) // "2024-06-15T12:30:00-04:00[America/New_York]"
40
+ * @example roundZoned("2024-06-15T12:34:56+02:00[Africa/Johannesburg]", { smallestUnit: "hour" }) // "2024-06-15T13:00:00+02:00[Africa/Johannesburg]"
41
+ * @example roundZoned("2024-06-15T12:34:56+02:00[Africa/Johannesburg]", { smallestUnit: "minute", roundingIncrement: 15 }) // "2024-06-15T12:30:00+02:00[Africa/Johannesburg]"
40
42
  * @example roundZoned("2024-09-29T03:50:00+13:45[Pacific/Chatham]", { smallestUnit: "hour", roundingMode: "trunc" }) // "2024-09-29T04:00:00+13:45[Pacific/Chatham]" (after the input — TC39 wall-clock rounding)
41
- * @example roundZoned("2024-06-15T12:34:56-04:00[America/New_York]", { smallestUnit: "hours" }) // "2024-06-15T13:00:00-04:00[America/New_York]" (plural unit name)
42
- * @example roundZoned("2024-06-15T12:34:56.123456789-04:00[America/New_York]", { smallestUnit: "millisecond" }) // "2024-06-15T12:34:56.123-04:00[America/New_York]" (precision follows the unit)
43
+ * @example roundZoned("2024-06-15T12:34:56+02:00[Africa/Johannesburg]", { smallestUnit: "hours" }) // "2024-06-15T13:00:00+02:00[Africa/Johannesburg]" (plural unit name)
44
+ * @example roundZoned("2024-06-15T12:34:56.123456789+02:00[Africa/Johannesburg]", { smallestUnit: "millisecond" }) // "2024-06-15T12:34:56.123+02:00[Africa/Johannesburg]" (precision follows the unit)
43
45
  * @example roundZoned("invalid", { smallestUnit: "hour" }) // ""
44
46
  */
45
47
  export function roundZoned(value, options) {