@hebcal/core 5.8.11 → 5.8.12

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
@@ -153,9 +153,7 @@ export type CalOptions = {
153
153
  * such as `dafYomi`, `mishnaYomi`, `nachYomi` with value `true`. For `yerushalmi`
154
154
  * the value should be a `number` for edition (`1` for Vilna, `2` for Schottenstein).
155
155
  */
156
- dailyLearning?: {
157
- [x: string]: DailyLearningValue;
158
- };
156
+ dailyLearning?: Record<string, DailyLearningValue>;
159
157
  /**
160
158
  * Yizkor (Hebrew: יִזְכּוֹר) is an Ashkenazi Jewish memorial prayer service
161
159
  * for the dead. Yizkor is recited in synagogue as part of the service
@@ -8,16 +8,22 @@ import { Event } from './event';
8
8
  export declare class DailyLearning {
9
9
  /**
10
10
  * Register a new learning calendar.
11
+ * @param name case insensitive
11
12
  */
12
13
  static addCalendar(name: string, calendar: Function): void;
13
14
  /**
14
15
  * Returns an event from daily calendar for a given date. Returns `null` if there
15
16
  * is no learning from this calendar on this date.
16
- * @param name
17
- * @param hd
18
- * @param il
17
+ * @param name case insensitive
18
+ * @param hd Hebrew Date
19
+ * @param il true for Israel, false for Diaspora
19
20
  */
20
21
  static lookup(name: string, hd: HDate, il: boolean): Event | null;
22
+ /**
23
+ * Tests to see if learning calendar has been registered
24
+ * @param name case insensitive
25
+ */
26
+ static has(name: string): boolean;
21
27
  /** Returns the names of all calendars registered */
22
28
  static getCalendars(): string[];
23
29
  }
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  /** @private */
3
3
  const cals = new Map();
4
4
  /**
@@ -9,27 +9,35 @@ const cals = new Map();
9
9
  class DailyLearning {
10
10
  /**
11
11
  * Register a new learning calendar.
12
+ * @param name case insensitive
12
13
  */
13
14
  static addCalendar(name, calendar) {
14
15
  if (typeof calendar !== 'function') {
15
16
  throw new TypeError(`Invalid calendar function: ${calendar}`);
16
17
  }
17
- cals.set(name, calendar);
18
+ cals.set(name.toLowerCase(), calendar);
18
19
  }
19
20
  /**
20
21
  * Returns an event from daily calendar for a given date. Returns `null` if there
21
22
  * is no learning from this calendar on this date.
22
- * @param name
23
- * @param hd
24
- * @param il
23
+ * @param name case insensitive
24
+ * @param hd Hebrew Date
25
+ * @param il true for Israel, false for Diaspora
25
26
  */
26
27
  static lookup(name, hd, il) {
27
- const fn = cals.get(name);
28
+ const fn = cals.get(name.toLowerCase());
28
29
  if (typeof fn === 'function') {
29
30
  return fn(hd, il);
30
31
  }
31
32
  return null;
32
33
  }
34
+ /**
35
+ * Tests to see if learning calendar has been registered
36
+ * @param name case insensitive
37
+ */
38
+ static has(name) {
39
+ return cals.has(name);
40
+ }
33
41
  /** Returns the names of all calendars registered */
