@gobrand/tiempo 3.1.2 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (432) hide show
  1. package/dist/addBusinessDays.d.ts +14 -4
  2. package/dist/addBusinessDays.d.ts.map +1 -1
  3. package/dist/addBusinessDays.js +3 -3
  4. package/dist/addDays.d.ts +2 -2
  5. package/dist/addDays.js +2 -2
  6. package/dist/addHours.d.ts +2 -2
  7. package/dist/addHours.js +2 -2
  8. package/dist/addMicroseconds.d.ts +2 -2
  9. package/dist/addMicroseconds.js +2 -2
  10. package/dist/addMilliseconds.d.ts +2 -2
  11. package/dist/addMilliseconds.js +2 -2
  12. package/dist/addMinutes.d.ts +2 -2
  13. package/dist/addMinutes.js +2 -2
  14. package/dist/addMonths.d.ts +2 -2
  15. package/dist/addMonths.js +2 -2
  16. package/dist/addNanoseconds.d.ts +2 -2
  17. package/dist/addNanoseconds.js +2 -2
  18. package/dist/addQuarters.d.ts +1 -1
  19. package/dist/addQuarters.js +2 -2
  20. package/dist/addSeconds.d.ts +2 -2
  21. package/dist/addSeconds.js +2 -2
  22. package/dist/addWeeks.d.ts +2 -2
  23. package/dist/addWeeks.js +2 -2
  24. package/dist/addYears.d.ts +2 -2
  25. package/dist/addYears.js +2 -2
  26. package/dist/areIntervalsOverlapping.d.ts +60 -0
  27. package/dist/areIntervalsOverlapping.d.ts.map +1 -0
  28. package/dist/areIntervalsOverlapping.js +9 -0
  29. package/dist/areIntervalsOverlapping.js.map +1 -0
  30. package/dist/chunk-2JXI3CAL.js +22 -0
  31. package/dist/chunk-2JXI3CAL.js.map +1 -0
  32. package/dist/{chunk-22IDWEHQ.js → chunk-2LT2XOAL.js} +5 -83
  33. package/dist/chunk-2LT2XOAL.js.map +1 -0
  34. package/dist/{chunk-ETO77GIW.js → chunk-32AWWYBF.js} +2 -2
  35. package/dist/chunk-32AWWYBF.js.map +1 -0
  36. package/dist/{chunk-HQ3YMKQ5.js → chunk-3D4YR2SR.js} +2 -2
  37. package/dist/chunk-3D4YR2SR.js.map +1 -0
  38. package/dist/{chunk-ASIYAAQV.js → chunk-3HD7HEN4.js} +3 -3
  39. package/dist/chunk-3HD7HEN4.js.map +1 -0
  40. package/dist/{chunk-TEL44S5A.js → chunk-3HF4F36S.js} +2 -2
  41. package/dist/{chunk-TEL44S5A.js.map → chunk-3HF4F36S.js.map} +1 -1
  42. package/dist/chunk-3OOGJRXH.js +247 -0
  43. package/dist/chunk-3OOGJRXH.js.map +1 -0
  44. package/dist/{chunk-426MJGNT.js → chunk-3X2U6I44.js} +2 -2
  45. package/dist/chunk-3X2U6I44.js.map +1 -0
  46. package/dist/{chunk-EBQ25TEY.js → chunk-3XGUCQ2A.js} +2 -2
  47. package/dist/chunk-3XGUCQ2A.js.map +1 -0
  48. package/dist/chunk-42IFQS4W.js +16 -0
  49. package/dist/chunk-42IFQS4W.js.map +1 -0
  50. package/dist/{chunk-R3PZ56AD.js → chunk-4FQCY75E.js} +5 -5
  51. package/dist/chunk-4FQCY75E.js.map +1 -0
  52. package/dist/{chunk-TWRJEIBO.js → chunk-4GEF7B7W.js} +2 -2
  53. package/dist/{chunk-V36MCE25.js → chunk-4KAIF44F.js} +2 -2
  54. package/dist/chunk-4KAIF44F.js.map +1 -0
  55. package/dist/{chunk-YHQSI4WC.js → chunk-4VWUTQKP.js} +2 -2
  56. package/dist/chunk-4VWUTQKP.js.map +1 -0
  57. package/dist/chunk-4YCEFGZA.js +61 -0
  58. package/dist/chunk-4YCEFGZA.js.map +1 -0
  59. package/dist/{chunk-SUONQGAH.js → chunk-525OLFRD.js} +2 -2
  60. package/dist/{chunk-PYV7MWJJ.js → chunk-5WHGX2J3.js} +2 -2
  61. package/dist/chunk-5WHGX2J3.js.map +1 -0
  62. package/dist/{chunk-NKXMLC6T.js → chunk-67XABEBT.js} +2 -2
  63. package/dist/chunk-67XABEBT.js.map +1 -0
  64. package/dist/{chunk-TUZHOWSN.js → chunk-6QH4NCPA.js} +2 -2
  65. package/dist/{chunk-TUZHOWSN.js.map → chunk-6QH4NCPA.js.map} +1 -1
  66. package/dist/{chunk-5XJEKPO5.js → chunk-6QOLNYFY.js} +2 -2
  67. package/dist/chunk-6UBFKQIJ.js +20 -0
  68. package/dist/chunk-6UBFKQIJ.js.map +1 -0
  69. package/dist/{chunk-WY5I452J.js → chunk-7IKCDOCT.js} +2 -2
  70. package/dist/chunk-7IKCDOCT.js.map +1 -0
  71. package/dist/{chunk-5MB7UZCJ.js → chunk-7NGP7SAD.js} +2 -2
  72. package/dist/chunk-7NGP7SAD.js.map +1 -0
  73. package/dist/chunk-7PH5BPMS.js +14 -0
  74. package/dist/chunk-7PH5BPMS.js.map +1 -0
  75. package/dist/{chunk-NYM3EW3M.js → chunk-AUOZACFS.js} +2 -2
  76. package/dist/chunk-AUOZACFS.js.map +1 -0
  77. package/dist/{chunk-XXB6HJ2R.js → chunk-BI42E23Z.js} +3 -3
  78. package/dist/{chunk-5WPQUOM4.js → chunk-BPMS34GV.js} +2 -2
  79. package/dist/chunk-BPMS34GV.js.map +1 -0
  80. package/dist/chunk-C7QA4J6V.js +14 -0
  81. package/dist/chunk-C7QA4J6V.js.map +1 -0
  82. package/dist/{chunk-W5FFJSCD.js → chunk-DBOIK3XA.js} +2 -2
  83. package/dist/chunk-DBOIK3XA.js.map +1 -0
  84. package/dist/{chunk-FLVULRGY.js → chunk-DGUAV5XN.js} +2 -2
  85. package/dist/{chunk-23APOESH.js → chunk-DRBZDI52.js} +2 -2
  86. package/dist/{chunk-23APOESH.js.map → chunk-DRBZDI52.js.map} +1 -1
  87. package/dist/chunk-DVZDJ5LM.js +33 -0
  88. package/dist/chunk-DVZDJ5LM.js.map +1 -0
  89. package/dist/{chunk-JWYRXPR4.js → chunk-DYIISNVW.js} +15 -13
  90. package/dist/chunk-DYIISNVW.js.map +1 -0
  91. package/dist/{chunk-HSJMG5T7.js → chunk-DZ3647ZK.js} +2 -2
  92. package/dist/{chunk-HSJMG5T7.js.map → chunk-DZ3647ZK.js.map} +1 -1
  93. package/dist/{chunk-LKF7U4O4.js → chunk-EAO2SO4N.js} +2 -2
  94. package/dist/{chunk-LKF7U4O4.js.map → chunk-EAO2SO4N.js.map} +1 -1
  95. package/dist/{chunk-2OSJHJV5.js → chunk-EBOLL4LY.js} +2 -2
  96. package/dist/{chunk-AVPV4BA5.js → chunk-F3UZDWOQ.js} +2 -2
  97. package/dist/chunk-F3UZDWOQ.js.map +1 -0
  98. package/dist/{chunk-QD3ROUIT.js → chunk-GOJ45AG7.js} +3 -3
  99. package/dist/{chunk-SLBDEPBP.js → chunk-GU3CZAIN.js} +2 -2
  100. package/dist/{chunk-5ST6IOPN.js → chunk-GXSVYUCG.js} +2 -2
  101. package/dist/chunk-GXSVYUCG.js.map +1 -0
  102. package/dist/chunk-H43LMOCK.js +26 -0
  103. package/dist/chunk-H43LMOCK.js.map +1 -0
  104. package/dist/{chunk-B6VZ2AKN.js → chunk-HCORON7B.js} +2 -2
  105. package/dist/chunk-HCORON7B.js.map +1 -0
  106. package/dist/chunk-HH2HTC44.js +87 -0
  107. package/dist/chunk-HH2HTC44.js.map +1 -0
  108. package/dist/{chunk-FL33IWLY.js → chunk-HRCTWTP3.js} +2 -2
  109. package/dist/chunk-HRCTWTP3.js.map +1 -0
  110. package/dist/{chunk-FUVG6A7U.js → chunk-HYSGJJUR.js} +2 -2
  111. package/dist/chunk-HYSGJJUR.js.map +1 -0
  112. package/dist/chunk-IDB3R3G5.js +21 -0
  113. package/dist/chunk-IDB3R3G5.js.map +1 -0
  114. package/dist/chunk-IIEHQPKE.js +36 -0
  115. package/dist/chunk-IIEHQPKE.js.map +1 -0
  116. package/dist/{chunk-C5OJIIJP.js → chunk-IWVSM77B.js} +2 -2
  117. package/dist/{chunk-C5OJIIJP.js.map → chunk-IWVSM77B.js.map} +1 -1
  118. package/dist/{chunk-XIVWFVVX.js → chunk-IXNGK5OF.js} +2 -2
  119. package/dist/{chunk-XIVWFVVX.js.map → chunk-IXNGK5OF.js.map} +1 -1
  120. package/dist/{chunk-XR7Q6IP6.js → chunk-JA5ER27P.js} +2 -2
  121. package/dist/{chunk-E5HJJFUI.js → chunk-JGPTGV5X.js} +2 -2
  122. package/dist/{chunk-4E5OJUMN.js → chunk-K3L6MJJB.js} +2 -2
  123. package/dist/{chunk-4E5OJUMN.js.map → chunk-K3L6MJJB.js.map} +1 -1
  124. package/dist/{chunk-MCPKXTX7.js → chunk-K6NQZIAW.js} +2 -2
  125. package/dist/chunk-K6NQZIAW.js.map +1 -0
  126. package/dist/{chunk-RQ5CX67T.js → chunk-K7SY2MAX.js} +10 -4
  127. package/dist/chunk-K7SY2MAX.js.map +1 -0
  128. package/dist/{chunk-XZS6J4LM.js → chunk-KYS54PLJ.js} +2 -2
  129. package/dist/chunk-KYS54PLJ.js.map +1 -0
  130. package/dist/{chunk-2LN57UVR.js → chunk-KZCSP3DU.js} +2 -2
  131. package/dist/chunk-KZYWHHAQ.js +19 -0
  132. package/dist/chunk-KZYWHHAQ.js.map +1 -0
  133. package/dist/{chunk-35IJG3T2.js → chunk-LMOAA73F.js} +2 -2
  134. package/dist/chunk-M2XB72L5.js +17 -0
  135. package/dist/chunk-M2XB72L5.js.map +1 -0
  136. package/dist/{chunk-NNUATTN7.js → chunk-MVGBYHG5.js} +2 -2
  137. package/dist/{chunk-NNUATTN7.js.map → chunk-MVGBYHG5.js.map} +1 -1
  138. package/dist/{chunk-FAVYJIRM.js → chunk-NOWUJERX.js} +2 -2
  139. package/dist/chunk-NOWUJERX.js.map +1 -0
  140. package/dist/{chunk-O4YU4N6Q.js → chunk-NVFFQJEW.js} +3 -3
  141. package/dist/{chunk-OYTQWJ2O.js → chunk-OEPVYNB6.js} +2 -2
  142. package/dist/{chunk-T775UWIV.js → chunk-OF5YEVUT.js} +2 -2
  143. package/dist/chunk-OF5YEVUT.js.map +1 -0
  144. package/dist/chunk-OMUK2MOH.js +19 -0
  145. package/dist/chunk-OMUK2MOH.js.map +1 -0
  146. package/dist/{chunk-5FCHKIGV.js → chunk-PAM6VJQM.js} +2 -2
  147. package/dist/chunk-PLPGYCQQ.js +28 -0
  148. package/dist/chunk-PLPGYCQQ.js.map +1 -0
  149. package/dist/chunk-Q6QLOUXJ.js +18 -0
  150. package/dist/chunk-Q6QLOUXJ.js.map +1 -0
  151. package/dist/{chunk-YR26F7OA.js → chunk-QDY2KMYX.js} +2 -2
  152. package/dist/chunk-QDY2KMYX.js.map +1 -0
  153. package/dist/{chunk-NRYKSDVP.js → chunk-QNZJR53W.js} +2 -2
  154. package/dist/chunk-QNZJR53W.js.map +1 -0
  155. package/dist/{chunk-44EIUFJB.js → chunk-QZ6WXAUO.js} +2 -2
  156. package/dist/chunk-QZ6WXAUO.js.map +1 -0
  157. package/dist/{chunk-ZO2MTD2E.js → chunk-R2DCUSBY.js} +2 -2
  158. package/dist/chunk-R2DCUSBY.js.map +1 -0
  159. package/dist/{chunk-DXSRRBJO.js → chunk-R5XRTUWH.js} +2 -2
  160. package/dist/chunk-R5XRTUWH.js.map +1 -0
  161. package/dist/chunk-R6D3Y5NV.js +17 -0
  162. package/dist/chunk-R6D3Y5NV.js.map +1 -0
  163. package/dist/{chunk-AA56LFMF.js → chunk-SHKSAHJO.js} +2 -2
  164. package/dist/chunk-SHKSAHJO.js.map +1 -0
  165. package/dist/{chunk-33MHEBQR.js → chunk-SLH6TKGN.js} +2 -2
  166. package/dist/{chunk-33MHEBQR.js.map → chunk-SLH6TKGN.js.map} +1 -1
  167. package/dist/{chunk-2MFBXSTL.js → chunk-TCB3IDJM.js} +2 -2
  168. package/dist/{chunk-DHVGDIIO.js → chunk-TD6MVGV2.js} +2 -2
  169. package/dist/{chunk-PU6PU2JM.js → chunk-TI6WBLCB.js} +2 -2
  170. package/dist/chunk-TI6WBLCB.js.map +1 -0
  171. package/dist/{chunk-SXR2SO42.js → chunk-TIZJRCAA.js} +2 -2
  172. package/dist/chunk-TIZJRCAA.js.map +1 -0
  173. package/dist/{chunk-MXUGDXSG.js → chunk-TU3LNQKW.js} +2 -2
  174. package/dist/chunk-U6VFT2A5.js +14 -0
  175. package/dist/chunk-U6VFT2A5.js.map +1 -0
  176. package/dist/{chunk-NST7NM5Q.js → chunk-X27XGVCT.js} +2 -2
  177. package/dist/chunk-XMEPH226.js +21 -0
  178. package/dist/chunk-XMEPH226.js.map +1 -0
  179. package/dist/{chunk-D3BJEYTR.js → chunk-XSHFR2SX.js} +2 -2
  180. package/dist/{chunk-DCZDGS5G.js → chunk-Y24VUXMX.js} +2 -2
  181. package/dist/chunk-Y24VUXMX.js.map +1 -0
  182. package/dist/{chunk-XTS6LZBP.js → chunk-YKXRVQ4S.js} +2 -2
  183. package/dist/chunk-YKXRVQ4S.js.map +1 -0
  184. package/dist/{chunk-5KVFPVBT.js → chunk-ZNRTNR2Q.js} +4 -4
  185. package/dist/chunk-ZNRTNR2Q.js.map +1 -0
  186. package/dist/{chunk-3IYGWL34.js → chunk-ZW32E6EJ.js} +9 -9
  187. package/dist/{chunk-WJZHUNF5.js → chunk-ZXKU4SKR.js} +2 -2
  188. package/dist/chunk-ZXKU4SKR.js.map +1 -0
  189. package/dist/differenceInBusinessDays.d.ts +7 -5
  190. package/dist/differenceInBusinessDays.d.ts.map +1 -1
  191. package/dist/differenceInBusinessDays.js +3 -3
  192. package/dist/differenceInCalendarDays.d.ts +35 -0
  193. package/dist/differenceInCalendarDays.d.ts.map +1 -0
  194. package/dist/differenceInCalendarDays.js +10 -0
  195. package/dist/differenceInCalendarDays.js.map +1 -0
  196. package/dist/differenceInCalendarMonths.d.ts +27 -0
  197. package/dist/differenceInCalendarMonths.d.ts.map +1 -0
  198. package/dist/differenceInCalendarMonths.js +10 -0
  199. package/dist/differenceInCalendarMonths.js.map +1 -0
  200. package/dist/differenceInCalendarQuarters.d.ts +26 -0
  201. package/dist/differenceInCalendarQuarters.d.ts.map +1 -0
  202. package/dist/differenceInCalendarQuarters.js +11 -0
  203. package/dist/differenceInCalendarQuarters.js.map +1 -0
  204. package/dist/differenceInCalendarWeeks.d.ts +29 -0
  205. package/dist/differenceInCalendarWeeks.d.ts.map +1 -0
  206. package/dist/differenceInCalendarWeeks.js +11 -0
  207. package/dist/differenceInCalendarWeeks.js.map +1 -0
  208. package/dist/differenceInCalendarYears.d.ts +27 -0
  209. package/dist/differenceInCalendarYears.d.ts.map +1 -0
  210. package/dist/differenceInCalendarYears.js +10 -0
  211. package/dist/differenceInCalendarYears.js.map +1 -0
  212. package/dist/differenceInDays.js +2 -2
  213. package/dist/differenceInHours.js +2 -2
  214. package/dist/differenceInMicroseconds.js +2 -2
  215. package/dist/differenceInMilliseconds.js +2 -2
  216. package/dist/differenceInMinutes.js +2 -2
  217. package/dist/differenceInMonths.js +2 -2
  218. package/dist/differenceInNanoseconds.js +2 -2
  219. package/dist/differenceInQuarters.js +3 -3
  220. package/dist/differenceInSeconds.js +2 -2
  221. package/dist/differenceInWeeks.js +2 -2
  222. package/dist/differenceInYears.js +2 -2
  223. package/dist/eachDayOfInterval.d.ts +12 -12
  224. package/dist/eachDayOfInterval.js +3 -3
  225. package/dist/eachHourOfInterval.d.ts +14 -14
  226. package/dist/eachHourOfInterval.js +2 -2
  227. package/dist/eachMinuteOfInterval.d.ts +13 -13
  228. package/dist/eachMinuteOfInterval.js +2 -2
  229. package/dist/eachMonthOfInterval.d.ts +12 -12
  230. package/dist/eachMonthOfInterval.js +2 -2
  231. package/dist/eachQuarterOfInterval.d.ts +2 -2
  232. package/dist/eachQuarterOfInterval.js +2 -2
  233. package/dist/eachWeekOfInterval.d.ts +21 -19
  234. package/dist/eachWeekOfInterval.d.ts.map +1 -1
  235. package/dist/eachWeekOfInterval.js +3 -2
  236. package/dist/eachYearOfInterval.d.ts +9 -9
  237. package/dist/eachYearOfInterval.js +2 -2
  238. package/dist/endOfDay.d.ts +1 -1
  239. package/dist/endOfDay.js +3 -3
  240. package/dist/endOfMonth.d.ts +1 -1
  241. package/dist/endOfMonth.js +3 -3
  242. package/dist/endOfQuarter.d.ts +2 -2
  243. package/dist/endOfQuarter.js +4 -4
  244. package/dist/endOfWeek.d.ts +18 -8
  245. package/dist/endOfWeek.d.ts.map +1 -1
  246. package/dist/endOfWeek.js +3 -2
  247. package/dist/endOfYear.d.ts +1 -1
  248. package/dist/endOfYear.js +3 -3
  249. package/dist/format.d.ts.map +1 -1
  250. package/dist/format.js +3 -2
  251. package/dist/getQuarter.js +2 -2
  252. package/dist/index.d.ts +10 -0
  253. package/dist/index.d.ts.map +1 -1
  254. package/dist/index.js +169 -130
  255. package/dist/intlFormatDistance.js +9 -9
  256. package/dist/isFuture.js +3 -3
  257. package/dist/isPast.js +3 -3
  258. package/dist/isSameDay.d.ts +4 -4
  259. package/dist/isSameDay.js +2 -2
  260. package/dist/isSameHour.d.ts +4 -4
  261. package/dist/isSameHour.js +2 -2
  262. package/dist/isSameMicrosecond.d.ts +4 -4
  263. package/dist/isSameMicrosecond.js +2 -2
  264. package/dist/isSameMillisecond.d.ts +4 -4
  265. package/dist/isSameMillisecond.js +2 -2
  266. package/dist/isSameMinute.d.ts +4 -4
  267. package/dist/isSameMinute.js +2 -2
  268. package/dist/isSameMonth.d.ts +4 -4
  269. package/dist/isSameMonth.js +2 -2
  270. package/dist/isSameNanosecond.d.ts +4 -4
  271. package/dist/isSameNanosecond.js +2 -2
  272. package/dist/isSameQuarter.d.ts +2 -2
  273. package/dist/isSameQuarter.js +2 -2
  274. package/dist/isSameSecond.d.ts +4 -4
  275. package/dist/isSameSecond.js +2 -2
  276. package/dist/isSameWeek.d.ts +22 -13
  277. package/dist/isSameWeek.d.ts.map +1 -1
  278. package/dist/isSameWeek.js +3 -2
  279. package/dist/isSameYear.d.ts +4 -4
  280. package/dist/isSameYear.js +2 -2
  281. package/dist/isWeekend.js +3 -3
  282. package/dist/isWithinInterval.d.ts +52 -17
  283. package/dist/isWithinInterval.d.ts.map +1 -1
  284. package/dist/isWithinInterval.js +4 -3
  285. package/dist/nextDay.d.ts +33 -0
  286. package/dist/nextDay.d.ts.map +1 -0
  287. package/dist/nextDay.js +10 -0
  288. package/dist/nextDay.js.map +1 -0
  289. package/dist/parse.d.ts +57 -0
  290. package/dist/parse.d.ts.map +1 -0
  291. package/dist/parse.js +9 -0
  292. package/dist/parse.js.map +1 -0
  293. package/dist/previousDay.d.ts +26 -0
  294. package/dist/previousDay.d.ts.map +1 -0
  295. package/dist/previousDay.js +10 -0
  296. package/dist/previousDay.js.map +1 -0
  297. package/dist/roundToNearestHour.js +2 -2
  298. package/dist/roundToNearestMinute.js +2 -2
  299. package/dist/roundToNearestSecond.js +2 -2
  300. package/dist/shared/businessDays.d.ts +15 -0
  301. package/dist/shared/businessDays.d.ts.map +1 -1
  302. package/dist/shared/businessDays.js +8 -4
  303. package/dist/shared/calendarDates.d.ts +9 -0
  304. package/dist/shared/calendarDates.d.ts.map +1 -0
  305. package/dist/shared/calendarDates.js +9 -0
  306. package/dist/shared/calendarDates.js.map +1 -0
  307. package/dist/shared/formatTokens.d.ts +8 -0
  308. package/dist/shared/formatTokens.d.ts.map +1 -0
  309. package/dist/shared/formatTokens.js +7 -0
  310. package/dist/shared/formatTokens.js.map +1 -0
  311. package/dist/shared/normalizeTemporalInput.d.ts +2 -0
  312. package/dist/shared/normalizeTemporalInput.d.ts.map +1 -1
  313. package/dist/shared/normalizeTemporalInput.js +1 -1
  314. package/dist/shared/normalizeWithPlainDate.js +2 -2
  315. package/dist/shared/nowZoned.js +2 -2
  316. package/dist/shared/week.d.ts +26 -0
  317. package/dist/shared/week.d.ts.map +1 -0
  318. package/dist/shared/week.js +9 -0
  319. package/dist/shared/week.js.map +1 -0
  320. package/dist/startOfDay.d.ts +1 -1
  321. package/dist/startOfDay.js +3 -3
  322. package/dist/startOfMonth.d.ts +1 -1
  323. package/dist/startOfMonth.js +3 -3
  324. package/dist/startOfQuarter.d.ts +2 -2
  325. package/dist/startOfQuarter.js +4 -4
  326. package/dist/startOfWeek.d.ts +18 -8
  327. package/dist/startOfWeek.d.ts.map +1 -1
  328. package/dist/startOfWeek.js +3 -2
  329. package/dist/startOfYear.d.ts +1 -1
  330. package/dist/startOfYear.js +3 -3
  331. package/dist/subBusinessDays.d.ts +6 -4
  332. package/dist/subBusinessDays.d.ts.map +1 -1
  333. package/dist/subBusinessDays.js +4 -4
  334. package/dist/subDays.d.ts +1 -1
  335. package/dist/subDays.js +3 -3
  336. package/dist/subHours.d.ts +1 -1
  337. package/dist/subHours.js +3 -3
  338. package/dist/subMicroseconds.d.ts +1 -1
  339. package/dist/subMicroseconds.js +3 -3
  340. package/dist/subMilliseconds.d.ts +1 -1
  341. package/dist/subMilliseconds.js +3 -3
  342. package/dist/subMinutes.d.ts +1 -1
  343. package/dist/subMinutes.js +3 -3
  344. package/dist/subMonths.d.ts +1 -1
  345. package/dist/subMonths.js +3 -3
  346. package/dist/subNanoseconds.d.ts +1 -1
  347. package/dist/subNanoseconds.js +3 -3
  348. package/dist/subQuarters.d.ts +1 -1
  349. package/dist/subQuarters.js +3 -3
  350. package/dist/subSeconds.d.ts +1 -1
  351. package/dist/subSeconds.js +3 -3
  352. package/dist/subWeeks.d.ts +1 -1
  353. package/dist/subWeeks.js +3 -3
  354. package/dist/subYears.d.ts +1 -1
  355. package/dist/subYears.js +3 -3
  356. package/package.json +1 -1
  357. package/dist/chunk-22IDWEHQ.js.map +0 -1
  358. package/dist/chunk-426MJGNT.js.map +0 -1
  359. package/dist/chunk-44EIUFJB.js.map +0 -1
  360. package/dist/chunk-5KVFPVBT.js.map +0 -1
  361. package/dist/chunk-5MB7UZCJ.js.map +0 -1
  362. package/dist/chunk-5ST6IOPN.js.map +0 -1
  363. package/dist/chunk-5WPQUOM4.js.map +0 -1
  364. package/dist/chunk-AA56LFMF.js.map +0 -1
  365. package/dist/chunk-ASIYAAQV.js.map +0 -1
  366. package/dist/chunk-AVPV4BA5.js.map +0 -1
  367. package/dist/chunk-B6VZ2AKN.js.map +0 -1
  368. package/dist/chunk-DCZDGS5G.js.map +0 -1
  369. package/dist/chunk-DXSRRBJO.js.map +0 -1
  370. package/dist/chunk-EBQ25TEY.js.map +0 -1
  371. package/dist/chunk-ETO77GIW.js.map +0 -1
  372. package/dist/chunk-FAVYJIRM.js.map +0 -1
  373. package/dist/chunk-FL33IWLY.js.map +0 -1
  374. package/dist/chunk-FUVG6A7U.js.map +0 -1
  375. package/dist/chunk-H544BC2X.js +0 -16
  376. package/dist/chunk-H544BC2X.js.map +0 -1
  377. package/dist/chunk-HQ3YMKQ5.js.map +0 -1
  378. package/dist/chunk-ITQ6OJAL.js +0 -26
  379. package/dist/chunk-ITQ6OJAL.js.map +0 -1
  380. package/dist/chunk-JNAWZ4RN.js +0 -13
  381. package/dist/chunk-JNAWZ4RN.js.map +0 -1
  382. package/dist/chunk-JWYRXPR4.js.map +0 -1
  383. package/dist/chunk-MCPKXTX7.js.map +0 -1
  384. package/dist/chunk-NKXMLC6T.js.map +0 -1
  385. package/dist/chunk-NRYKSDVP.js.map +0 -1
  386. package/dist/chunk-NYM3EW3M.js.map +0 -1
  387. package/dist/chunk-PU6PU2JM.js.map +0 -1
  388. package/dist/chunk-PYV7MWJJ.js.map +0 -1
  389. package/dist/chunk-R3PZ56AD.js.map +0 -1
  390. package/dist/chunk-RQ5CX67T.js.map +0 -1
  391. package/dist/chunk-SATEE2TL.js +0 -15
  392. package/dist/chunk-SATEE2TL.js.map +0 -1
  393. package/dist/chunk-SMMVTXL4.js +0 -22
  394. package/dist/chunk-SMMVTXL4.js.map +0 -1
  395. package/dist/chunk-SXR2SO42.js.map +0 -1
  396. package/dist/chunk-T775UWIV.js.map +0 -1
  397. package/dist/chunk-V36MCE25.js.map +0 -1
  398. package/dist/chunk-W27GPK6Q.js +0 -29
  399. package/dist/chunk-W27GPK6Q.js.map +0 -1
  400. package/dist/chunk-W5FFJSCD.js.map +0 -1
  401. package/dist/chunk-WJZHUNF5.js.map +0 -1
  402. package/dist/chunk-WY5I452J.js.map +0 -1
  403. package/dist/chunk-XTS6LZBP.js.map +0 -1
  404. package/dist/chunk-XZS6J4LM.js.map +0 -1
  405. package/dist/chunk-YHQSI4WC.js.map +0 -1
  406. package/dist/chunk-YR26F7OA.js.map +0 -1
  407. package/dist/chunk-Z7I7YCKN.js +0 -36
  408. package/dist/chunk-Z7I7YCKN.js.map +0 -1
  409. package/dist/chunk-ZO2MTD2E.js.map +0 -1
  410. package/dist/chunk-ZYRUL5E7.js +0 -22
  411. package/dist/chunk-ZYRUL5E7.js.map +0 -1
  412. /package/dist/{chunk-TWRJEIBO.js.map → chunk-4GEF7B7W.js.map} +0 -0
  413. /package/dist/{chunk-SUONQGAH.js.map → chunk-525OLFRD.js.map} +0 -0
  414. /package/dist/{chunk-5XJEKPO5.js.map → chunk-6QOLNYFY.js.map} +0 -0
  415. /package/dist/{chunk-XXB6HJ2R.js.map → chunk-BI42E23Z.js.map} +0 -0
  416. /package/dist/{chunk-FLVULRGY.js.map → chunk-DGUAV5XN.js.map} +0 -0
  417. /package/dist/{chunk-2OSJHJV5.js.map → chunk-EBOLL4LY.js.map} +0 -0
  418. /package/dist/{chunk-QD3ROUIT.js.map → chunk-GOJ45AG7.js.map} +0 -0
  419. /package/dist/{chunk-SLBDEPBP.js.map → chunk-GU3CZAIN.js.map} +0 -0
  420. /package/dist/{chunk-XR7Q6IP6.js.map → chunk-JA5ER27P.js.map} +0 -0
  421. /package/dist/{chunk-E5HJJFUI.js.map → chunk-JGPTGV5X.js.map} +0 -0
  422. /package/dist/{chunk-2LN57UVR.js.map → chunk-KZCSP3DU.js.map} +0 -0
  423. /package/dist/{chunk-35IJG3T2.js.map → chunk-LMOAA73F.js.map} +0 -0
  424. /package/dist/{chunk-O4YU4N6Q.js.map → chunk-NVFFQJEW.js.map} +0 -0
  425. /package/dist/{chunk-OYTQWJ2O.js.map → chunk-OEPVYNB6.js.map} +0 -0
  426. /package/dist/{chunk-5FCHKIGV.js.map → chunk-PAM6VJQM.js.map} +0 -0
  427. /package/dist/{chunk-2MFBXSTL.js.map → chunk-TCB3IDJM.js.map} +0 -0
  428. /package/dist/{chunk-DHVGDIIO.js.map → chunk-TD6MVGV2.js.map} +0 -0
  429. /package/dist/{chunk-MXUGDXSG.js.map → chunk-TU3LNQKW.js.map} +0 -0
  430. /package/dist/{chunk-NST7NM5Q.js.map → chunk-X27XGVCT.js.map} +0 -0
  431. /package/dist/{chunk-D3BJEYTR.js.map → chunk-XSHFR2SX.js.map} +0 -0
  432. /package/dist/{chunk-3IYGWL34.js.map → chunk-ZW32E6EJ.js.map} +0 -0
