@gobrand/tiempo 2.2.2 → 2.3.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 (245) hide show
  1. package/README.md +286 -12
  2. package/dist/addDays.d.ts +37 -0
  3. package/dist/addDays.d.ts.map +1 -0
  4. package/dist/addDays.js +8 -0
  5. package/dist/addDays.js.map +1 -0
  6. package/dist/addDays.test.d.ts +2 -0
  7. package/dist/addDays.test.d.ts.map +1 -0
  8. package/dist/addHours.d.ts +37 -0
  9. package/dist/addHours.d.ts.map +1 -0
  10. package/dist/addHours.js +8 -0
  11. package/dist/addHours.js.map +1 -0
  12. package/dist/addHours.test.d.ts +2 -0
  13. package/dist/addHours.test.d.ts.map +1 -0
  14. package/dist/addMicroseconds.d.ts +36 -0
  15. package/dist/addMicroseconds.d.ts.map +1 -0
  16. package/dist/addMicroseconds.js +8 -0
  17. package/dist/addMicroseconds.js.map +1 -0
  18. package/dist/addMicroseconds.test.d.ts +2 -0
  19. package/dist/addMicroseconds.test.d.ts.map +1 -0
  20. package/dist/addMilliseconds.d.ts +36 -0
  21. package/dist/addMilliseconds.d.ts.map +1 -0
  22. package/dist/addMilliseconds.js +8 -0
  23. package/dist/addMilliseconds.js.map +1 -0
  24. package/dist/addMilliseconds.test.d.ts +2 -0
  25. package/dist/addMilliseconds.test.d.ts.map +1 -0
  26. package/dist/addMinutes.d.ts +36 -0
  27. package/dist/addMinutes.d.ts.map +1 -0
  28. package/dist/addMinutes.js +8 -0
  29. package/dist/addMinutes.js.map +1 -0
  30. package/dist/addMinutes.test.d.ts +2 -0
  31. package/dist/addMinutes.test.d.ts.map +1 -0
  32. package/dist/addMonths.d.ts +37 -0
  33. package/dist/addMonths.d.ts.map +1 -0
  34. package/dist/addMonths.js +8 -0
  35. package/dist/addMonths.js.map +1 -0
  36. package/dist/addMonths.test.d.ts +2 -0
  37. package/dist/addMonths.test.d.ts.map +1 -0
  38. package/dist/addNanoseconds.d.ts +36 -0
  39. package/dist/addNanoseconds.d.ts.map +1 -0
  40. package/dist/addNanoseconds.js +8 -0
  41. package/dist/addNanoseconds.js.map +1 -0
  42. package/dist/addNanoseconds.test.d.ts +2 -0
  43. package/dist/addNanoseconds.test.d.ts.map +1 -0
  44. package/dist/addSeconds.d.ts +36 -0
  45. package/dist/addSeconds.d.ts.map +1 -0
  46. package/dist/addSeconds.js +8 -0
  47. package/dist/addSeconds.js.map +1 -0
  48. package/dist/addSeconds.test.d.ts +2 -0
  49. package/dist/addSeconds.test.d.ts.map +1 -0
  50. package/dist/addWeeks.d.ts +37 -0
  51. package/dist/addWeeks.d.ts.map +1 -0
  52. package/dist/addWeeks.js +8 -0
  53. package/dist/addWeeks.js.map +1 -0
  54. package/dist/addWeeks.test.d.ts +2 -0
  55. package/dist/addWeeks.test.d.ts.map +1 -0
  56. package/dist/addYears.d.ts +37 -0
  57. package/dist/addYears.d.ts.map +1 -0
  58. package/dist/addYears.js +8 -0
  59. package/dist/addYears.js.map +1 -0
  60. package/dist/addYears.test.d.ts +2 -0
  61. package/dist/addYears.test.d.ts.map +1 -0
  62. package/dist/chunk-2XHAHSB6.js +14 -0
  63. package/dist/chunk-2XHAHSB6.js.map +1 -0
  64. package/dist/chunk-4NJMCCUM.js +14 -0
  65. package/dist/chunk-4NJMCCUM.js.map +1 -0
  66. package/dist/chunk-52NEOY34.js +13 -0
  67. package/dist/chunk-52NEOY34.js.map +1 -0
  68. package/dist/chunk-7ATM7AXL.js +14 -0
  69. package/dist/chunk-7ATM7AXL.js.map +1 -0
  70. package/dist/chunk-A5VVBYNT.js +14 -0
  71. package/dist/chunk-A5VVBYNT.js.map +1 -0
  72. package/dist/chunk-ADQTZVMH.js +15 -0
  73. package/dist/chunk-ADQTZVMH.js.map +1 -0
  74. package/dist/chunk-AHMKY474.js +13 -0
  75. package/dist/chunk-AHMKY474.js.map +1 -0
  76. package/dist/chunk-BH2YB4MV.js +13 -0
  77. package/dist/chunk-BH2YB4MV.js.map +1 -0
  78. package/dist/chunk-BQBLSXK2.js +13 -0
  79. package/dist/chunk-BQBLSXK2.js.map +1 -0
  80. package/dist/chunk-CY746ZUQ.js +15 -0
  81. package/dist/chunk-CY746ZUQ.js.map +1 -0
  82. package/dist/chunk-DT2EWLHU.js +14 -0
  83. package/dist/chunk-DT2EWLHU.js.map +1 -0
  84. package/dist/chunk-EEQ3REET.js +15 -0
  85. package/dist/chunk-EEQ3REET.js.map +1 -0
  86. package/dist/chunk-EYO2ZJLH.js +14 -0
  87. package/dist/chunk-EYO2ZJLH.js.map +1 -0
  88. package/dist/chunk-HDBH7RTY.js +13 -0
  89. package/dist/chunk-HDBH7RTY.js.map +1 -0
  90. package/dist/chunk-ISHZRFVN.js +15 -0
  91. package/dist/chunk-ISHZRFVN.js.map +1 -0
  92. package/dist/chunk-J6G2I2TU.js +13 -0
  93. package/dist/chunk-J6G2I2TU.js.map +1 -0
  94. package/dist/chunk-JOD4ATPE.js +15 -0
  95. package/dist/chunk-JOD4ATPE.js.map +1 -0
  96. package/dist/chunk-L4SVABDH.js +14 -0
  97. package/dist/chunk-L4SVABDH.js.map +1 -0
  98. package/dist/chunk-LDO6PRNJ.js +15 -0
  99. package/dist/chunk-LDO6PRNJ.js.map +1 -0
  100. package/dist/chunk-NRD5HRZV.js +14 -0
  101. package/dist/chunk-NRD5HRZV.js.map +1 -0
  102. package/dist/chunk-PPB62JYV.js +15 -0
  103. package/dist/chunk-PPB62JYV.js.map +1 -0
  104. package/dist/chunk-Q2F3HEXB.js +14 -0
  105. package/dist/chunk-Q2F3HEXB.js.map +1 -0
  106. package/dist/chunk-S63QUP4W.js +15 -0
  107. package/dist/chunk-S63QUP4W.js.map +1 -0
  108. package/dist/chunk-U4RNUZXO.js +13 -0
  109. package/dist/chunk-U4RNUZXO.js.map +1 -0
  110. package/dist/chunk-V27NUBXQ.js +14 -0
  111. package/dist/chunk-V27NUBXQ.js.map +1 -0
  112. package/dist/chunk-VLZ3HQQA.js +15 -0
  113. package/dist/chunk-VLZ3HQQA.js.map +1 -0
  114. package/dist/chunk-WVHAYLBW.js +13 -0
  115. package/dist/chunk-WVHAYLBW.js.map +1 -0
  116. package/dist/chunk-XEDXPI5G.js +94 -0
  117. package/dist/chunk-XEDXPI5G.js.map +1 -0
  118. package/dist/chunk-XW5MLXX5.js +13 -0
  119. package/dist/chunk-XW5MLXX5.js.map +1 -0
  120. package/dist/chunk-YKBP3G7L.js +13 -0
  121. package/dist/chunk-YKBP3G7L.js.map +1 -0
  122. package/dist/index.d.ts +30 -0
  123. package/dist/index.d.ts.map +1 -1
  124. package/dist/index.js +139 -19
  125. package/dist/intlFormatDistance.d.ts +85 -0
  126. package/dist/intlFormatDistance.d.ts.map +1 -0
  127. package/dist/intlFormatDistance.js +15 -0
  128. package/dist/intlFormatDistance.js.map +1 -0
  129. package/dist/intlFormatDistance.test.d.ts +2 -0
  130. package/dist/intlFormatDistance.test.d.ts.map +1 -0
  131. package/dist/isSameHour.d.ts +58 -0
  132. package/dist/isSameHour.d.ts.map +1 -0
  133. package/dist/isSameHour.js +8 -0
  134. package/dist/isSameHour.js.map +1 -0
  135. package/dist/isSameHour.test.d.ts +2 -0
  136. package/dist/isSameHour.test.d.ts.map +1 -0
  137. package/dist/isSameMicrosecond.d.ts +59 -0
  138. package/dist/isSameMicrosecond.d.ts.map +1 -0
  139. package/dist/isSameMicrosecond.js +8 -0
  140. package/dist/isSameMicrosecond.js.map +1 -0
  141. package/dist/isSameMicrosecond.test.d.ts +2 -0
  142. package/dist/isSameMicrosecond.test.d.ts.map +1 -0
  143. package/dist/isSameMillisecond.d.ts +59 -0
  144. package/dist/isSameMillisecond.d.ts.map +1 -0
  145. package/dist/isSameMillisecond.js +8 -0
  146. package/dist/isSameMillisecond.js.map +1 -0
  147. package/dist/isSameMillisecond.test.d.ts +2 -0
  148. package/dist/isSameMillisecond.test.d.ts.map +1 -0
  149. package/dist/isSameMinute.d.ts +58 -0
  150. package/dist/isSameMinute.d.ts.map +1 -0
  151. package/dist/isSameMinute.js +8 -0
  152. package/dist/isSameMinute.js.map +1 -0
  153. package/dist/isSameMinute.test.d.ts +2 -0
  154. package/dist/isSameMinute.test.d.ts.map +1 -0
  155. package/dist/isSameMonth.d.ts +58 -0
  156. package/dist/isSameMonth.d.ts.map +1 -0
  157. package/dist/isSameMonth.js +8 -0
  158. package/dist/isSameMonth.js.map +1 -0
  159. package/dist/isSameMonth.test.d.ts +2 -0
  160. package/dist/isSameMonth.test.d.ts.map +1 -0
  161. package/dist/isSameNanosecond.d.ts +59 -0
  162. package/dist/isSameNanosecond.d.ts.map +1 -0
  163. package/dist/isSameNanosecond.js +8 -0
  164. package/dist/isSameNanosecond.js.map +1 -0
  165. package/dist/isSameNanosecond.test.d.ts +2 -0
  166. package/dist/isSameNanosecond.test.d.ts.map +1 -0
  167. package/dist/isSameSecond.d.ts +59 -0
  168. package/dist/isSameSecond.d.ts.map +1 -0
  169. package/dist/isSameSecond.js +8 -0
  170. package/dist/isSameSecond.js.map +1 -0
  171. package/dist/isSameSecond.test.d.ts +2 -0
  172. package/dist/isSameSecond.test.d.ts.map +1 -0
  173. package/dist/isSameWeek.d.ts +72 -0
  174. package/dist/isSameWeek.d.ts.map +1 -0
  175. package/dist/isSameWeek.js +8 -0
  176. package/dist/isSameWeek.js.map +1 -0
  177. package/dist/isSameWeek.test.d.ts +2 -0
  178. package/dist/isSameWeek.test.d.ts.map +1 -0
  179. package/dist/isSameYear.d.ts +58 -0
  180. package/dist/isSameYear.d.ts.map +1 -0
  181. package/dist/isSameYear.js +8 -0
  182. package/dist/isSameYear.js.map +1 -0
  183. package/dist/isSameYear.test.d.ts +2 -0
  184. package/dist/isSameYear.test.d.ts.map +1 -0
  185. package/dist/subDays.d.ts +20 -0
  186. package/dist/subDays.d.ts.map +1 -0
  187. package/dist/subDays.js +9 -0
  188. package/dist/subDays.js.map +1 -0
  189. package/dist/subDays.test.d.ts +2 -0
  190. package/dist/subDays.test.d.ts.map +1 -0
  191. package/dist/subHours.d.ts +20 -0
  192. package/dist/subHours.d.ts.map +1 -0
  193. package/dist/subHours.js +9 -0
  194. package/dist/subHours.js.map +1 -0
  195. package/dist/subHours.test.d.ts +2 -0
  196. package/dist/subHours.test.d.ts.map +1 -0
  197. package/dist/subMicroseconds.d.ts +19 -0
  198. package/dist/subMicroseconds.d.ts.map +1 -0
  199. package/dist/subMicroseconds.js +9 -0
  200. package/dist/subMicroseconds.js.map +1 -0
  201. package/dist/subMicroseconds.test.d.ts +2 -0
  202. package/dist/subMicroseconds.test.d.ts.map +1 -0
  203. package/dist/subMilliseconds.d.ts +19 -0
  204. package/dist/subMilliseconds.d.ts.map +1 -0
  205. package/dist/subMilliseconds.js +9 -0
  206. package/dist/subMilliseconds.js.map +1 -0
  207. package/dist/subMilliseconds.test.d.ts +2 -0
  208. package/dist/subMilliseconds.test.d.ts.map +1 -0
  209. package/dist/subMinutes.d.ts +19 -0
  210. package/dist/subMinutes.d.ts.map +1 -0
  211. package/dist/subMinutes.js +9 -0
  212. package/dist/subMinutes.js.map +1 -0
  213. package/dist/subMinutes.test.d.ts +2 -0
  214. package/dist/subMinutes.test.d.ts.map +1 -0
  215. package/dist/subMonths.d.ts +20 -0
  216. package/dist/subMonths.d.ts.map +1 -0
  217. package/dist/subMonths.js +9 -0
  218. package/dist/subMonths.js.map +1 -0
  219. package/dist/subMonths.test.d.ts +2 -0
  220. package/dist/subMonths.test.d.ts.map +1 -0
  221. package/dist/subNanoseconds.d.ts +19 -0
  222. package/dist/subNanoseconds.d.ts.map +1 -0
  223. package/dist/subNanoseconds.js +9 -0
  224. package/dist/subNanoseconds.js.map +1 -0
  225. package/dist/subNanoseconds.test.d.ts +2 -0
  226. package/dist/subNanoseconds.test.d.ts.map +1 -0
  227. package/dist/subSeconds.d.ts +19 -0
  228. package/dist/subSeconds.d.ts.map +1 -0
  229. package/dist/subSeconds.js +9 -0
  230. package/dist/subSeconds.js.map +1 -0
  231. package/dist/subSeconds.test.d.ts +2 -0
  232. package/dist/subSeconds.test.d.ts.map +1 -0
  233. package/dist/subWeeks.d.ts +20 -0
  234. package/dist/subWeeks.d.ts.map +1 -0
  235. package/dist/subWeeks.js +9 -0
  236. package/dist/subWeeks.js.map +1 -0
  237. package/dist/subWeeks.test.d.ts +2 -0
  238. package/dist/subWeeks.test.d.ts.map +1 -0
  239. package/dist/subYears.d.ts +20 -0
  240. package/dist/subYears.d.ts.map +1 -0
  241. package/dist/subYears.js +9 -0
  242. package/dist/subYears.js.map +1 -0
  243. package/dist/subYears.test.d.ts +2 -0
  244. package/dist/subYears.test.d.ts.map +1 -0
  245. package/package.json +1 -1
