@hebcal/core 5.8.11 → 5.8.13

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 (60) hide show
  1. package/dist/CalOptions.d.ts +1 -3
  2. package/dist/DailyLearning.d.ts +9 -3
  3. package/dist/bundle.js +115 -95
  4. package/dist/bundle.js.map +1 -1
  5. package/dist/bundle.min.js +5 -5
  6. package/dist/bundle.min.js.map +1 -1
  7. package/dist/esm/CalOptions.d.ts +1 -3
  8. package/dist/esm/DailyLearning.d.ts +9 -3
  9. package/dist/esm/DailyLearning.js +14 -6
  10. package/dist/esm/DailyLearning.js.map +1 -1
  11. package/dist/esm/HebrewDateEvent.js +5 -5
  12. package/dist/esm/HebrewDateEvent.js.map +1 -1
  13. package/dist/esm/HolidayEvent.js +1 -1
  14. package/dist/esm/MevarchimChodeshEvent.js +1 -1
  15. package/dist/esm/ParshaEvent.js +1 -1
  16. package/dist/esm/ParshaEvent.js.map +1 -1
  17. package/dist/esm/TimedEvent.js +1 -1
  18. package/dist/esm/YomKippurKatanEvent.js +1 -1
  19. package/dist/esm/ashkenazi.po.js +1 -1
  20. package/dist/esm/calendar.js +10 -2
  21. package/dist/esm/calendar.js.map +1 -1
  22. package/dist/esm/candles.js +1 -1
  23. package/dist/esm/event.js +1 -1
  24. package/dist/esm/getStartAndEnd.js +1 -1
  25. package/dist/esm/hallel.js +1 -1
  26. package/dist/esm/he.po.js +1 -1
  27. package/dist/esm/hebcal.js +1 -1
  28. package/dist/esm/holidays.js +1 -1
  29. package/dist/esm/index.d.ts +3 -2
  30. package/dist/esm/index.js +4 -3
  31. package/dist/esm/index.js.map +1 -1
  32. package/dist/esm/locale.js +1 -1
  33. package/dist/esm/location.js +1 -1
  34. package/dist/esm/location.js.map +1 -1
  35. package/dist/esm/modern.js +1 -1
  36. package/dist/esm/molad.js +3 -3
  37. package/dist/esm/molad.js.map +1 -1
  38. package/dist/esm/omer.js +3 -3
  39. package/dist/esm/omer.js.map +1 -1
  40. package/dist/esm/parshaName.js +2 -2
  41. package/dist/esm/parshaName.js.map +1 -1
  42. package/dist/esm/parshaYear.js +1 -1
  43. package/dist/esm/pkgVersion.d.ts +1 -1
  44. package/dist/esm/pkgVersion.js +2 -2
  45. package/dist/esm/pkgVersion.js.map +1 -1
  46. package/dist/esm/reformatTimeStr.js +3 -3
  47. package/dist/esm/reformatTimeStr.js.map +1 -1
  48. package/dist/esm/sedra.js +1 -1
  49. package/dist/esm/sedra.js.map +1 -1
  50. package/dist/esm/staticHolidays.js +1 -1
  51. package/dist/esm/staticHolidays.js.map +1 -1
  52. package/dist/esm/tachanun.js +1 -1
  53. package/dist/esm/tachanun.js.map +1 -1
  54. package/dist/esm/zmanim.js +1 -1
  55. package/dist/esm/zmanim.js.map +1 -1
  56. package/dist/index.cjs +38 -19
  57. package/dist/index.cjs.map +1 -1
  58. package/dist/index.d.ts +3 -2
  59. package/dist/pkgVersion.d.ts +1 -1
  60. package/package.json +6 -6