@@ -1,7 +1,6 @@
1
1
  import { type Temporal } from './shared/temporal.js';
2
2
  /**
3
- * Adds business days (Monday–Friday), skipping weekends. Holidays are not
4
- * considered.
3
+ * Adds business days (Monday–Friday), skipping weekends and any holidays you pass.
5
4
  *
6
5
  * Starting on a weekend, the first business day counted is the next Monday
7
6
  * (or the previous Friday for negative values). Adding 0 returns the input's
@@ -12,6 +11,8 @@ import { type Temporal } from './shared/temporal.js';
12
11
  *
13
12
  * @param input - An Instant (UTC), ZonedDateTime, or PlainDate
14
13
  * @param days - Whole business days to add (negative to subtract)
14
+ * @param holidays - Dates that are not business days. For Instant and ZonedDateTime
15
+ * inputs they are matched against the input's own date (UTC for Instant).
15
16
  * @returns PlainDate for a date input; otherwise ZonedDateTime
16
17
  * @throws RangeError if days is not an integer
17
18
  *
@@ -22,7 +23,16 @@ import { type Temporal } from './shared/temporal.js';
22
23
  * addBusinessDays(friday, 1); // 2025-01-27 (Monday)
23
24
  * addBusinessDays(friday, 5); // 2025-01-31 (Friday)
24
25
  * ```
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * // Skip holidays too
30
+ * const christmasEve = Temporal.PlainDate.from('2025-12-24');
31
+ * const holidays = [Temporal.PlainDate.from('2025-12-25'), Temporal.PlainDate.from('2025-12-26')];
32
+ *
33
+ * addBusinessDays(christmasEve, 1, holidays).toString(); // "2025-12-29"
34
+ * ```
25
35
  */
