@hebcal/leyning 6.2.4 → 7.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.
package/README.md CHANGED
@@ -89,14 +89,15 @@ e.g. <code>Genesis 21:1-34; Numbers 29:1-6</code>.</p>
89
89
  <dt><a href="#getLeyningKeyForEvent">getLeyningKeyForEvent(ev, [il])</a> ⇒ <code>string</code></dt>
90
90
  <dd><p>Based on the event date, type and title, finds the relevant leyning key</p>
91
91
  </dd>
92
- <dt><a href="#specialReadings">specialReadings(hd, il, aliyot, reason, parsha)</a> ⇒ <code><a href="#Aliyah">Aliyah</a></code> | <code><a href="#Aliyah">Array.&lt;Aliyah&gt;</a></code></dt>
92
+ <dt><a href="#specialReadings2">specialReadings2(parsha, hd, il, aliyot)</a> ⇒ <code><a href="#SpecialReading">SpecialReading</a></code></dt>
93
93
  <dd><p>Determines if the regular parashat haShavua coincides with an event that requires
94
94
  a special maftir or Haftara (for example Shabbat HaGadol, Shabbat Chanukah, Rosh
95
95
  Chodesh or Machar Chodesh, etc.).</p>
96
- <p>If a special maftir occurs, modifies <code>aliyot</code> to replace <code>M</code> and sets <code>reason.M</code>
97
- (and in some cases modifies the 6th and 7th aliyah, setting <code>reason[&#39;7&#39;]</code>).</p>
98
- <p>If a special Haftarah applies, returns the Haftarah object and sets <code>reason.haftara</code>.
99
- If no special Haftarah, returns <code>undefined</code></p>
96
+ <p>This function does not modify <code>aliyot</code>. Instead, it returns a deep copy
97
+ with <code>aliyot[&#39;M&#39;]</code> replaced and sets <code>reason.M</code>
98
+ (and in some cases the 6th and 7th aliyah, setting <code>reason[&#39;7&#39;]</code>).</p>
99
+ <p>If a special Haftarah applies, the result will have a <code>haft</code> property
100
+ pointing to Haftarah object and sets <code>reason.haftara</code>.</p>
100
101
  </dd>
101
102
  <dt><a href="#getLeyningForHoliday">getLeyningForHoliday(ev, [il])</a> ⇒ <code><a href="#Leyning">Leyning</a></code></dt>
102
103
  <dd><p>Looks up leyning for a given holiday. Returns some
@@ -107,6 +108,9 @@ of full kriyah aliyot, special Maftir, special Haftarah</p>
107
108
  (untranslated) string used in holiday-readings.json. Returns some
108
109
  of full kriyah aliyot, special Maftir, special Haftarah</p>
109
110
  </dd>
111
+ <dt><a href="#getWeekdayReading">getWeekdayReading(parsha)</a> ⇒ <code>Object.&lt;string, Aliyah&gt;</code></dt>
112
+ <dd><p>Looks up Monday/Thursday aliyot for a regular parsha</p>
113
+ </dd>
110
114
  <dt><a href="#getLeyningForParsha">getLeyningForParsha(parsha)</a> ⇒ <code><a href="#Leyning">Leyning</a></code></dt>
111
115
  <dd><p>Looks up regular leyning for a weekly parsha with no special readings</p>
112
116
  </dd>
@@ -137,6 +141,9 @@ Parashat haShavua, containing only the <code>weekday</code> aliyot (no <code>ful
137
141
  <dt><a href="#Aliyah">Aliyah</a> : <code>Object</code></dt>
138
142
  <dd><p>Represents an aliyah</p>
139
143
  </dd>
144
+ <dt><a href="#SpecialReading">SpecialReading</a> : <code>Object</code></dt>
145
+ <dd><p>Leyning for a parsha hashavua or holiday</p>
146
+ </dd>
140
147
  <dt><a href="#LeyningNames">LeyningNames</a> : <code>Object</code></dt>
141
148
  <dd><p>Name of the parsha hashavua or holiday</p>
142
149
  </dd>
@@ -162,9 +169,9 @@ Formats parsha as a string
162
169
 
163
170
  **Kind**: global function
164
171
 
165
- | Param | Type |
166
- | --- | --- |
167
- | parsha | <code>Array.&lt;string&gt;</code> |
172
+ | Param | Type | Description |
173
+ | --- | --- | --- |
174
+ | parsha | <code>string</code> \| <code>Array.&lt;string&gt;</code> | untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei'] |
168
175
 
169
176
  <a name="clone"></a>
170
177
 
@@ -297,28 +304,28 @@ Based on the event date, type and title, finds the relevant leyning key
297
304
  | ev | <code>Event</code> | | event |
298
305
  | [il] | <code>boolean</code> | <code>false</code> | true if Israel holiday scheme |
299
306
 
300
- <a name="specialReadings"></a>
307
+ <a name="specialReadings2"></a>
301
308
 
302
- ## specialReadings(hd, il, aliyot, reason, parsha) ⇒ [<code>Aliyah</code>](#Aliyah) \| [<code>Array.&lt;Aliyah&gt;</code>](#Aliyah)
309
+ ## specialReadings2(parsha, hd, il, aliyot) ⇒ [<code>SpecialReading</code>](#SpecialReading)
303
310
  Determines if the regular parashat haShavua coincides with an event that requires
304
311
  a special maftir or Haftara (for example Shabbat HaGadol, Shabbat Chanukah, Rosh
305
312
  Chodesh or Machar Chodesh, etc.).
306
313
 
307
- If a special maftir occurs, modifies `aliyot` to replace `M` and sets `reason.M`
308
- (and in some cases modifies the 6th and 7th aliyah, setting `reason['7']`).
314
+ This function does not modify `aliyot`. Instead, it returns a deep copy
315
+ with `aliyot['M']` replaced and sets `reason.M`
316
+ (and in some cases the 6th and 7th aliyah, setting `reason['7']`).
309
317
 
310
- If a special Haftarah applies, returns the Haftarah object and sets `reason.haftara`.
311
- If no special Haftarah, returns `undefined`
318
+ If a special Haftarah applies, the result will have a `haft` property
319
+ pointing to Haftarah object and sets `reason.haftara`.
312
320
 
313
321
  **Kind**: global function
314
322
 
315
323
  | Param | Type |
316
324
  | --- | --- |
325
+ | parsha | <code>Array.&lt;string&gt;</code> |
317
326
  | hd | <code>HDate</code> |
318
327
  | il | <code>boolean</code> |
319
328
  | aliyot | <code>Object.&lt;string, Aliyah&gt;</code> |
320
- | reason | <code>Object.&lt;string, string&gt;</code> |
321
- | parsha | <code>Array.&lt;string&gt;</code> |
322
329
 
323
330
  <a name="getLeyningForHoliday"></a>
324
331
 
@@ -349,6 +356,18 @@ of full kriyah aliyot, special Maftir, special Haftarah
349
356
  | key | <code>string</code> | name from `holiday-readings.json` to find |
350
357
  | [cholHaMoedDay] | <code>number</code> | |
351
358
 
359
+ <a name="getWeekdayReading"></a>
360
+
361
+ ## getWeekdayReading(parsha) ⇒ <code>Object.&lt;string, Aliyah&gt;</code>
362
+ Looks up Monday/Thursday aliyot for a regular parsha
363
+
364
+ **Kind**: global function
365
+ **Returns**: <code>Object.&lt;string, Aliyah&gt;</code> - map of aliyot
366
+
367
+ | Param | Type | Description |
368
+ | --- | --- | --- |
369
+ | parsha | <code>string</code> \| <code>Array.&lt;string&gt;</code> | untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei'] |
370
+
352
371
  <a name="getLeyningForParsha"></a>
353
372
 
354
373
  ## getLeyningForParsha(parsha) ⇒ [<code>Leyning</code>](#Leyning)
@@ -361,10 +380,6 @@ Looks up regular leyning for a weekly parsha with no special readings
361
380
  | --- | --- | --- |
362
381
  | parsha | <code>string</code> \| <code>Array.&lt;string&gt;</code> | untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei'] |
363
382
 
364
- <a name="getLeyningForParsha..result"></a>
365
-
366
- ### getLeyningForParsha~result : [<code>Leyning</code>](#Leyning)
367
- **Kind**: inner constant of [<code>getLeyningForParsha</code>](#getLeyningForParsha)
368
383
  <a name="getLeyningForParshaHaShavua"></a>
369
384
 
370
385
  ## getLeyningForParshaHaShavua(ev, [il]) ⇒ [<code>Leyning</code>](#Leyning)
@@ -409,9 +424,9 @@ Returns the parsha metadata
409
424
 
410
425
  **Kind**: global function
411
426
 
412
- | Param | Type |
413
- | --- | --- |
414
- | parsha | <code>string</code> \| <code>Array.&lt;string&gt;</code> |
427
+ | Param | Type | Description |
428
+ | --- | --- | --- |
429
+ | parsha | <code>string</code> \| <code>Array.&lt;string&gt;</code> | untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei'] |
415
430
 
416
431
  <a name="writeCsvLines"></a>
417
432
 
@@ -444,6 +459,21 @@ Represents an aliyah
444
459
  | [v] | <code>number</code> | number of verses |
445
460
  | [p] | <code>number</code> | parsha number (1=Bereshit, 54=Vezot HaBracha) |
446
461
 
462
+ <a name="SpecialReading"></a>
463
+
464
+ ## SpecialReading : <code>Object</code>
465
+ Leyning for a parsha hashavua or holiday
466
+
467
+ **Kind**: global typedef
468
+ **Properties**
469
+
470
+ | Name | Type | Description |
471
+ | --- | --- | --- |
472
+ | aliyot | <code>Object.&lt;string, Aliyah&gt;</code> | Map of aliyot `1` through `7` plus `M` for maftir |
473
+ | [reason] | <code>Object.&lt;string, string&gt;</code> | Explanations for special readings, keyed by aliyah number, `M` for maftir or `haftara` for Haftarah |
474
+ | haft | [<code>Aliyah</code>](#Aliyah) \| [<code>Array.&lt;Aliyah&gt;</code>](#Aliyah) | Haftarah object(s) |
475
+ | seph | [<code>Aliyah</code>](#Aliyah) \| [<code>Array.&lt;Aliyah&gt;</code>](#Aliyah) | Haftarah object(s) |
476
+
447
477
  <a name="LeyningNames"></a>
448
478
 
449
479
  ## LeyningNames : <code>Object</code>
package/dist/bundle.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! @hebcal/leyning v6.2.4 */
1
+ /*! @hebcal/leyning v7.0.0 */
2
2
  var hebcal__leyning = (function (exports, core) {
3
3
  'use strict';
4
4
 
@@ -23,10 +23,15 @@ var BOOK = ['', 'Genesis', 'Exodus', 'Leviticus', 'Numbers', 'Deuteronomy'];
23
23
 
24
24
  /**
25
25
  * Formats parsha as a string
26
- * @param {string[]} parsha
26
+ * @param {string|string[]} parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
27
27
  * @return {string}
28
28
  */
29
29
  function parshaToString(parsha) {
30
+ if (typeof parsha === 'string') {
31
+ return parsha;
32
+ } else if (!Array.isArray(parsha) || parsha.length === 0 || parsha.length > 2) {
33
+ throw new TypeError("Bad parsha argument: ".concat(parsha));
34
+ }
30
35
  var s = parsha[0];
31
36
  if (parsha.length == 2) {
32
37
  s += '-' + parsha[1];
@@ -1360,6 +1365,9 @@ var HOLIDAY_IGNORE_MASK = core.flags.DAF_YOMI | core.flags.OMER_COUNT | core.fla
1360
1365
  */
1361
1366
  function getLeyningKeyForEvent(ev) {
1362
1367
  var il = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1368
+ if (typeof ev.eventTime !== 'undefined') {
1369
+ return undefined;
1370
+ }
1363
1371
  var mask = ev.getFlags();
1364
1372
  if (mask & HOLIDAY_IGNORE_MASK) {
1365
1373
  return undefined;
@@ -1469,6 +1477,16 @@ function getLeyningKeyForEvent(ev) {
1469
1477
  return undefined;
1470
1478
  }
1471
1479
 
1480
+ /**
1481
+ * Leyning for a parsha hashavua or holiday
1482
+ * @typedef {Object} SpecialReading
1483
+ * @property {Object<string,Aliyah>} aliyot - Map of aliyot `1` through `7` plus `M` for maftir
1484
+ * @property {Object<string,string>} [reason] - Explanations for special readings,
1485
+ * keyed by aliyah number, `M` for maftir or `haftara` for Haftarah
1486
+ * @property {Aliyah|Aliyah[]} haft - Haftarah object(s)
1487
+ * @property {Aliyah|Aliyah[]} seph - Haftarah object(s)
1488
+ */
1489
+
1472
1490
  /**
1473
1491
  * @private
1474
1492
  * @param {Object<string,Aliyah>} aliyot
@@ -1512,25 +1530,23 @@ function mergeAliyotWithSpecial(aliyot, special) {
1512
1530
  * a special maftir or Haftara (for example Shabbat HaGadol, Shabbat Chanukah, Rosh
1513
1531
  * Chodesh or Machar Chodesh, etc.).
1514
1532
  *
1515
- * If a special maftir occurs, modifies `aliyot` to replace `M` and sets `reason.M`
1516
- * (and in some cases modifies the 6th and 7th aliyah, setting `reason['7']`).
1533
+ * This function does not modify `aliyot`. Instead, it returns a deep copy
1534
+ * with `aliyot['M']` replaced and sets `reason.M`
1535
+ * (and in some cases the 6th and 7th aliyah, setting `reason['7']`).
1517
1536
  *
1518
- * If a special Haftarah applies, returns the Haftarah object and sets `reason.haftara`.
1519
- * If no special Haftarah, returns `undefined`
1537
+ * If a special Haftarah applies, the result will have a `haft` property
1538
+ * pointing to Haftarah object and sets `reason.haftara`.
1539
+ * @param {string[]} parsha
1520
1540
  * @param {HDate} hd
1521
1541
  * @param {boolean} il
1522
1542
  * @param {Object<string,Aliyah>} aliyot
1523
- * @param {Object<string,string>} reason
1524
- * @param {string[]} parsha
1525
- * @param {boolean} [wantSeph]
1526
- * @return {Aliyah | Aliyah[]}
1543
+ * @return {SpecialReading}
1527
1544
  */
1528
- function specialReadings(hd, il, aliyot, reason, parsha) {
1529
- var wantSeph = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
1545
+ function specialReadings2(parsha, hd, il, aliyot) {
1530
1546
  var haft;
1531
1547
  var seph;
1532
1548
  var specialHaft = false;
1533
- var parshaName = parsha ? parshaToString(parsha) : null;
1549
+ var reason = {};
1534
1550
 
1535
1551
  // eslint-disable-next-line require-jsdoc
1536
1552
  function handleSpecial(key) {
@@ -1548,18 +1564,21 @@ function specialReadings(hd, il, aliyot, reason, parsha) {
1548
1564
  }
1549
1565
  }
1550
1566
  if (special.fullkriyah) {
1551
- mergeAliyotWithSpecial(aliyot, special.fullkriyah);
1567
+ var aliyotMap = clone(aliyot);
1568
+ mergeAliyotWithSpecial(aliyotMap, special.fullkriyah);
1552
1569
  Object.keys(special.fullkriyah).map(function (k) {
1553
1570
  return reason[k] = key;
1554
1571
  });
1572
+ aliyot = aliyotMap;
1555
1573
  }
1556
1574
  }
1575
+ var parshaName = parshaToString(parsha);
1557
1576
  var events0 = core.HebrewCalendar.getHolidaysOnDate(hd, il) || [];
1558
1577
  var events = events0.filter(function (ev) {
1559
1578
  return !(ev.getFlags() & core.flags.ROSH_CHODESH);
1560
1579
  });
1561
1580
  events.forEach(function (ev) {
1562
- if (ev.getDesc() === 'Shabbat Shuva' && parshaName) {
1581
+ if (ev.getDesc() === 'Shabbat Shuva') {
1563
1582
  handleSpecial("Shabbat Shuva (with ".concat(parshaName, ")"));
1564
1583
  } else {
1565
1584
  var key = getLeyningKeyForEvent(ev, il);
@@ -1584,14 +1603,12 @@ function specialReadings(hd, il, aliyot, reason, parsha) {
1584
1603
  }
1585
1604
  }
1586
1605
  }
1587
- if (wantSeph && haft) {
1588
- return {
1589
- haft: haft,
1590
- seph: seph
1591
- };
1592
- } else {
1593
- return haft;
1594
- }
1606
+ return {
1607
+ aliyot: aliyot,
1608
+ reason: reason,
1609
+ haft: haft,
1610
+ seph: seph
1611
+ };
1595
1612
  }
1596
1613
 
1597
1614
  var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var Kedoshim={num:30,hebrew:"קְדשִׁים",book:3,haft:{k:"Amos",b:"9:7",e:"9:15"},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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var 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"]}};var parshiyotObj = {Bereshit:Bereshit,Noach:Noach,"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:Vayera,"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:Toldot,Vayetzei:Vayetzei,Vayishlach:Vayishlach,Vayeshev:Vayeshev,Miketz:Miketz,Vayigash:Vayigash,Vayechi:Vayechi,Shemot:Shemot,Vaera:Vaera,Bo:Bo,Beshalach:Beshalach,Yitro:Yitro,Mishpatim:Mishpatim,Terumah:Terumah,Tetzaveh:Tetzaveh,"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:Vayakhel,Pekudei:Pekudei,Vayikra:Vayikra,Tzav:Tzav,Shmini:Shmini,Tazria:Tazria,Metzora:Metzora,"Achrei Mot":{num:29,hebrew:"אַחֲרֵי מוֹת",book:3,haft:{k:"Ezekiel",b:"22:1",e:"22:19"},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:Kedoshim,Emor:Emor,Behar:Behar,Bechukotai:Bechukotai,Bamidbar:Bamidbar,Nasso:Nasso,"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:Korach,Chukat:Chukat,Balak:Balak,Pinchas:Pinchas,Matot:Matot,Masei:Masei,Devarim:Devarim,Vaetchanan:Vaetchanan,Eikev:Eikev,"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:Shoftim,"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:Nitzavim,Vayeilech:Vayeilech,"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:101,combined:true,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:102,combined:true,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:103,combined:true,p1:"Achrei Mot",p2:"Kedoshim",num1:29,num2:30,book:3,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:104,combined:true,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:105,combined:true,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:106,combined:true,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:107,combined:true,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"]}}};
@@ -1644,8 +1661,10 @@ var Bereshit={num:1,hebrew:"בְּרֵאשִׁית",book:1,haft:{k:"Isaiah",b:"4
1644
1661
  */
1645
1662
  function getLeyningForHoliday(ev) {
1646
1663
  var il = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1647
- if (_typeof(ev) !== 'object' || !(ev instanceof core.Event)) {
1664
+ if (_typeof(ev) !== 'object' || typeof ev.getFlags !== 'function') {
1648
1665
  throw new TypeError("Bad event argument: ".concat(ev));
1666
+ } else if (typeof ev.eventTime !== 'undefined') {
1667
+ return undefined;
1649
1668
  } else if (ev.getFlags() & core.flags.PARSHA_HASHAVUA) {
1650
1669
  throw new TypeError("Event should be a holiday: ".concat(ev.getDesc()));
1651
1670
  } else if (ev.getFlags() & HOLIDAY_IGNORE_MASK) {
@@ -1727,16 +1746,12 @@ function getHaftaraKey(parsha) {
1727
1746
 
1728
1747
  /**
1729
1748
  * Looks up regular leyning for a weekly parsha with no special readings
1749
+ * @private
1730
1750
  * @param {string|string[]} parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
1731
1751
  * @return {Leyning} map of aliyot
1732
1752
  */
1733
- function getLeyningForParsha(parsha) {
1734
- var isParshaString = typeof parsha === 'string';
1735
- if (!isParshaString && (!Array.isArray(parsha) || parsha.length !== 1 && parsha.length !== 2)) {
1736
- throw new TypeError("Bad parsha argument: ".concat(parsha));
1737
- }
1738
- var name = isParshaString ? parsha : parshaToString(parsha);
1739
- var raw = parshiyotObj[name];
1753
+ function getLeyningForParshaShabbatOnly(parsha) {
1754
+ var raw = lookupParsha(parsha);
1740
1755
  var fullkriyah = {};
1741
1756
  var book = BOOK[raw.book];
1742
1757
  Object.keys(raw.fullkriyah).forEach(function (num) {
@@ -1751,7 +1766,8 @@ function getLeyningForParsha(parsha) {
1751
1766
  Object.values(fullkriyah).map(function (aliyah) {
1752
1767
  return calculateNumVerses(aliyah);
1753
1768
  });
1754
- var parshaNameArray = isParshaString ? raw.combined ? [raw.p1, raw.p2] : [parsha] : parsha;
1769
+ var name = parshaToString(parsha);
1770
+ var parshaNameArray = raw.combined ? [raw.p1, raw.p2] : [name];
1755
1771
  var parts = makeLeyningParts(fullkriyah);
1756
1772
  var summary = makeSummaryFromParts(parts);
1757
1773
  /** @type {Leyning} */
@@ -1782,20 +1798,45 @@ function getLeyningForParsha(parsha) {
1782
1798
  result.sephardic = makeSummaryFromParts(seph);
1783
1799
  result.sephardicNumV = sumVerses(seph);
1784
1800
  }
1785
- var weekdaySrc = raw.weekday || parshiyotObj[parshaNameArray[0]].weekday;
1786
- if (weekdaySrc) {
1787
- var weekday = result.weekday = {};
1788
- ['1', '2', '3'].forEach(function (num) {
1789
- var src = weekdaySrc[num];
1790
- var aliyah = {
1791
- k: book,
1792
- b: src[0],
1793
- e: src[1]
1794
- };
1795
- calculateNumVerses(aliyah);
1796
- weekday[num] = aliyah;
1797
- });
1801
+ return result;
1802
+ }
1803
+
1804
+ /**
1805
+ * Looks up Monday/Thursday aliyot for a regular parsha
1806
+ * @param {string|string[]} parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
1807
+ * @return {Object<string,Aliyah>} map of aliyot
1808
+ */
1809
+ function getWeekdayReading(parsha) {
1810
+ var raw = lookupParsha(parsha);
1811
+ var parshaMeta = raw.combined ? lookupParsha(raw.p1) : raw;
1812
+ var aliyot = parshaMeta.weekday;
1813
+ if (!aliyot) {
1814
+ throw new Error("Parsha missing weekday: ".concat(parsha));
1798
1815
  }
1816
+ var book = BOOK[raw.book];
1817
+ var weekday = {};
1818
+ for (var i = 1; i <= 3; i++) {
1819
+ var num = '' + i;
1820
+ var src = aliyot[num];
1821
+ var aliyah = {
1822
+ k: book,
1823
+ b: src[0],
1824
+ e: src[1]
1825
+ };
1826
+ calculateNumVerses(aliyah);
1827
+ weekday[num] = aliyah;
1828
+ }
1829
+ return weekday;
1830
+ }
1831
+
1832
+ /**
1833
+ * Looks up regular leyning for a weekly parsha with no special readings
1834
+ * @param {string|string[]} parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
1835
+ * @return {Leyning} map of aliyot
1836
+ */
1837
+ function getLeyningForParsha(parsha) {
1838
+ var result = getLeyningForParshaShabbatOnly(parsha);
1839
+ result.weekday = getWeekdayReading(parsha);
1799
1840
  return result;
1800
1841
  }
1801
1842
 
@@ -1808,29 +1849,30 @@ function getLeyningForParsha(parsha) {
1808
1849
  */
1809
1850
  function getLeyningForParshaHaShavua(ev) {
1810
1851
  var il = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1811
- if (!ev instanceof core.Event) {
1852
+ if (_typeof(ev) !== 'object' || typeof ev.getFlags !== 'function') {
1812
1853
  throw new TypeError("Bad event argument: ".concat(ev));
1813
1854
  } else if (ev.getFlags() != core.flags.PARSHA_HASHAVUA) {
1814
1855
  throw new TypeError("Event must be parsha hashavua: ".concat(ev.getDesc()));
1815
1856
  }
1816
1857
  // first, collect the default aliyot and haftara
1817
1858
  var parsha = ev.parsha;
1818
- var result = getLeyningForParsha(parsha);
1819
- var reason = {};
1859
+ var result = getLeyningForParshaShabbatOnly(parsha);
1820
1860
  var hd = ev.getDate();
1821
1861
  // Now, check for special maftir or haftara on same date
1822
- var specialHaftara = specialReadings(hd, il, result.fullkriyah, reason, parsha, true);
1823
- if (specialHaftara) {
1824
- var haft = result.haft = cloneHaftara(specialHaftara.haft);
1862
+ var special = specialReadings2(parsha, hd, il, result.fullkriyah);
1863
+ var reason = special.reason;
1864
+ if (special.haft) {
1865
+ var haft = result.haft = cloneHaftara(special.haft);
1825
1866
  result.haftara = makeSummaryFromParts(haft);
1826
1867
  result.haftaraNumV = sumVerses(haft);
1827
- if (specialHaftara.seph) {
1828
- var seph = result.seph = cloneHaftara(specialHaftara.seph);
1868
+ if (special.seph) {
1869
+ var seph = result.seph = cloneHaftara(special.seph);
1829
1870
  result.sephardic = makeSummaryFromParts(seph);
1830
1871
  result.sephardicNumV = sumVerses(seph);
1831
1872
  }
1832
1873
  }
1833
1874
  if (reason['7'] || reason['M']) {
1875
+ result.fullkriyah = special.aliyot;
1834
1876
  var parts = makeLeyningParts(result.fullkriyah);
1835
1877
  result.summary = makeSummaryFromParts(parts);
1836
1878
  result.summaryParts = parts;
@@ -1853,8 +1895,6 @@ function getLeyningForParshaHaShavua(ev) {
1853
1895
  }
1854
1896
  });
1855
1897
  }
1856
- // to avoid confusion, don't include Saturday mincha reading here
1857
- delete result.weekday;
1858
1898
  return result;
1859
1899
  }
1860
1900
 
@@ -1949,15 +1989,11 @@ function findParshaHaShavua(saturday, il) {
1949
1989
 
1950
1990
  /**
1951
1991
  * Returns the parsha metadata
1952
- * @param {string|string[]} parsha
1992
+ * @param {string|string[]} parsha untranslated name like 'Pinchas' or ['Pinchas'] or ['Matot','Masei']
1953
1993
  * @return {ParshaMeta}
1954
1994
  */
1955
1995
  function lookupParsha(parsha) {
1956
- var isParshaString = typeof parsha === 'string';
1957
- if (!isParshaString && (!Array.isArray(parsha) || parsha.length !== 1 && parsha.length !== 2)) {
1958
- throw new TypeError("Bad parsha argument: ".concat(parsha));
1959
- }
1960
- var name = isParshaString ? parsha : parshaToString(parsha);
1996
+ var name = parshaToString(parsha);
1961
1997
  var raw = parshiyotObj[name];
1962
1998
  if (_typeof(raw) !== 'object') {
1963
1999
  throw new TypeError("Bad parsha argument: ".concat(parsha));
@@ -2153,6 +2189,7 @@ exports.getLeyningForParshaHaShavua = getLeyningForParshaHaShavua;
2153
2189
  exports.getLeyningKeyForEvent = getLeyningKeyForEvent;
2154
2190
  exports.getLeyningOnDate = getLeyningOnDate;
2155
2191
  exports.getParshaDates = getParshaDates;
2192
+ exports.getWeekdayReading = getWeekdayReading;
2156
2193
  exports.hasFestival = hasFestival;
2157
2194
  exports.lookupFestival = lookupFestival;
2158
2195
  exports.lookupParsha = lookupParsha;
@@ -2160,7 +2197,7 @@ exports.makeLeyningParts = makeLeyningParts;
2160
2197
  exports.makeLeyningSummary = makeLeyningSummary;
2161
2198
  exports.makeSummaryFromParts = makeSummaryFromParts;
2162
2199
  exports.parshaToString = parshaToString;
2163
- exports.specialReadings = specialReadings;
2200
+ exports.specialReadings2 = specialReadings2;
2164
2201
  exports.sumVerses = sumVerses;
2165
2202
  exports.writeCsvLines = writeCsvLines;
2166
2203
  exports.writeFullKriyahCsv = writeFullKriyahCsv;