34
42
  static getCalendars() {
35
43
  return Array.from(cals.keys());
@@ -1 +1 @@
1
- {"version":3,"file":"DailyLearning.js","sources":["../../../src/DailyLearning.ts"],"sourcesContent":["import {HDate} from '@hebcal/hdate';\nimport {Event} from './event';\n\n/** @private */\nconst cals = new Map<string, Function>();\n\n/**\n * Plug-ins for daily learning calendars such as Daf Yomi, Mishna Yomi, Nach Yomi, etc.\n *\n * Learning schedules are provided by the `@hebcal/learning` package.\n */\nexport class DailyLearning {\n /**\n * Register a new learning calendar.\n */\n static addCalendar(name: string, calendar: Function) {\n if (typeof calendar !== 'function') {\n throw new TypeError(`Invalid calendar function: ${calendar}`);\n }\n cals.set(name, calendar);\n }\n\n /**\n * Returns an event from daily calendar for a given date. Returns `null` if there\n * is no learning from this calendar on this date.\n * @param name\n * @param hd\n * @param il\n */\n static lookup(name: string, hd: HDate, il: boolean): Event | null {\n const fn = cals.get(name);\n if (typeof fn === 'function') {\n return fn(hd, il);\n }\n return null;\n }\n\n /** Returns the names of all calendars registered */\n static getCalendars(): string[] {\n return Array.from(cals.keys());\n }\n}\n"],"names":[],"mappings":";AAGA;AACA,MAAM,IAAI,GAAG,IAAI,GAAG,EAAoB;AAExC;;;;AAIG;MACU,aAAa,CAAA;AACxB;;AAEG;AACH,IAAA,OAAO,WAAW,CAAC,IAAY,EAAE,QAAkB,EAAA;AACjD,QAAA,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;AAClC,YAAA,MAAM,IAAI,SAAS,CAAC,8BAA8B,QAAQ,CAAA,CAAE,CAAC;;AAE/D,QAAA,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC;;AAG1B;;;;;;AAMG;AACH,IAAA,OAAO,MAAM,CAAC,IAAY,EAAE,EAAS,EAAE,EAAW,EAAA;QAChD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACzB,QAAA,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE;AAC5B,YAAA,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;;AAEnB,QAAA,OAAO,IAAI;;;AAIb,IAAA,OAAO,YAAY,GAAA;QACjB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;;AAEjC;;;;"}
1
+ {"version":3,"file":"DailyLearning.js","sources":["../../../src/DailyLearning.ts"],"sourcesContent":["import {HDate} from '@hebcal/hdate';\nimport {Event} from './event';\n\n/** @private */\nconst cals = new Map<string, Function>();\n\n/**\n * Plug-ins for daily learning calendars such as Daf Yomi, Mishna Yomi, Nach Yomi, etc.\n *\n * Learning schedules are provided by the `@hebcal/learning` package.\n */\nexport class DailyLearning {\n /**\n * Register a new learning calendar.\n * @param name case insensitive\n */\n static addCalendar(name: string, calendar: Function) {\n if (typeof calendar !== 'function') {\n throw new TypeError(`Invalid calendar function: ${calendar}`);\n }\n cals.set(name.toLowerCase(), calendar);\n }\n\n /**\n * Returns an event from daily calendar for a given date. Returns `null` if there\n * is no learning from this calendar on this date.\n * @param name case insensitive\n * @param hd Hebrew Date\n * @param il true for Israel, false for Diaspora\n */\n static lookup(name: string, hd: HDate, il: boolean): Event | null {\n const fn = cals.get(name.toLowerCase());\n if (typeof fn === 'function') {\n return fn(hd, il);\n }\n return null;\n }\n\n /**\n * Tests to see if learning calendar has been registered\n * @param name case insensitive\n */\n static has(name: string): boolean {\n return cals.has(name);\n }\n\n /** Returns the names of all calendars registered */\n static getCalendars(): string[] {\n return Array.from(cals.keys());\n }\n}\n"],"names":[],"mappings":";AAGA;AACA,MAAM,IAAI,GAAG,IAAI,GAAG,EAAoB;AAExC;;;;AAIG;MACU,aAAa,CAAA;AACxB;;;AAGG;AACH,IAAA,OAAO,WAAW,CAAC,IAAY,EAAE,QAAkB,EAAA;AACjD,QAAA,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;AAClC,YAAA,MAAM,IAAI,SAAS,CAAC,8BAA8B,QAAQ,CAAA,CAAE,CAAC;;QAE/D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,QAAQ,CAAC;;AAGxC;;;;;;AAMG;AACH,IAAA,OAAO,MAAM,CAAC,IAAY,EAAE,EAAS,EAAE,EAAW,EAAA;QAChD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AACvC,QAAA,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE;AAC5B,YAAA,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;;AAEnB,QAAA,OAAO,IAAI;;AAGb;;;AAGG;IACH,OAAO,GAAG,CAAC,IAAY,EAAA;AACrB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;;;AAIvB,IAAA,OAAO,YAAY,GAAA;QACjB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;;AAEjC;;;;"}
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { Locale, gematriya, months } from '@hebcal/hdate';
3
3
  import { Event, flags } from './event.js';
4
4
  import './locale.js';
@@ -22,8 +22,8 @@ class HebrewDateEvent extends Event {
22
22
  * console.log(ev.render('he')); // 'ט״ו חֶשְׁוָן תשס״ט'
23
23
  */
24
24
  render(locale) {
25
- const locale1 = locale === null || locale === void 0 ? void 0 : locale.toLowerCase();
26
- const locale0 = locale1 !== null && locale1 !== void 0 ? locale1 : Locale.getLocaleName();
25
+ const locale1 = locale === null || locale === undefined ? undefined : locale.toLowerCase();
26
+ const locale0 = locale1 !== null && locale1 !== undefined ? locale1 : Locale.getLocaleName();
27
27
  const hd = this.getDate();
28
28
  switch (locale0) {
29
29
  case 'h':
@@ -56,8 +56,8 @@ class HebrewDateEvent extends Event {
56
56
  * console.log(ev.renderBrief('he')); // 'ט״ו חֶשְׁוָן'
57
57
  */
58
58
  renderBrief(locale) {
59
- const locale1 = locale === null || locale === void 0 ? void 0 : locale.toLowerCase();
60
- const locale0 = locale1 !== null && locale1 !== void 0 ? locale1 : Locale.getLocaleName();
59
+ const locale1 = locale === null || locale === undefined ? undefined : locale.toLowerCase();
60
+ const locale0 = locale1 !== null && locale1 !== undefined ? locale1 : Locale.getLocaleName();
61
61
  const hd = this.getDate();
62
62
  if (hd.getMonth() === months.TISHREI && hd.getDate() === 1) {
63
63
  return this.render(locale0);
@@ -1 +1 @@
1
- {"version":3,"file":"HebrewDateEvent.js","sources":["../../../src/HebrewDateEvent.ts"],"sourcesContent":["import {HDate, gematriya, months, Locale} from '@hebcal/hdate';\nimport {Event, flags} from './event';\nimport './locale'; // Adds Hebrew and Ashkenazic translations\n\n/** Daily Hebrew date (\"11th of Sivan, 5780\") */\nexport class HebrewDateEvent extends Event {\n /**\n * @param date\n */\n constructor(date: HDate) {\n super(date, date.toString(), flags.HEBREW_DATE);\n }\n /**\n * @param [locale] Optional locale name (defaults to active locale).\n * @example\n * import {HDate, HebrewDateEvent, months} from '@hebcal/core';\n *\n * const hd = new HDate(15, months.CHESHVAN, 5769);\n * const ev = new HebrewDateEvent(hd);\n * console.log(ev.render('en')); // '15th of Cheshvan, 5769'\n * console.log(ev.render('he')); // 'ט״ו חֶשְׁוָן תשס״ט'\n */\n render(locale?: string): string {\n const locale1 = locale?.toLowerCase();\n const locale0 = locale1 ?? Locale.getLocaleName();\n const hd = this.getDate();\n switch (locale0) {\n case 'h':\n case 'he':\n return hd.renderGematriya(false);\n case 'he-x-nonikud':\n return hd.renderGematriya(true);\n default:\n return hd.render(locale0, true);\n }\n }\n /**\n * @private\n * @param locale\n */\n private renderBriefHebrew(locale: string): string {\n const hd = this.getDate();\n const dd = hd.getDate();\n const mm = Locale.gettext(hd.getMonthName(), locale);\n return gematriya(dd) + ' ' + mm;\n }\n /**\n * @param [locale] Optional locale name (defaults to active locale).\n * @example\n * import {HDate, HebrewDateEvent, months} from '@hebcal/core';\n *\n * const hd = new HDate(15, months.CHESHVAN, 5769);\n * const ev = new HebrewDateEvent(hd);\n * console.log(ev.renderBrief()); // '15th of Cheshvan'\n * console.log(ev.renderBrief('he')); // 'ט״ו חֶשְׁוָן'\n */\n renderBrief(locale?: string): string {\n const locale1 = locale?.toLowerCase();\n const locale0 = locale1 ?? Locale.getLocaleName();\n const hd = this.getDate();\n if (hd.getMonth() === months.TISHREI && hd.getDate() === 1) {\n return this.render(locale0);\n }\n switch (locale0) {\n case 'h':\n case 'he':\n case 'he-x-nonikud':\n return this.renderBriefHebrew(locale0);\n default:\n return hd.render(locale0, false);\n }\n }\n}\n"],"names":[],"mappings":";;;;;AAIA;AACM,MAAO,eAAgB,SAAQ,KAAK,CAAA;AACxC;;AAEG;AACH,IAAA,WAAA,CAAY,IAAW,EAAA;AACrB,QAAA,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,WAAW,CAAC;;AAEjD;;;;;;;;;AASG;AACH,IAAA,MAAM,CAAC,MAAe,EAAA;QACpB,MAAM,OAAO,GAAG,MAAM,KAAN,IAAA,IAAA,MAAM,uBAAN,MAAM,CAAE,WAAW,EAAE;AACrC,QAAA,MAAM,OAAO,GAAG,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,KAAA,CAAA,GAAP,OAAO,GAAI,MAAM,CAAC,aAAa,EAAE;AACjD,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;QACzB,QAAQ,OAAO;AACb,YAAA,KAAK,GAAG;AACR,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC;AAClC,YAAA,KAAK,cAAc;AACjB,gBAAA,OAAO,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;AACjC,YAAA;gBACE,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC;;;AAGrC;;;AAGG;AACK,IAAA,iBAAiB,CAAC,MAAc,EAAA;AACtC,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;AACzB,QAAA,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE;AACvB,QAAA,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,EAAE,MAAM,CAAC;QACpD,OAAO,SAAS,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE;;AAEjC;;;;;;;;;AASG;AACH,IAAA,WAAW,CAAC,MAAe,EAAA;QACzB,MAAM,OAAO,GAAG,MAAM,KAAN,IAAA,IAAA,MAAM,uBAAN,MAAM,CAAE,WAAW,EAAE;AACrC,QAAA,MAAM,OAAO,GAAG,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,KAAA,CAAA,GAAP,OAAO,GAAI,MAAM,CAAC,aAAa,EAAE;AACjD,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;AACzB,QAAA,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;AAC1D,YAAA,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;;QAE7B,QAAQ,OAAO;AACb,YAAA,KAAK,GAAG;AACR,YAAA,KAAK,IAAI;AACT,YAAA,KAAK,cAAc;AACjB,gBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;AACxC,YAAA;gBACE,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC;;;AAGvC;;;;"}
1
+ {"version":3,"file":"HebrewDateEvent.js","sources":["../../../src/HebrewDateEvent.ts"],"sourcesContent":["import {HDate, gematriya, months, Locale} from '@hebcal/hdate';\nimport {Event, flags} from './event';\nimport './locale'; // Adds Hebrew and Ashkenazic translations\n\n/** Daily Hebrew date (\"11th of Sivan, 5780\") */\nexport class HebrewDateEvent extends Event {\n /**\n * @param date\n */\n constructor(date: HDate) {\n super(date, date.toString(), flags.HEBREW_DATE);\n }\n /**\n * @param [locale] Optional locale name (defaults to active locale).\n * @example\n * import {HDate, HebrewDateEvent, months} from '@hebcal/core';\n *\n * const hd = new HDate(15, months.CHESHVAN, 5769);\n * const ev = new HebrewDateEvent(hd);\n * console.log(ev.render('en')); // '15th of Cheshvan, 5769'\n * console.log(ev.render('he')); // 'ט״ו חֶשְׁוָן תשס״ט'\n */\n render(locale?: string): string {\n const locale1 = locale?.toLowerCase();\n const locale0 = locale1 ?? Locale.getLocaleName();\n const hd = this.getDate();\n switch (locale0) {\n case 'h':\n case 'he':\n return hd.renderGematriya(false);\n case 'he-x-nonikud':\n return hd.renderGematriya(true);\n default:\n return hd.render(locale0, true);\n }\n }\n /**\n * @private\n * @param locale\n */\n private renderBriefHebrew(locale: string): string {\n const hd = this.getDate();\n const dd = hd.getDate();\n const mm = Locale.gettext(hd.getMonthName(), locale);\n return gematriya(dd) + ' ' + mm;\n }\n /**\n * @param [locale] Optional locale name (defaults to active locale).\n * @example\n * import {HDate, HebrewDateEvent, months} from '@hebcal/core';\n *\n * const hd = new HDate(15, months.CHESHVAN, 5769);\n * const ev = new HebrewDateEvent(hd);\n * console.log(ev.renderBrief()); // '15th of Cheshvan'\n * console.log(ev.renderBrief('he')); // 'ט״ו חֶשְׁוָן'\n */\n renderBrief(locale?: string): string {\n const locale1 = locale?.toLowerCase();\n const locale0 = locale1 ?? Locale.getLocaleName();\n const hd = this.getDate();\n if (hd.getMonth() === months.TISHREI && hd.getDate() === 1) {\n return this.render(locale0);\n }\n switch (locale0) {\n case 'h':\n case 'he':\n case 'he-x-nonikud':\n return this.renderBriefHebrew(locale0);\n default:\n return hd.render(locale0, false);\n }\n }\n}\n"],"names":[],"mappings":";;;;;AAIA;AACM,MAAO,eAAgB,SAAQ,KAAK,CAAA;AACxC;;AAEG;AACH,IAAA,WAAA,CAAY,IAAW,EAAA;AACrB,QAAA,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,WAAW,CAAC;;AAEjD;;;;;;;;;AASG;AACH,IAAA,MAAM,CAAC,MAAe,EAAA;QACpB,MAAM,OAAO,GAAG,MAAM,KAAN,IAAA,IAAA,MAAM,6BAAN,MAAM,CAAE,WAAW,EAAE;AACrC,QAAA,MAAM,OAAO,GAAG,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,SAAA,GAAP,OAAO,GAAI,MAAM,CAAC,aAAa,EAAE;AACjD,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;QACzB,QAAQ,OAAO;AACb,YAAA,KAAK,GAAG;AACR,YAAA,KAAK,IAAI;AACP,gBAAA,OAAO,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC;AAClC,YAAA,KAAK,cAAc;AACjB,gBAAA,OAAO,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;AACjC,YAAA;gBACE,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC;;;AAGrC;;;AAGG;AACK,IAAA,iBAAiB,CAAC,MAAc,EAAA;AACtC,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;AACzB,QAAA,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE;AACvB,QAAA,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,EAAE,MAAM,CAAC;QACpD,OAAO,SAAS,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE;;AAEjC;;;;;;;;;AASG;AACH,IAAA,WAAW,CAAC,MAAe,EAAA;QACzB,MAAM,OAAO,GAAG,MAAM,KAAN,IAAA,IAAA,MAAM,6BAAN,MAAM,CAAE,WAAW,EAAE;AACrC,QAAA,MAAM,OAAO,GAAG,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,SAAA,GAAP,OAAO,GAAI,MAAM,CAAC,aAAa,EAAE;AACjD,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;AACzB,QAAA,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;AAC1D,YAAA,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;;QAE7B,QAAQ,OAAO;AACb,YAAA,KAAK,GAAG;AACR,YAAA,KAAK,IAAI;AACT,YAAA,KAAK,cAAc;AACjB,gBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;AACxC,YAAA;gBACE,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC;;;AAGvC;;;;"}
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { isoDateString, Locale } from '@hebcal/hdate';
3
3
  import { Event, flags } from './event.js';
4
4
  import { holidayDesc } from './staticHolidays.js';
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { HDate, months, Locale } from '@hebcal/hdate';
3
3
  import { Event, flags } from './event.js';
4
4
  import { Molad } from './molad.js';
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { Event, flags } from './event.js';
3
3
  import { isoDateString } from '@hebcal/hdate';
4
4
  import { renderParshaName } from './parshaName.js';
@@ -1 +1 @@
1
- {"version":3,"file":"ParshaEvent.js","sources":["../../../src/ParshaEvent.ts"],"sourcesContent":["import {Event, flags} from './event';\nimport {HDate, isoDateString} from '@hebcal/hdate';\nimport {renderParshaName} from './parshaName';\nimport './locale'; // Adds Hebrew and Ashkenazic translations\n\n/**\n * Represents one of 54 weekly Torah portions, always on a Saturday\n */\nexport class ParshaEvent extends Event {\n readonly parsha: string[];\n readonly il: boolean;\n readonly num: number | number[];\n /**\n * @param parsha - untranslated name of single or double parsha,\n * such as ['Bereshit'] or ['Achrei Mot', 'Kedoshim']\n */\n constructor(\n date: HDate,\n parsha: string[],\n il = false,\n num: number | number[] = -1\n ) {\n if (!Array.isArray(parsha) || parsha.length === 0 || parsha.length > 2) {\n throw new TypeError('Bad parsha argument');\n }\n const desc = 'Parashat ' + parsha.join('-');\n super(date, desc, flags.PARSHA_HASHAVUA);\n this.parsha = parsha;\n this.il = Boolean(il);\n this.num = num || -1;\n }\n /**\n * @param [locale] Optional locale name (i.e: `'he'`, `'fr'`). Defaults to active locale.\n */\n render(locale?: string): string {\n return renderParshaName(this.parsha, locale);\n }\n\n basename(): string {\n return this.parsha.join('-');\n }\n\n url(): string | undefined {\n const year = this.getDate().greg().getFullYear();\n if (year < 100) {\n return undefined;\n }\n const dt = this.urlDateSuffix();\n const url =\n 'https://www.hebcal.com/sedrot/' +\n this.basename().toLowerCase().replace(/'/g, '').replace(/ /g, '-') +\n '-' +\n dt;\n return this.il ? url + '?i=on' : url;\n }\n\n urlDateSuffix(): string {\n const isoDate = isoDateString(this.getDate().greg());\n return isoDate.replace(/-/g, '');\n }\n}\n"],"names":[],"mappings":";;;;;;AAKA;;AAEG;AACG,MAAO,WAAY,SAAQ,KAAK,CAAA;AAIpC;;;AAGG;IACH,WACE,CAAA,IAAW,EACX,MAAgB,EAChB,EAAE,GAAG,KAAK,EACV,GAAyB,GAAA,CAAC,CAAC,EAAA;QAE3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AACtE,YAAA,MAAM,IAAI,SAAS,CAAC,qBAAqB,CAAC;;QAE5C,MAAM,IAAI,GAAG,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QAC3C,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,eAAe,CAAC;AACxC,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AACpB,QAAA,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;AACrB,QAAA,IAAI,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;;AAEtB;;AAEG;AACH,IAAA,MAAM,CAAC,MAAe,EAAA;QACpB,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;;IAG9C,QAAQ,GAAA;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;;IAG9B,GAAG,GAAA;AACD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;AAChD,QAAA,IAAI,IAAI,GAAG,GAAG,EAAE;AACd,YAAA,OAAO,SAAS;;AAElB,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE;QAC/B,MAAM,GAAG,GACP,gCAAgC;AAChC,YAAA,IAAI,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;YAClE,GAAG;AACH,YAAA,EAAE;AACJ,QAAA,OAAO,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,OAAO,GAAG,GAAG;;IAGtC,aAAa,GAAA;AACX,QAAA,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;QACpD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;;AAEnC;;;;"}
1
+ {"version":3,"file":"ParshaEvent.js","sources":["../../../src/ParshaEvent.ts"],"sourcesContent":["import {Event, flags} from './event';\nimport {HDate, isoDateString} from '@hebcal/hdate';\nimport {renderParshaName} from './parshaName';\nimport './locale'; // Adds Hebrew and Ashkenazic translations\n\n/**\n * Represents one of 54 weekly Torah portions, always on a Saturday\n */\nexport class ParshaEvent extends Event {\n readonly parsha: string[];\n readonly il: boolean;\n readonly num: number | number[];\n /**\n * @param parsha - untranslated name of single or double parsha,\n * such as ['Bereshit'] or ['Achrei Mot', 'Kedoshim']\n */\n constructor(\n date: HDate,\n parsha: string[],\n il = false,\n num: number | number[] = -1\n ) {\n if (!Array.isArray(parsha) || parsha.length === 0 || parsha.length > 2) {\n throw new TypeError('Bad parsha argument');\n }\n const desc = 'Parashat ' + parsha.join('-');\n super(date, desc, flags.PARSHA_HASHAVUA);\n this.parsha = parsha;\n this.il = Boolean(il);\n this.num = num || -1;\n }\n /**\n * @param [locale] Optional locale name (i.e: `'he'`, `'fr'`). Defaults to active locale.\n */\n render(locale?: string): string {\n return renderParshaName(this.parsha, locale);\n }\n\n basename(): string {\n return this.parsha.join('-');\n }\n\n url(): string | undefined {\n const year = this.getDate().greg().getFullYear();\n if (year < 100) {\n return undefined;\n }\n const dt = this.urlDateSuffix();\n const url =\n 'https://www.hebcal.com/sedrot/' +\n this.basename().toLowerCase().replace(/'/g, '').replace(/ /g, '-') +\n '-' +\n dt;\n return this.il ? url + '?i=on' : url;\n }\n\n urlDateSuffix(): string {\n const isoDate = isoDateString(this.getDate().greg());\n return isoDate.replace(/-/g, '');\n }\n}\n"],"names":[],"mappings":";;;;;;AAKA;;AAEG;AACG,MAAO,WAAY,SAAQ,KAAK,CAAA;AAIpC;;;AAGG;IACH,WACE,CAAA,IAAW,EACX,MAAgB,EAChB,EAAE,GAAG,KAAK,EACV,GAAyB,GAAA,EAAE,EAAA;QAE3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AACtE,YAAA,MAAM,IAAI,SAAS,CAAC,qBAAqB,CAAC;;QAE5C,MAAM,IAAI,GAAG,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QAC3C,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,eAAe,CAAC;AACxC,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AACpB,QAAA,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;AACrB,QAAA,IAAI,CAAC,GAAG,GAAG,GAAG,IAAI,EAAE;;AAEtB;;AAEG;AACH,IAAA,MAAM,CAAC,MAAe,EAAA;QACpB,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;;IAG9C,QAAQ,GAAA;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;;IAG9B,GAAG,GAAA;AACD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;AAChD,QAAA,IAAI,IAAI,GAAG,GAAG,EAAE;AACd,YAAA,OAAO,SAAS;;AAElB,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE;QAC/B,MAAM,GAAG,GACP,gCAAgC;AAChC,YAAA,IAAI,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;YAClE,GAAG;AACH,YAAA,EAAE;AACJ,QAAA,OAAO,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,OAAO,GAAG,GAAG;;IAGtC,aAAa,GAAA;AACX,QAAA,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;QACpD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;;AAEnC;;;;"}
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { Locale } from '@hebcal/hdate';
3
3
  import { Event } from './event.js';
4
4
  import { reformatTimeStr } from './reformatTimeStr.js';
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { Locale } from '@hebcal/hdate';
3
3
  import { flags } from './event.js';
4
4
  import { HolidayEvent } from './HolidayEvent.js';
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  var poAshkenazi = { "headers": { "plural-forms": "nplurals=2; plural=(n > 1);", "language": "en_CA@ashkenazi" }, "contexts": { "": { "Shabbat": ["Shabbos"], "Achrei Mot": ["Achrei Mos"], "Bechukotai": ["Bechukosai"], "Beha'alotcha": ["Beha’aloscha"], "Bereshit": ["Bereshis"], "Chukat": ["Chukas"], "Erev Shavuot": ["Erev Shavuos"], "Erev Sukkot": ["Erev Sukkos"], "Ki Tavo": ["Ki Savo"], "Ki Teitzei": ["Ki Seitzei"], "Ki Tisa": ["Ki Sisa"], "Matot": ["Matos"], "Purim Katan": ["Purim Koton"], "Shabbat Chazon": ["Shabbos Chazon"], "Shabbat HaChodesh": ["Shabbos HaChodesh"], "Shabbat HaGadol": ["Shabbos HaGadol"], "Shabbat Nachamu": ["Shabbos Nachamu"], "Shabbat Parah": ["Shabbos Parah"], "Shabbat Shekalim": ["Shabbos Shekalim"], "Shabbat Shuva": ["Shabbos Shuvah"], "Shabbat Zachor": ["Shabbos Zachor"], "Shavuot": ["Shavuos"], "Shavuot I": ["Shavuos I"], "Shavuot II": ["Shavuos II"], "Shemot": ["Shemos"], "Shmini Atzeret": ["Shmini Atzeres"], "Simchat Torah": ["Simchas Torah"], "Sukkot": ["Sukkos"], "Sukkot I": ["Sukkos I"], "Sukkot II": ["Sukkos II"], "Sukkot II (CH''M)": ["Sukkos II (CH’’M)"], "Sukkot III (CH''M)": ["Sukkos III (CH’’M)"], "Sukkot IV (CH''M)": ["Sukkos IV (CH’’M)"], "Sukkot V (CH''M)": ["Sukkos V (CH’’M)"], "Sukkot VI (CH''M)": ["Sukkos VI (CH’’M)"], "Sukkot VII (Hoshana Raba)": ["Sukkos VII (Hoshana Raba)"], "Ta'anit Bechorot": ["Ta’anis Bechoros"], "Ta'anit Esther": ["Ta’anis Esther"], "Toldot": ["Toldos"], "Vaetchanan": ["Vaeschanan"], "Yitro": ["Yisro"], "Vezot Haberakhah": ["Vezos Haberakhah"], "Parashat": ["Parshas"], "Leil Selichot": ["Leil Selichos"], "Shabbat Mevarchim Chodesh": ["Shabbos Mevorchim Chodesh"], "Shabbat Shirah": ["Shabbos Shirah"], "Asara B'Tevet": ["Asara B’Teves"], "Alot HaShachar": ["Alos HaShachar"], "Kriat Shema, sof zeman": ["Krias Shema, sof zman"], "Tefilah, sof zeman": ["Tefilah, sof zman"], "Kriat Shema, sof zeman (MGA)": ["Krias Shema, sof zman (MGA)"], "Tefilah, sof zeman (MGA)": ["Tefilah, sof zman (MGA)"], "Chatzot HaLailah": ["Chatzos HaLailah"], "Chatzot hayom": ["Chatzos"], "Tzeit HaKochavim": ["Tzeis HaKochavim"], "Birkat Hachamah": ["Birkas Hachamah"], "Shushan Purim Katan": ["Shushan Purim Koton"] } } };
3
3
 
4
4
  export { poAshkenazi as default };
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import './locale.js';
3
3
  import { months, Locale, abs2greg, HDate } from '@hebcal/hdate';
4
4
  import { makeCandleEvent, makeFastStartEnd, makeWeekdayChanukahCandleLighting } from './candles.js';
@@ -318,6 +318,14 @@ function warnUnrecognizedOptions(options) {
318
318
  unrecognizedAlreadyWarned.add(k);
319
319
  }
320
320
  }
321
+ if (options.dailyLearning) {
322
+ for (const k of Object.keys(options.dailyLearning)) {
323
+ if (!unrecognizedAlreadyWarned.has(k) && !DailyLearning.has(k)) {
324
+ console.warn(`Ignoring unrecognized DailyLearning calendar: ${k}`);
325
+ unrecognizedAlreadyWarned.add(k);
326
+ }
327
+ }
328
+ }
321
329
  }
322
330
  const israelCityOffset = {
323
331
  Jerusalem: 40,
@@ -413,7 +421,7 @@ function getMaskFromOptions(options) {
413
421
  if (typeof options.mask === 'number') {
414
422
  return setOptionsFromMask(options);
415
423
  }
416
- const il = options.il || ((_a = options.location) === null || _a === void 0 ? void 0 : _a.getIsrael()) || false;
424
+ const il = options.il || ((_a = options.location) === null || _a === undefined ? undefined : _a.getIsrael()) || false;
417
425
  let mask = 0;
418
426
  // default options
419
427
  if (!options.noHolidays) {
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.js","sources":["../../../src/calendar.ts"],"sourcesContent":["import {Locale} from './locale';\nimport {abs2greg, HDate, months} from '@hebcal/hdate';\nimport {CalOptions, DailyLearningValue} from './CalOptions';\nimport {\n makeCandleEvent,\n makeFastStartEnd,\n makeWeekdayChanukahCandleLighting,\n} from './candles';\nimport {Event, flags} from './event';\nimport {getStartAndEnd} from './getStartAndEnd';\nimport {HebrewDateEvent} from './HebrewDateEvent';\nimport {HolidayYearMap, getHolidaysForYear_} from './holidays';\nimport {ParshaEvent} from './ParshaEvent';\nimport {Sedra, getSedra} from './sedra';\nimport {TimedEvent, HavdalahEvent} from './TimedEvent';\nimport {DailyLearning} from './DailyLearning';\nimport {HolidayEvent} from './HolidayEvent';\nimport {MevarchimChodeshEvent} from './MevarchimChodeshEvent';\nimport {MoladEvent, Molad} from './molad';\nimport {OmerEvent} from './omer';\nimport {Zmanim} from './zmanim';\nimport {Location} from './location';\n\n/**\n * Calculates holidays and other Hebrew calendar events based on {@link CalOptions}.\n *\n * Each holiday is represented by an {@link Event} object which includes a date,\n * a description, flags and optional attributes.\n * If given no options, returns holidays for the Diaspora for the current Gregorian year.\n *\n * The date range returned by this function can be controlled by:\n * * `options.year` - Gregorian (e.g. 1993) or Hebrew year (e.g. 5749)\n * * `options.isHebrewYear` - to interpret `year` as Hebrew year\n * * `options.numYears` - generate calendar for multiple years (default 1)\n * * `options.month` - Gregorian or Hebrew month (to filter results to a single month)\n *\n * Alternatively, specify start and end days with `Date` or {@link HDate} instances:\n * * `options.start` - use specific start date (requires `end` date)\n * * `options.end` - use specific end date (requires `start` date)\n *\n * Unless `options.noHolidays == true`, default holidays include:\n * * Major holidays - Rosh Hashana, Yom Kippur, Pesach, Sukkot, etc.\n * * Minor holidays - Purim, Chanukah, Tu BiShvat, Lag BaOmer, etc.\n * * Minor fasts - Ta'anit Esther, Tzom Gedaliah, etc. (unless `options.noMinorFast`)\n * * Special Shabbatot - Shabbat Shekalim, Zachor, etc. (unless `options.noSpecialShabbat`)\n * * Modern Holidays - Yom HaShoah, Yom HaAtzma'ut, etc. (unless `options.noModern`)\n * * Rosh Chodesh (unless `options.noRoshChodesh`)\n *\n * Holiday and Torah reading schedules differ between Israel and the Disapora.\n * Set `options.il=true` to use the Israeli schedule.\n *\n * Additional non-default event types can be specified:\n * * Parashat HaShavua - weekly Torah Reading on Saturdays (`options.sedrot`)\n * * Counting of the Omer (`options.omer`)\n * * Shabbat Mevarchim HaChodesh on Saturday before Rosh Chodesh (`options.shabbatMevarchim`)\n * * Molad announcement on Saturday before Rosh Chodesh (`options.molad`)\n * * Yom Kippur Katan (`options.yomKippurKatan`)\n * * Yizkor (`options.yizkor`)\n *\n * Daily Study of texts are supported by the\n * {@link https://github.com/hebcal/hebcal-learning @hebcal/learning} package,\n * for example:\n * * Babylonian Talmud Daf Yomi (`options.dailyLearning.dafYomi`)\n * * Jerusalem Talmud (Yerushalmi) Yomi (`options.dailyLearning.yerushalmi`)\n * * Mishna Yomi (`options.dailyLearning.mishnaYomi`)\n * * Nach Yomi (`options.dailyLearning.nachYomi`)\n *\n * Candle-lighting and Havdalah times are approximated using latitude and longitude\n * specified by the {@link Location} class. The `Location` class contains a small\n * database of cities with their associated geographic information and time-zone information.\n * If you ever have any doubts about Hebcal's times, consult your local halachic authority.\n * If you enter geographic coordinates above the arctic circle or antarctic circle,\n * the times are guaranteed to be wrong.\n *\n * To add candle-lighting options, set `options.candlelighting=true` and set\n * `options.location` to an instance of `Location`. By default, candle lighting\n * time is 18 minutes before sundown (40 minutes for Jerusalem,\n * 30 minutes for Haifa and Zikhron Ya'akov) and Havdalah is\n * calculated according to Tzeit Hakochavim - Nightfall (the point when 3 small stars\n * are observable in the night time sky with the naked eye). The default Havdalah\n * option (Tzeit Hakochavim) is calculated when the sun is 8.5° below the horizon.\n * These defaults can be changed using these options:\n * * `options.candleLightingMins` - minutes before sundown to light candles\n * * `options.havdalahMins` - minutes after sundown for Havdalah (typical values are 42, 50, or 72).\n * Havdalah times are suppressed when `options.havdalahMins=0`.\n * * `options.havdalahDeg` - degrees for solar depression for Havdalah.\n * Default is 8.5 degrees for 3 small stars. Use 7.083 degrees for 3 medium-sized stars.\n * Havdalah times are suppressed when `options.havdalahDeg=0`.\n *\n * If both `options.candlelighting=true` and `options.location` is specified,\n * Chanukah candle-lighting times and minor fast start/end times will also be generated.\n * Chanukah candle-lighting is at Bein HaShmashos (13.5 minutes before\n * the sun is 7.083° below the horizon in the evening)\n * on weekdays, at regular candle-lighting time on Fridays, and at regular Havdalah time on\n * Saturday night (see above).\n *\n * Minor fasts begin at Alot HaShachar (sun is 16.1° below the horizon in the morning) and\n * end when 3 medium-sized stars are observable in the night sky (sun is 7.083° below the horizon\n * in the evening).\n *\n * Two options also exist for generating an Event with the Hebrew date:\n * * `options.addHebrewDates` - print the Hebrew date for the entire date range\n * * `options.addHebrewDatesForEvents` - print the Hebrew date for dates with some events\n *\n * Lastly, translation and transliteration of event titles is controlled by\n * `options.locale` and the {@link Locale} API.\n * `@hebcal/core` supports three locales by default:\n * * `en` - default, Sephardic transliterations (e.g. \"Shabbat\")\n * * `ashkenazi` - Ashkenazi transliterations (e.g. \"Shabbos\")\n * * `he` - Hebrew (e.g. \"שַׁבָּת\")\n *\n * Additional locales (such as `ru` or `fr`) are supported by the\n * {@link https://github.com/hebcal/hebcal-locales @hebcal/locales} package\n *\n * @example\n * import {HebrewCalendar, HDate, Location, Event} from '@hebcal/core';\n * const options: CalOptions = {\n * year: 1981,\n * isHebrewYear: false,\n * candlelighting: true,\n * location: Location.lookup('San Francisco'),\n * sedrot: true,\n * omer: true,\n * };\n * const events = HebrewCalendar.calendar(options);\n * for (const ev of events) {\n * const hd = ev.getDate();\n * const date = hd.greg();\n * console.log(date.toLocaleDateString(), ev.render('en'), hd.toString());\n * }\n */\nexport function calendar(options: CalOptions = {}): Event[] {\n options = {...options}; // so we can modify freely\n checkCandleOptions(options);\n const location = (options.location = options.location || defaultLocation);\n const il = (options.il = options.il || location.getIsrael() || false);\n const hasUserMask = typeof options.mask === 'number';\n options.mask = getMaskFromOptions(options);\n if (options.ashkenazi || options.locale) {\n if (options.locale && typeof options.locale !== 'string') {\n throw new TypeError(`Invalid options.locale: ${options.locale}`);\n }\n const locale = options.ashkenazi ? 'ashkenazi' : (options.locale as string);\n const translationObj = Locale.useLocale(locale);\n if (!translationObj) {\n throw new TypeError(\n `Locale '${locale}' not found; did you forget to import @hebcal/locales?`\n );\n }\n } else {\n Locale.useLocale('en');\n }\n\n const evts: Event[] = [];\n let sedra: Sedra | undefined;\n let holidaysYear: HolidayYearMap | undefined;\n let beginOmer = -1;\n let endOmer = -1;\n let currentYear = -1;\n const startAndEnd = getStartAndEnd(options);\n warnUnrecognizedOptions(options);\n const startAbs = startAndEnd[0];\n const endAbs = startAndEnd[1];\n const startGreg = abs2greg(startAbs);\n if (startGreg.getFullYear() < 100) {\n options.candlelighting = false;\n }\n for (let abs = startAbs; abs <= endAbs; abs++) {\n const hd = new HDate(abs);\n const hyear = hd.getFullYear();\n if (hyear !== currentYear) {\n currentYear = hyear;\n holidaysYear = getHolidaysForYear_(currentYear);\n if (options.sedrot) {\n sedra = getSedra(currentYear, il);\n }\n if (options.omer) {\n beginOmer = HDate.hebrew2abs(currentYear, NISAN, 16);\n endOmer = HDate.hebrew2abs(currentYear, SIVAN, 5);\n }\n }\n const prevEventsLength = evts.length;\n const dow = hd.getDay();\n const isFriday = dow === FRI;\n const isSaturday = dow === SAT;\n let candlesEv: TimedEvent | undefined;\n const holidays = holidaysYear!.get(hd.toString()) || [];\n for (const ev of holidays) {\n candlesEv = appendHolidayAndRelated(\n candlesEv,\n evts,\n ev,\n options,\n isFriday,\n isSaturday,\n hasUserMask\n );\n }\n if (options.sedrot && isSaturday) {\n const parsha0 = sedra!.lookup(abs);\n if (!parsha0.chag) {\n evts.push(new ParshaEvent(hd, parsha0.parsha, il, parsha0.num));\n }\n }\n if (options.yizkor) {\n const mm = hd.getMonth();\n const dd = hd.getDate();\n if (\n (mm === months.TISHREI && (dd === 10 || dd === 22)) ||\n (mm === NISAN && dd === (il ? 21 : 22)) ||\n (mm === SIVAN && dd === (il ? 6 : 7))\n ) {\n const linkedEvent = holidays.filter(ev => ev.observedIn(il))[0];\n const ev = new Event(hd, 'Yizkor', flags.YIZKOR, {\n emoji: '🕯️',\n linkedEvent,\n });\n evts.push(ev);\n }\n }\n const dailyLearning = options.dailyLearning;\n if (typeof dailyLearning === 'object') {\n const events = makeDailyLearning(hd, dailyLearning, il);\n evts.push(...events);\n }\n if (options.omer && abs >= beginOmer && abs <= endOmer) {\n const omer = abs - beginOmer + 1;\n const omerEv = makeOmerEvent(hd, omer, options);\n evts.push(omerEv);\n }\n if (isSaturday && (options.molad || options.shabbatMevarchim)) {\n const events = makeMoladAndMevarchimChodesh(hd, options);\n evts.push(...events);\n }\n if (!candlesEv && options.candlelighting && (isFriday || isSaturday)) {\n candlesEv = makeCandleEvent(undefined, hd, options, isFriday, isSaturday);\n if (isFriday && candlesEv && sedra) {\n const parsha = sedra.lookup(abs);\n const pe = new ParshaEvent(hd.next(), parsha.parsha, il, parsha.num);\n candlesEv.memo = pe.render(options.locale);\n }\n }\n // suppress Havdalah when options.havdalahMins=0 or options.havdalahDeg=0\n if (\n candlesEv instanceof HavdalahEvent &&\n (options.havdalahMins === 0 || options.havdalahDeg === 0)\n ) {\n candlesEv = undefined;\n }\n if (candlesEv) {\n evts.push(candlesEv);\n }\n if (\n options.addHebrewDates ||\n (options.addHebrewDatesForEvents && prevEventsLength !== evts.length)\n ) {\n const e2 = new HebrewDateEvent(hd);\n if (prevEventsLength === evts.length) {\n evts.push(e2);\n } else {\n evts.splice(prevEventsLength, 0, e2);\n }\n }\n }\n return evts;\n}\n\nconst FRI = 5;\nconst SAT = 6;\n\nconst NISAN = months.NISAN;\nconst SIVAN = months.SIVAN;\nconst ELUL = months.ELUL;\n\nconst LIGHT_CANDLES = flags.LIGHT_CANDLES;\nconst YOM_TOV_ENDS = flags.YOM_TOV_ENDS;\nconst CHUL_ONLY = flags.CHUL_ONLY;\nconst IL_ONLY = flags.IL_ONLY;\nconst LIGHT_CANDLES_TZEIS = flags.LIGHT_CANDLES_TZEIS;\nconst CHANUKAH_CANDLES = flags.CHANUKAH_CANDLES;\nconst MINOR_FAST = flags.MINOR_FAST;\nconst SPECIAL_SHABBAT = flags.SPECIAL_SHABBAT;\nconst MODERN_HOLIDAY = flags.MODERN_HOLIDAY;\nconst MAJOR_FAST = flags.MAJOR_FAST;\nconst ROSH_CHODESH = flags.ROSH_CHODESH;\nconst PARSHA_HASHAVUA = flags.PARSHA_HASHAVUA;\nconst DAF_YOMI = flags.DAF_YOMI;\nconst MISHNA_YOMI = flags.MISHNA_YOMI;\nconst NACH_YOMI = flags.NACH_YOMI;\nconst YERUSHALMI_YOMI = flags.YERUSHALMI_YOMI;\nconst OMER_COUNT = flags.OMER_COUNT;\nconst SHABBAT_MEVARCHIM = flags.SHABBAT_MEVARCHIM;\nconst MINOR_HOLIDAY = flags.MINOR_HOLIDAY;\nconst EREV = flags.EREV;\nconst CHOL_HAMOED = flags.CHOL_HAMOED;\nconst YOM_KIPPUR_KATAN = flags.YOM_KIPPUR_KATAN;\nconst YIZKOR = flags.YIZKOR;\n\ntype StringIntMap = {\n [x: string]: number;\n};\n\nconst unrecognizedAlreadyWarned = new Set<string>();\nconst RECOGNIZED_OPTIONS: StringIntMap = {\n location: 1,\n year: 1,\n isHebrewYear: 1,\n month: 1,\n numYears: 1,\n start: 1,\n end: 1,\n candlelighting: 1,\n candleLightingMins: 1,\n havdalahMins: 1,\n havdalahDeg: 1,\n fastEndDeg: 1,\n sedrot: 1,\n il: 1,\n noMinorFast: 1,\n noModern: 1,\n shabbatMevarchim: 1,\n noRoshChodesh: 1,\n noSpecialShabbat: 1,\n noHolidays: 1,\n omer: 1,\n molad: 1,\n ashkenazi: 1,\n locale: 1,\n addHebrewDates: 1,\n addHebrewDatesForEvents: 1,\n mask: 1,\n yomKippurKatan: 1,\n hour12: 1,\n dailyLearning: 1,\n useElevation: 1,\n yizkor: 1,\n} as const satisfies Record<keyof CalOptions, 1>;\n\n/**\n * @private\n */\nfunction warnUnrecognizedOptions(options: CalOptions) {\n for (const k of Object.keys(options)) {\n if (\n typeof RECOGNIZED_OPTIONS[k] === 'undefined' &&\n !unrecognizedAlreadyWarned.has(k)\n ) {\n console.warn(`Ignoring unrecognized HebrewCalendar option: ${k}`);\n unrecognizedAlreadyWarned.add(k);\n }\n }\n}\n\nconst israelCityOffset: StringIntMap = {\n Jerusalem: 40,\n Haifa: 30,\n \"Zikhron Ya'aqov\": 30,\n \"Zikhron Ya'akov\": 30,\n 'Zikhron Yaakov': 30,\n \"Zichron Ya'akov\": 30,\n 'Zichron Yaakov': 30,\n} as const;\n\nconst geoIdCandleOffset: StringIntMap = {\n '281184': 40, // Jerusalem\n '294801': 30, // Haifa\n '293067': 30, // Zikhron Yaakov\n} as const;\n\n/**\n * @private\n * @constant\n * This calculation is based on the position of the sun 36 minutes after sunset in Jerusalem\n * around the equinox / equilux, which is 8.5° below geometric zenith.\n * The Ohr Meir considers this the time that 3 small stars are visible,\n * which is later than the required 3 medium stars.\n * @see {https://kosherjava.com/zmanim/docs/api/com/kosherjava/zmanim/ZmanimCalendar.html#ZENITH_8_POINT_5}\n */\nconst TZEIT_3SMALL_STARS = 8.5;\n\n/**\n * @private\n * @constant\n * This calculation is based on observation of 3 medium sized stars by Dr. Baruch Cohen\n * in his calendar published in in 1899 in Strasbourg, France.\n * This calculates to 7.0833333° below geometric zenith.\n * @see {https://kosherjava.com/zmanim/docs/api/com/kosherjava/zmanim/ComplexZmanimCalendar.html#ZENITH_7_POINT_083}\n */\nconst TZEIT_3MEDIUM_STARS = 7.0833333;\n\n/**\n * Modifies options in-place\n * @private\n */\nfunction checkCandleOptions(options: CalOptions) {\n if (!options.candlelighting) {\n return;\n }\n const location = options.location;\n if (typeof location === 'undefined' || !(location instanceof Location)) {\n throw new TypeError(\n 'options.candlelighting requires valid options.location'\n );\n }\n if (\n typeof options.havdalahMins === 'number' &&\n typeof options.havdalahDeg === 'number'\n ) {\n throw new TypeError(\n 'options.havdalahMins and options.havdalahDeg are mutually exclusive'\n );\n }\n\n const min0 = options.candleLightingMins;\n let min = typeof min0 === 'number' && !isNaN(min0) ? Math.trunc(min0) : 18;\n if (location.getIsrael() && Math.abs(min) === 18) {\n min = overrideIsraelCandleMins(location, min);\n }\n options.candleLightingMins = -1 * Math.abs(min);\n\n if (typeof options.havdalahMins === 'number') {\n options.havdalahMins = Math.trunc(Math.abs(options.havdalahMins));\n } else if (typeof options.havdalahDeg === 'number') {\n options.havdalahDeg = Math.abs(options.havdalahDeg);\n } else {\n options.havdalahDeg = TZEIT_3SMALL_STARS;\n }\n if (typeof options.fastEndDeg !== 'number') {\n options.fastEndDeg = TZEIT_3MEDIUM_STARS;\n }\n}\n\nfunction overrideIsraelCandleMins(location: Location, min: number) {\n const geoid = location.getGeoId();\n if (geoid) {\n const offset = geoIdCandleOffset[geoid];\n if (typeof offset === 'number') {\n return offset;\n }\n }\n const shortName = location.getShortName();\n if (shortName) {\n const offset = israelCityOffset[shortName];\n if (typeof offset === 'number') {\n return offset;\n }\n }\n return min;\n}\n\n/**\n * Mask to filter Holiday array\n * @private\n */\nfunction getMaskFromOptions(options: CalOptions): number {\n if (typeof options.mask === 'number') {\n return setOptionsFromMask(options);\n }\n const il = options.il || options.location?.getIsrael() || false;\n let mask = 0;\n\n // default options\n if (!options.noHolidays) {\n mask |=\n ROSH_CHODESH |\n YOM_TOV_ENDS |\n MINOR_FAST |\n SPECIAL_SHABBAT |\n MODERN_HOLIDAY |\n MAJOR_FAST |\n MINOR_HOLIDAY |\n EREV |\n CHOL_HAMOED |\n LIGHT_CANDLES |\n LIGHT_CANDLES_TZEIS |\n CHANUKAH_CANDLES;\n }\n if (options.candlelighting) {\n mask |= LIGHT_CANDLES | LIGHT_CANDLES_TZEIS | YOM_TOV_ENDS;\n }\n // suppression of defaults\n if (options.noRoshChodesh) {\n mask &= ~ROSH_CHODESH;\n }\n if (options.noModern) {\n mask &= ~MODERN_HOLIDAY;\n }\n if (options.noMinorFast) {\n mask &= ~MINOR_FAST;\n }\n if (options.noSpecialShabbat) {\n mask &= ~SPECIAL_SHABBAT;\n mask &= ~SHABBAT_MEVARCHIM;\n }\n if (il) {\n mask |= IL_ONLY;\n } else {\n mask |= CHUL_ONLY;\n }\n // non-default options\n if (options.sedrot) {\n mask |= PARSHA_HASHAVUA;\n }\n if (options.omer) {\n mask |= OMER_COUNT;\n }\n if (options.shabbatMevarchim) {\n mask |= SHABBAT_MEVARCHIM;\n }\n if (options.yomKippurKatan) {\n mask |= YOM_KIPPUR_KATAN;\n }\n if (options.yizkor) {\n mask |= YIZKOR;\n }\n if (options.dailyLearning) {\n const dailyLearning = options.dailyLearning;\n if (dailyLearning.dafYomi) {\n mask |= DAF_YOMI;\n }\n if (dailyLearning.mishnaYomi) {\n mask |= MISHNA_YOMI;\n }\n if (dailyLearning.nachYomi) {\n mask |= NACH_YOMI;\n }\n if (dailyLearning.yerushalmi) {\n mask |= YERUSHALMI_YOMI;\n }\n }\n\n return mask;\n}\n\nconst MASK_LIGHT_CANDLES =\n LIGHT_CANDLES | LIGHT_CANDLES_TZEIS | CHANUKAH_CANDLES | YOM_TOV_ENDS;\n\nconst defaultLocation = new Location(0, 0, false, 'UTC');\n\n/**\n * @private\n */\nfunction setOptionsFromMask(options: CalOptions): number {\n const m = options.mask || 0;\n if (m & ROSH_CHODESH) delete options.noRoshChodesh;\n if (m & MODERN_HOLIDAY) delete options.noModern;\n if (m & MINOR_FAST) delete options.noMinorFast;\n if (m & SPECIAL_SHABBAT) delete options.noSpecialShabbat;\n if (m & PARSHA_HASHAVUA) options.sedrot = true;\n if (m & (DAF_YOMI | MISHNA_YOMI | NACH_YOMI | YERUSHALMI_YOMI)) {\n options.dailyLearning = options.dailyLearning || {};\n if (m & DAF_YOMI) {\n options.dailyLearning.dafYomi = true;\n }\n if (m & MISHNA_YOMI) {\n options.dailyLearning.mishnaYomi = true;\n }\n if (m & NACH_YOMI) {\n options.dailyLearning.nachYomi = true;\n }\n if (m & YERUSHALMI_YOMI) {\n options.dailyLearning.yerushalmi = 1;\n }\n }\n if (m & OMER_COUNT) options.omer = true;\n if (m & SHABBAT_MEVARCHIM) options.shabbatMevarchim = true;\n if (m & YOM_KIPPUR_KATAN) options.yomKippurKatan = true;\n if (m & YIZKOR) options.yizkor = true;\n return m;\n}\n\n/**\n * Appends the Event `ev` to the `events` array. Also may add related\n * timed events like candle-lighting or fast start/end\n * @private\n */\nfunction appendHolidayAndRelated(\n candlesEv: TimedEvent | undefined,\n events: Event[],\n ev: HolidayEvent,\n options: CalOptions,\n isFriday: boolean,\n isSaturday: boolean,\n hasUserMask: boolean\n): TimedEvent | undefined {\n const il = options.il || false;\n if (!ev.observedIn(il)) {\n return candlesEv; // holiday isn't observed here; bail out early\n }\n const eFlags = ev.getFlags();\n if (\n (!options.yomKippurKatan && eFlags & YOM_KIPPUR_KATAN) ||\n (options.noModern && eFlags & MODERN_HOLIDAY)\n ) {\n return candlesEv; // bail out early\n }\n const isMajorFast = Boolean(eFlags & MAJOR_FAST);\n const isMinorFast = Boolean(eFlags & MINOR_FAST);\n let fastEv;\n if (\n options.candlelighting &&\n (isMajorFast || isMinorFast) &&\n ev.getDesc() !== 'Yom Kippur'\n ) {\n ev = fastEv = makeFastStartEnd(ev, options);\n if (\n fastEv.startEvent &&\n (isMajorFast || (isMinorFast && !options.noMinorFast))\n ) {\n events.push(fastEv.startEvent);\n }\n }\n if (eFlags & Number(options.mask) || (!eFlags && !hasUserMask)) {\n if (options.candlelighting && eFlags & MASK_LIGHT_CANDLES) {\n const hd = ev.getDate();\n candlesEv = makeCandleEvent(ev, hd, options, isFriday, isSaturday);\n if (eFlags & CHANUKAH_CANDLES && candlesEv && !options.noHolidays) {\n // Replace Chanukah event with a clone that includes candle lighting time.\n // For clarity, allow a \"duplicate\" candle lighting event to remain for Shabbat\n const chanukahEv = makeWeekdayChanukahCandleLighting(ev, hd, options);\n if (chanukahEv) {\n if (isFriday || isSaturday) {\n chanukahEv.eventTime = candlesEv.eventTime;\n chanukahEv.eventTimeStr = candlesEv.eventTimeStr;\n }\n ev = chanukahEv;\n }\n candlesEv = undefined;\n }\n }\n if (\n !options.noHolidays ||\n (options.yomKippurKatan && eFlags & YOM_KIPPUR_KATAN)\n ) {\n events.push(ev); // the original event itself\n }\n }\n if (\n (isMajorFast || (isMinorFast && !options.noMinorFast)) &&\n fastEv &&\n fastEv.endEvent\n ) {\n events.push(fastEv.endEvent);\n }\n return candlesEv;\n}\n\nfunction makeMoladAndMevarchimChodesh(hd: HDate, options: CalOptions): Event[] {\n const evts: Event[] = [];\n const hmonth = hd.getMonth();\n const hdate = hd.getDate();\n if (hmonth !== ELUL && hdate >= 23 && hdate <= 29) {\n const hyear = hd.getFullYear();\n const monNext = hmonth === HDate.monthsInYear(hyear) ? NISAN : hmonth + 1;\n if (options.molad) {\n evts.push(new MoladEvent(hd, hyear, monNext, options));\n }\n if (options.shabbatMevarchim) {\n const nextMonthName = HDate.getMonthName(monNext, hyear);\n const molad = new Molad(hyear, monNext);\n const memo = molad.render(options.locale || 'en', options);\n evts.push(new MevarchimChodeshEvent(hd, nextMonthName, memo));\n }\n }\n return evts;\n}\n\nfunction dailyLearningName(key: string, val: DailyLearningValue): string {\n if (key === 'yerushalmi') {\n return val === 2 ? 'yerushalmi-schottenstein' : 'yerushalmi-vilna';\n }\n return key;\n}\n\nfunction makeDailyLearning(\n hd: HDate,\n dailyLearning: {[x: string]: DailyLearningValue},\n il: boolean\n): Event[] {\n const evts: Event[] = [];\n for (const [key, val] of Object.entries(dailyLearning)) {\n if (val) {\n const name = dailyLearningName(key, val);\n const learningEv = DailyLearning.lookup(name, hd, il);\n if (learningEv) {\n evts.push(learningEv);\n }\n }\n }\n return evts;\n}\n\nfunction makeOmerEvent(hd: HDate, omerDay: number, options: CalOptions) {\n const omerEv = new OmerEvent(hd, omerDay);\n if (options.candlelighting) {\n const location = options.location!;\n const zmanim = new Zmanim(location, hd.prev(), false);\n const tzeit = zmanim.tzeit(7.0833);\n if (!isNaN(tzeit.getTime())) {\n omerEv.alarm = tzeit;\n }\n }\n return omerEv;\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAuBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2GG;AACa,SAAA,QAAQ,CAAC,OAAA,GAAsB,EAAE,EAAA;AAC/C,IAAA,OAAO,GAAO,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,OAAO,CAAC,CAAC;IACvB,kBAAkB,CAAC,OAAO,CAAC;AAC3B,IAAA,MAAM,QAAQ,IAAI,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,eAAe,CAAC;AACzE,IAAA,MAAM,EAAE,IAAI,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,QAAQ,CAAC,SAAS,EAAE,IAAI,KAAK,CAAC;IACrE,MAAM,WAAW,GAAG,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;AACpD,IAAA,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAC1C,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE;QACvC,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE;YACxD,MAAM,IAAI,SAAS,CAAC,CAAA,wBAAA,EAA2B,OAAO,CAAC,MAAM,CAAE,CAAA,CAAC;;AAElE,QAAA,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,WAAW,GAAI,OAAO,CAAC,MAAiB;QAC3E,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;QAC/C,IAAI,CAAC,cAAc,EAAE;AACnB,YAAA,MAAM,IAAI,SAAS,CACjB,WAAW,MAAM,CAAA,sDAAA,CAAwD,CAC1E;;;SAEE;AACL,QAAA,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;;IAGxB,MAAM,IAAI,GAAY,EAAE;AACxB,IAAA,IAAI,KAAwB;AAC5B,IAAA,IAAI,YAAwC;AAC5C,IAAA,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,IAAA,IAAI,OAAO,GAAG,CAAC,CAAC;AAChB,IAAA,IAAI,WAAW,GAAG,CAAC,CAAC;AACpB,IAAA,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC;IAC3C,uBAAuB,CAAC,OAAO,CAAC;AAChC,IAAA,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC;AAC/B,IAAA,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;AAC7B,IAAA,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC;AACpC,IAAA,IAAI,SAAS,CAAC,WAAW,EAAE,GAAG,GAAG,EAAE;AACjC,QAAA,OAAO,CAAC,cAAc,GAAG,KAAK;;AAEhC,IAAA,KAAK,IAAI,GAAG,GAAG,QAAQ,EAAE,GAAG,IAAI,MAAM,EAAE,GAAG,EAAE,EAAE;AAC7C,QAAA,MAAM,EAAE,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC;AACzB,QAAA,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,EAAE;AAC9B,QAAA,IAAI,KAAK,KAAK,WAAW,EAAE;YACzB,WAAW,GAAG,KAAK;AACnB,YAAA,YAAY,GAAG,mBAAmB,CAAC,WAAW,CAAC;AAC/C,YAAA,IAAI,OAAO,CAAC,MAAM,EAAE;AAClB,gBAAA,KAAK,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;;AAEnC,YAAA,IAAI,OAAO,CAAC,IAAI,EAAE;gBAChB,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC;gBACpD,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;;;AAGrD,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM;AACpC,QAAA,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,EAAE;AACvB,QAAA,MAAM,QAAQ,GAAG,GAAG,KAAK,GAAG;AAC5B,QAAA,MAAM,UAAU,GAAG,GAAG,KAAK,GAAG;AAC9B,QAAA,IAAI,SAAiC;AACrC,QAAA,MAAM,QAAQ,GAAG,YAAa,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE;AACvD,QAAA,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE;AACzB,YAAA,SAAS,GAAG,uBAAuB,CACjC,SAAS,EACT,IAAI,EACJ,EAAE,EACF,OAAO,EACP,QAAQ,EACR,UAAU,EACV,WAAW,CACZ;;AAEH,QAAA,IAAI,OAAO,CAAC,MAAM,IAAI,UAAU,EAAE;YAChC,MAAM,OAAO,GAAG,KAAM,CAAC,MAAM,CAAC,GAAG,CAAC;AAClC,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;AACjB,gBAAA,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;;;AAGnE,QAAA,IAAI,OAAO,CAAC,MAAM,EAAE;AAClB,YAAA,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE;AACxB,YAAA,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE;AACvB,YAAA,IACE,CAAC,EAAE,KAAK,MAAM,CAAC,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAClD,iBAAC,EAAE,KAAK,KAAK,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;AACvC,iBAAC,EAAE,KAAK,KAAK,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EACrC;gBACA,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/D,gBAAA,MAAM,EAAE,GAAG,IAAI,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE;AAC/C,oBAAA,KAAK,EAAE,KAAK;oBACZ,WAAW;AACZ,iBAAA,CAAC;AACF,gBAAA,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;;;AAGjB,QAAA,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa;AAC3C,QAAA,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;YACrC,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,EAAE,aAAa,EAAE,EAAE,CAAC;AACvD,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;;AAEtB,QAAA,IAAI,OAAO,CAAC,IAAI,IAAI,GAAG,IAAI,SAAS,IAAI,GAAG,IAAI,OAAO,EAAE;AACtD,YAAA,MAAM,IAAI,GAAG,GAAG,GAAG,SAAS,GAAG,CAAC;YAChC,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC;AAC/C,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;;AAEnB,QAAA,IAAI,UAAU,KAAK,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,gBAAgB,CAAC,EAAE;YAC7D,MAAM,MAAM,GAAG,4BAA4B,CAAC,EAAE,EAAE,OAAO,CAAC;AACxD,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;;AAEtB,QAAA,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,cAAc,KAAK,QAAQ,IAAI,UAAU,CAAC,EAAE;AACpE,YAAA,SAAS,GAAG,eAAe,CAAC,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC;AACzE,YAAA,IAAI,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE;gBAClC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;gBAChC,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;gBACpE,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;;;;QAI9C,IACE,SAAS,YAAY,aAAa;AAClC,aAAC,OAAO,CAAC,YAAY,KAAK,CAAC,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,CAAC,EACzD;YACA,SAAS,GAAG,SAAS;;QAEvB,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;;QAEtB,IACE,OAAO,CAAC,cAAc;aACrB,OAAO,CAAC,uBAAuB,IAAI,gBAAgB,KAAK,IAAI,CAAC,MAAM,CAAC,EACrE;AACA,YAAA,MAAM,EAAE,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC;AAClC,YAAA,IAAI,gBAAgB,KAAK,IAAI,CAAC,MAAM,EAAE;AACpC,gBAAA,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;;iBACR;gBACL,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;;;;AAI1C,IAAA,OAAO,IAAI;AACb;AAEA,MAAM,GAAG,GAAG,CAAC;AACb,MAAM,GAAG,GAAG,CAAC;AAEb,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK;AAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK;AAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AAExB,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa;AACzC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY;AACvC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS;AACjC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO;AAC7B,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB;AACrD,MAAM,gBAAgB,GAAG,KAAK,CAAC,gBAAgB;AAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU;AACnC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe;AAC7C,MAAM,cAAc,GAAG,KAAK,CAAC,cAAc;AAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU;AACnC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY;AACvC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe;AAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ;AAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW;AACrC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS;AACjC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe;AAC7C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU;AACnC,MAAM,iBAAiB,GAAG,KAAK,CAAC,iBAAiB;AACjD,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa;AACzC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI;AACvB,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW;AACrC,MAAM,gBAAgB,GAAG,KAAK,CAAC,gBAAgB;AAC/C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM;AAM3B,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAU;AACnD,MAAM,kBAAkB,GAAiB;AACvC,IAAA,QAAQ,EAAE,CAAC;AACX,IAAA,IAAI,EAAE,CAAC;AACP,IAAA,YAAY,EAAE,CAAC;AACf,IAAA,KAAK,EAAE,CAAC;AACR,IAAA,QAAQ,EAAE,CAAC;AACX,IAAA,KAAK,EAAE,CAAC;AACR,IAAA,GAAG,EAAE,CAAC;AACN,IAAA,cAAc,EAAE,CAAC;AACjB,IAAA,kBAAkB,EAAE,CAAC;AACrB,IAAA,YAAY,EAAE,CAAC;AACf,IAAA,WAAW,EAAE,CAAC;AACd,IAAA,UAAU,EAAE,CAAC;AACb,IAAA,MAAM,EAAE,CAAC;AACT,IAAA,EAAE,EAAE,CAAC;AACL,IAAA,WAAW,EAAE,CAAC;AACd,IAAA,QAAQ,EAAE,CAAC;AACX,IAAA,gBAAgB,EAAE,CAAC;AACnB,IAAA,aAAa,EAAE,CAAC;AAChB,IAAA,gBAAgB,EAAE,CAAC;AACnB,IAAA,UAAU,EAAE,CAAC;AACb,IAAA,IAAI,EAAE,CAAC;AACP,IAAA,KAAK,EAAE,CAAC;AACR,IAAA,SAAS,EAAE,CAAC;AACZ,IAAA,MAAM,EAAE,CAAC;AACT,IAAA,cAAc,EAAE,CAAC;AACjB,IAAA,uBAAuB,EAAE,CAAC;AAC1B,IAAA,IAAI,EAAE,CAAC;AACP,IAAA,cAAc,EAAE,CAAC;AACjB,IAAA,MAAM,EAAE,CAAC;AACT,IAAA,aAAa,EAAE,CAAC;AAChB,IAAA,YAAY,EAAE,CAAC;AACf,IAAA,MAAM,EAAE,CAAC;CACqC;AAEhD;;AAEG;AACH,SAAS,uBAAuB,CAAC,OAAmB,EAAA;IAClD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;AACpC,QAAA,IACE,OAAO,kBAAkB,CAAC,CAAC,CAAC,KAAK,WAAW;AAC5C,YAAA,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,EACjC;AACA,YAAA,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA,CAAE,CAAC;AACjE,YAAA,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC;;;AAGtC;AAEA,MAAM,gBAAgB,GAAiB;AACrC,IAAA,SAAS,EAAE,EAAE;AACb,IAAA,KAAK,EAAE,EAAE;AACT,IAAA,iBAAiB,EAAE,EAAE;AACrB,IAAA,iBAAiB,EAAE,EAAE;AACrB,IAAA,gBAAgB,EAAE,EAAE;AACpB,IAAA,iBAAiB,EAAE,EAAE;AACrB,IAAA,gBAAgB,EAAE,EAAE;CACZ;AAEV,MAAM,iBAAiB,GAAiB;IACtC,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;CACJ;AAEV;;;;;;;;AAQG;AACH,MAAM,kBAAkB,GAAG,GAAG;AAE9B;;;;;;;AAOG;AACH,MAAM,mBAAmB,GAAG,SAAS;AAErC;;;AAGG;AACH,SAAS,kBAAkB,CAAC,OAAmB,EAAA;AAC7C,IAAA,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;QAC3B;;AAEF,IAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ;AACjC,IAAA,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,EAAE,QAAQ,YAAY,QAAQ,CAAC,EAAE;AACtE,QAAA,MAAM,IAAI,SAAS,CACjB,wDAAwD,CACzD;;AAEH,IAAA,IACE,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ;AACxC,QAAA,OAAO,OAAO,CAAC,WAAW,KAAK,QAAQ,EACvC;AACA,QAAA,MAAM,IAAI,SAAS,CACjB,qEAAqE,CACtE;;AAGH,IAAA,MAAM,IAAI,GAAG,OAAO,CAAC,kBAAkB;IACvC,IAAI,GAAG,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;AAC1E,IAAA,IAAI,QAAQ,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE;AAChD,QAAA,GAAG,GAAG,wBAAwB,CAAC,QAAQ,EAAE,GAAG,CAAC;;AAE/C,IAAA,OAAO,CAAC,kBAAkB,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAE/C,IAAA,IAAI,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ,EAAE;AAC5C,QAAA,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;;AAC5D,SAAA,IAAI,OAAO,OAAO,CAAC,WAAW,KAAK,QAAQ,EAAE;QAClD,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC;;SAC9C;AACL,QAAA,OAAO,CAAC,WAAW,GAAG,kBAAkB;;AAE1C,IAAA,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE;AAC1C,QAAA,OAAO,CAAC,UAAU,GAAG,mBAAmB;;AAE5C;AAEA,SAAS,wBAAwB,CAAC,QAAkB,EAAE,GAAW,EAAA;AAC/D,IAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE;IACjC,IAAI,KAAK,EAAE;AACT,QAAA,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC;AACvC,QAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AAC9B,YAAA,OAAO,MAAM;;;AAGjB,IAAA,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,EAAE;IACzC,IAAI,SAAS,EAAE;AACb,QAAA,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC;AAC1C,QAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AAC9B,YAAA,OAAO,MAAM;;;AAGjB,IAAA,OAAO,GAAG;AACZ;AAEA;;;AAGG;AACH,SAAS,kBAAkB,CAAC,OAAmB,EAAA;;AAC7C,IAAA,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE;AACpC,QAAA,OAAO,kBAAkB,CAAC,OAAO,CAAC;;AAEpC,IAAA,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,KAAI,CAAA,EAAA,GAAA,OAAO,CAAC,QAAQ,0CAAE,SAAS,EAAE,CAAA,IAAI,KAAK;IAC/D,IAAI,IAAI,GAAG,CAAC;;AAGZ,IAAA,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;QACvB,IAAI;YACF,YAAY;gBACZ,YAAY;gBACZ,UAAU;gBACV,eAAe;gBACf,cAAc;gBACd,UAAU;gBACV,aAAa;gBACb,IAAI;gBACJ,WAAW;gBACX,aAAa;gBACb,mBAAmB;AACnB,gBAAA,gBAAgB;;AAEpB,IAAA,IAAI,OAAO,CAAC,cAAc,EAAE;AAC1B,QAAA,IAAI,IAAI,aAAa,GAAG,mBAAmB,GAAG,YAAY;;;AAG5D,IAAA,IAAI,OAAO,CAAC,aAAa,EAAE;QACzB,IAAI,IAAI,CAAC,YAAY;;AAEvB,IAAA,IAAI,OAAO,CAAC,QAAQ,EAAE;QACpB,IAAI,IAAI,CAAC,cAAc;;AAEzB,IAAA,IAAI,OAAO,CAAC,WAAW,EAAE;QACvB,IAAI,IAAI,CAAC,UAAU;;AAErB,IAAA,IAAI,OAAO,CAAC,gBAAgB,EAAE;QAC5B,IAAI,IAAI,CAAC,eAAe;QACxB,IAAI,IAAI,CAAC,iBAAiB;;IAE5B,IAAI,EAAE,EAAE;QACN,IAAI,IAAI,OAAO;;SACV;QACL,IAAI,IAAI,SAAS;;;AAGnB,IAAA,IAAI,OAAO,CAAC,MAAM,EAAE;QAClB,IAAI,IAAI,eAAe;;AAEzB,IAAA,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,IAAI,IAAI,UAAU;;AAEpB,IAAA,IAAI,OAAO,CAAC,gBAAgB,EAAE;QAC5B,IAAI,IAAI,iBAAiB;;AAE3B,IAAA,IAAI,OAAO,CAAC,cAAc,EAAE;QAC1B,IAAI,IAAI,gBAAgB;;AAE1B,IAAA,IAAI,OAAO,CAAC,MAAM,EAAE;QAClB,IAAI,IAAI,MAAM;;AAEhB,IAAA,IAAI,OAAO,CAAC,aAAa,EAAE;AACzB,QAAA,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa;AAC3C,QAAA,IAAI,aAAa,CAAC,OAAO,EAAE;YACzB,IAAI,IAAI,QAAQ;;AAElB,QAAA,IAAI,aAAa,CAAC,UAAU,EAAE;YAC5B,IAAI,IAAI,WAAW;;AAErB,QAAA,IAAI,aAAa,CAAC,QAAQ,EAAE;YAC1B,IAAI,IAAI,SAAS;;AAEnB,QAAA,IAAI,aAAa,CAAC,UAAU,EAAE;YAC5B,IAAI,IAAI,eAAe;;;AAI3B,IAAA,OAAO,IAAI;AACb;AAEA,MAAM,kBAAkB,GACtB,aAAa,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,YAAY;AAEvE,MAAM,eAAe,GAAG,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC;AAExD;;AAEG;AACH,SAAS,kBAAkB,CAAC,OAAmB,EAAA;AAC7C,IAAA,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,CAAC;IAC3B,IAAI,CAAC,GAAG,YAAY;QAAE,OAAO,OAAO,CAAC,aAAa;IAClD,IAAI,CAAC,GAAG,cAAc;QAAE,OAAO,OAAO,CAAC,QAAQ;IAC/C,IAAI,CAAC,GAAG,UAAU;QAAE,OAAO,OAAO,CAAC,WAAW;IAC9C,IAAI,CAAC,GAAG,eAAe;QAAE,OAAO,OAAO,CAAC,gBAAgB;IACxD,IAAI,CAAC,GAAG,eAAe;AAAE,QAAA,OAAO,CAAC,MAAM,GAAG,IAAI;AAC9C,IAAA,IAAI,CAAC,IAAI,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,eAAe,CAAC,EAAE;QAC9D,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,EAAE;AACnD,QAAA,IAAI,CAAC,GAAG,QAAQ,EAAE;AAChB,YAAA,OAAO,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI;;AAEtC,QAAA,IAAI,CAAC,GAAG,WAAW,EAAE;AACnB,YAAA,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,IAAI;;AAEzC,QAAA,IAAI,CAAC,GAAG,SAAS,EAAE;AACjB,YAAA,OAAO,CAAC,aAAa,CAAC,QAAQ,GAAG,IAAI;;AAEvC,QAAA,IAAI,CAAC,GAAG,eAAe,EAAE;AACvB,YAAA,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,CAAC;;;IAGxC,IAAI,CAAC,GAAG,UAAU;AAAE,QAAA,OAAO,CAAC,IAAI,GAAG,IAAI;IACvC,IAAI,CAAC,GAAG,iBAAiB;AAAE,QAAA,OAAO,CAAC,gBAAgB,GAAG,IAAI;IAC1D,IAAI,CAAC,GAAG,gBAAgB;AAAE,QAAA,OAAO,CAAC,cAAc,GAAG,IAAI;IACvD,IAAI,CAAC,GAAG,MAAM;AAAE,QAAA,OAAO,CAAC,MAAM,GAAG,IAAI;AACrC,IAAA,OAAO,CAAC;AACV;AAEA;;;;AAIG;AACH,SAAS,uBAAuB,CAC9B,SAAiC,EACjC,MAAe,EACf,EAAgB,EAChB,OAAmB,EACnB,QAAiB,EACjB,UAAmB,EACnB,WAAoB,EAAA;AAEpB,IAAA,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,KAAK;IAC9B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;QACtB,OAAO,SAAS,CAAC;;AAEnB,IAAA,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC5B,IACE,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,MAAM,GAAG,gBAAgB;SACpD,OAAO,CAAC,QAAQ,IAAI,MAAM,GAAG,cAAc,CAAC,EAC7C;QACA,OAAO,SAAS,CAAC;;IAEnB,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;IAChD,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;AAChD,IAAA,IAAI,MAAM;IACV,IACE,OAAO,CAAC,cAAc;SACrB,WAAW,IAAI,WAAW,CAAC;AAC5B,QAAA,EAAE,CAAC,OAAO,EAAE,KAAK,YAAY,EAC7B;QACA,EAAE,GAAG,MAAM,GAAG,gBAAgB,CAAC,EAAE,EAAE,OAAO,CAAC;QAC3C,IACE,MAAM,CAAC,UAAU;AACjB,aAAC,WAAW,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EACtD;AACA,YAAA,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;;;AAGlC,IAAA,IAAI,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE;QAC9D,IAAI,OAAO,CAAC,cAAc,IAAI,MAAM,GAAG,kBAAkB,EAAE;AACzD,YAAA,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE;AACvB,YAAA,SAAS,GAAG,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC;YAClE,IAAI,MAAM,GAAG,gBAAgB,IAAI,SAAS,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;;;gBAGjE,MAAM,UAAU,GAAG,iCAAiC,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC;gBACrE,IAAI,UAAU,EAAE;AACd,oBAAA,IAAI,QAAQ,IAAI,UAAU,EAAE;AAC1B,wBAAA,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS;AAC1C,wBAAA,UAAU,CAAC,YAAY,GAAG,SAAS,CAAC,YAAY;;oBAElD,EAAE,GAAG,UAAU;;gBAEjB,SAAS,GAAG,SAAS;;;QAGzB,IACE,CAAC,OAAO,CAAC,UAAU;aAClB,OAAO,CAAC,cAAc,IAAI,MAAM,GAAG,gBAAgB,CAAC,EACrD;AACA,YAAA,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;;IAGpB,IACE,CAAC,WAAW,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QACrD,MAAM;QACN,MAAM,CAAC,QAAQ,EACf;AACA,QAAA,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;;AAE9B,IAAA,OAAO,SAAS;AAClB;AAEA,SAAS,4BAA4B,CAAC,EAAS,EAAE,OAAmB,EAAA;IAClE,MAAM,IAAI,GAAY,EAAE;AACxB,IAAA,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,EAAE;AAC5B,IAAA,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,EAAE;AAC1B,IAAA,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,IAAI,EAAE,IAAI,KAAK,IAAI,EAAE,EAAE;AACjD,QAAA,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,EAAE;QAC9B,MAAM,OAAO,GAAG,MAAM,KAAK,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,MAAM,GAAG,CAAC;AACzE,QAAA,IAAI,OAAO,CAAC,KAAK,EAAE;AACjB,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;;AAExD,QAAA,IAAI,OAAO,CAAC,gBAAgB,EAAE;YAC5B,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC;AACvC,YAAA,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,OAAO,CAAC;AAC1D,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;;;AAGjE,IAAA,OAAO,IAAI;AACb;AAEA,SAAS,iBAAiB,CAAC,GAAW,EAAE,GAAuB,EAAA;AAC7D,IAAA,IAAI,GAAG,KAAK,YAAY,EAAE;QACxB,OAAO,GAAG,KAAK,CAAC,GAAG,0BAA0B,GAAG,kBAAkB;;AAEpE,IAAA,OAAO,GAAG;AACZ;AAEA,SAAS,iBAAiB,CACxB,EAAS,EACT,aAAgD,EAChD,EAAW,EAAA;IAEX,MAAM,IAAI,GAAY,EAAE;AACxB,IAAA,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;QACtD,IAAI,GAAG,EAAE;YACP,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC;AACxC,YAAA,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC;YACrD,IAAI,UAAU,EAAE;AACd,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;;;;AAI3B,IAAA,OAAO,IAAI;AACb;AAEA,SAAS,aAAa,CAAC,EAAS,EAAE,OAAe,EAAE,OAAmB,EAAA;IACpE,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC;AACzC,IAAA,IAAI,OAAO,CAAC,cAAc,EAAE;AAC1B,QAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAS;AAClC,QAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC;QACrD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE;AAC3B,YAAA,MAAM,CAAC,KAAK,GAAG,KAAK;;;AAGxB,IAAA,OAAO,MAAM;AACf;;;;"}
1
+ {"version":3,"file":"calendar.js","sources":["../../../src/calendar.ts"],"sourcesContent":["import {Locale} from './locale';\nimport {abs2greg, HDate, months} from '@hebcal/hdate';\nimport {CalOptions, DailyLearningValue} from './CalOptions';\nimport {\n makeCandleEvent,\n makeFastStartEnd,\n makeWeekdayChanukahCandleLighting,\n} from './candles';\nimport {Event, flags} from './event';\nimport {getStartAndEnd} from './getStartAndEnd';\nimport {HebrewDateEvent} from './HebrewDateEvent';\nimport {HolidayYearMap, getHolidaysForYear_} from './holidays';\nimport {ParshaEvent} from './ParshaEvent';\nimport {Sedra, getSedra} from './sedra';\nimport {TimedEvent, HavdalahEvent} from './TimedEvent';\nimport {DailyLearning} from './DailyLearning';\nimport {HolidayEvent} from './HolidayEvent';\nimport {MevarchimChodeshEvent} from './MevarchimChodeshEvent';\nimport {MoladEvent, Molad} from './molad';\nimport {OmerEvent} from './omer';\nimport {Zmanim} from './zmanim';\nimport {Location} from './location';\n\n/**\n * Calculates holidays and other Hebrew calendar events based on {@link CalOptions}.\n *\n * Each holiday is represented by an {@link Event} object which includes a date,\n * a description, flags and optional attributes.\n * If given no options, returns holidays for the Diaspora for the current Gregorian year.\n *\n * The date range returned by this function can be controlled by:\n * * `options.year` - Gregorian (e.g. 1993) or Hebrew year (e.g. 5749)\n * * `options.isHebrewYear` - to interpret `year` as Hebrew year\n * * `options.numYears` - generate calendar for multiple years (default 1)\n * * `options.month` - Gregorian or Hebrew month (to filter results to a single month)\n *\n * Alternatively, specify start and end days with `Date` or {@link HDate} instances:\n * * `options.start` - use specific start date (requires `end` date)\n * * `options.end` - use specific end date (requires `start` date)\n *\n * Unless `options.noHolidays == true`, default holidays include:\n * * Major holidays - Rosh Hashana, Yom Kippur, Pesach, Sukkot, etc.\n * * Minor holidays - Purim, Chanukah, Tu BiShvat, Lag BaOmer, etc.\n * * Minor fasts - Ta'anit Esther, Tzom Gedaliah, etc. (unless `options.noMinorFast`)\n * * Special Shabbatot - Shabbat Shekalim, Zachor, etc. (unless `options.noSpecialShabbat`)\n * * Modern Holidays - Yom HaShoah, Yom HaAtzma'ut, etc. (unless `options.noModern`)\n * * Rosh Chodesh (unless `options.noRoshChodesh`)\n *\n * Holiday and Torah reading schedules differ between Israel and the Disapora.\n * Set `options.il=true` to use the Israeli schedule.\n *\n * Additional non-default event types can be specified:\n * * Parashat HaShavua - weekly Torah Reading on Saturdays (`options.sedrot`)\n * * Counting of the Omer (`options.omer`)\n * * Shabbat Mevarchim HaChodesh on Saturday before Rosh Chodesh (`options.shabbatMevarchim`)\n * * Molad announcement on Saturday before Rosh Chodesh (`options.molad`)\n * * Yom Kippur Katan (`options.yomKippurKatan`)\n * * Yizkor (`options.yizkor`)\n *\n * Daily Study of texts are supported by the\n * {@link https://github.com/hebcal/hebcal-learning @hebcal/learning} package,\n * for example:\n * * Babylonian Talmud Daf Yomi (`options.dailyLearning.dafYomi`)\n * * Jerusalem Talmud (Yerushalmi) Yomi (`options.dailyLearning.yerushalmi`)\n * * Mishna Yomi (`options.dailyLearning.mishnaYomi`)\n * * Nach Yomi (`options.dailyLearning.nachYomi`)\n *\n * Candle-lighting and Havdalah times are approximated using latitude and longitude\n * specified by the {@link Location} class. The `Location` class contains a small\n * database of cities with their associated geographic information and time-zone information.\n * If you ever have any doubts about Hebcal's times, consult your local halachic authority.\n * If you enter geographic coordinates above the arctic circle or antarctic circle,\n * the times are guaranteed to be wrong.\n *\n * To add candle-lighting options, set `options.candlelighting=true` and set\n * `options.location` to an instance of `Location`. By default, candle lighting\n * time is 18 minutes before sundown (40 minutes for Jerusalem,\n * 30 minutes for Haifa and Zikhron Ya'akov) and Havdalah is\n * calculated according to Tzeit Hakochavim - Nightfall (the point when 3 small stars\n * are observable in the night time sky with the naked eye). The default Havdalah\n * option (Tzeit Hakochavim) is calculated when the sun is 8.5° below the horizon.\n * These defaults can be changed using these options:\n * * `options.candleLightingMins` - minutes before sundown to light candles\n * * `options.havdalahMins` - minutes after sundown for Havdalah (typical values are 42, 50, or 72).\n * Havdalah times are suppressed when `options.havdalahMins=0`.\n * * `options.havdalahDeg` - degrees for solar depression for Havdalah.\n * Default is 8.5 degrees for 3 small stars. Use 7.083 degrees for 3 medium-sized stars.\n * Havdalah times are suppressed when `options.havdalahDeg=0`.\n *\n * If both `options.candlelighting=true` and `options.location` is specified,\n * Chanukah candle-lighting times and minor fast start/end times will also be generated.\n * Chanukah candle-lighting is at Bein HaShmashos (13.5 minutes before\n * the sun is 7.083° below the horizon in the evening)\n * on weekdays, at regular candle-lighting time on Fridays, and at regular Havdalah time on\n * Saturday night (see above).\n *\n * Minor fasts begin at Alot HaShachar (sun is 16.1° below the horizon in the morning) and\n * end when 3 medium-sized stars are observable in the night sky (sun is 7.083° below the horizon\n * in the evening).\n *\n * Two options also exist for generating an Event with the Hebrew date:\n * * `options.addHebrewDates` - print the Hebrew date for the entire date range\n * * `options.addHebrewDatesForEvents` - print the Hebrew date for dates with some events\n *\n * Lastly, translation and transliteration of event titles is controlled by\n * `options.locale` and the {@link Locale} API.\n * `@hebcal/core` supports three locales by default:\n * * `en` - default, Sephardic transliterations (e.g. \"Shabbat\")\n * * `ashkenazi` - Ashkenazi transliterations (e.g. \"Shabbos\")\n * * `he` - Hebrew (e.g. \"שַׁבָּת\")\n *\n * Additional locales (such as `ru` or `fr`) are supported by the\n * {@link https://github.com/hebcal/hebcal-locales @hebcal/locales} package\n *\n * @example\n * import {HebrewCalendar, HDate, Location, Event} from '@hebcal/core';\n * const options: CalOptions = {\n * year: 1981,\n * isHebrewYear: false,\n * candlelighting: true,\n * location: Location.lookup('San Francisco'),\n * sedrot: true,\n * omer: true,\n * };\n * const events = HebrewCalendar.calendar(options);\n * for (const ev of events) {\n * const hd = ev.getDate();\n * const date = hd.greg();\n * console.log(date.toLocaleDateString(), ev.render('en'), hd.toString());\n * }\n */\nexport function calendar(options: CalOptions = {}): Event[] {\n options = {...options}; // so we can modify freely\n checkCandleOptions(options);\n const location = (options.location = options.location || defaultLocation);\n const il = (options.il = options.il || location.getIsrael() || false);\n const hasUserMask = typeof options.mask === 'number';\n options.mask = getMaskFromOptions(options);\n if (options.ashkenazi || options.locale) {\n if (options.locale && typeof options.locale !== 'string') {\n throw new TypeError(`Invalid options.locale: ${options.locale}`);\n }\n const locale = options.ashkenazi ? 'ashkenazi' : (options.locale as string);\n const translationObj = Locale.useLocale(locale);\n if (!translationObj) {\n throw new TypeError(\n `Locale '${locale}' not found; did you forget to import @hebcal/locales?`\n );\n }\n } else {\n Locale.useLocale('en');\n }\n\n const evts: Event[] = [];\n let sedra: Sedra | undefined;\n let holidaysYear: HolidayYearMap | undefined;\n let beginOmer = -1;\n let endOmer = -1;\n let currentYear = -1;\n const startAndEnd = getStartAndEnd(options);\n warnUnrecognizedOptions(options);\n const startAbs = startAndEnd[0];\n const endAbs = startAndEnd[1];\n const startGreg = abs2greg(startAbs);\n if (startGreg.getFullYear() < 100) {\n options.candlelighting = false;\n }\n for (let abs = startAbs; abs <= endAbs; abs++) {\n const hd = new HDate(abs);\n const hyear = hd.getFullYear();\n if (hyear !== currentYear) {\n currentYear = hyear;\n holidaysYear = getHolidaysForYear_(currentYear);\n if (options.sedrot) {\n sedra = getSedra(currentYear, il);\n }\n if (options.omer) {\n beginOmer = HDate.hebrew2abs(currentYear, NISAN, 16);\n endOmer = HDate.hebrew2abs(currentYear, SIVAN, 5);\n }\n }\n const prevEventsLength = evts.length;\n const dow = hd.getDay();\n const isFriday = dow === FRI;\n const isSaturday = dow === SAT;\n let candlesEv: TimedEvent | undefined;\n const holidays = holidaysYear!.get(hd.toString()) || [];\n for (const ev of holidays) {\n candlesEv = appendHolidayAndRelated(\n candlesEv,\n evts,\n ev,\n options,\n isFriday,\n isSaturday,\n hasUserMask\n );\n }\n if (options.sedrot && isSaturday) {\n const parsha0 = sedra!.lookup(abs);\n if (!parsha0.chag) {\n evts.push(new ParshaEvent(hd, parsha0.parsha, il, parsha0.num));\n }\n }\n if (options.yizkor) {\n const mm = hd.getMonth();\n const dd = hd.getDate();\n if (\n (mm === months.TISHREI && (dd === 10 || dd === 22)) ||\n (mm === NISAN && dd === (il ? 21 : 22)) ||\n (mm === SIVAN && dd === (il ? 6 : 7))\n ) {\n const linkedEvent = holidays.filter(ev => ev.observedIn(il))[0];\n const ev = new Event(hd, 'Yizkor', flags.YIZKOR, {\n emoji: '🕯️',\n linkedEvent,\n });\n evts.push(ev);\n }\n }\n const dailyLearning = options.dailyLearning;\n if (typeof dailyLearning === 'object') {\n const events = makeDailyLearning(hd, dailyLearning, il);\n evts.push(...events);\n }\n if (options.omer && abs >= beginOmer && abs <= endOmer) {\n const omer = abs - beginOmer + 1;\n const omerEv = makeOmerEvent(hd, omer, options);\n evts.push(omerEv);\n }\n if (isSaturday && (options.molad || options.shabbatMevarchim)) {\n const events = makeMoladAndMevarchimChodesh(hd, options);\n evts.push(...events);\n }\n if (!candlesEv && options.candlelighting && (isFriday || isSaturday)) {\n candlesEv = makeCandleEvent(undefined, hd, options, isFriday, isSaturday);\n if (isFriday && candlesEv && sedra) {\n const parsha = sedra.lookup(abs);\n const pe = new ParshaEvent(hd.next(), parsha.parsha, il, parsha.num);\n candlesEv.memo = pe.render(options.locale);\n }\n }\n // suppress Havdalah when options.havdalahMins=0 or options.havdalahDeg=0\n if (\n candlesEv instanceof HavdalahEvent &&\n (options.havdalahMins === 0 || options.havdalahDeg === 0)\n ) {\n candlesEv = undefined;\n }\n if (candlesEv) {\n evts.push(candlesEv);\n }\n if (\n options.addHebrewDates ||\n (options.addHebrewDatesForEvents && prevEventsLength !== evts.length)\n ) {\n const e2 = new HebrewDateEvent(hd);\n if (prevEventsLength === evts.length) {\n evts.push(e2);\n } else {\n evts.splice(prevEventsLength, 0, e2);\n }\n }\n }\n return evts;\n}\n\nconst FRI = 5;\nconst SAT = 6;\n\nconst NISAN = months.NISAN;\nconst SIVAN = months.SIVAN;\nconst ELUL = months.ELUL;\n\nconst LIGHT_CANDLES = flags.LIGHT_CANDLES;\nconst YOM_TOV_ENDS = flags.YOM_TOV_ENDS;\nconst CHUL_ONLY = flags.CHUL_ONLY;\nconst IL_ONLY = flags.IL_ONLY;\nconst LIGHT_CANDLES_TZEIS = flags.LIGHT_CANDLES_TZEIS;\nconst CHANUKAH_CANDLES = flags.CHANUKAH_CANDLES;\nconst MINOR_FAST = flags.MINOR_FAST;\nconst SPECIAL_SHABBAT = flags.SPECIAL_SHABBAT;\nconst MODERN_HOLIDAY = flags.MODERN_HOLIDAY;\nconst MAJOR_FAST = flags.MAJOR_FAST;\nconst ROSH_CHODESH = flags.ROSH_CHODESH;\nconst PARSHA_HASHAVUA = flags.PARSHA_HASHAVUA;\nconst DAF_YOMI = flags.DAF_YOMI;\nconst MISHNA_YOMI = flags.MISHNA_YOMI;\nconst NACH_YOMI = flags.NACH_YOMI;\nconst YERUSHALMI_YOMI = flags.YERUSHALMI_YOMI;\nconst OMER_COUNT = flags.OMER_COUNT;\nconst SHABBAT_MEVARCHIM = flags.SHABBAT_MEVARCHIM;\nconst MINOR_HOLIDAY = flags.MINOR_HOLIDAY;\nconst EREV = flags.EREV;\nconst CHOL_HAMOED = flags.CHOL_HAMOED;\nconst YOM_KIPPUR_KATAN = flags.YOM_KIPPUR_KATAN;\nconst YIZKOR = flags.YIZKOR;\n\ntype StringIntMap = Record<string, number>;\n\nconst unrecognizedAlreadyWarned = new Set<string>();\nconst RECOGNIZED_OPTIONS: StringIntMap = {\n location: 1,\n year: 1,\n isHebrewYear: 1,\n month: 1,\n numYears: 1,\n start: 1,\n end: 1,\n candlelighting: 1,\n candleLightingMins: 1,\n havdalahMins: 1,\n havdalahDeg: 1,\n fastEndDeg: 1,\n sedrot: 1,\n il: 1,\n noMinorFast: 1,\n noModern: 1,\n shabbatMevarchim: 1,\n noRoshChodesh: 1,\n noSpecialShabbat: 1,\n noHolidays: 1,\n omer: 1,\n molad: 1,\n ashkenazi: 1,\n locale: 1,\n addHebrewDates: 1,\n addHebrewDatesForEvents: 1,\n mask: 1,\n yomKippurKatan: 1,\n hour12: 1,\n dailyLearning: 1,\n useElevation: 1,\n yizkor: 1,\n} as const satisfies Record<keyof CalOptions, 1>;\n\n/**\n * @private\n */\nfunction warnUnrecognizedOptions(options: CalOptions) {\n for (const k of Object.keys(options)) {\n if (\n typeof RECOGNIZED_OPTIONS[k] === 'undefined' &&\n !unrecognizedAlreadyWarned.has(k)\n ) {\n console.warn(`Ignoring unrecognized HebrewCalendar option: ${k}`);\n unrecognizedAlreadyWarned.add(k);\n }\n }\n if (options.dailyLearning) {\n for (const k of Object.keys(options.dailyLearning)) {\n if (!unrecognizedAlreadyWarned.has(k) && !DailyLearning.has(k)) {\n console.warn(`Ignoring unrecognized DailyLearning calendar: ${k}`);\n unrecognizedAlreadyWarned.add(k);\n }\n }\n }\n}\n\nconst israelCityOffset: StringIntMap = {\n Jerusalem: 40,\n Haifa: 30,\n \"Zikhron Ya'aqov\": 30,\n \"Zikhron Ya'akov\": 30,\n 'Zikhron Yaakov': 30,\n \"Zichron Ya'akov\": 30,\n 'Zichron Yaakov': 30,\n} as const;\n\nconst geoIdCandleOffset: StringIntMap = {\n '281184': 40, // Jerusalem\n '294801': 30, // Haifa\n '293067': 30, // Zikhron Yaakov\n} as const;\n\n/**\n * @private\n * @constant\n * This calculation is based on the position of the sun 36 minutes after sunset in Jerusalem\n * around the equinox / equilux, which is 8.5° below geometric zenith.\n * The Ohr Meir considers this the time that 3 small stars are visible,\n * which is later than the required 3 medium stars.\n * @see {https://kosherjava.com/zmanim/docs/api/com/kosherjava/zmanim/ZmanimCalendar.html#ZENITH_8_POINT_5}\n */\nconst TZEIT_3SMALL_STARS = 8.5;\n\n/**\n * @private\n * @constant\n * This calculation is based on observation of 3 medium sized stars by Dr. Baruch Cohen\n * in his calendar published in in 1899 in Strasbourg, France.\n * This calculates to 7.0833333° below geometric zenith.\n * @see {https://kosherjava.com/zmanim/docs/api/com/kosherjava/zmanim/ComplexZmanimCalendar.html#ZENITH_7_POINT_083}\n */\nconst TZEIT_3MEDIUM_STARS = 7.0833333;\n\n/**\n * Modifies options in-place\n * @private\n */\nfunction checkCandleOptions(options: CalOptions) {\n if (!options.candlelighting) {\n return;\n }\n const location = options.location;\n if (typeof location === 'undefined' || !(location instanceof Location)) {\n throw new TypeError(\n 'options.candlelighting requires valid options.location'\n );\n }\n if (\n typeof options.havdalahMins === 'number' &&\n typeof options.havdalahDeg === 'number'\n ) {\n throw new TypeError(\n 'options.havdalahMins and options.havdalahDeg are mutually exclusive'\n );\n }\n\n const min0 = options.candleLightingMins;\n let min = typeof min0 === 'number' && !isNaN(min0) ? Math.trunc(min0) : 18;\n if (location.getIsrael() && Math.abs(min) === 18) {\n min = overrideIsraelCandleMins(location, min);\n }\n options.candleLightingMins = -1 * Math.abs(min);\n\n if (typeof options.havdalahMins === 'number') {\n options.havdalahMins = Math.trunc(Math.abs(options.havdalahMins));\n } else if (typeof options.havdalahDeg === 'number') {\n options.havdalahDeg = Math.abs(options.havdalahDeg);\n } else {\n options.havdalahDeg = TZEIT_3SMALL_STARS;\n }\n if (typeof options.fastEndDeg !== 'number') {\n options.fastEndDeg = TZEIT_3MEDIUM_STARS;\n }\n}\n\nfunction overrideIsraelCandleMins(location: Location, min: number) {\n const geoid = location.getGeoId();\n if (geoid) {\n const offset = geoIdCandleOffset[geoid];\n if (typeof offset === 'number') {\n return offset;\n }\n }\n const shortName = location.getShortName();\n if (shortName) {\n const offset = israelCityOffset[shortName];\n if (typeof offset === 'number') {\n return offset;\n }\n }\n return min;\n}\n\n/**\n * Mask to filter Holiday array\n * @private\n */\nfunction getMaskFromOptions(options: CalOptions): number {\n if (typeof options.mask === 'number') {\n return setOptionsFromMask(options);\n }\n const il = options.il || options.location?.getIsrael() || false;\n let mask = 0;\n\n // default options\n if (!options.noHolidays) {\n mask |=\n ROSH_CHODESH |\n YOM_TOV_ENDS |\n MINOR_FAST |\n SPECIAL_SHABBAT |\n MODERN_HOLIDAY |\n MAJOR_FAST |\n MINOR_HOLIDAY |\n EREV |\n CHOL_HAMOED |\n LIGHT_CANDLES |\n LIGHT_CANDLES_TZEIS |\n CHANUKAH_CANDLES;\n }\n if (options.candlelighting) {\n mask |= LIGHT_CANDLES | LIGHT_CANDLES_TZEIS | YOM_TOV_ENDS;\n }\n // suppression of defaults\n if (options.noRoshChodesh) {\n mask &= ~ROSH_CHODESH;\n }\n if (options.noModern) {\n mask &= ~MODERN_HOLIDAY;\n }\n if (options.noMinorFast) {\n mask &= ~MINOR_FAST;\n }\n if (options.noSpecialShabbat) {\n mask &= ~SPECIAL_SHABBAT;\n mask &= ~SHABBAT_MEVARCHIM;\n }\n if (il) {\n mask |= IL_ONLY;\n } else {\n mask |= CHUL_ONLY;\n }\n // non-default options\n if (options.sedrot) {\n mask |= PARSHA_HASHAVUA;\n }\n if (options.omer) {\n mask |= OMER_COUNT;\n }\n if (options.shabbatMevarchim) {\n mask |= SHABBAT_MEVARCHIM;\n }\n if (options.yomKippurKatan) {\n mask |= YOM_KIPPUR_KATAN;\n }\n if (options.yizkor) {\n mask |= YIZKOR;\n }\n if (options.dailyLearning) {\n const dailyLearning = options.dailyLearning;\n if (dailyLearning.dafYomi) {\n mask |= DAF_YOMI;\n }\n if (dailyLearning.mishnaYomi) {\n mask |= MISHNA_YOMI;\n }\n if (dailyLearning.nachYomi) {\n mask |= NACH_YOMI;\n }\n if (dailyLearning.yerushalmi) {\n mask |= YERUSHALMI_YOMI;\n }\n }\n\n return mask;\n}\n\nconst MASK_LIGHT_CANDLES =\n LIGHT_CANDLES | LIGHT_CANDLES_TZEIS | CHANUKAH_CANDLES | YOM_TOV_ENDS;\n\nconst defaultLocation = new Location(0, 0, false, 'UTC');\n\n/**\n * @private\n */\nfunction setOptionsFromMask(options: CalOptions): number {\n const m = options.mask || 0;\n if (m & ROSH_CHODESH) delete options.noRoshChodesh;\n if (m & MODERN_HOLIDAY) delete options.noModern;\n if (m & MINOR_FAST) delete options.noMinorFast;\n if (m & SPECIAL_SHABBAT) delete options.noSpecialShabbat;\n if (m & PARSHA_HASHAVUA) options.sedrot = true;\n if (m & (DAF_YOMI | MISHNA_YOMI | NACH_YOMI | YERUSHALMI_YOMI)) {\n options.dailyLearning = options.dailyLearning || {};\n if (m & DAF_YOMI) {\n options.dailyLearning.dafYomi = true;\n }\n if (m & MISHNA_YOMI) {\n options.dailyLearning.mishnaYomi = true;\n }\n if (m & NACH_YOMI) {\n options.dailyLearning.nachYomi = true;\n }\n if (m & YERUSHALMI_YOMI) {\n options.dailyLearning.yerushalmi = 1;\n }\n }\n if (m & OMER_COUNT) options.omer = true;\n if (m & SHABBAT_MEVARCHIM) options.shabbatMevarchim = true;\n if (m & YOM_KIPPUR_KATAN) options.yomKippurKatan = true;\n if (m & YIZKOR) options.yizkor = true;\n return m;\n}\n\n/**\n * Appends the Event `ev` to the `events` array. Also may add related\n * timed events like candle-lighting or fast start/end\n * @private\n */\nfunction appendHolidayAndRelated(\n candlesEv: TimedEvent | undefined,\n events: Event[],\n ev: HolidayEvent,\n options: CalOptions,\n isFriday: boolean,\n isSaturday: boolean,\n hasUserMask: boolean\n): TimedEvent | undefined {\n const il = options.il || false;\n if (!ev.observedIn(il)) {\n return candlesEv; // holiday isn't observed here; bail out early\n }\n const eFlags = ev.getFlags();\n if (\n (!options.yomKippurKatan && eFlags & YOM_KIPPUR_KATAN) ||\n (options.noModern && eFlags & MODERN_HOLIDAY)\n ) {\n return candlesEv; // bail out early\n }\n const isMajorFast = Boolean(eFlags & MAJOR_FAST);\n const isMinorFast = Boolean(eFlags & MINOR_FAST);\n let fastEv;\n if (\n options.candlelighting &&\n (isMajorFast || isMinorFast) &&\n ev.getDesc() !== 'Yom Kippur'\n ) {\n ev = fastEv = makeFastStartEnd(ev, options);\n if (\n fastEv.startEvent &&\n (isMajorFast || (isMinorFast && !options.noMinorFast))\n ) {\n events.push(fastEv.startEvent);\n }\n }\n if (eFlags & Number(options.mask) || (!eFlags && !hasUserMask)) {\n if (options.candlelighting && eFlags & MASK_LIGHT_CANDLES) {\n const hd = ev.getDate();\n candlesEv = makeCandleEvent(ev, hd, options, isFriday, isSaturday);\n if (eFlags & CHANUKAH_CANDLES && candlesEv && !options.noHolidays) {\n // Replace Chanukah event with a clone that includes candle lighting time.\n // For clarity, allow a \"duplicate\" candle lighting event to remain for Shabbat\n const chanukahEv = makeWeekdayChanukahCandleLighting(ev, hd, options);\n if (chanukahEv) {\n if (isFriday || isSaturday) {\n chanukahEv.eventTime = candlesEv.eventTime;\n chanukahEv.eventTimeStr = candlesEv.eventTimeStr;\n }\n ev = chanukahEv;\n }\n candlesEv = undefined;\n }\n }\n if (\n !options.noHolidays ||\n (options.yomKippurKatan && eFlags & YOM_KIPPUR_KATAN)\n ) {\n events.push(ev); // the original event itself\n }\n }\n if (\n (isMajorFast || (isMinorFast && !options.noMinorFast)) &&\n fastEv &&\n fastEv.endEvent\n ) {\n events.push(fastEv.endEvent);\n }\n return candlesEv;\n}\n\nfunction makeMoladAndMevarchimChodesh(hd: HDate, options: CalOptions): Event[] {\n const evts: Event[] = [];\n const hmonth = hd.getMonth();\n const hdate = hd.getDate();\n if (hmonth !== ELUL && hdate >= 23 && hdate <= 29) {\n const hyear = hd.getFullYear();\n const monNext = hmonth === HDate.monthsInYear(hyear) ? NISAN : hmonth + 1;\n if (options.molad) {\n evts.push(new MoladEvent(hd, hyear, monNext, options));\n }\n if (options.shabbatMevarchim) {\n const nextMonthName = HDate.getMonthName(monNext, hyear);\n const molad = new Molad(hyear, monNext);\n const memo = molad.render(options.locale || 'en', options);\n evts.push(new MevarchimChodeshEvent(hd, nextMonthName, memo));\n }\n }\n return evts;\n}\n\nfunction dailyLearningName(key: string, val: DailyLearningValue): string {\n if (key === 'yerushalmi') {\n return val === 2 ? 'yerushalmi-schottenstein' : 'yerushalmi-vilna';\n }\n return key;\n}\n\nfunction makeDailyLearning(\n hd: HDate,\n dailyLearning: Record<string, DailyLearningValue>,\n il: boolean\n): Event[] {\n const evts: Event[] = [];\n for (const [key, val] of Object.entries(dailyLearning)) {\n if (val) {\n const name = dailyLearningName(key, val);\n const learningEv = DailyLearning.lookup(name, hd, il);\n if (learningEv) {\n evts.push(learningEv);\n }\n }\n }\n return evts;\n}\n\nfunction makeOmerEvent(hd: HDate, omerDay: number, options: CalOptions) {\n const omerEv = new OmerEvent(hd, omerDay);\n if (options.candlelighting) {\n const location = options.location!;\n const zmanim = new Zmanim(location, hd.prev(), false);\n const tzeit = zmanim.tzeit(7.0833);\n if (!isNaN(tzeit.getTime())) {\n omerEv.alarm = tzeit;\n }\n }\n return omerEv;\n}\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { months } from '@hebcal/hdate';
3
3
  import { flags } from './event.js';
4
4
  import { HolidayEvent, ChanukahEvent } from './HolidayEvent.js';
package/dist/esm/event.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { HDate, Locale } from '@hebcal/hdate';
3
3
  import './locale.js';
4
4
 
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { months, HDate, greg2abs, daysInGregMonth, isDate } from '@hebcal/hdate';
3
3
 
4
4
  const TISHREI = months.TISHREI;
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { months } from '@hebcal/hdate';
3
3
  import { flags } from './event.js';
4
4
 
package/dist/esm/he.po.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  var poHe = { "headers": { "plural-forms": "nplurals=2; plural=(n > 1);", "language": "he_IL" }, "contexts": { "": { "Shabbat": ["שַׁבָּת"], "Daf Yomi": ["דַף יוֹמִי"], "Parashat": ["פָּרָשַׁת"], "Achrei Mot": ["אַחֲרֵי מוֹת"], "Balak": ["בָּלָק"], "Bamidbar": ["בְּמִדְבַּר"], "Bechukotai": ["בְּחֻקֹּתַי"], "Beha'alotcha": ["בְּהַעֲלֹתְךָ"], "Behar": ["בְּהַר"], "Bereshit": ["בְּרֵאשִׁית"], "Beshalach": ["בְּשַׁלַּח"], "Bo": ["בֹּא"], "Chayei Sara": ["חַיֵּי שָֹרָה"], "Chukat": ["חֻקַּת"], "Devarim": ["דְּבָרִים"], "Eikev": ["עֵקֶב"], "Emor": ["אֱמוֹר"], "Ha'azinu": ["הַאֲזִינוּ"], "Kedoshim": ["קְדשִׁים"], "Ki Tavo": ["כִּי־תָבוֹא"], "Ki Teitzei": ["כִּי־תֵצֵא"], "Ki Tisa": ["כִּי תִשָּׂא"], "Korach": ["קוֹרַח"], "Lech-Lecha": ["לֶךְ־לְךָ"], "Masei": ["מַסְעֵי"], "Matot": ["מַּטּוֹת"], "Metzora": ["מְּצֹרָע"], "Miketz": ["מִקֵּץ"], "Mishpatim": ["מִּשְׁפָּטִים"], "Nasso": ["נָשׂא"], "Nitzavim": ["נִצָּבִים"], "Noach": ["נֹחַ"], "Pekudei": ["פְקוּדֵי"], "Pinchas": ["פִּינְחָס"], "Re'eh": ["רְאֵה"], "Sh'lach": ["שְׁלַח־לְךָ"], "Shemot": ["שְׁמוֹת"], "Shmini": ["שְּׁמִינִי"], "Shoftim": ["שׁוֹפְטִים"], "Tazria": ["תַזְרִיעַ"], "Terumah": ["תְּרוּמָה"], "Tetzaveh": ["תְּצַוֶּה"], "Toldot": ["תּוֹלְדוֹת"], "Tzav": ["צַו"], "Vaera": ["וָאֵרָא"], "Vaetchanan": ["וָאֶתְחַנַּן"], "Vayakhel": ["וַיַּקְהֵל"], "Vayechi": ["וַיְחִי"], "Vayeilech": ["וַיֵּלֶךְ"], "Vayera": ["וַיֵּרָא"], "Vayeshev": ["וַיֵּשֶׁב"], "Vayetzei": ["וַיֵּצֵא"], "Vayigash": ["וַיִּגַּשׁ"], "Vayikra": ["וַיִּקְרָא"], "Vayishlach": ["וַיִּשְׁלַח"], "Vezot Haberakhah": ["וְזֹאת הַבְּרָכָה"], "Yitro": ["יִתְרוֹ"], "Asara B'Tevet": ["עֲשָׂרָה בְּטֵבֵת"], "Candle lighting": ["הַדְלָקַת נֵרוֹת"], "Chanukah": ["חֲנוּכָּה"], "Chanukah: 1 Candle": ["חֲנוּכָּה: א׳ נֵר"], "Chanukah: 2 Candles": ["חֲנוּכָּה: ב׳ נֵרוֹת"], "Chanukah: 3 Candles": ["חֲנוּכָּה: ג׳ נֵרוֹת"], "Chanukah: 4 Candles": ["חֲנוּכָּה: ד׳ נֵרוֹת"], "Chanukah: 5 Candles": ["חֲנוּכָּה: ה׳ נֵרוֹת"], "Chanukah: 6 Candles": ["חֲנוּכָּה: ו׳ נֵרוֹת"], "Chanukah: 7 Candles": ["חֲנוּכָּה: ז׳ נֵרוֹת"], "Chanukah: 8 Candles": ["חֲנוּכָּה: ח׳ נֵרוֹת"], "Chanukah: 8th Day": ["חֲנוּכָּה: יוֹם ח׳"], "Days of the Omer": ["סְפִירַת הָעוֹמֶר"], "Omer": ["עוֹמֶר"], "day of the Omer": ["בָּעוֹמֶר"], "Erev Pesach": ["עֶרֶב פֶּסַח"], "Erev Purim": ["עֶרֶב פּוּרִים"], "Erev Rosh Hashana": ["עֶרֶב רֹאשׁ הַשָּׁנָה"], "Erev Shavuot": ["עֶרֶב שָׁבוּעוֹת"], "Erev Simchat Torah": ["עֶרֶב שִׂמְחַת תּוֹרָה"], "Erev Sukkot": ["עֶרֶב סוּכּוֹת"], "Erev Tish'a B'Av": ["עֶרֶב תִּשְׁעָה בְּאָב"], "Erev Yom Kippur": ["עֶרֶב יוֹם כִּפּוּר"], "Havdalah": ["הַבְדָּלָה"], "Lag BaOmer": ["ל״ג בָּעוֹמֶר"], "Leil Selichot": ["סליחות"], "Pesach": ["פֶּסַח"], "Pesach I": ["פֶּסַח א׳"], "Pesach II": ["פֶּסַח ב׳"], "Pesach II (CH''M)": ["פֶּסַח ב׳ (חוה״מ)"], "Pesach III (CH''M)": ["פֶּסַח ג׳ (חוה״מ)"], "Pesach IV (CH''M)": ["פֶּסַח ד׳ (חוה״מ)"], "Pesach Sheni": ["פֶּסַח שני"], "Pesach V (CH''M)": ["פֶּסַח ה׳ (חוה״מ)"], "Pesach VI (CH''M)": ["פֶּסַח ו׳ (חוה״מ)"], "Pesach VII": ["פֶּסַח ז׳"], "Pesach VIII": ["פֶּסַח ח׳"], "Purim": ["פּוּרִים"], "Purim Katan": ["פּוּרִים קָטָן"], "Rosh Chodesh %s": ["רֹאשׁ חוֹדֶשׁ %s"], "Rosh Chodesh": ["רֹאשׁ חוֹדֶשׁ"], "Rosh Hashana": ["רֹאשׁ הַשָּׁנָה"], "Rosh Hashana I": ["רֹאשׁ הַשָּׁנָה א׳"], "Rosh Hashana II": ["רֹאשׁ הַשָּׁנָה ב׳"], "Shabbat Chazon": ["שַׁבָּת חֲזוֹן"], "Shabbat HaChodesh": ["שַׁבָּת הַחֹדֶשׁ"], "Shabbat HaGadol": ["שַׁבָּת הַגָּדוֹל"], "Shabbat Nachamu": ["שַׁבָּת נַחֲמוּ"], "Shabbat Parah": ["שַׁבָּת פּרה"], "Shabbat Shekalim": ["שַׁבָּת שְׁקָלִים"], "Shabbat Shuva": ["שַׁבָּת שׁוּבָה"], "Shabbat Zachor": ["שַׁבָּת זָכוֹר"], "Shavuot": ["שָׁבוּעוֹת"], "Shavuot I": ["שָׁבוּעוֹת א׳"], "Shavuot II": ["שָׁבוּעוֹת ב׳"], "Shmini Atzeret": ["שְׁמִינִי עֲצֶרֶת"], "Shushan Purim": ["שׁוּשָׁן פּוּרִים"], "Sigd": ["סיגד"], "Simchat Torah": ["שִׂמְחַת תּוֹרָה"], "Sukkot": ["סוּכּוֹת"], "Sukkot I": ["סוּכּוֹת א׳"], "Sukkot II": ["סוּכּוֹת ב׳"], "Sukkot II (CH''M)": ["סוּכּוֹת ב׳ (חוה״מ)"], "Sukkot III (CH''M)": ["סוּכּוֹת ג׳ (חוה״מ)"], "Sukkot IV (CH''M)": ["סוּכּוֹת ד׳ (חוה״מ)"], "Sukkot V (CH''M)": ["סוּכּוֹת ה׳ (חוה״מ)"], "Sukkot VI (CH''M)": ["סוּכּוֹת ו׳ (חוה״מ)"], "Sukkot VII (Hoshana Raba)": ["סוּכּוֹת ז׳ (הוֹשַׁעְנָא רַבָּה)"], "Ta'anit Bechorot": ["תַּעֲנִית בְּכוֹרוֹת"], "Ta'anit Esther": ["תַּעֲנִית אֶסְתֵּר"], "Tish'a B'Av": ["תִּשְׁעָה בְּאָב"], "Tu B'Av": ["טוּ בְּאָב"], "Tu BiShvat": ["טוּ בִּשְׁבָט"], "Tu B'Shvat": ["טוּ בִּשְׁבָט"], "Tzom Gedaliah": ["צוֹם גְּדַלְיָה"], "Tzom Tammuz": ["צוֹם תָּמוּז"], "Yom HaAtzma'ut": ["יוֹם הָעַצְמָאוּת"], "Yom HaShoah": ["יוֹם הַשּׁוֹאָה"], "Yom HaZikaron": ["יוֹם הַזִּכָּרוֹן"], "Yom Kippur": ["יוֹם כִּפּוּר"], "Yom Yerushalayim": ["יוֹם יְרוּשָׁלַיִם"], "Yom HaAliyah": ["יוֹם הַעֲלִיָּה"], "Yom HaAliyah School Observance": ["שְׁמִירָת בֵּית הַסֵפֶר לְיוֹם הַעֲלִיָּה"], "Rosh Chodesh Adar": ["רֹאשׁ חוֹדֶשׁ אַדָר"], "Rosh Chodesh Adar I": ["רֹאשׁ חוֹדֶשׁ אַדָר א׳"], "Rosh Chodesh Adar II": ["רֹאשׁ חוֹדֶשׁ אַדָר ב׳"], "Rosh Chodesh Av": ["רֹאשׁ חוֹדֶשׁ אָב"], "Rosh Chodesh Cheshvan": ["רֹאשׁ חוֹדֶשׁ חֶשְׁוָן"], "Rosh Chodesh Elul": ["רֹאשׁ חוֹדֶשׁ אֱלוּל"], "Rosh Chodesh Iyyar": ["רֹאשׁ חוֹדֶשׁ אִיָיר"], "Rosh Chodesh Kislev": ["רֹאשׁ חוֹדֶשׁ כִּסְלֵו"], "Rosh Chodesh Nisan": ["רֹאשׁ חוֹדֶשׁ נִיסָן"], "Rosh Chodesh Sh'vat": ["רֹאשׁ חוֹדֶשׁ שְׁבָט"], "Rosh Chodesh Sivan": ["רֹאשׁ חוֹדֶשׁ סִיוָן"], "Rosh Chodesh Tamuz": ["רֹאשׁ חוֹדֶשׁ תָּמוּז"], "Rosh Chodesh Tevet": ["רֹאשׁ חוֹדֶשׁ טֵבֵת"], "min": ["דַּקּוֹת"], "Fast begins": ["תחילת הַצוֹם"], "Fast ends": ["סִיּוּם הַצוֹם"], "Rosh Hashana LaBehemot": ["רֹאשׁ הַשָּׁנָה לְמַעְשַׂר בְּהֵמָה"], "Tish'a B'Av (observed)": ["תִּשְׁעָה בְּאָב נִדחֶה"], "Shabbat Mevarchim Chodesh": ["שַׁבָּת מְבָרְכִים חוֹדֶשׁ"], "Shabbat Shirah": ["שַׁבָּת שִׁירָה"], "Chatzot HaLailah": ["חֲצוֹת הַלַיְלָה"], "Alot haShachar": ["עֲלוֹת הַשַּׁחַר"], "Misheyakir": ["מִשֶּׁיַּכִּיר"], "Misheyakir Machmir": ["מִשֶּׁיַּכִּיר מַחמִיר"], "Dawn": ["דִּימְדּוּמֵי בּוֹקֵר"], "Sunrise": ["הַנֵץ הַחַמָּה"], "Kriat Shema, sof zeman": ["סוֹף זְמַן קְרִיאַת שְׁמַע גר״א"], "Tefilah, sof zeman": ["סוֹף זְמַן תְּפִלָּה גר״א"], "Kriat Shema, sof zeman (MGA)": ["סוֹף זְמַן קְרִיאַת שְׁמַע מג״א"], "Tefilah, sof zeman (MGA)": ["סוֹף זְמַן תְּפִלָּה מג״א"], "Chatzot hayom": ["חֲצוֹת הַיּוֹם"], "Mincha Gedolah": ["מִנְחָה גְּדוֹלָה"], "Mincha Ketanah": ["מִנְחָה קְטַנָּה"], "Plag HaMincha": ["פְּלַג הַמִּנְחָה"], "Dusk": ["דִּימְדּוּמֵי עֶרֶב"], "Sunset": ["שְׁקִיעָה"], "Nightfall - End of ordained fasts": ["לַיְלָה - גמר תעניות דרבנן"], "Tzeit HaKochavim": ["צֵאת הַכּוֹכָבִים"], "Lovingkindness": ["חֶֽסֶד"], "Might": ["גְבוּרָה"], "Beauty": ["תִּפאֶרֶת"], "Eternity": ["נֶּֽצַח"], "Splendor": ["הוֹד"], "Foundation": ["יְּסוֹד"], "Majesty": ["מַּלְכוּת"], "day": ["יוֹם"], "Yom Kippur Katan": ["יוֹם כִּפּוּר קָטָן"], "Yizkor": ["יִזְכּוֹר"], "Family Day": ["יוֹם הַמִּשׁפָּחָה"], "Yitzhak Rabin Memorial Day": ["יוֹם הַזִּכָּרוֹן ליצחק רבין"], "Jabotinsky Day": ["יוֹם ז׳בוטינסקי"], "Herzl Day": ["יוֹם הרצל"], "Ben-Gurion Day": ["יוֹם בן־גוריון"], "Hebrew Language Day": ["יוֹם הַשָׂפָה הַעִברִית"], "Birkat Hachamah": ["בִרְכַּת הַחַמָּה"], "Shushan Purim Katan": ["שׁוּשָׁן פּוּרִים קָטָן"], "Purim Meshulash": ["פּוּרִים מְשׁוּלָּשׁ"], "after sunset": ["לְאַחַר הַשְׁקִיעָה"], "Yerushalmi": ["יְרוּשַׁלְמִי"], "Chag HaBanot": ["חַג הַבָּנוֹת"], "Joshua": ["יְהוֹשׁוּעַ"], "Judges": ["שׁוֹפְטִים"], "I Samuel": ["שְׁמוּאֵל רִאשׁוֹן"], "II Samuel": ["שְׁמוּאֵל שֵׁנִי"], "I Kings": ["מְלָכִים רִאשׁוֹן"], "II Kings": ["מְלָכִים שֵׁנִי"], "Isaiah": ["יְשַׁעְיָהוּ"], "Jeremiah": ["יִרְמְיָהוּ"], "Ezekiel": ["יְחֶזְקֵאל"], "Hosea": ["הוֹשֵׁעַ"], "Joel": ["יוֹאֵל"], "Amos": ["עָמוּס"], "Obadiah": ["עוֹבַדְיָה"], "Jonah": ["יוֹנָה"], "Micah": ["מִיכָה"], "Nachum": ["נַחוּם"], "Habakkuk": ["חֲבַקּוּק"], "Zephaniah": ["צְפַנְיָה"], "Haggai": ["חַגַּי"], "Zechariah": ["זְכַרְיָה"], "Malachi": ["מַלְאָכִי"], "Psalms": ["תְּהִלִּים"], "Proverbs": ["מִשְׁלֵי"], "Job": ["אִיּוֹב"], "Song of Songs": ["שִׁיר הַשִּׁירִים"], "Ruth": ["רוּת"], "Lamentations": ["אֵיכָה"], "Ecclesiastes": ["קֹהֶלֶת"], "Esther": ["אֶסְתֵּר"], "Daniel": ["דָּנִיֵּאל"], "Ezra": ["עֶזְרָא"], "Nehemiah": ["נְחֶמְיָה"], "I Chronicles": ["דִברֵי הַיָמִים רִאשׁוֹן"], "II Chronicles": ["דִברֵי הַיָמִים שֵׁנִי"], "Molad": ["מוֹלָד הָלְּבָנָה"], "chalakim": ["חֲלָקִים"], "Pirkei Avot": ["פִּרְקֵי אָבוֹת"] } } };
3
3
 
4
4
  export { poHe as default };
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { getBirthdayHD, HDate, getYahrzeitHD } from '@hebcal/hdate';
3
3
  import './locale.js';
4
4
  import { version } from './pkgVersion.js';
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { months, HDate } from '@hebcal/hdate';
3
3
  import QuickLRU from 'quick-lru';
4
4
  import { flags } from './event.js';
@@ -9,16 +9,17 @@ export { GeoLocation, NOAACalculator } from '@hebcal/noaa';
9
9
  export { Location } from './location';
10
10
  export { Zmanim } from './zmanim';
11
11
  export { TimedEvent, CandleLightingEvent, HavdalahEvent } from './TimedEvent';
12
- export { FastDayEvent } from './candles';
12
+ export { FastDayEvent, TimedChanukahEvent } from './candles';
13
13
  export { Molad, MoladEvent } from './molad';
14
14
  export { OmerEvent } from './omer';
15
15
  export { TachanunResult } from './tachanun';
16
16
  export { Sedra, SedraResult, parshiot, getSedra } from './sedra';
17
17
  export { ParshaEvent } from './ParshaEvent';
18
18
  export { parshaYear } from './parshaYear';
19
- export { HolidayEvent, AsaraBTevetEvent, RoshChodeshEvent, RoshHashanaEvent, } from './HolidayEvent';
19
+ export { HolidayEvent, ChanukahEvent, AsaraBTevetEvent, RoshChodeshEvent, RoshHashanaEvent, } from './HolidayEvent';
20
20
  export { HolidayYearMap, getHolidaysOnDate } from './holidays';
21
21
  export { MevarchimChodeshEvent } from './MevarchimChodeshEvent';
22
+ export { YomKippurKatanEvent } from './YomKippurKatanEvent';
22
23
  export { holidayDesc } from './staticHolidays';
23
24
  export { DailyLearning } from './DailyLearning';
24
25
  export { HebrewCalendar } from './hebcal';
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  export { version } from './pkgVersion.js';
3
3
  export { HDate, Locale, gematriya, gematriyaStrToNum, greg, months } from '@hebcal/hdate';
4
4
  import './locale.js';
@@ -8,15 +8,16 @@ export { GeoLocation, NOAACalculator } from '@hebcal/noaa';
8
8
  export { Location } from './location.js';
9
9
  export { Zmanim } from './zmanim.js';
10
10
  export { CandleLightingEvent, HavdalahEvent, TimedEvent } from './TimedEvent.js';
11
- export { FastDayEvent } from './candles.js';
11
+ export { FastDayEvent, TimedChanukahEvent } from './candles.js';
12
12
  export { Molad, MoladEvent } from './molad.js';
13
13
  export { OmerEvent } from './omer.js';
14
14
  export { Sedra, getSedra, parshiot } from './sedra.js';
15
15
  export { ParshaEvent } from './ParshaEvent.js';
16
16
  export { parshaYear } from './parshaYear.js';
17
- export { AsaraBTevetEvent, HolidayEvent, RoshChodeshEvent, RoshHashanaEvent } from './HolidayEvent.js';
17
+ export { AsaraBTevetEvent, ChanukahEvent, HolidayEvent, RoshChodeshEvent, RoshHashanaEvent } from './HolidayEvent.js';
18
18
  export { getHolidaysOnDate } from './holidays.js';
19
19
  export { MevarchimChodeshEvent } from './MevarchimChodeshEvent.js';
20
+ export { YomKippurKatanEvent } from './YomKippurKatanEvent.js';
20
21
  export { holidayDesc } from './staticHolidays.js';
21
22
  export { DailyLearning } from './DailyLearning.js';
22
23
  export { HebrewCalendar } from './hebcal.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { Locale } from '@hebcal/hdate';
3
3
  export { Locale } from '@hebcal/hdate';
4
4
  import poAshkenazi from './ashkenazi.po.js';
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v5.8.11, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
1
+ /*! @hebcal/core v5.8.12, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
2
2
  import { GeoLocation } from '@hebcal/noaa';
3
3
 
4
4
  /*