26
- export declare function addBusinessDays(input: Temporal.PlainDate, days: number): Temporal.PlainDate;
27
- export declare function addBusinessDays(input: Temporal.Instant | Temporal.ZonedDateTime, days: number): Temporal.ZonedDateTime;
36
+ export declare function addBusinessDays(input: Temporal.PlainDate, days: number, holidays?: readonly Temporal.PlainDate[]): Temporal.PlainDate;
37
+ export declare function addBusinessDays(input: Temporal.Instant | Temporal.ZonedDateTime, days: number, holidays?: readonly Temporal.PlainDate[]): Temporal.ZonedDateTime;
28
38
  //# sourceMappingURL=addBusinessDays.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"addBusinessDays.d.ts","sourceRoot":"","sources":["../src/addBusinessDays.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,mBAAmB,CAAC;AAI/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC;AAC7F,wBAAgB,eAAe,CAC7B,KAAK,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,EAChD,IAAI,EAAE,MAAM,GACX,QAAQ,CAAC,aAAa,CAAC"}
1
+ {"version":3,"file":"addBusinessDays.d.ts","sourceRoot":"","sources":["../src/addBusinessDays.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,mBAAmB,CAAC;AAI/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,QAAQ,CAAC,SAAS,EACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,SAAS,QAAQ,CAAC,SAAS,EAAE,GACvC,QAAQ,CAAC,SAAS,CAAC;AACtB,wBAAgB,eAAe,CAC7B,KAAK,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,EAChD,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,SAAS,QAAQ,CAAC,SAAS,EAAE,GACvC,QAAQ,CAAC,aAAa,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  addBusinessDays
3
- } from "./chunk-SMMVTXL4.js";
4
- import "./chunk-Z7I7YCKN.js";
5
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-2JXI3CAL.js";
4
+ import "./chunk-4YCEFGZA.js";
5
+ import "./chunk-Q6QLOUXJ.js";
6
6
  import "./chunk-BSVOJYJ7.js";
7
7
  export {
8
8
  addBusinessDays
package/dist/addDays.d.ts CHANGED
@@ -16,7 +16,7 @@ import { type Temporal } from './shared/temporal.js';
16
16
  * // From Instant (always UTC)
17
17
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
18
18
  * const result = addDays(instant, 5);
19
- * // 2025-01-25T12:00:00Z[UTC] (5 days later)
19
+ * // 2025-01-25T12:00:00+00:00[UTC] (5 days later)
20
20
  * ```
21
21
  *
22
22
  * @example
@@ -32,7 +32,7 @@ import { type Temporal } from './shared/temporal.js';
32
32
  * // Negative values subtract days
33
33
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
34
34
  * const result = addDays(instant, -7);
35
- * // 2025-01-13T12:00:00Z[UTC] (7 days earlier)
35
+ * // 2025-01-13T12:00:00+00:00[UTC] (7 days earlier)
36
36
  * ```
37
37
  */
38
38
  export declare function addDays(input: Temporal.PlainDate, days: number): Temporal.PlainDate;
package/dist/addDays.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addDays
3
- } from "./chunk-V36MCE25.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-4KAIF44F.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addDays
@@ -14,7 +14,7 @@ import type { Temporal } from './shared/temporal.js';
14
14
  * // From Instant (always UTC)
15
15
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
16
16
  * const result = addHours(instant, 3);
17
- * // 2025-01-20T15:00:00Z[UTC] (3 hours later)
17
+ * // 2025-01-20T15:00:00+00:00[UTC] (3 hours later)
18
18
  * ```
19
19
  *
20
20
  * @example
@@ -30,7 +30,7 @@ import type { Temporal } from './shared/temporal.js';
30
30
  * // Negative values subtract hours
31
31
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
32
32
  * const result = addHours(instant, -5);
33
- * // 2025-01-20T07:00:00Z[UTC] (5 hours earlier)
33
+ * // 2025-01-20T07:00:00+00:00[UTC] (5 hours earlier)
34
34
  * ```
35
35
  */
36
36
  export declare function addHours(input: Temporal.Instant | Temporal.ZonedDateTime, hours: number): Temporal.ZonedDateTime;
package/dist/addHours.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addHours
3
- } from "./chunk-XTS6LZBP.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-YKXRVQ4S.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addHours
@@ -13,7 +13,7 @@ import type { Temporal } from './shared/temporal.js';
13
13
  * // From Instant (always UTC)