package/dist/bundle.js CHANGED
@@ -1,9 +1,9 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.13, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  var hebcal = (function (exports) {
3
3
  'use strict';
4
4
 
5
5
  /** DO NOT EDIT THIS AUTO-GENERATED FILE! */
6
- const version = '5.8.11';
6
+ const version = '5.8.13';
7
7
 
8
8
  /*! @hebcal/hdate v0.13.5, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
9
9
  /* eslint-disable @typescript-eslint/no-namespace, no-inner-declarations */
@@ -1117,7 +1117,7 @@ class Locale {
1117
1117
  static lookupTranslation(id, locale) {
1118
1118
  const loc = typeof locale === 'string' && locales.get(locale.toLowerCase()) || activeLocale;
1119
1119
  const array = loc[id];
1120
- if ((array === null || array === void 0 ? void 0 : array.length) && array[0].length) {
1120
+ if ((array === null || array === undefined ? undefined : array.length) && array[0].length) {
1121
1121
  return array[0];
1122
1122
  }
1123
1123
  return undefined;
@@ -1214,7 +1214,7 @@ class Locale {
1214
1214
  * @param [locale] Optional locale name (i.e: `'he'`, `'fr'`). Defaults to active locale.
1215
1215
  */
1216
1216
  static ordinal(n, locale) {
1217
- const locale1 = locale === null || locale === void 0 ? void 0 : locale.toLowerCase();
1217
+ const locale1 = locale === null || locale === undefined ? undefined : locale.toLowerCase();
1218
1218
  const locale0 = locale1 || activeName;
1219
1219
  if (!locale0) {
1220
1220
  return getEnOrdinal(n);
@@ -2276,8 +2276,8 @@ class HebrewDateEvent extends Event {
2276
2276
  * console.log(ev.render('he')); // 'ט״ו חֶשְׁוָן תשס״ט'
2277
2277
  */
2278
2278
  render(locale) {
2279
- const locale1 = locale === null || locale === void 0 ? void 0 : locale.toLowerCase();
2280
- const locale0 = locale1 !== null && locale1 !== void 0 ? locale1 : Locale.getLocaleName();
2279
+ const locale1 = locale === null || locale === undefined ? undefined : locale.toLowerCase();
2280
+ const locale0 = locale1 !== null && locale1 !== undefined ? locale1 : Locale.getLocaleName();
2281
2281
  const hd = this.getDate();
2282
2282
  switch (locale0) {
2283
2283
  case 'h':
@@ -2310,8 +2310,8 @@ class HebrewDateEvent extends Event {
2310
2310
  * console.log(ev.renderBrief('he')); // 'ט״ו חֶשְׁוָן'
2311
2311
  */
2312
2312
  renderBrief(locale) {
2313
- const locale1 = locale === null || locale === void 0 ? void 0 : locale.toLowerCase();
2314
- const locale0 = locale1 !== null && locale1 !== void 0 ? locale1 : Locale.getLocaleName();
2313
+ const locale1 = locale === null || locale === undefined ? undefined : locale.toLowerCase();
2314
+ const locale0 = locale1 !== null && locale1 !== undefined ? locale1 : Locale.getLocaleName();
2315
2315
  const hd = this.getDate();
2316
2316
  if (hd.getMonth() === months.TISHREI && hd.getDate() === 1) {
2317
2317
  return this.render(locale0);
@@ -2415,7 +2415,7 @@ function requireFunctionCall () {
2415
2415
  var NATIVE_BIND = requireFunctionBindNative();
2416
2416
 
2417
2417
  var call = Function.prototype.call;
2418
-
2418
+ // eslint-disable-next-line es/no-function-prototype-bind -- safe
2419
2419
  functionCall = NATIVE_BIND ? call.bind(call) : function () {
2420
2420
  return call.apply(call, arguments);
2421
2421
  };
@@ -2472,6 +2472,7 @@ function requireFunctionUncurryThis () {
2472
2472
 
2473
2473
  var FunctionPrototype = Function.prototype;
2474
2474
  var call = FunctionPrototype.call;
2475
+ // eslint-disable-next-line es/no-function-prototype-bind -- safe
2475
2476
  var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);
2476
2477
 
2477
2478
  functionUncurryThis = NATIVE_BIND ? uncurryThisWithBind : function (fn) {
@@ -2877,10 +2878,10 @@ function requireSharedStore () {
2877
2878
  var store = sharedStore.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});
2878
2879
 
2879
2880
  (store.versions || (store.versions = [])).push({
2880
- version: '3.39.0',
2881
+ version: '3.40.0',
2881
2882
  mode: IS_PURE ? 'pure' : 'global',
2882
- copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',
2883
- license: 'https://github.com/zloirock/core-js/blob/v3.39.0/LICENSE',
2883
+ copyright: '© 2014-2025 Denis Pushkarev (zloirock.ru)',
2884
+ license: 'https://github.com/zloirock/core-js/blob/v3.40.0/LICENSE',
2884
2885
  source: 'https://github.com/zloirock/core-js'
2885
2886
  });
2886
2887
  return sharedStore.exports;
@@ -4069,7 +4070,7 @@ function clampEntity(e, n, t, o, r, i) {
4069
4070
  }
4070
4071
  function getDefinedProp(e, n) {
4071
4072
  const t = e[n];
4072
- if (void 0 === t) {
4073
+ if (undefined === t) {
4073
4074
  throw new TypeError(missingField(n));
4074
4075
  }
4075
4076
  return t;
@@ -4167,7 +4168,7 @@ function nn(e) {
4167
4168
  };
4168
4169
  const n = Object.keys(e);
4169
4170
  for (const t of n) {
4170
- void 0 === e[t] && delete e[t];
4171
+ undefined === e[t] && delete e[t];
4171
4172
  }
4172
4173
  return e;
4173
4174
  }
@@ -4271,17 +4272,17 @@ function ln(e) {
4271
4272
  return e === X ? ["year", "day"] : [];
4272
4273
  }
4273
4274
  function l(e) {
4274
- if (void 0 !== e) {
4275
+ if (undefined !== e) {
4275
4276
  return m(e);
4276
4277
  }
4277
4278
  }
4278
4279
  function S(e) {
4279
- if (void 0 !== e) {
4280
+ if (undefined !== e) {
4280
4281
  return d(e);
4281
4282
  }
4282
4283
  }
4283
4284
  function c(e) {
4284
- if (void 0 !== e) {
4285
+ if (undefined !== e) {
4285
4286
  return u(e);
4286
4287
  }
4287
4288
  }
@@ -4471,7 +4472,7 @@ function isoToEpochMilli(e) {
4471
4472
  }
4472
4473
  function isoToEpochNano(e) {
4473
4474
  const n = isoToEpochMilli(e);
4474
- if (void 0 !== n) {
4475
+ if (undefined !== n) {
4475
4476
  const [t, o] = divModTrunc(n, Gr);
4476
4477
  return [t, o * be + (e.isoMicrosecond || 0) * Vr + (e.isoNanosecond || 0)];
4477
4478
  }
@@ -4589,7 +4590,7 @@ function constrainIsoTimeFields(e, n) {
4589
4590
  return zipProps(j, [clampProp(e, "isoHour", 0, 23, n), clampProp(e, "isoMinute", 0, 59, n), clampProp(e, "isoSecond", 0, 59, n), clampProp(e, "isoMillisecond", 0, 999, n), clampProp(e, "isoMicrosecond", 0, 999, n), clampProp(e, "isoNanosecond", 0, 999, n)]);
4590
4591
  }
4591
4592
  function H(e) {
4592
- return void 0 === e ? 0 : ua(de(e));
4593
+ return undefined === e ? 0 : ua(de(e));
4593
4594
  }
4594
4595
  function wn(e) {
4595
4596
  let n = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
@@ -4621,7 +4622,7 @@ function refineRoundingOptions(e) {
4621
4622
  let o = parseRoundingIncInteger(e = normalizeOptionsOrString(e, Hi));
4622
4623
  const r = ha(e, 7);
4623
4624
  let i = aa(e, n);
4624
- return i = requirePropDefined(Hi, i), o = refineRoundingInc(o, i, void 0, t), [i, o, r];
4625
+ return i = requirePropDefined(Hi, i), o = refineRoundingInc(o, i, undefined, t), [i, o, r];
4625
4626
  }
4626
4627
  function refineDateDisplayOptions(e) {
4627
4628
  return da(normalizeOptions(e));
@@ -4635,11 +4636,11 @@ function refineTimeDisplayTuple(e) {
4635
4636
  return [ha(e, 4), ...refineSmallestUnitAndSubsecDigits(aa(e, n), t)];
4636
4637
  }
4637
4638
  function refineSmallestUnitAndSubsecDigits(e, n) {
4638
- return null != e ? [Xr[e], e < 4 ? 9 - 3 * e : -1] : [void 0 === n ? 1 : 10 ** (9 - n), n];
4639
+ return null != e ? [Xr[e], e < 4 ? 9 - 3 * e : -1] : [undefined === n ? 1 : 10 ** (9 - n), n];
4639
4640
  }
4640
4641
  function parseRoundingIncInteger(e) {
4641
4642
  const n = e[_i];
4642
- return void 0 === n ? 1 : toInteger(n, _i);
4643
+ return undefined === n ? 1 : toInteger(n, _i);
4643
4644
  }
4644
4645
  function refineRoundingInc(e, n, t, o) {
4645
4646
  const r = o ? Qr : Xr[n + 1];
@@ -4655,7 +4656,7 @@ function refineRoundingInc(e, n, t, o) {
4655
4656
  }
4656
4657
  function refineSubsecDigits(e) {
4657
4658
  let n = e[Ji];
4658
- if (void 0 !== n) {
4659
+ if (undefined !== n) {
4659
4660
  if ("number" != typeof n) {
4660
4661
  if ("auto" === toString(n)) {
4661
4662
  return;
@@ -4667,7 +4668,7 @@ function refineSubsecDigits(e) {
4667
4668
  return n;
4668
4669
  }
4669
4670
  function normalizeOptions(e) {
4670
- return void 0 === e ? {} : de(e);
4671
+ return undefined === e ? {} : de(e);
4671
4672
  }
4672
4673
  function normalizeOptionsOrString(e, n) {
4673
4674
  return "string" == typeof e ? {
@@ -4675,7 +4676,7 @@ function normalizeOptionsOrString(e, n) {
4675
4676
  } : de(e);
4676
4677
  }
4677
4678
  function U(e) {
4678
- if (void 0 !== e) {
4679
+ if (undefined !== e) {
4679
4680
  if (z(e)) {
4680
4681
  return Object.assign(Object.create(null), e);
4681
4682
  }
@@ -4692,14 +4693,14 @@ function refineUnitOption(e, n) {
4692
4693
  let o = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
4693
4694
  let r = arguments.length > 4 ? arguments[4] : undefined;
4694
4695
  let i = n[e];
4695
- if (void 0 === i) {
4696
- return r ? o : void 0;
4696
+ if (undefined === i) {
4697
+ return r ? o : undefined;
4697
4698
  }
4698
4699
  if (i = toString(i), "auto" === i) {
4699
4700
  return r ? o : null;
4700
4701
  }
4701
4702
  let a = $r[i];
4702
- if (void 0 === a && (a = Ei[i]), void 0 === a) {
4703
+ if (undefined === a && (a = Ei[i]), undefined === a) {
4703
4704
  throw new RangeError(invalidChoice(e, i, $r));
4704
4705
  }
4705
4706
  return clampEntity(e, a, o, t, 1, Et), a;
@@ -4707,12 +4708,12 @@ function refineUnitOption(e, n) {
4707
4708
  function refineChoiceOption(e, n, t) {
4708
4709
  let o = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
4709
4710
  const r = t[e];
4710
- if (void 0 === r) {
4711
+ if (undefined === r) {
4711
4712
  return o;
4712
4713
  }
4713
4714
  const i = toString(r),
4714
4715
  a = n[i];
4715
- if (void 0 === a) {
4716
+ if (undefined === a) {
4716
4717
  throw new RangeError(invalidChoice(e, i, n));
4717
4718
  }
4718
4719
  return a;
@@ -5031,7 +5032,7 @@ function me(e, n, t, o) {
5031
5032
  const n = refineTimeDisplayTuple(e = normalizeOptions(e));
5032
5033
  return [e.timeZone, ...n];
5033
5034
  })(o),
5034
- c = void 0 !== r;
5035
+ c = undefined !== r;
5035
5036
  return ((e, n, t, o, r, i) => {
5036
5037
  t = roundBigNanoByInc(t, r, o, 1);
5037
5038
  const a = n.getOffsetNanosecondsFor(t);
@@ -5160,7 +5161,7 @@ function formatCalendarId(e, n) {
5160
5161
  }
5161
5162
  function formatSubsecNano(e, n) {
5162
5163
  let t = padNumber(9, e);
5163
- return t = void 0 === n ? t.replace(Na, "") : t.slice(0, n), t ? "." + t : "";
5164
+ return t = undefined === n ? t.replace(Na, "") : t.slice(0, n), t ? "." + t : "";
5164
5165
  }
5165
5166
  function getSignStr(e) {
5166
5167
  return e < 0 ? "-" : "+";
@@ -5196,11 +5197,11 @@ function getMatchingInstantFor(e, n, t) {
5196
5197
  let r = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
5197
5198
  let i = arguments.length > 5 ? arguments[5] : undefined;
5198
5199
  let a = arguments.length > 6 ? arguments[6] : undefined;
5199
- if (void 0 !== t && 1 === o && (1 === o || a)) {
5200
+ if (undefined !== t && 1 === o && (1 === o || a)) {
5200
5201
  return isoToEpochNanoWithOffset(n, t);
5201
5202
  }
5202
5203
  const s = e.getPossibleInstantsFor(n);
5203
- if (void 0 !== t && 3 !== o) {
5204
+ if (undefined !== t && 3 !== o) {
5204
5205
  const e = ((e, n, t, o) => {
5205
5206
  const r = isoToEpochNano(n);
5206
5207
  o && (t = roundToMinute(t));
@@ -5211,7 +5212,7 @@ function getMatchingInstantFor(e, n, t) {
5211
5212
  }
5212
5213
  }
5213
5214
  })(s, n, t, i);
5214
- if (void 0 !== e) {
5215
+ if (undefined !== e) {
5215
5216
  return e;
5216
5217
  }
5217
5218
  if (0 === o) {
@@ -5234,7 +5235,7 @@ function we(e, n) {
5234
5235
  }
5235
5236
  const r = isoToEpochNano(n),
5236
5237
  i = ((e, n) => {
5237
- const t = e.getOffsetNanosecondsFor(moveBigNano(n, -Qr));
5238
+ const t = e.getOffsetNanosecondsFor(moveBigNano(n, -864e11));
5238
5239
  return ne(e.getOffsetNanosecondsFor(moveBigNano(n, Qr)) - t);
5239
5240
  })(e, r),
5240
5241
  a = i * (2 === t ? -1 : 1);
@@ -5406,7 +5407,7 @@ function Gt(e, n, t, o, r) {
5406
5407
  let i = parseRoundingIncInteger(e);
5407
5408
  const a = ha(e, 7);
5408
5409
  let s = aa(e);
5409
- if (void 0 === o && void 0 === s) {
5410
+ if (undefined === o && undefined === s) {
5410
5411
  throw new RangeError(Ur);
5411
5412
  }
5412
5413
  return null == s && (s = 0), null == o && (o = Math.max(s, n)), checkLargestSmallestUnit(o, s), i = refineRoundingInc(i, s, 1), [o, s, i, a, r];
@@ -5469,7 +5470,7 @@ function computeDurationSign(e) {
5469
5470
  }
5470
5471
  function checkDurationUnits(e) {
5471
5472
  for (const n of vi) {
5472
- clampEntity(n, e[n], -ya, ya, 1);
5473
+ clampEntity(n, e[n], -4294967295, ya, 1);
5473
5474
  }
5474
5475
  return checkDurationTimeUnit(oe(durationFieldsToBigNano(e), _r)), e;
5475
5476
  }
@@ -5532,7 +5533,7 @@ function Xt(e) {
5532
5533
  throw new RangeError(failedParse(e));
5533
5534
  }
5534
5535
  if (n.timeZone) {
5535
- return finalizeZonedDateTime(n, n.offset ? parseOffsetNano(n.offset) : void 0);
5536
+ return finalizeZonedDateTime(n, n.offset ? parseOffsetNano(n.offset) : undefined);
5536
5537
  }
5537
5538
  if (n.m) {
5538
5539
  throw new RangeError(failedParse(e));
@@ -5547,13 +5548,13 @@ function Mn(e, n) {
5547
5548
  const {
5548
5549
  offset: o
5549
5550
  } = t,
5550
- r = o ? parseOffsetNano(o) : void 0,
5551
+ r = o ? parseOffsetNano(o) : undefined,
5551
5552
  [, i, a] = wn(n);
5552
5553
  return finalizeZonedDateTime(t, r, i, a);
5553
5554
  }
5554
5555
  function parseOffsetNano(e) {
5555
5556
  const n = parseOffsetNanoMaybe(e);
5556
- if (void 0 === n) {
5557
+ if (undefined === n) {
5557
5558
  throw new RangeError(failedParse(e));
5558
5559
  }
5559
5560
  return n;
@@ -5604,7 +5605,7 @@ function ze(e) {
5604
5605
  let n,
5605
5606
  t = (e => {
5606
5607
  const n = Ca.exec(e);
5607
- return n ? (organizeAnnotationParts(n[10]), organizeTimeParts(n)) : void 0;
5608
+ return n ? (organizeAnnotationParts(n[10]), organizeTimeParts(n)) : undefined;
5608
5609
  })(m(e));
5609
5610
  if (!t) {
5610
5611
  if (t = parseDateTimeLike(e), !t) {
@@ -5633,7 +5634,7 @@ function Kt(e) {
5633
5634
  function parseUnit(e, r, i) {
5634
5635
  let a = 0,
5635
5636
  s = 0;
5636
- if (i && ([a, o] = divModFloor(o, Xr[i])), void 0 !== e) {
5637
+ if (i && ([a, o] = divModFloor(o, Xr[i])), undefined !== e) {
5637
5638
  if (t) {
5638
5639
  throw new RangeError(invalidSubstring(e));
5639
5640
  }
@@ -5658,7 +5659,7 @@ function Kt(e) {
5658
5659
  throw new RangeError(noValidFields(F));
5659
5660
  }
5660
5661
  return parseSign(e[1]) < 0 && (r = negateDurationFields(r)), r;
5661
- })(n) : void 0;
5662
+ })(n) : undefined;
5662
5663
  })(m(e));
5663
5664
  if (!n) {
5664
5665
  throw new RangeError(failedParse(e));
@@ -5705,9 +5706,9 @@ function parseDateTimeLike(e) {
5705
5706
  ...organizeAnnotationParts(e[16]),
5706
5707
  p: Boolean(e[6]),
5707
5708
  m: t,
5708
- offset: t ? void 0 : n
5709
+ offset: t ? undefined : n
5709
5710
  };
5710
- })(n) : void 0;
5711
+ })(n) : undefined;
5711
5712
  }
5712
5713
  function parseYearMonthOnly(e) {
5713
5714
  const n = Ba.exec(e);
@@ -5716,7 +5717,7 @@ function parseYearMonthOnly(e) {
5716
5717
  isoMonth: parseInt(e[4]),
5717
5718
  isoDay: 1,
5718
5719
  ...organizeAnnotationParts(e[5])
5719
- }))(n) : void 0;
5720
+ }))(n) : undefined;
5720
5721
  }
5721
5722
  function parseMonthDayOnly(e) {
5722
5723
  const n = ka.exec(e);
@@ -5725,7 +5726,7 @@ function parseMonthDayOnly(e) {
5725
5726
  isoMonth: parseInt(e[1]),
5726
5727
  isoDay: parseInt(e[2]),
5727
5728
  ...organizeAnnotationParts(e[3])
5728
- }))(n) : void 0;
5729
+ }))(n) : undefined;
5729
5730
  }
5730
5731
  function parseOffsetNanoMaybe(e, n) {
5731
5732
  const t = Za.exec(e);
@@ -5735,7 +5736,7 @@ function parseOffsetNanoMaybe(e, n) {
5735
5736
  throw new RangeError(invalidSubstring(t));
5736
5737
  }
5737
5738
  return ae((parseInt0(e[2]) * Kr + parseInt0(e[3]) * Jr + parseInt0(e[4]) * _r + parseSubsecNano(e[5] || "")) * parseSign(e[1]));
5738
- })(t, n) : void 0;
5739
+ })(t, n) : undefined;
5739
5740
  }
5740
5741
  function organizeIsoYearParts(e) {
5741
5742
  const n = parseSign(e[1]),
@@ -5791,7 +5792,7 @@ function parseSign(e) {
5791
5792
  return e && "+" !== e ? -1 : 1;
5792
5793
  }
5793
5794
  function parseInt0(e) {
5794
- return void 0 === e ? 0 : parseInt(e);
5795
+ return undefined === e ? 0 : parseInt(e);
5795
5796
  }
5796
5797
  function Me(e) {
5797
5798
  return ye(m(e));
@@ -5811,7 +5812,7 @@ function getTimeZoneAtomic(e) {
5811
5812
  }
5812
5813
  function getTimeZoneEssence(e) {
5813
5814
  const n = parseOffsetNanoMaybe(e = e.toUpperCase(), 1);
5814
- return void 0 !== n ? n : e !== Ta ? qa(e) : void 0;
5815
+ return undefined !== n ? n : e !== Ta ? qa(e) : undefined;
5815
5816
  }
5816
5817
  function Ze(e, n) {
5817
5818
  return te(e.epochNanoseconds, n.epochNanoseconds);
@@ -6093,7 +6094,7 @@ function parseIntlYear(e, n) {
6093
6094
  r = parseIntlPartsYear(e);
6094
6095
  if (e.era) {
6095
6096
  const i = Di[n];
6096
- void 0 !== i && (t = "islamic" === n ? "ah" : e.era.normalize("NFD").toLowerCase().replace(/[^a-z0-9]/g, ""), "bc" === t || "b" === t ? t = "bce" : "ad" !== t && "a" !== t || (t = "ce"), o = r, r = eraYearToYear(o, i[t] || 0));
6097
+ undefined !== i && (t = "islamic" === n ? "ah" : e.era.normalize("NFD").toLowerCase().replace(/[^a-z0-9]/g, ""), "bc" === t || "b" === t ? t = "bce" : "ad" !== t && "a" !== t || (t = "ce"), o = r, r = eraYearToYear(o, i[t] || 0));
6097
6098
  }
6098
6099
  return {
6099
6100
  era: t,
@@ -6202,7 +6203,7 @@ function getCalendarIdBase(e) {
6202
6203
  }
6203
6204
  function Qt(e, n, t, o) {
6204
6205
  const r = refineCalendarFields(t, o, en, [], ri);
6205
- if (void 0 !== r.timeZone) {
6206
+ if (undefined !== r.timeZone) {
6206
6207
  const o = t.dateFromFields(r),
6207
6208
  i = refineTimeBag(r),
6208
6209
  a = e(r.timeZone);
@@ -6210,7 +6211,7 @@ function Qt(e, n, t, o) {
6210
6211
  epochNanoseconds: getMatchingInstantFor(n(a), {
6211
6212
  ...o,
6212
6213
  ...i
6213
- }, void 0 !== r.offset ? parseOffsetNano(r.offset) : void 0),
6214
+ }, undefined !== r.offset ? parseOffsetNano(r.offset) : undefined),
6214
6215
  timeZone: a
6215
6216
  };
6216
6217
  }
@@ -6228,7 +6229,7 @@ function jn(e, n, t, o, r, i) {
6228
6229
  return Yn(getMatchingInstantFor(n(s), {
6229
6230
  ...f,
6230
6231
  ...d
6231
- }, void 0 !== a.offset ? parseOffsetNano(a.offset) : void 0, u, l), s, o);
6232
+ }, undefined !== a.offset ? parseOffsetNano(a.offset) : undefined, u, l), s, o);
6232
6233
  }
6233
6234
  function Pt(e, n, t) {
6234
6235
  const o = refineCalendarFields(e, n, en, [], w),
@@ -6250,7 +6251,7 @@ function nt(e, n, t, o) {
6250
6251
  function K(e, n, t, o) {
6251
6252
  let r = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
6252
6253
  const i = refineCalendarFields(e, t, en, r);
6253
- return n && void 0 !== i.month && void 0 === i.monthCode && void 0 === i.year && (i.year = ji), e.monthDayFromFields(i, o);
6254
+ return n && undefined !== i.month && undefined === i.monthCode && undefined === i.year && (i.year = ji), e.monthDayFromFields(i, o);
6254
6255
  }
6255
6256
  function Ue(e, n) {
6256
6257
  const t = H(n);
@@ -6281,7 +6282,7 @@ function refineFields(e, n, t) {
6281
6282
  throw new RangeError(tn(o));
6282
6283
  }
6283
6284
  let n = e[o];
6284
- if (void 0 !== n) {
6285
+ if (undefined !== n) {
6285
6286
  a = 1, Ga[o] && (n = Ga[o](n, o)), r[o] = n;
6286
6287
  } else if (t) {
6287
6288
  if (t.includes(o)) {
@@ -6393,23 +6394,23 @@ function refineYear(e, n) {
6393
6394
  year: r
6394
6395
  } = n;
6395
6396
  const i = getCalendarEraOrigins(e);
6396
- if (void 0 !== t || void 0 !== o) {
6397
- if (void 0 === t || void 0 === o) {
6397
+ if (undefined !== t || undefined !== o) {
6398
+ if (undefined === t || undefined === o) {
6398
6399
  throw new TypeError(Dr);
6399
6400
  }
6400
6401
  if (!i) {
6401
6402
  throw new RangeError(gr);
6402
6403
  }
6403
6404
  const e = i[t];
6404
- if (void 0 === e) {
6405
+ if (undefined === e) {
6405
6406
  throw new RangeError(invalidEra(t));
6406
6407
  }
6407
6408
  const n = eraYearToYear(o, e);
6408
- if (void 0 !== r && r !== n) {
6409
+ if (undefined !== r && r !== n) {
6409
6410
  throw new RangeError(Ir);
6410
6411
  }
6411
6412
  r = n;
6412
- } else if (void 0 === r) {
6413
+ } else if (undefined === r) {
6413
6414
  throw new TypeError(missingYear(i));
6414
6415
  }
6415
6416
  return r;
@@ -6419,21 +6420,21 @@ function refineMonth(e, n, t, o) {
6419
6420
  month: r,
6420
6421
  monthCode: i
6421
6422
  } = n;
6422
- if (void 0 !== i) {
6423
+ if (undefined !== i) {
6423
6424
  const n = ((e, n, t, o) => {
6424
6425
  const r = e.U(t),
6425
6426
  [i, a] = parseMonthCode(n);
6426
6427
  let s = monthCodeNumberToMonth(i, a, r);
6427
6428
  if (a) {
6428
6429
  const n = getCalendarLeapMonthMeta(e);
6429
- if (void 0 === n) {
6430
+ if (undefined === n) {
6430
6431
  throw new RangeError(Pr);
6431
6432
  }
6432
6433
  if (n > 0) {
6433
6434
  if (s > n) {
6434
6435
  throw new RangeError(Pr);
6435
6436
  }
6436
- if (void 0 === r) {
6437
+ if (undefined === r) {
6437
6438
  if (1 === o) {
6438
6439
  throw new RangeError(Pr);
6439
6440
  }
@@ -6443,18 +6444,18 @@ function refineMonth(e, n, t, o) {
6443
6444
  if (s !== -n) {
6444
6445
  throw new RangeError(Pr);
6445
6446
  }
6446
- if (void 0 === r && 1 === o) {
6447
+ if (undefined === r && 1 === o) {
6447
6448
  throw new RangeError(Pr);
6448
6449
  }
6449
6450
  }
6450
6451
  }
6451
6452
  return s;
6452
6453
  })(e, i, t, o);
6453
- if (void 0 !== r && r !== n) {
6454
+ if (undefined !== r && r !== n) {
6454
6455
  throw new RangeError(Mr);
6455
6456
  }
6456
6457
  r = n, o = 1;
6457
- } else if (void 0 === r) {
6458
+ } else if (undefined === r) {
6458
6459
  throw new TypeError(Nr);
6459
6460
  }
6460
6461
  return clampEntity("month", r, 1, e.L(t), o);
@@ -6466,7 +6467,7 @@ function spliceFields(e, n, t, o) {
6466
6467
  let r = 0;
6467
6468
  const i = [];
6468
6469
  for (const e of t) {
6469
- void 0 !== n[e] ? r = 1 : i.push(e);
6470
+ undefined !== n[e] ? r = 1 : i.push(e);
6470
6471
  }
6471
6472
  if (Object.assign(e, n), r) {
6472
6473
  for (const n of o || i) {
@@ -6587,7 +6588,7 @@ function Ot(e, n, t) {
6587
6588
  function vt(e, n, t, o, r) {
6588
6589
  const i = e(r.timeZone),
6589
6590
  a = r.plainTime,
6590
- s = void 0 !== a ? n(a) : Dt;
6591
+ s = undefined !== a ? n(a) : Dt;
6591
6592
  return Yn(we(t(i), {
6592
6593
  ...o,
6593
6594
  ...s
@@ -6729,7 +6730,7 @@ function e(e) {
6729
6730
  }
6730
6731
  function qn(e, n, t, o) {
6731
6732
  if (t = o(t), e) {
6732
- if (void 0 !== t.timeZone) {
6733
+ if (undefined !== t.timeZone) {
6733
6734
  throw new TypeError(Lr);
6734
6735
  }
6735
6736
  t.timeZone = e;
@@ -6922,7 +6923,7 @@ const expectedInteger = (e, n) => `Non-integer ${e}: ${n}`,
6922
6923
  Ri = 1e8,
6923
6924
  zi = Ri * Gr,
6924
6925
  qi = [Ri, 0],
6925
- Ui = [-Ri, 0],
6926
+ Ui = [-1e8, 0],
6926
6927
  Ai = 275760,
6927
6928
  Li = -271821,
6928
6929
  Wi = 1970,
@@ -7032,7 +7033,7 @@ class IntlTimeZone {
7032
7033
  }
7033
7034
  function pinch(n, t, o, r) {
7034
7035
  let i, a;
7035
- for (; (void 0 === r || void 0 === (i = r < n[0] ? t : r >= n[1] ? o : void 0)) && (a = n[1] - n[0]);) {
7036
+ for (; (undefined === r || undefined === (i = r < n[0] ? t : r >= n[1] ? o : undefined)) && (a = n[1] - n[0]);) {
7036
7037
  const t = n[0] + Math.floor(a / 2);
7037
7038
  e(t) === o ? n[1] = t : n[0] = t + 1;
7038
7039
  }
@@ -7091,7 +7092,7 @@ class IntlTimeZone {
7091
7092
  l(e, n) {
7092
7093
  const [t, o] = epochNanoToSecMod(e),
7093
7094
  r = this.$.l(t + (n > 0 || o ? 1 : 0), n);
7094
- if (void 0 !== r) {
7095
+ if (undefined !== r) {
7095
7096
  return he(r, _r);
7096
7097
  }
7097
7098
  }
@@ -7243,18 +7244,18 @@ const Pa = "([+−-])",
7243
7244
  month: a
7244
7245
  } = e;
7245
7246
  let s, c, u, l, f;
7246
- if (void 0 !== r) {
7247
+ if (undefined !== r) {
7247
7248
  [s, c] = parseMonthCode(r), f = getDefinedProp(e, "day");
7248
7249
  const n = this.N(s, c, f);
7249
7250
  if (!n) {
7250
7251
  throw new RangeError(yr);
7251
7252
  }
7252
- if ([u, l] = n, void 0 !== a && a !== l) {
7253
+ if ([u, l] = n, undefined !== a && a !== l) {
7253
7254
  throw new RangeError(Mr);
7254
7255
  }
7255
- o && (l = clampEntity("month", l, 1, xi, 1), f = clampEntity("day", f, 1, computeIsoDaysInMonth(void 0 !== i ? i : u, l), t));
7256
+ o && (l = clampEntity("month", l, 1, xi, 1), f = clampEntity("day", f, 1, computeIsoDaysInMonth(undefined !== i ? i : u, l), t));
7256
7257
  } else {
7257
- u = void 0 === i && o ? ji : refineYear(this, e), l = refineMonth(this, e, u, t), f = refineDay(this, e, l, u, t);
7258
+ u = undefined === i && o ? ji : refineYear(this, e), l = refineMonth(this, e, u, t), f = refineDay(this, e, l, u, t);
7258
7259
  const n = this.U(u);
7259
7260
  c = l === n, s = monthToMonthCodeNumber(l, n);
7260
7261
  const r = this.N(s, c, f);
@@ -7558,7 +7559,7 @@ function createProtocolValidator(e) {
7558
7559
  };
7559
7560
  }
7560
7561
  function rejectInvalidBag(e) {
7561
- if (no(e) || void 0 !== e.calendar || void 0 !== e.timeZone) {
7562
+ if (no(e) || undefined !== e.calendar || undefined !== e.timeZone) {
7562
7563
  throw new TypeError(Z);
7563
7564
  }
7564
7565
  return e;
@@ -7675,7 +7676,7 @@ function toPlainTimeSlots(e, t) {
7675
7676
  return H(t), ze(e);
7676
7677
  }
7677
7678
  function optionalToPlainTimeFields(e) {
7678
- return void 0 === e ? void 0 : toPlainTimeSlots(e);
7679
+ return undefined === e ? undefined : toPlainTimeSlots(e);
7679
7680
  }
7680
7681
  function toPlainYearMonthSlots(e, t) {
7681
7682
  if (t = U(t), z(e)) {
@@ -7741,7 +7742,7 @@ function toDurationSlots(e) {
7741
7742
  return Kt(e);
7742
7743
  }
7743
7744
  function refinePublicRelativeTo(e) {
7744
- if (void 0 !== e) {
7745
+ if (undefined !== e) {
7745
7746
  if (z(e)) {
7746
7747
  const t = no(e) || {};
7747
7748
  switch (t.branding) {
@@ -7767,7 +7768,7 @@ function extractCalendarSlotFromBag(e) {
7767
7768
  const {
7768
7769
  calendar: t
7769
7770
  } = e;
7770
- if (void 0 !== t) {
7771
+ if (undefined !== t) {
7771
7772
  return refineCalendarSlot(t);
7772
7773
  }
7773
7774
  }
@@ -10409,8 +10410,8 @@ function reformatTimeStr(timeStr, suffix, options) {
10409
10410
  var _a;
10410
10411
  if (typeof timeStr !== 'string')
10411
10412
  throw new TypeError(`Bad timeStr: ${timeStr}`);
10412
- const cc = ((_a = options === null || options === void 0 ? void 0 : options.location) === null || _a === void 0 ? void 0 : _a.getCountryCode()) || ((options === null || options === void 0 ? void 0 : options.il) ? 'IL' : 'US');
10413
- const hour12 = options === null || options === void 0 ? void 0 : options.hour12;
10413
+ const cc = ((_a = options === null || options === undefined ? undefined : options.location) === null || _a === undefined ? undefined : _a.getCountryCode()) || ((options === null || options === undefined ? undefined : options.il) ? 'IL' : 'US');
10414
+ const hour12 = options === null || options === undefined ? undefined : options.hour12;
10414
10415
  if (typeof hour12 !== 'undefined' && !hour12) {
10415
10416
  return timeStr;
10416
10417
  }
@@ -11550,7 +11551,7 @@ class Molad {
11550
11551
  */
11551
11552
  render(locale, options) {
11552
11553
  var _a;
11553
- locale = locale !== null && locale !== void 0 ? locale : Locale.getLocaleName();
11554
+ locale = locale !== null && locale !== undefined ? locale : Locale.getLocaleName();
11554
11555
  if (typeof locale === 'string') {
11555
11556
  locale = locale.toLowerCase();
11556
11557
  }
@@ -11562,7 +11563,7 @@ class Molad {
11562
11563
  const hour = this.getHour();
11563
11564
  const chalakim = this.getChalakim();
11564
11565
  const moladStr = Locale.gettext('Molad', locale);
11565
- const minutesStr = (_a = Locale.lookupTranslation('min', locale)) !== null && _a !== void 0 ? _a : 'minutes';
11566
+ const minutesStr = (_a = Locale.lookupTranslation('min', locale)) !== null && _a !== undefined ? _a : 'minutes';
11566
11567
  const chalakimStr = Locale.gettext('chalakim', locale);
11567
11568
  if (isHebrewLocale) {
11568
11569
  const ampm = getHebrewTimeOfDay(hour);
@@ -11632,7 +11633,7 @@ class OmerEvent extends Event {
11632
11633
  * @param [locale] Optional locale name (defaults to active locale).
11633
11634
  */
11634
11635
  render(locale) {
11635
- locale = locale !== null && locale !== void 0 ? locale : Locale.getLocaleName();
11636
+ locale = locale !== null && locale !== undefined ? locale : Locale.getLocaleName();
11636
11637
  if (typeof locale === 'string') {
11637
11638
  locale = locale.toLowerCase();
11638
11639
  }
@@ -11668,7 +11669,7 @@ class OmerEvent extends Event {
11668
11669
  * @param locale
11669
11670
  */
11670
11671
  getTodayIs(locale) {
11671
- locale = locale !== null && locale !== void 0 ? locale : Locale.getLocaleName();
11672
+ locale = locale !== null && locale !== undefined ? locale : Locale.getLocaleName();
11672
11673
  if (typeof locale === 'string') {
11673
11674
  locale = locale.toLowerCase();
11674
11675
  }
@@ -11686,7 +11687,7 @@ class OmerEvent extends Event {
11686
11687
 
11687
11688
  /** @private */
11688
11689
  function renderParshaName(parsha, locale) {
11689
- const locale0 = locale !== null && locale !== void 0 ? locale : Locale.getLocaleName();
11690
+ const locale0 = locale !== null && locale !== undefined ? locale : Locale.getLocaleName();
11690
11691
  let name = Locale.gettext(parsha[0], locale0);
11691
11692
  if (parsha.length === 2) {
11692
11693
  const hyphen = locale0 === 'he' ? '־' : '-';
@@ -12953,27 +12954,35 @@ const cals = new Map();
12953
12954
  class DailyLearning {
12954
12955
  /**
12955
12956
  * Register a new learning calendar.
12957
+ * @param name case insensitive
12956
12958
  */
12957
12959
  static addCalendar(name, calendar) {
12958
12960
  if (typeof calendar !== 'function') {
12959
12961
  throw new TypeError(`Invalid calendar function: ${calendar}`);
12960
12962
  }
12961
- cals.set(name, calendar);
12963
+ cals.set(name.toLowerCase(), calendar);
12962
12964
  }
12963
12965
  /**
12964
12966
  * Returns an event from daily calendar for a given date. Returns `null` if there
12965
12967
  * is no learning from this calendar on this date.
12966
- * @param name
12967
- * @param hd
12968
- * @param il
12968
+ * @param name case insensitive
12969
+ * @param hd Hebrew Date
12970
+ * @param il true for Israel, false for Diaspora
12969
12971
  */
12970
12972
  static lookup(name, hd, il) {
12971
- const fn = cals.get(name);
12973
+ const fn = cals.get(name.toLowerCase());
12972
12974
  if (typeof fn === 'function') {
12973
12975
  return fn(hd, il);
12974
12976
  }
12975
12977
  return null;
12976
12978
  }
12979
+ /**
12980
+ * Tests to see if learning calendar has been registered
12981
+ * @param name case insensitive
12982
+ */
12983
+ static has(name) {
12984
+ return cals.has(name.toLowerCase());
12985
+ }
12977
12986
  /** Returns the names of all calendars registered */
12978
12987
  static getCalendars() {
12979
12988
  return Array.from(cals.keys());
@@ -13544,6 +13553,14 @@ function warnUnrecognizedOptions(options) {
13544
13553
  unrecognizedAlreadyWarned.add(k);
13545
13554
  }
13546
13555
  }
13556
+ if (options.dailyLearning) {
13557
+ for (const k of Object.keys(options.dailyLearning)) {
13558
+ if (!unrecognizedAlreadyWarned.has(k) && !DailyLearning.has(k)) {
13559
+ console.warn(`Ignoring unrecognized DailyLearning calendar: ${k}`);
13560
+ unrecognizedAlreadyWarned.add(k);
13561
+ }
13562
+ }
13563
+ }
13547
13564
  }
13548
13565
  const israelCityOffset = {
13549
13566
  Jerusalem: 40,
@@ -13639,7 +13656,7 @@ function getMaskFromOptions(options) {
13639
13656
  if (typeof options.mask === 'number') {
13640
13657
  return setOptionsFromMask(options);
13641
13658
  }
13642
- const il = options.il || ((_a = options.location) === null || _a === void 0 ? void 0 : _a.getIsrael()) || false;
13659
+ const il = options.il || ((_a = options.location) === null || _a === undefined ? undefined : _a.getIsrael()) || false;
13643
13660
  let mask = 0;
13644
13661
  // default options
13645
13662
  if (!options.noHolidays) {
@@ -14188,6 +14205,7 @@ function isChag(date, il) {
14188
14205
 
14189
14206
  exports.AsaraBTevetEvent = AsaraBTevetEvent;
14190
14207
  exports.CandleLightingEvent = CandleLightingEvent;
14208
+ exports.ChanukahEvent = ChanukahEvent;
14191
14209
  exports.DailyLearning = DailyLearning;
14192
14210
  exports.Event = Event;
14193
14211
  exports.FastDayEvent = FastDayEvent;
@@ -14208,7 +14226,9 @@ exports.ParshaEvent = ParshaEvent;
14208
14226
  exports.RoshChodeshEvent = RoshChodeshEvent;
14209
14227
  exports.RoshHashanaEvent = RoshHashanaEvent;
14210
14228
  exports.Sedra = Sedra;
14229
+ exports.TimedChanukahEvent = TimedChanukahEvent;
14211
14230
  exports.TimedEvent = TimedEvent;
14231
+ exports.YomKippurKatanEvent = YomKippurKatanEvent;
14212
14232
  exports.Zmanim = Zmanim;
14213
14233
  exports.flags = flags;
14214
14234
  exports.gematriya = gematriya;