@internationalized/date 3.12.0 → 3.12.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/dist/index.cjs +113 -0
  2. package/dist/index.cjs.map +1 -0
  3. package/dist/index.js +45 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/index.mjs +45 -0
  6. package/dist/index.mjs.map +1 -0
  7. package/dist/private/CalendarDate.cjs +272 -0
  8. package/dist/private/CalendarDate.cjs.map +1 -0
  9. package/dist/private/CalendarDate.js +282 -0
  10. package/dist/private/CalendarDate.js.map +1 -0
  11. package/dist/private/CalendarDate.mjs +264 -0
  12. package/dist/private/CalendarDate.mjs.map +1 -0
  13. package/dist/{DateFormatter.main.js → private/DateFormatter.cjs} +31 -28
  14. package/dist/private/DateFormatter.cjs.map +1 -0
  15. package/dist/{DateFormatter.module.js → private/DateFormatter.js} +27 -24
  16. package/dist/private/DateFormatter.js.map +1 -0
  17. package/dist/{DateFormatter.mjs → private/DateFormatter.mjs} +31 -28
  18. package/dist/private/DateFormatter.mjs.map +1 -0
  19. package/dist/{BuddhistCalendar.main.js → private/calendars/BuddhistCalendar.cjs} +13 -13
  20. package/dist/{BuddhistCalendar.main.js.map → private/calendars/BuddhistCalendar.cjs.map} +1 -1
  21. package/dist/{BuddhistCalendar.module.js → private/calendars/BuddhistCalendar.js} +13 -13
  22. package/dist/{BuddhistCalendar.module.js.map → private/calendars/BuddhistCalendar.js.map} +1 -1
  23. package/dist/{BuddhistCalendar.mjs → private/calendars/BuddhistCalendar.mjs} +13 -13
  24. package/dist/private/calendars/BuddhistCalendar.mjs.map +1 -0
  25. package/dist/{EthiopicCalendar.main.js → private/calendars/EthiopicCalendar.cjs} +37 -37
  26. package/dist/private/calendars/EthiopicCalendar.cjs.map +1 -0
  27. package/dist/{EthiopicCalendar.module.js → private/calendars/EthiopicCalendar.js} +35 -35
  28. package/dist/private/calendars/EthiopicCalendar.js.map +1 -0
  29. package/dist/{EthiopicCalendar.mjs → private/calendars/EthiopicCalendar.mjs} +35 -35
  30. package/dist/private/calendars/EthiopicCalendar.mjs.map +1 -0
  31. package/dist/{GregorianCalendar.main.js → private/calendars/GregorianCalendar.cjs} +31 -31
  32. package/dist/private/calendars/GregorianCalendar.cjs.map +1 -0
  33. package/dist/{GregorianCalendar.module.js → private/calendars/GregorianCalendar.js} +27 -27
  34. package/dist/private/calendars/GregorianCalendar.js.map +1 -0
  35. package/dist/{GregorianCalendar.mjs → private/calendars/GregorianCalendar.mjs} +27 -27
  36. package/dist/private/calendars/GregorianCalendar.mjs.map +1 -0
  37. package/dist/{HebrewCalendar.main.js → private/calendars/HebrewCalendar.cjs} +44 -44
  38. package/dist/private/calendars/HebrewCalendar.cjs.map +1 -0
  39. package/dist/{HebrewCalendar.module.js → private/calendars/HebrewCalendar.js} +44 -44
  40. package/dist/private/calendars/HebrewCalendar.js.map +1 -0
  41. package/dist/{HebrewCalendar.mjs → private/calendars/HebrewCalendar.mjs} +44 -44
  42. package/dist/private/calendars/HebrewCalendar.mjs.map +1 -0
  43. package/dist/{IndianCalendar.main.js → private/calendars/IndianCalendar.cjs} +20 -20
  44. package/dist/private/calendars/IndianCalendar.cjs.map +1 -0
  45. package/dist/{IndianCalendar.module.js → private/calendars/IndianCalendar.js} +20 -20
  46. package/dist/private/calendars/IndianCalendar.js.map +1 -0
  47. package/dist/{IndianCalendar.mjs → private/calendars/IndianCalendar.mjs} +20 -20
  48. package/dist/private/calendars/IndianCalendar.mjs.map +1 -0
  49. package/dist/private/calendars/IslamicCalendar.cjs +168 -0
  50. package/dist/private/calendars/IslamicCalendar.cjs.map +1 -0
  51. package/dist/private/calendars/IslamicCalendar.js +161 -0
  52. package/dist/private/calendars/IslamicCalendar.js.map +1 -0
  53. package/dist/private/calendars/IslamicCalendar.mjs +161 -0
  54. package/dist/private/calendars/IslamicCalendar.mjs.map +1 -0
  55. package/dist/{JapaneseCalendar.main.js → private/calendars/JapaneseCalendar.cjs} +37 -37
  56. package/dist/private/calendars/JapaneseCalendar.cjs.map +1 -0
  57. package/dist/{JapaneseCalendar.module.js → private/calendars/JapaneseCalendar.js} +37 -37
  58. package/dist/private/calendars/JapaneseCalendar.js.map +1 -0
  59. package/dist/{JapaneseCalendar.mjs → private/calendars/JapaneseCalendar.mjs} +37 -37
  60. package/dist/private/calendars/JapaneseCalendar.mjs.map +1 -0
  61. package/dist/{PersianCalendar.main.js → private/calendars/PersianCalendar.cjs} +13 -13
  62. package/dist/private/calendars/PersianCalendar.cjs.map +1 -0
  63. package/dist/{PersianCalendar.module.js → private/calendars/PersianCalendar.js} +13 -13
  64. package/dist/private/calendars/PersianCalendar.js.map +1 -0
  65. package/dist/{PersianCalendar.mjs → private/calendars/PersianCalendar.mjs} +13 -13
  66. package/dist/private/calendars/PersianCalendar.mjs.map +1 -0
  67. package/dist/{TaiwanCalendar.main.js → private/calendars/TaiwanCalendar.cjs} +20 -20
  68. package/dist/{TaiwanCalendar.main.js.map → private/calendars/TaiwanCalendar.cjs.map} +1 -1
  69. package/dist/private/calendars/TaiwanCalendar.js +75 -0
  70. package/dist/{TaiwanCalendar.module.js.map → private/calendars/TaiwanCalendar.js.map} +1 -1
  71. package/dist/{TaiwanCalendar.mjs → private/calendars/TaiwanCalendar.mjs} +20 -20
  72. package/dist/private/calendars/TaiwanCalendar.mjs.map +1 -0
  73. package/dist/{conversion.main.js → private/conversion.cjs} +85 -85
  74. package/dist/private/conversion.cjs.map +1 -0
  75. package/dist/{conversion.module.js → private/conversion.js} +71 -71
  76. package/dist/private/conversion.js.map +1 -0
  77. package/dist/{conversion.mjs → private/conversion.mjs} +71 -71
  78. package/dist/private/conversion.mjs.map +1 -0
  79. package/dist/private/createCalendar.cjs +69 -0
  80. package/dist/private/createCalendar.cjs.map +1 -0
  81. package/dist/private/createCalendar.js +64 -0
  82. package/dist/private/createCalendar.js.map +1 -0
  83. package/dist/private/createCalendar.mjs +64 -0
  84. package/dist/private/createCalendar.mjs.map +1 -0
  85. package/dist/{manipulation.main.js → private/manipulation.cjs} +106 -109
  86. package/dist/private/manipulation.cjs.map +1 -0
  87. package/dist/{manipulation.mjs → private/manipulation.js} +88 -88
  88. package/dist/private/manipulation.js.map +1 -0
  89. package/dist/{manipulation.module.js → private/manipulation.mjs} +93 -96
  90. package/dist/private/manipulation.mjs.map +1 -0
  91. package/dist/private/queries.cjs +359 -0
  92. package/dist/private/queries.cjs.map +1 -0
  93. package/dist/private/queries.js +326 -0
  94. package/dist/private/queries.js.map +1 -0
  95. package/dist/private/queries.mjs +324 -0
  96. package/dist/private/queries.mjs.map +1 -0
  97. package/dist/private/string.cjs +181 -0
  98. package/dist/private/string.cjs.map +1 -0
  99. package/dist/{string.mjs → private/string.js} +64 -64
  100. package/dist/private/string.js.map +1 -0
  101. package/dist/private/string.mjs +166 -0
  102. package/dist/private/string.mjs.map +1 -0
  103. package/dist/{utils.main.js → private/utils.cjs} +3 -3
  104. package/dist/{utils.main.js.map → private/utils.cjs.map} +1 -1
  105. package/dist/{utils.module.js → private/utils.js} +3 -3
  106. package/dist/{utils.module.js.map → private/utils.js.map} +1 -1
  107. package/dist/{utils.mjs → private/utils.mjs} +3 -3
  108. package/dist/private/utils.mjs.map +1 -0
  109. package/dist/{weekStartData.main.js → private/weekStartData.cjs} +3 -3
  110. package/dist/{weekStartData.main.js.map → private/weekStartData.cjs.map} +1 -1
  111. package/dist/{weekStartData.module.js → private/weekStartData.js} +3 -3
  112. package/dist/{weekStartData.module.js.map → private/weekStartData.js.map} +1 -1
  113. package/dist/{weekStartData.mjs → private/weekStartData.mjs} +3 -3
  114. package/dist/private/weekStartData.mjs.map +1 -0
  115. package/dist/types/src/CalendarDate.d.ts +207 -0
  116. package/dist/types/src/DateFormatter.d.ts +24 -0
  117. package/dist/types/src/calendars/BuddhistCalendar.d.ts +16 -0
  118. package/dist/types/src/calendars/EthiopicCalendar.d.ts +45 -0
  119. package/dist/types/src/calendars/GregorianCalendar.d.ts +26 -0
  120. package/dist/types/src/calendars/HebrewCalendar.d.ts +21 -0
  121. package/dist/types/src/calendars/IndianCalendar.d.ts +17 -0
  122. package/dist/types/src/calendars/IslamicCalendar.d.ts +51 -0
  123. package/dist/types/src/calendars/JapaneseCalendar.d.ts +22 -0
  124. package/dist/types/src/calendars/PersianCalendar.d.ts +19 -0
  125. package/dist/types/src/calendars/TaiwanCalendar.d.ts +19 -0
  126. package/dist/types/src/conversion.d.ts +45 -0
  127. package/dist/types/src/createCalendar.d.ts +3 -0
  128. package/dist/types/src/index.d.ts +17 -0
  129. package/dist/types/src/manipulation.d.ts +25 -0
  130. package/dist/types/src/queries.d.ts +93 -0
  131. package/dist/types/src/string.d.ts +36 -0
  132. package/dist/types/src/types.d.ts +136 -0
  133. package/dist/types/src/utils.d.ts +4 -0
  134. package/dist/types/src/weekStartData.d.ts +97 -0
  135. package/package.json +33 -18
  136. package/src/CalendarDate.ts +215 -35
  137. package/src/DateFormatter.ts +36 -16
  138. package/src/calendars/BuddhistCalendar.ts +1 -6
  139. package/src/calendars/EthiopicCalendar.ts +6 -5
  140. package/src/calendars/GregorianCalendar.ts +11 -4
  141. package/src/calendars/HebrewCalendar.ts +8 -4
  142. package/src/calendars/IndianCalendar.ts +8 -3
  143. package/src/calendars/IslamicCalendar.ts +40 -25
  144. package/src/calendars/JapaneseCalendar.ts +18 -10
  145. package/src/calendars/PersianCalendar.ts +2 -4
  146. package/src/calendars/TaiwanCalendar.ts +2 -9
  147. package/src/conversion.ts +98 -25
  148. package/src/createCalendar.ts +10 -2
  149. package/src/index.ts +11 -2
  150. package/src/manipulation.ts +133 -30
  151. package/src/queries.ts +57 -15
  152. package/src/string.ts +52 -25
  153. package/src/types.ts +73 -51
  154. package/src/utils.ts +1 -1
  155. package/dist/CalendarDate.main.js +0 -260
  156. package/dist/CalendarDate.main.js.map +0 -1
  157. package/dist/CalendarDate.mjs +0 -252
  158. package/dist/CalendarDate.module.js +0 -252
  159. package/dist/CalendarDate.module.js.map +0 -1
  160. package/dist/DateFormatter.main.js.map +0 -1
  161. package/dist/DateFormatter.module.js.map +0 -1
  162. package/dist/EthiopicCalendar.main.js.map +0 -1
  163. package/dist/EthiopicCalendar.module.js.map +0 -1
  164. package/dist/GregorianCalendar.main.js.map +0 -1
  165. package/dist/GregorianCalendar.module.js.map +0 -1
  166. package/dist/HebrewCalendar.main.js.map +0 -1
  167. package/dist/HebrewCalendar.module.js.map +0 -1
  168. package/dist/IndianCalendar.main.js.map +0 -1
  169. package/dist/IndianCalendar.module.js.map +0 -1
  170. package/dist/IslamicCalendar.main.js +0 -168
  171. package/dist/IslamicCalendar.main.js.map +0 -1
  172. package/dist/IslamicCalendar.mjs +0 -161
  173. package/dist/IslamicCalendar.module.js +0 -161
  174. package/dist/IslamicCalendar.module.js.map +0 -1
  175. package/dist/JapaneseCalendar.main.js.map +0 -1
  176. package/dist/JapaneseCalendar.module.js.map +0 -1
  177. package/dist/PersianCalendar.main.js.map +0 -1
  178. package/dist/PersianCalendar.module.js.map +0 -1
  179. package/dist/TaiwanCalendar.module.js +0 -75
  180. package/dist/conversion.main.js.map +0 -1
  181. package/dist/conversion.module.js.map +0 -1
  182. package/dist/createCalendar.main.js +0 -69
  183. package/dist/createCalendar.main.js.map +0 -1
  184. package/dist/createCalendar.mjs +0 -64
  185. package/dist/createCalendar.module.js +0 -64
  186. package/dist/createCalendar.module.js.map +0 -1
  187. package/dist/import.mjs +0 -45
  188. package/dist/main.js +0 -113
  189. package/dist/main.js.map +0 -1
  190. package/dist/manipulation.main.js.map +0 -1
  191. package/dist/manipulation.module.js.map +0 -1
  192. package/dist/module.js +0 -45
  193. package/dist/module.js.map +0 -1
  194. package/dist/queries.main.js +0 -361
  195. package/dist/queries.main.js.map +0 -1
  196. package/dist/queries.mjs +0 -326
  197. package/dist/queries.module.js +0 -326
  198. package/dist/queries.module.js.map +0 -1
  199. package/dist/string.main.js +0 -190
  200. package/dist/string.main.js.map +0 -1
  201. package/dist/string.module.js +0 -175
  202. package/dist/string.module.js.map +0 -1
  203. package/dist/types.d.ts +0 -672
  204. package/dist/types.d.ts.map +0 -1
