@hebcal/core 6.6.0 → 6.8.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 (152) hide show
  1. package/README.md +4 -4
  2. package/dist/bundle.js +224 -95
  3. package/dist/bundle.js.map +1 -1
  4. package/dist/bundle.min.js +18 -18
  5. package/dist/bundle.min.js.map +1 -1
  6. package/dist/esm/CalOptions.d.ts +15 -3
  7. package/dist/esm/DailyLearning.js +1 -1
  8. package/dist/esm/HebrewDateEvent.js +1 -1
  9. package/dist/esm/HolidayEvent.d.ts +2 -2
  10. package/dist/esm/HolidayEvent.js +3 -5
  11. package/dist/esm/HolidayEvent.js.map +1 -1
  12. package/dist/esm/MevarchimChodeshEvent.js +1 -1
  13. package/dist/esm/ParshaEvent.js +16 -6
  14. package/dist/esm/ParshaEvent.js.map +1 -1
  15. package/dist/esm/TimedEvent.js +1 -1
  16. package/dist/esm/TimedEvent.js.map +1 -1
  17. package/dist/esm/YomKippurKatanEvent.js +1 -1
  18. package/dist/esm/ashkenazi.po.js +2 -2
  19. package/dist/esm/ashkenazi.po.js.map +1 -1
  20. package/dist/esm/calendar.js +17 -23
  21. package/dist/esm/calendar.js.map +1 -1
  22. package/dist/esm/candles.d.ts +8 -3
  23. package/dist/esm/candles.js +65 -11
  24. package/dist/esm/candles.js.map +1 -1
  25. package/dist/esm/cities.json.js +1 -1
  26. package/dist/esm/event.js +2 -2
  27. package/dist/esm/event.js.map +1 -1
  28. package/dist/esm/getStartAndEnd.js +8 -6
  29. package/dist/esm/getStartAndEnd.js.map +1 -1
  30. package/dist/esm/hallel.js +1 -1
  31. package/dist/esm/he-x-NoNikud.po.js +1 -1
  32. package/dist/esm/he.po.js +1 -1
  33. package/dist/esm/hebcal.js +1 -1
  34. package/dist/esm/holidays.js +6 -5
  35. package/dist/esm/holidays.js.map +1 -1
  36. package/dist/esm/index.js +1 -1
  37. package/dist/esm/isAssurBemlacha.js +1 -1
  38. package/dist/esm/isAveilut.js +1 -1
  39. package/dist/esm/isFastDay.js +1 -1
  40. package/dist/esm/locale.js +1 -1
  41. package/dist/esm/location.js +12 -13
  42. package/dist/esm/location.js.map +1 -1
  43. package/dist/esm/modern.js +1 -1
  44. package/dist/esm/molad.js +5 -5
  45. package/dist/esm/molad.js.map +1 -1
  46. package/dist/esm/moladBase.js +1 -1
  47. package/dist/esm/moladDate.js +1 -1
  48. package/dist/esm/moladDate.js.map +1 -1
  49. package/dist/esm/omer.js +1 -1
  50. package/dist/esm/parshaName.js +1 -1
  51. package/dist/esm/parshaYear.js +1 -1
  52. package/dist/esm/pkgVersion.d.ts +1 -1
  53. package/dist/esm/pkgVersion.js +2 -2
  54. package/dist/esm/pkgVersion.js.map +1 -1
  55. package/dist/esm/reformatTimeStr.js +1 -1
  56. package/dist/esm/reformatTimeStr.js.map +1 -1
  57. package/dist/esm/sedra.d.ts +14 -0
  58. package/dist/esm/sedra.js +70 -13
  59. package/dist/esm/sedra.js.map +1 -1
  60. package/dist/esm/sefira.json.js +1 -1
  61. package/dist/esm/staticHolidays.js +1 -1
  62. package/dist/esm/string.js +1 -1
  63. package/dist/esm/tachanun.js +1 -1
  64. package/dist/esm/tachanun.js.map +1 -1
  65. package/dist/esm/zmanim.js +2 -3
  66. package/dist/esm/zmanim.js.map +1 -1
  67. package/package.json +14 -17
  68. package/po/ashkenazi.po +1 -12
  69. package/dist/eslint.config.d.mts +0 -83
  70. package/dist/eslint.config.mjs +0 -29
  71. package/dist/po2json.d.ts +0 -1
  72. package/dist/po2json.js +0 -40
  73. package/dist/src/CalOptions.d.ts +0 -171
  74. package/dist/src/CalOptions.js +0 -1
  75. package/dist/src/DailyLearning.d.ts +0 -69
  76. package/dist/src/DailyLearning.js +0 -92
  77. package/dist/src/HebrewDateEvent.d.ts +0 -37
  78. package/dist/src/HebrewDateEvent.js +0 -72
  79. package/dist/src/HolidayEvent.d.ts +0 -117
  80. package/dist/src/HolidayEvent.js +0 -236
  81. package/dist/src/MevarchimChodeshEvent.d.ts +0 -26
  82. package/dist/src/MevarchimChodeshEvent.js +0 -52
  83. package/dist/src/ParshaEvent.d.ts +0 -24
  84. package/dist/src/ParshaEvent.js +0 -50
  85. package/dist/src/TimedEvent.d.ts +0 -76
  86. package/dist/src/TimedEvent.js +0 -134
  87. package/dist/src/YomKippurKatanEvent.d.ts +0 -23
  88. package/dist/src/YomKippurKatanEvent.js +0 -40
  89. package/dist/src/ashkenazi.po.d.ts +0 -84
  90. package/dist/src/ashkenazi.po.js +0 -1
  91. package/dist/src/calendar.d.ts +0 -112
  92. package/dist/src/calendar.js +0 -721
  93. package/dist/src/candles.d.ts +0 -57
  94. package/dist/src/candles.js +0 -185
  95. package/dist/src/cities.json +0 -67
  96. package/dist/src/event.d.ts +0 -233
  97. package/dist/src/event.js +0 -295
  98. package/dist/src/getStartAndEnd.d.ts +0 -6
  99. package/dist/src/getStartAndEnd.js +0 -105
  100. package/dist/src/hallel.d.ts +0 -6
  101. package/dist/src/hallel.js +0 -39
  102. package/dist/src/he-x-NoNikud.po.d.ts +0 -28
  103. package/dist/src/he-x-NoNikud.po.js +0 -1
  104. package/dist/src/he.po.d.ts +0 -217
  105. package/dist/src/he.po.js +0 -1
  106. package/dist/src/hebcal.d.ts +0 -338
  107. package/dist/src/hebcal.js +0 -413
  108. package/dist/src/holidays.d.ts +0 -41
  109. package/dist/src/holidays.js +0 -324
  110. package/dist/src/index.d.ts +0 -30
  111. package/dist/src/index.js +0 -29
  112. package/dist/src/isAssurBemlacha.d.ts +0 -29
  113. package/dist/src/isAssurBemlacha.js +0 -82
  114. package/dist/src/isAveilut.d.ts +0 -22
  115. package/dist/src/isAveilut.js +0 -48
  116. package/dist/src/isFastDay.d.ts +0 -21
  117. package/dist/src/isFastDay.js +0 -31
  118. package/dist/src/locale.d.ts +0 -1
  119. package/dist/src/locale.js +0 -11
  120. package/dist/src/location.d.ts +0 -167
  121. package/dist/src/location.js +0 -342
  122. package/dist/src/modern.d.ts +0 -18
  123. package/dist/src/modern.js +0 -59
  124. package/dist/src/molad.d.ts +0 -164
  125. package/dist/src/molad.js +0 -298
  126. package/dist/src/moladBase.d.ts +0 -15
  127. package/dist/src/moladBase.js +0 -78
  128. package/dist/src/moladDate.d.ts +0 -12
  129. package/dist/src/moladDate.js +0 -58
  130. package/dist/src/omer.d.ts +0 -128
  131. package/dist/src/omer.js +0 -385
  132. package/dist/src/parshaName.d.ts +0 -2
  133. package/dist/src/parshaName.js +0 -13
  134. package/dist/src/parshaYear.d.ts +0 -20
  135. package/dist/src/parshaYear.js +0 -35
  136. package/dist/src/pkgVersion.d.ts +0 -2
  137. package/dist/src/pkgVersion.js +0 -2
  138. package/dist/src/reformatTimeStr.d.ts +0 -8
  139. package/dist/src/reformatTimeStr.js +0 -47
  140. package/dist/src/sedra.d.ts +0 -175
  141. package/dist/src/sedra.js +0 -563
  142. package/dist/src/sefira.json +0 -63
  143. package/dist/src/staticHolidays.d.ts +0 -192
  144. package/dist/src/staticHolidays.js +0 -637
  145. package/dist/src/string.d.ts +0 -2
  146. package/dist/src/string.js +0 -6
  147. package/dist/src/tachanun.d.ts +0 -29
  148. package/dist/src/tachanun.js +0 -120
  149. package/dist/src/zmanim.d.ts +0 -620
  150. package/dist/src/zmanim.js +0 -1003
  151. package/dist/version.d.ts +0 -1
  152. package/dist/version.js +0 -8