14
14
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
15
15
  * const result = addMicroseconds(instant, 500);
16
- * // 2025-01-20T12:00:00.000500Z[UTC] (500 microseconds later)
16
+ * // 2025-01-20T12:00:00.000500+00:00[UTC] (500 microseconds later)
17
17
  * ```
18
18
  *
19
19
  * @example
@@ -29,7 +29,7 @@ import type { Temporal } from './shared/temporal.js';
29
29
  * // Negative values subtract microseconds
30
30
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00.001Z');
31
31
  * const result = addMicroseconds(instant, -500);
32
- * // 2025-01-20T12:00:00.000500Z[UTC] (500 microseconds earlier)
32
+ * // 2025-01-20T12:00:00.000500+00:00[UTC] (500 microseconds earlier)
33
33
  * ```
34
34
  */
35
35
  export declare function addMicroseconds(input: Temporal.Instant | Temporal.ZonedDateTime, microseconds: number): Temporal.ZonedDateTime;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addMicroseconds
3
- } from "./chunk-PU6PU2JM.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-TI6WBLCB.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addMicroseconds
@@ -13,7 +13,7 @@ import type { Temporal } from './shared/temporal.js';
13
13
  * // From Instant (always UTC)
14
14
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
15
15
  * const result = addMilliseconds(instant, 500);
