@hebcal/core 5.3.9 → 5.3.11

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.
package/dist/bundle.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.3.9 */
1
+ /*! @hebcal/core v5.3.11 */
2
2
  var hebcal = (function (exports) {
3
3
  'use strict';
4
4
 
@@ -9125,14 +9125,6 @@ function pad4(number) {
9125
9125
  return String(number);
9126
9126
  }
9127
9127
 
9128
- Object.defineProperties(globalThis, p({
9129
- Temporal: mr
9130
- })), Object.defineProperties(Intl, p({
9131
- DateTimeFormat: Sr
9132
- })), Object.defineProperties(Date.prototype, p({
9133
- toTemporalInstant: toTemporalInstant
9134
- }));
9135
-
9136
9128
  /**
9137
9129
  * @private
9138
9130
  * @param {number} number
@@ -9145,6 +9137,24 @@ function pad2(number) {
9145
9137
  return String(number);
9146
9138
  }
9147
9139
 
9140
+ /**
9141
+ * Returns YYYY-MM-DD in the local timezone
9142
+ * @private
9143
+ * @param {Date} dt
9144
+ * @return {string}
9145
+ */
9146
+ function isoDateString(dt) {
9147
+ return pad4(dt.getFullYear()) + '-' + pad2(dt.getMonth() + 1) + '-' + pad2(dt.getDate());
9148
+ }
9149
+
9150
+ Object.defineProperties(globalThis, p({
9151
+ Temporal: mr
9152
+ })), Object.defineProperties(Intl, p({
9153
+ DateTimeFormat: Sr
9154
+ })), Object.defineProperties(Date.prototype, p({
9155
+ toTemporalInstant: toTemporalInstant
9156
+ }));
9157
+
9148
9158
  /**
9149
9159
  * @private
9150
9160
  * @param {Temporal.ZonedDateTime} zdt
@@ -9227,6 +9237,7 @@ class Zmanim {
9227
9237
  /**
9228
9238
  * Convenience function to get the time when sun is above or below the horizon
9229
9239
  * for a certain angle (in degrees).
9240
+ * This function does not support elevation adjustment.
9230
9241
  * @param {number} angle
9231
9242
  * @param {boolean} rising
9232
9243
  * @return {Date}
@@ -9238,6 +9249,7 @@ class Zmanim {
9238
9249
  }
9239
9250
  /**
9240
9251
  * Upper edge of the Sun appears over the eastern horizon in the morning (0.833° above horizon)
9252
+ * If elevation is enabled, this function will include elevation in the calculation.
9241
9253
  * @return {Date}
9242
9254
  */
9243
9255
  sunrise() {
@@ -9245,7 +9257,8 @@ class Zmanim {
9245
9257
  return zdtToDate(zdt);
9246
9258
  }
9247
9259
  /**
9248
- * Upper edge of the Sun appears over the eastern horizon in the morning (0.833° above horizon)
9260
+ * Upper edge of the Sun appears over the eastern horizon in the morning (0.833° above horizon).
9261
+ * This function does not support elevation adjustment.
9249
9262
  * @return {Date}
9250
9263
  */
9251
9264
  seaLevelSunrise() {
@@ -9253,7 +9266,8 @@ class Zmanim {
9253
9266
  return zdtToDate(zdt);
9254
9267
  }
9255
9268
  /**
9256
- * When the upper edge of the Sun disappears below the horizon (0.833° below horizon)
9269
+ * When the upper edge of the Sun disappears below the horizon (0.833° below horizon).
9270
+ * If elevation is enabled, this function will include elevation in the calculation.
9257
9271
  * @return {Date}
9258
9272
  */
9259
9273
  sunset() {
@@ -9261,7 +9275,8 @@ class Zmanim {
9261
9275
  return zdtToDate(zdt);
9262
9276
  }
9263
9277
  /**
9264
- * When the upper edge of the Sun disappears below the horizon (0.833° below horizon)
9278
+ * When the upper edge of the Sun disappears below the horizon (0.833° below horizon).
9279
+ * This function does not support elevation adjustment.
9265
9280
  * @return {Date}
9266
9281
  */
9267
9282
  seaLevelSunset() {
@@ -9269,7 +9284,9 @@ class Zmanim {
9269
9284
  return zdtToDate(zdt);
9270
9285
  }
9271
9286
  /**
9272
- * Civil dawn; Sun is 6° below the horizon in the morning
9287
+ * Civil dawn; Sun is 6° below the horizon in the morning.
9288
+ * Because degree-based functions estimate the amount of light in the sky,
9289
+ * the result is not impacted by elevation.
9273
9290
  * @return {Date}
9274
9291
  */
9275
9292
  dawn() {
@@ -9277,14 +9294,20 @@ class Zmanim {
9277
9294
  return zdtToDate(zdt);
9278
9295
  }
9279
9296
  /**
9280
- * Civil dusk; Sun is 6° below the horizon in the evening
9297
+ * Civil dusk; Sun is 6° below the horizon in the evening.
9298
+ * Because degree-based functions estimate the amount of light in the sky,
9299
+ * the result is not impacted by elevation.
9281
9300
  * @return {Date}
9282
9301
  */
9283
9302
  dusk() {
9284
9303
  const zdt = this.noaa.getEndCivilTwilight();
9285
9304
  return zdtToDate(zdt);
9286
9305
  }
9287
- /** @return {Date} */
9306
+ /**
9307
+ * Returns sunset for the previous day.
9308
+ * If elevation is enabled, this function will include elevation in the calculation.
9309
+ * @return {Date}
9310
+ */
9288
9311
  gregEve() {
9289
9312
  const prev = new Date(this.date);
9290
9313
  prev.setDate(prev.getDate() - 1);
@@ -9303,32 +9326,41 @@ class Zmanim {
9303
9326
  * @return {Date}
9304
9327
  */
9305
9328
  chatzot() {
9306
- const zdt = this.noaa.getSunTransit();
9329
+ const startOfDay = this.noaa.getSeaLevelSunrise();
9330
+ const endOfDay = this.noaa.getSeaLevelSunset();
9331
+ const zdt = this.noaa.getSunTransit(startOfDay, endOfDay);
9307
9332
  return zdtToDate(zdt);
9308
9333
  }
9309
9334
  /**
9310
- * Midnight – Chatzot; Sunset plus 6 halachic hours
9335
+ * Midnight – Chatzot; Sunset plus 6 halachic hours.
9336
+ * If elevation is enabled, this function will include elevation in the calculation.
9311
9337
  * @return {Date}
9312
9338
  */
9313
9339
  chatzotNight() {
9314
9340
  return new Date(this.sunrise().getTime() - this.nightHour() * 6);
9315
9341
  }
9316
9342
  /**
9317
- * Dawn – Alot haShachar; Sun is 16.1° below the horizon in the morning
9343
+ * Dawn – Alot haShachar; Sun is 16.1° below the horizon in the morning.
9344
+ * Because degree-based functions estimate the amount of light in the sky,
9345
+ * the result is not impacted by elevation.
9318
9346
  * @return {Date}
9319
9347
  */
9320
9348
  alotHaShachar() {
9321
9349
  return this.timeAtAngle(16.1, true);
9322
9350
  }
9323
9351
  /**
9324
- * Earliest talis & tefillin – Misheyakir; Sun is 11.5° below the horizon in the morning
9352
+ * Earliest talis & tefillin – Misheyakir; Sun is 11.5° below the horizon in the morning.
9353
+ * Because degree-based functions estimate the amount of light in the sky,
9354
+ * the result is not impacted by elevation.
9325
9355
  * @return {Date}
9326
9356
  */
9327
9357
  misheyakir() {
9328
9358
  return this.timeAtAngle(11.5, true);
9329
9359
  }
9330
9360
  /**
9331
- * Earliest talis & tefillin – Misheyakir Machmir; Sun is 10.2° below the horizon in the morning
9361
+ * Earliest talis & tefillin – Misheyakir Machmir; Sun is 10.2° below the horizon in the morning.
9362
+ * Because degree-based functions estimate the amount of light in the sky,
9363
+ * the result is not impacted by elevation.
9332
9364
  * @return {Date}
9333
9365
  */
9334
9366
  misheyakirMachmir() {
@@ -9349,7 +9381,8 @@ class Zmanim {
9349
9381
  return zdtToDate(zdt);
9350
9382
  }
9351
9383
  /**
9352
- * Latest Shema (Gra); Sunrise plus 3 halachic hours, according to the Gra
9384
+ * Latest Shema (Gra); Sunrise plus 3 halachic hours, according to the Gra.
9385
+ * If elevation is enabled, this function will include elevation in the calculation.
9353
9386
  * @return {Date}
9354
9387
  */
9355
9388
  sofZmanShma() {
@@ -9357,7 +9390,8 @@ class Zmanim {
9357
9390
  return this.getShaahZmanisBasedZman(3);
9358
9391
  }
9359
9392
  /**
9360
- * Latest Shacharit (Gra); Sunrise plus 4 halachic hours, according to the Gra
9393
+ * Latest Shacharit (Gra); Sunrise plus 4 halachic hours, according to the Gra.
9394
+ * If elevation is enabled, this function will include elevation in the calculation.
9361
9395
  * @return {Date}
9362
9396
  */
9363
9397
  sofZmanTfilla() {
@@ -9457,21 +9491,24 @@ class Zmanim {
9457
9491
  return new Date(alot.getTime() + 4 * temporalHour);
9458
9492
  }
9459
9493
  /**
9460
- * Earliest Mincha – Mincha Gedola; Sunrise plus 6.5 halachic hours
9494
+ * Earliest Mincha – Mincha Gedola; Sunrise plus 6.5 halachic hours.
9495
+ * If elevation is enabled, this function will include elevation in the calculation.
9461
9496
  * @return {Date}
9462
9497
  */
9463
9498
  minchaGedola() {
9464
9499
  return this.getShaahZmanisBasedZman(6.5);
9465
9500
  }
9466
9501
  /**
9467
- * Preferable earliest time to recite Minchah – Mincha Ketana; Sunrise plus 9.5 halachic hours
9502
+ * Preferable earliest time to recite Minchah – Mincha Ketana; Sunrise plus 9.5 halachic hours.
9503
+ * If elevation is enabled, this function will include elevation in the calculation.
9468
9504
  * @return {Date}
9469
9505
  */
9470
9506
  minchaKetana() {
9471
9507
  return this.getShaahZmanisBasedZman(9.5);
9472
9508
  }
9473
9509
  /**
9474
- * Plag haMincha; Sunrise plus 10.75 halachic hours
9510
+ * Plag haMincha; Sunrise plus 10.75 halachic hours.
9511
+ * If elevation is enabled, this function will include elevation in the calculation.
9475
9512
  * @return {Date}
9476
9513
  */
9477
9514
  plagHaMincha() {
@@ -9480,6 +9517,8 @@ class Zmanim {
9480
9517
  /**
9481
9518
  * @param {number} [angle=8.5] optional time for solar depression.
9482
9519
  * Default is 8.5 degrees for 3 small stars, use 7.083 degrees for 3 medium-sized stars.
9520
+ * Because degree-based functions estimate the amount of light in the sky,
9521
+ * the result is not impacted by elevation.
9483
9522
  * @return {Date}
9484
9523
  */
9485
9524
  tzeit() {
@@ -9504,7 +9543,9 @@ class Zmanim {
9504
9543
  * Rabbeinu Tam holds that bein hashmashos is a specific time
9505
9544
  * between sunset and tzeis hakochavim.
9506
9545
  * One opinion on how to calculate this time is that
9507
- * it is 13.5 minutes before tzies 7.083
9546
+ * it is 13.5 minutes before tzies 7.083.
9547
+ * Because degree-based functions estimate the amount of light in the sky,
9548
+ * the result is not impacted by elevation.
9508
9549
  * @return {Date}
9509
9550
  */
9510
9551
  beinHaShmashos() {
@@ -9580,6 +9621,8 @@ class Zmanim {
9580
9621
 
9581
9622
  /**
9582
9623
  * Returns sunrise + `offset` minutes (either positive or negative).
9624
+ * If elevation is enabled, this function will include elevation in the calculation
9625
+ * unless `forceSeaLevel` is `true`.
9583
9626
  * @param {number} offset minutes
9584
9627
  * @param {boolean} roundMinute round time to nearest minute (default true)
9585
9628
  * @param {boolean} forceSeaLevel use sea-level sunrise (default false)
@@ -9604,6 +9647,8 @@ class Zmanim {
9604
9647
 
9605
9648
  /**
9606
9649
  * Returns sunset + `offset` minutes (either positive or negative).
9650
+ * If elevation is enabled, this function will include elevation in the calculation
9651
+ * unless `forceSeaLevel` is `true`.
9607
9652
  * @param {number} offset minutes
9608
9653
  * @param {boolean} roundMinute round time to nearest minute (default true)
9609
9654
  * @param {boolean} forceSeaLevel use sea-level sunset (default false)
@@ -10847,8 +10892,7 @@ class ParshaEvent extends Event {
10847
10892
 
10848
10893
  /** @return {string} */
10849
10894
  urlDateSuffix() {
10850
- const isoDateTime = this.getDate().greg().toISOString();
10851
- const isoDate = isoDateTime.substring(0, isoDateTime.indexOf('T'));
10895
+ const isoDate = isoDateString(this.getDate().greg());
10852
10896
  return isoDate.replace(/-/g, '');
10853
10897
  }
10854
10898
  }
@@ -11066,55 +11110,161 @@ const SIGD = 'Sigd';
11066
11110
  const YOM_HAALIYAH = 'Yom HaAliyah';
11067
11111
  const YOM_HAALIYAH_SCHOOL_OBSERVANCE = 'Yom HaAliyah School Observance';
11068
11112
  const HEBREW_LANGUAGE_DAY = 'Hebrew Language Day';
11069
- const holidayDesc$1 = {
11070
- ROSH_HASHANA_II,
11071
- EREV_YOM_KIPPUR,
11072
- YOM_KIPPUR,
11073
- EREV_SUKKOT,
11074
- SUKKOT_I,
11075
- SUKKOT_II,
11076
- SUKKOT_III_CHM,
11077
- SUKKOT_IV_CHM,
11078
- SUKKOT_V_CHM,
11079
- SUKKOT_VI_CHM,
11080
- SHMINI_ATZERET,
11081
- SIMCHAT_TORAH,
11082
- SUKKOT_II_CHM,
11083
- SUKKOT_VII_HOSHANA_RABA,
11113
+
11114
+ /**
11115
+ * Transliterated names of holidays, used by `Event.getDesc()`
11116
+ * @readonly
11117
+ * @enum {string}
11118
+ */
11119
+ const holidayDesc = {
11120
+ /** Asara B'Tevet */
11121
+ ASARA_BTEVET: 'Asara B\'Tevet',
11122
+ /** Birkat Hachamah */
11123
+ BIRKAT_HACHAMAH: 'Birkat Hachamah',
11124
+ /** Chag HaBanot */
11125
+ CHAG_HABANOT: 'Chag HaBanot',
11126
+ /** Chanukah: 8th Day */
11127
+ CHANUKAH_8TH_DAY: 'Chanukah: 8th Day',
11128
+ /** Erev Tish'a B'Av */
11129
+ EREV_TISHA_BAV: 'Erev Tish\'a B\'Av',
11130
+ /** Leil Selichot */
11131
+ LEIL_SELICHOT: 'Leil Selichot',
11132
+ /** Purim Katan */
11133
+ PURIM_KATAN: 'Purim Katan',
11134
+ /** Purim Meshulash */
11135
+ PURIM_MESHULASH: 'Purim Meshulash',
11136
+ /** Shabbat Chazon */
11137
+ SHABBAT_CHAZON: 'Shabbat Chazon',
11138
+ /** Shabbat HaChodesh */
11139
+ SHABBAT_HACHODESH: 'Shabbat HaChodesh',
11140
+ /** Shabbat HaGadol */
11141
+ SHABBAT_HAGADOL: 'Shabbat HaGadol',
11142
+ /** Shabbat Nachamu */
11143
+ SHABBAT_NACHAMU: 'Shabbat Nachamu',
11144
+ /** Shabbat Parah */
11145
+ SHABBAT_PARAH: 'Shabbat Parah',
11146
+ /** Shabbat Shekalim */
11147
+ SHABBAT_SHEKALIM: 'Shabbat Shekalim',
11148
+ /** Shabbat Shirah */
11149
+ SHABBAT_SHIRAH: 'Shabbat Shirah',
11150
+ /** Shabbat Shuva */
11151
+ SHABBAT_SHUVA: 'Shabbat Shuva',
11152
+ /** Shabbat Zachor */
11153
+ SHABBAT_ZACHOR: 'Shabbat Zachor',
11154
+ /** Shushan Purim Katan */
11155
+ SHUSHAN_PURIM_KATAN: 'Shushan Purim Katan',
11156
+ /** Ta'anit Bechorot */
11157
+ TAANIT_BECHOROT: 'Ta\'anit Bechorot',
11158
+ /** Ta'anit Esther */
11159
+ TAANIT_ESTHER: 'Ta\'anit Esther',
11160
+ /** Tish'a B'Av */
11161
+ TISHA_BAV: 'Tish\'a B\'Av',
11162
+ /** Tzom Gedaliah */
11163
+ TZOM_GEDALIAH: 'Tzom Gedaliah',
11164
+ /** Tzom Tammuz */
11165
+ TZOM_TAMMUZ: 'Tzom Tammuz',
11166
+ /** Yom HaAtzma'ut */
11167
+ YOM_HAATZMA_UT: 'Yom HaAtzma\'ut',
11168
+ /** Yom HaShoah */
11169
+ YOM_HASHOAH: 'Yom HaShoah',
11170
+ /** Yom HaZikaron */
11171
+ YOM_HAZIKARON: 'Yom HaZikaron',
11172
+ /** Ben-Gurion Day */
11173
+ BEN_GURION_DAY,
11174
+ /** Chanukah: 1 Candle */
11084
11175
  CHANUKAH_1_CANDLE,
11085
- TU_BISHVAT,
11086
- EREV_PURIM,
11087
- PURIM,
11088
- SHUSHAN_PURIM,
11176
+ /** Erev Pesach */
11089
11177
  EREV_PESACH,
11178
+ /** Erev Purim */
11179
+ EREV_PURIM,
11180
+ /** Erev Rosh Hashana */
11181
+ EREV_ROSH_HASHANA,
11182
+ /** Erev Shavuot */
11183
+ EREV_SHAVUOT,
11184
+ /** Erev Sukkot */
11185
+ EREV_SUKKOT,
11186
+ /** Erev Yom Kippur */
11187
+ EREV_YOM_KIPPUR,
11188
+ /** Family Day */
11189
+ FAMILY_DAY,
11190
+ /** Hebrew Language Day */
11191
+ HEBREW_LANGUAGE_DAY,
11192
+ /** Herzl Day */
11193
+ HERZL_DAY,
11194
+ /** Jabotinsky Day */
11195
+ JABOTINSKY_DAY,
11196
+ /** Lag BaOmer */
11197
+ LAG_BAOMER,
11198
+ /** Pesach I */
11090
11199
  PESACH_I,
11200
+ /** Pesach II */
11091
11201
  PESACH_II,
11092
- PESACH_II_CHM,
11202
+ /** Pesach III (CH''M) */
11093
11203
  PESACH_III_CHM,
11204
+ /** Pesach II (CH''M) */
11205
+ PESACH_II_CHM,
11206
+ /** Pesach IV (CH''M) */
11094
11207
  PESACH_IV_CHM,
11095
- PESACH_V_CHM,
11096
- PESACH_VI_CHM,
11208
+ /** Pesach Sheni */
11209
+ PESACH_SHENI,
11210
+ /** Pesach VII */
11097
11211
  PESACH_VII,
11212
+ /** Pesach VIII */
11098
11213
  PESACH_VIII,
11099
- PESACH_SHENI,
11100
- LAG_BAOMER,
11101
- EREV_SHAVUOT,
11214
+ /** Pesach VI (CH''M) */
11215
+ PESACH_VI_CHM,
11216
+ /** Pesach V (CH''M) */
11217
+ PESACH_V_CHM,
11218
+ /** Purim */
11219
+ PURIM,
11220
+ /** Rosh Hashana II */
11221
+ ROSH_HASHANA_II,
11222
+ /** Rosh Hashana LaBehemot */
11223
+ ROSH_HASHANA_LABEHEMOT,
11224
+ /** Shavuot */
11102
11225
  SHAVUOT,
11226
+ /** Shavuot I */
11103
11227
  SHAVUOT_I,
11228
+ /** Shavuot II */
11104
11229
  SHAVUOT_II,
11230
+ /** Shmini Atzeret */
11231
+ SHMINI_ATZERET,
11232
+ /** Shushan Purim */
11233
+ SHUSHAN_PURIM,
11234
+ /** Sigd */
11235
+ SIGD,
11236
+ /** Simchat Torah */
11237
+ SIMCHAT_TORAH,
11238
+ /** Sukkot I */
11239
+ SUKKOT_I,
11240
+ /** Sukkot II */
11241
+ SUKKOT_II,
11242
+ /** Sukkot III (CH''M) */
11243
+ SUKKOT_III_CHM,
11244
+ /** Sukkot II (CH''M) */
11245
+ SUKKOT_II_CHM,
11246
+ /** Sukkot IV (CH''M) */
11247
+ SUKKOT_IV_CHM,
11248
+ /** Sukkot VII (Hoshana Raba) */
11249
+ SUKKOT_VII_HOSHANA_RABA,
11250
+ /** Sukkot VI (CH''M) */
11251
+ SUKKOT_VI_CHM,
11252
+ /** Sukkot V (CH''M) */
11253
+ SUKKOT_V_CHM,
11254
+ /** Tu B\'Av */
11105
11255
  TU_BAV,
11106
- ROSH_HASHANA_LABEHEMOT,
11107
- EREV_ROSH_HASHANA,
11108
- YOM_YERUSHALAYIM,
11109
- BEN_GURION_DAY,
11110
- FAMILY_DAY,
11256
+ /** Tu BiShvat */
11257
+ TU_BISHVAT,
11258
+ /** Yitzhak Rabin Memorial Day */
11111
11259
  YITZHAK_RABIN_MEMORIAL_DAY,
11112
- HERZL_DAY,
11113
- JABOTINSKY_DAY,
11114
- SIGD,
11260
+ /** Yom HaAliyah */
11115
11261
  YOM_HAALIYAH,
11262
+ /** Yom HaAliyah School Observance */
11116
11263
  YOM_HAALIYAH_SCHOOL_OBSERVANCE,
11117
- HEBREW_LANGUAGE_DAY
11264
+ /** Yom Kippur */
11265
+ YOM_KIPPUR,
11266
+ /** Yom Yerushalayim */
11267
+ YOM_YERUSHALAYIM
11118
11268
  };
11119
11269
  const staticHolidays = [{
11120
11270
  mm: Tishrei,
@@ -11520,67 +11670,6 @@ const MODERN_HOLIDAY$1 = flags.MODERN_HOLIDAY;
11520
11670
  const MAJOR_FAST$1 = flags.MAJOR_FAST;
11521
11671
  const MINOR_HOLIDAY$1 = flags.MINOR_HOLIDAY;
11522
11672
  const EREV$1 = flags.EREV;
11523
- const SHABBAT_SHUVA = 'Shabbat Shuva';
11524
- const CHAG_HABANOT = 'Chag HaBanot';
11525
- const SHABBAT_SHEKALIM = 'Shabbat Shekalim';
11526
- const SHABBAT_ZACHOR = 'Shabbat Zachor';
11527
- const TAANIT_ESTHER = 'Ta\'anit Esther';
11528
- const SHABBAT_PARAH = 'Shabbat Parah';
11529
- const SHABBAT_HACHODESH = 'Shabbat HaChodesh';
11530
- const SHABBAT_HAGADOL = 'Shabbat HaGadol';
11531
- const TAANIT_BECHOROT = 'Ta\'anit Bechorot';
11532
- const LEIL_SELICHOT = 'Leil Selichot';
11533
- const PURIM_MESHULASH = 'Purim Meshulash';
11534
- const PURIM_KATAN = 'Purim Katan';
11535
- const SHUSHAN_PURIM_KATAN = 'Shushan Purim Katan';
11536
- const YOM_HASHOAH = 'Yom HaShoah';
11537
- const YOM_HAZIKARON = 'Yom HaZikaron';
11538
- const YOM_HAATZMA_UT = 'Yom HaAtzma\'ut';
11539
- const TZOM_GEDALIAH = 'Tzom Gedaliah';
11540
- const TZOM_TAMMUZ = 'Tzom Tammuz';
11541
- const SHABBAT_CHAZON = 'Shabbat Chazon';
11542
- const EREV_TISHA_BAV = 'Erev Tish\'a B\'Av';
11543
- const TISHA_BAV = 'Tish\'a B\'Av';
11544
- const SHABBAT_NACHAMU = 'Shabbat Nachamu';
11545
- const SHABBAT_SHIRAH = 'Shabbat Shirah';
11546
- const BIRKAT_HACHAMAH = 'Birkat Hachamah';
11547
- const CHANUKAH_8TH_DAY = 'Chanukah: 8th Day';
11548
- const ASARA_BTEVET = 'Asara B\'Tevet';
11549
-
11550
- /**
11551
- * Transliterated names of holidays, used by `Event.getDesc()`
11552
- * @readonly
11553
- * @enum {string}
11554
- */
11555
- const holidayDesc = {
11556
- ...holidayDesc$1,
11557
- SHABBAT_SHUVA,
11558
- CHAG_HABANOT,
11559
- SHABBAT_SHEKALIM,
11560
- SHABBAT_ZACHOR,
11561
- TAANIT_ESTHER,
11562
- SHABBAT_PARAH,
11563
- SHABBAT_HACHODESH,
11564
- SHABBAT_HAGADOL,
11565
- TAANIT_BECHOROT,
11566
- LEIL_SELICHOT,
11567
- PURIM_MESHULASH,
11568
- PURIM_KATAN,
11569
- SHUSHAN_PURIM_KATAN,
11570
- YOM_HASHOAH,
11571
- YOM_HAZIKARON,
11572
- YOM_HAATZMA_UT,
11573
- TZOM_GEDALIAH,
11574
- TZOM_TAMMUZ,
11575
- SHABBAT_CHAZON,
11576
- EREV_TISHA_BAV,
11577
- TISHA_BAV,
11578
- SHABBAT_NACHAMU,
11579
- SHABBAT_SHIRAH,
11580
- BIRKAT_HACHAMAH,
11581
- CHANUKAH_8TH_DAY,
11582
- ASARA_BTEVET
11583
- };
11584
11673
 
11585
11674
  /** Represents a built-in holiday like Pesach, Purim or Tu BiShvat */
11586
11675
  class HolidayEvent extends Event {
@@ -11621,22 +11710,24 @@ class HolidayEvent extends Event {
11621
11710
  if (cats[0] !== 'unknown') {
11622
11711
  return cats;
11623
11712
  }
11713
+ // Don't depend on flags.MINOR_HOLIDAY always being set. Look for minor holidays.
11624
11714
  const desc = this.getDesc();
11625
- // Don't depend on flags.MINOR_HOLIDAY always being set
11626
- switch (desc) {
11627
- case holidayDesc$1.LAG_BAOMER:
11628
- case LEIL_SELICHOT:
11629
- case holidayDesc$1.PESACH_SHENI:
11630
- case holidayDesc$1.EREV_PURIM:
11631
- case PURIM_KATAN:
11632
- case holidayDesc$1.SHUSHAN_PURIM:
11633
- case holidayDesc$1.TU_BAV:
11634
- case holidayDesc$1.TU_BISHVAT:
11635
- case holidayDesc$1.ROSH_HASHANA_LABEHEMOT:
11636
- return ['holiday', 'minor'];
11637
- default:
11638
- return ['holiday', 'major'];
11639
- }
11715
+ const {
11716
+ LAG_BAOMER,
11717
+ LEIL_SELICHOT,
11718
+ PESACH_SHENI,
11719
+ EREV_PURIM,
11720
+ PURIM_KATAN,
11721
+ SHUSHAN_PURIM,
11722
+ TU_BAV,
11723
+ TU_BISHVAT,
11724
+ ROSH_HASHANA_LABEHEMOT
11725
+ } = holidayDesc;
11726
+ const minorHolidays = [LAG_BAOMER, LEIL_SELICHOT, PESACH_SHENI, EREV_PURIM, PURIM_KATAN, SHUSHAN_PURIM, TU_BAV, TU_BISHVAT, ROSH_HASHANA_LABEHEMOT];
11727
+ if (minorHolidays.includes(desc)) {
11728
+ return ['holiday', 'minor'];
11729
+ }
11730
+ return ['holiday', 'major'];
11640
11731
  }
11641
11732
  /**
11642
11733
  * Returns (translated) description of this event
@@ -11699,8 +11790,7 @@ class RoshChodeshEvent extends HolidayEvent {
11699
11790
  class AsaraBTevetEvent extends HolidayEvent {
11700
11791
  /** @return {string} */
11701
11792
  urlDateSuffix() {
11702
- const isoDateTime = this.getDate().greg().toISOString();
11703
- const isoDate = isoDateTime.substring(0, isoDateTime.indexOf('T'));
11793
+ const isoDate = isoDateString(this.getDate().greg());
11704
11794
  return isoDate.replace(/-/g, '');
11705
11795
  }
11706
11796
  }
@@ -11790,7 +11880,7 @@ class YomKippurKatanEvent extends HolidayEvent {
11790
11880
  * @param {string} nextMonthName name of the upcoming month
11791
11881
  */
11792
11882
  constructor(date, nextMonthName) {
11793
- super(date, `${ykk} ${nextMonthName}`, flags.MINOR_FAST | flags.YOM_KIPPUR_KATAN);
11883
+ super(date, `${ykk} ${nextMonthName}`, MINOR_FAST$1 | flags.YOM_KIPPUR_KATAN);
11794
11884
  this.nextMonthName = nextMonthName;
11795
11885
  this.memo = `Minor Day of Atonement on the day preceeding Rosh Chodesh ${nextMonthName}`;
11796
11886
  }
@@ -11893,11 +11983,11 @@ function getHolidaysForYear_(year) {
11893
11983
  add(new RoshHashanaEvent(RH, year, CHAG | LIGHT_CANDLES_TZEIS$1));
11894
11984
 
11895
11985
  // Variable date holidays
11896
- add(new HolidayEvent(new HDate(3 + (RH.getDay() == THU), TISHREI$1, year), TZOM_GEDALIAH, MINOR_FAST$1));
11986
+ add(new HolidayEvent(new HDate(3 + (RH.getDay() == THU), TISHREI$1, year), holidayDesc.TZOM_GEDALIAH, MINOR_FAST$1));
11897
11987
  // first SAT after RH
11898
- add(new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, 7 + RH.abs())), SHABBAT_SHUVA, SPECIAL_SHABBAT$1));
11988
+ add(new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, 7 + RH.abs())), holidayDesc.SHABBAT_SHUVA, SPECIAL_SHABBAT$1));
11899
11989
  const rchTevet = HDate.shortKislev(year) ? new HDate(1, TEVET, year) : new HDate(30, KISLEV, year);
11900
- add(new HolidayEvent(rchTevet, CHAG_HABANOT, MINOR_HOLIDAY$1));
11990
+ add(new HolidayEvent(rchTevet, holidayDesc.CHAG_HABANOT, MINOR_HOLIDAY$1));
11901
11991
  // yes, we know Kislev 30-32 are wrong
11902
11992
  // HDate() corrects the month automatically
11903
11993
  for (let candles = 2; candles <= 8; candles++) {
@@ -11907,37 +11997,38 @@ function getHolidaysForYear_(year) {
11907
11997
  emoji: chanukahEmoji + KEYCAP_DIGITS[candles]
11908
11998
  }));
11909
11999
  }
11910
- add(new HolidayEvent(new HDate(32, KISLEV, year), CHANUKAH_8TH_DAY, MINOR_HOLIDAY$1, {
12000
+ add(new HolidayEvent(new HDate(32, KISLEV, year), holidayDesc.CHANUKAH_8TH_DAY, MINOR_HOLIDAY$1, {
11911
12001
  chanukahDay: 8,
11912
12002
  emoji: chanukahEmoji
11913
12003
  }));
11914
- add(new AsaraBTevetEvent(new HDate(10, TEVET, year), ASARA_BTEVET, MINOR_FAST$1));
12004
+ add(new AsaraBTevetEvent(new HDate(10, TEVET, year), holidayDesc.ASARA_BTEVET, MINOR_FAST$1));
11915
12005
  const pesachAbs = pesach.abs();
11916
- add(new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, pesachAbs - 43)), SHABBAT_SHEKALIM, SPECIAL_SHABBAT$1), new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, pesachAbs - 30)), SHABBAT_ZACHOR, SPECIAL_SHABBAT$1), new HolidayEvent(new HDate(pesachAbs - (pesach.getDay() == TUE ? 33 : 31)), TAANIT_ESTHER, MINOR_FAST$1));
11917
- add(new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, pesachAbs - 14) - 7), SHABBAT_PARAH, SPECIAL_SHABBAT$1), new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, pesachAbs - 14)), SHABBAT_HACHODESH, SPECIAL_SHABBAT$1), new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, pesachAbs - 1)), SHABBAT_HAGADOL, SPECIAL_SHABBAT$1), new HolidayEvent(
12006
+ add(new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, pesachAbs - 43)), holidayDesc.SHABBAT_SHEKALIM, SPECIAL_SHABBAT$1), new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, pesachAbs - 30)), holidayDesc.SHABBAT_ZACHOR, SPECIAL_SHABBAT$1), new HolidayEvent(new HDate(pesachAbs - (pesach.getDay() == TUE ? 33 : 31)), holidayDesc.TAANIT_ESTHER, MINOR_FAST$1));
12007
+ const haChodeshAbs = HDate.dayOnOrBefore(SAT$1, pesachAbs - 14);
12008
+ add(new HolidayEvent(new HDate(haChodeshAbs - 7), holidayDesc.SHABBAT_PARAH, SPECIAL_SHABBAT$1), new HolidayEvent(new HDate(haChodeshAbs), holidayDesc.SHABBAT_HACHODESH, SPECIAL_SHABBAT$1), new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, pesachAbs - 1)), holidayDesc.SHABBAT_HAGADOL, SPECIAL_SHABBAT$1), new HolidayEvent(
11918
12009
  // if the fast falls on Shabbat, move to Thursday
11919
- pesach.prev().getDay() == SAT$1 ? pesach.onOrBefore(THU) : new HDate(14, NISAN$1, year), TAANIT_BECHOROT, MINOR_FAST$1));
11920
- add(new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, new HDate(1, TISHREI$1, year + 1).abs() - 4)), LEIL_SELICHOT, MINOR_HOLIDAY$1, {
12010
+ pesach.prev().getDay() == SAT$1 ? pesach.onOrBefore(THU) : new HDate(14, NISAN$1, year), holidayDesc.TAANIT_BECHOROT, MINOR_FAST$1));
12011
+ add(new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, new HDate(1, TISHREI$1, year + 1).abs() - 4)), holidayDesc.LEIL_SELICHOT, MINOR_HOLIDAY$1, {
11921
12012
  emoji: '🕍'
11922
12013
  }));