@@ -1,12 +1,12 @@
1
- var $625ad1e1f4c43bc1$exports = require("./CalendarDate.main.js");
2
- var $a5090d6430502238$exports = require("./utils.main.js");
1
+ var $c51b7e0106f45dea$exports = require("../CalendarDate.cjs");
2
+ var $09f945753a699862$exports = require("../utils.cjs");
3
3
 
4
4
 
5
5
  function $parcel$export(e, n, v, s) {
6
6
  Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
7
7
  }
8
8
 
9
- $parcel$export(module.exports, "HebrewCalendar", () => $0f5324ee3bdd9396$export$ca405048b8fb5af);
9
+ $parcel$export(module.exports, "HebrewCalendar", function () { return $1aa25867248bd474$export$ca405048b8fb5af; });
10
10
  /*
11
11
  * Copyright 2020 Adobe. All rights reserved.
12
12
  * This file is licensed to you under the Apache License, Version 2.0 (the "License");
@@ -21,46 +21,46 @@ $parcel$export(module.exports, "HebrewCalendar", () => $0f5324ee3bdd9396$export$
21
21
  // Original licensing can be found in the NOTICE file in the root directory of this source tree.
22
22
 
23
23
 
24
- const $0f5324ee3bdd9396$var$HEBREW_EPOCH = 347997;
24
+ const $1aa25867248bd474$var$HEBREW_EPOCH = 347997;
25
25
  // Hebrew date calculations are performed in terms of days, hours, and
26
26
  // "parts" (or halakim), which are 1/1080 of an hour, or 3 1/3 seconds.
27
- const $0f5324ee3bdd9396$var$HOUR_PARTS = 1080;
28
- const $0f5324ee3bdd9396$var$DAY_PARTS = 24 * $0f5324ee3bdd9396$var$HOUR_PARTS;
27
+ const $1aa25867248bd474$var$HOUR_PARTS = 1080;
28
+ const $1aa25867248bd474$var$DAY_PARTS = 24 * $1aa25867248bd474$var$HOUR_PARTS;
29
29
  // An approximate value for the length of a lunar month.
30
30
  // It is used to calculate the approximate year and month of a given
31
31
  // absolute date.
32
- const $0f5324ee3bdd9396$var$MONTH_DAYS = 29;
33
- const $0f5324ee3bdd9396$var$MONTH_FRACT = 12 * $0f5324ee3bdd9396$var$HOUR_PARTS + 793;
34
- const $0f5324ee3bdd9396$var$MONTH_PARTS = $0f5324ee3bdd9396$var$MONTH_DAYS * $0f5324ee3bdd9396$var$DAY_PARTS + $0f5324ee3bdd9396$var$MONTH_FRACT;
35
- function $0f5324ee3bdd9396$var$isLeapYear(year) {
36
- return (0, $a5090d6430502238$exports.mod)(year * 7 + 1, 19) < 7;
32
+ const $1aa25867248bd474$var$MONTH_DAYS = 29;
33
+ const $1aa25867248bd474$var$MONTH_FRACT = 12 * $1aa25867248bd474$var$HOUR_PARTS + 793;
34
+ const $1aa25867248bd474$var$MONTH_PARTS = $1aa25867248bd474$var$MONTH_DAYS * $1aa25867248bd474$var$DAY_PARTS + $1aa25867248bd474$var$MONTH_FRACT;
35
+ function $1aa25867248bd474$var$isLeapYear(year) {
36
+ return (0, $09f945753a699862$exports.mod)(year * 7 + 1, 19) < 7;
37
37
  }
38
38
  // Test for delay of start of new year and to avoid
39
39
  // Sunday, Wednesday, and Friday as start of the new year.
40
- function $0f5324ee3bdd9396$var$hebrewDelay1(year) {
40
+ function $1aa25867248bd474$var$hebrewDelay1(year) {
41
41
  let months = Math.floor((235 * year - 234) / 19);
42
42
  let parts = 12084 + 13753 * months;
43
43
  let day = months * 29 + Math.floor(parts / 25920);
44
- if ((0, $a5090d6430502238$exports.mod)(3 * (day + 1), 7) < 3) day += 1;
44
+ if ((0, $09f945753a699862$exports.mod)(3 * (day + 1), 7) < 3) day += 1;
45
45
  return day;
46
46
  }
47
47
  // Check for delay in start of new year due to length of adjacent years
48
- function $0f5324ee3bdd9396$var$hebrewDelay2(year) {
49
- let last = $0f5324ee3bdd9396$var$hebrewDelay1(year - 1);
50
- let present = $0f5324ee3bdd9396$var$hebrewDelay1(year);
51
- let next = $0f5324ee3bdd9396$var$hebrewDelay1(year + 1);
48
+ function $1aa25867248bd474$var$hebrewDelay2(year) {
49
+ let last = $1aa25867248bd474$var$hebrewDelay1(year - 1);
50
+ let present = $1aa25867248bd474$var$hebrewDelay1(year);
51
+ let next = $1aa25867248bd474$var$hebrewDelay1(year + 1);
52
52
  if (next - present === 356) return 2;
53
53
  if (present - last === 382) return 1;
54
54
  return 0;
55
55
  }
56
- function $0f5324ee3bdd9396$var$startOfYear(year) {
57
- return $0f5324ee3bdd9396$var$hebrewDelay1(year) + $0f5324ee3bdd9396$var$hebrewDelay2(year);
56
+ function $1aa25867248bd474$var$startOfYear(year) {
57
+ return $1aa25867248bd474$var$hebrewDelay1(year) + $1aa25867248bd474$var$hebrewDelay2(year);
58
58
  }
59
- function $0f5324ee3bdd9396$var$getDaysInYear(year) {
60
- return $0f5324ee3bdd9396$var$startOfYear(year + 1) - $0f5324ee3bdd9396$var$startOfYear(year);
59
+ function $1aa25867248bd474$var$getDaysInYear(year) {
60
+ return $1aa25867248bd474$var$startOfYear(year + 1) - $1aa25867248bd474$var$startOfYear(year);
61
61
  }
62
- function $0f5324ee3bdd9396$var$getYearType(year) {
63
- let yearLength = $0f5324ee3bdd9396$var$getDaysInYear(year);
62
+ function $1aa25867248bd474$var$getYearType(year) {
63
+ let yearLength = $1aa25867248bd474$var$getDaysInYear(year);
64
64
  if (yearLength > 380) yearLength -= 30; // Subtract length of leap month.
65
65
  switch(yearLength){
66
66
  case 353:
@@ -71,58 +71,58 @@ function $0f5324ee3bdd9396$var$getYearType(year) {
71
71
  return 2; // complete
72
72
  }
73
73
  }
74
- function $0f5324ee3bdd9396$var$getDaysInMonth(year, month) {
74
+ function $1aa25867248bd474$var$getDaysInMonth(year, month) {
75
75
  // Normalize month numbers from 1 - 13, even on non-leap years
76
- if (month >= 6 && !$0f5324ee3bdd9396$var$isLeapYear(year)) month++;
76
+ if (month >= 6 && !$1aa25867248bd474$var$isLeapYear(year)) month++;
77
77
  // First of all, dispose of fixed-length 29 day months
78
78
  if (month === 4 || month === 7 || month === 9 || month === 11 || month === 13) return 29;
79
- let yearType = $0f5324ee3bdd9396$var$getYearType(year);
79
+ let yearType = $1aa25867248bd474$var$getYearType(year);
80
80
  // If it's Heshvan, days depend on length of year
81
81
  if (month === 2) return yearType === 2 ? 30 : 29;
82
82
  // Similarly, Kislev varies with the length of year
83
83
  if (month === 3) return yearType === 0 ? 29 : 30;
84
84
  // Adar I only exists in leap years
85
- if (month === 6) return $0f5324ee3bdd9396$var$isLeapYear(year) ? 30 : 0;
85
+ if (month === 6) return $1aa25867248bd474$var$isLeapYear(year) ? 30 : 0;
86
86
  return 30;
87
87
  }
88
- class $0f5324ee3bdd9396$export$ca405048b8fb5af {
88
+ class $1aa25867248bd474$export$ca405048b8fb5af {
89
89
  fromJulianDay(jd) {
90
- let d = jd - $0f5324ee3bdd9396$var$HEBREW_EPOCH;
91
- let m = d * $0f5324ee3bdd9396$var$DAY_PARTS / $0f5324ee3bdd9396$var$MONTH_PARTS; // Months (approx)
90
+ let d = jd - $1aa25867248bd474$var$HEBREW_EPOCH;
91
+ let m = d * $1aa25867248bd474$var$DAY_PARTS / $1aa25867248bd474$var$MONTH_PARTS; // Months (approx)
92
92
  let year = Math.floor((19 * m + 234) / 235) + 1; // Years (approx)
93
- let ys = $0f5324ee3bdd9396$var$startOfYear(year); // 1st day of year
93
+ let ys = $1aa25867248bd474$var$startOfYear(year); // 1st day of year
94
94
  let dayOfYear = Math.floor(d - ys);
95
95
  // Because of the postponement rules, it's possible to guess wrong. Fix it.
96
96
  while(dayOfYear < 1){
97
97
  year--;
98
- ys = $0f5324ee3bdd9396$var$startOfYear(year);
98
+ ys = $1aa25867248bd474$var$startOfYear(year);
99
99
  dayOfYear = Math.floor(d - ys);
100
100
  }
101
101
  // Now figure out which month we're in, and the date within that month
102
102
  let month = 1;
103
103
  let monthStart = 0;
104
104
  while(monthStart < dayOfYear){
105
- monthStart += $0f5324ee3bdd9396$var$getDaysInMonth(year, month);
105
+ monthStart += $1aa25867248bd474$var$getDaysInMonth(year, month);
106
106
  month++;
107
107
  }
108
108
  month--;
109
- monthStart -= $0f5324ee3bdd9396$var$getDaysInMonth(year, month);
109
+ monthStart -= $1aa25867248bd474$var$getDaysInMonth(year, month);
110
110
  let day = dayOfYear - monthStart;
111
- return new (0, $625ad1e1f4c43bc1$exports.CalendarDate)(this, year, month, day);
111
+ return new (0, $c51b7e0106f45dea$exports.CalendarDate)(this, year, month, day);
112
112
  }
113
113
  toJulianDay(date) {
114
- let jd = $0f5324ee3bdd9396$var$startOfYear(date.year);
115
- for(let month = 1; month < date.month; month++)jd += $0f5324ee3bdd9396$var$getDaysInMonth(date.year, month);
116
- return jd + date.day + $0f5324ee3bdd9396$var$HEBREW_EPOCH;
114
+ let jd = $1aa25867248bd474$var$startOfYear(date.year);
115
+ for(let month = 1; month < date.month; month++)jd += $1aa25867248bd474$var$getDaysInMonth(date.year, month);
116
+ return jd + date.day + $1aa25867248bd474$var$HEBREW_EPOCH;
117
117
  }
118
118
  getDaysInMonth(date) {
119
- return $0f5324ee3bdd9396$var$getDaysInMonth(date.year, date.month);
119
+ return $1aa25867248bd474$var$getDaysInMonth(date.year, date.month);
120
120
  }
121
121
  getMonthsInYear(date) {
122
- return $0f5324ee3bdd9396$var$isLeapYear(date.year) ? 13 : 12;
122
+ return $1aa25867248bd474$var$isLeapYear(date.year) ? 13 : 12;
123
123
  }
124
124
  getDaysInYear(date) {
125
- return $0f5324ee3bdd9396$var$getDaysInYear(date.year);
125
+ return $1aa25867248bd474$var$getDaysInYear(date.year);
126
126
  }
127
127
  getMaximumMonthsInYear() {
128
128
  return 13;
@@ -142,8 +142,8 @@ class $0f5324ee3bdd9396$export$ca405048b8fb5af {
142
142
  balanceYearMonth(date, previousDate) {
143
143
  // Keep date in the same month when switching between leap years and non leap years
144
144
  if (previousDate.year !== date.year) {
145
- if ($0f5324ee3bdd9396$var$isLeapYear(previousDate.year) && !$0f5324ee3bdd9396$var$isLeapYear(date.year) && previousDate.month > 6) date.month--;
146
- else if (!$0f5324ee3bdd9396$var$isLeapYear(previousDate.year) && $0f5324ee3bdd9396$var$isLeapYear(date.year) && previousDate.month > 6) date.month++;
145
+ if ($1aa25867248bd474$var$isLeapYear(previousDate.year) && !$1aa25867248bd474$var$isLeapYear(date.year) && previousDate.month > 6) date.month--;
146
+ else if (!$1aa25867248bd474$var$isLeapYear(previousDate.year) && $1aa25867248bd474$var$isLeapYear(date.year) && previousDate.month > 6) date.month++;
147
147
  }
148
148
  }
149
149
  constructor(){
@@ -152,4 +152,4 @@ class $0f5324ee3bdd9396$export$ca405048b8fb5af {
152
152
  }
153
153
 
154
154
 
155
- //# sourceMappingURL=HebrewCalendar.main.js.map
155
+ //# sourceMappingURL=HebrewCalendar.cjs.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/@internationalized/date/src/calendars/HebrewCalendar.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Portions of the code in this file are based on code from ICU.\n// Original licensing can be found in the NOTICE file in the root directory of this source tree.\n\nimport {AnyCalendarDate, Calendar, CalendarIdentifier} from '../types';\nimport {CalendarDate} from '../CalendarDate';\nimport {mod, Mutable} from '../utils';\n\nconst HEBREW_EPOCH = 347997;\n\n// Hebrew date calculations are performed in terms of days, hours, and\n// \"parts\" (or halakim), which are 1/1080 of an hour, or 3 1/3 seconds.\nconst HOUR_PARTS = 1080;\nconst DAY_PARTS = 24 * HOUR_PARTS;\n\n// An approximate value for the length of a lunar month.\n// It is used to calculate the approximate year and month of a given\n// absolute date.\nconst MONTH_DAYS = 29;\nconst MONTH_FRACT = 12 * HOUR_PARTS + 793;\nconst MONTH_PARTS = MONTH_DAYS * DAY_PARTS + MONTH_FRACT;\n\nfunction isLeapYear(year: number) {\n return mod(year * 7 + 1, 19) < 7;\n}\n\n// Test for delay of start of new year and to avoid\n// Sunday, Wednesday, and Friday as start of the new year.\nfunction hebrewDelay1(year: number) {\n let months = Math.floor((235 * year - 234) / 19);\n let parts = 12084 + 13753 * months;\n let day = months * 29 + Math.floor(parts / 25920);\n\n if (mod(3 * (day + 1), 7) < 3) {\n day += 1;\n }\n\n return day;\n}\n\n// Check for delay in start of new year due to length of adjacent years\nfunction hebrewDelay2(year: number) {\n let last = hebrewDelay1(year - 1);\n let present = hebrewDelay1(year);\n let next = hebrewDelay1(year + 1);\n\n if (next - present === 356) {\n return 2;\n }\n\n if (present - last === 382) {\n return 1;\n }\n\n return 0;\n}\n\nfunction startOfYear(year: number) {\n return hebrewDelay1(year) + hebrewDelay2(year);\n}\n\nfunction getDaysInYear(year: number) {\n return startOfYear(year + 1) - startOfYear(year);\n}\n\nfunction getYearType(year: number) {\n let yearLength = getDaysInYear(year);\n\n if (yearLength > 380) {\n yearLength -= 30; // Subtract length of leap month.\n }\n\n switch (yearLength) {\n case 353:\n return 0; // deficient\n case 354:\n return 1; // normal\n case 355:\n return 2; // complete\n }\n}\n\nfunction getDaysInMonth(year: number, month: number): number {\n // Normalize month numbers from 1 - 13, even on non-leap years\n if (month >= 6 && !isLeapYear(year)) {\n month++;\n }\n\n // First of all, dispose of fixed-length 29 day months\n if (month === 4 || month === 7 || month === 9 || month === 11 || month === 13) {\n return 29;\n }\n\n let yearType = getYearType(year);\n\n // If it's Heshvan, days depend on length of year\n if (month === 2) {\n return yearType === 2 ? 30 : 29;\n }\n\n // Similarly, Kislev varies with the length of year\n if (month === 3) {\n return yearType === 0 ? 29 : 30;\n }\n\n // Adar I only exists in leap years\n if (month === 6) {\n return isLeapYear(year) ? 30 : 0;\n }\n\n return 30;\n}\n\n/**\n * The Hebrew calendar is used in Israel and around the world by the Jewish faith.\n * Years include either 12 or 13 months depending on whether it is a leap year.\n * In leap years, an extra month is inserted at month 6.\n */\nexport class HebrewCalendar implements Calendar {\n identifier: CalendarIdentifier = 'hebrew';\n\n fromJulianDay(jd: number): CalendarDate {\n let d = jd - HEBREW_EPOCH;\n let m = (d * DAY_PARTS) / MONTH_PARTS; // Months (approx)\n let year = Math.floor((19 * m + 234) / 235) + 1; // Years (approx)\n let ys = startOfYear(year); // 1st day of year\n let dayOfYear = Math.floor(d - ys);\n\n // Because of the postponement rules, it's possible to guess wrong. Fix it.\n while (dayOfYear < 1) {\n year--;\n ys = startOfYear(year);\n dayOfYear = Math.floor(d - ys);\n }\n\n // Now figure out which month we're in, and the date within that month\n let month = 1;\n let monthStart = 0;\n while (monthStart < dayOfYear) {\n monthStart += getDaysInMonth(year, month);\n month++;\n }\n\n month--;\n monthStart -= getDaysInMonth(year, month);\n\n let day = dayOfYear - monthStart;\n return new CalendarDate(this, year, month, day);\n }\n\n toJulianDay(date: AnyCalendarDate): number {\n let jd = startOfYear(date.year);\n for (let month = 1; month < date.month; month++) {\n jd += getDaysInMonth(date.year, month);\n }\n\n return jd + date.day + HEBREW_EPOCH;\n }\n\n getDaysInMonth(date: AnyCalendarDate): number {\n return getDaysInMonth(date.year, date.month);\n }\n\n getMonthsInYear(date: AnyCalendarDate): number {\n return isLeapYear(date.year) ? 13 : 12;\n }\n\n getDaysInYear(date: AnyCalendarDate): number {\n return getDaysInYear(date.year);\n }\n\n getMaximumMonthsInYear(): number {\n return 13;\n }\n\n getMaximumDaysInMonth(): number {\n return 30;\n }\n\n getYearsInEra(): number {\n // 6239 gregorian\n return 9999;\n }\n\n getEras(): string[] {\n return ['AM'];\n }\n\n balanceYearMonth(date: Mutable<AnyCalendarDate>, previousDate: AnyCalendarDate): void {\n // Keep date in the same month when switching between leap years and non leap years\n if (previousDate.year !== date.year) {\n if (isLeapYear(previousDate.year) && !isLeapYear(date.year) && previousDate.month > 6) {\n date.month--;\n } else if (\n !isLeapYear(previousDate.year) &&\n isLeapYear(date.year) &&\n previousDate.month > 6\n ) {\n date.month++;\n }\n }\n }\n}\n"],"names":[],"version":3,"file":"HebrewCalendar.cjs.map"}
@@ -1,5 +1,5 @@
1
- import {CalendarDate as $35ea8db9cb2ccb90$export$99faa760c7908e4f} from "./CalendarDate.module.js";
2
- import {mod as $2b4dce13dd5a17fa$export$842a2cf37af977e1} from "./utils.module.js";
1
+ import {CalendarDate as $9a4e222e1bd2b190$export$99faa760c7908e4f} from "../CalendarDate.js";
2
+ import {mod as $1797f75f9a4d3bd4$export$842a2cf37af977e1} from "../utils.js";
3
3
 
4
4
  /*
5
5
  * Copyright 2020 Adobe. All rights reserved.
@@ -15,46 +15,46 @@ import {mod as $2b4dce13dd5a17fa$export$842a2cf37af977e1} from "./utils.module.j
15
15
  // Original licensing can be found in the NOTICE file in the root directory of this source tree.
16
16
 
17
17
 
18
- const $7c5f6fbf42389787$var$HEBREW_EPOCH = 347997;
18
+ const $f6eb69e87cd1adc1$var$HEBREW_EPOCH = 347997;
19
19
  // Hebrew date calculations are performed in terms of days, hours, and
20
20
  // "parts" (or halakim), which are 1/1080 of an hour, or 3 1/3 seconds.
21
- const $7c5f6fbf42389787$var$HOUR_PARTS = 1080;
22
- const $7c5f6fbf42389787$var$DAY_PARTS = 24 * $7c5f6fbf42389787$var$HOUR_PARTS;
21
+ const $f6eb69e87cd1adc1$var$HOUR_PARTS = 1080;
22
+ const $f6eb69e87cd1adc1$var$DAY_PARTS = 24 * $f6eb69e87cd1adc1$var$HOUR_PARTS;
23
23
  // An approximate value for the length of a lunar month.
24
24
  // It is used to calculate the approximate year and month of a given
25
25
  // absolute date.
26
- const $7c5f6fbf42389787$var$MONTH_DAYS = 29;
27
- const $7c5f6fbf42389787$var$MONTH_FRACT = 12 * $7c5f6fbf42389787$var$HOUR_PARTS + 793;
28
- const $7c5f6fbf42389787$var$MONTH_PARTS = $7c5f6fbf42389787$var$MONTH_DAYS * $7c5f6fbf42389787$var$DAY_PARTS + $7c5f6fbf42389787$var$MONTH_FRACT;
29
- function $7c5f6fbf42389787$var$isLeapYear(year) {
30
- return (0, $2b4dce13dd5a17fa$export$842a2cf37af977e1)(year * 7 + 1, 19) < 7;
26
+ const $f6eb69e87cd1adc1$var$MONTH_DAYS = 29;
27
+ const $f6eb69e87cd1adc1$var$MONTH_FRACT = 12 * $f6eb69e87cd1adc1$var$HOUR_PARTS + 793;
28
+ const $f6eb69e87cd1adc1$var$MONTH_PARTS = $f6eb69e87cd1adc1$var$MONTH_DAYS * $f6eb69e87cd1adc1$var$DAY_PARTS + $f6eb69e87cd1adc1$var$MONTH_FRACT;
29
+ function $f6eb69e87cd1adc1$var$isLeapYear(year) {
30
+ return (0, $1797f75f9a4d3bd4$export$842a2cf37af977e1)(year * 7 + 1, 19) < 7;
31
31
  }
32
32
  // Test for delay of start of new year and to avoid
33
33
  // Sunday, Wednesday, and Friday as start of the new year.
34
- function $7c5f6fbf42389787$var$hebrewDelay1(year) {
34
+ function $f6eb69e87cd1adc1$var$hebrewDelay1(year) {
35
35
  let months = Math.floor((235 * year - 234) / 19);
36
36
  let parts = 12084 + 13753 * months;
37
37
  let day = months * 29 + Math.floor(parts / 25920);
38
- if ((0, $2b4dce13dd5a17fa$export$842a2cf37af977e1)(3 * (day + 1), 7) < 3) day += 1;
38
+ if ((0, $1797f75f9a4d3bd4$export$842a2cf37af977e1)(3 * (day + 1), 7) < 3) day += 1;
39
39
  return day;
40
40
  }
41
41
  // Check for delay in start of new year due to length of adjacent years
42
- function $7c5f6fbf42389787$var$hebrewDelay2(year) {
43
- let last = $7c5f6fbf42389787$var$hebrewDelay1(year - 1);
44
- let present = $7c5f6fbf42389787$var$hebrewDelay1(year);
45
- let next = $7c5f6fbf42389787$var$hebrewDelay1(year + 1);
42
+ function $f6eb69e87cd1adc1$var$hebrewDelay2(year) {
43
+ let last = $f6eb69e87cd1adc1$var$hebrewDelay1(year - 1);
44
+ let present = $f6eb69e87cd1adc1$var$hebrewDelay1(year);
45
+ let next = $f6eb69e87cd1adc1$var$hebrewDelay1(year + 1);
46
46
  if (next - present === 356) return 2;
47
47
  if (present - last === 382) return 1;
48
48
  return 0;
49
49
  }
50
- function $7c5f6fbf42389787$var$startOfYear(year) {
51
- return $7c5f6fbf42389787$var$hebrewDelay1(year) + $7c5f6fbf42389787$var$hebrewDelay2(year);
50
+ function $f6eb69e87cd1adc1$var$startOfYear(year) {
51
+ return $f6eb69e87cd1adc1$var$hebrewDelay1(year) + $f6eb69e87cd1adc1$var$hebrewDelay2(year);
52
52
  }
53
- function $7c5f6fbf42389787$var$getDaysInYear(year) {
54
- return $7c5f6fbf42389787$var$startOfYear(year + 1) - $7c5f6fbf42389787$var$startOfYear(year);
53
+ function $f6eb69e87cd1adc1$var$getDaysInYear(year) {
54
+ return $f6eb69e87cd1adc1$var$startOfYear(year + 1) - $f6eb69e87cd1adc1$var$startOfYear(year);
55
55
  }
56
- function $7c5f6fbf42389787$var$getYearType(year) {
57
- let yearLength = $7c5f6fbf42389787$var$getDaysInYear(year);
56
+ function $f6eb69e87cd1adc1$var$getYearType(year) {
57
+ let yearLength = $f6eb69e87cd1adc1$var$getDaysInYear(year);
58
58
  if (yearLength > 380) yearLength -= 30; // Subtract length of leap month.
59
59
  switch(yearLength){
60
60
  case 353:
@@ -65,58 +65,58 @@ function $7c5f6fbf42389787$var$getYearType(year) {
65
65
  return 2; // complete
66
66
  }
67
67
  }
68
- function $7c5f6fbf42389787$var$getDaysInMonth(year, month) {
68
+ function $f6eb69e87cd1adc1$var$getDaysInMonth(year, month) {
69
69
  // Normalize month numbers from 1 - 13, even on non-leap years
70
- if (month >= 6 && !$7c5f6fbf42389787$var$isLeapYear(year)) month++;
70
+ if (month >= 6 && !$f6eb69e87cd1adc1$var$isLeapYear(year)) month++;
71
71
  // First of all, dispose of fixed-length 29 day months
72
72
  if (month === 4 || month === 7 || month === 9 || month === 11 || month === 13) return 29;
73
- let yearType = $7c5f6fbf42389787$var$getYearType(year);
73
+ let yearType = $f6eb69e87cd1adc1$var$getYearType(year);
74
74
  // If it's Heshvan, days depend on length of year
75
75
  if (month === 2) return yearType === 2 ? 30 : 29;
76
76
  // Similarly, Kislev varies with the length of year
77
77
  if (month === 3) return yearType === 0 ? 29 : 30;
78
78
  // Adar I only exists in leap years
79
- if (month === 6) return $7c5f6fbf42389787$var$isLeapYear(year) ? 30 : 0;
79
+ if (month === 6) return $f6eb69e87cd1adc1$var$isLeapYear(year) ? 30 : 0;
80
80
  return 30;
81
81
  }
82
- class $7c5f6fbf42389787$export$ca405048b8fb5af {
82
+ class $f6eb69e87cd1adc1$export$ca405048b8fb5af {
83
83
  fromJulianDay(jd) {
84
- let d = jd - $7c5f6fbf42389787$var$HEBREW_EPOCH;
85
- let m = d * $7c5f6fbf42389787$var$DAY_PARTS / $7c5f6fbf42389787$var$MONTH_PARTS; // Months (approx)
84
+ let d = jd - $f6eb69e87cd1adc1$var$HEBREW_EPOCH;
85
+ let m = d * $f6eb69e87cd1adc1$var$DAY_PARTS / $f6eb69e87cd1adc1$var$MONTH_PARTS; // Months (approx)
86
86
  let year = Math.floor((19 * m + 234) / 235) + 1; // Years (approx)
87
- let ys = $7c5f6fbf42389787$var$startOfYear(year); // 1st day of year
87
+ let ys = $f6eb69e87cd1adc1$var$startOfYear(year); // 1st day of year
88
88
  let dayOfYear = Math.floor(d - ys);
89
89
  // Because of the postponement rules, it's possible to guess wrong. Fix it.
90
90
  while(dayOfYear < 1){
91
91
  year--;
92
- ys = $7c5f6fbf42389787$var$startOfYear(year);
92
+ ys = $f6eb69e87cd1adc1$var$startOfYear(year);
93
93
  dayOfYear = Math.floor(d - ys);
94
94
  }
95
95
  // Now figure out which month we're in, and the date within that month
96
96
  let month = 1;
97
97
  let monthStart = 0;
98
98
  while(monthStart < dayOfYear){
99
- monthStart += $7c5f6fbf42389787$var$getDaysInMonth(year, month);
99
+ monthStart += $f6eb69e87cd1adc1$var$getDaysInMonth(year, month);
100
100
  month++;
101
101
  }
102
102
  month--;
103
- monthStart -= $7c5f6fbf42389787$var$getDaysInMonth(year, month);
103
+ monthStart -= $f6eb69e87cd1adc1$var$getDaysInMonth(year, month);
104
104
  let day = dayOfYear - monthStart;
105
- return new (0, $35ea8db9cb2ccb90$export$99faa760c7908e4f)(this, year, month, day);
105
+ return new (0, $9a4e222e1bd2b190$export$99faa760c7908e4f)(this, year, month, day);
106
106
  }
107
107
  toJulianDay(date) {
108
- let jd = $7c5f6fbf42389787$var$startOfYear(date.year);
109
- for(let month = 1; month < date.month; month++)jd += $7c5f6fbf42389787$var$getDaysInMonth(date.year, month);
110
- return jd + date.day + $7c5f6fbf42389787$var$HEBREW_EPOCH;
108
+ let jd = $f6eb69e87cd1adc1$var$startOfYear(date.year);
109
+ for(let month = 1; month < date.month; month++)jd += $f6eb69e87cd1adc1$var$getDaysInMonth(date.year, month);
110
+ return jd + date.day + $f6eb69e87cd1adc1$var$HEBREW_EPOCH;
111
111
  }
112
112
  getDaysInMonth(date) {
113
- return $7c5f6fbf42389787$var$getDaysInMonth(date.year, date.month);
113
+ return $f6eb69e87cd1adc1$var$getDaysInMonth(date.year, date.month);
114
114
  }
115
115
  getMonthsInYear(date) {
116
- return $7c5f6fbf42389787$var$isLeapYear(date.year) ? 13 : 12;
116
+ return $f6eb69e87cd1adc1$var$isLeapYear(date.year) ? 13 : 12;
117
117
  }
118
118
  getDaysInYear(date) {
119
- return $7c5f6fbf42389787$var$getDaysInYear(date.year);
119
+ return $f6eb69e87cd1adc1$var$getDaysInYear(date.year);
120
120
  }
121
121
  getMaximumMonthsInYear() {
122
122
  return 13;
@@ -136,8 +136,8 @@ class $7c5f6fbf42389787$export$ca405048b8fb5af {
136
136
  balanceYearMonth(date, previousDate) {
137
137
  // Keep date in the same month when switching between leap years and non leap years
138
138
  if (previousDate.year !== date.year) {
139
- if ($7c5f6fbf42389787$var$isLeapYear(previousDate.year) && !$7c5f6fbf42389787$var$isLeapYear(date.year) && previousDate.month > 6) date.month--;
140
- else if (!$7c5f6fbf42389787$var$isLeapYear(previousDate.year) && $7c5f6fbf42389787$var$isLeapYear(date.year) && previousDate.month > 6) date.month++;
139
+ if ($f6eb69e87cd1adc1$var$isLeapYear(previousDate.year) && !$f6eb69e87cd1adc1$var$isLeapYear(date.year) && previousDate.month > 6) date.month--;
140
+ else if (!$f6eb69e87cd1adc1$var$isLeapYear(previousDate.year) && $f6eb69e87cd1adc1$var$isLeapYear(date.year) && previousDate.month > 6) date.month++;
141
141
  }
142
142
  }
143
143
  constructor(){
@@ -146,5 +146,5 @@ class $7c5f6fbf42389787$export$ca405048b8fb5af {
146
146
  }
147
147
 
148
148
 
149
- export {$7c5f6fbf42389787$export$ca405048b8fb5af as HebrewCalendar};
150
- //# sourceMappingURL=HebrewCalendar.module.js.map
149
+ export {$f6eb69e87cd1adc1$export$ca405048b8fb5af as HebrewCalendar};
150
+ //# sourceMappingURL=HebrewCalendar.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/@internationalized/date/src/calendars/HebrewCalendar.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Portions of the code in this file are based on code from ICU.\n// Original licensing can be found in the NOTICE file in the root directory of this source tree.\n\nimport {AnyCalendarDate, Calendar, CalendarIdentifier} from '../types';\nimport {CalendarDate} from '../CalendarDate';\nimport {mod, Mutable} from '../utils';\n\nconst HEBREW_EPOCH = 347997;\n\n// Hebrew date calculations are performed in terms of days, hours, and\n// \"parts\" (or halakim), which are 1/1080 of an hour, or 3 1/3 seconds.\nconst HOUR_PARTS = 1080;\nconst DAY_PARTS = 24 * HOUR_PARTS;\n\n// An approximate value for the length of a lunar month.\n// It is used to calculate the approximate year and month of a given\n// absolute date.\nconst MONTH_DAYS = 29;\nconst MONTH_FRACT = 12 * HOUR_PARTS + 793;\nconst MONTH_PARTS = MONTH_DAYS * DAY_PARTS + MONTH_FRACT;\n\nfunction isLeapYear(year: number) {\n return mod(year * 7 + 1, 19) < 7;\n}\n\n// Test for delay of start of new year and to avoid\n// Sunday, Wednesday, and Friday as start of the new year.\nfunction hebrewDelay1(year: number) {\n let months = Math.floor((235 * year - 234) / 19);\n let parts = 12084 + 13753 * months;\n let day = months * 29 + Math.floor(parts / 25920);\n\n if (mod(3 * (day + 1), 7) < 3) {\n day += 1;\n }\n\n return day;\n}\n\n// Check for delay in start of new year due to length of adjacent years\nfunction hebrewDelay2(year: number) {\n let last = hebrewDelay1(year - 1);\n let present = hebrewDelay1(year);\n let next = hebrewDelay1(year + 1);\n\n if (next - present === 356) {\n return 2;\n }\n\n if (present - last === 382) {\n return 1;\n }\n\n return 0;\n}\n\nfunction startOfYear(year: number) {\n return hebrewDelay1(year) + hebrewDelay2(year);\n}\n\nfunction getDaysInYear(year: number) {\n return startOfYear(year + 1) - startOfYear(year);\n}\n\nfunction getYearType(year: number) {\n let yearLength = getDaysInYear(year);\n\n if (yearLength > 380) {\n yearLength -= 30; // Subtract length of leap month.\n }\n\n switch (yearLength) {\n case 353:\n return 0; // deficient\n case 354:\n return 1; // normal\n case 355:\n return 2; // complete\n }\n}\n\nfunction getDaysInMonth(year: number, month: number): number {\n // Normalize month numbers from 1 - 13, even on non-leap years\n if (month >= 6 && !isLeapYear(year)) {\n month++;\n }\n\n // First of all, dispose of fixed-length 29 day months\n if (month === 4 || month === 7 || month === 9 || month === 11 || month === 13) {\n return 29;\n }\n\n let yearType = getYearType(year);\n\n // If it's Heshvan, days depend on length of year\n if (month === 2) {\n return yearType === 2 ? 30 : 29;\n }\n\n // Similarly, Kislev varies with the length of year\n if (month === 3) {\n return yearType === 0 ? 29 : 30;\n }\n\n // Adar I only exists in leap years\n if (month === 6) {\n return isLeapYear(year) ? 30 : 0;\n }\n\n return 30;\n}\n\n/**\n * The Hebrew calendar is used in Israel and around the world by the Jewish faith.\n * Years include either 12 or 13 months depending on whether it is a leap year.\n * In leap years, an extra month is inserted at month 6.\n */\nexport class HebrewCalendar implements Calendar {\n identifier: CalendarIdentifier = 'hebrew';\n\n fromJulianDay(jd: number): CalendarDate {\n let d = jd - HEBREW_EPOCH;\n let m = (d * DAY_PARTS) / MONTH_PARTS; // Months (approx)\n let year = Math.floor((19 * m + 234) / 235) + 1; // Years (approx)\n let ys = startOfYear(year); // 1st day of year\n let dayOfYear = Math.floor(d - ys);\n\n // Because of the postponement rules, it's possible to guess wrong. Fix it.\n while (dayOfYear < 1) {\n year--;\n ys = startOfYear(year);\n dayOfYear = Math.floor(d - ys);\n }\n\n // Now figure out which month we're in, and the date within that month\n let month = 1;\n let monthStart = 0;\n while (monthStart < dayOfYear) {\n monthStart += getDaysInMonth(year, month);\n month++;\n }\n\n month--;\n monthStart -= getDaysInMonth(year, month);\n\n let day = dayOfYear - monthStart;\n return new CalendarDate(this, year, month, day);\n }\n\n toJulianDay(date: AnyCalendarDate): number {\n let jd = startOfYear(date.year);\n for (let month = 1; month < date.month; month++) {\n jd += getDaysInMonth(date.year, month);\n }\n\n return jd + date.day + HEBREW_EPOCH;\n }\n\n getDaysInMonth(date: AnyCalendarDate): number {\n return getDaysInMonth(date.year, date.month);\n }\n\n getMonthsInYear(date: AnyCalendarDate): number {\n return isLeapYear(date.year) ? 13 : 12;\n }\n\n getDaysInYear(date: AnyCalendarDate): number {\n return getDaysInYear(date.year);\n }\n\n getMaximumMonthsInYear(): number {\n return 13;\n }\n\n getMaximumDaysInMonth(): number {\n return 30;\n }\n\n getYearsInEra(): number {\n // 6239 gregorian\n return 9999;\n }\n\n getEras(): string[] {\n return ['AM'];\n }\n\n balanceYearMonth(date: Mutable<AnyCalendarDate>, previousDate: AnyCalendarDate): void {\n // Keep date in the same month when switching between leap years and non leap years\n if (previousDate.year !== date.year) {\n if (isLeapYear(previousDate.year) && !isLeapYear(date.year) && previousDate.month > 6) {\n date.month--;\n } else if (\n !isLeapYear(previousDate.year) &&\n isLeapYear(date.year) &&\n previousDate.month > 6\n ) {\n date.month++;\n }\n }\n }\n}\n"],"names":[],"version":3,"file":"HebrewCalendar.js.map"}
@@ -1,5 +1,5 @@
1
- import {CalendarDate as $35ea8db9cb2ccb90$export$99faa760c7908e4f} from "./CalendarDate.mjs";
2
- import {mod as $2b4dce13dd5a17fa$export$842a2cf37af977e1} from "./utils.mjs";
1
+ import {CalendarDate as $2aaf608024c21ca1$export$99faa760c7908e4f} from "../CalendarDate.mjs";
2
+ import {mod as $09ec6a572d60460f$export$842a2cf37af977e1} from "../utils.mjs";
3
3
 
4
4
  /*
5
5
  * Copyright 2020 Adobe. All rights reserved.
@@ -15,46 +15,46 @@ import {mod as $2b4dce13dd5a17fa$export$842a2cf37af977e1} from "./utils.mjs";
15
15
  // Original licensing can be found in the NOTICE file in the root directory of this source tree.
16
16
 
17
17
 
18
- const $7c5f6fbf42389787$var$HEBREW_EPOCH = 347997;
18
+ const $f39495b96f9dbac6$var$HEBREW_EPOCH = 347997;
19
19
  // Hebrew date calculations are performed in terms of days, hours, and
20
20
  // "parts" (or halakim), which are 1/1080 of an hour, or 3 1/3 seconds.
21
- const $7c5f6fbf42389787$var$HOUR_PARTS = 1080;
22
- const $7c5f6fbf42389787$var$DAY_PARTS = 24 * $7c5f6fbf42389787$var$HOUR_PARTS;
21
+ const $f39495b96f9dbac6$var$HOUR_PARTS = 1080;
22
+ const $f39495b96f9dbac6$var$DAY_PARTS = 24 * $f39495b96f9dbac6$var$HOUR_PARTS;
23
23
  // An approximate value for the length of a lunar month.
24
24
  // It is used to calculate the approximate year and month of a given
25
25
  // absolute date.
26
- const $7c5f6fbf42389787$var$MONTH_DAYS = 29;
27
- const $7c5f6fbf42389787$var$MONTH_FRACT = 12 * $7c5f6fbf42389787$var$HOUR_PARTS + 793;
28
- const $7c5f6fbf42389787$var$MONTH_PARTS = $7c5f6fbf42389787$var$MONTH_DAYS * $7c5f6fbf42389787$var$DAY_PARTS + $7c5f6fbf42389787$var$MONTH_FRACT;
29
- function $7c5f6fbf42389787$var$isLeapYear(year) {
30
- return (0, $2b4dce13dd5a17fa$export$842a2cf37af977e1)(year * 7 + 1, 19) < 7;
26
+ const $f39495b96f9dbac6$var$MONTH_DAYS = 29;
27
+ const $f39495b96f9dbac6$var$MONTH_FRACT = 12 * $f39495b96f9dbac6$var$HOUR_PARTS + 793;
28
+ const $f39495b96f9dbac6$var$MONTH_PARTS = $f39495b96f9dbac6$var$MONTH_DAYS * $f39495b96f9dbac6$var$DAY_PARTS + $f39495b96f9dbac6$var$MONTH_FRACT;
29
+ function $f39495b96f9dbac6$var$isLeapYear(year) {
30
+ return (0, $09ec6a572d60460f$export$842a2cf37af977e1)(year * 7 + 1, 19) < 7;
31
31
  }
32
32
  // Test for delay of start of new year and to avoid
33
33
  // Sunday, Wednesday, and Friday as start of the new year.
34
- function $7c5f6fbf42389787$var$hebrewDelay1(year) {
34
+ function $f39495b96f9dbac6$var$hebrewDelay1(year) {
35
35
  let months = Math.floor((235 * year - 234) / 19);
36
36
  let parts = 12084 + 13753 * months;
37
37
  let day = months * 29 + Math.floor(parts / 25920);
38
- if ((0, $2b4dce13dd5a17fa$export$842a2cf37af977e1)(3 * (day + 1), 7) < 3) day += 1;
38
+ if ((0, $09ec6a572d60460f$export$842a2cf37af977e1)(3 * (day + 1), 7) < 3) day += 1;
39
39
  return day;
40
40
  }
41
41
  // Check for delay in start of new year due to length of adjacent years
42
- function $7c5f6fbf42389787$var$hebrewDelay2(year) {
43
- let last = $7c5f6fbf42389787$var$hebrewDelay1(year - 1);
44
- let present = $7c5f6fbf42389787$var$hebrewDelay1(year);
45
- let next = $7c5f6fbf42389787$var$hebrewDelay1(year + 1);
42
+ function $f39495b96f9dbac6$var$hebrewDelay2(year) {
43
+ let last = $f39495b96f9dbac6$var$hebrewDelay1(year - 1);
44
+ let present = $f39495b96f9dbac6$var$hebrewDelay1(year);
45
+ let next = $f39495b96f9dbac6$var$hebrewDelay1(year + 1);
46
46
  if (next - present === 356) return 2;
47
47
  if (present - last === 382) return 1;
48
48
  return 0;
49
49
  }
50
- function $7c5f6fbf42389787$var$startOfYear(year) {
51
- return $7c5f6fbf42389787$var$hebrewDelay1(year) + $7c5f6fbf42389787$var$hebrewDelay2(year);
50
+ function $f39495b96f9dbac6$var$startOfYear(year) {
51
+ return $f39495b96f9dbac6$var$hebrewDelay1(year) + $f39495b96f9dbac6$var$hebrewDelay2(year);
52
52
  }
53
- function $7c5f6fbf42389787$var$getDaysInYear(year) {
54
- return $7c5f6fbf42389787$var$startOfYear(year + 1) - $7c5f6fbf42389787$var$startOfYear(year);
53
+ function $f39495b96f9dbac6$var$getDaysInYear(year) {
54
+ return $f39495b96f9dbac6$var$startOfYear(year + 1) - $f39495b96f9dbac6$var$startOfYear(year);
55
55
  }
56
- function $7c5f6fbf42389787$var$getYearType(year) {
57
- let yearLength = $7c5f6fbf42389787$var$getDaysInYear(year);
56
+ function $f39495b96f9dbac6$var$getYearType(year) {
57
+ let yearLength = $f39495b96f9dbac6$var$getDaysInYear(year);
58
58
  if (yearLength > 380) yearLength -= 30; // Subtract length of leap month.
59
59
  switch(yearLength){
60
60
  case 353:
@@ -65,58 +65,58 @@ function $7c5f6fbf42389787$var$getYearType(year) {
65
65
  return 2; // complete
66
66
  }
67
67
  }
68
- function $7c5f6fbf42389787$var$getDaysInMonth(year, month) {
68
+ function $f39495b96f9dbac6$var$getDaysInMonth(year, month) {
69
69
  // Normalize month numbers from 1 - 13, even on non-leap years
70
- if (month >= 6 && !$7c5f6fbf42389787$var$isLeapYear(year)) month++;
70
+ if (month >= 6 && !$f39495b96f9dbac6$var$isLeapYear(year)) month++;
71
71
  // First of all, dispose of fixed-length 29 day months
72
72
  if (month === 4 || month === 7 || month === 9 || month === 11 || month === 13) return 29;
73
- let yearType = $7c5f6fbf42389787$var$getYearType(year);
73
+ let yearType = $f39495b96f9dbac6$var$getYearType(year);
74
74
  // If it's Heshvan, days depend on length of year
75
75
  if (month === 2) return yearType === 2 ? 30 : 29;
76
76
  // Similarly, Kislev varies with the length of year
77
77
  if (month === 3) return yearType === 0 ? 29 : 30;
78
78
  // Adar I only exists in leap years
79
- if (month === 6) return $7c5f6fbf42389787$var$isLeapYear(year) ? 30 : 0;
79
+ if (month === 6) return $f39495b96f9dbac6$var$isLeapYear(year) ? 30 : 0;
80
80
  return 30;
81
81
  }
82
- class $7c5f6fbf42389787$export$ca405048b8fb5af {
82
+ class $f39495b96f9dbac6$export$ca405048b8fb5af {
83
83
  fromJulianDay(jd) {
84
- let d = jd - $7c5f6fbf42389787$var$HEBREW_EPOCH;
85
- let m = d * $7c5f6fbf42389787$var$DAY_PARTS / $7c5f6fbf42389787$var$MONTH_PARTS; // Months (approx)
84
+ let d = jd - $f39495b96f9dbac6$var$HEBREW_EPOCH;
85
+ let m = d * $f39495b96f9dbac6$var$DAY_PARTS / $f39495b96f9dbac6$var$MONTH_PARTS; // Months (approx)
86
86
  let year = Math.floor((19 * m + 234) / 235) + 1; // Years (approx)
87
- let ys = $7c5f6fbf42389787$var$startOfYear(year); // 1st day of year
87
+ let ys = $f39495b96f9dbac6$var$startOfYear(year); // 1st day of year
88
88
  let dayOfYear = Math.floor(d - ys);
89
89
  // Because of the postponement rules, it's possible to guess wrong. Fix it.
90
90
  while(dayOfYear < 1){
91
91
  year--;
92
- ys = $7c5f6fbf42389787$var$startOfYear(year);
92
+ ys = $f39495b96f9dbac6$var$startOfYear(year);
93
93
  dayOfYear = Math.floor(d - ys);
94
94
  }
95
95
  // Now figure out which month we're in, and the date within that month
96
96
  let month = 1;
97
97
  let monthStart = 0;
98
98
  while(monthStart < dayOfYear){
99
- monthStart += $7c5f6fbf42389787$var$getDaysInMonth(year, month);
99
+ monthStart += $f39495b96f9dbac6$var$getDaysInMonth(year, month);
100
100
  month++;
101
101
  }
102
102
  month--;
103
- monthStart -= $7c5f6fbf42389787$var$getDaysInMonth(year, month);
103
+ monthStart -= $f39495b96f9dbac6$var$getDaysInMonth(year, month);
104
104
  let day = dayOfYear - monthStart;
105
- return new (0, $35ea8db9cb2ccb90$export$99faa760c7908e4f)(this, year, month, day);
105
+ return new (0, $2aaf608024c21ca1$export$99faa760c7908e4f)(this, year, month, day);
106
106
  }
107
107
  toJulianDay(date) {
108
- let jd = $7c5f6fbf42389787$var$startOfYear(date.year);
109
- for(let month = 1; month < date.month; month++)jd += $7c5f6fbf42389787$var$getDaysInMonth(date.year, month);
110
- return jd + date.day + $7c5f6fbf42389787$var$HEBREW_EPOCH;
108
+ let jd = $f39495b96f9dbac6$var$startOfYear(date.year);
109
+ for(let month = 1; month < date.month; month++)jd += $f39495b96f9dbac6$var$getDaysInMonth(date.year, month);
110
+ return jd + date.day + $f39495b96f9dbac6$var$HEBREW_EPOCH;
111
111
  }
112
112
  getDaysInMonth(date) {
113
- return $7c5f6fbf42389787$var$getDaysInMonth(date.year, date.month);
113
+ return $f39495b96f9dbac6$var$getDaysInMonth(date.year, date.month);
114
114
  }
115
115
  getMonthsInYear(date) {
116
- return $7c5f6fbf42389787$var$isLeapYear(date.year) ? 13 : 12;
116
+ return $f39495b96f9dbac6$var$isLeapYear(date.year) ? 13 : 12;
117
117
  }
118
118
  getDaysInYear(date) {
119
- return $7c5f6fbf42389787$var$getDaysInYear(date.year);
119
+ return $f39495b96f9dbac6$var$getDaysInYear(date.year);
120
120
  }
121
121
  getMaximumMonthsInYear() {
122
122
  return 13;
@@ -136,8 +136,8 @@ class $7c5f6fbf42389787$export$ca405048b8fb5af {
136
136
  balanceYearMonth(date, previousDate) {
137
137
  // Keep date in the same month when switching between leap years and non leap years
138
138
  if (previousDate.year !== date.year) {
139
- if ($7c5f6fbf42389787$var$isLeapYear(previousDate.year) && !$7c5f6fbf42389787$var$isLeapYear(date.year) && previousDate.month > 6) date.month--;
140
- else if (!$7c5f6fbf42389787$var$isLeapYear(previousDate.year) && $7c5f6fbf42389787$var$isLeapYear(date.year) && previousDate.month > 6) date.month++;
139
+ if ($f39495b96f9dbac6$var$isLeapYear(previousDate.year) && !$f39495b96f9dbac6$var$isLeapYear(date.year) && previousDate.month > 6) date.month--;
140
+ else if (!$f39495b96f9dbac6$var$isLeapYear(previousDate.year) && $f39495b96f9dbac6$var$isLeapYear(date.year) && previousDate.month > 6) date.month++;
141
141
  }
142
142
  }
143
143
  constructor(){
@@ -146,5 +146,5 @@ class $7c5f6fbf42389787$export$ca405048b8fb5af {
146
146
  }
147
147
 
148
148
 
149
- export {$7c5f6fbf42389787$export$ca405048b8fb5af as HebrewCalendar};
150
- //# sourceMappingURL=HebrewCalendar.module.js.map
149
+ export {$f39495b96f9dbac6$export$ca405048b8fb5af as HebrewCalendar};
150
+ //# sourceMappingURL=HebrewCalendar.mjs.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["packages/@internationalized/date/src/calendars/HebrewCalendar.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Portions of the code in this file are based on code from ICU.\n// Original licensing can be found in the NOTICE file in the root directory of this source tree.\n\nimport {AnyCalendarDate, Calendar, CalendarIdentifier} from '../types';\nimport {CalendarDate} from '../CalendarDate';\nimport {mod, Mutable} from '../utils';\n\nconst HEBREW_EPOCH = 347997;\n\n// Hebrew date calculations are performed in terms of days, hours, and\n// \"parts\" (or halakim), which are 1/1080 of an hour, or 3 1/3 seconds.\nconst HOUR_PARTS = 1080;\nconst DAY_PARTS = 24 * HOUR_PARTS;\n\n// An approximate value for the length of a lunar month.\n// It is used to calculate the approximate year and month of a given\n// absolute date.\nconst MONTH_DAYS = 29;\nconst MONTH_FRACT = 12 * HOUR_PARTS + 793;\nconst MONTH_PARTS = MONTH_DAYS * DAY_PARTS + MONTH_FRACT;\n\nfunction isLeapYear(year: number) {\n return mod(year * 7 + 1, 19) < 7;\n}\n\n// Test for delay of start of new year and to avoid\n// Sunday, Wednesday, and Friday as start of the new year.\nfunction hebrewDelay1(year: number) {\n let months = Math.floor((235 * year - 234) / 19);\n let parts = 12084 + 13753 * months;\n let day = months * 29 + Math.floor(parts / 25920);\n\n if (mod(3 * (day + 1), 7) < 3) {\n day += 1;\n }\n\n return day;\n}\n\n// Check for delay in start of new year due to length of adjacent years\nfunction hebrewDelay2(year: number) {\n let last = hebrewDelay1(year - 1);\n let present = hebrewDelay1(year);\n let next = hebrewDelay1(year + 1);\n\n if (next - present === 356) {\n return 2;\n }\n\n if (present - last === 382) {\n return 1;\n }\n\n return 0;\n}\n\nfunction startOfYear(year: number) {\n return hebrewDelay1(year) + hebrewDelay2(year);\n}\n\nfunction getDaysInYear(year: number) {\n return startOfYear(year + 1) - startOfYear(year);\n}\n\nfunction getYearType(year: number) {\n let yearLength = getDaysInYear(year);\n\n if (yearLength > 380) {\n yearLength -= 30; // Subtract length of leap month.\n }\n\n switch (yearLength) {\n case 353:\n return 0; // deficient\n case 354:\n return 1; // normal\n case 355:\n return 2; // complete\n }\n}\n\nfunction getDaysInMonth(year: number, month: number): number {\n // Normalize month numbers from 1 - 13, even on non-leap years\n if (month >= 6 && !isLeapYear(year)) {\n month++;\n }\n\n // First of all, dispose of fixed-length 29 day months\n if (month === 4 || month === 7 || month === 9 || month === 11 || month === 13) {\n return 29;\n }\n\n let yearType = getYearType(year);\n\n // If it's Heshvan, days depend on length of year\n if (month === 2) {\n return yearType === 2 ? 30 : 29;\n }\n\n // Similarly, Kislev varies with the length of year\n if (month === 3) {\n return yearType === 0 ? 29 : 30;\n }\n\n // Adar I only exists in leap years\n if (month === 6) {\n return isLeapYear(year) ? 30 : 0;\n }\n\n return 30;\n}\n\n/**\n * The Hebrew calendar is used in Israel and around the world by the Jewish faith.\n * Years include either 12 or 13 months depending on whether it is a leap year.\n * In leap years, an extra month is inserted at month 6.\n */\nexport class HebrewCalendar implements Calendar {\n identifier: CalendarIdentifier = 'hebrew';\n\n fromJulianDay(jd: number): CalendarDate {\n let d = jd - HEBREW_EPOCH;\n let m = (d * DAY_PARTS) / MONTH_PARTS; // Months (approx)\n let year = Math.floor((19 * m + 234) / 235) + 1; // Years (approx)\n let ys = startOfYear(year); // 1st day of year\n let dayOfYear = Math.floor(d - ys);\n\n // Because of the postponement rules, it's possible to guess wrong. Fix it.\n while (dayOfYear < 1) {\n year--;\n ys = startOfYear(year);\n dayOfYear = Math.floor(d - ys);\n }\n\n // Now figure out which month we're in, and the date within that month\n let month = 1;\n let monthStart = 0;\n while (monthStart < dayOfYear) {\n monthStart += getDaysInMonth(year, month);\n month++;\n }\n\n month--;\n monthStart -= getDaysInMonth(year, month);\n\n let day = dayOfYear - monthStart;\n return new CalendarDate(this, year, month, day);\n }\n\n toJulianDay(date: AnyCalendarDate): number {\n let jd = startOfYear(date.year);\n for (let month = 1; month < date.month; month++) {\n jd += getDaysInMonth(date.year, month);\n }\n\n return jd + date.day + HEBREW_EPOCH;\n }\n\n getDaysInMonth(date: AnyCalendarDate): number {\n return getDaysInMonth(date.year, date.month);\n }\n\n getMonthsInYear(date: AnyCalendarDate): number {\n return isLeapYear(date.year) ? 13 : 12;\n }\n\n getDaysInYear(date: AnyCalendarDate): number {\n return getDaysInYear(date.year);\n }\n\n getMaximumMonthsInYear(): number {\n return 13;\n }\n\n getMaximumDaysInMonth(): number {\n return 30;\n }\n\n getYearsInEra(): number {\n // 6239 gregorian\n return 9999;\n }\n\n getEras(): string[] {\n return ['AM'];\n }\n\n balanceYearMonth(date: Mutable<AnyCalendarDate>, previousDate: AnyCalendarDate): void {\n // Keep date in the same month when switching between leap years and non leap years\n if (previousDate.year !== date.year) {\n if (isLeapYear(previousDate.year) && !isLeapYear(date.year) && previousDate.month > 6) {\n date.month--;\n } else if (\n !isLeapYear(previousDate.year) &&\n isLeapYear(date.year) &&\n previousDate.month > 6\n ) {\n date.month++;\n }\n }\n }\n}\n"],"names":[],"version":3,"file":"HebrewCalendar.mjs.map"}