@northguild/gmt 1.14.2

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 (1286) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1626 -0
  3. package/dist/duration/calculate/absDuration.d.ts +20 -0
  4. package/dist/duration/calculate/absDuration.js +32 -0
  5. package/dist/duration/calculate/addDuration.d.ts +20 -0
  6. package/dist/duration/calculate/addDuration.js +32 -0
  7. package/dist/duration/calculate/durationAs.d.ts +38 -0
  8. package/dist/duration/calculate/durationAs.js +52 -0
  9. package/dist/duration/calculate/getDurationSign.d.ts +22 -0
  10. package/dist/duration/calculate/getDurationSign.js +34 -0
  11. package/dist/duration/calculate/getDurationUnit.d.ts +31 -0
  12. package/dist/duration/calculate/getDurationUnit.js +43 -0
  13. package/dist/duration/calculate/index.d.ts +7 -0
  14. package/dist/duration/calculate/index.js +7 -0
  15. package/dist/duration/calculate/negateDuration.d.ts +20 -0
  16. package/dist/duration/calculate/negateDuration.js +32 -0
  17. package/dist/duration/calculate/subtractDuration.d.ts +21 -0
  18. package/dist/duration/calculate/subtractDuration.js +33 -0
  19. package/dist/duration/compare/compareDurations.d.ts +37 -0
  20. package/dist/duration/compare/compareDurations.js +49 -0
  21. package/dist/duration/compare/index.d.ts +1 -0
  22. package/dist/duration/compare/index.js +1 -0
  23. package/dist/duration/format/formatDuration.d.ts +37 -0
  24. package/dist/duration/format/formatDuration.js +93 -0
  25. package/dist/duration/format/index.d.ts +1 -0
  26. package/dist/duration/format/index.js +1 -0
  27. package/dist/duration/index.d.ts +6 -0
  28. package/dist/duration/index.js +6 -0
  29. package/dist/duration/normalize/index.d.ts +1 -0
  30. package/dist/duration/normalize/index.js +1 -0
  31. package/dist/duration/normalize/normalizeDuration.d.ts +36 -0
  32. package/dist/duration/normalize/normalizeDuration.js +49 -0
  33. package/dist/duration/parse/index.d.ts +1 -0
  34. package/dist/duration/parse/index.js +1 -0
  35. package/dist/duration/parse/parseDuration.d.ts +24 -0
  36. package/dist/duration/parse/parseDuration.js +35 -0
  37. package/dist/duration/validate/index.d.ts +1 -0
  38. package/dist/duration/validate/index.js +1 -0
  39. package/dist/duration/validate/isValidDuration.d.ts +16 -0
  40. package/dist/duration/validate/isValidDuration.js +28 -0
  41. package/dist/index.d.ts +7 -0
  42. package/dist/index.js +7 -0
  43. package/dist/internal/adjustZonedBusinessDays.d.ts +1 -0
  44. package/dist/internal/adjustZonedBusinessDays.js +16 -0
  45. package/dist/internal/advanceBusinessDays.d.ts +2 -0
  46. package/dist/internal/advanceBusinessDays.js +15 -0
  47. package/dist/internal/advanceToWeekday.d.ts +12 -0
  48. package/dist/internal/advanceToWeekday.js +24 -0
  49. package/dist/internal/calendarDatePairPolicy.d.ts +25 -0
  50. package/dist/internal/calendarDatePairPolicy.js +33 -0
  51. package/dist/internal/calendarDateString.d.ts +65 -0
  52. package/dist/internal/calendarDateString.js +103 -0
  53. package/dist/internal/calendarSystemIds.d.ts +4 -0
  54. package/dist/internal/calendarSystemIds.js +55 -0
  55. package/dist/internal/calendarValueOfDate.d.ts +22 -0
  56. package/dist/internal/calendarValueOfDate.js +41 -0
  57. package/dist/internal/calendarValueOfZoned.d.ts +38 -0
  58. package/dist/internal/calendarValueOfZoned.js +58 -0
  59. package/dist/internal/calendarZonedPairPolicy.d.ts +31 -0
  60. package/dist/internal/calendarZonedPairPolicy.js +39 -0
  61. package/dist/internal/calendarZonedString.d.ts +77 -0
  62. package/dist/internal/calendarZonedString.js +120 -0
  63. package/dist/internal/cycleFieldValue.d.ts +30 -0
  64. package/dist/internal/cycleFieldValue.js +48 -0
  65. package/dist/internal/dateCycleFieldBounds.d.ts +25 -0
  66. package/dist/internal/dateCycleFieldBounds.js +27 -0
  67. package/dist/internal/dateTimeUnitHelpers.d.ts +27 -0
  68. package/dist/internal/dateTimeUnitHelpers.js +50 -0
  69. package/dist/internal/dateUnitHelpers.d.ts +23 -0
  70. package/dist/internal/dateUnitHelpers.js +46 -0
  71. package/dist/internal/durationUntilString.d.ts +17 -0
  72. package/dist/internal/durationUntilString.js +13 -0
  73. package/dist/internal/englishCalendarNames.d.ts +2 -0
  74. package/dist/internal/englishCalendarNames.js +30 -0
  75. package/dist/internal/ethiopicFamilyCalendar.d.ts +47 -0
  76. package/dist/internal/ethiopicFamilyCalendar.js +136 -0
  77. package/dist/internal/formatDateInCalendar.d.ts +47 -0
  78. package/dist/internal/formatDateInCalendar.js +54 -0
  79. package/dist/internal/getLocaleFirstDayOfWeek.d.ts +11 -0
  80. package/dist/internal/getLocaleFirstDayOfWeek.js +26 -0
  81. package/dist/internal/getLocaleMinimalDaysInFirstWeek.d.ts +20 -0
  82. package/dist/internal/getLocaleMinimalDaysInFirstWeek.js +31 -0
  83. package/dist/internal/getLocaleWeekYearBounds.d.ts +19 -0
  84. package/dist/internal/getLocaleWeekYearBounds.js +44 -0
  85. package/dist/internal/getLocaleWeekendDays.d.ts +22 -0
  86. package/dist/internal/getLocaleWeekendDays.js +20 -0
  87. package/dist/internal/hasCalendarAnnotation.d.ts +27 -0
  88. package/dist/internal/hasCalendarAnnotation.js +29 -0
  89. package/dist/internal/index.d.ts +34 -0
  90. package/dist/internal/index.js +34 -0
  91. package/dist/internal/intervalCountHelpers.d.ts +26 -0
  92. package/dist/internal/intervalCountHelpers.js +62 -0
  93. package/dist/internal/isValidAmount.d.ts +9 -0
  94. package/dist/internal/isValidAmount.js +11 -0
  95. package/dist/internal/isValidDayOfWeek.d.ts +11 -0
  96. package/dist/internal/isValidDayOfWeek.js +13 -0
  97. package/dist/internal/joinDateTimeConnector.d.ts +37 -0
  98. package/dist/internal/joinDateTimeConnector.js +85 -0
  99. package/dist/internal/monthGridWeekRow.d.ts +12 -0
  100. package/dist/internal/monthGridWeekRow.js +14 -0
  101. package/dist/internal/normalizeDateTime.d.ts +14 -0
  102. package/dist/internal/normalizeDateTime.js +34 -0
  103. package/dist/internal/normalizeTimeZone.d.ts +14 -0
  104. package/dist/internal/normalizeTimeZone.js +22 -0
  105. package/dist/internal/patternToken.d.ts +45 -0
  106. package/dist/internal/patternToken.js +385 -0
  107. package/dist/internal/resolveDateTimeUnit.d.ts +11 -0
  108. package/dist/internal/resolveDateTimeUnit.js +23 -0
  109. package/dist/internal/resolveDurationRelativeTo.d.ts +29 -0
  110. package/dist/internal/resolveDurationRelativeTo.js +35 -0
  111. package/dist/internal/resolveDurationUnit.d.ts +10 -0
  112. package/dist/internal/resolveDurationUnit.js +23 -0
  113. package/dist/internal/resolveOverflow.d.ts +10 -0
  114. package/dist/internal/resolveOverflow.js +11 -0
  115. package/dist/internal/resolveRelativeRounding.d.ts +19 -0
  116. package/dist/internal/resolveRelativeRounding.js +20 -0
  117. package/dist/internal/resolveUnixTimeZone.d.ts +20 -0
  118. package/dist/internal/resolveUnixTimeZone.js +30 -0
  119. package/dist/internal/timeCycleFieldBounds.d.ts +16 -0
  120. package/dist/internal/timeCycleFieldBounds.js +24 -0
  121. package/dist/internal/toInstantFromUtc.d.ts +2 -0
  122. package/dist/internal/toInstantFromUtc.js +11 -0
  123. package/dist/plain/calculate/addBusinessDays.d.ts +17 -0
  124. package/dist/plain/calculate/addBusinessDays.js +35 -0
  125. package/dist/plain/calculate/addDate.d.ts +35 -0
  126. package/dist/plain/calculate/addDate.js +55 -0
  127. package/dist/plain/calculate/addDateTime.d.ts +22 -0
  128. package/dist/plain/calculate/addDateTime.js +38 -0
  129. package/dist/plain/calculate/addTime.d.ts +22 -0
  130. package/dist/plain/calculate/addTime.js +38 -0
  131. package/dist/plain/calculate/clampDate.d.ts +20 -0
  132. package/dist/plain/calculate/clampDate.js +46 -0
  133. package/dist/plain/calculate/closestDateTo.d.ts +18 -0
  134. package/dist/plain/calculate/closestDateTo.js +43 -0
  135. package/dist/plain/calculate/cycleDate.d.ts +44 -0
  136. package/dist/plain/calculate/cycleDate.js +56 -0
  137. package/dist/plain/calculate/cycleDateTime.d.ts +38 -0
  138. package/dist/plain/calculate/cycleDateTime.js +52 -0
  139. package/dist/plain/calculate/cycleTime.d.ts +38 -0
  140. package/dist/plain/calculate/cycleTime.js +50 -0
  141. package/dist/plain/calculate/diffDate.d.ts +32 -0
  142. package/dist/plain/calculate/diffDate.js +64 -0
  143. package/dist/plain/calculate/diffDateAsDuration.d.ts +36 -0
  144. package/dist/plain/calculate/diffDateAsDuration.js +49 -0
  145. package/dist/plain/calculate/diffDateTime.d.ts +25 -0
  146. package/dist/plain/calculate/diffDateTime.js +57 -0
  147. package/dist/plain/calculate/diffDateTimeAsDuration.d.ts +33 -0
  148. package/dist/plain/calculate/diffDateTimeAsDuration.js +48 -0
  149. package/dist/plain/calculate/diffTime.d.ts +25 -0
  150. package/dist/plain/calculate/diffTime.js +56 -0
  151. package/dist/plain/calculate/endOfDate.d.ts +17 -0
  152. package/dist/plain/calculate/endOfDate.js +51 -0
  153. package/dist/plain/calculate/endOfDateTime.d.ts +19 -0
  154. package/dist/plain/calculate/endOfDateTime.js +138 -0
  155. package/dist/plain/calculate/endOfQuarterForDate.d.ts +17 -0
  156. package/dist/plain/calculate/endOfQuarterForDate.js +34 -0
  157. package/dist/plain/calculate/endOfQuarterForDateTime.d.ts +15 -0
  158. package/dist/plain/calculate/endOfQuarterForDateTime.js +48 -0
  159. package/dist/plain/calculate/endOfTime.d.ts +20 -0
  160. package/dist/plain/calculate/endOfTime.js +91 -0
  161. package/dist/plain/calculate/getDayOfYear.d.ts +16 -0
  162. package/dist/plain/calculate/getDayOfYear.js +28 -0
  163. package/dist/plain/calculate/getDaysInMonth.d.ts +16 -0
  164. package/dist/plain/calculate/getDaysInMonth.js +28 -0
  165. package/dist/plain/calculate/getDaysInYear.d.ts +14 -0
  166. package/dist/plain/calculate/getDaysInYear.js +26 -0
  167. package/dist/plain/calculate/getLargestDateDurationUnit.d.ts +16 -0
  168. package/dist/plain/calculate/getLargestDateDurationUnit.js +24 -0
  169. package/dist/plain/calculate/getLargestDateTimeDurationUnit.d.ts +16 -0
  170. package/dist/plain/calculate/getLargestDateTimeDurationUnit.js +35 -0
  171. package/dist/plain/calculate/getLargestTimeDurationUnit.d.ts +16 -0
  172. package/dist/plain/calculate/getLargestTimeDurationUnit.js +31 -0
  173. package/dist/plain/calculate/getLocaleDayOfWeek.d.ts +20 -0
  174. package/dist/plain/calculate/getLocaleDayOfWeek.js +36 -0
  175. package/dist/plain/calculate/getLocaleEndOfWeek.d.ts +23 -0
  176. package/dist/plain/calculate/getLocaleEndOfWeek.js +40 -0
  177. package/dist/plain/calculate/getLocaleStartOfWeek.d.ts +23 -0
  178. package/dist/plain/calculate/getLocaleStartOfWeek.js +40 -0
  179. package/dist/plain/calculate/getLocaleWeekYear.d.ts +28 -0
  180. package/dist/plain/calculate/getLocaleWeekYear.js +45 -0
  181. package/dist/plain/calculate/getQuarterForDate.d.ts +17 -0
  182. package/dist/plain/calculate/getQuarterForDate.js +30 -0
  183. package/dist/plain/calculate/getQuarterForDateTime.d.ts +17 -0
  184. package/dist/plain/calculate/getQuarterForDateTime.js +30 -0
  185. package/dist/plain/calculate/getWeekNumber.d.ts +17 -0
  186. package/dist/plain/calculate/getWeekNumber.js +39 -0
  187. package/dist/plain/calculate/getWeekOfMonth.d.ts +26 -0
  188. package/dist/plain/calculate/getWeekOfMonth.js +43 -0
  189. package/dist/plain/calculate/getWeekYear.d.ts +21 -0
  190. package/dist/plain/calculate/getWeekYear.js +33 -0
  191. package/dist/plain/calculate/getWeeksInLocaleWeekYear.d.ts +24 -0
  192. package/dist/plain/calculate/getWeeksInLocaleWeekYear.js +43 -0
  193. package/dist/plain/calculate/getWeeksInMonth.d.ts +23 -0
  194. package/dist/plain/calculate/getWeeksInMonth.js +40 -0
  195. package/dist/plain/calculate/getWeeksInYear.d.ts +23 -0
  196. package/dist/plain/calculate/getWeeksInYear.js +43 -0
  197. package/dist/plain/calculate/index.d.ts +64 -0
  198. package/dist/plain/calculate/index.js +64 -0
  199. package/dist/plain/calculate/maxDate.d.ts +13 -0
  200. package/dist/plain/calculate/maxDate.js +33 -0
  201. package/dist/plain/calculate/maxDateTime.d.ts +13 -0
  202. package/dist/plain/calculate/maxDateTime.js +33 -0
  203. package/dist/plain/calculate/maxTime.d.ts +13 -0
  204. package/dist/plain/calculate/maxTime.js +33 -0
  205. package/dist/plain/calculate/minDate.d.ts +13 -0
  206. package/dist/plain/calculate/minDate.js +33 -0
  207. package/dist/plain/calculate/minDateTime.d.ts +13 -0
  208. package/dist/plain/calculate/minDateTime.js +33 -0
  209. package/dist/plain/calculate/minTime.d.ts +13 -0
  210. package/dist/plain/calculate/minTime.js +33 -0
  211. package/dist/plain/calculate/nextWeekday.d.ts +36 -0
  212. package/dist/plain/calculate/nextWeekday.js +47 -0
  213. package/dist/plain/calculate/previousWeekday.d.ts +36 -0
  214. package/dist/plain/calculate/previousWeekday.js +47 -0
  215. package/dist/plain/calculate/roundDate.d.ts +26 -0
  216. package/dist/plain/calculate/roundDate.js +72 -0
  217. package/dist/plain/calculate/roundDateTime.d.ts +26 -0
  218. package/dist/plain/calculate/roundDateTime.js +98 -0
  219. package/dist/plain/calculate/roundTime.d.ts +22 -0
  220. package/dist/plain/calculate/roundTime.js +42 -0
  221. package/dist/plain/calculate/setDate.d.ts +32 -0
  222. package/dist/plain/calculate/setDate.js +47 -0
  223. package/dist/plain/calculate/setDateTime.d.ts +31 -0
  224. package/dist/plain/calculate/setDateTime.js +46 -0
  225. package/dist/plain/calculate/setTime.d.ts +31 -0
  226. package/dist/plain/calculate/setTime.js +46 -0
  227. package/dist/plain/calculate/sortDateTimes.d.ts +14 -0
  228. package/dist/plain/calculate/sortDateTimes.js +33 -0
  229. package/dist/plain/calculate/sortDates.d.ts +14 -0
  230. package/dist/plain/calculate/sortDates.js +33 -0
  231. package/dist/plain/calculate/sortTimes.d.ts +14 -0
  232. package/dist/plain/calculate/sortTimes.js +33 -0
  233. package/dist/plain/calculate/startOfDate.d.ts +17 -0
  234. package/dist/plain/calculate/startOfDate.js +50 -0
  235. package/dist/plain/calculate/startOfDateTime.d.ts +19 -0
  236. package/dist/plain/calculate/startOfDateTime.js +85 -0
  237. package/dist/plain/calculate/startOfQuarterForDate.d.ts +17 -0
  238. package/dist/plain/calculate/startOfQuarterForDate.js +32 -0
  239. package/dist/plain/calculate/startOfQuarterForDateTime.d.ts +15 -0
  240. package/dist/plain/calculate/startOfQuarterForDateTime.js +32 -0
  241. package/dist/plain/calculate/startOfTime.d.ts +20 -0
  242. package/dist/plain/calculate/startOfTime.js +69 -0
  243. package/dist/plain/calculate/subtractBusinessDays.d.ts +18 -0
  244. package/dist/plain/calculate/subtractBusinessDays.js +36 -0
  245. package/dist/plain/calculate/subtractDate.d.ts +27 -0
  246. package/dist/plain/calculate/subtractDate.js +47 -0
  247. package/dist/plain/calculate/subtractDateTime.d.ts +22 -0
  248. package/dist/plain/calculate/subtractDateTime.js +38 -0
  249. package/dist/plain/calculate/subtractTime.d.ts +22 -0
  250. package/dist/plain/calculate/subtractTime.js +38 -0
  251. package/dist/plain/calculate/weekOfYear.d.ts +30 -0
  252. package/dist/plain/calculate/weekOfYear.js +57 -0
  253. package/dist/plain/chop/chopDate.d.ts +13 -0
  254. package/dist/plain/chop/chopDate.js +24 -0
  255. package/dist/plain/chop/chopMilliseconds.d.ts +15 -0
  256. package/dist/plain/chop/chopMilliseconds.js +34 -0
  257. package/dist/plain/chop/chopSeconds.d.ts +15 -0
  258. package/dist/plain/chop/chopSeconds.js +34 -0
  259. package/dist/plain/chop/chopTime.d.ts +13 -0
  260. package/dist/plain/chop/chopTime.js +24 -0
  261. package/dist/plain/chop/index.d.ts +5 -0
  262. package/dist/plain/chop/index.js +5 -0
  263. package/dist/plain/compare/areDateTimesEqual.d.ts +15 -0
  264. package/dist/plain/compare/areDateTimesEqual.js +37 -0
  265. package/dist/plain/compare/areDateTimesEqualBy.d.ts +37 -0
  266. package/dist/plain/compare/areDateTimesEqualBy.js +49 -0
  267. package/dist/plain/compare/areDatesEqual.d.ts +17 -0
  268. package/dist/plain/compare/areDatesEqual.js +33 -0
  269. package/dist/plain/compare/areDatesEqualBy.d.ts +34 -0
  270. package/dist/plain/compare/areDatesEqualBy.js +54 -0
  271. package/dist/plain/compare/areTimesEqual.d.ts +18 -0
  272. package/dist/plain/compare/areTimesEqual.js +37 -0
  273. package/dist/plain/compare/index.d.ts +20 -0
  274. package/dist/plain/compare/index.js +20 -0
  275. package/dist/plain/compare/isAfterDate.d.ts +16 -0
  276. package/dist/plain/compare/isAfterDate.js +28 -0
  277. package/dist/plain/compare/isAfterDateTime.d.ts +17 -0
  278. package/dist/plain/compare/isAfterDateTime.js +29 -0
  279. package/dist/plain/compare/isAfterTime.d.ts +17 -0
  280. package/dist/plain/compare/isAfterTime.js +29 -0
  281. package/dist/plain/compare/isBeforeDate.d.ts +17 -0
  282. package/dist/plain/compare/isBeforeDate.js +29 -0
  283. package/dist/plain/compare/isBeforeDateTime.d.ts +17 -0
  284. package/dist/plain/compare/isBeforeDateTime.js +29 -0
  285. package/dist/plain/compare/isBeforeTime.d.ts +17 -0
  286. package/dist/plain/compare/isBeforeTime.js +29 -0
  287. package/dist/plain/compare/isBetweenDate.d.ts +26 -0
  288. package/dist/plain/compare/isBetweenDate.js +49 -0
  289. package/dist/plain/compare/isBetweenDateTime.d.ts +26 -0
  290. package/dist/plain/compare/isBetweenDateTime.js +51 -0
  291. package/dist/plain/compare/isBetweenTime.d.ts +28 -0
  292. package/dist/plain/compare/isBetweenTime.js +51 -0
  293. package/dist/plain/compare/isBusinessDay.d.ts +21 -0
  294. package/dist/plain/compare/isBusinessDay.js +33 -0
  295. package/dist/plain/compare/isFuture.d.ts +21 -0
  296. package/dist/plain/compare/isFuture.js +33 -0
  297. package/dist/plain/compare/isPast.d.ts +21 -0
  298. package/dist/plain/compare/isPast.js +33 -0
  299. package/dist/plain/compare/isRelativeDay.d.ts +32 -0
  300. package/dist/plain/compare/isRelativeDay.js +49 -0
  301. package/dist/plain/compare/isThisUnit.d.ts +35 -0
  302. package/dist/plain/compare/isThisUnit.js +52 -0
  303. package/dist/plain/compare/isWeekend.d.ts +21 -0
  304. package/dist/plain/compare/isWeekend.js +37 -0
  305. package/dist/plain/convert/convertDateToCalendar.d.ts +44 -0
  306. package/dist/plain/convert/convertDateToCalendar.js +59 -0
  307. package/dist/plain/convert/index.d.ts +1 -0
  308. package/dist/plain/convert/index.js +1 -0
  309. package/dist/plain/format/formatCalendar.d.ts +43 -0
  310. package/dist/plain/format/formatCalendar.js +70 -0
  311. package/dist/plain/format/formatDate.d.ts +17 -0
  312. package/dist/plain/format/formatDate.js +31 -0
  313. package/dist/plain/format/formatDateRange.d.ts +19 -0
  314. package/dist/plain/format/formatDateRange.js +33 -0
  315. package/dist/plain/format/formatDateTime.d.ts +17 -0
  316. package/dist/plain/format/formatDateTime.js +31 -0
  317. package/dist/plain/format/formatDateTimeRange.d.ts +19 -0
  318. package/dist/plain/format/formatDateTimeRange.js +33 -0
  319. package/dist/plain/format/formatDateTimeToParts.d.ts +28 -0
  320. package/dist/plain/format/formatDateTimeToParts.js +48 -0
  321. package/dist/plain/format/formatDateToParts.d.ts +27 -0
  322. package/dist/plain/format/formatDateToParts.js +47 -0
  323. package/dist/plain/format/formatRelativeDate.d.ts +32 -0
  324. package/dist/plain/format/formatRelativeDate.js +57 -0
  325. package/dist/plain/format/formatRelativeDateTime.d.ts +32 -0
  326. package/dist/plain/format/formatRelativeDateTime.js +57 -0
  327. package/dist/plain/format/formatRelativeTime.d.ts +32 -0
  328. package/dist/plain/format/formatRelativeTime.js +49 -0
  329. package/dist/plain/format/formatSql.d.ts +20 -0
  330. package/dist/plain/format/formatSql.js +31 -0
  331. package/dist/plain/format/formatTime.d.ts +17 -0
  332. package/dist/plain/format/formatTime.js +31 -0
  333. package/dist/plain/format/index.d.ts +12 -0
  334. package/dist/plain/format/index.js +12 -0
  335. package/dist/plain/get/getDay.d.ts +13 -0
  336. package/dist/plain/get/getDay.js +27 -0
  337. package/dist/plain/get/getDayOfWeek.d.ts +13 -0
  338. package/dist/plain/get/getDayOfWeek.js +26 -0
  339. package/dist/plain/get/getHour.d.ts +13 -0
  340. package/dist/plain/get/getHour.js +27 -0
  341. package/dist/plain/get/getMicrosecond.d.ts +13 -0
  342. package/dist/plain/get/getMicrosecond.js +27 -0
  343. package/dist/plain/get/getMillisecond.d.ts +13 -0
  344. package/dist/plain/get/getMillisecond.js +27 -0
  345. package/dist/plain/get/getMinute.d.ts +13 -0
  346. package/dist/plain/get/getMinute.js +27 -0
  347. package/dist/plain/get/getMonth.d.ts +13 -0
  348. package/dist/plain/get/getMonth.js +27 -0
  349. package/dist/plain/get/getNanosecond.d.ts +13 -0
  350. package/dist/plain/get/getNanosecond.js +27 -0
  351. package/dist/plain/get/getNow.d.ts +11 -0
  352. package/dist/plain/get/getNow.js +24 -0
  353. package/dist/plain/get/getNowUnit.d.ts +27 -0
  354. package/dist/plain/get/getNowUnit.js +72 -0
  355. package/dist/plain/get/getSecond.d.ts +13 -0
  356. package/dist/plain/get/getSecond.js +27 -0
  357. package/dist/plain/get/getToday.d.ts +11 -0
  358. package/dist/plain/get/getToday.js +24 -0
  359. package/dist/plain/get/getWeekOfYear.d.ts +13 -0
  360. package/dist/plain/get/getWeekOfYear.js +32 -0
  361. package/dist/plain/get/getYear.d.ts +13 -0
  362. package/dist/plain/get/getYear.js +27 -0
  363. package/dist/plain/get/index.d.ts +14 -0
  364. package/dist/plain/get/index.js +14 -0
  365. package/dist/plain/index.d.ts +12 -0
  366. package/dist/plain/index.js +13 -0
  367. package/dist/plain/interval/index.d.ts +51 -0
  368. package/dist/plain/interval/index.js +51 -0
  369. package/dist/plain/interval/intervalAbutsDate.d.ts +26 -0
  370. package/dist/plain/interval/intervalAbutsDate.js +68 -0
  371. package/dist/plain/interval/intervalAbutsDateTime.d.ts +22 -0
  372. package/dist/plain/interval/intervalAbutsDateTime.js +63 -0
  373. package/dist/plain/interval/intervalAbutsTime.d.ts +22 -0
  374. package/dist/plain/interval/intervalAbutsTime.js +63 -0
  375. package/dist/plain/interval/intervalContainsDate.d.ts +26 -0
  376. package/dist/plain/interval/intervalContainsDate.js +63 -0
  377. package/dist/plain/interval/intervalContainsDateTime.d.ts +24 -0
  378. package/dist/plain/interval/intervalContainsDateTime.js +60 -0
  379. package/dist/plain/interval/intervalContainsTime.d.ts +24 -0
  380. package/dist/plain/interval/intervalContainsTime.js +60 -0
  381. package/dist/plain/interval/intervalCountDate.d.ts +31 -0
  382. package/dist/plain/interval/intervalCountDate.js +62 -0
  383. package/dist/plain/interval/intervalCountDateTime.d.ts +26 -0
  384. package/dist/plain/interval/intervalCountDateTime.js +73 -0
  385. package/dist/plain/interval/intervalCountTime.d.ts +26 -0
  386. package/dist/plain/interval/intervalCountTime.js +67 -0
  387. package/dist/plain/interval/intervalDifferenceDate.d.ts +30 -0
  388. package/dist/plain/interval/intervalDifferenceDate.js +87 -0
  389. package/dist/plain/interval/intervalDifferenceDateTime.d.ts +24 -0
  390. package/dist/plain/interval/intervalDifferenceDateTime.js +69 -0
  391. package/dist/plain/interval/intervalDifferenceTime.d.ts +25 -0
  392. package/dist/plain/interval/intervalDifferenceTime.js +70 -0
  393. package/dist/plain/interval/intervalDivideEquallyDate.d.ts +33 -0
  394. package/dist/plain/interval/intervalDivideEquallyDate.js +70 -0
  395. package/dist/plain/interval/intervalDivideEquallyDateTime.d.ts +27 -0
  396. package/dist/plain/interval/intervalDivideEquallyDateTime.js +62 -0
  397. package/dist/plain/interval/intervalDivideEquallyTime.d.ts +28 -0
  398. package/dist/plain/interval/intervalDivideEquallyTime.js +63 -0
  399. package/dist/plain/interval/intervalEngulfsDate.d.ts +24 -0
  400. package/dist/plain/interval/intervalEngulfsDate.js +57 -0
  401. package/dist/plain/interval/intervalEngulfsDateTime.d.ts +22 -0
  402. package/dist/plain/interval/intervalEngulfsDateTime.js +54 -0
  403. package/dist/plain/interval/intervalEngulfsTime.d.ts +22 -0
  404. package/dist/plain/interval/intervalEngulfsTime.js +54 -0
  405. package/dist/plain/interval/intervalFromDurationDate.d.ts +39 -0
  406. package/dist/plain/interval/intervalFromDurationDate.js +71 -0
  407. package/dist/plain/interval/intervalFromDurationDateTime.d.ts +33 -0
  408. package/dist/plain/interval/intervalFromDurationDateTime.js +58 -0
  409. package/dist/plain/interval/intervalFromDurationTime.d.ts +38 -0
  410. package/dist/plain/interval/intervalFromDurationTime.js +69 -0
  411. package/dist/plain/interval/intervalIntersectionDate.d.ts +28 -0
  412. package/dist/plain/interval/intervalIntersectionDate.js +70 -0
  413. package/dist/plain/interval/intervalIntersectionDateTime.d.ts +23 -0
  414. package/dist/plain/interval/intervalIntersectionDateTime.js +57 -0
  415. package/dist/plain/interval/intervalIntersectionTime.d.ts +24 -0
  416. package/dist/plain/interval/intervalIntersectionTime.js +58 -0
  417. package/dist/plain/interval/intervalLengthDate.d.ts +31 -0
  418. package/dist/plain/interval/intervalLengthDate.js +56 -0
  419. package/dist/plain/interval/intervalLengthDateTime.d.ts +24 -0
  420. package/dist/plain/interval/intervalLengthDateTime.js +50 -0
  421. package/dist/plain/interval/intervalLengthTime.d.ts +23 -0
  422. package/dist/plain/interval/intervalLengthTime.js +49 -0
  423. package/dist/plain/interval/intervalOverlappingDaysDate.d.ts +33 -0
  424. package/dist/plain/interval/intervalOverlappingDaysDate.js +78 -0
  425. package/dist/plain/interval/intervalOverlappingDaysDateTime.d.ts +28 -0
  426. package/dist/plain/interval/intervalOverlappingDaysDateTime.js +67 -0
  427. package/dist/plain/interval/intervalSplitAtDate.d.ts +34 -0
  428. package/dist/plain/interval/intervalSplitAtDate.js +73 -0
  429. package/dist/plain/interval/intervalSplitAtDateTime.d.ts +28 -0
  430. package/dist/plain/interval/intervalSplitAtDateTime.js +62 -0
  431. package/dist/plain/interval/intervalSplitAtTime.d.ts +30 -0
  432. package/dist/plain/interval/intervalSplitAtTime.js +64 -0
  433. package/dist/plain/interval/intervalUnionDate.d.ts +29 -0
  434. package/dist/plain/interval/intervalUnionDate.js +71 -0
  435. package/dist/plain/interval/intervalUnionDateTime.d.ts +24 -0
  436. package/dist/plain/interval/intervalUnionDateTime.js +58 -0
  437. package/dist/plain/interval/intervalUnionTime.d.ts +24 -0
  438. package/dist/plain/interval/intervalUnionTime.js +58 -0
  439. package/dist/plain/interval/intervalXorAllDate.d.ts +35 -0
  440. package/dist/plain/interval/intervalXorAllDate.js +89 -0
  441. package/dist/plain/interval/intervalXorAllDateTime.d.ts +29 -0
  442. package/dist/plain/interval/intervalXorAllDateTime.js +77 -0
  443. package/dist/plain/interval/intervalXorAllTime.d.ts +28 -0
  444. package/dist/plain/interval/intervalXorAllTime.js +76 -0
  445. package/dist/plain/interval/intervalXorDate.d.ts +30 -0
  446. package/dist/plain/interval/intervalXorDate.js +106 -0
  447. package/dist/plain/interval/intervalXorDateTime.d.ts +25 -0
  448. package/dist/plain/interval/intervalXorDateTime.js +90 -0
  449. package/dist/plain/interval/intervalXorTime.d.ts +26 -0
  450. package/dist/plain/interval/intervalXorTime.js +91 -0
  451. package/dist/plain/interval/intervalsOverlapDate.d.ts +23 -0
  452. package/dist/plain/interval/intervalsOverlapDate.js +56 -0
  453. package/dist/plain/interval/intervalsOverlapDateTime.d.ts +20 -0
  454. package/dist/plain/interval/intervalsOverlapDateTime.js +52 -0
  455. package/dist/plain/interval/intervalsOverlapTime.d.ts +21 -0
  456. package/dist/plain/interval/intervalsOverlapTime.js +53 -0
  457. package/dist/plain/interval/mergeIntervalsDate.d.ts +31 -0
  458. package/dist/plain/interval/mergeIntervalsDate.js +67 -0
  459. package/dist/plain/interval/mergeIntervalsDateTime.d.ts +26 -0
  460. package/dist/plain/interval/mergeIntervalsDateTime.js +58 -0
  461. package/dist/plain/interval/mergeIntervalsTime.d.ts +26 -0
  462. package/dist/plain/interval/mergeIntervalsTime.js +57 -0
  463. package/dist/plain/interval/splitIntervalByUnitDate.d.ts +32 -0
  464. package/dist/plain/interval/splitIntervalByUnitDate.js +80 -0
  465. package/dist/plain/interval/splitIntervalByUnitDateTime.d.ts +24 -0
  466. package/dist/plain/interval/splitIntervalByUnitDateTime.js +72 -0
  467. package/dist/plain/interval/splitIntervalByUnitTime.d.ts +25 -0
  468. package/dist/plain/interval/splitIntervalByUnitTime.js +73 -0
  469. package/dist/plain/interval/validate/index.d.ts +3 -0
  470. package/dist/plain/interval/validate/index.js +3 -0
  471. package/dist/plain/interval/validate/isValidDateInterval.d.ts +21 -0
  472. package/dist/plain/interval/validate/isValidDateInterval.js +37 -0
  473. package/dist/plain/interval/validate/isValidDateTimeInterval.d.ts +18 -0
  474. package/dist/plain/interval/validate/isValidDateTimeInterval.js +33 -0
  475. package/dist/plain/interval/validate/isValidTimeInterval.d.ts +18 -0
  476. package/dist/plain/interval/validate/isValidTimeInterval.js +48 -0
  477. package/dist/plain/locale/getLocaleEraNames.d.ts +23 -0
  478. package/dist/plain/locale/getLocaleEraNames.js +66 -0
  479. package/dist/plain/locale/getLocaleMeridiems.d.ts +19 -0
  480. package/dist/plain/locale/getLocaleMeridiems.js +44 -0
  481. package/dist/plain/locale/getLocaleMonthNames.d.ts +28 -0
  482. package/dist/plain/locale/getLocaleMonthNames.js +45 -0
  483. package/dist/plain/locale/getLocaleWeekdayNames.d.ts +25 -0
  484. package/dist/plain/locale/getLocaleWeekdayNames.js +48 -0
  485. package/dist/plain/locale/index.d.ts +4 -0
  486. package/dist/plain/locale/index.js +4 -0
  487. package/dist/plain/map/index.d.ts +2 -0
  488. package/dist/plain/map/index.js +2 -0
  489. package/dist/plain/map/mapDatesInRange.d.ts +19 -0
  490. package/dist/plain/map/mapDatesInRange.js +46 -0
  491. package/dist/plain/map/mapDaysInMonth.d.ts +15 -0
  492. package/dist/plain/map/mapDaysInMonth.js +31 -0
  493. package/dist/plain/parse/index.d.ts +29 -0
  494. package/dist/plain/parse/index.js +29 -0
  495. package/dist/plain/parse/parseDateTimeWithPattern.d.ts +85 -0
  496. package/dist/plain/parse/parseDateTimeWithPattern.js +116 -0
  497. package/dist/plain/parse/parseDateWithPattern.d.ts +68 -0
  498. package/dist/plain/parse/parseDateWithPattern.js +91 -0
  499. package/dist/plain/parse/parseDayFromDate.d.ts +13 -0
  500. package/dist/plain/parse/parseDayFromDate.js +25 -0
  501. package/dist/plain/parse/parseDayFromDateTime.d.ts +14 -0
  502. package/dist/plain/parse/parseDayFromDateTime.js +26 -0
  503. package/dist/plain/parse/parseDayOfWeekFromDate.d.ts +15 -0
  504. package/dist/plain/parse/parseDayOfWeekFromDate.js +28 -0
  505. package/dist/plain/parse/parseDayOfWeekFromDateTime.d.ts +14 -0
  506. package/dist/plain/parse/parseDayOfWeekFromDateTime.js +27 -0
  507. package/dist/plain/parse/parseHourFromDateTime.d.ts +14 -0
  508. package/dist/plain/parse/parseHourFromDateTime.js +26 -0
  509. package/dist/plain/parse/parseHourFromTime.d.ts +13 -0
  510. package/dist/plain/parse/parseHourFromTime.js +25 -0
  511. package/dist/plain/parse/parseMicrosecondFromDateTime.d.ts +14 -0
  512. package/dist/plain/parse/parseMicrosecondFromDateTime.js +26 -0
  513. package/dist/plain/parse/parseMicrosecondFromTime.d.ts +11 -0
  514. package/dist/plain/parse/parseMicrosecondFromTime.js +23 -0
  515. package/dist/plain/parse/parseMillisecondFromDateTime.d.ts +14 -0
  516. package/dist/plain/parse/parseMillisecondFromDateTime.js +26 -0
  517. package/dist/plain/parse/parseMillisecondFromTime.d.ts +14 -0
  518. package/dist/plain/parse/parseMillisecondFromTime.js +26 -0
  519. package/dist/plain/parse/parseMinuteFromDateTime.d.ts +14 -0
  520. package/dist/plain/parse/parseMinuteFromDateTime.js +26 -0
  521. package/dist/plain/parse/parseMinuteFromTime.d.ts +14 -0
  522. package/dist/plain/parse/parseMinuteFromTime.js +26 -0
  523. package/dist/plain/parse/parseMonthFromDate.d.ts +13 -0
  524. package/dist/plain/parse/parseMonthFromDate.js +25 -0
  525. package/dist/plain/parse/parseMonthFromDateTime.d.ts +13 -0
  526. package/dist/plain/parse/parseMonthFromDateTime.js +25 -0
  527. package/dist/plain/parse/parseNanosecondFromDateTime.d.ts +14 -0
  528. package/dist/plain/parse/parseNanosecondFromDateTime.js +26 -0
  529. package/dist/plain/parse/parseNanosecondFromTime.d.ts +14 -0
  530. package/dist/plain/parse/parseNanosecondFromTime.js +26 -0
  531. package/dist/plain/parse/parseSecondFromDateTime.d.ts +14 -0
  532. package/dist/plain/parse/parseSecondFromDateTime.js +26 -0
  533. package/dist/plain/parse/parseSecondFromTime.d.ts +14 -0
  534. package/dist/plain/parse/parseSecondFromTime.js +26 -0
  535. package/dist/plain/parse/parseSql.d.ts +23 -0
  536. package/dist/plain/parse/parseSql.js +36 -0
  537. package/dist/plain/parse/parseTimeWithPattern.d.ts +57 -0
  538. package/dist/plain/parse/parseTimeWithPattern.js +85 -0
  539. package/dist/plain/parse/parseUnitFromDate.d.ts +23 -0
  540. package/dist/plain/parse/parseUnitFromDate.js +49 -0
  541. package/dist/plain/parse/parseUnitFromDateTime.d.ts +22 -0
  542. package/dist/plain/parse/parseUnitFromDateTime.js +56 -0
  543. package/dist/plain/parse/parseUnitFromTime.d.ts +18 -0
  544. package/dist/plain/parse/parseUnitFromTime.js +42 -0
  545. package/dist/plain/parse/parseWeekFromDate.d.ts +19 -0
  546. package/dist/plain/parse/parseWeekFromDate.js +30 -0
  547. package/dist/plain/parse/parseWeekFromDateTime.d.ts +18 -0
  548. package/dist/plain/parse/parseWeekFromDateTime.js +29 -0
  549. package/dist/plain/parse/parseYearFromDate.d.ts +13 -0
  550. package/dist/plain/parse/parseYearFromDate.js +25 -0
  551. package/dist/plain/parse/parseYearFromDateTime.d.ts +13 -0
  552. package/dist/plain/parse/parseYearFromDateTime.js +25 -0
  553. package/dist/plain/validate/index.d.ts +19 -0
  554. package/dist/plain/validate/index.js +19 -0
  555. package/dist/plain/validate/isLeapSecond.d.ts +16 -0
  556. package/dist/plain/validate/isLeapSecond.js +19 -0
  557. package/dist/plain/validate/isLeapYear.d.ts +14 -0
  558. package/dist/plain/validate/isLeapYear.js +23 -0
  559. package/dist/plain/validate/isValidCalendarDate.d.ts +17 -0
  560. package/dist/plain/validate/isValidCalendarDate.js +29 -0
  561. package/dist/plain/validate/isValidDate.d.ts +16 -0
  562. package/dist/plain/validate/isValidDate.js +33 -0
  563. package/dist/plain/validate/isValidDateCycleField.d.ts +21 -0
  564. package/dist/plain/validate/isValidDateCycleField.js +25 -0
  565. package/dist/plain/validate/isValidDateDurationUnit.d.ts +16 -0
  566. package/dist/plain/validate/isValidDateDurationUnit.js +17 -0
  567. package/dist/plain/validate/isValidDateRange.d.ts +26 -0
  568. package/dist/plain/validate/isValidDateRange.js +47 -0
  569. package/dist/plain/validate/isValidDateTime.d.ts +16 -0
  570. package/dist/plain/validate/isValidDateTime.js +33 -0
  571. package/dist/plain/validate/isValidDateTimeCycleField.d.ts +16 -0
  572. package/dist/plain/validate/isValidDateTimeCycleField.js +19 -0
  573. package/dist/plain/validate/isValidDateTimeDurationUnit.d.ts +16 -0
  574. package/dist/plain/validate/isValidDateTimeDurationUnit.js +26 -0
  575. package/dist/plain/validate/isValidDateTimeRange.d.ts +24 -0
  576. package/dist/plain/validate/isValidDateTimeRange.js +39 -0
  577. package/dist/plain/validate/isValidDateTimeUnit.d.ts +19 -0
  578. package/dist/plain/validate/isValidDateTimeUnit.js +32 -0
  579. package/dist/plain/validate/isValidDateUnit.d.ts +21 -0
  580. package/dist/plain/validate/isValidDateUnit.js +25 -0
  581. package/dist/plain/validate/isValidIsoDateLike.d.ts +17 -0
  582. package/dist/plain/validate/isValidIsoDateLike.js +43 -0
  583. package/dist/plain/validate/isValidTime.d.ts +16 -0
  584. package/dist/plain/validate/isValidTime.js +33 -0
  585. package/dist/plain/validate/isValidTimeCycleField.d.ts +18 -0
  586. package/dist/plain/validate/isValidTimeCycleField.js +27 -0
  587. package/dist/plain/validate/isValidTimeDurationUnit.d.ts +16 -0
  588. package/dist/plain/validate/isValidTimeDurationUnit.js +22 -0
  589. package/dist/plain/validate/isValidTimeRange.d.ts +24 -0
  590. package/dist/plain/validate/isValidTimeRange.js +51 -0
  591. package/dist/plain/validate/isValidTimeUnit.d.ts +19 -0
  592. package/dist/plain/validate/isValidTimeUnit.js +28 -0
  593. package/dist/regex/calendar-date.d.ts +1 -0
  594. package/dist/regex/calendar-date.js +11 -0
  595. package/dist/regex/calendar-zoned-date-time.d.ts +1 -0
  596. package/dist/regex/calendar-zoned-date-time.js +41 -0
  597. package/dist/regex/date-time.d.ts +1 -0
  598. package/dist/regex/date-time.js +2 -0
  599. package/dist/regex/date.d.ts +4 -0
  600. package/dist/regex/date.js +5 -0
  601. package/dist/regex/http-date.d.ts +1 -0
  602. package/dist/regex/http-date.js +7 -0
  603. package/dist/regex/index.d.ts +13 -0
  604. package/dist/regex/index.js +13 -0
  605. package/dist/regex/leap-second.d.ts +1 -0
  606. package/dist/regex/leap-second.js +2 -0
  607. package/dist/regex/rfc-2822.d.ts +1 -0
  608. package/dist/regex/rfc-2822.js +9 -0
  609. package/dist/regex/rfc-3339.d.ts +1 -0
  610. package/dist/regex/rfc-3339.js +7 -0
  611. package/dist/regex/sql-date-time.d.ts +1 -0
  612. package/dist/regex/sql-date-time.js +7 -0
  613. package/dist/regex/time-zone-like.d.ts +1 -0
  614. package/dist/regex/time-zone-like.js +1 -0
  615. package/dist/regex/time.d.ts +6 -0
  616. package/dist/regex/time.js +9 -0
  617. package/dist/regex/unix.d.ts +2 -0
  618. package/dist/regex/unix.js +2 -0
  619. package/dist/regex/utc-date-time.d.ts +1 -0
  620. package/dist/regex/utc-date-time.js +2 -0
  621. package/dist/types/calendar-system.d.ts +1 -0
  622. package/dist/types/calendar-system.js +0 -0
  623. package/dist/types/date-cycle-field.d.ts +1 -0
  624. package/dist/types/date-cycle-field.js +0 -0
  625. package/dist/types/date-duration-unit.d.ts +2 -0
  626. package/dist/types/date-duration-unit.js +0 -0
  627. package/dist/types/date-time-cycle-field.d.ts +3 -0
  628. package/dist/types/date-time-cycle-field.js +0 -0
  629. package/dist/types/date-time-duration-units.d.ts +2 -0
  630. package/dist/types/date-time-duration-units.js +0 -0
  631. package/dist/types/date-time-unit.d.ts +2 -0
  632. package/dist/types/date-time-unit.js +0 -0
  633. package/dist/types/date-unit.d.ts +2 -0
  634. package/dist/types/date-unit.js +0 -0
  635. package/dist/types/disambiguation.d.ts +2 -0
  636. package/dist/types/disambiguation.js +0 -0
  637. package/dist/types/duration-relative-to.d.ts +2 -0
  638. package/dist/types/duration-relative-to.js +0 -0
  639. package/dist/types/duration-string-options.d.ts +6 -0
  640. package/dist/types/duration-string-options.js +0 -0
  641. package/dist/types/fractional-digit.d.ts +1 -0
  642. package/dist/types/fractional-digit.js +0 -0
  643. package/dist/types/index.d.ts +18 -0
  644. package/dist/types/index.js +18 -0
  645. package/dist/types/offset.d.ts +2 -0
  646. package/dist/types/offset.js +0 -0
  647. package/dist/types/overflow.d.ts +2 -0
  648. package/dist/types/overflow.js +0 -0
  649. package/dist/types/relative-rounding-method.d.ts +1 -0
  650. package/dist/types/relative-rounding-method.js +0 -0
  651. package/dist/types/rounding-options.d.ts +6 -0
  652. package/dist/types/rounding-options.js +0 -0
  653. package/dist/types/time-cycle-field.d.ts +1 -0
  654. package/dist/types/time-cycle-field.js +0 -0
  655. package/dist/types/time-duration-unit.d.ts +2 -0
  656. package/dist/types/time-duration-unit.js +0 -0
  657. package/dist/types/time-unit.d.ts +2 -0
  658. package/dist/types/time-unit.js +0 -0
  659. package/dist/unix/calculate/addUnix.d.ts +25 -0
  660. package/dist/unix/calculate/addUnix.js +51 -0
  661. package/dist/unix/calculate/diffUnix.d.ts +30 -0
  662. package/dist/unix/calculate/diffUnix.js +66 -0
  663. package/dist/unix/calculate/diffUnixAsDuration.d.ts +35 -0
  664. package/dist/unix/calculate/diffUnixAsDuration.js +56 -0
  665. package/dist/unix/calculate/endOfQuarterForUnix.d.ts +23 -0
  666. package/dist/unix/calculate/endOfQuarterForUnix.js +56 -0
  667. package/dist/unix/calculate/endOfUnix.d.ts +30 -0
  668. package/dist/unix/calculate/endOfUnix.js +26 -0
  669. package/dist/unix/calculate/index.d.ts +14 -0
  670. package/dist/unix/calculate/index.js +14 -0
  671. package/dist/unix/calculate/isBetweenUnix.d.ts +23 -0
  672. package/dist/unix/calculate/isBetweenUnix.js +54 -0
  673. package/dist/unix/calculate/maxUnix.d.ts +13 -0
  674. package/dist/unix/calculate/maxUnix.js +21 -0
  675. package/dist/unix/calculate/minUnix.d.ts +13 -0
  676. package/dist/unix/calculate/minUnix.js +21 -0
  677. package/dist/unix/calculate/roundUnix.d.ts +27 -0
  678. package/dist/unix/calculate/roundUnix.js +62 -0
  679. package/dist/unix/calculate/setUnix.d.ts +35 -0
  680. package/dist/unix/calculate/setUnix.js +60 -0
  681. package/dist/unix/calculate/sortUnix.d.ts +16 -0
  682. package/dist/unix/calculate/sortUnix.js +28 -0
  683. package/dist/unix/calculate/startOfQuarterForUnix.d.ts +23 -0
  684. package/dist/unix/calculate/startOfQuarterForUnix.js +46 -0
  685. package/dist/unix/calculate/startOfUnix.d.ts +30 -0
  686. package/dist/unix/calculate/startOfUnix.js +26 -0
  687. package/dist/unix/calculate/startOrEndOfUnix.d.ts +9 -0
  688. package/dist/unix/calculate/startOrEndOfUnix.js +122 -0
  689. package/dist/unix/calculate/subtractUnix.d.ts +25 -0
  690. package/dist/unix/calculate/subtractUnix.js +51 -0
  691. package/dist/unix/compare/areUnixEqual.d.ts +21 -0
  692. package/dist/unix/compare/areUnixEqual.js +33 -0
  693. package/dist/unix/compare/areUnixEqualBy.d.ts +31 -0
  694. package/dist/unix/compare/areUnixEqualBy.js +39 -0
  695. package/dist/unix/compare/index.d.ts +4 -0
  696. package/dist/unix/compare/index.js +4 -0
  697. package/dist/unix/compare/isAfterUnix.d.ts +19 -0
  698. package/dist/unix/compare/isAfterUnix.js +31 -0
  699. package/dist/unix/compare/isBeforeUnix.d.ts +21 -0
  700. package/dist/unix/compare/isBeforeUnix.js +33 -0
  701. package/dist/unix/convert/convertUnixToPlainDate.d.ts +19 -0
  702. package/dist/unix/convert/convertUnixToPlainDate.js +38 -0
  703. package/dist/unix/convert/convertUnixToPlainDateTime.d.ts +19 -0
  704. package/dist/unix/convert/convertUnixToPlainDateTime.js +38 -0
  705. package/dist/unix/convert/convertUnixToPlainTime.d.ts +19 -0
  706. package/dist/unix/convert/convertUnixToPlainTime.js +38 -0
  707. package/dist/unix/convert/convertUnixToUtc.d.ts +17 -0
  708. package/dist/unix/convert/convertUnixToUtc.js +31 -0
  709. package/dist/unix/convert/convertUnixToZoned.d.ts +18 -0
  710. package/dist/unix/convert/convertUnixToZoned.js +35 -0
  711. package/dist/unix/convert/index.d.ts +5 -0
  712. package/dist/unix/convert/index.js +5 -0
  713. package/dist/unix/format/formatCalendarUnix.d.ts +29 -0
  714. package/dist/unix/format/formatCalendarUnix.js +107 -0
  715. package/dist/unix/format/formatRelativeUnix.d.ts +34 -0
  716. package/dist/unix/format/formatRelativeUnix.js +118 -0
  717. package/dist/unix/format/formatUnix.d.ts +6 -0
  718. package/dist/unix/format/formatUnix.js +41 -0
  719. package/dist/unix/format/index.d.ts +3 -0
  720. package/dist/unix/format/index.js +3 -0
  721. package/dist/unix/get/getUnixDay.d.ts +13 -0
  722. package/dist/unix/get/getUnixDay.js +24 -0
  723. package/dist/unix/get/getUnixHour.d.ts +13 -0
  724. package/dist/unix/get/getUnixHour.js +24 -0
  725. package/dist/unix/get/getUnixMicrosecond.d.ts +13 -0
  726. package/dist/unix/get/getUnixMicrosecond.js +23 -0
  727. package/dist/unix/get/getUnixMillisecond.d.ts +13 -0
  728. package/dist/unix/get/getUnixMillisecond.js +24 -0
  729. package/dist/unix/get/getUnixMinute.d.ts +13 -0
  730. package/dist/unix/get/getUnixMinute.js +24 -0
  731. package/dist/unix/get/getUnixMonth.d.ts +13 -0
  732. package/dist/unix/get/getUnixMonth.js +24 -0
  733. package/dist/unix/get/getUnixNanosecond.d.ts +13 -0
  734. package/dist/unix/get/getUnixNanosecond.js +23 -0
  735. package/dist/unix/get/getUnixNow.d.ts +15 -0
  736. package/dist/unix/get/getUnixNow.js +28 -0
  737. package/dist/unix/get/getUnixNowUnit.d.ts +18 -0
  738. package/dist/unix/get/getUnixNowUnit.js +61 -0
  739. package/dist/unix/get/getUnixSecond.d.ts +13 -0
  740. package/dist/unix/get/getUnixSecond.js +24 -0
  741. package/dist/unix/get/getUnixYear.d.ts +13 -0
  742. package/dist/unix/get/getUnixYear.js +24 -0
  743. package/dist/unix/get/index.d.ts +11 -0
  744. package/dist/unix/get/index.js +11 -0
  745. package/dist/unix/index.d.ts +8 -0
  746. package/dist/unix/index.js +8 -0
  747. package/dist/unix/interval/index.d.ts +18 -0
  748. package/dist/unix/interval/index.js +18 -0
  749. package/dist/unix/interval/intervalAbutsUnix.d.ts +22 -0
  750. package/dist/unix/interval/intervalAbutsUnix.js +54 -0
  751. package/dist/unix/interval/intervalContainsUnix.d.ts +25 -0
  752. package/dist/unix/interval/intervalContainsUnix.js +60 -0
  753. package/dist/unix/interval/intervalCountUnix.d.ts +28 -0
  754. package/dist/unix/interval/intervalCountUnix.js +44 -0
  755. package/dist/unix/interval/intervalDifferenceUnix.d.ts +24 -0
  756. package/dist/unix/interval/intervalDifferenceUnix.js +57 -0
  757. package/dist/unix/interval/intervalDivideEquallyUnix.d.ts +27 -0
  758. package/dist/unix/interval/intervalDivideEquallyUnix.js +54 -0
  759. package/dist/unix/interval/intervalEngulfsUnix.d.ts +22 -0
  760. package/dist/unix/interval/intervalEngulfsUnix.js +46 -0
  761. package/dist/unix/interval/intervalFromDurationUnix.d.ts +37 -0
  762. package/dist/unix/interval/intervalFromDurationUnix.js +73 -0
  763. package/dist/unix/interval/intervalIntersectionUnix.d.ts +24 -0
  764. package/dist/unix/interval/intervalIntersectionUnix.js +57 -0
  765. package/dist/unix/interval/intervalLengthUnix.d.ts +24 -0
  766. package/dist/unix/interval/intervalLengthUnix.js +39 -0
  767. package/dist/unix/interval/intervalOverlappingDaysUnix.d.ts +34 -0
  768. package/dist/unix/interval/intervalOverlappingDaysUnix.js +89 -0
  769. package/dist/unix/interval/intervalSplitAtUnix.d.ts +26 -0
  770. package/dist/unix/interval/intervalSplitAtUnix.js +55 -0
  771. package/dist/unix/interval/intervalUnionUnix.d.ts +25 -0
  772. package/dist/unix/interval/intervalUnionUnix.js +58 -0
  773. package/dist/unix/interval/intervalXorAllUnix.d.ts +28 -0
  774. package/dist/unix/interval/intervalXorAllUnix.js +77 -0
  775. package/dist/unix/interval/intervalXorUnix.d.ts +25 -0
  776. package/dist/unix/interval/intervalXorUnix.js +70 -0
  777. package/dist/unix/interval/intervalsOverlapUnix.d.ts +21 -0
  778. package/dist/unix/interval/intervalsOverlapUnix.js +51 -0
  779. package/dist/unix/interval/mergeIntervalsUnix.d.ts +25 -0
  780. package/dist/unix/interval/mergeIntervalsUnix.js +55 -0
  781. package/dist/unix/interval/resolveUnixIntervalPair.d.ts +7 -0
  782. package/dist/unix/interval/resolveUnixIntervalPair.js +36 -0
  783. package/dist/unix/interval/splitIntervalByUnitUnix.d.ts +27 -0
  784. package/dist/unix/interval/splitIntervalByUnitUnix.js +85 -0
  785. package/dist/unix/interval/validate/index.d.ts +1 -0
  786. package/dist/unix/interval/validate/index.js +1 -0
  787. package/dist/unix/interval/validate/isValidUnixInterval.d.ts +18 -0
  788. package/dist/unix/interval/validate/isValidUnixInterval.js +31 -0
  789. package/dist/unix/parse/index.d.ts +12 -0
  790. package/dist/unix/parse/index.js +12 -0
  791. package/dist/unix/parse/parseDateFromUnix.d.ts +20 -0
  792. package/dist/unix/parse/parseDateFromUnix.js +45 -0
  793. package/dist/unix/parse/parseDayFromUnix.d.ts +18 -0
  794. package/dist/unix/parse/parseDayFromUnix.js +17 -0
  795. package/dist/unix/parse/parseDayOfWeekFromUnix.d.ts +18 -0
  796. package/dist/unix/parse/parseDayOfWeekFromUnix.js +44 -0
  797. package/dist/unix/parse/parseHourFromUnix.d.ts +18 -0
  798. package/dist/unix/parse/parseHourFromUnix.js +17 -0
  799. package/dist/unix/parse/parseMicrosecondFromUnix.d.ts +18 -0
  800. package/dist/unix/parse/parseMicrosecondFromUnix.js +17 -0
  801. package/dist/unix/parse/parseMillisecondFromUnix.d.ts +18 -0
  802. package/dist/unix/parse/parseMillisecondFromUnix.js +17 -0
  803. package/dist/unix/parse/parseMinuteFromUnix.d.ts +18 -0
  804. package/dist/unix/parse/parseMinuteFromUnix.js +17 -0
  805. package/dist/unix/parse/parseMonthFromUnix.d.ts +19 -0
  806. package/dist/unix/parse/parseMonthFromUnix.js +18 -0
  807. package/dist/unix/parse/parseNanosecondFromUnix.d.ts +18 -0
  808. package/dist/unix/parse/parseNanosecondFromUnix.js +17 -0
  809. package/dist/unix/parse/parseSecondFromUnix.d.ts +18 -0
  810. package/dist/unix/parse/parseSecondFromUnix.js +17 -0
  811. package/dist/unix/parse/parseTimeFromUnix.d.ts +20 -0
  812. package/dist/unix/parse/parseTimeFromUnix.js +45 -0
  813. package/dist/unix/parse/parseUnitFromUnix.d.ts +25 -0
  814. package/dist/unix/parse/parseUnitFromUnix.js +77 -0
  815. package/dist/unix/parse/parseWeekFromUnix.d.ts +20 -0
  816. package/dist/unix/parse/parseWeekFromUnix.js +47 -0
  817. package/dist/unix/parse/parseYearFromUnix.d.ts +19 -0
  818. package/dist/unix/parse/parseYearFromUnix.js +18 -0
  819. package/dist/unix/validate/index.d.ts +4 -0
  820. package/dist/unix/validate/index.js +4 -0
  821. package/dist/unix/validate/isValidUnixMilliseconds.d.ts +14 -0
  822. package/dist/unix/validate/isValidUnixMilliseconds.js +19 -0
  823. package/dist/unix/validate/isValidUnixRange.d.ts +24 -0
  824. package/dist/unix/validate/isValidUnixRange.js +34 -0
  825. package/dist/unix/validate/isValidUnixSeconds.d.ts +14 -0
  826. package/dist/unix/validate/isValidUnixSeconds.js +19 -0
  827. package/dist/unix/validate/isValidUnixUnit.d.ts +18 -0
  828. package/dist/unix/validate/isValidUnixUnit.js +22 -0
  829. package/dist/utc/calculate/addUtc.d.ts +23 -0
  830. package/dist/utc/calculate/addUtc.js +42 -0
  831. package/dist/utc/calculate/diffUtc.d.ts +27 -0
  832. package/dist/utc/calculate/diffUtc.js +61 -0
  833. package/dist/utc/calculate/diffUtcAsDuration.d.ts +31 -0
  834. package/dist/utc/calculate/diffUtcAsDuration.js +50 -0
  835. package/dist/utc/calculate/endOfQuarterForUtc.d.ts +14 -0
  836. package/dist/utc/calculate/endOfQuarterForUtc.js +49 -0
  837. package/dist/utc/calculate/endOfUtc.d.ts +22 -0
  838. package/dist/utc/calculate/endOfUtc.js +21 -0
  839. package/dist/utc/calculate/index.d.ts +14 -0
  840. package/dist/utc/calculate/index.js +14 -0
  841. package/dist/utc/calculate/isBetweenUtc.d.ts +21 -0
  842. package/dist/utc/calculate/isBetweenUtc.js +52 -0
  843. package/dist/utc/calculate/maxUtc.d.ts +15 -0
  844. package/dist/utc/calculate/maxUtc.js +35 -0
  845. package/dist/utc/calculate/minUtc.d.ts +15 -0
  846. package/dist/utc/calculate/minUtc.js +35 -0
  847. package/dist/utc/calculate/roundUtc.d.ts +26 -0
  848. package/dist/utc/calculate/roundUtc.js +56 -0
  849. package/dist/utc/calculate/setUtc.d.ts +38 -0
  850. package/dist/utc/calculate/setUtc.js +54 -0
  851. package/dist/utc/calculate/sortUtc.d.ts +17 -0
  852. package/dist/utc/calculate/sortUtc.js +36 -0
  853. package/dist/utc/calculate/startOfQuarterForUtc.d.ts +13 -0
  854. package/dist/utc/calculate/startOfQuarterForUtc.js +32 -0
  855. package/dist/utc/calculate/startOfUtc.d.ts +22 -0
  856. package/dist/utc/calculate/startOfUtc.js +21 -0
  857. package/dist/utc/calculate/startOrEndOfUtc.d.ts +6 -0
  858. package/dist/utc/calculate/startOrEndOfUtc.js +143 -0
  859. package/dist/utc/calculate/subtractUtc.d.ts +23 -0
  860. package/dist/utc/calculate/subtractUtc.js +42 -0
  861. package/dist/utc/chop/chopUtc.d.ts +14 -0
  862. package/dist/utc/chop/chopUtc.js +21 -0
  863. package/dist/utc/chop/index.d.ts +1 -0
  864. package/dist/utc/chop/index.js +1 -0
  865. package/dist/utc/compare/areUtcEqual.d.ts +15 -0
  866. package/dist/utc/compare/areUtcEqual.js +29 -0
  867. package/dist/utc/compare/areUtcEqualBy.d.ts +30 -0
  868. package/dist/utc/compare/areUtcEqualBy.js +45 -0
  869. package/dist/utc/compare/index.d.ts +4 -0
  870. package/dist/utc/compare/index.js +4 -0
  871. package/dist/utc/compare/isAfterUtc.d.ts +15 -0
  872. package/dist/utc/compare/isAfterUtc.js +28 -0
  873. package/dist/utc/compare/isBeforeUtc.d.ts +15 -0
  874. package/dist/utc/compare/isBeforeUtc.js +29 -0
  875. package/dist/utc/convert/convertUtcToPlainDate.d.ts +18 -0
  876. package/dist/utc/convert/convertUtcToPlainDate.js +35 -0
  877. package/dist/utc/convert/convertUtcToPlainDateTime.d.ts +18 -0
  878. package/dist/utc/convert/convertUtcToPlainDateTime.js +41 -0
  879. package/dist/utc/convert/convertUtcToPlainTime.d.ts +18 -0
  880. package/dist/utc/convert/convertUtcToPlainTime.js +35 -0
  881. package/dist/utc/convert/convertUtcToUnix.d.ts +17 -0
  882. package/dist/utc/convert/convertUtcToUnix.js +33 -0
  883. package/dist/utc/convert/convertUtcToZoned.d.ts +15 -0
  884. package/dist/utc/convert/convertUtcToZoned.js +28 -0
  885. package/dist/utc/convert/index.d.ts +5 -0
  886. package/dist/utc/convert/index.js +5 -0
  887. package/dist/utc/format/formatCalendarUtc.d.ts +28 -0
  888. package/dist/utc/format/formatCalendarUtc.js +68 -0
  889. package/dist/utc/format/formatHttp.d.ts +22 -0
  890. package/dist/utc/format/formatHttp.js +42 -0
  891. package/dist/utc/format/formatRelativeUtc.d.ts +33 -0
  892. package/dist/utc/format/formatRelativeUtc.js +76 -0
  893. package/dist/utc/format/formatUtc.d.ts +5 -0
  894. package/dist/utc/format/formatUtc.js +23 -0
  895. package/dist/utc/format/index.d.ts +4 -0
  896. package/dist/utc/format/index.js +4 -0
  897. package/dist/utc/get/getUtcDay.d.ts +13 -0
  898. package/dist/utc/get/getUtcDay.js +24 -0
  899. package/dist/utc/get/getUtcHour.d.ts +13 -0
  900. package/dist/utc/get/getUtcHour.js +24 -0
  901. package/dist/utc/get/getUtcMicrosecond.d.ts +13 -0
  902. package/dist/utc/get/getUtcMicrosecond.js +23 -0
  903. package/dist/utc/get/getUtcMillisecond.d.ts +13 -0
  904. package/dist/utc/get/getUtcMillisecond.js +24 -0
  905. package/dist/utc/get/getUtcMinute.d.ts +13 -0
  906. package/dist/utc/get/getUtcMinute.js +24 -0
  907. package/dist/utc/get/getUtcMonth.d.ts +13 -0
  908. package/dist/utc/get/getUtcMonth.js +24 -0
  909. package/dist/utc/get/getUtcNanosecond.d.ts +13 -0
  910. package/dist/utc/get/getUtcNanosecond.js +23 -0
  911. package/dist/utc/get/getUtcNow.d.ts +12 -0
  912. package/dist/utc/get/getUtcNow.js +20 -0
  913. package/dist/utc/get/getUtcNowUnit.d.ts +18 -0
  914. package/dist/utc/get/getUtcNowUnit.js +61 -0
  915. package/dist/utc/get/getUtcSecond.d.ts +13 -0
  916. package/dist/utc/get/getUtcSecond.js +24 -0
  917. package/dist/utc/get/getUtcYear.d.ts +13 -0
  918. package/dist/utc/get/getUtcYear.js +24 -0
  919. package/dist/utc/get/index.d.ts +11 -0
  920. package/dist/utc/get/index.js +11 -0
  921. package/dist/utc/index.d.ts +9 -0
  922. package/dist/utc/index.js +9 -0
  923. package/dist/utc/interval/index.d.ts +18 -0
  924. package/dist/utc/interval/index.js +18 -0
  925. package/dist/utc/interval/intervalAbutsUtc.d.ts +22 -0
  926. package/dist/utc/interval/intervalAbutsUtc.js +70 -0
  927. package/dist/utc/interval/intervalContainsUtc.d.ts +23 -0
  928. package/dist/utc/interval/intervalContainsUtc.js +66 -0
  929. package/dist/utc/interval/intervalCountUtc.d.ts +28 -0
  930. package/dist/utc/interval/intervalCountUtc.js +68 -0
  931. package/dist/utc/interval/intervalDifferenceUtc.d.ts +24 -0
  932. package/dist/utc/interval/intervalDifferenceUtc.js +76 -0
  933. package/dist/utc/interval/intervalDivideEquallyUtc.d.ts +26 -0
  934. package/dist/utc/interval/intervalDivideEquallyUtc.js +65 -0
  935. package/dist/utc/interval/intervalEngulfsUtc.d.ts +22 -0
  936. package/dist/utc/interval/intervalEngulfsUtc.js +61 -0
  937. package/dist/utc/interval/intervalFromDurationUtc.d.ts +35 -0
  938. package/dist/utc/interval/intervalFromDurationUtc.js +64 -0
  939. package/dist/utc/interval/intervalIntersectionUtc.d.ts +23 -0
  940. package/dist/utc/interval/intervalIntersectionUtc.js +64 -0
  941. package/dist/utc/interval/intervalLengthUtc.d.ts +22 -0
  942. package/dist/utc/interval/intervalLengthUtc.js +52 -0
  943. package/dist/utc/interval/intervalOverlappingDaysUtc.d.ts +29 -0
  944. package/dist/utc/interval/intervalOverlappingDaysUtc.js +75 -0
  945. package/dist/utc/interval/intervalSplitAtUtc.d.ts +27 -0
  946. package/dist/utc/interval/intervalSplitAtUtc.js +64 -0
  947. package/dist/utc/interval/intervalUnionUtc.d.ts +24 -0
  948. package/dist/utc/interval/intervalUnionUtc.js +65 -0
  949. package/dist/utc/interval/intervalXorAllUtc.d.ts +28 -0
  950. package/dist/utc/interval/intervalXorAllUtc.js +81 -0
  951. package/dist/utc/interval/intervalXorUtc.d.ts +25 -0
  952. package/dist/utc/interval/intervalXorUtc.js +97 -0
  953. package/dist/utc/interval/intervalsOverlapUtc.d.ts +20 -0
  954. package/dist/utc/interval/intervalsOverlapUtc.js +59 -0
  955. package/dist/utc/interval/mergeIntervalsUtc.d.ts +25 -0
  956. package/dist/utc/interval/mergeIntervalsUtc.js +61 -0
  957. package/dist/utc/interval/splitIntervalByUnitUtc.d.ts +25 -0
  958. package/dist/utc/interval/splitIntervalByUnitUtc.js +78 -0
  959. package/dist/utc/interval/validate/index.d.ts +1 -0
  960. package/dist/utc/interval/validate/index.js +1 -0
  961. package/dist/utc/interval/validate/isValidUtcInterval.d.ts +19 -0
  962. package/dist/utc/interval/validate/isValidUtcInterval.js +40 -0
  963. package/dist/utc/parse/index.d.ts +15 -0
  964. package/dist/utc/parse/index.js +15 -0
  965. package/dist/utc/parse/parseDateFromUtc.d.ts +13 -0
  966. package/dist/utc/parse/parseDateFromUtc.js +27 -0
  967. package/dist/utc/parse/parseDayFromUtc.d.ts +13 -0
  968. package/dist/utc/parse/parseDayFromUtc.js +26 -0
  969. package/dist/utc/parse/parseDayOfWeekFromUtc.d.ts +14 -0
  970. package/dist/utc/parse/parseDayOfWeekFromUtc.js +27 -0
  971. package/dist/utc/parse/parseHourFromUtc.d.ts +13 -0
  972. package/dist/utc/parse/parseHourFromUtc.js +26 -0
  973. package/dist/utc/parse/parseHttp.d.ts +24 -0
  974. package/dist/utc/parse/parseHttp.js +51 -0
  975. package/dist/utc/parse/parseMicrosecondFromUtc.d.ts +13 -0
  976. package/dist/utc/parse/parseMicrosecondFromUtc.js +26 -0
  977. package/dist/utc/parse/parseMillisecondFromUtc.d.ts +13 -0
  978. package/dist/utc/parse/parseMillisecondFromUtc.js +26 -0
  979. package/dist/utc/parse/parseMinuteFromUtc.d.ts +13 -0
  980. package/dist/utc/parse/parseMinuteFromUtc.js +26 -0
  981. package/dist/utc/parse/parseMonthFromUtc.d.ts +13 -0
  982. package/dist/utc/parse/parseMonthFromUtc.js +26 -0
  983. package/dist/utc/parse/parseNanosecondFromUtc.d.ts +13 -0
  984. package/dist/utc/parse/parseNanosecondFromUtc.js +26 -0
  985. package/dist/utc/parse/parseSecondFromUtc.d.ts +13 -0
  986. package/dist/utc/parse/parseSecondFromUtc.js +26 -0
  987. package/dist/utc/parse/parseTimeFromUtc.d.ts +18 -0
  988. package/dist/utc/parse/parseTimeFromUtc.js +35 -0
  989. package/dist/utc/parse/parseUnitFromUtc.d.ts +21 -0
  990. package/dist/utc/parse/parseUnitFromUtc.js +55 -0
  991. package/dist/utc/parse/parseWeekFromUtc.d.ts +16 -0
  992. package/dist/utc/parse/parseWeekFromUtc.js +30 -0
  993. package/dist/utc/parse/parseYearFromUtc.d.ts +13 -0
  994. package/dist/utc/parse/parseYearFromUtc.js +26 -0
  995. package/dist/utc/validate/index.d.ts +2 -0
  996. package/dist/utc/validate/index.js +2 -0
  997. package/dist/utc/validate/isValidUtc.d.ts +17 -0
  998. package/dist/utc/validate/isValidUtc.js +34 -0
  999. package/dist/utc/validate/isValidUtcRange.d.ts +25 -0
  1000. package/dist/utc/validate/isValidUtcRange.js +44 -0
  1001. package/dist/zoned/calculate/addZoned.d.ts +50 -0
  1002. package/dist/zoned/calculate/addZoned.js +88 -0
  1003. package/dist/zoned/calculate/addZonedBusinessDays.d.ts +18 -0
  1004. package/dist/zoned/calculate/addZonedBusinessDays.js +30 -0
  1005. package/dist/zoned/calculate/clampZoned.d.ts +20 -0
  1006. package/dist/zoned/calculate/clampZoned.js +48 -0
  1007. package/dist/zoned/calculate/closestZonedTo.d.ts +18 -0
  1008. package/dist/zoned/calculate/closestZonedTo.js +46 -0
  1009. package/dist/zoned/calculate/cycleZoned.d.ts +44 -0
  1010. package/dist/zoned/calculate/cycleZoned.js +58 -0
  1011. package/dist/zoned/calculate/diffZoned.d.ts +39 -0
  1012. package/dist/zoned/calculate/diffZoned.js +76 -0
  1013. package/dist/zoned/calculate/diffZonedAsDuration.d.ts +36 -0
  1014. package/dist/zoned/calculate/diffZonedAsDuration.js +55 -0
  1015. package/dist/zoned/calculate/endOfQuarterForZoned.d.ts +25 -0
  1016. package/dist/zoned/calculate/endOfQuarterForZoned.js +50 -0
  1017. package/dist/zoned/calculate/endOfZoned.d.ts +28 -0
  1018. package/dist/zoned/calculate/endOfZoned.js +130 -0
  1019. package/dist/zoned/calculate/getHoursInZonedDay.d.ts +22 -0
  1020. package/dist/zoned/calculate/getHoursInZonedDay.js +45 -0
  1021. package/dist/zoned/calculate/getLocaleZonedDayOfWeek.d.ts +20 -0
  1022. package/dist/zoned/calculate/getLocaleZonedDayOfWeek.js +36 -0
  1023. package/dist/zoned/calculate/getLocaleZonedEndOfWeek.d.ts +44 -0
  1024. package/dist/zoned/calculate/getLocaleZonedEndOfWeek.js +68 -0
  1025. package/dist/zoned/calculate/getLocaleZonedStartOfWeek.d.ts +44 -0
  1026. package/dist/zoned/calculate/getLocaleZonedStartOfWeek.js +68 -0
  1027. package/dist/zoned/calculate/getQuarterForZoned.d.ts +15 -0
  1028. package/dist/zoned/calculate/getQuarterForZoned.js +28 -0
  1029. package/dist/zoned/calculate/index.d.ts +23 -0
  1030. package/dist/zoned/calculate/index.js +23 -0
  1031. package/dist/zoned/calculate/maxZoned.d.ts +15 -0
  1032. package/dist/zoned/calculate/maxZoned.js +35 -0
  1033. package/dist/zoned/calculate/minZoned.d.ts +15 -0
  1034. package/dist/zoned/calculate/minZoned.js +35 -0
  1035. package/dist/zoned/calculate/roundZoned.d.ts +23 -0
  1036. package/dist/zoned/calculate/roundZoned.js +55 -0
  1037. package/dist/zoned/calculate/setZoned.d.ts +39 -0
  1038. package/dist/zoned/calculate/setZoned.js +56 -0
  1039. package/dist/zoned/calculate/sortZoned.d.ts +17 -0
  1040. package/dist/zoned/calculate/sortZoned.js +36 -0
  1041. package/dist/zoned/calculate/startOfQuarterForZoned.d.ts +25 -0
  1042. package/dist/zoned/calculate/startOfQuarterForZoned.js +40 -0
  1043. package/dist/zoned/calculate/startOfZoned.d.ts +27 -0
  1044. package/dist/zoned/calculate/startOfZoned.js +122 -0
  1045. package/dist/zoned/calculate/subtractZoned.d.ts +47 -0
  1046. package/dist/zoned/calculate/subtractZoned.js +82 -0
  1047. package/dist/zoned/calculate/subtractZonedBusinessDays.d.ts +18 -0
  1048. package/dist/zoned/calculate/subtractZonedBusinessDays.js +28 -0
  1049. package/dist/zoned/chop/chopZonedDate.d.ts +13 -0
  1050. package/dist/zoned/chop/chopZonedDate.js +24 -0
  1051. package/dist/zoned/chop/chopZonedDateTime.d.ts +13 -0
  1052. package/dist/zoned/chop/chopZonedDateTime.js +26 -0
  1053. package/dist/zoned/chop/chopZonedMilliseconds.d.ts +13 -0
  1054. package/dist/zoned/chop/chopZonedMilliseconds.js +26 -0
  1055. package/dist/zoned/chop/chopZonedSeconds.d.ts +13 -0
  1056. package/dist/zoned/chop/chopZonedSeconds.js +26 -0
  1057. package/dist/zoned/chop/chopZonedTime.d.ts +13 -0
  1058. package/dist/zoned/chop/chopZonedTime.js +24 -0
  1059. package/dist/zoned/chop/chopZonedTimezone.d.ts +13 -0
  1060. package/dist/zoned/chop/chopZonedTimezone.js +24 -0
  1061. package/dist/zoned/chop/index.d.ts +6 -0
  1062. package/dist/zoned/chop/index.js +6 -0
  1063. package/dist/zoned/compare/areZonedEqual.d.ts +15 -0
  1064. package/dist/zoned/compare/areZonedEqual.js +45 -0
  1065. package/dist/zoned/compare/areZonedEqualBy.d.ts +30 -0
  1066. package/dist/zoned/compare/areZonedEqualBy.js +49 -0
  1067. package/dist/zoned/compare/index.d.ts +12 -0
  1068. package/dist/zoned/compare/index.js +12 -0
  1069. package/dist/zoned/compare/isAfterZoned.d.ts +15 -0
  1070. package/dist/zoned/compare/isAfterZoned.js +36 -0
  1071. package/dist/zoned/compare/isBeforeZoned.d.ts +15 -0
  1072. package/dist/zoned/compare/isBeforeZoned.js +36 -0
  1073. package/dist/zoned/compare/isBetweenZoned.d.ts +19 -0
  1074. package/dist/zoned/compare/isBetweenZoned.js +55 -0
  1075. package/dist/zoned/compare/isInDaylightSaving.d.ts +25 -0
  1076. package/dist/zoned/compare/isInDaylightSaving.js +68 -0
  1077. package/dist/zoned/compare/isZonedBusinessDay.d.ts +22 -0
  1078. package/dist/zoned/compare/isZonedBusinessDay.js +34 -0
  1079. package/dist/zoned/compare/isZonedFuture.d.ts +18 -0
  1080. package/dist/zoned/compare/isZonedFuture.js +31 -0
  1081. package/dist/zoned/compare/isZonedPast.d.ts +18 -0
  1082. package/dist/zoned/compare/isZonedPast.js +31 -0
  1083. package/dist/zoned/compare/isZonedRelativeDay.d.ts +25 -0
  1084. package/dist/zoned/compare/isZonedRelativeDay.js +40 -0
  1085. package/dist/zoned/compare/isZonedThisUnit.d.ts +28 -0
  1086. package/dist/zoned/compare/isZonedThisUnit.js +52 -0
  1087. package/dist/zoned/compare/isZonedWeekend.d.ts +23 -0
  1088. package/dist/zoned/compare/isZonedWeekend.js +39 -0
  1089. package/dist/zoned/convert/convertPlainDateTimeToZoned.d.ts +26 -0
  1090. package/dist/zoned/convert/convertPlainDateTimeToZoned.js +42 -0
  1091. package/dist/zoned/convert/convertZonedToCalendar.d.ts +49 -0
  1092. package/dist/zoned/convert/convertZonedToCalendar.js +67 -0
  1093. package/dist/zoned/convert/convertZonedToPlainDateTime.d.ts +13 -0
  1094. package/dist/zoned/convert/convertZonedToPlainDateTime.js +25 -0
  1095. package/dist/zoned/convert/convertZonedToUnix.d.ts +17 -0
  1096. package/dist/zoned/convert/convertZonedToUnix.js +34 -0
  1097. package/dist/zoned/convert/convertZonedToUtc.d.ts +13 -0
  1098. package/dist/zoned/convert/convertZonedToUtc.js +25 -0
  1099. package/dist/zoned/convert/convertZonedToZoned.d.ts +14 -0
  1100. package/dist/zoned/convert/convertZonedToZoned.js +27 -0
  1101. package/dist/zoned/convert/index.d.ts +6 -0
  1102. package/dist/zoned/convert/index.js +6 -0
  1103. package/dist/zoned/format/formatCalendarZoned.d.ts +34 -0
  1104. package/dist/zoned/format/formatCalendarZoned.js +65 -0
  1105. package/dist/zoned/format/formatRelativeZoned.d.ts +44 -0
  1106. package/dist/zoned/format/formatRelativeZoned.js +79 -0
  1107. package/dist/zoned/format/formatRfc2822.d.ts +22 -0
  1108. package/dist/zoned/format/formatRfc2822.js +47 -0
  1109. package/dist/zoned/format/formatRfc3339.d.ts +24 -0
  1110. package/dist/zoned/format/formatRfc3339.js +37 -0
  1111. package/dist/zoned/format/formatTimeZoneName.d.ts +39 -0
  1112. package/dist/zoned/format/formatTimeZoneName.js +56 -0
  1113. package/dist/zoned/format/formatZonedDateTime.d.ts +17 -0
  1114. package/dist/zoned/format/formatZonedDateTime.js +32 -0
  1115. package/dist/zoned/format/formatZonedRange.d.ts +18 -0
  1116. package/dist/zoned/format/formatZonedRange.js +48 -0
  1117. package/dist/zoned/format/formatZonedToParts.d.ts +29 -0
  1118. package/dist/zoned/format/formatZonedToParts.js +48 -0
  1119. package/dist/zoned/format/index.d.ts +8 -0
  1120. package/dist/zoned/format/index.js +8 -0
  1121. package/dist/zoned/get/getDstTransitions.d.ts +36 -0
  1122. package/dist/zoned/get/getDstTransitions.js +62 -0
  1123. package/dist/zoned/get/getSystemTimeZone.d.ts +11 -0
  1124. package/dist/zoned/get/getSystemTimeZone.js +19 -0
  1125. package/dist/zoned/get/getTimeZoneOffset.d.ts +21 -0
  1126. package/dist/zoned/get/getTimeZoneOffset.js +33 -0
  1127. package/dist/zoned/get/getTimeZones.d.ts +12 -0
  1128. package/dist/zoned/get/getTimeZones.js +19 -0
  1129. package/dist/zoned/get/getZonedDay.d.ts +13 -0
  1130. package/dist/zoned/get/getZonedDay.js +26 -0
  1131. package/dist/zoned/get/getZonedDayOfWeek.d.ts +14 -0
  1132. package/dist/zoned/get/getZonedDayOfWeek.js +26 -0
  1133. package/dist/zoned/get/getZonedHour.d.ts +13 -0
  1134. package/dist/zoned/get/getZonedHour.js +26 -0
  1135. package/dist/zoned/get/getZonedMicrosecond.d.ts +13 -0
  1136. package/dist/zoned/get/getZonedMicrosecond.js +26 -0
  1137. package/dist/zoned/get/getZonedMillisecond.d.ts +13 -0
  1138. package/dist/zoned/get/getZonedMillisecond.js +26 -0
  1139. package/dist/zoned/get/getZonedMinute.d.ts +13 -0
  1140. package/dist/zoned/get/getZonedMinute.js +26 -0
  1141. package/dist/zoned/get/getZonedMonth.d.ts +13 -0
  1142. package/dist/zoned/get/getZonedMonth.js +26 -0
  1143. package/dist/zoned/get/getZonedNanosecond.d.ts +13 -0
  1144. package/dist/zoned/get/getZonedNanosecond.js +26 -0
  1145. package/dist/zoned/get/getZonedNow.d.ts +17 -0
  1146. package/dist/zoned/get/getZonedNow.js +31 -0
  1147. package/dist/zoned/get/getZonedNowUnit.d.ts +16 -0
  1148. package/dist/zoned/get/getZonedNowUnit.js +72 -0
  1149. package/dist/zoned/get/getZonedSecond.d.ts +13 -0
  1150. package/dist/zoned/get/getZonedSecond.js +26 -0
  1151. package/dist/zoned/get/getZonedToday.d.ts +13 -0
  1152. package/dist/zoned/get/getZonedToday.js +26 -0
  1153. package/dist/zoned/get/getZonedWeekOfYear.d.ts +14 -0
  1154. package/dist/zoned/get/getZonedWeekOfYear.js +26 -0
  1155. package/dist/zoned/get/getZonedYear.d.ts +13 -0
  1156. package/dist/zoned/get/getZonedYear.js +26 -0
  1157. package/dist/zoned/get/index.d.ts +18 -0
  1158. package/dist/zoned/get/index.js +18 -0
  1159. package/dist/zoned/index.d.ts +11 -0
  1160. package/dist/zoned/index.js +12 -0
  1161. package/dist/zoned/interval/index.d.ts +18 -0
  1162. package/dist/zoned/interval/index.js +18 -0
  1163. package/dist/zoned/interval/intervalAbutsZoned.d.ts +30 -0
  1164. package/dist/zoned/interval/intervalAbutsZoned.js +74 -0
  1165. package/dist/zoned/interval/intervalContainsZoned.d.ts +31 -0
  1166. package/dist/zoned/interval/intervalContainsZoned.js +70 -0
  1167. package/dist/zoned/interval/intervalCountZoned.d.ts +39 -0
  1168. package/dist/zoned/interval/intervalCountZoned.js +82 -0
  1169. package/dist/zoned/interval/intervalDifferenceZoned.d.ts +38 -0
  1170. package/dist/zoned/interval/intervalDifferenceZoned.js +94 -0
  1171. package/dist/zoned/interval/intervalDivideEquallyZoned.d.ts +35 -0
  1172. package/dist/zoned/interval/intervalDivideEquallyZoned.js +80 -0
  1173. package/dist/zoned/interval/intervalEngulfsZoned.d.ts +30 -0
  1174. package/dist/zoned/interval/intervalEngulfsZoned.js +65 -0
  1175. package/dist/zoned/interval/intervalFromDurationZoned.d.ts +45 -0
  1176. package/dist/zoned/interval/intervalFromDurationZoned.js +85 -0
  1177. package/dist/zoned/interval/intervalIntersectionZoned.d.ts +36 -0
  1178. package/dist/zoned/interval/intervalIntersectionZoned.js +77 -0
  1179. package/dist/zoned/interval/intervalLengthZoned.d.ts +31 -0
  1180. package/dist/zoned/interval/intervalLengthZoned.js +61 -0
  1181. package/dist/zoned/interval/intervalOverlappingDaysZoned.d.ts +42 -0
  1182. package/dist/zoned/interval/intervalOverlappingDaysZoned.js +89 -0
  1183. package/dist/zoned/interval/intervalSplitAtZoned.d.ts +36 -0
  1184. package/dist/zoned/interval/intervalSplitAtZoned.js +84 -0
  1185. package/dist/zoned/interval/intervalUnionZoned.d.ts +38 -0
  1186. package/dist/zoned/interval/intervalUnionZoned.js +79 -0
  1187. package/dist/zoned/interval/intervalXorAllZoned.d.ts +37 -0
  1188. package/dist/zoned/interval/intervalXorAllZoned.js +108 -0
  1189. package/dist/zoned/interval/intervalXorZoned.d.ts +39 -0
  1190. package/dist/zoned/interval/intervalXorZoned.js +118 -0
  1191. package/dist/zoned/interval/intervalsOverlapZoned.d.ts +27 -0
  1192. package/dist/zoned/interval/intervalsOverlapZoned.js +62 -0
  1193. package/dist/zoned/interval/mergeIntervalsZoned.d.ts +36 -0
  1194. package/dist/zoned/interval/mergeIntervalsZoned.js +77 -0
  1195. package/dist/zoned/interval/splitIntervalByUnitZoned.d.ts +31 -0
  1196. package/dist/zoned/interval/splitIntervalByUnitZoned.js +77 -0
  1197. package/dist/zoned/interval/validate/index.d.ts +2 -0
  1198. package/dist/zoned/interval/validate/index.js +2 -0
  1199. package/dist/zoned/interval/validate/isValidCalendarZonedInterval.d.ts +31 -0
  1200. package/dist/zoned/interval/validate/isValidCalendarZonedInterval.js +45 -0
  1201. package/dist/zoned/interval/validate/isValidZonedInterval.d.ts +23 -0
  1202. package/dist/zoned/interval/validate/isValidZonedInterval.js +44 -0
  1203. package/dist/zoned/map/index.d.ts +2 -0
  1204. package/dist/zoned/map/index.js +2 -0
  1205. package/dist/zoned/map/mapZonedDatesInRange.d.ts +16 -0
  1206. package/dist/zoned/map/mapZonedDatesInRange.js +56 -0
  1207. package/dist/zoned/map/mapZonedHoursInDay.d.ts +23 -0
  1208. package/dist/zoned/map/mapZonedHoursInDay.js +47 -0
  1209. package/dist/zoned/parse/getZonedOffset.d.ts +17 -0
  1210. package/dist/zoned/parse/getZonedOffset.js +29 -0
  1211. package/dist/zoned/parse/getZonedOffsetAs.d.ts +29 -0
  1212. package/dist/zoned/parse/getZonedOffsetAs.js +44 -0
  1213. package/dist/zoned/parse/index.d.ts +20 -0
  1214. package/dist/zoned/parse/index.js +20 -0
  1215. package/dist/zoned/parse/parseDateFromZoned.d.ts +13 -0
  1216. package/dist/zoned/parse/parseDateFromZoned.js +26 -0
  1217. package/dist/zoned/parse/parseDateTimeFromZoned.d.ts +14 -0
  1218. package/dist/zoned/parse/parseDateTimeFromZoned.js +27 -0
  1219. package/dist/zoned/parse/parseDayFromZoned.d.ts +13 -0
  1220. package/dist/zoned/parse/parseDayFromZoned.js +26 -0
  1221. package/dist/zoned/parse/parseDayOfWeekFromZoned.d.ts +14 -0
  1222. package/dist/zoned/parse/parseDayOfWeekFromZoned.js +27 -0
  1223. package/dist/zoned/parse/parseHourFromZoned.d.ts +13 -0
  1224. package/dist/zoned/parse/parseHourFromZoned.js +26 -0
  1225. package/dist/zoned/parse/parseMicrosecondFromZoned.d.ts +13 -0
  1226. package/dist/zoned/parse/parseMicrosecondFromZoned.js +26 -0
  1227. package/dist/zoned/parse/parseMillisecondFromZoned.d.ts +13 -0
  1228. package/dist/zoned/parse/parseMillisecondFromZoned.js +26 -0
  1229. package/dist/zoned/parse/parseMinuteFromZoned.d.ts +13 -0
  1230. package/dist/zoned/parse/parseMinuteFromZoned.js +26 -0
  1231. package/dist/zoned/parse/parseMonthFromZoned.d.ts +13 -0
  1232. package/dist/zoned/parse/parseMonthFromZoned.js +26 -0
  1233. package/dist/zoned/parse/parseNanosecondFromZoned.d.ts +13 -0
  1234. package/dist/zoned/parse/parseNanosecondFromZoned.js +26 -0
  1235. package/dist/zoned/parse/parseRfc2822.d.ts +26 -0
  1236. package/dist/zoned/parse/parseRfc2822.js +71 -0
  1237. package/dist/zoned/parse/parseRfc3339.d.ts +23 -0
  1238. package/dist/zoned/parse/parseRfc3339.js +42 -0
  1239. package/dist/zoned/parse/parseSecondFromZoned.d.ts +13 -0
  1240. package/dist/zoned/parse/parseSecondFromZoned.js +26 -0
  1241. package/dist/zoned/parse/parseTimeFromZoned.d.ts +13 -0
  1242. package/dist/zoned/parse/parseTimeFromZoned.js +26 -0
  1243. package/dist/zoned/parse/parseTimeZoneFromZoned.d.ts +13 -0
  1244. package/dist/zoned/parse/parseTimeZoneFromZoned.js +25 -0
  1245. package/dist/zoned/parse/parseUnitFromZoned.d.ts +19 -0
  1246. package/dist/zoned/parse/parseUnitFromZoned.js +71 -0
  1247. package/dist/zoned/parse/parseWeekFromZoned.d.ts +17 -0
  1248. package/dist/zoned/parse/parseWeekFromZoned.js +30 -0
  1249. package/dist/zoned/parse/parseYearFromZoned.d.ts +13 -0
  1250. package/dist/zoned/parse/parseYearFromZoned.js +26 -0
  1251. package/dist/zoned/validate/hasDaylightSaving.d.ts +17 -0
  1252. package/dist/zoned/validate/hasDaylightSaving.js +43 -0
  1253. package/dist/zoned/validate/index.d.ts +5 -0
  1254. package/dist/zoned/validate/index.js +5 -0
  1255. package/dist/zoned/validate/isValidCalendarZonedDateTime.d.ts +30 -0
  1256. package/dist/zoned/validate/isValidCalendarZonedDateTime.js +41 -0
  1257. package/dist/zoned/validate/isValidTimeZone.d.ts +15 -0
  1258. package/dist/zoned/validate/isValidTimeZone.js +33 -0
  1259. package/dist/zoned/validate/isValidZonedDateTime.d.ts +22 -0
  1260. package/dist/zoned/validate/isValidZonedDateTime.js +39 -0
  1261. package/dist/zoned/validate/isValidZonedRange.d.ts +26 -0
  1262. package/dist/zoned/validate/isValidZonedRange.js +43 -0
  1263. package/package.json +113 -0
  1264. package/skills/_artifacts/domain_map.yaml +547 -0
  1265. package/skills/_artifacts/skill_spec.md +67 -0
  1266. package/skills/_artifacts/skill_tree.yaml +278 -0
  1267. package/skills/api-expansion-workflow/SKILL.md +52 -0
  1268. package/skills/app-integration/SKILL.md +38 -0
  1269. package/skills/calculate-dates/SKILL.md +432 -0
  1270. package/skills/compare-dates/SKILL.md +412 -0
  1271. package/skills/convert-types/SKILL.md +305 -0
  1272. package/skills/durations/SKILL.md +418 -0
  1273. package/skills/format-date-time/SKILL.md +486 -0
  1274. package/skills/format-date-time/references/format-api.md +34 -0
  1275. package/skills/format-relative-time/SKILL.md +223 -0
  1276. package/skills/get-current/SKILL.md +229 -0
  1277. package/skills/interval-ops/SKILL.md +432 -0
  1278. package/skills/issue-creation/SKILL.md +118 -0
  1279. package/skills/lint-package-suggestion/SKILL.md +37 -0
  1280. package/skills/new-method-implementation/SKILL.md +71 -0
  1281. package/skills/parse-date-time/SKILL.md +349 -0
  1282. package/skills/pr-contribution/SKILL.md +180 -0
  1283. package/skills/unit-test-generation/SKILL.md +56 -0
  1284. package/skills/validate-dates/SKILL.md +438 -0
  1285. package/skills/zoned-date-ops/SKILL.md +422 -0
  1286. package/skills/zoned-date-ops/references/timezones.md +13 -0
