@hebcal/core 5.9.2 → 5.9.4
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 +244 -200
- package/dist/bundle.js.map +1 -1
- package/dist/bundle.min.js +17 -19
- package/dist/bundle.min.js.map +1 -1
- package/dist/esm/DailyLearning.js +1 -1
- package/dist/esm/HebrewDateEvent.js +1 -1
- package/dist/esm/HolidayEvent.js +1 -1
- package/dist/esm/MevarchimChodeshEvent.js +1 -1
- package/dist/esm/ParshaEvent.js +1 -1
- package/dist/esm/TimedEvent.js +1 -1
- package/dist/esm/YomKippurKatanEvent.js +1 -1
- package/dist/esm/ashkenazi.po.js +1 -1
- package/dist/esm/calendar.js +1 -1
- package/dist/esm/candles.js +1 -1
- package/dist/esm/event.js +1 -1
- package/dist/esm/getStartAndEnd.js +1 -1
- package/dist/esm/hallel.js +1 -1
- package/dist/esm/he.po.js +2 -2
- package/dist/esm/he.po.js.map +1 -1
- package/dist/esm/hebcal.js +1 -1
- package/dist/esm/holidays.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/locale.js +1 -1
- package/dist/esm/location.js +4 -1
- package/dist/esm/location.js.map +1 -1
- package/dist/esm/modern.js +1 -1
- package/dist/esm/molad.js +1 -1
- package/dist/esm/omer.d.ts +21 -4
- package/dist/esm/omer.js +228 -12
- package/dist/esm/omer.js.map +1 -1
- package/dist/esm/parshaName.js +1 -1
- package/dist/esm/parshaYear.js +1 -1
- package/dist/esm/pkgVersion.d.ts +1 -1
- package/dist/esm/pkgVersion.js +2 -2
- package/dist/esm/pkgVersion.js.map +1 -1
- package/dist/esm/reformatTimeStr.js +1 -1
- package/dist/esm/sedra.js +1 -1
- package/dist/esm/staticHolidays.js +1 -1
- package/dist/esm/tachanun.js +1 -1
- package/dist/esm/zmanim.js +1 -1
- package/dist/index.cjs +232 -13
- package/dist/index.cjs.map +1 -1
- package/dist/omer.d.ts +21 -4
- package/dist/pkgVersion.d.ts +1 -1
- package/package.json +15 -15
package/dist/esm/omer.js
CHANGED
|
@@ -1,8 +1,190 @@
|
|
|
1
|
-
/*! @hebcal/core v5.9.
|
|
2
|
-
import {
|
|
1
|
+
/*! @hebcal/core v5.9.4, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
|
|
2
|
+
import { Locale, gematriya } from '@hebcal/hdate';
|
|
3
3
|
import { Event, flags } from './event.js';
|
|
4
4
|
import './locale.js';
|
|
5
5
|
|
|
6
|
+
const sefirot = {
|
|
7
|
+
en: {
|
|
8
|
+
infix: 'within ',
|
|
9
|
+
infix26: 'within ',
|
|
10
|
+
words: [
|
|
11
|
+
'',
|
|
12
|
+
'Lovingkindness',
|
|
13
|
+
'Might',
|
|
14
|
+
'Beauty',
|
|
15
|
+
'Eternity',
|
|
16
|
+
'Splendor',
|
|
17
|
+
'Foundation',
|
|
18
|
+
'Majesty',
|
|
19
|
+
],
|
|
20
|
+
pfxWords: null,
|
|
21
|
+
},
|
|
22
|
+
he: {
|
|
23
|
+
infix: null,
|
|
24
|
+
infix26: null,
|
|
25
|
+
words: [
|
|
26
|
+
'',
|
|
27
|
+
'חֶֽסֶד',
|
|
28
|
+
'גְבוּרָה',
|
|
29
|
+
'תִּפְאֶֽרֶת',
|
|
30
|
+
'נֶּֽצַח',
|
|
31
|
+
'הוֹד',
|
|
32
|
+
'יְּסוֹד',
|
|
33
|
+
'מַּלְכוּת',
|
|
34
|
+
],
|
|
35
|
+
pfxWords: [
|
|
36
|
+
'',
|
|
37
|
+
'שֶׁבְּחֶֽסֶד',
|
|
38
|
+
'שֶׁבִּגְבוּרָה',
|
|
39
|
+
'שֶׁבְּתִפְאֶֽרֶת',
|
|
40
|
+
'שֶׁבְּנֶֽצַח',
|
|
41
|
+
'שֶׁבְּהוֹד',
|
|
42
|
+
'שֶׁבִּיְּסוֹד',
|
|
43
|
+
'שֶׁבְּמַלְכוּת',
|
|
44
|
+
],
|
|
45
|
+
},
|
|
46
|
+
translit: {
|
|
47
|
+
infix: "sheb'",
|
|
48
|
+
infix26: 'shebi',
|
|
49
|
+
words: [
|
|
50
|
+
'',
|
|
51
|
+
'Chesed',
|
|
52
|
+
'Gevurah',
|
|
53
|
+
'Tiferet',
|
|
54
|
+
'Netzach',
|
|
55
|
+
'Hod',
|
|
56
|
+
'Yesod',
|
|
57
|
+
'Malkhut',
|
|
58
|
+
],
|
|
59
|
+
pfxWords: null,
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
function checkDay(omerDay) {
|
|
63
|
+
if (omerDay < 1 || omerDay > 49) {
|
|
64
|
+
throw new RangeError(`Invalid Omer day ${omerDay}`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
function getWeeks(omerDay) {
|
|
68
|
+
const weekNum = Math.floor((omerDay - 1) / 7) + 1;
|
|
69
|
+
const daysWithinWeeks = omerDay % 7 || 7;
|
|
70
|
+
return [weekNum, daysWithinWeeks];
|
|
71
|
+
}
|
|
72
|
+
function omerTodayIsEn(omerDay) {
|
|
73
|
+
const [weekNumber, daysWithinWeeks] = getWeeks(omerDay);
|
|
74
|
+
const totalDaysStr = omerDay === 1 ? 'day' : 'days';
|
|
75
|
+
let str = `Today is ${omerDay} ${totalDaysStr}`;
|
|
76
|
+
if (weekNumber > 1 || omerDay === 7) {
|
|
77
|
+
const day7 = daysWithinWeeks === 7;
|
|
78
|
+
const numWeeks = day7 ? weekNumber : weekNumber - 1;
|
|
79
|
+
const weeksStr = numWeeks === 1 ? 'week' : 'weeks';
|
|
80
|
+
str += `, which is ${numWeeks} ${weeksStr}`;
|
|
81
|
+
if (!day7) {
|
|
82
|
+
const daysStr = daysWithinWeeks === 1 ? 'day' : 'days';
|
|
83
|
+
str += ` and ${daysWithinWeeks} ${daysStr}`;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return str + ' of the Omer';
|
|
87
|
+
}
|
|
88
|
+
// adapted from pip hdate package (GPL)
|
|
89
|
+
// https://github.com/py-libhdate/py-libhdate/blob/master/hdate/date.py
|
|
90
|
+
const tens = ['', 'עֲשָׂרָה', 'עֶשְׂרִים', 'שְׁלוֹשִׁים', 'אַרְבָּעִים'];
|
|
91
|
+
const ones = [
|
|
92
|
+
'',
|
|
93
|
+
'אֶחָד',
|
|
94
|
+
'שְׁנַיִם',
|
|
95
|
+
'שְׁלוֹשָׁה',
|
|
96
|
+
'אַרְבָּעָה',
|
|
97
|
+
'חֲמִשָּׁה',
|
|
98
|
+
'שִׁשָּׁה',
|
|
99
|
+
'שִׁבְעָה',
|
|
100
|
+
'שְׁמוֹנָה',
|
|
101
|
+
'תִּשְׁעָה',
|
|
102
|
+
];
|
|
103
|
+
const shnei = 'שְׁנֵי';
|
|
104
|
+
const yamim = 'יָמִים';
|
|
105
|
+
const shneiYamim = shnei + ' ' + yamim;
|
|
106
|
+
const shavuot = 'שָׁבוּעוֹת';
|
|
107
|
+
const yom = 'יוֹם';
|
|
108
|
+
const yomEchad = yom + ' ' + ones[1];
|
|
109
|
+
const asar = 'עָשָׂר';
|
|
110
|
+
function omerTodayIsHe(omerDay) {
|
|
111
|
+
const ten = Math.floor(omerDay / 10);
|
|
112
|
+
const one = omerDay % 10;
|
|
113
|
+
let str = 'הַיּוֹם ';
|
|
114
|
+
if (omerDay === 11) {
|
|
115
|
+
str += 'אַחַד ' + asar;
|
|
116
|
+
}
|
|
117
|
+
else if (omerDay === 12) {
|
|
118
|
+
str += 'שְׁנֵים ' + asar;
|
|
119
|
+
}
|
|
120
|
+
else if (12 < omerDay && omerDay < 20) {
|
|
121
|
+
str += ones[one] + ' ' + asar;
|
|
122
|
+
}
|
|
123
|
+
else if (omerDay > 9) {
|
|
124
|
+
str += ones[one];
|
|
125
|
+
if (one) {
|
|
126
|
+
str += ' ';
|
|
127
|
+
str += ten === 3 ? 'וּ' : 'וְ';
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
if (omerDay > 2) {
|
|
131
|
+
if (omerDay > 20 || omerDay === 10 || omerDay === 20) {
|
|
132
|
+
str += tens[ten];
|
|
133
|
+
}
|
|
134
|
+
if (omerDay < 11) {
|
|
135
|
+
str += ones[one] + ' ' + yamim + ' ';
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
str += ' ' + yom + ' ';
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
else if (omerDay === 1) {
|
|
142
|
+
str += yomEchad + ' ';
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
// omer == 2
|
|
146
|
+
str += shneiYamim + ' ';
|
|
147
|
+
}
|
|
148
|
+
if (omerDay > 6) {
|
|
149
|
+
str = str.trim(); // remove trailing space before comma
|
|
150
|
+
str += ', שֶׁהֵם ';
|
|
151
|
+
const weeks = Math.floor(omerDay / 7);
|
|
152
|
+
const days = omerDay % 7;
|
|
153
|
+
if (weeks > 2) {
|
|
154
|
+
str += ones[weeks] + ' ' + shavuot + ' ';
|
|
155
|
+
}
|
|
156
|
+
else if (weeks === 1) {
|
|
157
|
+
str += 'שָׁבֽוּעַ' + ' ' + ones[1] + ' ';
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
// weeks == 2
|
|
161
|
+
str += shnei + ' ' + shavuot + ' ';
|
|
162
|
+
}
|
|
163
|
+
if (days) {
|
|
164
|
+
if (days === 2 || days === 3) {
|
|
165
|
+
str += 'וּ';
|
|
166
|
+
}
|
|
167
|
+
else if (days === 5) {
|
|
168
|
+
str += 'וַ';
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
str += 'וְ';
|
|
172
|
+
}
|
|
173
|
+
if (days > 2) {
|
|
174
|
+
str += ones[days] + ' ' + yamim + ' ';
|
|
175
|
+
}
|
|
176
|
+
else if (days === 1) {
|
|
177
|
+
str += yomEchad + ' ';
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
// days == 2
|
|
181
|
+
str += shneiYamim + ' ';
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
str += 'לָעֽוֹמֶר';
|
|
186
|
+
return str.normalize();
|
|
187
|
+
}
|
|
6
188
|
/** Represents a day 1-49 of counting the Omer from Pesach to Shavuot */
|
|
7
189
|
class OmerEvent extends Event {
|
|
8
190
|
/**
|
|
@@ -11,24 +193,37 @@ class OmerEvent extends Event {
|
|
|
11
193
|
*/
|
|
12
194
|
constructor(date, omerDay) {
|
|
13
195
|
super(date, `Omer ${omerDay}`, flags.OMER_COUNT);
|
|
14
|
-
|
|
15
|
-
throw new RangeError(`Invalid Omer day ${omerDay}`);
|
|
16
|
-
}
|
|
196
|
+
checkDay(omerDay);
|
|
17
197
|
this.weekNumber = Math.floor((omerDay - 1) / 7) + 1;
|
|
18
198
|
this.daysWithinWeeks = omerDay % 7 || 7;
|
|
19
199
|
this.omer = omerDay;
|
|
20
200
|
}
|
|
21
201
|
/**
|
|
22
|
-
*
|
|
202
|
+
* Returns the sefira. For example, on day 8:
|
|
203
|
+
* * חֶֽסֶד שֶׁבִּגְבוּרָה
|
|
204
|
+
* * Chesed shebiGevurah
|
|
205
|
+
* * Lovingkindness within Might
|
|
206
|
+
* @param lang `en` (English), `he` (Hebrew with nikud), or `translit` (Hebrew in Sephardic transliteration)
|
|
207
|
+
* @returns a string such as `Lovingkindness within Might` or `חֶֽסֶד שֶׁבִּגְבוּרָה`
|
|
23
208
|
*/
|
|
24
209
|
sefira(lang = 'en') {
|
|
25
210
|
if (lang !== 'he' && lang !== 'translit') {
|
|
26
211
|
lang = 'en';
|
|
27
212
|
}
|
|
28
|
-
|
|
213
|
+
const [weekNum, daysWithinWeeks] = getWeeks(this.omer);
|
|
214
|
+
const config = sefirot[lang];
|
|
215
|
+
const pfxWords = config.pfxWords;
|
|
216
|
+
const words = config.words;
|
|
217
|
+
const week = pfxWords ? pfxWords[weekNum] : words[weekNum];
|
|
218
|
+
const dayWithinWeek = words[daysWithinWeeks];
|
|
219
|
+
const infix = pfxWords
|
|
220
|
+
? ''
|
|
221
|
+
: weekNum === 2 || weekNum === 6
|
|
222
|
+
? config.infix26
|
|
223
|
+
: config.infix;
|
|
224
|
+
return (dayWithinWeek + ' ' + infix + week).normalize();
|
|
29
225
|
}
|
|
30
226
|
/**
|
|
31
|
-
* @todo use gettext()
|
|
32
227
|
* @param [locale] Optional locale name (defaults to active locale).
|
|
33
228
|
*/
|
|
34
229
|
render(locale) {
|
|
@@ -52,10 +247,29 @@ class OmerEvent extends Event {
|
|
|
52
247
|
' ' +
|
|
53
248
|
this.omer);
|
|
54
249
|
}
|
|
250
|
+
/**
|
|
251
|
+
* Returns an emoji number symbol with a circle, for example `㊲`
|
|
252
|
+
* from the “Enclosed CJK Letters and Months” block of the Unicode standard
|
|
253
|
+
* @param omerDay the day of the omer, 1-49 inclusive
|
|
254
|
+
* @returns a single Unicode character from `①` through `㊾`
|
|
255
|
+
*/
|
|
55
256
|
getEmoji() {
|
|
56
257
|
if (typeof this.emoji === 'string')
|
|
57
258
|
return this.emoji;
|
|
58
|
-
|
|
259
|
+
let codePoint;
|
|
260
|
+
const omerDay = this.omer;
|
|
261
|
+
if (omerDay <= 20) {
|
|
262
|
+
codePoint = 9312 + omerDay - 1;
|
|
263
|
+
}
|
|
264
|
+
else if (omerDay <= 35) {
|
|
265
|
+
// between 21 and 35 inclusive
|
|
266
|
+
codePoint = 12881 + omerDay - 21;
|
|
267
|
+
}
|
|
268
|
+
else {
|
|
269
|
+
// between 36 and 49 inclusive
|
|
270
|
+
codePoint = 12977 + omerDay - 36;
|
|
271
|
+
}
|
|
272
|
+
return String.fromCodePoint(codePoint);
|
|
59
273
|
}
|
|
60
274
|
getWeeks() {
|
|
61
275
|
const day7 = this.daysWithinWeeks === 7;
|
|
@@ -65,15 +279,17 @@ class OmerEvent extends Event {
|
|
|
65
279
|
return this.daysWithinWeeks;
|
|
66
280
|
}
|
|
67
281
|
/**
|
|
68
|
-
*
|
|
282
|
+
* Returns a sentence with that evening's omer count
|
|
283
|
+
* @returns a string such as `Today is 10 days, which is 1 week and 3 days of the Omer`
|
|
284
|
+
* or `הַיוֹם עֲשָׂרָה יָמִים, שְׁהֵם שָׁבוּעַ אֶחָד וְשְׁלוֹשָׁה יָמִים לָעוֹמֶר`
|
|
69
285
|
*/
|
|
70
286
|
getTodayIs(locale) {
|
|
71
287
|
locale = locale !== null && locale !== void 0 ? locale : Locale.getLocaleName();
|
|
72
288
|
if (typeof locale === 'string') {
|
|
73
289
|
locale = locale.toLowerCase();
|
|
74
290
|
}
|
|
75
|
-
const
|
|
76
|
-
const str =
|
|
291
|
+
const isHebrew = locale === 'he' || locale === 'he-x-nonikud';
|
|
292
|
+
const str = isHebrew ? omerTodayIsHe(this.omer) : omerTodayIsEn(this.omer);
|
|
77
293
|
if (locale === 'he-x-nonikud') {
|
|
78
294
|
return Locale.hebrewStripNikkud(str);
|
|
79
295
|
}
|
package/dist/esm/omer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"omer.js","sources":["../../../src/omer.ts"],"sourcesContent":["import {\n HDate,\n Locale,\n OmerLang,\n gematriya,\n omerEmoji,\n omerSefira,\n omerTodayIs,\n} from '@hebcal/hdate';\nimport {Event, flags} from './event';\nimport './locale'; // Adds Hebrew and Ashkenazic translations\n\n/** Represents a day 1-49 of counting the Omer from Pesach to Shavuot */\nexport class OmerEvent extends Event {\n private readonly weekNumber: number;\n private readonly daysWithinWeeks: number;\n readonly omer: number;\n emoji?: string;\n\n /**\n * @param date\n * @param omerDay\n */\n constructor(date: HDate, omerDay: number) {\n super(date, `Omer ${omerDay}`, flags.OMER_COUNT);\n if (omerDay < 1 || omerDay > 49) {\n throw new RangeError(`Invalid Omer day ${omerDay}`);\n }\n this.weekNumber = Math.floor((omerDay - 1) / 7) + 1;\n this.daysWithinWeeks = omerDay % 7 || 7;\n this.omer = omerDay;\n }\n /**\n * @param lang\n */\n sefira(lang = 'en'): string {\n if (lang !== 'he' && lang !== 'translit') {\n lang = 'en';\n }\n return omerSefira(this.omer, lang as OmerLang);\n }\n /**\n * @todo use gettext()\n * @param [locale] Optional locale name (defaults to active locale).\n */\n render(locale?: string): string {\n locale = locale ?? Locale.getLocaleName();\n if (typeof locale === 'string') {\n locale = locale.toLowerCase();\n }\n const isHebrewLocale =\n locale === 'he' || locale === 'he-x-nonikud' || locale === 'h';\n const omer = this.omer;\n const nth = isHebrewLocale ? gematriya(omer) : Locale.ordinal(omer, locale);\n return nth + ' ' + Locale.gettext('day of the Omer', locale);\n }\n /**\n * Returns translation of \"Omer day 22\" without ordinal numbers.\n * @param [locale] Optional locale name (defaults to active locale).\n */\n renderBrief(locale?: string): string {\n return (\n Locale.gettext('Omer', locale) +\n ' ' +\n Locale.gettext('day', locale) +\n ' ' +\n this.omer\n );\n }\n\n getEmoji(): string {\n if (typeof this.emoji === 'string') return this.emoji;\n return omerEmoji(this.omer);\n }\n\n getWeeks(): number {\n const day7 = this.daysWithinWeeks === 7;\n return day7 ? this.weekNumber : this.weekNumber - 1;\n }\n\n getDaysWithinWeeks(): number {\n return this.daysWithinWeeks;\n }\n /**\n * @param locale\n */\n getTodayIs(locale: string): string {\n locale = locale ?? Locale.getLocaleName();\n if (typeof locale === 'string') {\n locale = locale.toLowerCase();\n }\n const omerLang = locale === 'he' || locale === 'he-x-nonikud' ? 'he' : 'en';\n const str = omerTodayIs(this.omer, omerLang) as string;\n if (locale === 'he-x-nonikud') {\n return Locale.hebrewStripNikkud(str);\n }\n return str;\n }\n\n url(): string {\n return `https://www.hebcal.com/omer/${this.getDate().getFullYear()}/${this.omer}`;\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"omer.js","sources":["../../../src/omer.ts"],"sourcesContent":["import {HDate, Locale, gematriya} from '@hebcal/hdate';\nimport {Event, flags} from './event';\nimport './locale'; // Adds Hebrew and Ashkenazic translations\n\n/**\n * Language for counting the Omer can be English or Hebrew.\n * Lang for the Sefira can be English, Hebrew, or Hebrew in Sephardic transliteration.\n */\nexport type OmerLang = 'en' | 'he' | 'translit';\n\nconst sefirot = {\n en: {\n infix: 'within ',\n infix26: 'within ',\n words: [\n '',\n 'Lovingkindness',\n 'Might',\n 'Beauty',\n 'Eternity',\n 'Splendor',\n 'Foundation',\n 'Majesty',\n ],\n pfxWords: null,\n },\n he: {\n infix: null,\n infix26: null,\n words: [\n '',\n 'חֶֽסֶד',\n 'גְבוּרָה',\n 'תִּפְאֶֽרֶת',\n 'נֶּֽצַח',\n 'הוֹד',\n 'יְּסוֹד',\n 'מַּלְכוּת',\n ],\n pfxWords: [\n '',\n 'שֶׁבְּחֶֽסֶד',\n 'שֶׁבִּגְבוּרָה',\n 'שֶׁבְּתִפְאֶֽרֶת',\n 'שֶׁבְּנֶֽצַח',\n 'שֶׁבְּהוֹד',\n 'שֶׁבִּיְּסוֹד',\n 'שֶׁבְּמַלְכוּת',\n ],\n },\n translit: {\n infix: \"sheb'\",\n infix26: 'shebi',\n words: [\n '',\n 'Chesed',\n 'Gevurah',\n 'Tiferet',\n 'Netzach',\n 'Hod',\n 'Yesod',\n 'Malkhut',\n ],\n pfxWords: null,\n },\n} as const;\n\nfunction checkDay(omerDay: number): void {\n if (omerDay < 1 || omerDay > 49) {\n throw new RangeError(`Invalid Omer day ${omerDay}`);\n }\n}\n\nfunction getWeeks(omerDay: number): number[] {\n const weekNum: number = Math.floor((omerDay - 1) / 7) + 1;\n const daysWithinWeeks: number = omerDay % 7 || 7;\n return [weekNum, daysWithinWeeks];\n}\n\nfunction omerTodayIsEn(omerDay: number): string {\n const [weekNumber, daysWithinWeeks]: number[] = getWeeks(omerDay);\n\n const totalDaysStr: string = omerDay === 1 ? 'day' : 'days';\n let str = `Today is ${omerDay} ${totalDaysStr}`;\n\n if (weekNumber > 1 || omerDay === 7) {\n const day7: boolean = daysWithinWeeks === 7;\n const numWeeks: number = day7 ? weekNumber : weekNumber - 1;\n const weeksStr: string = numWeeks === 1 ? 'week' : 'weeks';\n str += `, which is ${numWeeks} ${weeksStr}`;\n if (!day7) {\n const daysStr: string = daysWithinWeeks === 1 ? 'day' : 'days';\n str += ` and ${daysWithinWeeks} ${daysStr}`;\n }\n }\n return str + ' of the Omer';\n}\n\n// adapted from pip hdate package (GPL)\n// https://github.com/py-libhdate/py-libhdate/blob/master/hdate/date.py\n\nconst tens = ['', 'עֲשָׂרָה', 'עֶשְׂרִים', 'שְׁלוֹשִׁים', 'אַרְבָּעִים'];\nconst ones = [\n '',\n 'אֶחָד',\n 'שְׁנַיִם',\n 'שְׁלוֹשָׁה',\n 'אַרְבָּעָה',\n 'חֲמִשָּׁה',\n 'שִׁשָּׁה',\n 'שִׁבְעָה',\n 'שְׁמוֹנָה',\n 'תִּשְׁעָה',\n];\n\nconst shnei = 'שְׁנֵי';\nconst yamim = 'יָמִים';\nconst shneiYamim = shnei + ' ' + yamim;\nconst shavuot = 'שָׁבוּעוֹת';\nconst yom = 'יוֹם';\nconst yomEchad = yom + ' ' + ones[1];\nconst asar = 'עָשָׂר';\n\nfunction omerTodayIsHe(omerDay: number): string {\n const ten: number = Math.floor(omerDay / 10);\n const one: number = omerDay % 10;\n let str = 'הַיּוֹם ';\n if (omerDay === 11) {\n str += 'אַחַד ' + asar;\n } else if (omerDay === 12) {\n str += 'שְׁנֵים ' + asar;\n } else if (12 < omerDay && omerDay < 20) {\n str += ones[one] + ' ' + asar;\n } else if (omerDay > 9) {\n str += ones[one];\n if (one) {\n str += ' ';\n str += ten === 3 ? 'וּ' : 'וְ';\n }\n }\n if (omerDay > 2) {\n if (omerDay > 20 || omerDay === 10 || omerDay === 20) {\n str += tens[ten];\n }\n if (omerDay < 11) {\n str += ones[one] + ' ' + yamim + ' ';\n } else {\n str += ' ' + yom + ' ';\n }\n } else if (omerDay === 1) {\n str += yomEchad + ' ';\n } else {\n // omer == 2\n str += shneiYamim + ' ';\n }\n if (omerDay > 6) {\n str = str.trim(); // remove trailing space before comma\n str += ', שֶׁהֵם ';\n const weeks: number = Math.floor(omerDay / 7);\n const days: number = omerDay % 7;\n if (weeks > 2) {\n str += ones[weeks] + ' ' + shavuot + ' ';\n } else if (weeks === 1) {\n str += 'שָׁבֽוּעַ' + ' ' + ones[1] + ' ';\n } else {\n // weeks == 2\n str += shnei + ' ' + shavuot + ' ';\n }\n if (days) {\n if (days === 2 || days === 3) {\n str += 'וּ';\n } else if (days === 5) {\n str += 'וַ';\n } else {\n str += 'וְ';\n }\n if (days > 2) {\n str += ones[days] + ' ' + yamim + ' ';\n } else if (days === 1) {\n str += yomEchad + ' ';\n } else {\n // days == 2\n str += shneiYamim + ' ';\n }\n }\n }\n str += 'לָעֽוֹמֶר';\n return str.normalize();\n}\n\n/** Represents a day 1-49 of counting the Omer from Pesach to Shavuot */\nexport class OmerEvent extends Event {\n private readonly weekNumber: number;\n private readonly daysWithinWeeks: number;\n readonly omer: number;\n emoji?: string;\n\n /**\n * @param date\n * @param omerDay\n */\n constructor(date: HDate, omerDay: number) {\n super(date, `Omer ${omerDay}`, flags.OMER_COUNT);\n checkDay(omerDay);\n this.weekNumber = Math.floor((omerDay - 1) / 7) + 1;\n this.daysWithinWeeks = omerDay % 7 || 7;\n this.omer = omerDay;\n }\n\n /**\n * Returns the sefira. For example, on day 8:\n * * חֶֽסֶד שֶׁבִּגְבוּרָה\n * * Chesed shebiGevurah\n * * Lovingkindness within Might\n * @param lang `en` (English), `he` (Hebrew with nikud), or `translit` (Hebrew in Sephardic transliteration)\n * @returns a string such as `Lovingkindness within Might` or `חֶֽסֶד שֶׁבִּגְבוּרָה`\n */\n sefira(lang: OmerLang = 'en'): string {\n if (lang !== 'he' && lang !== 'translit') {\n lang = 'en';\n }\n const [weekNum, daysWithinWeeks]: number[] = getWeeks(this.omer);\n const config = sefirot[lang as OmerLang];\n const pfxWords = config.pfxWords;\n const words = config.words;\n const week = pfxWords ? pfxWords[weekNum] : words[weekNum];\n const dayWithinWeek = words[daysWithinWeeks];\n const infix = pfxWords\n ? ''\n : weekNum === 2 || weekNum === 6\n ? config.infix26\n : config.infix;\n return (dayWithinWeek + ' ' + infix + week).normalize();\n }\n /**\n * @param [locale] Optional locale name (defaults to active locale).\n */\n render(locale?: string): string {\n locale = locale ?? Locale.getLocaleName();\n if (typeof locale === 'string') {\n locale = locale.toLowerCase();\n }\n const isHebrewLocale =\n locale === 'he' || locale === 'he-x-nonikud' || locale === 'h';\n const omer = this.omer;\n const nth = isHebrewLocale ? gematriya(omer) : Locale.ordinal(omer, locale);\n return nth + ' ' + Locale.gettext('day of the Omer', locale);\n }\n /**\n * Returns translation of \"Omer day 22\" without ordinal numbers.\n * @param [locale] Optional locale name (defaults to active locale).\n */\n renderBrief(locale?: string): string {\n return (\n Locale.gettext('Omer', locale) +\n ' ' +\n Locale.gettext('day', locale) +\n ' ' +\n this.omer\n );\n }\n /**\n * Returns an emoji number symbol with a circle, for example `㊲`\n * from the “Enclosed CJK Letters and Months” block of the Unicode standard\n * @param omerDay the day of the omer, 1-49 inclusive\n * @returns a single Unicode character from `①` through `㊾`\n */\n getEmoji(): string {\n if (typeof this.emoji === 'string') return this.emoji;\n let codePoint: number;\n const omerDay = this.omer;\n if (omerDay <= 20) {\n codePoint = 9312 + omerDay - 1;\n } else if (omerDay <= 35) {\n // between 21 and 35 inclusive\n codePoint = 12881 + omerDay - 21;\n } else {\n // between 36 and 49 inclusive\n codePoint = 12977 + omerDay - 36;\n }\n return String.fromCodePoint(codePoint);\n }\n\n getWeeks(): number {\n const day7 = this.daysWithinWeeks === 7;\n return day7 ? this.weekNumber : this.weekNumber - 1;\n }\n\n getDaysWithinWeeks(): number {\n return this.daysWithinWeeks;\n }\n /**\n * Returns a sentence with that evening's omer count\n * @returns a string such as `Today is 10 days, which is 1 week and 3 days of the Omer`\n * or `הַיוֹם עֲשָׂרָה יָמִים, שְׁהֵם שָׁבוּעַ אֶחָד וְשְׁלוֹשָׁה יָמִים לָעוֹמֶר`\n */\n getTodayIs(locale: string): string {\n locale = locale ?? Locale.getLocaleName();\n if (typeof locale === 'string') {\n locale = locale.toLowerCase();\n }\n const isHebrew = locale === 'he' || locale === 'he-x-nonikud';\n const str = isHebrew ? omerTodayIsHe(this.omer) : omerTodayIsEn(this.omer);\n if (locale === 'he-x-nonikud') {\n return Locale.hebrewStripNikkud(str);\n }\n return str;\n }\n\n url(): string {\n return `https://www.hebcal.com/omer/${this.getDate().getFullYear()}/${this.omer}`;\n }\n}\n"],"names":[],"mappings":"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"}
|
package/dist/esm/parshaName.js
CHANGED
package/dist/esm/parshaYear.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @hebcal/core v5.9.
|
|
1
|
+
/*! @hebcal/core v5.9.4, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
|
|
2
2
|
import { HDate, months } from '@hebcal/hdate';
|
|
3
3
|
import { ParshaEvent } from './ParshaEvent.js';
|
|
4
4
|
import { getSedra } from './sedra.js';
|
package/dist/esm/pkgVersion.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/** DO NOT EDIT THIS AUTO-GENERATED FILE! */
|
|
2
|
-
export declare const version = "5.9.
|
|
2
|
+
export declare const version = "5.9.4";
|
package/dist/esm/pkgVersion.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
/*! @hebcal/core v5.9.
|
|
1
|
+
/*! @hebcal/core v5.9.4, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
|
|
2
2
|
/** DO NOT EDIT THIS AUTO-GENERATED FILE! */
|
|
3
|
-
const version = '5.9.
|
|
3
|
+
const version = '5.9.4';
|
|
4
4
|
|
|
5
5
|
export { version };
|
|
6
6
|
//# sourceMappingURL=pkgVersion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkgVersion.js","sources":["../../../src/pkgVersion.ts"],"sourcesContent":["/** DO NOT EDIT THIS AUTO-GENERATED FILE! */\nexport const version = '5.9.
|
|
1
|
+
{"version":3,"file":"pkgVersion.js","sources":["../../../src/pkgVersion.ts"],"sourcesContent":["/** DO NOT EDIT THIS AUTO-GENERATED FILE! */\nexport const version = '5.9.4';\n"],"names":[],"mappings":";AAAA;AACO,MAAM,OAAO,GAAG;;;;"}
|
package/dist/esm/sedra.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @hebcal/core v5.9.
|
|
1
|
+
/*! @hebcal/core v5.9.4, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
|
|
2
2
|
import { HDate, months } from '@hebcal/hdate';
|
|
3
3
|
import { renderParshaName } from './parshaName.js';
|
|
4
4
|
import QuickLRU from 'quick-lru';
|
package/dist/esm/tachanun.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @hebcal/core v5.9.
|
|
1
|
+
/*! @hebcal/core v5.9.4, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
|
|
2
2
|
import { HDate, months } from '@hebcal/hdate';
|
|
3
3
|
import { dateYomHaZikaron } from './modern.js';
|
|
4
4
|
|
package/dist/esm/zmanim.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @hebcal/core v5.9.
|
|
1
|
+
/*! @hebcal/core v5.9.4, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */
|
|
2
2
|
import 'temporal-polyfill/global';
|
|
3
3
|
import { NOAACalculator } from '@hebcal/noaa';
|
|
4
4
|
import { getTimezoneOffset, pad2, getPseudoISO, HDate, isDate } from '@hebcal/hdate';
|