16
- * // 2025-01-20T12:00:00.500Z[UTC] (500 milliseconds later)
16
+ * // 2025-01-20T12:00:00.500+00:00[UTC] (500 milliseconds later)
17
17
  * ```
18
18
  *
19
19
  * @example
@@ -29,7 +29,7 @@ import type { Temporal } from './shared/temporal.js';
29
29
  * // Negative values subtract milliseconds
30
30
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00.500Z');
31
31
  * const result = addMilliseconds(instant, -250);
32
- * // 2025-01-20T12:00:00.250Z[UTC] (250 milliseconds earlier)
32
+ * // 2025-01-20T12:00:00.250+00:00[UTC] (250 milliseconds earlier)
33
33
  * ```
34
34
  */
35
35
  export declare function addMilliseconds(input: Temporal.Instant | Temporal.ZonedDateTime, milliseconds: number): Temporal.ZonedDateTime;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addMilliseconds
3
- } from "./chunk-NYM3EW3M.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-AUOZACFS.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addMilliseconds
@@ -13,7 +13,7 @@ import type { Temporal } from './shared/temporal.js';
13
13
  * // From Instant (always UTC)
14
14
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
15
15
  * const result = addMinutes(instant, 30);
16
- * // 2025-01-20T12:30:00Z[UTC] (30 minutes later)
16
+ * // 2025-01-20T12:30:00+00:00[UTC] (30 minutes later)
17
17
  * ```
18
18
  *
19
19
  * @example
@@ -29,7 +29,7 @@ import type { Temporal } from './shared/temporal.js';
29
29
  * // Negative values subtract minutes
30
30
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
31
31
  * const result = addMinutes(instant, -15);
32
- * // 2025-01-20T11:45:00Z[UTC] (15 minutes earlier)
32
+ * // 2025-01-20T11:45:00+00:00[UTC] (15 minutes earlier)
33
33
  * ```
34
34
  */
35
35
  export declare function addMinutes(input: Temporal.Instant | Temporal.ZonedDateTime, minutes: number): Temporal.ZonedDateTime;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addMinutes
3
- } from "./chunk-5ST6IOPN.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-GXSVYUCG.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addMinutes
@@ -16,7 +16,7 @@ import { type Temporal } from './shared/temporal.js';
16
16
  * // From Instant (always UTC)
17
17
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
18
18
  * const result = addMonths(instant, 3);
19
- * // 2025-04-20T12:00:00Z[UTC] (3 months later)
19
+ * // 2025-04-20T12:00:00+00:00[UTC] (3 months later)
20
20
  * ```
21
21
  *
22
22
  * @example
@@ -32,7 +32,7 @@ import { type Temporal } from './shared/temporal.js';
32
32
  * // Month-end handling
33
33
  * const instant = Temporal.Instant.from('2025-01-31T12:00:00Z');
34
34
  * const result = addMonths(instant, 1);
35
- * // 2025-02-28T12:00:00Z[UTC] (Jan 31 → Feb 28)
35
+ * // 2025-02-28T12:00:00+00:00[UTC] (Jan 31 → Feb 28)
36
36
  * ```
37
37
  */
38
38
  export declare function addMonths(input: Temporal.PlainDate, months: number): Temporal.PlainDate;
package/dist/addMonths.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addMonths
3
- } from "./chunk-WJZHUNF5.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-ZXKU4SKR.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addMonths
@@ -13,7 +13,7 @@ import type { Temporal } from './shared/temporal.js';
13
13
  * // From Instant (always UTC)
14
14
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
15
15
  * const result = addNanoseconds(instant, 500);
16
- * // 2025-01-20T12:00:00.000000500Z[UTC] (500 nanoseconds later)
16
+ * // 2025-01-20T12:00:00.000000500+00:00[UTC] (500 nanoseconds later)
17
17
  * ```
18
18
  *
19
19
  * @example
@@ -29,7 +29,7 @@ import type { Temporal } from './shared/temporal.js';
29
29
  * // Negative values subtract nanoseconds
30
30
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00.000001Z');
31
31
  * const result = addNanoseconds(instant, -500);
32
- * // 2025-01-20T12:00:00.000000500Z[UTC] (500 nanoseconds earlier)
32
+ * // 2025-01-20T12:00:00.000000500+00:00[UTC] (500 nanoseconds earlier)
33
33
  * ```
34
34
  */
35
35
  export declare function addNanoseconds(input: Temporal.Instant | Temporal.ZonedDateTime, nanoseconds: number): Temporal.ZonedDateTime;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addNanoseconds
