@hebcal/leyning 8.2.5 → 8.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle.js +1 -1
- package/dist/bundle.min.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/module.d.ts +316 -0
- package/package.json +5 -4
package/dist/bundle.js
CHANGED
package/dist/bundle.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/*! @hebcal/leyning v8.2.
|
|
1
|
+
/*! @hebcal/leyning v8.2.6 */
|
|
2
2
|
var hebcal__leyning=function(e,a){"use strict";var h={Genesis:[0,31,25,24,26,32,22,24,22,29,32,32,20,18,24,21,16,27,33,38,18,34,24,20,67,34,35,46,22,35,43,54,33,20,31,29,43,36,30,23,23,57,38,34,34,28,34,31,22,33,26],Exodus:[0,22,25,22,31,23,30,29,28,35,29,10,51,22,31,27,36,16,27,25,26,37,30,33,18,40,37,21,43,46,38,18,35,23,35,35,38,29,31,43,38],Leviticus:[0,17,16,17,35,26,23,38,36,24,20,47,8,59,57,33,34,16,30,37,27,24,33,44,23,55,46,34],Numbers:[0,54,34,51,49,31,27,89,26,23,36,35,16,33,45,41,35,28,32,22,29,35,41,30,25,19,65,23,31,39,17,54,42,56,29,34,13],Deuteronomy:[0,46,37,29,49,30,25,26,20,29,22,32,31,19,29,23,22,20,22,21,20,23,29,26,22,19,19,26,69,28,20,30,52,29,12],Joshua:[0,18,24,17,24,15,27,26,35,27,43,23,24,33,15,63,10,18,28,51,9,45,34,16,33],Judges:[0,36,23,31,24,31,40,25,35,57,18,40,15,25,20,20,31,13,31,30,48,25],Ruth:[0,22,23,18,22],"I Samuel":[0,28,36,21,22,12,21,17,22,27,27,15,25,23,52,35,23,58,30,24,42,16,23,28,23,43,25,12,25,11,31,13],"II Samuel":[0,27,32,39,12,25,23,29,18,13,19,27,31,39,33,37,23,29,32,44,26,22,51,39,25],"I Kings":[0,53,46,28,20,32,38,51,66,28,29,43,33,34,31,34,34,24,46,21,43,29,54],"II Kings":[0,18,25,27,44,27,33,20,29,37,36,20,22,25,29,38,20,41,37,37,21,26,20,37,20,30],Isaiah:[0,31,22,26,6,30,13,25,23,20,34,16,6,22,32,9,14,14,7,25,6,17,25,18,23,12,21,13,29,24,33,9,20,24,17,10,22,38,22,8,31,29,25,28,28,25,13,15,22,26,11,23,15,12,17,13,12,21,14,21,22,11,12,19,11,25,24],Jeremiah:[0,19,37,25,31,31,30,34,23,25,25,23,17,27,22,21,21,27,23,15,18,14,30,40,10,38,24,22,17,32,24,40,44,26,22,19,32,21,28,18,16,18,22,13,30,5,28,7,47,39,46,64,34],Lamentations:[0,22,22,66,22,22],Baruch:[0,22,35,38,37,9,72],Esther:[0,22,23,15,17,14,14,10,17,32,3],Ecclesiastes:[0,18,26,22,17,19,12,29,17,18,20,10,14],"Song of Songs":[0,17,17,11,16,16,12,14,14],Ezekiel:[0,28,10,27,17,17,14,27,18,11,22,25,28,23,23,8,63,24,32,14,44,37,31,49,27,17,21,36,26,21,26,18,32,33,31,15,38,28,23,29,49,26,20,27,31,25,24,23,35],Daniel:[0,21,49,100,34,30,29,28,27,27,21,45,13,64,42],Hosea:[0,9,25,5,19,15,11,16,14,17,15,11,15,15,10],Joel:[0,20,27,5,21],Amos:[0,15,16,15,13,27,14,17,14,15],Obadiah:[0,21],Jonah:[0,16,11,10,11],Micah:[0,16,13,12,14,14,16,20],Nachum:[0,14,14,19],Habakkuk:[0,17,20,19],Zephaniah:[0,18,15,20],Haggai:[0,15,23],Zechariah:[0,17,17,10,14,11,15,14,23,17,12,17,14,9,21],Malachi:[0,14,17,24]};const k=["","Genesis","Exodus","Leviticus","Numbers","Deuteronomy"];function o(e){if("string"==typeof e)return e;if(!Array.isArray(e)||0===e.length||e.length>2)throw new TypeError(`Bad parsha argument: ${e}`);let a=e[0];return 2==e.length&&(a+="-"+e[1]),a}function t(e){if(e.v)return e.v;const a=e.b.split(":"),k=e.e.split(":"),o=parseInt(a[0],10),t=parseInt(k[0],10),i=parseInt(a[1],10),b=parseInt(k[1],10);if(o===t)e.v=b-i+1;else if("string"==typeof e.k){const a=h[e.k];if("object"!=typeof a||!a.length)throw new ReferenceError(`Can't find numverses for ${e.k}`);let k=a[o]-i+1;for(let e=o+1;e<t;e++)k+=a[e];k+=b,e.v=k}return e.v}function i(e){return`${e.k} ${e.b}-${e.e}`}function b(e,a){const h=e.b,k=e.e,o=a?e.k+" ":"";if(h===k)return`${o}${h}`;const t=h.split(":"),i=k.split(":");return`${o}${h}-${t[0]===i[0]?i[1]:k}`}function r(e,a){const h=e.split(":").map((e=>+e)),k=a.split(":").map((e=>+e));return 100*h[0]+h[1]<100*k[0]+k[1]}function s(e){const a=Object.keys(e).filter((e=>{if(1===e.length)return!0;const a=e.charCodeAt(0);return a>=48&&a<=57}));let h=e[a[0]],k=h;const o=[];for(let t=0;t<a.length;t++){const i=e[a[t]];if(t===a.length-1&&i.k===k.k&&i.e===k.e)continue;const b=+k.e.split(":")[0],s=+i.b.split(":")[0],n=s===b||s===b+1;0===t||i.k===h.k&&!r(i.b,h.e)&&n||(o.push({k:h.k,b:h.b,e:k.e}),h=i),k=i}return o.push({k:h.k,b:h.b,e:k.e}),o}function n(e){Array.isArray(e)||(e=[e]);let a=e[0],h=b(a,!0);for(let k=1;k<e.length;k++){const o=e[k];o.k===a.k?h+=", ":h+=`; ${o.k} `,h+=b(o,!1),a=o}return h}function l(e){return JSON.parse(JSON.stringify(e))}function u(e){if(!e)return e;const a=l(e);return Array.isArray(a)?a.map(t):t(a),a}function f(e){return Array.isArray(e)?e.reduce(((e,a)=>e+a.v),0):e.v}const p={"Pesach I":{haft:[{k:"Joshua",b:"3:5",e:"3:7"},{k:"Joshua",b:"5:2",e:"6:1"},{k:"Joshua",b:"6:27",e:"6:27"}],seph:[{k:"Joshua",b:"5:2",e:"6:1"},{k:"Joshua",b:"6:27",e:"6:27"}],fullkriyah:{1:{p:15,k:2,b:"12:21",e:"12:24"},2:{p:15,k:2,b:"12:25",e:"12:28"},3:{p:15,k:2,b:"12:29",e:"12:36"},4:{p:15,k:2,b:"12:37",e:"12:42"},5:{p:15,k:2,b:"12:43",e:"12:51"},M:{p:41,k:4,b:"28:16",e:"28:25"}}},"Pesach I (on Shabbat)":{haft:[{k:"Joshua",b:"3:5",e:"3:7"},{k:"Joshua",b:"5:2",e:"6:1"},{k:"Joshua",b:"6:27",e:"6:27"}],seph:[{k:"Joshua",b:"5:2",e:"6:1"},{k:"Joshua",b:"6:27",e:"6:27"}],fullkriyah:{1:{p:15,k:2,b:"12:21",e:"12:24"},2:{p:15,k:2,b:"12:25",e:"12:28"},3:{p:15,k:2,b:"12:29",e:"12:32"},4:{p:15,k:2,b:"12:33",e:"12:36"},5:{p:15,k:2,b:"12:37",e:"12:42"},6:{p:15,k:2,b:"12:43",e:"12:47"},7:{p:15,k:2,b:"12:48",e:"12:51"},M:{p:41,k:4,b:"28:16",e:"28:25"}}},"Pesach II":{haft:[{k:"II Kings",b:"23:1",e:"23:9"},{k:"II Kings",b:"23:21",e:"23:25"}],fullkriyah:{1:{p:31,k:3,b:"22:26",e:"23:3"},2:{p:31,k:3,b:"23:4",e:"23:14"},3:{p:31,k:3,b:"23:15",e:"23:22"},4:{p:31,k:3,b:"23:23",e:"23:32"},5:{p:31,k:3,b:"23:33",e:"23:44"},M:{p:41,k:4,b:"28:16",e:"28:25"}}},"Pesach II (CH''M)":{note:"Israel only - according to Vaani T'fillati Siddur Yisraeli",il:!0,fullkriyah:{1:{p:31,k:3,b:"22:26",e:"23:8"},2:{p:31,k:3,b:"23:9",e:"23:14"},3:{p:31,k:3,b:"23:15",e:"23:44"},4:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach Chol ha-Moed Day 1":{fullkriyah:{1:{p:15,k:2,b:"13:1",e:"13:4"},2:{p:15,k:2,b:"13:5",e:"13:10"},3:{p:15,k:2,b:"13:11",e:"13:16"},4:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach Chol ha-Moed Day 2":{fullkriyah:{1:{p:18,k:2,b:"22:24",e:"22:26"},2:{p:18,k:2,b:"22:27",e:"23:5"},3:{p:18,k:2,b:"23:6",e:"23:19"},4:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach Chol ha-Moed Day 3":{fullkriyah:{1:{p:21,k:2,b:"34:1",e:"34:10"},2:{p:21,k:2,b:"34:11",e:"34:17"},3:{p:21,k:2,b:"34:18",e:"34:26"},4:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach Chol ha-Moed Day 4":{fullkriyah:{1:{p:36,k:4,b:"9:1",e:"9:5"},2:{p:36,k:4,b:"9:6",e:"9:8"},3:{p:36,k:4,b:"9:9",e:"9:14"},4:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach Shabbat Chol ha-Moed":{megillah:"Song of Songs",haft:{k:"Ezekiel",b:"37:1",e:"37:14"},fullkriyah:{1:{p:21,k:2,b:"33:12",e:"33:16"},2:{p:21,k:2,b:"33:17",e:"33:19"},3:{p:21,k:2,b:"33:20",e:"33:23"},4:{p:21,k:2,b:"34:1",e:"34:3"},5:{p:21,k:2,b:"34:4",e:"34:10"},6:{p:21,k:2,b:"34:11",e:"34:17"},7:{p:21,k:2,b:"34:18",e:"34:26"},M:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach VII":{haft:{k:"II Samuel",b:"22:1",e:"22:51"},fullkriyah:{1:{p:16,k:2,b:"13:17",e:"13:22"},2:{p:16,k:2,b:"14:1",e:"14:8"},3:{p:16,k:2,b:"14:9",e:"14:14"},4:{p:16,k:2,b:"14:15",e:"14:25"},5:{p:16,k:2,b:"14:26",e:"15:26"},M:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach VII (on Shabbat)":{haft:{k:"II Samuel",b:"22:1",e:"22:51"},fullkriyah:{1:{p:16,k:2,b:"13:17",e:"13:19"},2:{p:16,k:2,b:"13:20",e:"13:22"},3:{p:16,k:2,b:"14:1",e:"14:4"},4:{p:16,k:2,b:"14:5",e:"14:8"},5:{p:16,k:2,b:"14:9",e:"14:14"},6:{p:16,k:2,b:"14:15",e:"14:25"},7:{p:16,k:2,b:"14:26",e:"15:26"},M:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach VIII":{haft:{k:"Isaiah",b:"10:32",e:"12:6"},fullkriyah:{1:{p:47,k:5,b:"15:19",e:"15:23"},2:{p:47,k:5,b:"16:1",e:"16:3"},3:{p:47,k:5,b:"16:4",e:"16:8"},4:{p:47,k:5,b:"16:9",e:"16:12"},5:{p:47,k:5,b:"16:13",e:"16:17"},M:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach VIII (on Shabbat)":{haft:{k:"Isaiah",b:"10:32",e:"12:6"},fullkriyah:{1:{p:47,k:5,b:"14:22",e:"14:29"},2:{p:47,k:5,b:"15:1",e:"15:18"},3:{p:47,k:5,b:"15:19",e:"15:23"},4:{p:47,k:5,b:"16:1",e:"16:3"},5:{p:47,k:5,b:"16:4",e:"16:8"},6:{p:47,k:5,b:"16:9",e:"16:12"},7:{p:47,k:5,b:"16:13",e:"16:17"},M:{p:41,k:4,b:"28:19",e:"28:25"}}},"Pesach III (CH''M)":{alias:!0,il:!0,key:"Pesach Chol ha-Moed Day 1"},"Pesach IV (CH''M)":{alias:!0,il:!0,key:"Pesach Chol ha-Moed Day 2"},"Pesach V (CH''M)":{alias:!0,il:!0,key:"Pesach Chol ha-Moed Day 3"},"Pesach VI (CH''M)":{alias:!0,il:!0,key:"Pesach Chol ha-Moed Day 4"},"Pesach Chol ha-Moed Day 2 on Sunday":{alias:!0,il:!1,key:"Pesach Chol ha-Moed Day 1"},"Pesach Chol ha-Moed Day 3 on Monday":{alias:!0,il:!1,key:"Pesach Chol ha-Moed Day 2"},Shavuot:{note:"Israel only",il:!0,megillah:"Ruth",haft:[{k:"Ezekiel",b:"1:1",e:"1:28"},{k:"Ezekiel",b:"3:12",e:"3:12"}],fullkriyah:{1:{p:17,k:2,b:"19:1",e:"19:6"},2:{p:17,k:2,b:"19:7",e:"19:13"},3:{p:17,k:2,b:"19:14",e:"19:19"},4:{p:17,k:2,b:"19:20",e:"20:14"},5:{p:17,k:2,b:"20:15",e:"20:23"},M:{p:41,k:4,b:"28:26",e:"28:31"}}},"Shavuot I":{haft:[{k:"Ezekiel",b:"1:1",e:"1:28"},{k:"Ezekiel",b:"3:12",e:"3:12"}],fullkriyah:{1:{p:17,k:2,b:"19:1",e:"19:6"},2:{p:17,k:2,b:"19:7",e:"19:13"},3:{p:17,k:2,b:"19:14",e:"19:19"},4:{p:17,k:2,b:"19:20",e:"20:14"},5:{p:17,k:2,b:"20:15",e:"20:23"},M:{p:41,k:4,b:"28:26",e:"28:31"}}},"Shavuot II":{megillah:"Ruth",haft:{k:"Habakkuk",b:"3:1",e:"3:19"},seph:{k:"Habakkuk",b:"2:20",e:"3:19"},fullkriyah:{1:{p:47,k:5,b:"15:19",e:"15:23"},2:{p:47,k:5,b:"16:1",e:"16:3"},3:{p:47,k:5,b:"16:4",e:"16:8"},4:{p:47,k:5,b:"16:9",e:"16:12"},5:{p:47,k:5,b:"16:13",e:"16:17"},M:{p:41,k:4,b:"28:26",e:"28:31"}}},"Shavuot II (on Shabbat)":{megillah:"Ruth",haft:{k:"Habakkuk",b:"3:1",e:"3:19"},seph:{k:"Habakkuk",b:"2:20",e:"3:19"},fullkriyah:{1:{p:47,k:5,b:"14:22",e:"14:29"},2:{p:47,k:5,b:"15:1",e:"15:18"},3:{p:47,k:5,b:"15:19",e:"15:23"},4:{p:47,k:5,b:"16:1",e:"16:3"},5:{p:47,k:5,b:"16:4",e:"16:8"},6:{p:47,k:5,b:"16:9",e:"16:12"},7:{p:47,k:5,b:"16:13",e:"16:17"},M:{p:41,k:4,b:"28:26",e:"28:31"}}},"Fast Day (Morning)":{fullkriyah:{1:{p:21,k:2,b:"32:11",e:"32:14"},2:{p:21,k:2,b:"34:1",e:"34:3"},3:{p:21,k:2,b:"34:4",e:"34:10"}}},"Fast Day (Afternoon)":{haft:{k:"Isaiah",b:"55:6",e:"56:8"},fullkriyah:{1:{p:21,k:2,b:"32:11",e:"32:14"},2:{p:21,k:2,b:"34:1",e:"34:3"},M:{p:21,k:2,b:"34:4",e:"34:10"}}},"Asara B'Tevet":{alias:!0,key:"Fast Day (Morning)"},"Ta'anit Esther":{alias:!0,key:"Fast Day (Morning)"},"Tzom Gedaliah":{alias:!0,key:"Fast Day (Morning)"},"Tzom Tammuz":{alias:!0,key:"Fast Day (Morning)"},"Asara B'Tevet (Mincha)":{alias:!0,key:"Fast Day (Afternoon)"},"Ta'anit Esther (Mincha)":{alias:!0,key:"Fast Day (Afternoon)"},"Tzom Gedaliah (Mincha)":{alias:!0,key:"Fast Day (Afternoon)"},"Tzom Tammuz (Mincha)":{alias:!0,key:"Fast Day (Afternoon)"},"Erev Tish'a B'Av":{megillah:"Lamentations"},"Tish'a B'Av":{haft:{k:"Jeremiah",b:"8:13",e:"9:23"},fullkriyah:{1:{p:45,k:5,b:"4:25",e:"4:29"},2:{p:45,k:5,b:"4:30",e:"4:35"},3:{p:45,k:5,b:"4:36",e:"4:40"}}},"Tish'a B'Av (Mincha)":{alias:!0,key:"Fast Day (Afternoon)"},"Rosh Hashana I":{haft:{k:"I Samuel",b:"1:1",e:"2:10"},fullkriyah:{1:{p:4,k:1,b:"21:1",e:"21:4"},2:{p:4,k:1,b:"21:5",e:"21:12"},3:{p:4,k:1,b:"21:13",e:"21:21"},4:{p:4,k:1,b:"21:22",e:"21:27"},5:{p:4,k:1,b:"21:28",e:"21:34"},M:{p:41,k:4,b:"29:1",e:"29:6"}}},"Rosh Hashana I (on Shabbat)":{haft:{k:"I Samuel",b:"1:1",e:"2:10"},fullkriyah:{1:{p:4,k:1,b:"21:1",e:"21:4"},2:{p:4,k:1,b:"21:5",e:"21:8"},3:{p:4,k:1,b:"21:9",e:"21:12"},4:{p:4,k:1,b:"21:13",e:"21:17"},5:{p:4,k:1,b:"21:18",e:"21:21"},6:{p:4,k:1,b:"21:22",e:"21:27"},7:{p:4,k:1,b:"21:28",e:"21:34"},M:{p:41,k:4,b:"29:1",e:"29:6"}}},"Rosh Hashana II":{haft:{k:"Jeremiah",b:"31:2",e:"31:20",note:"labeled 31:1–19 in some books"},fullkriyah:{1:{p:4,k:1,b:"22:1",e:"22:3"},2:{p:4,k:1,b:"22:4",e:"22:8"},3:{p:4,k:1,b:"22:9",e:"22:14"},4:{p:4,k:1,b:"22:15",e:"22:19"},5:{p:4,k:1,b:"22:20",e:"22:24"},M:{p:41,k:4,b:"29:1",e:"29:6"}}},"Yom Kippur":{haft:{k:"Isaiah",b:"57:14",e:"58:14"},fullkriyah:{1:{p:29,k:3,b:"16:1",e:"16:6"},2:{p:29,k:3,b:"16:7",e:"16:11"},3:{p:29,k:3,b:"16:12",e:"16:17"},4:{p:29,k:3,b:"16:18",e:"16:24"},5:{p:29,k:3,b:"16:25",e:"16:30"},6:{p:29,k:3,b:"16:31",e:"16:34"},M:{p:41,k:4,b:"29:7",e:"29:11"}}},"Yom Kippur (on Shabbat)":{haft:{k:"Isaiah",b:"57:14",e:"58:14"},fullkriyah:{1:{p:29,k:3,b:"16:1",e:"16:3"},2:{p:29,k:3,b:"16:4",e:"16:6"},3:{p:29,k:3,b:"16:7",e:"16:11"},4:{p:29,k:3,b:"16:12",e:"16:17"},5:{p:29,k:3,b:"16:18",e:"16:24"},6:{p:29,k:3,b:"16:25",e:"16:30"},7:{p:29,k:3,b:"16:31",e:"16:34"},M:{p:41,k:4,b:"29:7",e:"29:11"}}},"Yom Kippur (Mincha)":{alias:!0,key:"Yom Kippur (Mincha, Traditional)"},"Yom Kippur (Mincha, Traditional)":{haft:[{k:"Jonah",b:"1:1",e:"4:11"},{k:"Micah",b:"7:18",e:"7:20"}],fullkriyah:{1:{p:29,k:3,b:"18:1",e:"18:5"},2:{p:29,k:3,b:"18:6",e:"18:21"},M:{p:29,k:3,b:"18:22",e:"18:30"}}},"Yom Kippur (Mincha, Alternate)":{haft:[{k:"Jonah",b:"1:1",e:"4:11"},{k:"Micah",b:"7:18",e:"7:20"}],fullkriyah:{1:{p:30,k:3,b:"19:1",e:"19:4"},2:{p:30,k:3,b:"19:5",e:"19:10"},M:{p:30,k:3,b:"19:11",e:"19:18"}}},"Sukkot I":{haft:{k:"Zechariah",b:"14:1",e:"14:21"},fullkriyah:{1:{p:31,k:3,b:"22:26",e:"23:3"},2:{p:31,k:3,b:"23:4",e:"23:14"},3:{p:31,k:3,b:"23:15",e:"23:22"},4:{p:31,k:3,b:"23:23",e:"23:32"},5:{p:31,k:3,b:"23:33",e:"23:44"},M:{p:41,k:4,b:"29:12",e:"29:16"}}},"Sukkot I (on Shabbat)":{haft:{k:"Zechariah",b:"14:1",e:"14:21"},fullkriyah:{1:{p:31,k:3,b:"22:26",e:"22:33"},2:{p:31,k:3,b:"23:1",e:"23:3"},3:{p:31,k:3,b:"23:4",e:"23:8"},4:{p:31,k:3,b:"23:9",e:"23:14"},5:{p:31,k:3,b:"23:15",e:"23:22"},6:{p:31,k:3,b:"23:23",e:"23:32"},7:{p:31,k:3,b:"23:33",e:"23:44"},M:{p:41,k:4,b:"29:12",e:"29:16"}}},"Sukkot II":{haft:{k:"I Kings",b:"8:2",e:"8:21"},fullkriyah:{1:{p:31,k:3,b:"22:26",e:"23:3"},2:{p:31,k:3,b:"23:4",e:"23:14"},3:{p:31,k:3,b:"23:15",e:"23:22"},4:{p:31,k:3,b:"23:23",e:"23:32"},5:{p:31,k:3,b:"23:33",e:"23:44"},M:{p:41,k:4,b:"29:12",e:"29:16"}}},"Sukkot Chol ha-Moed Day 1":{fullkriyah:{1:{p:41,k:4,b:"29:17",e:"29:19"},2:{p:41,k:4,b:"29:20",e:"29:22"},3:{p:41,k:4,b:"29:23",e:"29:25"},4:{p:41,k:4,b:"29:17",e:"29:22"}}},"Sukkot Chol ha-Moed Day 2":{fullkriyah:{1:{p:41,k:4,b:"29:20",e:"29:22"},2:{p:41,k:4,b:"29:23",e:"29:25"},3:{p:41,k:4,b:"29:26",e:"29:28"},4:{p:41,k:4,b:"29:20",e:"29:25"}}},"Sukkot Chol ha-Moed Day 3":{fullkriyah:{1:{p:41,k:4,b:"29:23",e:"29:25"},2:{p:41,k:4,b:"29:26",e:"29:28"},3:{p:41,k:4,b:"29:29",e:"29:31"},4:{p:41,k:4,b:"29:23",e:"29:28"}}},"Sukkot Chol ha-Moed Day 4":{fullkriyah:{1:{p:41,k:4,b:"29:26",e:"29:28"},2:{p:41,k:4,b:"29:29",e:"29:31"},3:{p:41,k:4,b:"29:32",e:"29:34"},4:{p:41,k:4,b:"29:26",e:"29:31"}}},"Sukkot Chol ha-Moed Day 5":{fullkriyah:{1:{p:41,k:4,b:"29:29",e:"29:31"},2:{p:41,k:4,b:"29:32",e:"29:34"},3:{p:41,k:4,b:"29:35",e:"29:37"},4:{p:41,k:4,b:"29:29",e:"29:34"}}},"Sukkot Shabbat Chol ha-Moed":{megillah:"Ecclesiastes",haft:{k:"Ezekiel",b:"38:18",e:"39:16"},fullkriyah:{1:{p:21,k:2,b:"33:12",e:"33:16"},2:{p:21,k:2,b:"33:17",e:"33:19"},3:{p:21,k:2,b:"33:20",e:"33:23"},4:{p:21,k:2,b:"34:1",e:"34:3"},5:{p:21,k:2,b:"34:4",e:"34:10"},6:{p:21,k:2,b:"34:11",e:"34:17"},7:{p:21,k:2,b:"34:18",e:"34:26"},"M-day1":{p:41,k:4,b:"29:17",e:"29:22"},"M-day2":{p:41,k:4,b:"29:20",e:"29:25"},"M-day3":{p:41,k:4,b:"29:23",e:"29:28"},"M-day4":{p:41,k:4,b:"29:26",e:"29:31"},"M-day5":{p:41,k:4,b:"29:29",e:"29:34"}}},"Sukkot Final Day (Hoshana Raba)":{fullkriyah:{1:{p:41,k:4,b:"29:26",e:"29:28"},2:{p:41,k:4,b:"29:29",e:"29:31"},3:{p:41,k:4,b:"29:32",e:"29:34"},4:{p:41,k:4,b:"29:29",e:"29:34"}}},"Shmini Atzeret":{haft:{k:"I Kings",b:"8:54",e:"8:66"},fullkriyah:{1:{p:47,k:5,b:"14:22",e:"14:29"},2:{p:47,k:5,b:"15:1",e:"15:18"},3:{p:47,k:5,b:"15:19",e:"16:3"},4:{p:47,k:5,b:"16:4",e:"16:8"},5:{p:47,k:5,b:"16:9",e:"16:17"},M:{p:41,k:4,b:"29:35",e:"30:1"}}},"Shmini Atzeret (on Shabbat)":{haft:{k:"I Kings",b:"8:54",e:"8:66"},fullkriyah:{1:{p:47,k:5,b:"14:22",e:"14:29"},2:{p:47,k:5,b:"15:1",e:"15:18"},3:{p:47,k:5,b:"15:19",e:"15:23"},4:{p:47,k:5,b:"16:1",e:"16:3"},5:{p:47,k:5,b:"16:4",e:"16:8"},6:{p:47,k:5,b:"16:9",e:"16:12"},7:{p:47,k:5,b:"16:13",e:"16:17"},M:{p:41,k:4,b:"29:35",e:"30:1"}}},"Erev Simchat Torah":{fullkriyah:{1:{p:54,k:5,b:"33:1",e:"33:7"},2:{p:54,k:5,b:"33:8",e:"33:12"},3:{p:54,k:5,b:"33:13",e:"33:17"}}},"Simchat Torah":{haft:{k:"Joshua",b:"1:1",e:"1:18"},fullkriyah:{1:{p:54,k:5,b:"33:1",e:"33:7"},2:{p:54,k:5,b:"33:8",e:"33:12"},3:{p:54,k:5,b:"33:13",e:"33:17"},4:{p:54,k:5,b:"33:18",e:"33:21"},5:{p:54,k:5,b:"33:22",e:"33:26"},6:{p:54,k:5,b:"33:27",e:"34:12"},7:{p:1,k:1,b:"1:1",e:"2:3"},M:{p:41,k:4,b:"29:35",e:"30:1"}}},"Shabbat Rosh Chodesh Chanukah":{haft:{k:"Zechariah",b:"2:14",e:"4:7"},fullkriyah:{7:{p:41,k:4,b:"28:9",e:"28:15"},M:{p:35,k:4,b:"7:42",e:"7:47"}}},"Chanukah Day 1":{fullkriyah:{1:{p:35,k:4,b:"7:1",e:"7:11"},2:{p:35,k:4,b:"7:12",e:"7:14"},3:{p:35,k:4,b:"7:15",e:"7:17"}},alt:{1:{p:35,k:4,b:"7:1",e:"7:3"},2:{p:35,k:4,b:"7:4",e:"7:11"},3:{p:35,k:4,b:"7:12",e:"7:17"}}},"Chanukah Day 1 (on Shabbat)":{haft:{k:"Zechariah",b:"2:14",e:"4:7"},fullkriyah:{M:{p:35,k:4,b:"7:1",e:"7:17"}}},"Chanukah Day 2":{fullkriyah:{1:{p:35,k:4,b:"7:18",e:"7:20"},2:{p:35,k:4,b:"7:21",e:"7:23"},3:{p:35,k:4,b:"7:24",e:"7:29"}},alt:{1:{p:35,k:4,b:"7:18",e:"7:20"},2:{p:35,k:4,b:"7:21",e:"7:23"},3:{p:35,k:4,b:"7:18",e:"7:23"}}},"Chanukah Day 2 (on Shabbat)":{haft:{k:"Zechariah",b:"2:14",e:"4:7"},fullkriyah:{M:{p:35,k:4,b:"7:18",e:"7:23"}}},"Chanukah Day 3":{fullkriyah:{1:{p:35,k:4,b:"7:24",e:"7:26"},2:{p:35,k:4,b:"7:27",e:"7:29"},3:{p:35,k:4,b:"7:30",e:"7:35"}},alt:{1:{p:35,k:4,b:"7:24",e:"7:26"},2:{p:35,k:4,b:"7:27",e:"7:29"},3:{p:35,k:4,b:"7:24",e:"7:29"}}},"Chanukah Day 3 (on Shabbat)":{haft:{k:"Zechariah",b:"2:14",e:"4:7"},fullkriyah:{M:{p:35,k:4,b:"7:24",e:"7:29"}}},"Chanukah Day 4":{fullkriyah:{1:{p:35,k:4,b:"7:30",e:"7:32"},2:{p:35,k:4,b:"7:33",e:"7:35"},3:{p:35,k:4,b:"7:36",e:"7:41"}},alt:{1:{p:35,k:4,b:"7:30",e:"7:32"},2:{p:35,k:4,b:"7:33",e:"7:35"},3:{p:35,k:4,b:"7:30",e:"7:35"}}},"Chanukah Day 4 (on Shabbat)":{haft:{k:"Zechariah",b:"2:14",e:"4:7"},fullkriyah:{M:{p:35,k:4,b:"7:30",e:"7:35"}}},"Chanukah Day 5":{fullkriyah:{1:{p:35,k:4,b:"7:36",e:"7:38"},2:{p:35,k:4,b:"7:39",e:"7:41"},3:{p:35,k:4,b:"7:42",e:"7:47"}},alt:{1:{p:35,k:4,b:"7:36",e:"7:38"},2:{p:35,k:4,b:"7:39",e:"7:41"},3:{p:35,k:4,b:"7:36",e:"7:41"}}},"Chanukah Day 5 (on Shabbat)":{haft:{k:"Zechariah",b:"2:14",e:"4:7"},fullkriyah:{M:{p:35,k:4,b:"7:36",e:"7:41"}}},"Chanukah Day 6":{fullkriyah:{1:{p:41,k:4,b:"28:1",e:"28:5"},2:{p:41,k:4,b:"28:6",e:"28:10"},3:{p:41,k:4,b:"28:11",e:"28:15"},4:{p:35,k:4,b:"7:42",e:"7:47"}}},"Chanukah Day 7":{fullkriyah:{1:{p:35,k:4,b:"7:48",e:"7:50"},2:{p:35,k:4,b:"7:51",e:"7:53"},3:{p:35,k:4,b:"7:54",e:"7:59"}},alt:{1:{p:35,k:4,b:"7:48",e:"7:50"},2:{p:35,k:4,b:"7:51",e:"7:53"},3:{p:35,k:4,b:"7:48",e:"7:53"}}},"Chanukah Day 7 (on Rosh Chodesh)":{fullkriyah:{1:{p:41,k:4,b:"28:1",e:"28:5"},2:{p:41,k:4,b:"28:6",e:"28:10"},3:{p:41,k:4,b:"28:11",e:"28:15"},4:{p:35,k:4,b:"7:48",e:"7:53"}}},"Chanukah Day 7 (on Shabbat)":{haft:{k:"Zechariah",b:"2:14",e:"4:7"},fullkriyah:{M:{p:35,k:4,b:"7:48",e:"7:53"}}},"Chanukah Day 8":{fullkriyah:{1:{p:35,k:4,b:"7:54",e:"7:56"},2:{p:35,k:4,b:"7:57",e:"7:59"},3:{p:35,k:4,b:"7:60",e:"8:4"}}},"Chanukah Day 8 (on Shabbat)":{haft:{k:"I Kings",b:"7:40",e:"7:50"},fullkriyah:{M:{p:35,k:4,b:"7:54",e:"8:4"}}},"Erev Purim":{megillah:"Esther"},Purim:{megillah:"Esther",fullkriyah:{1:{p:16,k:2,b:"17:8",e:"17:10"},2:{p:16,k:2,b:"17:11",e:"17:13"},3:{p:16,k:2,b:"17:14",e:"17:16"}}},"Shushan Purim":{note:"Jerusalem & walled cities only",il:!0,megillah:"Esther",fullkriyah:{1:{p:16,k:2,b:"17:8",e:"17:10"},2:{p:16,k:2,b:"17:11",e:"17:13"},3:{p:16,k:2,b:"17:14",e:"17:16"}}},"Shushan Purim (on Shabbat)":{il:!0,note:"Jerusalem & walled cities only: special maftir Exodus 17:8-16, same Haftara as Shabbat Zachor"},"Shabbat HaChodesh":{haft:{k:"Ezekiel",b:"45:16",e:"46:18"},seph:{k:"Ezekiel",b:"45:18",e:"46:15"},fullkriyah:{M:{p:15,k:2,b:"12:1",e:"12:20"}}},"Shabbat HaChodesh (on Rosh Chodesh)":{haft:{k:"Ezekiel",b:"45:16",e:"46:18"},seph:{k:"Ezekiel",b:"45:18",e:"46:15"},fullkriyah:{7:{p:41,k:4,b:"28:9",e:"28:15"},M:{p:15,k:2,b:"12:1",e:"12:20"}}},"Shabbat HaGadol":{haft:{k:"Malachi",b:"3:4",e:"3:24"}},"Shabbat Parah":{haft:{k:"Ezekiel",b:"36:16",e:"36:38"},seph:{k:"Ezekiel",b:"36:16",e:"36:36"},fullkriyah:{M:{p:39,k:4,b:"19:1",e:"19:22"}}},"Shabbat Shekalim":{haft:{k:"II Kings",b:"12:1",e:"12:17"},seph:{k:"II Kings",b:"11:17",e:"12:17"},fullkriyah:{M:{p:21,k:2,b:"30:11",e:"30:16"}}},"Shabbat Shekalim (on Rosh Chodesh)":{haft:{k:"II Kings",b:"12:1",e:"12:17"},seph:{k:"II Kings",b:"11:17",e:"12:17"},fullkriyah:{7:{p:41,k:4,b:"28:9",e:"28:15"},M:{p:21,k:2,b:"30:11",e:"30:16"}}},"Shabbat Shuva (with Vayeilech)":{haft:[{k:"Hosea",b:"14:2",e:"14:10"},{k:"Micah",b:"7:18",e:"7:20"}]},"Shabbat Shuva (with Ha'azinu)":{haft:[{k:"Hosea",b:"14:2",e:"14:10"},{k:"Joel",b:"2:15",e:"2:27"}],seph:[{k:"Hosea",b:"14:2",e:"14:10"},{k:"Micah",b:"7:18",e:"7:20"}]},"Shabbat Shuva":{haft:[{k:"Hosea",b:"14:2",e:"14:10"},{k:"Micah",b:"7:18",e:"7:20"},{k:"Joel",b:"2:15",e:"2:27"}]},"Shabbat Zachor":{haft:{k:"I Samuel",b:"15:2",e:"15:34"},seph:{k:"I Samuel",b:"15:1",e:"15:34"},fullkriyah:{M:{p:49,k:5,b:"25:17",e:"25:19"}}},"Pinchas occurring after 17 Tammuz":{haft:{k:"Jeremiah",b:"1:1",e:"2:3"}},"Kedoshim following Special Shabbat":{haft:{k:"Amos",b:"9:7",e:"9:15"},seph:{k:"Ezekiel",b:"20:2",e:"20:20"}},"Masei on Shabbat Rosh Chodesh":{haft:[{k:"Jeremiah",b:"2:4",e:"2:28"},{k:"Jeremiah",b:"3:4",e:"3:4"}],seph:[{k:"Jeremiah",b:"2:4",e:"2:28"},{k:"Jeremiah",b:"4:1",e:"4:2"},{k:"Isaiah",b:"66:1",e:"66:1"},{k:"Isaiah",b:"66:23",e:"66:23"}],fullkriyah:{M:{p:41,k:4,b:"28:9",e:"28:15"}}},"Matot-Masei on Shabbat Rosh Chodesh":{alias:!0,key:"Masei on Shabbat Rosh Chodesh"},"Ki Teitzei with 3rd Haftarah of Consolation":{haft:[{k:"Isaiah",b:"54:1",e:"54:10"},{k:"Isaiah",b:"54:11",e:"55:5"}]},"Rosh Chodesh":{fullkriyah:{1:{p:41,k:4,b:"28:1",e:"28:3"},2:{p:41,k:4,b:"28:3",e:"28:5"},3:{p:41,k:4,b:"28:6",e:"28:10"},4:{p:41,k:4,b:"28:11",e:"28:15"}}},"Rosh Chodesh Nisan":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Iyyar":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Sivan":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Tamuz":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Av":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Elul":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Tishrei":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Cheshvan":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Kislev":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Sh'vat":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Adar":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Adar I":{alias:!0,key:"Rosh Chodesh"},"Rosh Chodesh Adar II":{alias:!0,key:"Rosh Chodesh"},"Shabbat Rosh Chodesh":{haft:{k:"Isaiah",b:"66:1",e:"66:24"},fullkriyah:{M:{p:41,k:4,b:"28:9",e:"28:15"}}},"Shabbat Machar Chodesh":{haft:{k:"I Samuel",b:"20:18",e:"20:42"}}};function y(e){return"object"==typeof p[e]}function c(e){let a=p[e];if(void 0===a)return;if(a.alias){const h=p[a.key];if(void 0===h)throw new Error(`Leyning alias ${e} => ${a.key} not found`);a=h}const h=a.fullkriyah?l(a):a;if(h.fullkriyah)for(const e of Object.values(h.fullkriyah))"number"==typeof e.k&&(e.k=k[e.k]);return a.note&&(h.note=a.note),h}const m=a.flags.DAF_YOMI|a.flags.OMER_COUNT|a.flags.SHABBAT_MEVARCHIM|a.flags.MOLAD|a.flags.USER_EVENT|a.flags.HEBREW_DATE|a.flags.MISHNA_YOMI|a.flags.MODERN_HOLIDAY|a.flags.YERUSHALMI_YOMI;function d(e,h=!1){if(void 0!==e.eventTime)return;const k=e.getFlags();if(k&m)return;const o=e.getDesc();if(k&a.flags.EREV&&!y(o))return;const t=e.getDate(),i=t.getDate(),b=t.abs()%7,r=t.getMonth(),s=6==b,n=1==i||30==i,l=e.basename(),u="Pesach"===l;if(h&&u)return s?15===i||21===i?o+" (on Shabbat)":"Pesach Shabbat Chol ha-Moed":o;if(1==i&&r===a.months.TISHREI)return s?"Rosh Hashana I (on Shabbat)":"Rosh Hashana I";const f=e.cholHaMoedDay;if("number"==typeof f){if(s)return l+" Shabbat Chol ha-Moed";if("Sukkot VII (Hoshana Raba)"==o)return"Sukkot Final Day (Hoshana Raba)";if(u&&f){if(0===b&&"Pesach IV (CH''M)"===o)return"Pesach Chol ha-Moed Day 2 on Sunday";if(1===b&&"Pesach V (CH''M)"===o)return"Pesach Chol ha-Moed Day 3 on Monday"}return`${l} Chol ha-Moed Day ${f}`}const p=e.chanukahDay;if("number"==typeof p)return s&&n?"Shabbat Rosh Chodesh Chanukah":n&&7==p?"Chanukah Day 7 (on Rosh Chodesh)":s?`Chanukah Day ${p} (on Shabbat)`:`Chanukah Day ${p}`;if(n&&("Shabbat HaChodesh"==o||"Shabbat Shekalim"==o))return o+" (on Rosh Chodesh)";if(h&&"Shmini Atzeret"==o)return"Simchat Torah";if("Chag HaBanot"!==o){if(s&&"Shabbat"!=o.substring(0,7)){if(n)return"Rosh Chodesh Tevet"===o?"Shabbat Rosh Chodesh Chanukah":"Shabbat Rosh Chodesh";const e=o+" (on Shabbat)";if(y(e))return e}if(y(o))return o;if(s){const e=t.next().getDate();if(30===e||1===e)return"Shabbat Machar Chodesh"}if("Rosh Hashana LaBehemot"!==o)return"Rosh Chodesh Tevet"===o?s?"Shabbat Rosh Chodesh Chanukah":30===i||a.HDate.shortKislev(t.getFullYear())?"Chanukah Day 6":"Chanukah Day 7 (on Rosh Chodesh)":n?o:"Tish'a B'Av (observed)"===o?"Tish'a B'Av":void 0}}function M(e,a){a[7]&&(!function(e){const a=l(e[6]),h=e[7];if(a.k!==h.k)throw new Error("Impossible to combine aliyot 6 & 7: "+JSON.stringify(e));delete e[7],e[6]={k:a.k,b:a.b,e:h.e},a.v&&h.v&&(e[6].v=a.v+h.v)}(e),e[7]=l(a[7]),t(e[7])),a.M&&(e.M=l(a.M),t(e.M))}function g(e,h,k,t){let i,b,r=!1;const s={};function n(e){const a=c(e);if(a&&("boolean"!=typeof a.il||k===a.il)&&(a.haft&&!r&&(i=u(a.haft),s.haftara=e,r=!0,a.seph&&(b=u(a.seph),s.sephardic=e)),a.fullkriyah)){const h=l(t);M(h,a.fullkriyah);for(const h of Object.keys(a.fullkriyah))s[h]=e;t=h}}const f=o(e),p=(a.HebrewCalendar.getHolidaysOnDate(h,k)||[]).filter((e=>!(e.getFlags()&a.flags.ROSH_CHODESH)));for(const e of p)if("Shabbat Shuva"===e.getDesc())n(`Shabbat Shuva (with ${f})`);else{const a=d(e,k);a&&n(a)}if(!i){const e=h.getDate();if("Pinchas"===f&&e>17)n("Pinchas occurring after 17 Tammuz");else if(30===e||1===e){n("Masei"===f||"Matot-Masei"===f?`${f} on Shabbat Rosh Chodesh`:"Shabbat Rosh Chodesh")}else if("Ki Teitzei"===f&&14===e)n("Ki Teitzei with 3rd Haftarah of Consolation");else if("Kedoshim"!==f||26!==e&&28!==e&&6!==e){if(h.getMonth()!==a.months.AV){const e=h.next().getDate();30!==e&&1!==e||n("Shabbat Machar Chodesh")}}else n("Kedoshim following Special Shabbat")}return{aliyot:t,reason:s,haft:i,seph:b}}function S(e,k,o){if("string"!=typeof e)return;const i=c(e);if(void 0===i)return;const b=i.il;if("boolean"==typeof b&&"boolean"==typeof o&&o!==b)return;const r={name:{en:e,he:a.Locale.lookupTranslation(e,"he")}};if(i.fullkriyah){if(r.fullkriyah=l(i.fullkriyah),"Sukkot Shabbat Chol ha-Moed"===e&&k){r.fullkriyah.M=r.fullkriyah[`M-day${k}`];for(let e=1;e<=5;e++)delete r.fullkriyah[`M-day${e}`]}if("object"==typeof r.fullkriyah[1]){const e=s(r.fullkriyah);r.summary=n(e),e.length>1&&(r.summaryParts=e)}Object.values(r.fullkriyah).map((e=>t(e)))}if(i.haft){const e=r.haft=u(i.haft);r.haftara=n(e),r.haftaraNumV=f(e)}if(i.seph){const e=r.seph=u(i.seph);r.sephardic=n(e),r.sephardicNumV=f(e)}if(i.megillah){const e=i.megillah,a=h[e],k={};for(let h=1;h<a.length;h++){const o=a[h];k[`${h}`]={k:e,b:`${h}:1`,e:`${h}:${o}`,v:o}}r.megillah=k}return i.note&&(r.note=i.note),r}function w(e,h=!1){if("object"!=typeof e||"function"!=typeof e.getFlags)throw new TypeError(`Bad event argument: ${JSON.stringify(e)}`);if(void 0!==e.eventTime)return;if(e.getFlags()&a.flags.PARSHA_HASHAVUA)throw new TypeError(`Event should be a holiday: ${e.getDesc()}`);if(e.getFlags()&m)return;return S(d(e,h),e.cholHaMoedDay,h)}const I={Bereshit:{num:1,hebrew:"בְּרֵאשִׁית",book:1,haft:{k:"Isaiah",b:"42:5",e:"43:10"},seph:{k:"Isaiah",b:"42:5",e:"42:21"},fullkriyah:{1:["1:1","2:3"],2:["2:4","2:19"],3:["2:20","3:21"],4:["3:22","4:18"],5:["4:19","4:22"],6:["4:23","5:24"],7:["5:25","6:8"],M:["6:5","6:8"]},weekday:{1:["1:1","1:5"],2:["1:6","1:8"],3:["1:9","1:13"]}},Noach:{num:2,hebrew:"נֹחַ",book:1,haft:{k:"Isaiah",b:"54:1",e:"55:5"},seph:{k:"Isaiah",b:"54:1",e:"54:10"},fullkriyah:{1:["6:9","6:22"],2:["7:1","7:16"],3:["7:17","8:14"],4:["8:15","9:7"],5:["9:8","9:17"],6:["9:18","10:32"],7:["11:1","11:32"],M:["11:29","11:32"]},weekday:{1:["6:9","6:16"],2:["6:17","6:19"],3:["6:20","6:22"]}},"Lech-Lecha":{num:3,hebrew:"לֶךְ־לְךָ",book:1,haft:{k:"Isaiah",b:"40:27",e:"41:16"},fullkriyah:{1:["12:1","12:13"],2:["12:14","13:4"],3:["13:5","13:18"],4:["14:1","14:20"],5:["14:21","15:6"],6:["15:7","17:6"],7:["17:7","17:27"],M:["17:24","17:27"]},weekday:{1:["12:1","12:3"],2:["12:4","12:9"],3:["12:10","12:13"]}},Vayera:{num:4,hebrew:"וַיֵּרָא",book:1,haft:{k:"II Kings",b:"4:1",e:"4:37"},seph:{k:"II Kings",b:"4:1",e:"4:23"},fullkriyah:{1:["18:1","18:14"],2:["18:15","18:33"],3:["19:1","19:20"],4:["19:21","21:4"],5:["21:5","21:21"],6:["21:22","21:34"],7:["22:1","22:24"],M:["22:20","22:24"]},weekday:{1:["18:1","18:5"],2:["18:6","18:8"],3:["18:9","18:14"]}},"Chayei Sara":{num:5,hebrew:"חַיֵּי שָֹרָה",book:1,haft:{k:"I Kings",b:"1:1",e:"1:31"},fullkriyah:{1:["23:1","23:16"],2:["23:17","24:9"],3:["24:10","24:26"],4:["24:27","24:52"],5:["24:53","24:67"],6:["25:1","25:11"],7:["25:12","25:18"],M:["25:16","25:18"]},weekday:{1:["23:1","23:7"],2:["23:8","23:12"],3:["23:13","23:16"]}},Toldot:{num:6,hebrew:"תּוֹלְדוֹת",book:1,haft:{k:"Malachi",b:"1:1",e:"2:7"},fullkriyah:{1:["25:19","26:5"],2:["26:6","26:12"],3:["26:13","26:22"],4:["26:23","26:29"],5:["26:30","27:27"],6:["27:28","28:4"],7:["28:5","28:9"],M:["28:7","28:9"]},weekday:{1:["25:19","25:22"],2:["25:23","25:26"],3:["25:27","26:5"]}},Vayetzei:{num:7,hebrew:"וַיֵּצֵא",book:1,haft:{k:"Hosea",b:"12:13",e:"14:10"},seph:{k:"Hosea",b:"11:7",e:"12:12"},fullkriyah:{1:["28:10","28:22"],2:["29:1","29:17"],3:["29:18","30:13"],4:["30:14","30:27"],5:["30:28","31:16"],6:["31:17","31:42"],7:["31:43","32:3"],M:["32:1","32:3"]},weekday:{1:["28:10","28:12"],2:["28:13","28:17"],3:["28:18","28:22"]}},Vayishlach:{num:8,hebrew:"וַיִּשְׁלַח",book:1,haft:{k:"Obadiah",b:"1:1",e:"1:21"},fullkriyah:{1:["32:4","32:13"],2:["32:14","32:30"],3:["32:31","33:5"],4:["33:6","33:20"],5:["34:1","35:11"],6:["35:12","36:19"],7:["36:20","36:43"],M:["36:40","36:43"]},weekday:{1:["32:4","32:6"],2:["32:7","32:9"],3:["32:10","32:13"]}},Vayeshev:{num:9,hebrew:"וַיֵּשֶׁב",book:1,haft:{k:"Amos",b:"2:6",e:"3:8"},fullkriyah:{1:["37:1","37:11"],2:["37:12","37:22"],3:["37:23","37:36"],4:["38:1","38:30"],5:["39:1","39:6"],6:["39:7","39:23"],7:["40:1","40:23"],M:["40:20","40:23"]},weekday:{1:["37:1","37:3"],2:["37:4","37:7"],3:["37:8","37:11"]}},Miketz:{num:10,hebrew:"מִקֵּץ",book:1,haft:{k:"I Kings",b:"3:15",e:"4:1"},fullkriyah:{1:["41:1","41:14"],2:["41:15","41:38"],3:["41:39","41:52"],4:["41:53","42:18"],5:["42:19","43:15"],6:["43:16","43:29"],7:["43:30","44:17"],M:["44:14","44:17"]},weekday:{1:["41:1","41:4"],2:["41:5","41:7"],3:["41:8","41:14"]}},Vayigash:{num:11,hebrew:"וַיִּגַּשׁ",book:1,haft:{k:"Ezekiel",b:"37:15",e:"37:28"},fullkriyah:{1:["44:18","44:30"],2:["44:31","45:7"],3:["45:8","45:18"],4:["45:19","45:27"],5:["45:28","46:27"],6:["46:28","47:10"],7:["47:11","47:27"],M:["47:25","47:27"]},weekday:{1:["44:18","44:20"],2:["44:21","44:24"],3:["44:25","44:30"]}},Vayechi:{num:12,hebrew:"וַיְחִי",book:1,haft:{k:"I Kings",b:"2:1",e:"2:12"},fullkriyah:{1:["47:28","48:9"],2:["48:10","48:16"],3:["48:17","48:22"],4:["49:1","49:18"],5:["49:19","49:26"],6:["49:27","50:20"],7:["50:21","50:26"],M:["50:23","50:26"]},weekday:{1:["47:28","47:31"],2:["48:1","48:3"],3:["48:4","48:9"]}},Shemot:{num:13,hebrew:"שְׁמוֹת",book:2,haft:[{k:"Isaiah",b:"27:6",e:"28:13"},{k:"Isaiah",b:"29:22",e:"29:23"}],seph:{k:"Jeremiah",b:"1:1",e:"2:3"},fullkriyah:{1:["1:1","1:17"],2:["1:18","2:10"],3:["2:11","2:25"],4:["3:1","3:15"],5:["3:16","4:17"],6:["4:18","4:31"],7:["5:1","6:1"],M:["5:22","6:1"]},weekday:{1:["1:1","1:7"],2:["1:8","1:12"],3:["1:13","1:17"]}},Vaera:{num:14,hebrew:"וָאֵרָא",book:2,haft:{k:"Ezekiel",b:"28:25",e:"29:21"},fullkriyah:{1:["6:2","6:13"],2:["6:14","6:28"],3:["6:29","7:7"],4:["7:8","8:6"],5:["8:7","8:18"],6:["8:19","9:16"],7:["9:17","9:35"],M:["9:33","9:35"]},weekday:{1:["6:2","6:5"],2:["6:6","6:9"],3:["6:10","6:13"]}},Bo:{num:15,hebrew:"בֹּא",book:2,haft:{k:"Jeremiah",b:"46:13",e:"46:28"},fullkriyah:{1:["10:1","10:11"],2:["10:12","10:23"],3:["10:24","11:3"],4:["11:4","12:20"],5:["12:21","12:28"],6:["12:29","12:51"],7:["13:1","13:16"],M:["13:14","13:16"]},weekday:{1:["10:1","10:3"],2:["10:4","10:6"],3:["10:7","10:11"]}},Beshalach:{num:16,hebrew:"בְּשַׁלַּח",book:2,haft:{k:"Judges",b:"4:4",e:"5:31"},seph:{k:"Judges",b:"5:1",e:"5:31"},fullkriyah:{1:["13:17","14:8"],2:["14:9","14:14"],3:["14:15","14:25"],4:["14:26","15:26"],5:["15:27","16:10"],6:["16:11","16:36"],7:["17:1","17:16"],M:["17:14","17:16"]},weekday:{1:["13:17","13:22"],2:["14:1","14:4"],3:["14:5","14:8"]}},Yitro:{num:17,hebrew:"יִתְרוֹ",book:2,haft:[{k:"Isaiah",b:"6:1",e:"7:6"},{k:"Isaiah",b:"9:5",e:"9:6"}],seph:{k:"Isaiah",b:"6:1",e:"6:13"},fullkriyah:{1:["18:1","18:12"],2:["18:13","18:23"],3:["18:24","18:27"],4:["19:1","19:6"],5:["19:7","19:19"],6:["19:20","20:14"],7:["20:15","20:23"],M:["20:19","20:23"]},weekday:{1:["18:1","18:4"],2:["18:5","18:8"],3:["18:9","18:12"]}},Mishpatim:{num:18,hebrew:"מִּשְׁפָּטִים",book:2,haft:[{k:"Jeremiah",b:"34:8",e:"34:22"},{k:"Jeremiah",b:"33:25",e:"33:26"}],fullkriyah:{1:["21:1","21:19"],2:["21:20","22:3"],3:["22:4","22:26"],4:["22:27","23:5"],5:["23:6","23:19"],6:["23:20","23:25"],7:["23:26","24:18"],M:["24:15","24:18"]},weekday:{1:["21:1","21:6"],2:["21:7","21:11"],3:["21:12","21:19"]}},Terumah:{num:19,hebrew:"תְּרוּמָה",book:2,haft:{k:"I Kings",b:"5:26",e:"6:13"},fullkriyah:{1:["25:1","25:16"],2:["25:17","25:30"],3:["25:31","26:14"],4:["26:15","26:30"],5:["26:31","26:37"],6:["27:1","27:8"],7:["27:9","27:19"],M:["27:17","27:19"]},weekday:{1:["25:1","25:5"],2:["25:6","25:9"],3:["25:10","25:16"]}},Tetzaveh:{num:20,hebrew:"תְּצַוֶּה",book:2,haft:{k:"Ezekiel",b:"43:10",e:"43:27"},fullkriyah:{1:["27:20","28:12"],2:["28:13","28:30"],3:["28:31","28:43"],4:["29:1","29:18"],5:["29:19","29:37"],6:["29:38","29:46"],7:["30:1","30:10"],M:["30:8","30:10"]},weekday:{1:["27:20","28:5"],2:["28:6","28:9"],3:["28:10","28:12"]}},"Ki Tisa":{num:21,hebrew:"כִּי תִשָּׂא",book:2,haft:{k:"I Kings",b:"18:1",e:"18:39"},seph:{k:"I Kings",b:"18:20",e:"18:39"},fullkriyah:{1:["30:11","31:17"],2:["31:18","33:11"],3:["33:12","33:16"],4:["33:17","33:23"],5:["34:1","34:9"],6:["34:10","34:26"],7:["34:27","34:35"],M:["34:33","34:35"]},weekday:{1:["30:11","30:13"],2:["30:14","30:16"],3:["30:17","30:21"]}},Vayakhel:{num:22,hebrew:"וַיַּקְהֵל",book:2,haft:{k:"I Kings",b:"7:40",e:"7:50"},seph:{k:"I Kings",b:"7:13",e:"7:26"},fullkriyah:{1:["35:1","35:20"],2:["35:21","35:29"],3:["35:30","36:7"],4:["36:8","36:19"],5:["36:20","37:16"],6:["37:17","37:29"],7:["38:1","38:20"],M:["38:18","38:20"]},weekday:{1:["35:1","35:3"],2:["35:4","35:10"],3:["35:11","35:20"]}},Pekudei:{num:23,hebrew:"פְקוּדֵי",book:2,haft:{k:"I Kings",b:"7:51",e:"8:21"},seph:{k:"I Kings",b:"7:40",e:"7:50"},fullkriyah:{1:["38:21","39:1"],2:["39:2","39:21"],3:["39:22","39:32"],4:["39:33","39:43"],5:["40:1","40:16"],6:["40:17","40:27"],7:["40:28","40:38"],M:["40:34","40:38"]},weekday:{1:["38:21","38:23"],2:["38:24","38:27"],3:["38:28","39:1"]}},Vayikra:{num:24,hebrew:"וַיִּקְרָא",book:3,haft:{k:"Isaiah",b:"43:21",e:"44:23"},fullkriyah:{1:["1:1","1:13"],2:["1:14","2:6"],3:["2:7","2:16"],4:["3:1","3:17"],5:["4:1","4:26"],6:["4:27","5:10"],7:["5:11","5:26"],M:["5:24","5:26"]},weekday:{1:["1:1","1:4"],2:["1:5","1:9"],3:["1:10","1:13"]}},Tzav:{num:25,hebrew:"צַו",book:3,haft:[{k:"Jeremiah",b:"7:21",e:"8:3"},{k:"Jeremiah",b:"9:22",e:"9:23"}],fullkriyah:{1:["6:1","6:11"],2:["6:12","7:10"],3:["7:11","7:38"],4:["8:1","8:13"],5:["8:14","8:21"],6:["8:22","8:29"],7:["8:30","8:36"],M:["8:33","8:36"]},weekday:{1:["6:1","6:3"],2:["6:4","6:6"],3:["6:7","6:11"]}},Shmini:{num:26,hebrew:"שְּׁמִינִי",book:3,haft:{k:"II Samuel",b:"6:1",e:"7:17"},seph:{k:"II Samuel",b:"6:1",e:"6:19"},fullkriyah:{1:["9:1","9:16"],2:["9:17","9:23"],3:["9:24","10:11"],4:["10:12","10:15"],5:["10:16","10:20"],6:["11:1","11:32"],7:["11:33","11:47"],M:["11:45","11:47"]},weekday:{1:["9:1","9:6"],2:["9:7","9:10"],3:["9:11","9:16"]}},Tazria:{num:27,hebrew:"תַזְרִיעַ",book:3,haft:{k:"II Kings",b:"4:42",e:"5:19"},fullkriyah:{1:["12:1","13:5"],2:["13:6","13:17"],3:["13:18","13:23"],4:["13:24","13:28"],5:["13:29","13:39"],6:["13:40","13:54"],7:["13:55","13:59"],M:["13:57","13:59"]},weekday:{1:["12:1","12:4"],2:["12:5","12:8"],3:["13:1","13:5"]}},Metzora:{num:28,hebrew:"מְּצֹרָע",book:3,haft:{k:"II Kings",b:"7:3",e:"7:20"},fullkriyah:{1:["14:1","14:12"],2:["14:13","14:20"],3:["14:21","14:32"],4:["14:33","14:53"],5:["14:54","15:15"],6:["15:16","15:28"],7:["15:29","15:33"],M:["15:31","15:33"]},weekday:{1:["14:1","14:5"],2:["14:6","14:9"],3:["14:10","14:12"]}},"Achrei Mot":{num:29,hebrew:"אַחֲרֵי מוֹת",book:3,haft:{k:"Amos",b:"9:7",e:"9:15"},seph:{k:"Ezekiel",b:"22:1",e:"22:16"},fullkriyah:{1:["16:1","16:17"],2:["16:18","16:24"],3:["16:25","16:34"],4:["17:1","17:7"],5:["17:8","18:5"],6:["18:6","18:21"],7:["18:22","18:30"],M:["18:28","18:30"]},weekday:{1:["16:1","16:6"],2:["16:7","16:11"],3:["16:12","16:17"]}},Kedoshim:{num:30,hebrew:"קְדשִׁים",book:3,haft:{k:"Ezekiel",b:"22:1",e:"22:19"},seph:{k:"Ezekiel",b:"20:2",e:"20:20"},fullkriyah:{1:["19:1","19:14"],2:["19:15","19:22"],3:["19:23","19:32"],4:["19:33","19:37"],5:["20:1","20:7"],6:["20:8","20:22"],7:["20:23","20:27"],M:["20:25","20:27"]},weekday:{1:["19:1","19:4"],2:["19:5","19:10"],3:["19:11","19:14"]}},Emor:{num:31,hebrew:"אֱמוֹר",book:3,haft:{k:"Ezekiel",b:"44:15",e:"44:31"},fullkriyah:{1:["21:1","21:15"],2:["21:16","22:16"],3:["22:17","22:33"],4:["23:1","23:22"],5:["23:23","23:32"],6:["23:33","23:44"],7:["24:1","24:23"],M:["24:21","24:23"]},weekday:{1:["21:1","21:6"],2:["21:7","21:12"],3:["21:13","21:15"]}},Behar:{num:32,hebrew:"בְּהַר",book:3,haft:{k:"Jeremiah",b:"32:6",e:"32:27"},fullkriyah:{1:["25:1","25:13"],2:["25:14","25:18"],3:["25:19","25:24"],4:["25:25","25:28"],5:["25:29","25:38"],6:["25:39","25:46"],7:["25:47","26:2"],M:["25:55","26:2"]},weekday:{1:["25:1","25:3"],2:["25:4","25:7"],3:["25:8","25:13"]}},Bechukotai:{num:33,hebrew:"בְּחֻקֹּתַי",book:3,haft:{k:"Jeremiah",b:"16:19",e:"17:14"},fullkriyah:{1:["26:3","26:5"],2:["26:6","26:9"],3:["26:10","26:46"],4:["27:1","27:15"],5:["27:16","27:21"],6:["27:22","27:28"],7:["27:29","27:34"],M:["27:32","27:34"]},weekday:{1:["26:3","26:5"],2:["26:6","26:9"],3:["26:10","26:13"]}},Bamidbar:{num:34,hebrew:"בְּמִדְבַּר",book:4,haft:{k:"Hosea",b:"2:1",e:"2:22"},fullkriyah:{1:["1:1","1:19"],2:["1:20","1:54"],3:["2:1","2:34"],4:["3:1","3:13"],5:["3:14","3:39"],6:["3:40","3:51"],7:["4:1","4:20"],M:["4:17","4:20"]},weekday:{1:["1:1","1:4"],2:["1:5","1:16"],3:["1:17","1:19"]}},Nasso:{num:35,hebrew:"נָשׂא",book:4,haft:{k:"Judges",b:"13:2",e:"13:25"},fullkriyah:{1:["4:21","4:37"],2:["4:38","4:49"],3:["5:1","5:10"],4:["5:11","6:27"],5:["7:1","7:41"],6:["7:42","7:71"],7:["7:72","7:89"],M:["7:87","7:89"]},weekday:{1:["4:21","4:24"],2:["4:25","4:28"],3:["4:29","4:33"]}},"Beha'alotcha":{num:36,hebrew:"בְּהַעֲלֹתְךָ",book:4,haft:{k:"Zechariah",b:"2:14",e:"4:7"},fullkriyah:{1:["8:1","8:14"],2:["8:15","8:26"],3:["9:1","9:14"],4:["9:15","10:10"],5:["10:11","10:34"],6:["10:35","11:29"],7:["11:30","12:16"],M:["12:14","12:16"]},weekday:{1:["8:1","8:4"],2:["8:5","8:9"],3:["8:10","8:14"]}},"Sh'lach":{num:37,hebrew:"שְׁלַח־לְךָ",book:4,haft:{k:"Joshua",b:"2:1",e:"2:24"},fullkriyah:{1:["13:1","13:20"],2:["13:21","14:7"],3:["14:8","14:25"],4:["14:26","15:7"],5:["15:8","15:16"],6:["15:17","15:26"],7:["15:27","15:41"],M:["15:37","15:41"]},weekday:{1:["13:1","13:3"],2:["13:4","13:16"],3:["13:17","13:20"]}},Korach:{num:38,hebrew:"קוֹרַח",book:4,haft:{k:"I Samuel",b:"11:14",e:"12:22"},fullkriyah:{1:["16:1","16:13"],2:["16:14","16:19"],3:["16:20","17:8"],4:["17:9","17:15"],5:["17:16","17:24"],6:["17:25","18:20"],7:["18:21","18:32"],M:["18:30","18:32"]},weekday:{1:["16:1","16:3"],2:["16:4","16:7"],3:["16:8","16:13"]}},Chukat:{num:39,hebrew:"חֻקַּת",book:4,haft:{k:"Judges",b:"11:1",e:"11:33"},fullkriyah:{1:["19:1","19:17"],2:["19:18","20:6"],3:["20:7","20:13"],4:["20:14","20:21"],5:["20:22","21:9"],6:["21:10","21:20"],7:["21:21","22:1"],M:["21:34","22:1"]},weekday:{1:["19:1","19:6"],2:["19:7","19:9"],3:["19:10","19:17"]}},Balak:{num:40,hebrew:"בָּלָק",book:4,haft:{k:"Micah",b:"5:6",e:"6:8"},fullkriyah:{1:["22:2","22:12"],2:["22:13","22:20"],3:["22:21","22:38"],4:["22:39","23:12"],5:["23:13","23:26"],6:["23:27","24:13"],7:["24:14","25:9"],M:["25:7","25:9"]},weekday:{1:["22:2","22:4"],2:["22:5","22:7"],3:["22:8","22:12"]}},Pinchas:{num:41,hebrew:"פִּינְחָס",book:4,haft:{k:"I Kings",b:"18:46",e:"19:21"},fullkriyah:{1:["25:10","26:4"],2:["26:5","26:51"],3:["26:52","27:5"],4:["27:6","27:23"],5:["28:1","28:15"],6:["28:16","29:11"],7:["29:12","30:1"],M:["29:35","30:1"]},weekday:{1:["25:10","25:12"],2:["25:13","25:15"],3:["25:16","26:4"]}},Matot:{num:42,hebrew:"מַּטּוֹת",book:4,haft:{k:"Jeremiah",b:"1:1",e:"2:3"},fullkriyah:{1:["30:2","30:17"],2:["31:1","31:12"],3:["31:13","31:24"],4:["31:25","31:41"],5:["31:42","31:54"],6:["32:1","32:19"],7:["32:20","32:42"],M:["32:39","32:42"]},weekday:{1:["30:2","30:9"],2:["30:10","30:13"],3:["30:14","30:17"]}},Masei:{num:43,hebrew:"מַסְעֵי",book:4,haft:[{k:"Jeremiah",b:"2:4",e:"2:28"},{k:"Jeremiah",b:"3:4",e:"3:4"}],seph:[{k:"Jeremiah",b:"2:4",e:"2:28"},{k:"Jeremiah",b:"4:1",e:"4:2"}],fullkriyah:{1:["33:1","33:10"],2:["33:11","33:49"],3:["33:50","34:15"],4:["34:16","34:29"],5:["35:1","35:8"],6:["35:9","35:34"],7:["36:1","36:13"],M:["36:11","36:13"]},weekday:{1:["33:1","33:3"],2:["33:4","33:6"],3:["33:7","33:10"]}},Devarim:{num:44,hebrew:"דְּבָרִים",book:5,haft:{k:"Isaiah",b:"1:1",e:"1:27"},fullkriyah:{1:["1:1","1:10"],2:["1:11","1:21"],3:["1:22","1:38"],4:["1:39","2:1"],5:["2:2","2:30"],6:["2:31","3:14"],7:["3:15","3:22"],M:["3:20","3:22"]},weekday:{1:["1:1","1:3"],2:["1:4","1:7"],3:["1:8","1:11"]}},Vaetchanan:{num:45,hebrew:"וָאֶתְחַנַּן",book:5,haft:{k:"Isaiah",b:"40:1",e:"40:26"},fullkriyah:{1:["3:23","4:4"],2:["4:5","4:40"],3:["4:41","4:49"],4:["5:1","5:18"],5:["5:19","6:3"],6:["6:4","6:25"],7:["7:1","7:11"],M:["7:9","7:11"]},weekday:{1:["3:23","3:25"],2:["3:26","4:4"],3:["4:5","4:8"]}},Eikev:{num:46,hebrew:"עֵקֶב",book:5,haft:{k:"Isaiah",b:"49:14",e:"51:3"},fullkriyah:{1:["7:12","8:10"],2:["8:11","9:3"],3:["9:4","9:29"],4:["10:1","10:11"],5:["10:12","11:9"],6:["11:10","11:21"],7:["11:22","11:25"],M:["11:22","11:25"]},weekday:{1:["7:12","7:21"],2:["7:22","8:3"],3:["8:4","8:10"]}},"Re'eh":{num:47,hebrew:"רְאֵה",book:5,haft:{k:"Isaiah",b:"54:11",e:"55:5"},fullkriyah:{1:["11:26","12:10"],2:["12:11","12:28"],3:["12:29","13:19"],4:["14:1","14:21"],5:["14:22","14:29"],6:["15:1","15:18"],7:["15:19","16:17"],M:["16:13","16:17"]},weekday:{1:["11:26","11:31"],2:["11:32","12:5"],3:["12:6","12:10"]}},Shoftim:{num:48,hebrew:"שׁוֹפְטִים",book:5,haft:{k:"Isaiah",b:"51:12",e:"52:12"},fullkriyah:{1:["16:18","17:13"],2:["17:14","17:20"],3:["18:1","18:5"],4:["18:6","18:13"],5:["18:14","19:13"],6:["19:14","20:9"],7:["20:10","21:9"],M:["21:7","21:9"]},weekday:{1:["16:18","16:20"],2:["16:21","17:10"],3:["17:11","17:13"]}},"Ki Teitzei":{num:49,hebrew:"כִּי־תֵצֵא",book:5,haft:{k:"Isaiah",b:"54:1",e:"54:10"},fullkriyah:{1:["21:10","21:21"],2:["21:22","22:7"],3:["22:8","23:7"],4:["23:8","23:24"],5:["23:25","24:4"],6:["24:5","24:13"],7:["24:14","25:19"],M:["25:17","25:19"]},weekday:{1:["21:10","21:14"],2:["21:15","21:17"],3:["21:18","21:21"]}},"Ki Tavo":{num:50,hebrew:"כִּי־תָבוֹא",book:5,haft:{k:"Isaiah",b:"60:1",e:"60:22"},fullkriyah:{1:["26:1","26:11"],2:["26:12","26:15"],3:["26:16","26:19"],4:["27:1","27:10"],5:["27:11","28:6"],6:["28:7","28:69"],7:["29:1","29:8"],M:["29:6","29:8"]},weekday:{1:["26:1","26:3"],2:["26:4","26:11"],3:["26:12","26:15"]}},Nitzavim:{num:51,hebrew:"נִצָּבִים",book:5,haft:{k:"Isaiah",b:"61:10",e:"63:9"},fullkriyah:{1:["29:9","29:11"],2:["29:12","29:14"],3:["29:15","29:28"],4:["30:1","30:6"],5:["30:7","30:10"],6:["30:11","30:14"],7:["30:15","30:20"],M:["30:15","30:20"]},weekday:{1:["29:9","29:11"],2:["29:12","29:14"],3:["29:15","29:28"]}},Vayeilech:{num:52,hebrew:"וַיֵּלֶךְ",book:5,haft:{k:"Isaiah",b:"55:6",e:"56:8"},fullkriyah:{1:["31:1","31:3"],2:["31:4","31:6"],3:["31:7","31:9"],4:["31:10","31:13"],5:["31:14","31:19"],6:["31:20","31:24"],7:["31:25","31:30"],M:["31:28","31:30"]},weekday:{1:["31:1","31:3"],2:["31:4","31:6"],3:["31:7","31:13"]}},"Ha'azinu":{num:53,hebrew:"הַאֲזִינוּ",book:5,haft:{k:"II Samuel",b:"22:1",e:"22:51"},fullkriyah:{1:["32:1","32:6"],2:["32:7","32:12"],3:["32:13","32:18"],4:["32:19","32:28"],5:["32:29","32:39"],6:["32:40","32:43"],7:["32:44","32:52"],M:["32:48","32:52"]},weekday:{1:["32:1","32:3"],2:["32:4","32:6"],3:["32:7","32:12"]}},"Vezot Haberakhah":{num:54,hebrew:"וְזֹאת הַבְּרָכָה",book:5,haft:{k:"Joshua",b:"1:1",e:"1:18"},seph:{k:"Joshua",b:"1:1",e:"1:9"},fullkriyah:{1:["33:1","33:7"],2:["33:8","33:12"],3:["33:13","33:17"],4:["33:18","33:21"],5:["33:22","33:26"],6:["33:27","33:29"],7:["34:1","34:12"]},weekday:{1:["33:1","33:7"],2:["33:8","33:12"],3:["33:13","33:17"]}},"Vayakhel-Pekudei":{num:[22,23],combined:!0,p1:"Vayakhel",p2:"Pekudei",num1:22,num2:23,book:2,fullkriyah:{1:["35:1","35:29"],2:["35:30","37:16"],3:["37:17","37:29"],4:["38:1","39:1"],5:["39:2","39:21"],6:["39:22","39:43"],7:["40:1","40:38"],M:["40:34","40:38"]}},"Tazria-Metzora":{num:[27,28],combined:!0,p1:"Tazria",p2:"Metzora",num1:27,num2:28,book:3,fullkriyah:{1:["12:1","13:23"],2:["13:24","13:39"],3:["13:40","13:54"],4:["13:55","14:20"],5:["14:21","14:32"],6:["14:33","15:15"],7:["15:16","15:33"],M:["15:31","15:33"]}},"Achrei Mot-Kedoshim":{num:[29,30],combined:!0,p1:"Achrei Mot",p2:"Kedoshim",num1:29,num2:30,book:3,haft:{k:"Amos",b:"9:7",e:"9:15"},seph:{k:"Ezekiel",b:"20:2",e:"20:20"},fullkriyah:{1:["16:1","16:24"],2:["16:25","17:7"],3:["17:8","18:21"],4:["18:22","19:14"],5:["19:15","19:32"],6:["19:33","20:7"],7:["20:8","20:27"],M:["20:25","20:27"]}},"Behar-Bechukotai":{num:[32,33],combined:!0,p1:"Behar",p2:"Bechukotai",num1:32,num2:33,book:3,fullkriyah:{1:["25:1","25:18"],2:["25:19","25:28"],3:["25:29","25:38"],4:["25:39","26:9"],5:["26:10","26:46"],6:["27:1","27:15"],7:["27:16","27:34"],M:["27:32","27:34"]}},"Chukat-Balak":{num:[39,40],combined:!0,p1:"Chukat",p2:"Balak",num1:39,num2:40,book:4,fullkriyah:{1:["19:1","20:6"],2:["20:7","20:21"],3:["20:22","21:20"],4:["21:21","22:12"],5:["22:13","22:38"],6:["22:39","23:26"],7:["23:27","25:9"],M:["25:7","25:9"]}},"Matot-Masei":{num:[42,43],combined:!0,p1:"Matot",p2:"Masei",num1:42,num2:43,book:4,fullkriyah:{1:["30:2","31:12"],2:["31:13","31:54"],3:["32:1","32:19"],4:["32:20","33:49"],5:["33:50","34:15"],6:["34:16","35:8"],7:["35:9","36:13"],M:["36:11","36:13"]}},"Nitzavim-Vayeilech":{num:[51,52],combined:!0,p1:"Nitzavim",p2:"Vayeilech",num1:51,num2:52,book:5,fullkriyah:{1:["29:9","29:28"],2:["30:1","30:6"],3:["30:7","30:14"],4:["30:15","31:6"],5:["31:7","31:13"],6:["31:14","31:19"],7:["31:20","31:30"],M:["31:28","31:30"]}}};function C(e){return{en:o(e),he:e.map((e=>a.Locale.lookupTranslation(e,"he"))).join("־")}}function H(e){const a=A(e),h={},i=k[a.book];for(const[e,k]of Object.entries(a.fullkriyah)){const a={k:i,b:k[0],e:k[1]};t(a),h[e]=a}const b=o(e),r=a.combined?[a.p1,a.p2]:[b],l=s(h),p=n(l),y={name:C(r),parsha:r,parshaNum:a.num,summary:p,fullkriyah:h,haftara:"",haft:[]};l.length>1&&(y.summaryParts=l);const c=function(e){const a=e[0];return 2===e.length&&"Achrei Mot"==a?o(e):1===e.length||"Nitzavim"==a?a:e[1]}(r),m=I[c].haft;if(m){const e=y.haft=u(m);y.haftara=n(e),y.haftaraNumV=f(e)}const d=I[c].seph;if(d){const e=y.seph=u(d);y.sephardic=n(e),y.sephardicNumV=f(e)}return y}function D(e){const a=A(e),h=(a.combined?A(a.p1):a).weekday;if(!h)throw new Error(`Parsha missing weekday: ${e}`);const o=k[a.book],i={};for(let e=1;e<=3;e++){const a=""+e,k=h[a],b={k:o,b:k[0],e:k[1]};t(b),i[a]=b}return i}function v(e,h=!1){if("object"!=typeof e||"function"!=typeof e.getFlags)throw new TypeError(`Bad event argument: ${e}`);if(e.getFlags()!=a.flags.PARSHA_HASHAVUA)throw new TypeError(`Event must be parsha hashavua: ${e.getDesc()}`);const k=e.parsha,o=H(k),t=g(k,e.getDate(),h,o.fullkriyah),i=t.reason;if(t.haft){const e=o.haft=u(t.haft);if(o.haftara=n(e),o.haftaraNumV=f(e),t.seph){const e=o.seph=u(t.seph);o.sephardic=n(e),o.sephardicNumV=f(e)}else o.seph&&(delete o.seph,delete o.sephardic,delete o.sephardicNumV)}if(i[7]||i.M){o.fullkriyah=t.aliyot;const e=s(o.fullkriyah);o.summary=n(e),o.summaryParts=e}const b=Object.keys(i);if(0!==b.length){o.reason=i;for(const e of b)if("haftara"===e||"sephardic"===e){const a=o["haftara"===e?"haft":"seph"],h=Array.isArray(a)?a:[a];for(const a of h)a.reason=i[e]}else{const a=o.fullkriyah[e];"object"==typeof a&&(a.reason=i[e])}}return o}function A(e){const h=o(e),k=I[h];if("object"!=typeof k)throw new TypeError(`Bad parsha argument: ${e}`);if(k.combined){const[e,o]=h.split("-");if(k.hebrew||(k.hebrew=a.Locale.gettext(e,"he")+"־"+a.Locale.gettext(o,"he")),!k.haft){const a="Nitzavim"===e?e:o;k.haft=A(a).haft}}return k}const R=" (Mincha)";function E(e,a){const h=S(e.getDesc()+R,e.cholHaMoedDay,a);if(h)return h;const k=d(e,a);if(k){const h=S(k+R,e.cholHaMoedDay,a);if(h)return h}}const T=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"short",day:"2-digit"});function P(e){return e.filter((e=>e.getFlags()===a.flags.PARSHA_HASHAVUA)).reduce(((e,a)=>(e[a.getDate().toString()]=!0,e)),{})}function z(e,h,k){if(function(e){const h=e.getFlags();return h===a.flags.SPECIAL_SHABBAT||h===a.flags.ROSH_CHODESH&&6===e.getDate().getDay()}(h))return;const o=h.getFlags()===a.flags.PARSHA_HASHAVUA,t=o?v(h,k):w(h,k);if(t&&(J(e,h,t,k,o),!o)){V(e,h,k);const o=h.getDesc();if(k&&"Sukkot VII (Hoshana Raba)"===o||!k&&"Shmini Atzeret"===o){z(e,new a.HolidayEvent(h.getDate(),"Erev Simchat Torah",a.flags.EREV),k)}}}function V(e,h,k){const o=h.getDesc()+" (Mincha)",t=S(o,h.cholHaMoedDay,k)||S(d(h,k)+" (Mincha)",h.cholHaMoedDay,k);if(t){J(e,new a.Event(h.getDate(),o,a.flags.USER_EVENT),t,k,!1)}}function J(e,a,h,k,o){const t=o?a.basename():d(a,k)||a.render(),b=function(e){const a=T.format(e).split(" ");return a[1].substring(0,2)+"-"+a[0]+"-"+a[2]}(a.getDate().greg()),r=function(e){var a,h,k;const o=[];if(e.fullkriyah)for(const[h,k]of Object.entries(e.fullkriyah))if(void 0!==k){const t="M"==h?"maf":h;let b=i(k);(null===(a=e.reason)||void 0===a?void 0:a[h])&&(b+=" | "+e.reason[h]),o.push([t,b,k.v||""])}if(e.haftara){let a=e.haftara.replace(/,/g,";");(null===(h=e.reason)||void 0===h?void 0:h.haftara)&&(a+=" | "+e.reason.haftara);const k=e.sephardic?"Haftara for Ashkenazim":"Haftara";o.push([k,a,e.haftaraNumV||""])}if(e.sephardic){let a=e.sephardic.replace(/,/g,";");(null===(k=e.reason)||void 0===k?void 0:k.sephardic)&&(a+=" | "+e.reason.sephardic),o.push(["Haftara for Sephardim",a,e.sephardicNumV||""])}if(e.triHaftara){const a=e.triHaftara.replace(/,/g,";");o.push(["Alternate Haftara",a,e.triHaftaraNumV||""])}if(e.megillah)for(const[a,h]of Object.entries(e.megillah))if(void 0!==h){const e=i(h);o.push([`Megillah Ch. ${a}`,e,h.v||""])}return o}(h);for(const a of r){const h=a[0].charCodeAt(0);(h<48||h>57)&&(a[0]=`"${a[0]}"`),e.write(`${b},"${t}",${a[0]},"${a[1]}",${a[2]}\r\n`)}e.write("\r\n")}return e.BOOK=k,e.calculateNumVerses=t,e.clone=l,e.cloneHaftara=u,e.formatAliyahShort=b,e.formatAliyahWithBook=i,e.getLeyningForHoliday=w,e.getLeyningForHolidayKey=S,e.getLeyningForParsha=function(e){const a=H(e);return a.weekday=D(e),a},e.getLeyningForParshaHaShavua=v,e.getLeyningKeyForEvent=d,e.getLeyningOnDate=function(e,h,k=!1){const o=e.getDay(),t=[];let i=!1;if(6===o){const o=e.getFullYear(),b=a.HebrewCalendar.getSedra(o,h).lookup(e);if(!b.chag){const o=v(new a.ParshaEvent(e,b.parsha,h),h);if(!k)return o;i=!0,t.push(o)}}const b=a.HebrewCalendar.getHolidaysOnDate(e,h)||[];let r=!1;for(const e of b){const k=Boolean(e.getFlags()&(a.flags.SPECIAL_SHABBAT|a.flags.ROSH_CHODESH));if(i&&k)continue;const o=w(e,h);if(o){const a=o.fullkriyah;a&&(r=!0);i&&r&&a.M&&!a[1]||t.push(o);const k=E(e,h);k&&t.push(k);const b=e.getDesc();if(h&&"Sukkot VII (Hoshana Raba)"===b||!h&&"Shmini Atzeret"===b){const e=S("Erev Simchat Torah");t.push(e)}}}if(!r&&(1===o||4===o)){const k=function(e,h){const k=e.getFullYear(),o=a.HebrewCalendar.getSedra(k,h),t=o.lookup(e);if(!t.chag)return t;if(e.getMonth()===a.months.TISHREI){const a=e.getDate();if(a>2&&a<=(h?22:23))return{parsha:["Vezot Haberakhah"],chag:!1,num:54}}const i=new a.HDate(1,a.months.TISHREI,k+1).abs()-1,b=i+30;for(let t=e.abs()+7;t<=b;t+=7){const e=(t>i?a.HebrewCalendar.getSedra(k+1,h):o).lookup(t);if(!e.chag)return e}throw new Error(`can't findParshaHaShavua for ${e}/${h}`)}(e.onOrAfter(6),h),o=D(k.parsha),i=s(o),b={name:C(k.parsha),parsha:k.parsha,parshaNum:k.num,weekday:o,summary:n(i)};t.unshift(b)}return k?t:t[0]},e.getParshaDates=P,e.getWeekdayReading=D,e.hasFestival=y,e.lookupFestival=c,e.lookupParsha=A,e.makeLeyningNames=C,e.makeLeyningParts=s,e.makeLeyningSummary=function(e){return n(s(e))},e.makeSummaryFromParts=n,e.parshaToString=o,e.specialReadings2=g,e.sumVerses=f,e.writeCsvLines=J,e.writeFullKriyahCsv=function(e,h,k){const o=a.HebrewCalendar.calendar({year:h,isHebrewYear:!0,sedrot:!0,il:k}).filter((e=>"Rosh Chodesh Tevet"!==e.getDesc())),t=P(o);e.write('"Date","Parashah","Aliyah","Reading","Verses"\r\n');for(const h of o)h.getFlags()!==a.flags.PARSHA_HASHAVUA&&t[h.getDate().toString()]||z(e,h,k)},e.writeHolidayMincha=V,e}({},hebcal);
|
package/dist/index.cjs
CHANGED
package/dist/index.mjs
CHANGED
package/dist/module.d.ts
ADDED
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
import { Event, HDate, HolidayEvent } from '@hebcal/core';
|
|
2
|
+
import { WriteStream } from 'node:fs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Represents an aliyah
|
|
6
|
+
*/
|
|
7
|
+
type Aliyah = {
|
|
8
|
+
/** Book (e.g. "Numbers") */
|
|
9
|
+
k: string;
|
|
10
|
+
/** beginning verse (e.g. "28:9") */
|
|
11
|
+
b: string;
|
|
12
|
+
/** ending verse (e.g. "28:15") */
|
|
13
|
+
e: string;
|
|
14
|
+
/** number of verses */
|
|
15
|
+
v?: number;
|
|
16
|
+
/** parsha number (1=Bereshit, 54=Vezot HaBracha) */
|
|
17
|
+
p?: number;
|
|
18
|
+
reason?: string;
|
|
19
|
+
};
|
|
20
|
+
type StringMap = {
|
|
21
|
+
[key: string]: string;
|
|
22
|
+
};
|
|
23
|
+
type AliyotMap = {
|
|
24
|
+
[key: string]: Aliyah;
|
|
25
|
+
};
|
|
26
|
+
/** Name of the parsha hashavua or holiday */
|
|
27
|
+
type LeyningNames = {
|
|
28
|
+
/** English */
|
|
29
|
+
en: string;
|
|
30
|
+
/** Hebrew (with nikud) */
|
|
31
|
+
he: string;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Parsha metadata (underlying JSON object)
|
|
35
|
+
*/
|
|
36
|
+
type ParshaMeta = {
|
|
37
|
+
/** 1 for Bereshit, 2 for Noach, etc. `undefined` for holiday readings */
|
|
38
|
+
num: number | number[];
|
|
39
|
+
/** parsha name in Hebrew with niqud */
|
|
40
|
+
hebrew: string;
|
|
41
|
+
/** 1 for Genesis, 2 for Exodus, 5 for Deuteronomy */
|
|
42
|
+
book: number;
|
|
43
|
+
/** Haftarah object(s) */
|
|
44
|
+
haft: Aliyah | Aliyah[];
|
|
45
|
+
/** Haftarah object(s) for Sephardim */
|
|
46
|
+
seph?: Aliyah | Aliyah[];
|
|
47
|
+
/** Map of Shabbat aliyot `1` through `7` plus `M` for maftir */
|
|
48
|
+
fullkriyah: {
|
|
49
|
+
[key: string]: string[];
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Map of weekday Torah Readings
|
|
53
|
+
* aliyot `1` through `3` for Monday and Thursday
|
|
54
|
+
*/
|
|
55
|
+
weekday?: {
|
|
56
|
+
[key: string]: string[];
|
|
57
|
+
};
|
|
58
|
+
combined?: boolean;
|
|
59
|
+
p1?: string;
|
|
60
|
+
p2?: string;
|
|
61
|
+
num1?: number;
|
|
62
|
+
num2?: number;
|
|
63
|
+
};
|
|
64
|
+
type SpecialReading = {
|
|
65
|
+
/** Map of aliyot `1` through `7` plus `M` for maftir */
|
|
66
|
+
aliyot: AliyotMap;
|
|
67
|
+
/**
|
|
68
|
+
* Explanations for special readings,
|
|
69
|
+
* keyed by aliyah number, `M` for maftir or `haftara` for Haftarah
|
|
70
|
+
*/
|
|
71
|
+
reason: StringMap;
|
|
72
|
+
/** Haftarah object(s) */
|
|
73
|
+
haft?: Aliyah | Aliyah[];
|
|
74
|
+
/** Haftarah object(s) for Sephardim */
|
|
75
|
+
seph?: Aliyah | Aliyah[];
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Leyning base - weekday, parsha hashavua or holiday
|
|
79
|
+
*/
|
|
80
|
+
type LeyningBase = {
|
|
81
|
+
/** Name of the parsha hashavua or holiday */
|
|
82
|
+
name: LeyningNames;
|
|
83
|
+
/** Such as `Genesis 1:1 - 6:8` */
|
|
84
|
+
summary: string;
|
|
85
|
+
summaryParts?: Aliyah[];
|
|
86
|
+
note?: string;
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* Parashat haShavua - weekday or Shabbat
|
|
90
|
+
*/
|
|
91
|
+
type LeyningParshaHaShavua = LeyningBase & {
|
|
92
|
+
/** An array of either 1 (regular) or 2 (doubled parsha). `undefined` for holiday readings */
|
|
93
|
+
parsha?: string[];
|
|
94
|
+
/** 1 for Bereshit, 2 for Noach, etc. `undefined` for holiday readings */
|
|
95
|
+
parshaNum?: number | number[];
|
|
96
|
+
};
|
|
97
|
+
/**
|
|
98
|
+
* Parashat haShavua - weekday
|
|
99
|
+
*/
|
|
100
|
+
type LeyningWeekday = LeyningParshaHaShavua & {
|
|
101
|
+
/** Optional map of weekday Torah Readings aliyot `1` through `3` for Monday and Thursday */
|
|
102
|
+
weekday?: AliyotMap;
|
|
103
|
+
};
|
|
104
|
+
type HaftarahProps = {
|
|
105
|
+
/** Haftarah object */
|
|
106
|
+
haft: Aliyah | Aliyah[];
|
|
107
|
+
/** Haftarah, such as `Isaiah 42:5 – 43:11` */
|
|
108
|
+
haftara: string;
|
|
109
|
+
/** Number of verses in the Haftarah */
|
|
110
|
+
haftaraNumV?: number;
|
|
111
|
+
};
|
|
112
|
+
/**
|
|
113
|
+
* Shabbat and holiday leyning always has full kriyah and haftarah
|
|
114
|
+
*/
|
|
115
|
+
type LeyningShabbatHoliday = LeyningBase & HaftarahProps & {
|
|
116
|
+
/** Map of aliyot `1` through `7` plus `M` for maftir */
|
|
117
|
+
fullkriyah: AliyotMap;
|
|
118
|
+
/** Haftarah object for Sephardim */
|
|
119
|
+
seph?: Aliyah | Aliyah[];
|
|
120
|
+
/** Haftarah for Sephardim, such as `Isaiah 42:5 - 42:21` */
|
|
121
|
+
sephardic?: string;
|
|
122
|
+
/** Number of verses in the Haftarah for Sephardim */
|
|
123
|
+
sephardicNumV?: number;
|
|
124
|
+
/** Explanations for special readings, keyed by aliyah number, `M` for maftir or `haftara` for Haftarah */
|
|
125
|
+
reason?: StringMap;
|
|
126
|
+
/** Song of Songs is read on the sabbath of Passover week, the Book of Ruth on Shavuot, Lamentations on Tisha be-Av, Ecclesiastes on the sabbath of the week of Sukkoth, and the Book of Esther on Purim */
|
|
127
|
+
megillah?: AliyotMap;
|
|
128
|
+
/** Triennial alternate Haftara */
|
|
129
|
+
triHaftara?: string;
|
|
130
|
+
/** Triennial alternate Haftara number of verses */
|
|
131
|
+
triHaftaraNumV?: number;
|
|
132
|
+
};
|
|
133
|
+
type Leyning = LeyningBase & LeyningParshaHaShavua & LeyningShabbatHoliday & LeyningWeekday;
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Names of the books of the Torah. BOOK[1] === 'Genesis'
|
|
137
|
+
* @readonly
|
|
138
|
+
*/
|
|
139
|
+
declare const BOOK: string[];
|
|
140
|
+
/**
|
|
141
|
+
* Formats parsha as a string
|
|
142
|
+
* @param parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
|
|
143
|
+
*/
|
|
144
|
+
declare function parshaToString(parsha: string | string[]): string;
|
|
145
|
+
/**
|
|
146
|
+
* Calculates the number of verses in an aliyah or haftara based on
|
|
147
|
+
* the `b` (begin verse), `e` (end verse) and `k` (book).
|
|
148
|
+
* Modifies `aliyah` by setting the `v` field.
|
|
149
|
+
*/
|
|
150
|
+
declare function calculateNumVerses(aliyah: Aliyah): number;
|
|
151
|
+
/**
|
|
152
|
+
* Formats an aliyah object like "Numbers 28:9-28:15"
|
|
153
|
+
*/
|
|
154
|
+
declare function formatAliyahWithBook(a: Aliyah): string;
|
|
155
|
+
/**
|
|
156
|
+
* Formats an aliyah object like "Numbers 28:9-15"
|
|
157
|
+
*/
|
|
158
|
+
declare function formatAliyahShort(aliyah: Aliyah, showBook: boolean): string;
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* Summarizes an `AliyotMap` by collapsing all adjacent aliyot.
|
|
162
|
+
* Finds any non-overlapping parts (e.g. special 7th aliyah or maftir)
|
|
163
|
+
*/
|
|
164
|
+
declare function makeLeyningParts(aliyot: AliyotMap): Aliyah[];
|
|
165
|
+
/**
|
|
166
|
+
* Returns a string representation of the leyning parts.
|
|
167
|
+
* Separate verse ranges read from the same book are separated
|
|
168
|
+
* by commas, e.g. `Isaiah 6:1-7:6, 9:5-6`.
|
|
169
|
+
* Verse ranges from different books are separated by semicolons,
|
|
170
|
+
* e.g. `Genesis 21:1-34; Numbers 29:1-6`.
|
|
171
|
+
*/
|
|
172
|
+
declare function makeSummaryFromParts(parts: Aliyah | Aliyah[]): string;
|
|
173
|
+
/**
|
|
174
|
+
* Makes a summary of the leyning, like "Genesis 6:9-11:32"
|
|
175
|
+
*/
|
|
176
|
+
declare function makeLeyningSummary(aliyot: AliyotMap): string;
|
|
177
|
+
|
|
178
|
+
type JsonFestivalAliyah = {
|
|
179
|
+
k: number | string;
|
|
180
|
+
b: string;
|
|
181
|
+
e: string;
|
|
182
|
+
v?: number;
|
|
183
|
+
p?: number;
|
|
184
|
+
};
|
|
185
|
+
type JsonFestivalAliyotMap = {
|
|
186
|
+
[key: string]: JsonFestivalAliyah;
|
|
187
|
+
};
|
|
188
|
+
type JsonFestivalLeyning = {
|
|
189
|
+
haft?: JsonFestivalAliyah | JsonFestivalAliyah[];
|
|
190
|
+
seph?: JsonFestivalAliyah | JsonFestivalAliyah[];
|
|
191
|
+
fullkriyah?: JsonFestivalAliyotMap;
|
|
192
|
+
megillah?: string;
|
|
193
|
+
alias?: boolean;
|
|
194
|
+
key?: string;
|
|
195
|
+
note?: string;
|
|
196
|
+
il?: boolean;
|
|
197
|
+
};
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* Is there a special festival Torah Reading for `holiday`?
|
|
201
|
+
*/
|
|
202
|
+
declare function hasFestival(holiday: string): boolean;
|
|
203
|
+
/**
|
|
204
|
+
* Returns the raw metadata for festival reading for `holiday`
|
|
205
|
+
*/
|
|
206
|
+
declare function lookupFestival(holiday: string): JsonFestivalLeyning | undefined;
|
|
207
|
+
|
|
208
|
+
/**
|
|
209
|
+
* Based on the event date, type and title, finds the relevant leyning key
|
|
210
|
+
* @param ev event
|
|
211
|
+
* @param [il] true if Israel holiday scheme
|
|
212
|
+
* @returns key to look up in holiday-reading.json
|
|
213
|
+
*/
|
|
214
|
+
declare function getLeyningKeyForEvent(ev: Event, il?: boolean): string | undefined;
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
* Determines if the regular parashat haShavua coincides with an event that requires
|
|
218
|
+
* a special maftir or Haftara (for example Shabbat HaGadol, Shabbat Chanukah, Rosh
|
|
219
|
+
* Chodesh or Machar Chodesh, etc.).
|
|
220
|
+
*
|
|
221
|
+
* This function does not modify `aliyot`. Instead, it returns a deep copy
|
|
222
|
+
* with `aliyot['M']` replaced and sets `reason.M`
|
|
223
|
+
* (and in some cases the 6th and 7th aliyah, setting `reason['7']`).
|
|
224
|
+
*
|
|
225
|
+
* If a special Haftarah applies, the result will have a `haft` property
|
|
226
|
+
* pointing to Haftarah object and sets `reason.haftara`.
|
|
227
|
+
*/
|
|
228
|
+
declare function specialReadings2(parsha: string[], hd: HDate, il: boolean, aliyot: AliyotMap): SpecialReading;
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Looks up leyning for a given holiday key. Key should be an
|
|
232
|
+
* (untranslated) string used in holiday-readings.json. Returns some
|
|
233
|
+
* of full kriyah aliyot, special Maftir, special Haftarah
|
|
234
|
+
* @param key name from `holiday-readings.json` to find
|
|
235
|
+
*/
|
|
236
|
+
declare function getLeyningForHolidayKey(key?: string, cholHaMoedDay?: number, il?: boolean): Leyning | undefined;
|
|
237
|
+
/**
|
|
238
|
+
* Looks up leyning for a given holiday. Returns some
|
|
239
|
+
* of full kriyah aliyot, special Maftir, special Haftarah
|
|
240
|
+
* @param ev the Hebcal event associated with this leyning
|
|
241
|
+
* @param [il] true if Israel holiday scheme
|
|
242
|
+
* @returns map of aliyot
|
|
243
|
+
*/
|
|
244
|
+
declare function getLeyningForHoliday(ev: Event, il?: boolean): Leyning | undefined;
|
|
245
|
+
|
|
246
|
+
/**
|
|
247
|
+
* Transliterated English and Hebrew names of this parsha
|
|
248
|
+
* @param parsha untranslated name like ['Pinchas'] or ['Matot','Masei']
|
|
249
|
+
*/
|
|
250
|
+
declare function makeLeyningNames(parsha: string[]): LeyningNames;
|
|
251
|
+
/**
|
|
252
|
+
* Looks up Monday/Thursday aliyot for a regular parsha
|
|
253
|
+
* @param parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
|
|
254
|
+
*/
|
|
255
|
+
declare function getWeekdayReading(parsha: string | string[]): AliyotMap;
|
|
256
|
+
/**
|
|
257
|
+
* Looks up regular leyning for a weekly parsha with no special readings
|
|
258
|
+
* @param parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
|
|
259
|
+
*/
|
|
260
|
+
declare function getLeyningForParsha(parsha: string | string[]): Leyning;
|
|
261
|
+
/**
|
|
262
|
+
* Looks up leyning for a regular Shabbat parsha, including any special
|
|
263
|
+
* maftir or Haftara.
|
|
264
|
+
* @param ev the Hebcal event associated with this leyning
|
|
265
|
+
* @param [il] in Israel
|
|
266
|
+
* @returns map of aliyot
|
|
267
|
+
*/
|
|
268
|
+
declare function getLeyningForParshaHaShavua(ev: Event, il?: boolean): Leyning;
|
|
269
|
+
/**
|
|
270
|
+
* Returns the parsha metadata
|
|
271
|
+
* @param parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
|
|
272
|
+
*/
|
|
273
|
+
declare function lookupParsha(parsha: string | string[]): ParshaMeta;
|
|
274
|
+
|
|
275
|
+
/**
|
|
276
|
+
* Looks up leyning for a regular Shabbat, Monday/Thursday weekday or holiday.
|
|
277
|
+
*
|
|
278
|
+
* If `hdate` coincides with a holiday that has Torah reading, returns the
|
|
279
|
+
* reading for that day (see {@link getLeyningForHoliday})
|
|
280
|
+
*
|
|
281
|
+
* Otherwise, if `hdate` is a Saturday, returns {@link getLeyningForParshaHaShavua}
|
|
282
|
+
*
|
|
283
|
+
* Otherwise, if `hdate` is a Monday or Thursday, returns {@link Leyning} for the
|
|
284
|
+
* Parashat haShavua, containing only the `weekday` aliyot (no `fullkriyah`).
|
|
285
|
+
*
|
|
286
|
+
* Otherwise, returns `undefined`.
|
|
287
|
+
*
|
|
288
|
+
* @param {HDate} hdate Hebrew Date
|
|
289
|
+
* @param {boolean} il in Israel
|
|
290
|
+
* @param {boolean} [wantarray] to return an array of 0 or more readings
|
|
291
|
+
*/
|
|
292
|
+
declare function getLeyningOnDate(hdate: HDate, il: boolean, wantarray?: boolean): (Leyning | LeyningWeekday) | (Leyning | LeyningWeekday)[] | undefined;
|
|
293
|
+
|
|
294
|
+
interface StringToBoolMap {
|
|
295
|
+
[key: string]: boolean;
|
|
296
|
+
}
|
|
297
|
+
declare function getParshaDates(events: Event[]): StringToBoolMap;
|
|
298
|
+
declare function writeFullKriyahCsv(stream: WriteStream, hyear: number, il: boolean): void;
|
|
299
|
+
declare function writeHolidayMincha(stream: WriteStream, ev: HolidayEvent, il: boolean): void;
|
|
300
|
+
/**
|
|
301
|
+
* Formats reading for CSV
|
|
302
|
+
*/
|
|
303
|
+
declare function writeCsvLines(stream: WriteStream, ev: Event, reading: Leyning, il: boolean, isParsha: boolean): void;
|
|
304
|
+
|
|
305
|
+
/**
|
|
306
|
+
* Makes a deep copy of the src object using JSON stringify and parse
|
|
307
|
+
*/
|
|
308
|
+
declare function clone(src: any): any;
|
|
309
|
+
type Haftarah = Aliyah | Aliyah[] | JsonFestivalAliyah | JsonFestivalAliyah[];
|
|
310
|
+
declare function cloneHaftara(haft: Haftarah): Aliyah | Aliyah[];
|
|
311
|
+
/**
|
|
312
|
+
* Returns the total number of verses in an array of Aliyah (or haftarah) objects
|
|
313
|
+
*/
|
|
314
|
+
declare function sumVerses(aliyot: Haftarah): number;
|
|
315
|
+
|
|
316
|
+
export { type Aliyah, type AliyotMap, BOOK, type Haftarah, type HaftarahProps, type Leyning, type LeyningBase, type LeyningNames, type LeyningParshaHaShavua, type LeyningShabbatHoliday, type LeyningWeekday, type ParshaMeta, type SpecialReading, type StringMap, type StringToBoolMap, calculateNumVerses, clone, cloneHaftara, formatAliyahShort, formatAliyahWithBook, getLeyningForHoliday, getLeyningForHolidayKey, getLeyningForParsha, getLeyningForParshaHaShavua, getLeyningKeyForEvent, getLeyningOnDate, getParshaDates, getWeekdayReading, hasFestival, lookupFestival, lookupParsha, makeLeyningNames, makeLeyningParts, makeLeyningSummary, makeSummaryFromParts, parshaToString, specialReadings2, sumVerses, writeCsvLines, writeFullKriyahCsv, writeHolidayMincha };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hebcal/leyning",
|
|
3
|
-
"version": "8.2.
|
|
3
|
+
"version": "8.2.6",
|
|
4
4
|
"author": "Michael J. Radwin (https://github.com/mjradwin)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"hebcal",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"exports": {
|
|
23
23
|
"import": "./dist/index.mjs",
|
|
24
24
|
"require": "./dist/index.cjs",
|
|
25
|
-
"types": "./dist/
|
|
25
|
+
"types": "./dist/module.d.ts"
|
|
26
26
|
},
|
|
27
27
|
"repository": {
|
|
28
28
|
"type": "git",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"bugs": {
|
|
32
32
|
"url": "https://github.com/hebcal/hebcal-leyning/issues"
|
|
33
33
|
},
|
|
34
|
-
"typings": "dist/
|
|
34
|
+
"typings": "dist/module.d.ts",
|
|
35
35
|
"files": [
|
|
36
36
|
"dist",
|
|
37
37
|
"bin"
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"leyning-csv": "bin/leyning-csv"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@hebcal/core": "^5.5.
|
|
43
|
+
"@hebcal/core": "^5.5.2",
|
|
44
44
|
"tslib": "^2.7.0"
|
|
45
45
|
},
|
|
46
46
|
"scripts": {
|
|
@@ -70,6 +70,7 @@
|
|
|
70
70
|
"gts": "^5.3.1",
|
|
71
71
|
"jest": "^29.7.0",
|
|
72
72
|
"rollup": "^4.24.0",
|
|
73
|
+
"rollup-plugin-dts": "^6.1.1",
|
|
73
74
|
"ts-jest": "^29.2.5",
|
|
74
75
|
"typedoc": "^0.26.8",
|
|
75
76
|
"typescript": "^5.6.2"
|