11923
12014
  if (pesach.getDay() == SUN) {
11924
- add(new HolidayEvent(new HDate(16, ADAR_II, year), PURIM_MESHULASH, MINOR_HOLIDAY$1));
12015
+ add(new HolidayEvent(new HDate(16, ADAR_II, year), holidayDesc.PURIM_MESHULASH, MINOR_HOLIDAY$1));
11925
12016
  }
11926
12017
  if (HDate.isLeapYear(year)) {
11927
- add(new HolidayEvent(new HDate(14, ADAR_I, year), PURIM_KATAN, MINOR_HOLIDAY$1, {
12018
+ add(new HolidayEvent(new HDate(14, ADAR_I, year), holidayDesc.PURIM_KATAN, MINOR_HOLIDAY$1, {
11928
12019
  emoji: '🎭️'
11929
12020
  }));
11930
- add(new HolidayEvent(new HDate(15, ADAR_I, year), SHUSHAN_PURIM_KATAN, MINOR_HOLIDAY$1, {
12021
+ add(new HolidayEvent(new HDate(15, ADAR_I, year), holidayDesc.SHUSHAN_PURIM_KATAN, MINOR_HOLIDAY$1, {
11931
12022
  emoji: '🎭️'
11932
12023
  }));
11933
12024
  }
11934
12025
  const nisan27dt = dateYomHaShoah(year);
11935
12026
  if (nisan27dt) {
11936
- add(new HolidayEvent(nisan27dt, YOM_HASHOAH, MODERN_HOLIDAY$1));
12027
+ add(new HolidayEvent(nisan27dt, holidayDesc.YOM_HASHOAH, MODERN_HOLIDAY$1));
11937
12028
  }
11938
12029
  const yomHaZikaronDt = dateYomHaZikaron(year);
11939
12030
  if (yomHaZikaronDt) {
11940
- add(new HolidayEvent(yomHaZikaronDt, YOM_HAZIKARON, MODERN_HOLIDAY$1, emojiIsraelFlag), new HolidayEvent(yomHaZikaronDt.next(), YOM_HAATZMA_UT, MODERN_HOLIDAY$1, emojiIsraelFlag));
12031
+ add(new HolidayEvent(yomHaZikaronDt, holidayDesc.YOM_HAZIKARON, MODERN_HOLIDAY$1, emojiIsraelFlag), new HolidayEvent(yomHaZikaronDt.next(), holidayDesc.YOM_HAATZMA_UT, MODERN_HOLIDAY$1, emojiIsraelFlag));
11941
12032
  }
11942
12033
  for (const h of staticModernHolidays) {
11943
12034
  if (year >= h.firstYear) {
@@ -11966,9 +12057,9 @@ function getHolidaysForYear_(year) {
11966
12057
  observed: true
11967
12058
  };
11968
12059
  }
11969
- add(new HolidayEvent(tamuz17, TZOM_TAMMUZ, MINOR_FAST$1, tamuz17attrs));
12060
+ add(new HolidayEvent(tamuz17, holidayDesc.TZOM_TAMMUZ, MINOR_FAST$1, tamuz17attrs));
11970
12061
  let av9dt = new HDate(9, AV, year);
11971
- let av9title = TISHA_BAV;
12062
+ let av9title = holidayDesc.TISHA_BAV;
11972
12063
  let av9attrs;
11973
12064
  if (av9dt.getDay() == SAT$1) {
11974
12065
  av9dt = av9dt.next();
@@ -11978,7 +12069,7 @@ function getHolidaysForYear_(year) {
11978
12069
  av9title += ' (observed)';
11979
12070
  }
11980
12071
  const av9abs = av9dt.abs();
11981
- add(new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, av9abs)), SHABBAT_CHAZON, SPECIAL_SHABBAT$1), new HolidayEvent(av9dt.prev(), EREV_TISHA_BAV, EREV$1 | MAJOR_FAST$1, av9attrs), new HolidayEvent(av9dt, av9title, MAJOR_FAST$1, av9attrs), new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, av9abs + 7)), SHABBAT_NACHAMU, SPECIAL_SHABBAT$1));
12072
+ add(new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, av9abs)), holidayDesc.SHABBAT_CHAZON, SPECIAL_SHABBAT$1), new HolidayEvent(av9dt.prev(), holidayDesc.EREV_TISHA_BAV, EREV$1 | MAJOR_FAST$1, av9attrs), new HolidayEvent(av9dt, av9title, MAJOR_FAST$1, av9attrs), new HolidayEvent(new HDate(HDate.dayOnOrBefore(SAT$1, av9abs + 7)), holidayDesc.SHABBAT_NACHAMU, SPECIAL_SHABBAT$1));
11982
12073
  const monthsInYear = HDate.monthsInYear(year);
