@hebcal/leyning 9.5.6 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/dist/esm/aliyot.json.d.ts +1574 -0
  2. package/dist/esm/aliyot.json.js +1250 -5
  3. package/dist/esm/aliyot.json.js.map +1 -1
  4. package/dist/esm/ashkenazi.po.js +2 -5
  5. package/dist/esm/ashkenazi.po.js.map +1 -1
  6. package/dist/esm/calculateHaftarahNumVerses.d.ts +8 -0
  7. package/dist/esm/calculateHaftarahNumVerses.js +36 -0
  8. package/dist/esm/calculateHaftarahNumVerses.js.map +1 -0
  9. package/dist/esm/clone.d.ts +11 -7
  10. package/dist/esm/clone.js +11 -13
  11. package/dist/esm/clone.js.map +1 -1
  12. package/dist/esm/common.d.ts +15 -7
  13. package/dist/esm/common.js +22 -18
  14. package/dist/esm/common.js.map +1 -1
  15. package/dist/esm/csv.d.ts +35 -2
  16. package/dist/esm/csv.js +42 -13
  17. package/dist/esm/csv.js.map +1 -1
  18. package/dist/esm/festival.d.ts +12 -3
  19. package/dist/esm/festival.js +14 -9
  20. package/dist/esm/festival.js.map +1 -1
  21. package/dist/esm/format.d.ts +14 -2
  22. package/dist/esm/format.js +17 -10
  23. package/dist/esm/format.js.map +1 -1
  24. package/dist/esm/getLeyningForHoliday.d.ts +23 -14
  25. package/dist/esm/getLeyningForHoliday.js +29 -24
  26. package/dist/esm/getLeyningForHoliday.js.map +1 -1
  27. package/dist/esm/getLeyningKeyForEvent.d.ts +20 -3
  28. package/dist/esm/getLeyningKeyForEvent.js +28 -18
  29. package/dist/esm/getLeyningKeyForEvent.js.map +1 -1
  30. package/dist/esm/getLeyningOnDate.d.ts +7 -4
  31. package/dist/esm/getLeyningOnDate.js +5 -9
  32. package/dist/esm/getLeyningOnDate.js.map +1 -1
  33. package/dist/esm/he-x-NoNikud.po.js +2 -5
  34. package/dist/esm/he-x-NoNikud.po.js.map +1 -1
  35. package/dist/esm/he.po.js +2 -5
  36. package/dist/esm/he.po.js.map +1 -1
  37. package/dist/esm/holiday-readings.json.d.ts +2786 -0
  38. package/dist/esm/holiday-readings.json.js +650 -5
  39. package/dist/esm/holiday-readings.json.js.map +1 -1
  40. package/dist/esm/index.d.ts +13 -13
  41. package/dist/esm/index.js +12 -11
  42. package/dist/esm/index.js.map +1 -1
  43. package/dist/esm/internalTypes.d.ts +2 -1
  44. package/dist/esm/internalTypes.js +2 -0
  45. package/dist/esm/internalTypes.js.map +1 -0
  46. package/dist/esm/leyning.d.ts +42 -14
  47. package/dist/esm/leyning.js +75 -27
  48. package/dist/esm/leyning.js.map +1 -1
  49. package/dist/esm/locale.js +2 -4
  50. package/dist/esm/locale.js.map +1 -1
  51. package/dist/esm/numverses.json.d.ts +35 -0
  52. package/dist/esm/numverses.json.js +47 -5
  53. package/dist/esm/numverses.json.js.map +1 -1
  54. package/dist/esm/specialReadings.d.ts +6 -1
  55. package/dist/esm/specialReadings.js +8 -7
  56. package/dist/esm/specialReadings.js.map +1 -1
  57. package/dist/esm/summary.d.ts +21 -9
  58. package/dist/esm/summary.js +25 -18
  59. package/dist/esm/summary.js.map +1 -1
  60. package/dist/esm/translate.d.ts +10 -10
  61. package/dist/esm/translate.js +14 -19
  62. package/dist/esm/translate.js.map +1 -1
  63. package/dist/esm/types.d.ts +163 -51
  64. package/dist/esm/types.js +2 -0
  65. package/dist/esm/types.js.map +1 -0
  66. package/package.json +11 -25
  67. package/dist/bundle.js +0 -2965
  68. package/dist/bundle.min.js +0 -15