@@ -1,120 +0,0 @@
1
- import { HDate, months } from '@hebcal/hdate';
2
- import { dateYomHaZikaron } from './modern';
3
- function range(start, end) {
4
- const arr = [];
5
- for (let i = start; i <= end; i++) {
6
- arr.push(i);
7
- }
8
- return arr;
9
- }
10
- const NONE = {
11
- shacharit: false,
12
- mincha: false,
13
- allCongs: false,
14
- };
15
- /**
16
- * Return details on what Tachanun (or Tzidchatcha on Shabbat) is said on `hdate`.
17
- *
18
- * Tachanun is not said on Rosh Chodesh, the month of Nisan, Lag Baomer,
19
- * Rosh Chodesh Sivan until Isru Chag, Tisha B'av, 15 Av, Erev Rosh Hashanah,
20
- * Rosh Hashanah, Erev Yom Kippur until after Simchat Torah, Chanukah,
21
- * Tu B'shvat, Purim and Shushan Purim, and Purim and Shushan Purim Katan.
22
- *
23
- * In some congregations Tachanun is not said until from Rosh Chodesh Sivan
24
- * until 14th Sivan, Sukkot until after Rosh Chodesh Cheshvan, Pesach Sheini,
25
- * Yom Ha'atzmaut, and Yom Yerushalayim.
26
- *
27
- * Tachanun is not said at Mincha on days before it is not said at Shacharit.
28
- *
29
- * Tachanun is not said at Shacharit on Shabbat, but is at Mincha, usually.
30
- */
31
- export function tachanun(hdate, il) {
32
- return tachanun0(hdate, il, true);
33
- }
34
- function tachanun0(hdate, il, checkNext) {
35
- const year = hdate.yy;
36
- const dates = tachanunYear(year, il);
37
- const abs = hdate.abs();
38
- if (dates.none.includes(abs)) {
39
- return NONE;
40
- }
41
- const dow = hdate.getDay();
42
- const ret = {
43
- shacharit: false,
44
- mincha: false,
45
- allCongs: false,
46
- };
47
- if (!dates.some.includes(abs)) {
48
- ret.allCongs = true;
49
- }
50
- if (dow !== 6) {
51
- ret.shacharit = true;
52
- }
53
- const tomorrow = abs + 1;
54
- if (checkNext && !dates.yesPrev.includes(tomorrow)) {
55
- const tmp = tachanun0(new HDate(tomorrow), il, false);
56
- ret.mincha = tmp.shacharit;
57
- }
58
- else {
59
- ret.mincha = dow !== 5;
60
- }
61
- if (ret.allCongs && !ret.mincha && !ret.shacharit) {
62
- return NONE;
63
- }
64
- return ret;
65
- }
66
- function tachanunYear(year, il) {
67
- const leap = HDate.isLeapYear(year);
68
- const monthsInYear = HDate.monthsInYear(year);
69
- let av9dt = new HDate(9, months.AV, year);
70
- if (av9dt.getDay() === 6) {
71
- av9dt = av9dt.next();
72
- }
73
- let shushPurim = new HDate(15, months.ADAR_II, year);
74
- if (shushPurim.getDay() === 6) {
75
- shushPurim = shushPurim.next();
76
- }
77
- const none = [
78
- new HDate(2, months.TISHREI, year), // Rosh Hashana II
79
- ].concat(
80
- // Rosh Chodesh - 1st of every month. Also includes RH day 1 (1 Tishrei)
81
- range(1, monthsInYear).map(month => new HDate(1, month, year)),
82
- // Rosh Chodesh - 30th of months that have one
83
- range(1, monthsInYear)
84
- .filter(month => HDate.daysInMonth(month, year) === 30)
85
- .map(month => new HDate(30, month, year)),
86
- // entire month of Nisan
87
- range(1, HDate.daysInMonth(months.NISAN, year)).map(mday => new HDate(mday, months.NISAN, year)), new HDate(18, months.IYYAR, year), // Lag BaOmer
88
- // Rosh Chodesh Sivan thru Isru Chag
89
- range(1, 8 - (il ? 1 : 0)).map(mday => new HDate(mday, months.SIVAN, year)), av9dt, // Tisha B'Av
90
- new HDate(15, months.AV, year), // Tu B'Av
91
- new HDate(29, months.ELUL, year), // Erev Rosh Hashanah
92
- // Erev Yom Kippur thru Isru Chag
93
- range(9, 24 - (il ? 1 : 0)).map(mday => new HDate(mday, months.TISHREI, year)),
94
- // Chanukah
95
- range(25, 33).map(mday => new HDate(mday, months.KISLEV, year)), new HDate(15, months.SHVAT, year), // Tu BiShvat
96
- new HDate(14, months.ADAR_II, year), // Purim
97
- shushPurim, leap ? new HDate(14, months.ADAR_I, year) : [] // Purim Katan
98
- );
99
- const some = [
100
- new HDate(14, months.IYYAR, year), // Pesach Sheini
101
- ].concat(
102
- // Until 14 Sivan
103
- range(1, 13).map(mday => new HDate(mday, months.SIVAN, year)),
104
- // Until after Rosh Chodesh Cheshvan
105
- range(20, 31).map(mday => new HDate(mday, months.TISHREI, year)),
106
- // Yom HaAtzma'ut, which changes based on day of week
107
- year >= 5708 ? dateYomHaZikaron(year).next() : [],
108
- // Yom Yerushalayim
109
- year >= 5727 ? new HDate(28, months.IYYAR, year) : []);
110
- const yesPrev = [
111
- new HDate(29, months.ELUL, year - 1), // Erev Rosh Hashanah
112
- new HDate(9, months.TISHREI, year), // Erev Yom Kippur
113
- new HDate(14, months.IYYAR, year), // Pesach Sheini
114
- ];
115
- return {
116
- none: none.map(hd => hd.abs()).sort((a, b) => a - b),
117
- some: some.map(hd => hd.abs()).sort((a, b) => a - b),
118
- yesPrev: yesPrev.map(hd => hd.abs()).sort((a, b) => a - b),
119
- };
120
- }