11983
12074
  for (let month = 1; month <= monthsInYear; month++) {
11984
12075
  const monthName = HDate.getMonthName(month, year);
@@ -12011,13 +12102,13 @@ function getHolidaysForYear_(year) {
12011
12102
  }
12012
12103
  const sedra = getSedra_(year, false);
12013
12104
  const beshalachHd = sedra.find(15);
12014
- add(new HolidayEvent(beshalachHd, SHABBAT_SHIRAH, SPECIAL_SHABBAT$1));
12105
+ add(new HolidayEvent(beshalachHd, holidayDesc.SHABBAT_SHIRAH, SPECIAL_SHABBAT$1));
12015
12106
 
12016
12107
  // Birkat Hachamah appears only once every 28 years
12017
12108
  const birkatHaChama = getBirkatHaChama(year);
12018
12109
  if (birkatHaChama) {
12019
12110
  const hd = new HDate(birkatHaChama);
12020
- add(new HolidayEvent(hd, BIRKAT_HACHAMAH, MINOR_HOLIDAY$1, {
12111
+ add(new HolidayEvent(hd, holidayDesc.BIRKAT_HACHAMAH, MINOR_HOLIDAY$1, {
12021
12112
  emoji: '☀️'
12022
12113
  }));
12023
12114
  }
@@ -12090,7 +12181,7 @@ class DailyLearning {
12090
12181
  }
12091
12182
 
12092
12183
  // DO NOT EDIT THIS AUTO-GENERATED FILE!
12093
- const version = '5.3.9';
12184
+ const version = '5.3.11';
12094
12185
 
12095
12186
  const NONE$1 = 0;
12096
12187
  const HALF = 1;
@@ -12503,7 +12594,8 @@ var poHe = {
12503
12594
  "Tzom Gedaliah (Mincha)": ["צוֹם גְּדַלְיָה מִנחָה"],
12504
12595
  "Tzom Tammuz (Mincha)": ["צוֹם תָּמוּז מִנחָה"],
12505
12596
  "Molad": ["מוֹלָד הָלְּבָנָה"],
12506
- "chalakim": ["חֲלָקִים"]
12597
+ "chalakim": ["חֲלָקִים"],
12598
+ "Pirkei Avot": ["פִּרְקֵי אָבוֹת"]
12507
12599
  }
12508
12600
  }
12509
12601
  };