@@ -0,0 +1,57 @@
1
+ import { Temporal } from "@js-temporal/polyfill";
2
+ import { parseCalendarDateValue } from "../../internal/index.js";
3
+ import { isValidCalendarDate } from "../validate/index.js";
4
+ /**
5
+ * Return true when interval B is fully contained within interval A — every instant of B
6
+ * falls within A.
7
+ *
8
+ * - Uses `Temporal.PlainDate.compare` for comparison.
9
+ * - Equivalent to 4-argument `intervalContainsDate(aStart, aEnd, bStart, bEnd)`.
10
+ * - Returns `false` if either interval is invalid (`start > end`).
11
+ * - Returns `false` on invalid input (wrong type, malformed strings).
12
+ * - Accepts GMT calendar-annotated PlainDate strings — E5 (issue #78). Ordering is
13
+ * calendar-independent, so arguments may carry different or no calendar tags (D4).
14
+ *
15
+ * @param aStart ISO 8601 date string for the outer interval start, optionally calendar-annotated
16
+ * @param aEnd ISO 8601 date string for the outer interval end, optionally calendar-annotated
17
+ * @param bStart ISO 8601 date string for the inner interval start, optionally calendar-annotated
18
+ * @param bEnd ISO 8601 date string for the inner interval end, optionally calendar-annotated
19
+ * @returns true if B is fully contained in A, or false on invalid input
20
+ *
21
+ * @example intervalEngulfsDate("2024-01-01", "2024-12-31", "2024-06-01", "2024-07-01") // true
22
+ * @example intervalEngulfsDate("2024-01-01", "2024-12-31", "2024-01-01", "2024-12-31") // true (equal intervals)
23
+ * @example intervalEngulfsDate("2024-01-01", "2024-12-31", "2024-06-01", "2024-12-31") // true
24
+ * @example intervalEngulfsDate("2024-06-01", "2024-07-01", "2024-01-01", "2024-12-31") // false
25
+ * @example intervalEngulfsDate("invalid", "2024-12-31", "2024-06-01", "2024-07-01") // false
26
+ */
27
+ export function intervalEngulfsDate(aStart, aEnd, bStart, bEnd) {
28
+ if (typeof aStart !== "string" ||
29
+ typeof aEnd !== "string" ||
30
+ typeof bStart !== "string" ||
31
+ typeof bEnd !== "string") {
32
+ return false;
33
+ }
34
+ if (!isValidCalendarDate(aStart) ||
35
+ !isValidCalendarDate(aEnd) ||
36
+ !isValidCalendarDate(bStart) ||
37
+ !isValidCalendarDate(bEnd)) {
38
+ return false;
39
+ }
40
+ try {
41
+ const aS = parseCalendarDateValue(aStart);
42
+ const aE = parseCalendarDateValue(aEnd);
43
+ const bS = parseCalendarDateValue(bStart);
44
+ const bE = parseCalendarDateValue(bEnd);
45
+ if (Temporal.PlainDate.compare(aS, aE) > 0) {
46
+ return false;
47
+ }
48
+ if (Temporal.PlainDate.compare(bS, bE) > 0) {
49
+ return false;
50
+ }
51
+ return (Temporal.PlainDate.compare(aS, bS) <= 0 &&
52
+ Temporal.PlainDate.compare(bE, aE) <= 0);
53
+ }
54
+ catch {
55
+ return false;
56
+ }
57
+ }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Return true when interval B is fully contained within interval A — every instant of B
3
+ * falls within A.
4
+ *
5
+ * - Uses `Temporal.PlainDateTime.compare` for comparison.
6
+ * - Equivalent to 4-argument `intervalContainsDateTime(aStart, aEnd, bStart, bEnd)`.
7
+ * - Returns `false` if either interval is invalid (`start > end`).
8
+ * - Returns `false` on invalid input (wrong type, malformed strings).
9
+ *
10
+ * @param aStart ISO 8601 datetime string for the outer interval start
11
+ * @param aEnd ISO 8601 datetime string for the outer interval end
12
+ * @param bStart ISO 8601 datetime string for the inner interval start
13
+ * @param bEnd ISO 8601 datetime string for the inner interval end
14
+ * @returns true if B is fully contained in A, or false on invalid input
15
+ *
16
+ * @example intervalEngulfsDateTime("2024-01-01T09:00:00", "2024-12-31T17:00:00", "2024-06-01T12:00:00", "2024-07-01T13:00:00") // true
17
+ * @example intervalEngulfsDateTime("2024-01-01T09:00:00", "2024-12-31T17:00:00", "2024-01-01T09:00:00", "2024-12-31T17:00:00") // true (equal intervals)
18
+ * @example intervalEngulfsDateTime("2024-01-01T09:00:00", "2024-12-31T17:00:00", "2024-01-01T09:00:00", "2024-06-30T12:00:00") // true
19
+ * @example intervalEngulfsDateTime("2024-06-01T12:00:00", "2024-07-01T13:00:00", "2024-01-01T09:00:00", "2024-12-31T17:00:00") // false
20
+ * @example intervalEngulfsDateTime("invalid", "2024-12-31T17:00:00", "2024-06-01T12:00:00", "2024-07-01T13:00:00") // false
21
+ */
22
+ export declare function intervalEngulfsDateTime(aStart: string, aEnd: string, bStart: string, bEnd: string): boolean;
@@ -0,0 +1,54 @@
1
+ import { Temporal } from "@js-temporal/polyfill";
2
+ import { plainDateTime } from "../../regex/index.js";
3
+ /**
4
+ * Return true when interval B is fully contained within interval A — every instant of B
5
+ * falls within A.
6
+ *
7
+ * - Uses `Temporal.PlainDateTime.compare` for comparison.
8
+ * - Equivalent to 4-argument `intervalContainsDateTime(aStart, aEnd, bStart, bEnd)`.
9
+ * - Returns `false` if either interval is invalid (`start > end`).
10
+ * - Returns `false` on invalid input (wrong type, malformed strings).
11
+ *
12
+ * @param aStart ISO 8601 datetime string for the outer interval start
13
+ * @param aEnd ISO 8601 datetime string for the outer interval end
14
+ * @param bStart ISO 8601 datetime string for the inner interval start
15
+ * @param bEnd ISO 8601 datetime string for the inner interval end
16
+ * @returns true if B is fully contained in A, or false on invalid input
17
+ *
18
+ * @example intervalEngulfsDateTime("2024-01-01T09:00:00", "2024-12-31T17:00:00", "2024-06-01T12:00:00", "2024-07-01T13:00:00") // true
19
+ * @example intervalEngulfsDateTime("2024-01-01T09:00:00", "2024-12-31T17:00:00", "2024-01-01T09:00:00", "2024-12-31T17:00:00") // true (equal intervals)
20
+ * @example intervalEngulfsDateTime("2024-01-01T09:00:00", "2024-12-31T17:00:00", "2024-01-01T09:00:00", "2024-06-30T12:00:00") // true
21
+ * @example intervalEngulfsDateTime("2024-06-01T12:00:00", "2024-07-01T13:00:00", "2024-01-01T09:00:00", "2024-12-31T17:00:00") // false
22
+ * @example intervalEngulfsDateTime("invalid", "2024-12-31T17:00:00", "2024-06-01T12:00:00", "2024-07-01T13:00:00") // false
23
+ */
24
+ export function intervalEngulfsDateTime(aStart, aEnd, bStart, bEnd) {
25
+ if (typeof aStart !== "string" ||
26
+ typeof aEnd !== "string" ||
27
+ typeof bStart !== "string" ||
28
+ typeof bEnd !== "string") {
29
+ return false;
30
+ }
31
+ if (!plainDateTime.test(aStart) ||
32
+ !plainDateTime.test(aEnd) ||
33
+ !plainDateTime.test(bStart) ||
34
+ !plainDateTime.test(bEnd)) {
35
+ return false;
36
+ }
37
+ try {
38
+ const aS = Temporal.PlainDateTime.from(aStart);
39
+ const aE = Temporal.PlainDateTime.from(aEnd);
40
+ const bS = Temporal.PlainDateTime.from(bStart);
41
+ const bE = Temporal.PlainDateTime.from(bEnd);
42
+ if (Temporal.PlainDateTime.compare(aS, aE) > 0) {
43
+ return false;
44
+ }
45
+ if (Temporal.PlainDateTime.compare(bS, bE) > 0) {
46
+ return false;
47
+ }
48
+ return (Temporal.PlainDateTime.compare(aS, bS) <= 0 &&
49
+ Temporal.PlainDateTime.compare(bE, aE) <= 0);
50
+ }
51
+ catch {
52
+ return false;
53
+ }
54
+ }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Return true when interval B is fully contained within interval A — every instant of B
3
+ * falls within A.
4
+ *
5
+ * - Uses `Temporal.PlainTime.compare` for comparison.
6
+ * - Equivalent to 4-argument `intervalContainsTime(aStart, aEnd, bStart, bEnd)`.
7
+ * - Returns `false` if either interval is invalid (`start > end`).
8
+ * - Returns `false` on invalid input (wrong type, malformed strings).
9
+ *
10
+ * @param aStart ISO 8601 time string for the outer interval start
11
+ * @param aEnd ISO 8601 time string for the outer interval end
12
+ * @param bStart ISO 8601 time string for the inner interval start
13
+ * @param bEnd ISO 8601 time string for the inner interval end
14
+ * @returns true if B is fully contained in A, or false on invalid input
15
+ *
16
+ * @example intervalEngulfsTime("09:00:00", "17:00:00", "12:00:00", "13:00:00") // true
17
+ * @example intervalEngulfsTime("09:00:00", "17:00:00", "09:00:00", "17:00:00") // true (equal intervals)
18
+ * @example intervalEngulfsTime("09:00:00", "17:00:00", "09:00:00", "12:00:00") // true
19
+ * @example intervalEngulfsTime("12:00:00", "13:00:00", "09:00:00", "17:00:00") // false
20
+ * @example intervalEngulfsTime("invalid", "17:00:00", "12:00:00", "13:00:00") // false
21
+ */
22
+ export declare function intervalEngulfsTime(aStart: string, aEnd: string, bStart: string, bEnd: string): boolean;
@@ -0,0 +1,54 @@
1
+ import { Temporal } from "@js-temporal/polyfill";
2
+ import { plainTime } from "../../regex/index.js";
3
+ /**
4
+ * Return true when interval B is fully contained within interval A — every instant of B
5
+ * falls within A.
6
+ *
7
+ * - Uses `Temporal.PlainTime.compare` for comparison.
8
+ * - Equivalent to 4-argument `intervalContainsTime(aStart, aEnd, bStart, bEnd)`.
9
+ * - Returns `false` if either interval is invalid (`start > end`).
10
+ * - Returns `false` on invalid input (wrong type, malformed strings).
11
+ *
12
+ * @param aStart ISO 8601 time string for the outer interval start
13
+ * @param aEnd ISO 8601 time string for the outer interval end
14
+ * @param bStart ISO 8601 time string for the inner interval start
15
+ * @param bEnd ISO 8601 time string for the inner interval end
16
+ * @returns true if B is fully contained in A, or false on invalid input
17
+ *
18
+ * @example intervalEngulfsTime("09:00:00", "17:00:00", "12:00:00", "13:00:00") // true
19
+ * @example intervalEngulfsTime("09:00:00", "17:00:00", "09:00:00", "17:00:00") // true (equal intervals)
20
+ * @example intervalEngulfsTime("09:00:00", "17:00:00", "09:00:00", "12:00:00") // true
21
+ * @example intervalEngulfsTime("12:00:00", "13:00:00", "09:00:00", "17:00:00") // false
22
+ * @example intervalEngulfsTime("invalid", "17:00:00", "12:00:00", "13:00:00") // false
23
+ */
24
+ export function intervalEngulfsTime(aStart, aEnd, bStart, bEnd) {
25
+ if (typeof aStart !== "string" ||
26
+ typeof aEnd !== "string" ||
27
+ typeof bStart !== "string" ||
28
+ typeof bEnd !== "string") {
29
+ return false;
30
+ }
31
+ if (!plainTime.test(aStart) ||
32
+ !plainTime.test(aEnd) ||
33
+ !plainTime.test(bStart) ||
34
+ !plainTime.test(bEnd)) {
35
+ return false;
36
+ }
37
+ try {
38
+ const aS = Temporal.PlainTime.from(aStart);
39
+ const aE = Temporal.PlainTime.from(aEnd);
40
+ const bS = Temporal.PlainTime.from(bStart);
41
+ const bE = Temporal.PlainTime.from(bEnd);
42
+ if (Temporal.PlainTime.compare(aS, aE) > 0) {
43
+ return false;
44
+ }
45
+ if (Temporal.PlainTime.compare(bS, bE) > 0) {
46
+ return false;
47
+ }
48
+ return (Temporal.PlainTime.compare(aS, bS) <= 0 &&
49
+ Temporal.PlainTime.compare(bE, aE) <= 0);
50
+ }
51
+ catch {
52
+ return false;
53
+ }
54
+ }
@@ -0,0 +1,39 @@
1
+ import type { Overflow } from "../../types/index.js";
2
+ /**
3
+ * Construct a date interval from a single point plus an ISO 8601 duration, anchored at either end.
4
+ *
5
+ * - `anchor: "start"` treats `value` as the interval start and adds `duration` to get the end.
6
+ * - `anchor: "end"` treats `value` as the interval end and subtracts `duration` to get the start.
7
+ * - Uses `Temporal.PlainDate.prototype.add`/`.subtract`, so calendar units (years/months/weeks)
8
+ * resolve against `value` itself — no separate `relativeTo` is needed, unlike `addDuration`.
9
+ * - A negative `duration` (e.g. `"-P1D"`) can invert the computed span; returns null when that
10
+ * happens, mirroring `intervalIntersectionDate`'s `start > end` rejection.
11
+ * - `overflow` ("constrain" (default) | "reject") controls out-of-range results, e.g. adding 1 month
12
+ * to Jan 31: "constrain" clamps to Feb 29/28, "reject" returns null.
13
+ * - Accepts a GMT calendar-annotated PlainDate string — E5 (issue #78). The computed endpoint
14
+ * is resolved in `value`'s own calendar (no `relativeTo`/pair-matching question, since there
15
+ * is only one calendar-tagged input) and both endpoints are re-formatted in that calendar,
16
+ * re-derived from the actual result rather than copied from `value`'s tag (a leap-month or
17
+ * era boundary can fall between them).
18
+ * - Returns null on invalid input (unparseable `value`, invalid `duration`, or an `anchor` other
19
+ * than `"start"`/`"end"`).
20
+ *
21
+ * @param value ISO PlainDate string, optionally calendar-annotated
22
+ * @param duration ISO 8601 duration string
23
+ * @param anchor "start" | "end" — which endpoint `value` represents
24
+ * @param options optional: overflow ("constrain" | "reject")
25
+ * @returns `{ start, end }` with the constructed span, or null on invalid input
26
+ *
27
+ * @example intervalFromDurationDate("2024-01-01", "P1M", "start") // { start: "2024-01-01", end: "2024-02-01" }
28
+ * @example intervalFromDurationDate("2024-02-01", "P1M", "end") // { start: "2024-01-01", end: "2024-02-01" }
29
+ * @example intervalFromDurationDate("2024-01-31", "P1M", "start", { overflow: "reject" }) // null
30
+ * @example intervalFromDurationDate("2024-01-05", "-P10D", "start") // null (inverted span)
31
+ * @example intervalFromDurationDate("invalid", "P1M", "start") // null
32
+ * @example intervalFromDurationDate("5784-06-15[u-ca=hebrew]", "P1M", "start") // { start: "5784-06-15[u-ca=hebrew]", end: "5784-07-15[u-ca=hebrew]" } (Adar I -> Adar)
33
+ */
34
+ export declare function intervalFromDurationDate(value: string, duration: string, anchor: "start" | "end", options?: {
35
+ overflow?: Overflow;
36
+ }): {
37
+ start: string;
38
+ end: string;
39
+ } | null;
@@ -0,0 +1,71 @@
1
+ import { Temporal } from "@js-temporal/polyfill";
2
+ import { isValidDuration } from "../../duration/validate/index.js";
3
+ import { calendarSystemOfDateValue, formatDateInCalendar, parseCalendarDateValue, resolveOverflow, } from "../../internal/index.js";
4
+ import { isValidCalendarDate } from "../validate/index.js";
5
+ /**
6
+ * Construct a date interval from a single point plus an ISO 8601 duration, anchored at either end.
7
+ *
8
+ * - `anchor: "start"` treats `value` as the interval start and adds `duration` to get the end.
9
+ * - `anchor: "end"` treats `value` as the interval end and subtracts `duration` to get the start.
10
+ * - Uses `Temporal.PlainDate.prototype.add`/`.subtract`, so calendar units (years/months/weeks)
11
+ * resolve against `value` itself — no separate `relativeTo` is needed, unlike `addDuration`.
12
+ * - A negative `duration` (e.g. `"-P1D"`) can invert the computed span; returns null when that
13
+ * happens, mirroring `intervalIntersectionDate`'s `start > end` rejection.
14
+ * - `overflow` ("constrain" (default) | "reject") controls out-of-range results, e.g. adding 1 month
15
+ * to Jan 31: "constrain" clamps to Feb 29/28, "reject" returns null.
16
+ * - Accepts a GMT calendar-annotated PlainDate string — E5 (issue #78). The computed endpoint
17
+ * is resolved in `value`'s own calendar (no `relativeTo`/pair-matching question, since there
18
+ * is only one calendar-tagged input) and both endpoints are re-formatted in that calendar,
19
+ * re-derived from the actual result rather than copied from `value`'s tag (a leap-month or
20
+ * era boundary can fall between them).
21
+ * - Returns null on invalid input (unparseable `value`, invalid `duration`, or an `anchor` other
22
+ * than `"start"`/`"end"`).
23
+ *
24
+ * @param value ISO PlainDate string, optionally calendar-annotated
25
+ * @param duration ISO 8601 duration string
26
+ * @param anchor "start" | "end" — which endpoint `value` represents
27
+ * @param options optional: overflow ("constrain" | "reject")
28
+ * @returns `{ start, end }` with the constructed span, or null on invalid input
29
+ *
30
+ * @example intervalFromDurationDate("2024-01-01", "P1M", "start") // { start: "2024-01-01", end: "2024-02-01" }
31
+ * @example intervalFromDurationDate("2024-02-01", "P1M", "end") // { start: "2024-01-01", end: "2024-02-01" }
32
+ * @example intervalFromDurationDate("2024-01-31", "P1M", "start", { overflow: "reject" }) // null
33
+ * @example intervalFromDurationDate("2024-01-05", "-P10D", "start") // null (inverted span)
34
+ * @example intervalFromDurationDate("invalid", "P1M", "start") // null
35
+ * @example intervalFromDurationDate("5784-06-15[u-ca=hebrew]", "P1M", "start") // { start: "5784-06-15[u-ca=hebrew]", end: "5784-07-15[u-ca=hebrew]" } (Adar I -> Adar)
36
+ */
37
+ export function intervalFromDurationDate(value, duration, anchor, options) {
38
+ if (typeof value !== "string" || !isValidCalendarDate(value)) {
39
+ return null;
40
+ }
41
+ if (!isValidDuration(duration)) {
42
+ return null;
43
+ }
44
+ if (anchor !== "start" && anchor !== "end") {
45
+ return null;
46
+ }
47
+ try {
48
+ const calendar = calendarSystemOfDateValue(value);
49
+ if (!calendar) {
50
+ return null;
51
+ }
52
+ const point = parseCalendarDateValue(value);
53
+ const dur = Temporal.Duration.from(duration);
54
+ const overflow = resolveOverflow(options?.overflow);
55
+ const other = anchor === "start"
56
+ ? point.add(dur, { overflow })
57
+ : point.subtract(dur, { overflow });
58
+ const start = anchor === "start" ? point : other;
59
+ const end = anchor === "start" ? other : point;
60
+ if (Temporal.PlainDate.compare(start, end) > 0) {
61
+ return null;
62
+ }
63
+ return {
64
+ start: formatDateInCalendar(start, calendar),
65
+ end: formatDateInCalendar(end, calendar),
66
+ };
67
+ }
68
+ catch {
69
+ return null;
70
+ }
71
+ }
@@ -0,0 +1,33 @@
1
+ import type { Overflow } from "../../types/index.js";
2
+ /**
3
+ * Construct a datetime interval from a single point plus an ISO 8601 duration, anchored at either end.
4
+ *
5
+ * - `anchor: "start"` treats `value` as the interval start and adds `duration` to get the end.
6
+ * - `anchor: "end"` treats `value` as the interval end and subtracts `duration` to get the start.
7
+ * - Uses `Temporal.PlainDateTime.prototype.add`/`.subtract`, so calendar units (years/months/weeks)
8
+ * resolve against `value` itself — no separate `relativeTo` is needed, unlike `addDuration`.
9
+ * - A negative `duration` (e.g. `"-P1D"`) can invert the computed span; returns null when that
10
+ * happens, mirroring `intervalIntersectionDateTime`'s `start > end` rejection.
11
+ * - `overflow` ("constrain" (default) | "reject") controls out-of-range results, e.g. adding 1 month
12
+ * to Jan 31: "constrain" clamps to Feb 29/28, "reject" returns null.
13
+ * - Returns null on invalid input (unparseable `value`, invalid `duration`, or an `anchor` other
14
+ * than `"start"`/`"end"`).
15
+ *
16
+ * @param value ISO PlainDateTime string
17
+ * @param duration ISO 8601 duration string
18
+ * @param anchor "start" | "end" — which endpoint `value` represents
19
+ * @param options optional: overflow ("constrain" | "reject")
20
+ * @returns `{ start, end }` with the constructed span, or null on invalid input
21
+ *
22
+ * @example intervalFromDurationDateTime("2024-01-01T00:00:00", "P1DT2H", "start") // { start: "2024-01-01T00:00:00", end: "2024-01-02T02:00:00" }
23
+ * @example intervalFromDurationDateTime("2024-01-02T02:00:00", "P1DT2H", "end") // { start: "2024-01-01T00:00:00", end: "2024-01-02T02:00:00" }
24
+ * @example intervalFromDurationDateTime("2024-01-31T12:00:00", "P1M", "start", { overflow: "reject" }) // null
25
+ * @example intervalFromDurationDateTime("2024-01-05T00:00:00", "-P10D", "start") // null (inverted span)
26
+ * @example intervalFromDurationDateTime("invalid", "P1D", "start") // null
27
+ */
28
+ export declare function intervalFromDurationDateTime(value: string, duration: string, anchor: "start" | "end", options?: {
29
+ overflow?: Overflow;
30
+ }): {
31
+ start: string;
32
+ end: string;
33
+ } | null;
@@ -0,0 +1,58 @@
1
+ import { Temporal } from "@js-temporal/polyfill";
2
+ import { isValidDuration } from "../../duration/validate/index.js";
3
+ import { resolveOverflow } from "../../internal/index.js";
4
+ import { isValidDateTime } from "../validate/index.js";
5
+ /**
6
+ * Construct a datetime interval from a single point plus an ISO 8601 duration, anchored at either end.
7
+ *
8
+ * - `anchor: "start"` treats `value` as the interval start and adds `duration` to get the end.
9
+ * - `anchor: "end"` treats `value` as the interval end and subtracts `duration` to get the start.
10
+ * - Uses `Temporal.PlainDateTime.prototype.add`/`.subtract`, so calendar units (years/months/weeks)
11
+ * resolve against `value` itself — no separate `relativeTo` is needed, unlike `addDuration`.
12
+ * - A negative `duration` (e.g. `"-P1D"`) can invert the computed span; returns null when that
13
+ * happens, mirroring `intervalIntersectionDateTime`'s `start > end` rejection.
14
+ * - `overflow` ("constrain" (default) | "reject") controls out-of-range results, e.g. adding 1 month
15
+ * to Jan 31: "constrain" clamps to Feb 29/28, "reject" returns null.
16
+ * - Returns null on invalid input (unparseable `value`, invalid `duration`, or an `anchor` other
17
+ * than `"start"`/`"end"`).
18
+ *
19
+ * @param value ISO PlainDateTime string
20
+ * @param duration ISO 8601 duration string
21
+ * @param anchor "start" | "end" — which endpoint `value` represents
22
+ * @param options optional: overflow ("constrain" | "reject")
23
+ * @returns `{ start, end }` with the constructed span, or null on invalid input
24
+ *
25
+ * @example intervalFromDurationDateTime("2024-01-01T00:00:00", "P1DT2H", "start") // { start: "2024-01-01T00:00:00", end: "2024-01-02T02:00:00" }
26
+ * @example intervalFromDurationDateTime("2024-01-02T02:00:00", "P1DT2H", "end") // { start: "2024-01-01T00:00:00", end: "2024-01-02T02:00:00" }
27
+ * @example intervalFromDurationDateTime("2024-01-31T12:00:00", "P1M", "start", { overflow: "reject" }) // null
28
+ * @example intervalFromDurationDateTime("2024-01-05T00:00:00", "-P10D", "start") // null (inverted span)
29
+ * @example intervalFromDurationDateTime("invalid", "P1D", "start") // null
30
+ */
31
+ export function intervalFromDurationDateTime(value, duration, anchor, options) {
32
+ if (typeof value !== "string" || !isValidDateTime(value)) {
33
+ return null;
34
+ }
35
+ if (!isValidDuration(duration)) {
36
+ return null;
37
+ }
38
+ if (anchor !== "start" && anchor !== "end") {
39
+ return null;
40
+ }
41
+ try {
42
+ const point = Temporal.PlainDateTime.from(value);
43
+ const dur = Temporal.Duration.from(duration);
44
+ const overflow = resolveOverflow(options?.overflow);
45
+ const other = anchor === "start"
46
+ ? point.add(dur, { overflow })
47
+ : point.subtract(dur, { overflow });
48
+ const start = anchor === "start" ? point : other;
49
+ const end = anchor === "start" ? other : point;
50
+ if (Temporal.PlainDateTime.compare(start, end) > 0) {
51
+ return null;
52
+ }
53
+ return { start: start.toString(), end: end.toString() };
54
+ }
55
+ catch {
56
+ return null;
57
+ }
58
+ }
@@ -0,0 +1,38 @@
1
+ import type { Overflow } from "../../types/index.js";
2
+ /**
3
+ * Construct a time interval from a single point plus an ISO 8601 duration, anchored at either end.
4
+ *
5
+ * - `anchor: "start"` treats `value` as the interval start and adds `duration` to get the end.
6
+ * - `anchor: "end"` treats `value` as the interval end and subtracts `duration` to get the start.
7
+ * - `PlainTime` has no calendar, so a `duration` with a nonzero years/months/weeks/days component
8
+ * cannot be resolved against a bare clock time — there is no `relativeTo` to supply (mirrors
9
+ * A2/A3's documented `relativeTo` gap). `Temporal.PlainTime.prototype.add` silently discards
10
+ * those fields rather than throwing, so this is checked explicitly and returns null.
11
+ * - A `duration` that wraps past midnight (e.g. `"23:00:00"` + `"PT2H"`) produces a span PlainTime
12
+ * can't represent (no date component for the day rollover) and returns null, same as any other
13
+ * inverted span.
14
+ * - `overflow` ("constrain" (default) | "reject") is accepted for API consistency with sibling
15
+ * `intervalFromDuration*` functions, but `PlainTime` arithmetic always wraps around the clock
16
+ * rather than producing an out-of-range value, so it has no observable effect here (mirrors
17
+ * `addTime`'s own documented no-op).
18
+ * - Returns null on invalid input (unparseable `value`, invalid `duration`, or an `anchor` other
19
+ * than `"start"`/`"end"`).
20
+ *
21
+ * @param value ISO PlainTime string
22
+ * @param duration ISO 8601 duration string
23
+ * @param anchor "start" | "end" — which endpoint `value` represents
24
+ * @param options optional: overflow ("constrain" | "reject" — accepted but inert, see above)
25
+ * @returns `{ start, end }` with the constructed span, or null on invalid input
26
+ *
27
+ * @example intervalFromDurationTime("12:00:00", "PT1H", "start") // { start: "12:00:00", end: "13:00:00" }
28
+ * @example intervalFromDurationTime("13:00:00", "PT1H", "end") // { start: "12:00:00", end: "13:00:00" }
29
+ * @example intervalFromDurationTime("12:00:00", "P1D", "start") // null (date units need relativeTo, unsupported)
30
+ * @example intervalFromDurationTime("23:00:00", "PT2H", "start") // null (wraps past midnight, inverted span)
31
+ * @example intervalFromDurationTime("invalid", "PT1H", "start") // null
32
+ */
33
+ export declare function intervalFromDurationTime(value: string, duration: string, anchor: "start" | "end", options?: {
34
+ overflow?: Overflow;
35
+ }): {
36
+ start: string;
37
+ end: string;
38
+ } | null;
@@ -0,0 +1,69 @@
1
+ import { Temporal } from "@js-temporal/polyfill";
2
+ import { isValidDuration } from "../../duration/validate/index.js";
3
+ import { resolveOverflow } from "../../internal/index.js";
4
+ import { isValidTime } from "../validate/index.js";
5
+ /**
6
+ * Construct a time interval from a single point plus an ISO 8601 duration, anchored at either end.
7
+ *
8
+ * - `anchor: "start"` treats `value` as the interval start and adds `duration` to get the end.
9
+ * - `anchor: "end"` treats `value` as the interval end and subtracts `duration` to get the start.
10
+ * - `PlainTime` has no calendar, so a `duration` with a nonzero years/months/weeks/days component
11
+ * cannot be resolved against a bare clock time — there is no `relativeTo` to supply (mirrors
12
+ * A2/A3's documented `relativeTo` gap). `Temporal.PlainTime.prototype.add` silently discards
13
+ * those fields rather than throwing, so this is checked explicitly and returns null.
14
+ * - A `duration` that wraps past midnight (e.g. `"23:00:00"` + `"PT2H"`) produces a span PlainTime
15
+ * can't represent (no date component for the day rollover) and returns null, same as any other
16
+ * inverted span.
17
+ * - `overflow` ("constrain" (default) | "reject") is accepted for API consistency with sibling
18
+ * `intervalFromDuration*` functions, but `PlainTime` arithmetic always wraps around the clock
19
+ * rather than producing an out-of-range value, so it has no observable effect here (mirrors
20
+ * `addTime`'s own documented no-op).
21
+ * - Returns null on invalid input (unparseable `value`, invalid `duration`, or an `anchor` other
22
+ * than `"start"`/`"end"`).
23
+ *
24
+ * @param value ISO PlainTime string
25
+ * @param duration ISO 8601 duration string
26
+ * @param anchor "start" | "end" — which endpoint `value` represents
27
+ * @param options optional: overflow ("constrain" | "reject" — accepted but inert, see above)
28
+ * @returns `{ start, end }` with the constructed span, or null on invalid input
29
+ *
30
+ * @example intervalFromDurationTime("12:00:00", "PT1H", "start") // { start: "12:00:00", end: "13:00:00" }
31
+ * @example intervalFromDurationTime("13:00:00", "PT1H", "end") // { start: "12:00:00", end: "13:00:00" }
32
+ * @example intervalFromDurationTime("12:00:00", "P1D", "start") // null (date units need relativeTo, unsupported)
33
+ * @example intervalFromDurationTime("23:00:00", "PT2H", "start") // null (wraps past midnight, inverted span)
34
+ * @example intervalFromDurationTime("invalid", "PT1H", "start") // null
35
+ */
36
+ export function intervalFromDurationTime(value, duration, anchor, options) {
37
+ if (typeof value !== "string" || !isValidTime(value)) {
38
+ return null;
39
+ }
40
+ if (!isValidDuration(duration)) {
41
+ return null;
42
+ }
43
+ if (anchor !== "start" && anchor !== "end") {
44
+ return null;
45
+ }
46
+ try {
47
+ const dur = Temporal.Duration.from(duration);
48
+ if (dur.years !== 0 ||
49
+ dur.months !== 0 ||
50
+ dur.weeks !== 0 ||
51
+ dur.days !== 0) {
52
+ return null;
53
+ }
54
+ const point = Temporal.PlainTime.from(value);
55
+ const overflow = resolveOverflow(options?.overflow);
56
+ const other = anchor === "start"
57
+ ? point.add(dur, { overflow })
58
+ : point.subtract(dur, { overflow });
59
+ const start = anchor === "start" ? point : other;
60
+ const end = anchor === "start" ? other : point;
61
+ if (Temporal.PlainTime.compare(start, end) > 0) {
62
+ return null;
63
+ }
64
+ return { start: start.toString(), end: end.toString() };
65
+ }
66
+ catch {
67
+ return null;
68
+ }
69
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Return the overlapping span of two date intervals, or null when they do not overlap.
3
+ *
4
+ * - Uses `Temporal.PlainDate.compare` for comparison.
5
+ * - Adjacent intervals (e.g. `aEnd === bStart`) share one instant and DO overlap.
6
+ * - Returns `null` if either interval is invalid (`start > end`).
7
+ * - Returns `null` on invalid input (wrong type, malformed strings).
8
+ * - Accepts GMT calendar-annotated PlainDate strings — E5 (issue #78). Since the result is a
9
+ * date *value*, all four arguments must carry the *same* calendar tag (or all be bare ISO);
10
+ * a mismatch returns `null` (E5 decision of record D4). The output's tag is re-derived from
11
+ * the intersection span, never copied from an input.
12
+ *
13
+ * @param aStart ISO 8601 date string for the first interval start, optionally calendar-annotated
14
+ * @param aEnd ISO 8601 date string for the first interval end, optionally calendar-annotated
15
+ * @param bStart ISO 8601 date string for the second interval start, optionally calendar-annotated
16
+ * @param bEnd ISO 8601 date string for the second interval end, optionally calendar-annotated
17
+ * @returns `{ start, end }` with the overlapping span, or null on invalid input / no overlap / mismatched calendars
18
+ *
19
+ * @example intervalIntersectionDate("2024-01-01", "2024-06-30", "2024-04-01", "2024-12-31") // { start: "2024-04-01", end: "2024-06-30" }
20
+ * @example intervalIntersectionDate("2024-01-01", "2024-06-30", "2024-06-30", "2024-12-31") // { start: "2024-06-30", end: "2024-06-30" }
21
+ * @example intervalIntersectionDate("2024-01-01", "2024-06-30", "2024-07-01", "2024-12-31") // null
22
+ * @example intervalIntersectionDate("2024-01-01", "2024-06-30", "2024-02-01", "2024-03-01") // { start: "2024-02-01", end: "2024-03-01" }
23
+ * @example intervalIntersectionDate("invalid", "2024-06-30", "2024-04-01", "2024-12-31") // null
24
+ */
25
+ export declare function intervalIntersectionDate(aStart: string, aEnd: string, bStart: string, bEnd: string): {
26
+ start: string;
27
+ end: string;
28
+ } | null;
@@ -0,0 +1,70 @@
1
+ import { Temporal } from "@js-temporal/polyfill";
2
+ import { calendarOfAllDateValues, formatDateInCalendar, parseCalendarDateValue, } from "../../internal/index.js";
3
+ import { isValidCalendarDate } from "../validate/index.js";
4
+ /**
5
+ * Return the overlapping span of two date intervals, or null when they do not overlap.
6
+ *
7
+ * - Uses `Temporal.PlainDate.compare` for comparison.
8
+ * - Adjacent intervals (e.g. `aEnd === bStart`) share one instant and DO overlap.
9
+ * - Returns `null` if either interval is invalid (`start > end`).
10
+ * - Returns `null` on invalid input (wrong type, malformed strings).
11
+ * - Accepts GMT calendar-annotated PlainDate strings — E5 (issue #78). Since the result is a
12
+ * date *value*, all four arguments must carry the *same* calendar tag (or all be bare ISO);
13
+ * a mismatch returns `null` (E5 decision of record D4). The output's tag is re-derived from
14
+ * the intersection span, never copied from an input.
15
+ *
16
+ * @param aStart ISO 8601 date string for the first interval start, optionally calendar-annotated
17
+ * @param aEnd ISO 8601 date string for the first interval end, optionally calendar-annotated
18
+ * @param bStart ISO 8601 date string for the second interval start, optionally calendar-annotated
19
+ * @param bEnd ISO 8601 date string for the second interval end, optionally calendar-annotated
20
+ * @returns `{ start, end }` with the overlapping span, or null on invalid input / no overlap / mismatched calendars
21
+ *
22
+ * @example intervalIntersectionDate("2024-01-01", "2024-06-30", "2024-04-01", "2024-12-31") // { start: "2024-04-01", end: "2024-06-30" }
23
+ * @example intervalIntersectionDate("2024-01-01", "2024-06-30", "2024-06-30", "2024-12-31") // { start: "2024-06-30", end: "2024-06-30" }
24
+ * @example intervalIntersectionDate("2024-01-01", "2024-06-30", "2024-07-01", "2024-12-31") // null
25
+ * @example intervalIntersectionDate("2024-01-01", "2024-06-30", "2024-02-01", "2024-03-01") // { start: "2024-02-01", end: "2024-03-01" }
26
+ * @example intervalIntersectionDate("invalid", "2024-06-30", "2024-04-01", "2024-12-31") // null
27
+ */
28
+ export function intervalIntersectionDate(aStart, aEnd, bStart, bEnd) {
29
+ if (typeof aStart !== "string" ||
30
+ typeof aEnd !== "string" ||
31
+ typeof bStart !== "string" ||
32
+ typeof bEnd !== "string") {
33
+ return null;
34
+ }
35
+ if (!isValidCalendarDate(aStart) ||
36
+ !isValidCalendarDate(aEnd) ||
37
+ !isValidCalendarDate(bStart) ||
38
+ !isValidCalendarDate(bEnd)) {
39
+ return null;
40
+ }
41
+ const calendar = calendarOfAllDateValues([aStart, aEnd, bStart, bEnd]);
42
+ if (!calendar) {
43
+ return null;
44
+ }
45
+ try {
46
+ const aS = parseCalendarDateValue(aStart);
47
+ const aE = parseCalendarDateValue(aEnd);
48
+ const bS = parseCalendarDateValue(bStart);
49
+ const bE = parseCalendarDateValue(bEnd);
50
+ if (Temporal.PlainDate.compare(aS, aE) > 0) {
51
+ return null;
52
+ }
53
+ if (Temporal.PlainDate.compare(bS, bE) > 0) {
54
+ return null;
55
+ }
56
+ if (Temporal.PlainDate.compare(aE, bS) < 0 ||
57
+ Temporal.PlainDate.compare(bE, aS) < 0) {
58
+ return null;
59
+ }
60
+ const start = Temporal.PlainDate.compare(aS, bS) >= 0 ? aS : bS;
61
+ const end = Temporal.PlainDate.compare(aE, bE) <= 0 ? aE : bE;
62
+ return {
63
+ start: formatDateInCalendar(start, calendar),
64
+ end: formatDateInCalendar(end, calendar),
65
+ };
66
+ }
67
+ catch {
68
+ return null;
69
+ }
70
+ }