3
- } from "./chunk-ETO77GIW.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-32AWWYBF.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addNanoseconds
@@ -14,7 +14,7 @@ import { type Temporal } from "./shared/temporal.js";
14
14
  * ```ts
15
15
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
16
16
  * addQuarters(instant, 2);
17
- * // 2025-07-20T12:00:00Z[UTC] (6 months later)
17
+ * // 2025-07-20T12:00:00+00:00[UTC] (6 months later)
18
18
  * ```
19
19
  *
20
20
  * @example
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addQuarters
3
- } from "./chunk-YR26F7OA.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-QDY2KMYX.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addQuarters
@@ -13,7 +13,7 @@ import type { Temporal } from './shared/temporal.js';
13
13
  * // From Instant (always UTC)
14
14
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
15
15
  * const result = addSeconds(instant, 45);
16
- * // 2025-01-20T12:00:45Z[UTC] (45 seconds later)
16
+ * // 2025-01-20T12:00:45+00:00[UTC] (45 seconds later)
17
17
  * ```
18
18
  *
19
19
  * @example
@@ -29,7 +29,7 @@ import type { Temporal } from './shared/temporal.js';
29
29
  * // Negative values subtract seconds
30
30
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
31
31
  * const result = addSeconds(instant, -30);
32
- * // 2025-01-20T11:59:30Z[UTC] (30 seconds earlier)
32
+ * // 2025-01-20T11:59:30+00:00[UTC] (30 seconds earlier)
33
33
  * ```
34
34
  */
35
35
  export declare function addSeconds(input: Temporal.Instant | Temporal.ZonedDateTime, seconds: number): Temporal.ZonedDateTime;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addSeconds
3
- } from "./chunk-WY5I452J.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-7IKCDOCT.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addSeconds
@@ -16,7 +16,7 @@ import { type Temporal } from './shared/temporal.js';
16
16
  * // From Instant (always UTC)
17
17
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
18
18
  * const result = addWeeks(instant, 2);
19
- * // 2025-02-03T12:00:00Z[UTC] (2 weeks later)
19
+ * // 2025-02-03T12:00:00+00:00[UTC] (2 weeks later)
20
20
  * ```
21
21
  *
22
22
  * @example
@@ -32,7 +32,7 @@ import { type Temporal } from './shared/temporal.js';
32
32
  * // Negative values subtract weeks
33
33
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
34
34
  * const result = addWeeks(instant, -1);
35
- * // 2025-01-13T12:00:00Z[UTC] (1 week earlier)
35
+ * // 2025-01-13T12:00:00+00:00[UTC] (1 week earlier)
36
36
  * ```
37
37
  */
38
38
  export declare function addWeeks(input: Temporal.PlainDate, weeks: number): Temporal.PlainDate;
package/dist/addWeeks.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addWeeks
3
- } from "./chunk-426MJGNT.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-3X2U6I44.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addWeeks
@@ -16,7 +16,7 @@ import { type Temporal } from './shared/temporal.js';
16
16
  * // From Instant (always UTC)
17
17
  * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
18
18
  * const result = addYears(instant, 2);
19
- * // 2027-01-20T12:00:00Z[UTC] (2 years later)
19
+ * // 2027-01-20T12:00:00+00:00[UTC] (2 years later)
20
20
  * ```
21
21
  *
22
22
  * @example
@@ -32,7 +32,7 @@ import { type Temporal } from './shared/temporal.js';
32
32
  * // Leap year handling
33
33
  * const instant = Temporal.Instant.from('2024-02-29T12:00:00Z');
34
34
  * const result = addYears(instant, 1);
35
- * // 2025-02-28T12:00:00Z[UTC] (Feb 29 → Feb 28)
35
+ * // 2025-02-28T12:00:00+00:00[UTC] (Feb 29 → Feb 28)
36
36
  * ```
37
37
  */
38
38
  export declare function addYears(input: Temporal.PlainDate, years: number): Temporal.PlainDate;
package/dist/addYears.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  addYears
3
- } from "./chunk-FL33IWLY.js";
4
- import "./chunk-JNAWZ4RN.js";
3
+ } from "./chunk-HRCTWTP3.js";
4
+ import "./chunk-Q6QLOUXJ.js";
5
5
  import "./chunk-BSVOJYJ7.js";
6
6
  export {
7
7
  addYears
@@ -0,0 +1,60 @@
1
+ import type { Temporal } from './shared/temporal.js';
2
+ import { type Timeline } from './shared/compare.js';
3
+ /**
4
+ * Returns true if two intervals share any time.
5
+ *
6
+ * By default an interval that ends exactly where the other starts does not
7
+ * overlap it, so back-to-back bookings are allowed. Pass `{ inclusive: true }`
8
+ * to count a shared endpoint, as for inclusive date ranges.
9
+ *
10
+ * Instants and ZonedDateTimes compare by the moment they represent. PlainDate
11
+ * intervals compare by date. Mixing PlainDate and timeline endpoints throws a
12
+ * TypeError; an interval whose start is after its end throws a RangeError.
13
+ *
14
+ * @param left - The first interval
15
+ * @param right - The second interval
16
+ * @param options - `inclusive`: count intervals that only touch as overlapping
17
+ * @returns true if the intervals overlap
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * const meeting = {
22
+ * start: Temporal.ZonedDateTime.from('2025-01-20T09:00:00+01:00[Europe/Madrid]'),
23
+ * end: Temporal.ZonedDateTime.from('2025-01-20T10:00:00+01:00[Europe/Madrid]')
24
+ * };
25
+ * const call = {
26
+ * start: Temporal.Instant.from('2025-01-20T08:30:00Z'), // 09:30 in Madrid
27
+ * end: Temporal.Instant.from('2025-01-20T09:30:00Z')
28
+ * };
29
+ *
30
+ * areIntervalsOverlapping(meeting, call); // true
31
+ * ```
32
+ *
33
+ * @example
34
+ * ```ts
35
+ * const firstStay = { start: Temporal.PlainDate.from('2025-07-01'), end: Temporal.PlainDate.from('2025-07-04') };
36
+ * const nextStay = { start: Temporal.PlainDate.from('2025-07-04'), end: Temporal.PlainDate.from('2025-07-08') };
37
+ *
38
+ * areIntervalsOverlapping(firstStay, nextStay); // false
39
+ * areIntervalsOverlapping(firstStay, nextStay, { inclusive: true }); // true
40
+ * ```
41
+ */
42
+ export declare function areIntervalsOverlapping(left: {
43
+ start: Temporal.PlainDate;
44
+ end: Temporal.PlainDate;
45
+ }, right: {
46
+ start: Temporal.PlainDate;
47
+ end: Temporal.PlainDate;
48
+ }, options?: {
49
+ inclusive?: boolean;
50
+ }): boolean;
51
+ export declare function areIntervalsOverlapping(left: {
52
+ start: Timeline;
53
+ end: Timeline;
54
+ }, right: {
55
+ start: Timeline;
56
+ end: Timeline;
57
+ }, options?: {
58
+ inclusive?: boolean;
59
+ }): boolean;
60
+ //# sourceMappingURL=areIntervalsOverlapping.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"areIntervalsOverlapping.d.ts","sourceRoot":"","sources":["../src/areIntervalsOverlapping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAW,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE;IAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAA;CAAE,EAC5D,KAAK,EAAE;IAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAA;CAAE,EAC7D,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,OAAO,CAAC;AACX,wBAAgB,uBAAuB,CACrC,IAAI,EAAE;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAA;CAAE,EACxC,KAAK,EAAE;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAA;CAAE,EACzC,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,OAAO,CAAC"}
@@ -0,0 +1,9 @@
1
+ import {
2
+ areIntervalsOverlapping
3
+ } from "./chunk-R6D3Y5NV.js";
4
+ import "./chunk-OMYVTYHI.js";
5
+ import "./chunk-BSVOJYJ7.js";
6
+ export {
7
+ areIntervalsOverlapping
8
+ };
9
+ //# sourceMappingURL=areIntervalsOverlapping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,22 @@
1
+ import {
2
+ addBusinessDaysSkipping
3
+ } from "./chunk-4YCEFGZA.js";
4
+ import {
5
+ normalizeTemporalInput
6
+ } from "./chunk-Q6QLOUXJ.js";
7
+ import {
8
+ isPlainDate
9
+ } from "./chunk-BSVOJYJ7.js";
10
+
11
+ // src/addBusinessDays.ts
12
+ function addBusinessDays(input, days, holidays = []) {
13
+ if (isPlainDate(input)) {
14
+ return addBusinessDaysSkipping(input, days, holidays);
15
+ }
16
+ return addBusinessDaysSkipping(normalizeTemporalInput(input), days, holidays);
17
+ }
18
+
19
+ export {
20
+ addBusinessDays
21
+ };
22
+ //# sourceMappingURL=chunk-2JXI3CAL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/addBusinessDays.ts"],"sourcesContent":["import { type Temporal, isPlainDate } from './shared/temporal';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\nimport { addBusinessDaysSkipping } from './shared/businessDays';\n\n/**\n * Adds business days (Monday–Friday), skipping weekends and any holidays you pass.\n *\n * Starting on a weekend, the first business day counted is the next Monday\n * (or the previous Friday for negative values). Adding 0 returns the input's\n * date unchanged, even on a weekend.\n *\n * Instant inputs are converted to UTC. ZonedDateTime inputs keep their\n * timezone and time of day. PlainDate inputs stay dates.\n *\n * @param input - An Instant (UTC), ZonedDateTime, or PlainDate\n * @param days - Whole business days to add (negative to subtract)\n * @param holidays - Dates that are not business days. For Instant and ZonedDateTime\n * inputs they are matched against the input's own date (UTC for Instant).\n * @returns PlainDate for a date input; otherwise ZonedDateTime\n * @throws RangeError if days is not an integer\n *\n * @example\n * ```ts\n * const friday = Temporal.PlainDate.from('2025-01-24');\n *\n * addBusinessDays(friday, 1); // 2025-01-27 (Monday)\n * addBusinessDays(friday, 5); // 2025-01-31 (Friday)\n * ```\n *\n * @example\n * ```ts\n * // Skip holidays too\n * const christmasEve = Temporal.PlainDate.from('2025-12-24');\n * const holidays = [Temporal.PlainDate.from('2025-12-25'), Temporal.PlainDate.from('2025-12-26')];\n *\n * addBusinessDays(christmasEve, 1, holidays).toString(); // \"2025-12-29\"\n * ```\n */\nexport function addBusinessDays(\n input: Temporal.PlainDate,\n days: number,\n holidays?: readonly Temporal.PlainDate[]\n): Temporal.PlainDate;\nexport function addBusinessDays(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n days: number,\n holidays?: readonly Temporal.PlainDate[]\n): Temporal.ZonedDateTime;\nexport function addBusinessDays(\n input: Temporal.Instant | Temporal.ZonedDateTime | Temporal.PlainDate,\n days: number,\n holidays: readonly Temporal.PlainDate[] = []\n): Temporal.ZonedDateTime | Temporal.PlainDate {\n if (isPlainDate(input)) {\n return addBusinessDaysSkipping(input, days, holidays);\n }\n return addBusinessDaysSkipping(normalizeTemporalInput(input), days, holidays);\n}\n"],"mappings":";;;;;;;;;;;AAgDO,SAAS,gBACd,OACA,MACA,WAA0C,CAAC,GACE;AAC7C,MAAI,YAAY,KAAK,GAAG;AACtB,WAAO,wBAAwB,OAAO,MAAM,QAAQ;AAAA,EACtD;AACA,SAAO,wBAAwB,uBAAuB,KAAK,GAAG,MAAM,QAAQ;AAC9E;","names":[]}
@@ -1,9 +1,12 @@
1
+ import {
2
+ consumeToken
3
+ } from "./chunk-HH2HTC44.js";
1
4
  import {
2
5
  formatPlainDate
3
6
  } from "./chunk-TWXUGWYX.js";
4
7
  import {
5
8
  normalizeTemporalInput
6
- } from "./chunk-JNAWZ4RN.js";
9
+ } from "./chunk-Q6QLOUXJ.js";
7
10
  import {
8
11
  isInstant,
9
12
  isPlainDate
@@ -65,87 +68,6 @@ function format(input, formatStr, options = {}) {
65
68
  }
66
69
  return result;
67
70
  }