@@ -0,0 +1,37 @@
1
+ import type { Temporal } from '@js-temporal/polyfill';
2
+ /**
3
+ * Adds the specified number of months to a datetime.
4
+ *
5
+ * Properly handles month-end dates and calendar edge cases through Temporal API.
6
+ * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.
7
+ *
8
+ * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime
9
+ * @param months - Number of months to add (can be negative to subtract)
10
+ * @returns ZonedDateTime with months added, in the same timezone as input
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * // From Instant (always UTC)
15
+ * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
16
+ * const result = addMonths(instant, 3);
17
+ * // 2025-04-20T12:00:00Z[UTC] (3 months later)
18
+ * ```
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * // From ZonedDateTime (preserves timezone)
23
+ * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');
24
+ * const result = addMonths(zoned, 6);
25
+ * // 2025-07-20T15:30:00-04:00[America/New_York]
26
+ * ```
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * // Month-end handling
31
+ * const instant = Temporal.Instant.from('2025-01-31T12:00:00Z');
32
+ * const result = addMonths(instant, 1);
33
+ * // 2025-02-28T12:00:00Z[UTC] (Jan 31 → Feb 28)
34
+ * ```
35
+ */
36
+ export declare function addMonths(input: Temporal.Instant | Temporal.ZonedDateTime, months: number): Temporal.ZonedDateTime;
37
+ //# sourceMappingURL=addMonths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addMonths.d.ts","sourceRoot":"","sources":["../src/addMonths.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,EAChD,MAAM,EAAE,MAAM,GACb,QAAQ,CAAC,aAAa,CAGxB"}
@@ -0,0 +1,8 @@
1
+ import {
2
+ addMonths
3
+ } from "./chunk-7ATM7AXL.js";
4
+ import "./chunk-MJSZNWCV.js";
5
+ export {
6
+ addMonths
7
+ };
8
+ //# sourceMappingURL=addMonths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=addMonths.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addMonths.test.d.ts","sourceRoot":"","sources":["../src/addMonths.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,36 @@
1
+ import type { Temporal } from '@js-temporal/polyfill';
2
+ /**
3
+ * Adds the specified number of nanoseconds to a datetime.
4
+ *
5
+ * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.
6
+ *
7
+ * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime
8
+ * @param nanoseconds - Number of nanoseconds to add (can be negative to subtract)
9
+ * @returns ZonedDateTime with nanoseconds added, in the same timezone as input
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * // From Instant (always UTC)
14
+ * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
15
+ * const result = addNanoseconds(instant, 500);
16
+ * // 2025-01-20T12:00:00.000000500Z[UTC] (500 nanoseconds later)
17
+ * ```
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * // From ZonedDateTime (preserves timezone)
22
+ * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');
23
+ * const result = addNanoseconds(zoned, 1000);
24
+ * // 2025-01-20T15:30:00.000001-05:00[America/New_York]
25
+ * ```
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * // Negative values subtract nanoseconds
30
+ * const instant = Temporal.Instant.from('2025-01-20T12:00:00.000001Z');
31
+ * const result = addNanoseconds(instant, -500);
32
+ * // 2025-01-20T12:00:00.000000500Z[UTC] (500 nanoseconds earlier)
33
+ * ```
34
+ */
35
+ export declare function addNanoseconds(input: Temporal.Instant | Temporal.ZonedDateTime, nanoseconds: number): Temporal.ZonedDateTime;
36
+ //# sourceMappingURL=addNanoseconds.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addNanoseconds.d.ts","sourceRoot":"","sources":["../src/addNanoseconds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,EAChD,WAAW,EAAE,MAAM,GAClB,QAAQ,CAAC,aAAa,CAGxB"}
@@ -0,0 +1,8 @@
1
+ import {
2
+ addNanoseconds
3
+ } from "./chunk-EYO2ZJLH.js";
4
+ import "./chunk-MJSZNWCV.js";
5
+ export {
6
+ addNanoseconds
7
+ };
8
+ //# sourceMappingURL=addNanoseconds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=addNanoseconds.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addNanoseconds.test.d.ts","sourceRoot":"","sources":["../src/addNanoseconds.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,36 @@
1
+ import type { Temporal } from '@js-temporal/polyfill';
2
+ /**
3
+ * Adds the specified number of seconds to a datetime.
4
+ *
5
+ * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.
6
+ *
7
+ * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime
8
+ * @param seconds - Number of seconds to add (can be negative to subtract)
9
+ * @returns ZonedDateTime with seconds added, in the same timezone as input
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * // From Instant (always UTC)
14
+ * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
15
+ * const result = addSeconds(instant, 45);
16
+ * // 2025-01-20T12:00:45Z[UTC] (45 seconds later)
17
+ * ```
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * // From ZonedDateTime (preserves timezone)
22
+ * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');
23
+ * const result = addSeconds(zoned, 3600);
24
+ * // 2025-01-20T16:30:00-05:00[America/New_York]
25
+ * ```
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * // Negative values subtract seconds
30
+ * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
31
+ * const result = addSeconds(instant, -30);
32
+ * // 2025-01-20T11:59:30Z[UTC] (30 seconds earlier)
33
+ * ```
34
+ */
35
+ export declare function addSeconds(input: Temporal.Instant | Temporal.ZonedDateTime, seconds: number): Temporal.ZonedDateTime;
36
+ //# sourceMappingURL=addSeconds.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addSeconds.d.ts","sourceRoot":"","sources":["../src/addSeconds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,EAChD,OAAO,EAAE,MAAM,GACd,QAAQ,CAAC,aAAa,CAGxB"}
@@ -0,0 +1,8 @@
1
+ import {
2
+ addSeconds
3
+ } from "./chunk-NRD5HRZV.js";
4
+ import "./chunk-MJSZNWCV.js";
5
+ export {
6
+ addSeconds
7
+ };
8
+ //# sourceMappingURL=addSeconds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=addSeconds.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addSeconds.test.d.ts","sourceRoot":"","sources":["../src/addSeconds.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,37 @@
1
+ import type { Temporal } from '@js-temporal/polyfill';
2
+ /**
3
+ * Adds the specified number of weeks to a datetime.
4
+ *
5
+ * Properly handles DST transitions and calendar edge cases through Temporal API.
6
+ * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.
7
+ *
8
+ * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime
9
+ * @param weeks - Number of weeks to add (can be negative to subtract)
10
+ * @returns ZonedDateTime with weeks added, in the same timezone as input
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * // From Instant (always UTC)
15
+ * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
16
+ * const result = addWeeks(instant, 2);
17
+ * // 2025-02-03T12:00:00Z[UTC] (2 weeks later)
18
+ * ```
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * // From ZonedDateTime (preserves timezone)
23
+ * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');
24
+ * const result = addWeeks(zoned, 2);
25
+ * // 2025-02-03T15:30:00-05:00[America/New_York]
26
+ * ```
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * // Negative values subtract weeks
31
+ * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
32
+ * const result = addWeeks(instant, -1);
33
+ * // 2025-01-13T12:00:00Z[UTC] (1 week earlier)
34
+ * ```
35
+ */
36
+ export declare function addWeeks(input: Temporal.Instant | Temporal.ZonedDateTime, weeks: number): Temporal.ZonedDateTime;
37
+ //# sourceMappingURL=addWeeks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addWeeks.d.ts","sourceRoot":"","sources":["../src/addWeeks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,EAChD,KAAK,EAAE,MAAM,GACZ,QAAQ,CAAC,aAAa,CAGxB"}
@@ -0,0 +1,8 @@
1
+ import {
2
+ addWeeks
3
+ } from "./chunk-DT2EWLHU.js";
4
+ import "./chunk-MJSZNWCV.js";
5
+ export {
6
+ addWeeks
7
+ };
8
+ //# sourceMappingURL=addWeeks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=addWeeks.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addWeeks.test.d.ts","sourceRoot":"","sources":["../src/addWeeks.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,37 @@
1
+ import type { Temporal } from '@js-temporal/polyfill';
2
+ /**
3
+ * Adds the specified number of years to a datetime.
4
+ *
5
+ * Properly handles leap years and calendar edge cases through Temporal API.
6
+ * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.
7
+ *
8
+ * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime
9
+ * @param years - Number of years to add (can be negative to subtract)
10
+ * @returns ZonedDateTime with years added, in the same timezone as input
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * // From Instant (always UTC)
15
+ * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');
16
+ * const result = addYears(instant, 2);
17
+ * // 2027-01-20T12:00:00Z[UTC] (2 years later)
18
+ * ```
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * // From ZonedDateTime (preserves timezone)
23
+ * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');
24
+ * const result = addYears(zoned, 1);
25
+ * // 2026-01-20T15:30:00-05:00[America/New_York]
26
+ * ```
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * // Leap year handling
31
+ * const instant = Temporal.Instant.from('2024-02-29T12:00:00Z');
32
+ * const result = addYears(instant, 1);
33
+ * // 2025-02-28T12:00:00Z[UTC] (Feb 29 → Feb 28)
34
+ * ```
35
+ */
36
+ export declare function addYears(input: Temporal.Instant | Temporal.ZonedDateTime, years: number): Temporal.ZonedDateTime;
37
+ //# sourceMappingURL=addYears.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addYears.d.ts","sourceRoot":"","sources":["../src/addYears.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,EAChD,KAAK,EAAE,MAAM,GACZ,QAAQ,CAAC,aAAa,CAGxB"}
@@ -0,0 +1,8 @@
1
+ import {
2
+ addYears
3
+ } from "./chunk-Q2F3HEXB.js";
4
+ import "./chunk-MJSZNWCV.js";
5
+ export {
6
+ addYears
7
+ };
8
+ //# sourceMappingURL=addYears.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=addYears.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addYears.test.d.ts","sourceRoot":"","sources":["../src/addYears.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ import {
2
+ normalizeTemporalInput
3
+ } from "./chunk-MJSZNWCV.js";
4
+
5
+ // src/addMinutes.ts
6
+ function addMinutes(input, minutes) {
7
+ const zonedDateTime = normalizeTemporalInput(input);
8
+ return zonedDateTime.add({ minutes });
9
+ }
10
+
11
+ export {
12
+ addMinutes
13
+ };
14
+ //# sourceMappingURL=chunk-2XHAHSB6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/addMinutes.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\n\n/**\n * Adds the specified number of minutes to a datetime.\n *\n * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param minutes - Number of minutes to add (can be negative to subtract)\n * @returns ZonedDateTime with minutes added, in the same timezone as input\n *\n * @example\n * ```ts\n * // From Instant (always UTC)\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = addMinutes(instant, 30);\n * // 2025-01-20T12:30:00Z[UTC] (30 minutes later)\n * ```\n *\n * @example\n * ```ts\n * // From ZonedDateTime (preserves timezone)\n * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');\n * const result = addMinutes(zoned, 90);\n * // 2025-01-20T17:00:00-05:00[America/New_York]\n * ```\n *\n * @example\n * ```ts\n * // Negative values subtract minutes\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = addMinutes(instant, -15);\n * // 2025-01-20T11:45:00Z[UTC] (15 minutes earlier)\n * ```\n */\nexport function addMinutes(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n minutes: number\n): Temporal.ZonedDateTime {\n const zonedDateTime = normalizeTemporalInput(input);\n return zonedDateTime.add({ minutes });\n}\n"],"mappings":";;;;;AAoCO,SAAS,WACd,OACA,SACwB;AACxB,QAAM,gBAAgB,uBAAuB,KAAK;AAClD,SAAO,cAAc,IAAI,EAAE,QAAQ,CAAC;AACtC;","names":[]}
@@ -0,0 +1,14 @@
1
+ import {
2
+ normalizeTemporalInput
3
+ } from "./chunk-MJSZNWCV.js";
4
+
5
+ // src/addHours.ts
6
+ function addHours(input, hours) {
7
+ const zonedDateTime = normalizeTemporalInput(input);
8
+ return zonedDateTime.add({ hours });
9
+ }
10
+
11
+ export {
12
+ addHours
13
+ };
14
+ //# sourceMappingURL=chunk-4NJMCCUM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/addHours.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\n\n/**\n * Adds the specified number of hours to a datetime.\n *\n * Properly handles DST transitions through Temporal API.\n * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param hours - Number of hours to add (can be negative to subtract)\n * @returns ZonedDateTime with hours added, in the same timezone as input\n *\n * @example\n * ```ts\n * // From Instant (always UTC)\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = addHours(instant, 3);\n * // 2025-01-20T15:00:00Z[UTC] (3 hours later)\n * ```\n *\n * @example\n * ```ts\n * // From ZonedDateTime (preserves timezone)\n * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');\n * const result = addHours(zoned, 24);\n * // 2025-01-21T15:30:00-05:00[America/New_York]\n * ```\n *\n * @example\n * ```ts\n * // Negative values subtract hours\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = addHours(instant, -5);\n * // 2025-01-20T07:00:00Z[UTC] (5 hours earlier)\n * ```\n */\nexport function addHours(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n hours: number\n): Temporal.ZonedDateTime {\n const zonedDateTime = normalizeTemporalInput(input);\n return zonedDateTime.add({ hours });\n}\n"],"mappings":";;;;;AAqCO,SAAS,SACd,OACA,OACwB;AACxB,QAAM,gBAAgB,uBAAuB,KAAK;AAClD,SAAO,cAAc,IAAI,EAAE,MAAM,CAAC;AACpC;","names":[]}
@@ -0,0 +1,13 @@
1
+ import {
2
+ addMonths
3
+ } from "./chunk-7ATM7AXL.js";
4
+
5
+ // src/subMonths.ts
6
+ function subMonths(input, months) {
7
+ return addMonths(input, -months);
8
+ }
9
+
10
+ export {
11
+ subMonths
12
+ };
13
+ //# sourceMappingURL=chunk-52NEOY34.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/subMonths.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { addMonths } from './addMonths';\n\n/**\n * Subtracts the specified number of months from a datetime.\n *\n * This is a convenience wrapper around addMonths with negated value.\n * Properly handles month-end dates and calendar edge cases through Temporal API.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param months - Number of months to subtract\n * @returns ZonedDateTime with months subtracted, in the same timezone as input\n *\n * @example\n * ```ts\n * const instant = Temporal.Instant.from('2025-04-20T12:00:00Z');\n * const result = subMonths(instant, 3);\n * // 2025-01-20T12:00:00Z[UTC] (3 months earlier)\n * ```\n */\nexport function subMonths(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n months: number\n): Temporal.ZonedDateTime {\n return addMonths(input, -months);\n}\n"],"mappings":";;;;;AAoBO,SAAS,UACd,OACA,QACwB;AACxB,SAAO,UAAU,OAAO,CAAC,MAAM;AACjC;","names":[]}
@@ -0,0 +1,14 @@
1
+ import {
2
+ normalizeTemporalInput
3
+ } from "./chunk-MJSZNWCV.js";
4
+
5
+ // src/addMonths.ts
6
+ function addMonths(input, months) {
7
+ const zonedDateTime = normalizeTemporalInput(input);
8
+ return zonedDateTime.add({ months });
9
+ }
10
+
11
+ export {
12
+ addMonths
13
+ };
14
+ //# sourceMappingURL=chunk-7ATM7AXL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/addMonths.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\n\n/**\n * Adds the specified number of months to a datetime.\n *\n * Properly handles month-end dates and calendar edge cases through Temporal API.\n * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param months - Number of months to add (can be negative to subtract)\n * @returns ZonedDateTime with months added, in the same timezone as input\n *\n * @example\n * ```ts\n * // From Instant (always UTC)\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = addMonths(instant, 3);\n * // 2025-04-20T12:00:00Z[UTC] (3 months later)\n * ```\n *\n * @example\n * ```ts\n * // From ZonedDateTime (preserves timezone)\n * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');\n * const result = addMonths(zoned, 6);\n * // 2025-07-20T15:30:00-04:00[America/New_York]\n * ```\n *\n * @example\n * ```ts\n * // Month-end handling\n * const instant = Temporal.Instant.from('2025-01-31T12:00:00Z');\n * const result = addMonths(instant, 1);\n * // 2025-02-28T12:00:00Z[UTC] (Jan 31 → Feb 28)\n * ```\n */\nexport function addMonths(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n months: number\n): Temporal.ZonedDateTime {\n const zonedDateTime = normalizeTemporalInput(input);\n return zonedDateTime.add({ months });\n}\n"],"mappings":";;;;;AAqCO,SAAS,UACd,OACA,QACwB;AACxB,QAAM,gBAAgB,uBAAuB,KAAK;AAClD,SAAO,cAAc,IAAI,EAAE,OAAO,CAAC;AACrC;","names":[]}
@@ -0,0 +1,14 @@
1
+ import {
2
+ normalizeTemporalInput
3
+ } from "./chunk-MJSZNWCV.js";
4
+
5
+ // src/addMilliseconds.ts
6
+ function addMilliseconds(input, milliseconds) {
7
+ const zonedDateTime = normalizeTemporalInput(input);
8
+ return zonedDateTime.add({ milliseconds });
9
+ }
10
+
11
+ export {
12
+ addMilliseconds
13
+ };
14
+ //# sourceMappingURL=chunk-A5VVBYNT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/addMilliseconds.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\n\n/**\n * Adds the specified number of milliseconds to a datetime.\n *\n * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param milliseconds - Number of milliseconds to add (can be negative to subtract)\n * @returns ZonedDateTime with milliseconds added, in the same timezone as input\n *\n * @example\n * ```ts\n * // From Instant (always UTC)\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = addMilliseconds(instant, 500);\n * // 2025-01-20T12:00:00.500Z[UTC] (500 milliseconds later)\n * ```\n *\n * @example\n * ```ts\n * // From ZonedDateTime (preserves timezone)\n * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');\n * const result = addMilliseconds(zoned, 1500);\n * // 2025-01-20T15:30:01.500-05:00[America/New_York]\n * ```\n *\n * @example\n * ```ts\n * // Negative values subtract milliseconds\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00.500Z');\n * const result = addMilliseconds(instant, -250);\n * // 2025-01-20T12:00:00.250Z[UTC] (250 milliseconds earlier)\n * ```\n */\nexport function addMilliseconds(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n milliseconds: number\n): Temporal.ZonedDateTime {\n const zonedDateTime = normalizeTemporalInput(input);\n return zonedDateTime.add({ milliseconds });\n}\n"],"mappings":";;;;;AAoCO,SAAS,gBACd,OACA,cACwB;AACxB,QAAM,gBAAgB,uBAAuB,KAAK;AAClD,SAAO,cAAc,IAAI,EAAE,aAAa,CAAC;AAC3C;","names":[]}
@@ -0,0 +1,15 @@
1
+ import {
2
+ normalizeTemporalInput
3
+ } from "./chunk-MJSZNWCV.js";
4
+
5
+ // src/isSameMonth.ts
6
+ function isSameMonth(date1, date2) {
7
+ const zoned1 = normalizeTemporalInput(date1);
8
+ const zoned2 = normalizeTemporalInput(date2);
9
+ return zoned1.year === zoned2.year && zoned1.month === zoned2.month;
10
+ }
11
+
12
+ export {
13
+ isSameMonth
14
+ };
15
+ //# sourceMappingURL=chunk-ADQTZVMH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/isSameMonth.ts"],"sourcesContent":["import type{ Temporal } from '@js-temporal/polyfill';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\n\n/**\n * Returns true if both datetimes fall in the same calendar month and year.\n * Compares the year and month fields directly.\n *\n * Instant inputs are converted to UTC. For ZonedDateTime inputs, their\n * timezone is preserved. Convert to a common timezone before calling if\n * you need to compare from a specific perspective.\n *\n * @param date1 - First datetime (Instant or ZonedDateTime)\n * @param date2 - Second datetime (Instant or ZonedDateTime)\n * @returns true if both dates are in the same calendar month, false otherwise\n *\n * @example\n * ```ts\n * // Same timezone, same month\n * const start = Temporal.ZonedDateTime.from('2025-01-01T08:00:00Z[UTC]');\n * const end = Temporal.ZonedDateTime.from('2025-01-31T23:59:59Z[UTC]');\n *\n * isSameMonth(start, end); // true\n * ```\n *\n * @example\n * ```ts\n * // Same timezone, different months\n * const jan = Temporal.ZonedDateTime.from('2025-01-31T23:59:59Z[UTC]');\n * const feb = Temporal.ZonedDateTime.from('2025-02-01T00:00:00Z[UTC]');\n *\n * isSameMonth(jan, feb); // false\n * ```\n *\n * @example\n * ```ts\n * // Different timezones - compares their local calendar months\n * const ny = Temporal.ZonedDateTime.from('2025-01-31T23:00:00-05:00[America/New_York]');\n * const tokyo = Temporal.ZonedDateTime.from('2025-02-01T13:00:00+09:00[Asia/Tokyo]');\n *\n * // Same instant, different calendar months from each person's perspective\n * isSameMonth(ny, tokyo); // false (Jan in NY, Feb in Tokyo)\n *\n * // Convert to UTC to compare in UTC timezone\n * isSameMonth(ny.withTimeZone('UTC'), tokyo.withTimeZone('UTC')); // true (both Feb in UTC)\n *\n * // Convert to NY timezone to compare from NY perspective\n * isSameMonth(ny, tokyo.withTimeZone('America/New_York')); // true (both Jan in NY)\n * ```\n *\n * @example\n * ```ts\n * // Instant inputs are converted to UTC\n * const instant1 = Temporal.Instant.from('2025-01-01T00:00:00Z');\n * const instant2 = Temporal.Instant.from('2025-01-31T23:59:59Z');\n *\n * isSameMonth(instant1, instant2); // true (both Jan 2025 in UTC)\n * ```\n */\nexport function isSameMonth(\n date1: Temporal.Instant | Temporal.ZonedDateTime,\n date2: Temporal.Instant | Temporal.ZonedDateTime\n): boolean {\n const zoned1 = normalizeTemporalInput(date1);\n const zoned2 = normalizeTemporalInput(date2);\n\n return zoned1.year === zoned2.year && zoned1.month === zoned2.month;\n}\n"],"mappings":";;;;;AA0DO,SAAS,YACd,OACA,OACS;AACT,QAAM,SAAS,uBAAuB,KAAK;AAC3C,QAAM,SAAS,uBAAuB,KAAK;AAE3C,SAAO,OAAO,SAAS,OAAO,QAAQ,OAAO,UAAU,OAAO;AAChE;","names":[]}
@@ -0,0 +1,13 @@
1
+ import {
2
+ addYears
3
+ } from "./chunk-Q2F3HEXB.js";
4
+
5
+ // src/subYears.ts
6
+ function subYears(input, years) {
7
+ return addYears(input, -years);
8
+ }
9
+
10
+ export {
11
+ subYears
12
+ };
13
+ //# sourceMappingURL=chunk-AHMKY474.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/subYears.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { addYears } from './addYears';\n\n/**\n * Subtracts the specified number of years from a datetime.\n *\n * This is a convenience wrapper around addYears with negated value.\n * Properly handles leap years and calendar edge cases through Temporal API.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param years - Number of years to subtract\n * @returns ZonedDateTime with years subtracted, in the same timezone as input\n *\n * @example\n * ```ts\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = subYears(instant, 2);\n * // 2023-01-20T12:00:00Z[UTC] (2 years earlier)\n * ```\n */\nexport function subYears(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n years: number\n): Temporal.ZonedDateTime {\n return addYears(input, -years);\n}\n"],"mappings":";;;;;AAoBO,SAAS,SACd,OACA,OACwB;AACxB,SAAO,SAAS,OAAO,CAAC,KAAK;AAC/B;","names":[]}
@@ -0,0 +1,13 @@
1
+ import {
2
+ addSeconds
3
+ } from "./chunk-NRD5HRZV.js";
4
+
5
+ // src/subSeconds.ts
6
+ function subSeconds(input, seconds) {
7
+ return addSeconds(input, -seconds);
8
+ }
9
+
10
+ export {
11
+ subSeconds
12
+ };
13
+ //# sourceMappingURL=chunk-BH2YB4MV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/subSeconds.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { addSeconds } from './addSeconds';\n\n/**\n * Subtracts the specified number of seconds from a datetime.\n *\n * This is a convenience wrapper around addSeconds with negated value.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param seconds - Number of seconds to subtract\n * @returns ZonedDateTime with seconds subtracted, in the same timezone as input\n *\n * @example\n * ```ts\n * const instant = Temporal.Instant.from('2025-01-20T12:00:45Z');\n * const result = subSeconds(instant, 30);\n * // 2025-01-20T12:00:15Z[UTC] (30 seconds earlier)\n * ```\n */\nexport function subSeconds(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n seconds: number\n): Temporal.ZonedDateTime {\n return addSeconds(input, -seconds);\n}\n"],"mappings":";;;;;AAmBO,SAAS,WACd,OACA,SACwB;AACxB,SAAO,WAAW,OAAO,CAAC,OAAO;AACnC;","names":[]}
@@ -0,0 +1,13 @@
1
+ import {
2
+ addMicroseconds
3
+ } from "./chunk-V27NUBXQ.js";
4
+
5
+ // src/subMicroseconds.ts
6
+ function subMicroseconds(input, microseconds) {
7
+ return addMicroseconds(input, -microseconds);
8
+ }
9
+
10
+ export {
11
+ subMicroseconds
12
+ };
13
+ //# sourceMappingURL=chunk-BQBLSXK2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/subMicroseconds.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { addMicroseconds } from './addMicroseconds';\n\n/**\n * Subtracts the specified number of microseconds from a datetime.\n *\n * This is a convenience wrapper around addMicroseconds with negated value.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param microseconds - Number of microseconds to subtract\n * @returns ZonedDateTime with microseconds subtracted, in the same timezone as input\n *\n * @example\n * ```ts\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00.001Z');\n * const result = subMicroseconds(instant, 500);\n * // 2025-01-20T12:00:00.000500Z[UTC] (500 microseconds earlier)\n * ```\n */\nexport function subMicroseconds(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n microseconds: number\n): Temporal.ZonedDateTime {\n return addMicroseconds(input, -microseconds);\n}\n"],"mappings":";;;;;AAmBO,SAAS,gBACd,OACA,cACwB;AACxB,SAAO,gBAAgB,OAAO,CAAC,YAAY;AAC7C;","names":[]}
@@ -0,0 +1,15 @@
1
+ import {
2
+ normalizeTemporalInput
3
+ } from "./chunk-MJSZNWCV.js";
4
+
5
+ // src/isSameSecond.ts
6
+ function isSameSecond(date1, date2) {
7
+ const zoned1 = normalizeTemporalInput(date1);
8
+ const zoned2 = normalizeTemporalInput(date2);
9
+ return zoned1.year === zoned2.year && zoned1.month === zoned2.month && zoned1.day === zoned2.day && zoned1.hour === zoned2.hour && zoned1.minute === zoned2.minute && zoned1.second === zoned2.second;
10
+ }
11
+
12
+ export {
13
+ isSameSecond
14
+ };
15
+ //# sourceMappingURL=chunk-CY746ZUQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/isSameSecond.ts"],"sourcesContent":["import type{ Temporal } from '@js-temporal/polyfill';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\n\n/**\n * Returns true if both datetimes fall in the same second.\n * Compares the year, month, day, hour, minute, and second fields directly.\n * Ignores sub-second precision (milliseconds, microseconds, nanoseconds).\n *\n * Instant inputs are converted to UTC. For ZonedDateTime inputs, their\n * timezone is preserved. Convert to a common timezone before calling if\n * you need to compare from a specific perspective.\n *\n * @param date1 - First datetime (Instant or ZonedDateTime)\n * @param date2 - Second datetime (Instant or ZonedDateTime)\n * @returns true if both dates are in the same second, false otherwise\n *\n * @example\n * ```ts\n * // Same timezone, same second\n * const time1 = Temporal.ZonedDateTime.from('2025-01-20T14:30:45.000Z[UTC]');\n * const time2 = Temporal.ZonedDateTime.from('2025-01-20T14:30:45.999Z[UTC]');\n *\n * isSameSecond(time1, time2); // true\n * ```\n *\n * @example\n * ```ts\n * // Same timezone, different seconds\n * const sec45 = Temporal.ZonedDateTime.from('2025-01-20T14:30:45Z[UTC]');\n * const sec46 = Temporal.ZonedDateTime.from('2025-01-20T14:30:46Z[UTC]');\n *\n * isSameSecond(sec45, sec46); // false\n * ```\n *\n * @example\n * ```ts\n * // Different timezones - compares their local seconds\n * const ny = Temporal.ZonedDateTime.from('2025-01-20T14:30:45.123-05:00[America/New_York]');\n * const tokyo = Temporal.ZonedDateTime.from('2025-01-21T04:30:45.987+09:00[Asia/Tokyo]');\n *\n * // Same instant, different local seconds from each person's perspective\n * isSameSecond(ny, tokyo); // false (14:30:45 in NY, 04:30:45 in Tokyo)\n *\n * // Convert to UTC to compare in UTC timezone\n * isSameSecond(ny.withTimeZone('UTC'), tokyo.withTimeZone('UTC')); // true (both 19:30:45 in UTC)\n *\n * // Convert to NY timezone to compare from NY perspective\n * isSameSecond(ny, tokyo.withTimeZone('America/New_York')); // true (both 14:30:45 in NY)\n * ```\n *\n * @example\n * ```ts\n * // Instant inputs are converted to UTC\n * const instant1 = Temporal.Instant.from('2025-01-20T14:30:45.123Z');\n * const instant2 = Temporal.Instant.from('2025-01-20T14:30:45.999Z');\n *\n * isSameSecond(instant1, instant2); // true (both 14:30:45 in UTC)\n * ```\n */\nexport function isSameSecond(\n date1: Temporal.Instant | Temporal.ZonedDateTime,\n date2: Temporal.Instant | Temporal.ZonedDateTime\n): boolean {\n const zoned1 = normalizeTemporalInput(date1);\n const zoned2 = normalizeTemporalInput(date2);\n\n return (\n zoned1.year === zoned2.year &&\n zoned1.month === zoned2.month &&\n zoned1.day === zoned2.day &&\n zoned1.hour === zoned2.hour &&\n zoned1.minute === zoned2.minute &&\n zoned1.second === zoned2.second\n );\n}\n"],"mappings":";;;;;AA2DO,SAAS,aACd,OACA,OACS;AACT,QAAM,SAAS,uBAAuB,KAAK;AAC3C,QAAM,SAAS,uBAAuB,KAAK;AAE3C,SACE,OAAO,SAAS,OAAO,QACvB,OAAO,UAAU,OAAO,SACxB,OAAO,QAAQ,OAAO,OACtB,OAAO,SAAS,OAAO,QACvB,OAAO,WAAW,OAAO,UACzB,OAAO,WAAW,OAAO;AAE7B;","names":[]}
@@ -0,0 +1,14 @@
1
+ import {
2
+ normalizeTemporalInput
3
+ } from "./chunk-MJSZNWCV.js";
4
+
5
+ // src/addWeeks.ts
6
+ function addWeeks(input, weeks) {
7
+ const zonedDateTime = normalizeTemporalInput(input);
8
+ return zonedDateTime.add({ weeks });
9
+ }
10
+
11
+ export {
12
+ addWeeks
13
+ };
14
+ //# sourceMappingURL=chunk-DT2EWLHU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/addWeeks.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\n\n/**\n * Adds the specified number of weeks to a datetime.\n *\n * Properly handles DST transitions and calendar edge cases through Temporal API.\n * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param weeks - Number of weeks to add (can be negative to subtract)\n * @returns ZonedDateTime with weeks added, in the same timezone as input\n *\n * @example\n * ```ts\n * // From Instant (always UTC)\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = addWeeks(instant, 2);\n * // 2025-02-03T12:00:00Z[UTC] (2 weeks later)\n * ```\n *\n * @example\n * ```ts\n * // From ZonedDateTime (preserves timezone)\n * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');\n * const result = addWeeks(zoned, 2);\n * // 2025-02-03T15:30:00-05:00[America/New_York]\n * ```\n *\n * @example\n * ```ts\n * // Negative values subtract weeks\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = addWeeks(instant, -1);\n * // 2025-01-13T12:00:00Z[UTC] (1 week earlier)\n * ```\n */\nexport function addWeeks(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n weeks: number\n): Temporal.ZonedDateTime {\n const zonedDateTime = normalizeTemporalInput(input);\n return zonedDateTime.add({ weeks });\n}\n"],"mappings":";;;;;AAqCO,SAAS,SACd,OACA,OACwB;AACxB,QAAM,gBAAgB,uBAAuB,KAAK;AAClD,SAAO,cAAc,IAAI,EAAE,MAAM,CAAC;AACpC;","names":[]}
@@ -0,0 +1,15 @@
1
+ import {
2
+ normalizeTemporalInput
3
+ } from "./chunk-MJSZNWCV.js";
4
+
5
+ // src/isSameHour.ts
6
+ function isSameHour(date1, date2) {
7
+ const zoned1 = normalizeTemporalInput(date1);
8
+ const zoned2 = normalizeTemporalInput(date2);
9
+ return zoned1.year === zoned2.year && zoned1.month === zoned2.month && zoned1.day === zoned2.day && zoned1.hour === zoned2.hour;
10
+ }
11
+
12
+ export {
13
+ isSameHour
14
+ };
15
+ //# sourceMappingURL=chunk-EEQ3REET.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/isSameHour.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\n\n/**\n * Returns true if both datetimes fall in the same hour.\n * Compares the year, month, day, and hour fields directly.\n *\n * Instant inputs are converted to UTC. For ZonedDateTime inputs, their\n * timezone is preserved. Convert to a common timezone before calling if\n * you need to compare from a specific perspective.\n *\n * @param date1 - First datetime (Instant or ZonedDateTime)\n * @param date2 - Second datetime (Instant or ZonedDateTime)\n * @returns true if both dates are in the same hour, false otherwise\n *\n * @example\n * ```ts\n * // Same timezone, same hour\n * const start = Temporal.ZonedDateTime.from('2025-01-20T14:00:00Z[UTC]');\n * const end = Temporal.ZonedDateTime.from('2025-01-20T14:59:59.999Z[UTC]');\n *\n * isSameHour(start, end); // true\n * ```\n *\n * @example\n * ```ts\n * // Same timezone, different hours\n * const hour14 = Temporal.ZonedDateTime.from('2025-01-20T14:59:59Z[UTC]');\n * const hour15 = Temporal.ZonedDateTime.from('2025-01-20T15:00:00Z[UTC]');\n *\n * isSameHour(hour14, hour15); // false\n * ```\n *\n * @example\n * ```ts\n * // Different timezones - compares their local hours\n * const ny = Temporal.ZonedDateTime.from('2025-01-20T14:30:00-05:00[America/New_York]');\n * const tokyo = Temporal.ZonedDateTime.from('2025-01-21T04:30:00+09:00[Asia/Tokyo]');\n *\n * // Same instant, different local hours from each person's perspective\n * isSameHour(ny, tokyo); // false (14:xx in NY, 04:xx in Tokyo)\n *\n * // Convert to UTC to compare in UTC timezone\n * isSameHour(ny.withTimeZone('UTC'), tokyo.withTimeZone('UTC')); // true (both 19:xx in UTC)\n *\n * // Convert to NY timezone to compare from NY perspective\n * isSameHour(ny, tokyo.withTimeZone('America/New_York')); // true (both 14:xx in NY)\n * ```\n *\n * @example\n * ```ts\n * // Instant inputs are converted to UTC\n * const instant1 = Temporal.Instant.from('2025-01-20T14:15:30Z');\n * const instant2 = Temporal.Instant.from('2025-01-20T14:45:50Z');\n *\n * isSameHour(instant1, instant2); // true (both 14:xx in UTC)\n * ```\n */\nexport function isSameHour(\n date1: Temporal.Instant | Temporal.ZonedDateTime,\n date2: Temporal.Instant | Temporal.ZonedDateTime\n): boolean {\n const zoned1 = normalizeTemporalInput(date1);\n const zoned2 = normalizeTemporalInput(date2);\n\n return (\n zoned1.year === zoned2.year &&\n zoned1.month === zoned2.month &&\n zoned1.day === zoned2.day &&\n zoned1.hour === zoned2.hour\n );\n}\n"],"mappings":";;;;;AA0DO,SAAS,WACd,OACA,OACS;AACT,QAAM,SAAS,uBAAuB,KAAK;AAC3C,QAAM,SAAS,uBAAuB,KAAK;AAE3C,SACE,OAAO,SAAS,OAAO,QACvB,OAAO,UAAU,OAAO,SACxB,OAAO,QAAQ,OAAO,OACtB,OAAO,SAAS,OAAO;AAE3B;","names":[]}
@@ -0,0 +1,14 @@
1
+ import {
2
+ normalizeTemporalInput
3
+ } from "./chunk-MJSZNWCV.js";
4
+
5
+ // src/addNanoseconds.ts
6
+ function addNanoseconds(input, nanoseconds) {
7
+ const zonedDateTime = normalizeTemporalInput(input);
8
+ return zonedDateTime.add({ nanoseconds });
9
+ }
10
+
11
+ export {
12
+ addNanoseconds
13
+ };
14
+ //# sourceMappingURL=chunk-EYO2ZJLH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/addNanoseconds.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { normalizeTemporalInput } from './shared/normalizeTemporalInput';\n\n/**\n * Adds the specified number of nanoseconds to a datetime.\n *\n * Instant inputs are converted to UTC. For ZonedDateTime inputs, their timezone is preserved.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param nanoseconds - Number of nanoseconds to add (can be negative to subtract)\n * @returns ZonedDateTime with nanoseconds added, in the same timezone as input\n *\n * @example\n * ```ts\n * // From Instant (always UTC)\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00Z');\n * const result = addNanoseconds(instant, 500);\n * // 2025-01-20T12:00:00.000000500Z[UTC] (500 nanoseconds later)\n * ```\n *\n * @example\n * ```ts\n * // From ZonedDateTime (preserves timezone)\n * const zoned = Temporal.ZonedDateTime.from('2025-01-20T15:30:00-05:00[America/New_York]');\n * const result = addNanoseconds(zoned, 1000);\n * // 2025-01-20T15:30:00.000001-05:00[America/New_York]\n * ```\n *\n * @example\n * ```ts\n * // Negative values subtract nanoseconds\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00.000001Z');\n * const result = addNanoseconds(instant, -500);\n * // 2025-01-20T12:00:00.000000500Z[UTC] (500 nanoseconds earlier)\n * ```\n */\nexport function addNanoseconds(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n nanoseconds: number\n): Temporal.ZonedDateTime {\n const zonedDateTime = normalizeTemporalInput(input);\n return zonedDateTime.add({ nanoseconds });\n}\n"],"mappings":";;;;;AAoCO,SAAS,eACd,OACA,aACwB;AACxB,QAAM,gBAAgB,uBAAuB,KAAK;AAClD,SAAO,cAAc,IAAI,EAAE,YAAY,CAAC;AAC1C;","names":[]}
@@ -0,0 +1,13 @@
1
+ import {
2
+ addMilliseconds
3
+ } from "./chunk-A5VVBYNT.js";
4
+
5
+ // src/subMilliseconds.ts
6
+ function subMilliseconds(input, milliseconds) {
7
+ return addMilliseconds(input, -milliseconds);
8
+ }
9
+
10
+ export {
11
+ subMilliseconds
12
+ };
13
+ //# sourceMappingURL=chunk-HDBH7RTY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/subMilliseconds.ts"],"sourcesContent":["import type { Temporal } from '@js-temporal/polyfill';\nimport { addMilliseconds } from './addMilliseconds';\n\n/**\n * Subtracts the specified number of milliseconds from a datetime.\n *\n * This is a convenience wrapper around addMilliseconds with negated value.\n *\n * @param input - A Temporal.Instant (UTC) or Temporal.ZonedDateTime\n * @param milliseconds - Number of milliseconds to subtract\n * @returns ZonedDateTime with milliseconds subtracted, in the same timezone as input\n *\n * @example\n * ```ts\n * const instant = Temporal.Instant.from('2025-01-20T12:00:00.500Z');\n * const result = subMilliseconds(instant, 250);\n * // 2025-01-20T12:00:00.250Z[UTC] (250 milliseconds earlier)\n * ```\n */\nexport function subMilliseconds(\n input: Temporal.Instant | Temporal.ZonedDateTime,\n milliseconds: number\n): Temporal.ZonedDateTime {\n return addMilliseconds(input, -milliseconds);\n}\n"],"mappings":";;;;;AAmBO,SAAS,gBACd,OACA,cACwB;AACxB,SAAO,gBAAgB,OAAO,CAAC,YAAY;AAC7C;","names":[]}