@@ -1 +1 @@
1
- {"version":3,"file":"aliyot.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
1
+ {"version":3,"file":"aliyot.json.js","sourceRoot":"","sources":["../../src/aliyot.json.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,2 @@
1
- /*! @hebcal/leyning v9.5.6 */
2
- var poAshkenazi = { "headers": { "plural-forms": "nplurals=2; plural=(n > 1);", "language": "und-x-ashkenaz" }, "contexts": { "": { "Shabbat Machar Chodesh": ["Shabbos Machar Chodesh"], "Shabbat Rosh Chodesh": ["Shabbos Rosh Chodesh"], "Pesach I (on Shabbat)": ["Pesach I (on Shabbos)"], "Pesach Shabbat Chol ha-Moed": ["Pesach Shabbos Chol ha-Moed"], "Pesach VII (on Shabbat)": ["Pesach VII (on Shabbos)"], "Pesach VIII (on Shabbat)": ["Pesach VIII (on Shabbos)"], "Shavuot II (on Shabbat)": ["Shavuos II (on Shabbos)"], "Rosh Hashana I (on Shabbat)": ["Rosh Hashana I (on Shabbos)"], "Yom Kippur (on Shabbat)": ["Yom Kippur (on Shabbos)"], "Sukkot I (on Shabbat)": ["Sukkos I (on Shabbos)"], "Sukkot Chol ha-Moed Day 1": ["Sukkos Chol ha-Moed Day 1"], "Sukkot Chol ha-Moed Day 2": ["Sukkos Chol ha-Moed Day 2"], "Sukkot Chol ha-Moed Day 3": ["Sukkos Chol ha-Moed Day 3"], "Sukkot Chol ha-Moed Day 4": ["Sukkos Chol ha-Moed Day 4"], "Sukkot Chol ha-Moed Day 5": ["Sukkos Chol ha-Moed Day 5"], "Sukkot Shabbat Chol ha-Moed": ["Sukkos Shabbos Chol ha-Moed"], "Sukkot Final Day (Hoshana Raba)": ["Sukkos Final Day (Hoshana Raba)"], "Shmini Atzeret (on Shabbat)": ["Shmini Atzeres (on Shabbos)"], "Chanukah Day 1 (on Shabbat)": ["Chanukah Day 1 (on Shabbos)"], "Chanukah Day 2 (on Shabbat)": ["Chanukah Day 2 (on Shabbos)"], "Chanukah Day 3 (on Shabbat)": ["Chanukah Day 3 (on Shabbos)"], "Chanukah Day 4 (on Shabbat)": ["Chanukah Day 4 (on Shabbos)"], "Chanukah Day 5 (on Shabbat)": ["Chanukah Day 5 (on Shabbos)"], "Chanukah Day 7 (on Shabbat)": ["Chanukah Day 7 (on Shabbos)"], "Chanukah Day 8 (on Shabbat)": ["Chanukah Day 8 (on Shabbos)"], "Shabbat Rosh Chodesh Chanukah": ["Shabbos Rosh Chodesh Chanukah"], "Asara B'Tevet (Mincha)": ["Asara B’Teves (Mincha)"], "Ta'anit Bechorot (Mincha)": ["Ta’anis Bechoros (Mincha)"], "Ta'anit Esther (Mincha)": ["Ta’anis Esther (Mincha)"] } } };
3
-
4
- export { poAshkenazi as default };
5
- //# sourceMappingURL=ashkenazi.po.js.map
1
+ export default { "headers": { "plural-forms": "nplurals=2; plural=(n > 1);", "language": "und-x-ashkenaz" }, "contexts": { "": { "Shabbat Machar Chodesh": ["Shabbos Machar Chodesh"], "Shabbat Rosh Chodesh": ["Shabbos Rosh Chodesh"], "Pesach I (on Shabbat)": ["Pesach I (on Shabbos)"], "Pesach Shabbat Chol ha-Moed": ["Pesach Shabbos Chol ha-Moed"], "Pesach VII (on Shabbat)": ["Pesach VII (on Shabbos)"], "Pesach VIII (on Shabbat)": ["Pesach VIII (on Shabbos)"], "Shavuot II (on Shabbat)": ["Shavuos II (on Shabbos)"], "Rosh Hashana I (on Shabbat)": ["Rosh Hashana I (on Shabbos)"], "Yom Kippur (on Shabbat)": ["Yom Kippur (on Shabbos)"], "Sukkot I (on Shabbat)": ["Sukkos I (on Shabbos)"], "Sukkot Chol ha-Moed Day 1": ["Sukkos Chol ha-Moed Day 1"], "Sukkot Chol ha-Moed Day 2": ["Sukkos Chol ha-Moed Day 2"], "Sukkot Chol ha-Moed Day 3": ["Sukkos Chol ha-Moed Day 3"], "Sukkot Chol ha-Moed Day 4": ["Sukkos Chol ha-Moed Day 4"], "Sukkot Chol ha-Moed Day 5": ["Sukkos Chol ha-Moed Day 5"], "Sukkot Shabbat Chol ha-Moed": ["Sukkos Shabbos Chol ha-Moed"], "Sukkot Final Day (Hoshana Raba)": ["Sukkos Final Day (Hoshana Raba)"], "Shmini Atzeret (on Shabbat)": ["Shmini Atzeres (on Shabbos)"], "Chanukah Day 1 (on Shabbat)": ["Chanukah Day 1 (on Shabbos)"], "Chanukah Day 2 (on Shabbat)": ["Chanukah Day 2 (on Shabbos)"], "Chanukah Day 3 (on Shabbat)": ["Chanukah Day 3 (on Shabbos)"], "Chanukah Day 4 (on Shabbat)": ["Chanukah Day 4 (on Shabbos)"], "Chanukah Day 5 (on Shabbat)": ["Chanukah Day 5 (on Shabbos)"], "Chanukah Day 7 (on Shabbat)": ["Chanukah Day 7 (on Shabbos)"], "Chanukah Day 8 (on Shabbat)": ["Chanukah Day 8 (on Shabbos)"], "Shabbat Rosh Chodesh Chanukah": ["Shabbos Rosh Chodesh Chanukah"], "Asara B'Tevet (Mincha)": ["Asara B’Teves (Mincha)"], "Ta'anit Bechorot (Mincha)": ["Ta’anis Bechoros (Mincha)"], "Ta'anit Esther (Mincha)": ["Ta’anis Esther (Mincha)"] } } };
2
+ //# sourceMappingURL=ashkenazi.po.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ashkenazi.po.js","sources":["../../../src/ashkenazi.po.ts"],"sourcesContent":[null],"names":[],"mappings":";AAAA,kBAAe,EAAC,SAAS,EAAC,EAAC,cAAc,EAAC,6BAA6B,EAAC,UAAU,EAAC,gBAAgB,EAAC,EAAC,UAAU,EAAC,EAAC,EAAE,EAAC,EAAC,wBAAwB,EAAC,CAAC,wBAAwB,CAAC,EAAC,sBAAsB,EAAC,CAAC,sBAAsB,CAAC,EAAC,uBAAuB,EAAC,CAAC,uBAAuB,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,yBAAyB,EAAC,CAAC,yBAAyB,CAAC,EAAC,0BAA0B,EAAC,CAAC,0BAA0B,CAAC,EAAC,yBAAyB,EAAC,CAAC,yBAAyB,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,yBAAyB,EAAC,CAAC,yBAAyB,CAAC,EAAC,uBAAuB,EAAC,CAAC,uBAAuB,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,iCAAiC,EAAC,CAAC,iCAAiC,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,+BAA+B,EAAC,CAAC,+BAA+B,CAAC,EAAC,wBAAwB,EAAC,CAAC,wBAAwB,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,yBAAyB,EAAC,CAAC,yBAAyB,CAAC,EAAC,EAAC,EAAC;;;;"}
1
+ {"version":3,"file":"ashkenazi.po.js","sourceRoot":"","sources":["../../src/ashkenazi.po.ts"],"names":[],"mappings":"AAAA,eAAe,EAAC,SAAS,EAAC,EAAC,cAAc,EAAC,6BAA6B,EAAC,UAAU,EAAC,gBAAgB,EAAC,EAAC,UAAU,EAAC,EAAC,EAAE,EAAC,EAAC,wBAAwB,EAAC,CAAC,wBAAwB,CAAC,EAAC,sBAAsB,EAAC,CAAC,sBAAsB,CAAC,EAAC,uBAAuB,EAAC,CAAC,uBAAuB,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,yBAAyB,EAAC,CAAC,yBAAyB,CAAC,EAAC,0BAA0B,EAAC,CAAC,0BAA0B,CAAC,EAAC,yBAAyB,EAAC,CAAC,yBAAyB,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,yBAAyB,EAAC,CAAC,yBAAyB,CAAC,EAAC,uBAAuB,EAAC,CAAC,uBAAuB,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,iCAAiC,EAAC,CAAC,iCAAiC,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,6BAA6B,EAAC,CAAC,6BAA6B,CAAC,EAAC,+BAA+B,EAAC,CAAC,+BAA+B,CAAC,EAAC,wBAAwB,EAAC,CAAC,wBAAwB,CAAC,EAAC,2BAA2B,EAAC,CAAC,2BAA2B,CAAC,EAAC,yBAAyB,EAAC,CAAC,yBAAyB,CAAC,EAAC,EAAC,EAAC,CAAA"}
@@ -1 +1,9 @@
1
+ /**
2
+ * Counts the verses in a formatted Haftarah citation string such as
3
+ * `'Isaiah 6:1-7:6, 9:5-6'` or `'Genesis 21:1-34; Numbers 29:1-6'`, parsing
4
+ * the book names and verse ranges. A bare reference like `'Jeremiah 3:4'`
5
+ * counts as one verse.
6
+ * @param haftara a formatted Haftarah citation
7
+ * @returns the total number of verses, or `undefined` if none could be parsed
8
+ */
1
9
  export declare function calculateHaftarahNumVerses(haftara: string): number | undefined;
@@ -0,0 +1,36 @@
1
+ import { calculateNumVerses } from './common.js';
2
+ /**
3
+ * Counts the verses in a formatted Haftarah citation string such as
4
+ * `'Isaiah 6:1-7:6, 9:5-6'` or `'Genesis 21:1-34; Numbers 29:1-6'`, parsing
5
+ * the book names and verse ranges. A bare reference like `'Jeremiah 3:4'`
6
+ * counts as one verse.
7
+ * @param haftara a formatted Haftarah citation
8
+ * @returns the total number of verses, or `undefined` if none could be parsed
9
+ */
10
+ export function calculateHaftarahNumVerses(haftara) {
11
+ const sections = haftara.split(/[;,]/);
12
+ let total = 0;
13
+ let prevBook = '';
14
+ for (const haft of sections) {
15
+ const matches = new RegExp(/^(([^\d]+)\s+)?(\d.+)$/).exec(haft.trim());
16
+ if (matches !== null) {
17
+ const hbook = matches[2] ? matches[2].trim() : prevBook;
18
+ const hverses = matches[3].trim();
19
+ const cv = new RegExp(/^(\d+:\d+)\s*-\s*(\d+(:\d+)?)$/).exec(hverses);
20
+ if (cv) {
21
+ if (!cv[2].includes(':')) {
22
+ const chap = cv[1].substring(0, cv[1].indexOf(':'));
23
+ cv[2] = `${chap}:${cv[2]}`;
24
+ }
25
+ const haft = { k: hbook, b: cv[1], e: cv[2] };
26
+ total += calculateNumVerses(haft);
27
+ }
28
+ else {
29
+ total++; // Something like "Jeremiah 3:4" is 1 verse
30
+ }
31
+ prevBook = hbook;
32
+ }
33
+ }
34
+ return total || undefined;
35
+ }
36
+ //# sourceMappingURL=calculateHaftarahNumVerses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calculateHaftarahNumVerses.js","sourceRoot":"","sources":["../../src/calculateHaftarahNumVerses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAC;AAG/C;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAe;IAEf,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACvE,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;YACxD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,gCAAgC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtE,IAAI,EAAE,EAAE,CAAC;gBACP,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;oBACpD,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7B,CAAC;gBACD,MAAM,IAAI,GAAW,EAAC,CAAC,EAAE,KAAmB,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAC,CAAC;gBAClE,KAAK,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,KAAK,EAAE,CAAC,CAAC,2CAA2C;YACtD,CAAC;YACD,QAAQ,GAAG,KAAK,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,IAAI,SAAS,CAAC;AAC5B,CAAC"}
@@ -1,13 +1,17 @@
1
- import { Aliyah } from './types';
2
- import { JsonFestivalAliyah } from './internalTypes';
1
+ import { Aliyah } from './types.js';
2
+ import { JsonFestivalAliyah } from './internalTypes.js';
3
+ export type Haftarah = Aliyah | Aliyah[] | JsonFestivalAliyah | JsonFestivalAliyah[];
3
4
  /**
4
- * Makes a deep copy of the src object using JSON stringify and parse
5
- * @deprecated Use structuredClone instead
5
+ * Deep-clones a Haftarah (a single passage or an array) and fills in the
6
+ * verse count `v` on each passage via {@link calculateNumVerses}.
7
+ * @param haft the Haftarah to clone
8
+ * @returns a new Haftarah with verse counts populated
6
9
  */
7
- export declare function clone<T>(src: T): T;
8
- export type Haftarah = Aliyah | Aliyah[] | JsonFestivalAliyah | JsonFestivalAliyah[];
9
10
  export declare function cloneHaftara(haft: Haftarah): Aliyah | Aliyah[];
10
11
  /**
11
- * Returns the total number of verses in an array of Aliyah (or haftarah) objects
12
+ * Sums the verse counts (`v`) of a Haftarah's passages. Each passage must
13
+ * already have its `v` populated (e.g. by {@link cloneHaftara}).
14
+ * @param aliyot a single passage or an array of passages
15
+ * @returns the total number of verses
12
16
  */
13
17
  export declare function sumVerses(aliyot: Haftarah): number;
package/dist/esm/clone.js CHANGED
@@ -1,14 +1,11 @@
1
- /*! @hebcal/leyning v9.5.6 */
2
1
  import { calculateNumVerses } from './common.js';
3
-
4
2
  /**
5
- * Makes a deep copy of the src object using JSON stringify and parse
6
- * @deprecated Use structuredClone instead
3
+ * Deep-clones a Haftarah (a single passage or an array) and fills in the
4
+ * verse count `v` on each passage via {@link calculateNumVerses}.
5
+ * @param haft the Haftarah to clone
6
+ * @returns a new Haftarah with verse counts populated
7
7
  */
8
- function clone(src) {
9
- return structuredClone(src);
10
- }
11
- function cloneHaftara(haft) {
8
+ export function cloneHaftara(haft) {
12
9
  if (!haft) {
13
10
  return haft;
14
11
  }
@@ -22,13 +19,14 @@ function cloneHaftara(haft) {
22
19
  return dest;
23
20
  }
24
21
  /**
25
- * Returns the total number of verses in an array of Aliyah (or haftarah) objects
22
+ * Sums the verse counts (`v`) of a Haftarah's passages. Each passage must
23
+ * already have its `v` populated (e.g. by {@link cloneHaftara}).
24
+ * @param aliyot a single passage or an array of passages
25
+ * @returns the total number of verses
26
26
  */
27
- function sumVerses(aliyot) {
27
+ export function sumVerses(aliyot) {
28
28
  return Array.isArray(aliyot)
29
29
  ? aliyot.reduce((prev, cur) => prev + cur.v, 0)
30
30
  : aliyot.v;
31
31
  }
32
-
33
- export { clone, cloneHaftara, sumVerses };
34
- //# sourceMappingURL=clone.js.map
32
+ //# sourceMappingURL=clone.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clone.js","sources":["../../../src/clone.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIA;;;AAGG;AACG,SAAU,KAAK,CAAI,GAAM,EAAA;AAC7B,IAAA,OAAO,eAAe,CAAC,GAAG,CAAC;AAC7B;AAQM,SAAU,YAAY,CAAC,IAAc,EAAA;IACzC,IAAI,CAAC,IAAI,EAAE;AACT,QAAA,OAAO,IAAI;IACb;AACA,IAAA,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAsB;AACvD,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AACvB,QAAA,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;IAClC;SAAO;QACL,kBAAkB,CAAC,IAAI,CAAC;IAC1B;AACA,IAAA,OAAO,IAAI;AACb;AAEA;;AAEG;AACG,SAAU,SAAS,CAAC,MAAgB,EAAA;AACxC,IAAA,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM;AACzB,UAAE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,GAAG,CAAC,CAAE,EAAE,CAAC;AAC/C,UAAE,MAAM,CAAC,CAAE;AACf;;;;"}
1
+ {"version":3,"file":"clone.js","sourceRoot":"","sources":["../../src/clone.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,kBAAkB,EAAC,MAAM,aAAa,CAAC;AAS/C;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,IAAc;IACzC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAsB,CAAC;IACxD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,MAAgB;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAC1B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,CAAE,EAAE,CAAC,CAAC;QAChD,CAAC,CAAC,MAAM,CAAC,CAAE,CAAC;AAChB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Aliyah, TanakhBook, TorahBook } from './types';
1
+ import { Aliyah, TanakhBook, TorahBook } from './types.js';
2
2
  /**
3
3
  * Names of the books of the Torah.
4
4
  *
@@ -20,14 +20,19 @@ export declare const BOOK: TorahBook[];
20
20
  */
21
21
  export declare const NUM_VERSES: Record<string, readonly number[]>;
22
22
  /**
23
- * Formats parsha as a string
24
- * @param parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
23
+ * Joins a parsha name into a single string, using a hyphen for a doubled
24
+ * parsha (e.g. `['Matot', 'Masei']` becomes `'Matot-Masei'`).
25
+ * @param parsha a parsha name, or an array of one or two names
26
+ * @returns the parsha name as a single string
27
+ * @throws {TypeError} if `parsha` is an array of zero or more than two names
25
28
  */
26
29
  export declare function parshaToString(parsha: string | string[]): string;
27
30
  /**
28
- * Calculates the number of verses in an aliyah or haftara based on
29
- * the `b` (begin verse), `e` (end verse) and `k` (book).
30
- * Modifies `aliyah` by setting the `v` field.
31
+ * Calculates the number of verses in an aliyah or Haftarah from its `b`
32
+ * (begin verse), `e` (end verse) and `k` (book), caching the result on the
33
+ * object's `v` field. If `v` is already set, returns it unchanged.
34
+ * @param aliyah the passage to measure; mutated in place to set `v`
35
+ * @returns the number of verses in the passage
31
36
  */
32
37
  export declare function calculateNumVerses(aliyah: Aliyah): number;
33
38
  /**
@@ -49,6 +54,9 @@ export declare function subtractVerses(book: TanakhBook, from: string, to: strin
49
54
  */
50
55
  export declare function addVerses(book: TanakhBook, from: string, numVerses: number): string | null;
51
56
  /**
52
- * Formats an aliyah object like "Numbers 28:9-28:15"
57
+ * Formats an aliyah with its full begin and end citation, e.g.
58
+ * `"Numbers 28:9-28:15"`. See {@link formatAliyahShort} for a shorter form.
59
+ * @param a the passage to format
60
+ * @returns the formatted English citation
53
61
  */
54
62
  export declare function formatAliyahWithBook(a: Aliyah): string;
@@ -1,13 +1,11 @@
1
- /*! @hebcal/leyning v9.5.6 */
2
1
  import numverses from './numverses.json.js';
3
-
4
2
  /**
5
3
  * Names of the books of the Torah.
6
4
  *
7
5
  * `BOOK[1] === 'Genesis'`
8
6
  * @readonly
9
7
  */
10
- const BOOK = [
8
+ export const BOOK = [
11
9
  '',
12
10
  'Genesis',
13
11
  'Exodus',
@@ -27,12 +25,15 @@ const BOOK = [
27
25
  * so `NUM_VERSES['Genesis'][4] === 26`.
28
26
  * @readonly
29
27
  */
30
- const NUM_VERSES = numverses;
28
+ export const NUM_VERSES = numverses;
31
29
  /**
32
- * Formats parsha as a string
33
- * @param parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
30
+ * Joins a parsha name into a single string, using a hyphen for a doubled
31
+ * parsha (e.g. `['Matot', 'Masei']` becomes `'Matot-Masei'`).
32
+ * @param parsha a parsha name, or an array of one or two names
33
+ * @returns the parsha name as a single string
34
+ * @throws {TypeError} if `parsha` is an array of zero or more than two names
34
35
  */
35
- function parshaToString(parsha) {
36
+ export function parshaToString(parsha) {
36
37
  if (typeof parsha === 'string') {
37
38
  return parsha;
38
39
  }
@@ -48,11 +49,13 @@ function parshaToString(parsha) {
48
49
  return s;
49
50
  }
50
51
  /**
51
- * Calculates the number of verses in an aliyah or haftara based on
52
- * the `b` (begin verse), `e` (end verse) and `k` (book).
53
- * Modifies `aliyah` by setting the `v` field.
52
+ * Calculates the number of verses in an aliyah or Haftarah from its `b`
53
+ * (begin verse), `e` (end verse) and `k` (book), caching the result on the
54
+ * object's `v` field. If `v` is already set, returns it unchanged.
55
+ * @param aliyah the passage to measure; mutated in place to set `v`
56
+ * @returns the number of verses in the passage
54
57
  */
55
- function calculateNumVerses(aliyah) {
58
+ export function calculateNumVerses(aliyah) {
56
59
  if (aliyah.v) {
57
60
  return aliyah.v;
58
61
  }
@@ -66,7 +69,7 @@ function calculateNumVerses(aliyah) {
66
69
  * @param to The ending verse (e.g. "28:15")
67
70
  * @returns The number of verses between the two locations, excluding the `to` verse.
68
71
  */
69
- function subtractVerses(book, from, to) {
72
+ export function subtractVerses(book, from, to) {
70
73
  const chapVerseBegin = from.split(':');
71
74
  const chapVerseEnd = to.split(':');
72
75
  const c1 = parseInt(chapVerseBegin[0], 10);
@@ -98,7 +101,7 @@ function subtractVerses(book, from, to) {
98
101
  * or null if the resulting verse exceeds the number of verses
99
102
  * in the book.
100
103
  */
101
- function addVerses(book, from, numVerses) {
104
+ export function addVerses(book, from, numVerses) {
102
105
  const chapVerseBegin = from.split(':');
103
106
  const c1 = parseInt(chapVerseBegin[0], 10);
104
107
  const v1 = parseInt(chapVerseBegin[1], 10);
@@ -117,11 +120,12 @@ function addVerses(book, from, numVerses) {
117
120
  return `${c2}:${total}`;
118
121
  }
119
122
  /**
120
- * Formats an aliyah object like "Numbers 28:9-28:15"
123
+ * Formats an aliyah with its full begin and end citation, e.g.
124
+ * `"Numbers 28:9-28:15"`. See {@link formatAliyahShort} for a shorter form.
125
+ * @param a the passage to format
126
+ * @returns the formatted English citation
121
127
  */
122
- function formatAliyahWithBook(a) {
128
+ export function formatAliyahWithBook(a) {
123
129
  return `${a.k} ${a.b}-${a.e}`;
124
130
  }
125
-
126
- export { BOOK, NUM_VERSES, addVerses, calculateNumVerses, formatAliyahWithBook, parshaToString, subtractVerses };
127
- //# sourceMappingURL=common.js.map
131
+ //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sources":["../../../src/common.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/common.ts"],"names":[],"mappings":"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"}
package/dist/esm/csv.d.ts CHANGED
@@ -1,15 +1,48 @@
1
1
  import { Event } from '@hebcal/core/dist/esm/event';
2
2
  import { HolidayEvent } from '@hebcal/core/dist/esm/HolidayEvent';
3
3
  import { WriteStream } from 'node:fs';
4
- import { Leyning } from './types';
4
+ import { Leyning } from './types.js';
5
5
  export interface StringToBoolMap {
6
6
  [key: string]: boolean;
7
7
  }
8
+ /**
9
+ * Builds a set of the dates (as strings) on which a parashat hashavua is
10
+ * read, so holiday readings falling on those Shabbatot can be de-duplicated.
11
+ * @param events a list of Hebcal events
12
+ * @returns a map whose keys are the parsha dates, each set to `true`
13
+ */
8
14
  export declare function getParshaDates(events: Event[]): StringToBoolMap;
15
+ /**
16
+ * Writes a full-year Full Kriyah CSV (all parshiyot and holidays) to a
17
+ * stream, including the header row.
18
+ * @param stream destination writable stream
19
+ * @param hyear Hebrew year
20
+ * @param il `true` for the Israel schedule
21
+ */
9
22
  export declare function writeFullKriyahCsv(stream: WriteStream, hyear: number, il: boolean): void;
23
+ /**
24
+ * Writes the CSV line(s) for a single parsha or holiday event, including any
25
+ * Mincha reading and the Erev Simchat Torah special case.
26
+ * @param stream destination writable stream
27
+ * @param ev the parsha or holiday event
28
+ * @param il `true` for the Israel schedule
29
+ */
10
30
  export declare function writeFullKriyahEvent(stream: WriteStream, ev: Event, il: boolean): void;
31
+ /**
32
+ * Writes the CSV line(s) for a holiday's Mincha (afternoon) reading, if any.
33
+ * @param stream destination writable stream
34
+ * @param ev the holiday event
35
+ * @param il `true` for the Israel schedule
36
+ */
11
37
  export declare function writeHolidayMincha(stream: WriteStream, ev: HolidayEvent, il: boolean): void;
12
38
  /**
13
- * Formats reading for CSV
39
+ * Writes the CSV rows for one reading: one row per aliyah, plus rows for the
40
+ * Haftarah, any Sephardic/alternate Haftarah, and any megillah, followed by a
41
+ * blank line separating readings.
42
+ * @param stream destination writable stream
43
+ * @param ev the event this reading belongs to
44
+ * @param reading the computed leyning to format
45
+ * @param il `true` for the Israel schedule
46
+ * @param isParsha `true` if `ev` is a parashat hashavua (vs. a holiday)
14
47
  */
15
48
  export declare function writeCsvLines(stream: WriteStream, ev: Event, reading: Leyning, il: boolean, isParsha: boolean): void;
package/dist/esm/csv.js CHANGED
@@ -1,13 +1,11 @@
1
- /*! @hebcal/leyning v9.5.6 */
2
1
  import { parshaYear } from '@hebcal/core/dist/esm/parshaYear';
3
- import { flags, Event } from '@hebcal/core/dist/esm/event';
2
+ import { Event, flags } from '@hebcal/core/dist/esm/event';
4
3
  import { HolidayEvent } from '@hebcal/core/dist/esm/HolidayEvent';
5
4
  import { getHolidaysForYearArray } from '@hebcal/core/dist/esm/holidays';
6
5
  import { formatAliyahWithBook } from './common.js';
7
- import { getLeyningForHoliday, getLeyningForHolidayKey } from './getLeyningForHoliday.js';
6
+ import { getLeyningForHoliday, getLeyningForHolidayKey, } from './getLeyningForHoliday.js';
8
7
  import { getLeyningKeyForEvent } from './getLeyningKeyForEvent.js';
9
8
  import { getLeyningForParshaHaShavua } from './leyning.js';
10
-
11
9
  const fmt = new Intl.DateTimeFormat('en-US', {
12
10
  year: 'numeric',
13
11
  month: 'short',
@@ -17,7 +15,13 @@ function fmtDate(dt) {
17
15
  const s = fmt.format(dt).split(' ');
18
16
  return s[1].substring(0, 2) + '-' + s[0] + '-' + s[2];
19
17
  }
20
- function getParshaDates(events) {
18
+ /**
19
+ * Builds a set of the dates (as strings) on which a parashat hashavua is
20
+ * read, so holiday readings falling on those Shabbatot can be de-duplicated.
21
+ * @param events a list of Hebcal events
22
+ * @returns a map whose keys are the parsha dates, each set to `true`
23
+ */
24
+ export function getParshaDates(events) {
21
25
  const parshaEvents = events.filter(ev => ev.getFlags() === PARSHA_HASHAVUA);
22
26
  const emptyMap = {};
23
27
  const parshaDates = parshaEvents.reduce((set, ev) => {
@@ -34,7 +38,14 @@ function getParshaAndHolidayEvents(year, il) {
34
38
  return events;
35
39
  }
36
40
  const PARSHA_HASHAVUA = flags.PARSHA_HASHAVUA;
37
- function writeFullKriyahCsv(stream, hyear, il) {
41
+ /**
42
+ * Writes a full-year Full Kriyah CSV (all parshiyot and holidays) to a
43
+ * stream, including the header row.
44
+ * @param stream destination writable stream
45
+ * @param hyear Hebrew year
46
+ * @param il `true` for the Israel schedule
47
+ */
48
+ export function writeFullKriyahCsv(stream, hyear, il) {
38
49
  const events0 = getParshaAndHolidayEvents(hyear, il);
39
50
  const events = events0.filter((ev) => ev.getDesc() !== 'Rosh Chodesh Tevet');
40
51
  const parshaDates = getParshaDates(events);
@@ -56,7 +67,14 @@ function ignore(ev) {
56
67
  }
57
68
  return ev.getDate().getDay() === 6;
58
69
  }
59
- function writeFullKriyahEvent(stream, ev, il) {
70
+ /**
71
+ * Writes the CSV line(s) for a single parsha or holiday event, including any
72
+ * Mincha reading and the Erev Simchat Torah special case.
73
+ * @param stream destination writable stream
74
+ * @param ev the parsha or holiday event
75
+ * @param il `true` for the Israel schedule
76
+ */
77
+ export function writeFullKriyahEvent(stream, ev, il) {
60
78
  if (ignore(ev)) {
61
79
  return;
62
80
  }
@@ -78,7 +96,13 @@ function writeFullKriyahEvent(stream, ev, il) {
78
96
  }
79
97
  }
80
98
  }
81
- function writeHolidayMincha(stream, ev, il) {
99
+ /**
100
+ * Writes the CSV line(s) for a holiday's Mincha (afternoon) reading, if any.
101
+ * @param stream destination writable stream
102
+ * @param ev the holiday event
103
+ * @param il `true` for the Israel schedule
104
+ */
105
+ export function writeHolidayMincha(stream, ev, il) {
82
106
  const desc = ev.getDesc();
83
107
  const minchaDesc1 = desc + ' (Mincha)';
84
108
  const readingMincha1 = getLeyningForHolidayKey(minchaDesc1, ev.cholHaMoedDay, il);
@@ -90,9 +114,16 @@ function writeHolidayMincha(stream, ev, il) {
90
114
  }
91
115
  }
92
116
  /**
93
- * Formats reading for CSV
117
+ * Writes the CSV rows for one reading: one row per aliyah, plus rows for the
118
+ * Haftarah, any Sephardic/alternate Haftarah, and any megillah, followed by a
119
+ * blank line separating readings.
120
+ * @param stream destination writable stream
121
+ * @param ev the event this reading belongs to
122
+ * @param reading the computed leyning to format
123
+ * @param il `true` for the Israel schedule
124
+ * @param isParsha `true` if `ev` is a parashat hashavua (vs. a holiday)
94
125
  */
95
- function writeCsvLines(stream, ev, reading, il, isParsha) {
126
+ export function writeCsvLines(stream, ev, reading, il, isParsha) {
96
127
  const parsha = isParsha
97
128
  ? ev.basename()
98
129
  : getLeyningKeyForEvent(ev, il) || ev.render();
@@ -156,6 +187,4 @@ function getFullKriyahLines(reading) {
156
187
  }
157
188
  return lines;
158
189
  }
159
-
160
- export { getParshaDates, writeCsvLines, writeFullKriyahCsv, writeFullKriyahEvent, writeHolidayMincha };
161
- //# sourceMappingURL=csv.js.map
190
+ //# sourceMappingURL=csv.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"csv.js","sources":["../../../src/csv.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"csv.js","sourceRoot":"","sources":["../../src/csv.ts"],"names":[],"mappings":"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"}