68
- function consumeToken(formatStr, start, char) {
69
- if (char === "M" && start + 1 < formatStr.length && formatStr[start + 1] === "o") {
70
- return "Mo";
71
- }
72
- if (char === "d" && start + 1 < formatStr.length && formatStr[start + 1] === "o") {
73
- return "do";
74
- }
75
- let end = start;
76
- while (end < formatStr.length && formatStr[end] === char) {
77
- end++;
78
- }
79
- const count = end - start;
80
- const validTokens = [
81
- "GGGGG",
82
- "GGGG",
83
- "GGG",
84
- "GG",
85
- "G",
86
- "yyyy",
87
- "yyy",
88
- "yy",
89
- "y",
90
- "QQQQQ",
91
- "QQQQ",
92
- "QQQ",
93
- "QQ",
94
- "Q",
95
- "MMMMM",
96
- "MMMM",
97
- "MMM",
98
- "MM",
99
- "M",
100
- "dd",
101
- "d",
102
- "EEEEEE",
103
- "EEEEE",
104
- "EEEE",
105
- "EEE",
106
- "EE",
107
- "E",
108
- "aaaaa",
109
- "aaaa",
110
- "aaa",
111
- "aa",
112
- "a",
113
- "HH",
114
- "H",
115
- "hh",
116
- "h",
117
- "mm",
118
- "m",
119
- "ss",
120
- "s",
121
- "SSS",
122
- "SS",
123
- "S",
124
- "XXXXX",
125
- "XXXX",
126
- "XXX",
127
- "XX",
128
- "X",
129
- "xxxxx",
130
- "xxxx",
131
- "xxx",
132
- "xx",
133
- "x",
134
- "zzzz",
135
- "zzz",
136
- "zz",
137
- "z",
138
- "T",
139
- "t"
140
- ];
141
- for (let len = Math.min(count, 6); len > 0; len--) {
142
- const candidate = char.repeat(len);
143
- if (validTokens.includes(candidate)) {
144
- return candidate;
145
- }
146
- }
147
- return null;
148
- }
149
71
  function formatToken(token, zonedDateTime, locale) {
150
72
  switch (token) {
151
73
  // Era
@@ -325,4 +247,4 @@ function isAm(period) {
325
247
  export {
326
248
  format
327
249
  };
328
- //# sourceMappingURL=chunk-22IDWEHQ.js.map
250
+ //# sourceMappingURL=chunk-2LT2XOAL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/format.ts"],"sourcesContent":["import { type Temporal, isInstant, isPlainDate } from './shared/temporal';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\nimport type { Timezone } from './types';\nimport { formatPlainDate, type FormatPlainDateOptions } from './formatPlainDate';\nimport { consumeToken } from './shared/formatTokens';\n\nexport interface FormatOptions {\n locale?: string;\n timeZone?: Timezone;\n}\n\n/**\n * Format a Temporal.Instant, ZonedDateTime, or PlainDate using date-fns-like format tokens.\n * Uses Intl.DateTimeFormat for localized parts. PlainDate inputs delegate to\n * formatPlainDate and accept locale options only; no time or timezone is invented.\n *\n * @param input - A Temporal.Instant, Temporal.ZonedDateTime, or Temporal.PlainDate to format\n * @param formatStr - Format string using date-fns tokens (e.g., \"yyyy-MM-dd HH:mm:ss\")\n * @param options - Optional configuration for locale and timezone\n * @returns Formatted date string\n *\n * @example\n * ```typescript\n * const zoned = Temporal.ZonedDateTime.from(\"2025-01-20T15:00:00-05:00[America/New_York]\");\n *\n * format(zoned, \"yyyy-MM-dd\"); // \"2025-01-20\"\n * format(zoned, \"MMMM d, yyyy\"); // \"January 20, 2025\"\n * format(zoned, \"h:mm a\"); // \"3:00 PM\"\n * format(zoned, \"EEEE, MMMM do, yyyy 'at' h:mm a\"); // \"Monday, January 20th, 2025 at 3:00 PM\"\n *\n * // With locale\n * format(zoned, \"MMMM d, yyyy\", { locale: \"es-ES\" }); // \"enero 20, 2025\"\n * ```\n */\nexport function format(\n input: Temporal.PlainDate,\n formatStr: string,\n options?: FormatPlainDateOptions & { timeZone?: never }\n): string;\nexport function format(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n formatStr: string,\n options?: FormatOptions\n): string;\nexport function format(\n input: Temporal.Instant | Temporal.ZonedDateTime | Temporal.PlainDate,\n formatStr: string,\n options: FormatOptions = {}\n): string {\n if (isPlainDate(input)) {\n if (options.timeZone !== undefined) {\n throw new TypeError('PlainDate formatting does not accept a timezone');\n }\n return formatPlainDate(input, formatStr, options);\n }\n const { locale = 'en-US', timeZone } = options;\n\n // Convert to ZonedDateTime, applying custom timezone if provided\n let zonedDateTime: Temporal.ZonedDateTime;\n if (timeZone) {\n // If custom timezone specified, convert via Instant\n const instant = isInstant(input) ? input : input.toInstant();\n zonedDateTime = instant.toZonedDateTimeISO(timeZone);\n } else {\n // No custom timezone: normalize to ZonedDateTime (Instant -> UTC, ZonedDateTime -> keep as-is)\n zonedDateTime = normalizeTemporalInput(input);\n }\n\n let result = '';\n let i = 0;\n const len = formatStr.length;\n\n while (i < len) {\n const char = formatStr[i];\n if (!char) break;\n\n // Handle escaped text\n if (char === \"'\") {\n // Check for double single quote (not inside a string, just '')\n if (i + 1 < len && formatStr[i + 1] === \"'\") {\n result += \"'\";\n i += 2;\n continue;\n }\n // Find closing quote, handling '' inside the string\n i++;\n while (i < len) {\n if (formatStr[i] === \"'\") {\n // Check if it's a doubled quote ''\n if (i + 1 < len && formatStr[i + 1] === \"'\") {\n result += \"'\";\n i += 2;\n } else {\n // End of quoted string\n i++;\n break;\n }\n } else {\n result += formatStr[i];\n i++;\n }\n }\n continue;\n }\n\n // Check for tokens by looking ahead\n const token = consumeToken(formatStr, i, char);\n if (token !== null) {\n result += formatToken(token, zonedDateTime, locale);\n i += token.length;\n } else {\n result += char;\n i++;\n }\n }\n\n return result;\n}\n\nfunction formatToken(token: string, zonedDateTime: Temporal.ZonedDateTime, locale: string): string {\n switch (token) {\n // Era\n case 'GGGGG':\n return formatPart(zonedDateTime, 'era', 'narrow', locale);\n case 'GGGG':\n return formatPart(zonedDateTime, 'era', 'long', locale);\n case 'GGG':\n case 'GG':\n case 'G':\n return formatPart(zonedDateTime, 'era', 'short', locale);\n\n // Year\n case 'yyyy':\n return zonedDateTime.year.toString().padStart(4, '0');\n case 'yyy':\n return zonedDateTime.year.toString().padStart(3, '0');\n case 'yy':\n return (zonedDateTime.year % 100).toString().padStart(2, '0');\n case 'y':\n return zonedDateTime.year.toString();\n\n // Quarter\n case 'QQQQQ':\n return Math.ceil(zonedDateTime.month / 3).toString();\n case 'QQQQ': {\n const quarter = Math.ceil(zonedDateTime.month / 3);\n return `${quarter}${getOrdinalSuffix(quarter)} quarter`;\n }\n case 'QQQ':\n return `Q${Math.ceil(zonedDateTime.month / 3)}`;\n case 'QQ':\n return Math.ceil(zonedDateTime.month / 3)\n .toString()\n .padStart(2, '0');\n case 'Q':\n return Math.ceil(zonedDateTime.month / 3).toString();\n\n // Month\n case 'MMMMM':\n return formatPart(zonedDateTime, 'month', 'narrow', locale);\n case 'MMMM':\n return formatPart(zonedDateTime, 'month', 'long', locale);\n case 'MMM':\n return formatPart(zonedDateTime, 'month', 'short', locale);\n case 'MM':\n return zonedDateTime.month.toString().padStart(2, '0');\n case 'Mo':\n return `${zonedDateTime.month}${getOrdinalSuffix(zonedDateTime.month)}`;\n case 'M':\n return zonedDateTime.month.toString();\n\n // Day of month\n case 'do':\n return `${zonedDateTime.day}${getOrdinalSuffix(zonedDateTime.day)}`;\n case 'dd':\n return zonedDateTime.day.toString().padStart(2, '0');\n case 'd':\n return zonedDateTime.day.toString();\n\n // Day of week\n case 'EEEEEE':\n return formatPart(zonedDateTime, 'weekday', 'short', locale).slice(0, 2);\n case 'EEEEE':\n return formatPart(zonedDateTime, 'weekday', 'narrow', locale);\n case 'EEEE':\n return formatPart(zonedDateTime, 'weekday', 'long', locale);\n case 'EEE':\n case 'EE':\n case 'E':\n return formatPart(zonedDateTime, 'weekday', 'short', locale);\n\n // AM/PM (locale-aware; English widths applied only for ASCII AM/PM)\n case 'aaaaa': {\n const period = getDayPeriod(zonedDateTime, locale);\n if (isAsciiAmPm(period)) return isAm(period) ? 'a' : 'p';\n return period.charAt(0).toLowerCase();\n }\n case 'aaaa': {\n const period = getDayPeriod(zonedDateTime, locale);\n if (isAsciiAmPm(period)) return isAm(period) ? 'a.m.' : 'p.m.';\n return period;\n }\n case 'aaa':\n return getDayPeriod(zonedDateTime, locale).toLowerCase();\n case 'aa':\n case 'a':\n return getDayPeriod(zonedDateTime, locale);\n\n // Hour [0-23]\n case 'HH':\n return zonedDateTime.hour.toString().padStart(2, '0');\n case 'H':\n return zonedDateTime.hour.toString();\n\n // Hour [1-12]\n case 'hh': {\n const hour12 = zonedDateTime.hour % 12 || 12;\n return hour12.toString().padStart(2, '0');\n }\n case 'h': {\n const hour12 = zonedDateTime.hour % 12 || 12;\n return hour12.toString();\n }\n\n // Minute\n case 'mm':\n return zonedDateTime.minute.toString().padStart(2, '0');\n case 'm':\n return zonedDateTime.minute.toString();\n\n // Second\n case 'ss':\n return zonedDateTime.second.toString().padStart(2, '0');\n case 's':\n return zonedDateTime.second.toString();\n\n // Fractional seconds\n case 'SSS':\n return zonedDateTime.millisecond.toString().padStart(3, '0');\n case 'SS':\n return Math.floor(zonedDateTime.millisecond / 10)\n .toString()\n .padStart(2, '0');\n case 'S':\n return Math.floor(zonedDateTime.millisecond / 100).toString();\n\n // Timezone\n case 'XXXXX':\n case 'XXXX':\n case 'XXX':\n case 'XX':\n case 'X':\n case 'xxxxx':\n case 'xxxx':\n case 'xxx':\n case 'xx':\n case 'x':\n return formatTimezoneOffset(zonedDateTime, token);\n case 'zzzz':\n return formatPart(zonedDateTime, 'timeZoneName', 'long', locale);\n case 'zzz':\n case 'zz':\n case 'z':\n return formatPart(zonedDateTime, 'timeZoneName', 'short', locale);\n\n // Timestamps\n case 'T':\n return zonedDateTime.epochMilliseconds.toString();\n case 't':\n return Math.floor(zonedDateTime.epochMilliseconds / 1000).toString();\n\n default:\n return token;\n }\n}\n\nfunction formatPart(\n zonedDateTime: Temporal.ZonedDateTime,\n part: 'era' | 'year' | 'month' | 'weekday' | 'day' | 'hour' | 'minute' | 'second' | 'timeZoneName',\n style: 'narrow' | 'short' | 'long' | 'numeric' | '2-digit',\n locale: string\n): string {\n const options: Intl.DateTimeFormatOptions = {\n [part]: style,\n timeZone: zonedDateTime.timeZoneId,\n calendar: zonedDateTime.calendarId === 'iso8601' ? undefined : zonedDateTime.calendarId,\n };\n return new Intl.DateTimeFormat(locale, options)\n .formatToParts(zonedDateTime.epochMilliseconds)\n .find(value => value.type === part)?.value ?? '';\n}\n\nfunction getOrdinalSuffix(num: number): string {\n const j = num % 10;\n const k = num % 100;\n if (j === 1 && k !== 11) return 'st';\n if (j === 2 && k !== 12) return 'nd';\n if (j === 3 && k !== 13) return 'rd';\n return 'th';\n}\n\nfunction formatTimezoneOffset(zonedDateTime: Temporal.ZonedDateTime, token: string): string {\n if (token[0] === 'X' && zonedDateTime.offsetNanoseconds === 0) return 'Z';\n\n // Temporal supplies integer HH:mm[:ss] fields. Widths 1–3 omit seconds;\n // widths 4–5 retain them when present, as specified by Unicode date tokens.\n const offset = token.length >= 4 ? zonedDateTime.offset : zonedDateTime.offset.slice(0, 6);\n if (token.length === 1 && offset.endsWith(':00')) return offset.slice(0, 3);\n return token.length === 3 || token.length === 5 ? offset : offset.replaceAll(':', '');\n}\n\n/**\n * Locale-correct day period (AM/PM equivalent) via Intl.formatToParts.\n * Returns the locale's own value, e.g. \"AM\"/\"PM\" (en), \"p. m.\" (es), \"午後\" (ja).\n */\nfunction getDayPeriod(zonedDateTime: Temporal.ZonedDateTime, locale: string): string {\n const parts = new Intl.DateTimeFormat(locale, {\n hour: 'numeric',\n hour12: true,\n timeZone: zonedDateTime.timeZoneId,\n }).formatToParts(zonedDateTime.epochMilliseconds);\n return parts.find((p) => p.type === 'dayPeriod')?.value ?? '';\n}\n\n/** True when the day-period is recognizably ASCII AM/PM (so English widths apply). */\nfunction isAsciiAmPm(period: string): boolean {\n const normalized = period.toUpperCase().replace(/[.\\s]/g, '');\n return normalized === 'AM' || normalized === 'PM';\n}\n\n/** True for the AM half (only meaningful when isAsciiAmPm is true). */\nfunction isAm(period: string): boolean {\n return period.toUpperCase().replace(/[.\\s]/g, '').startsWith('A');\n}\n"],"mappings":"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","names":[]}