@hebcal/core 3.26.2 → 3.26.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 CHANGED
@@ -1,4 +1,4 @@
1
- /*! @hebcal/core v3.26.2 */
1
+ /*! @hebcal/core v3.26.6 */
2
2
  var hebcal = (function (exports) {
3
3
  'use strict';
4
4
 
@@ -30,7 +30,7 @@ const monthLengths = [[0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31], [0, 3
30
30
  * @return {number}
31
31
  */
32
32
 
33
- function mod$1(x, y) {
33
+ function mod(x, y) {
34
34
  return x - y * Math.floor(x / y);
35
35
  }
36
36
  /**
@@ -40,7 +40,6 @@ function mod$1(x, y) {
40
40
  * @return {number}
41
41
  */
42
42
 
43
-
44
43
  function quotient(x, y) {
45
44
  return Math.floor(x / y);
46
45
  }
@@ -123,7 +122,8 @@ const greg = {
123
122
 
124
123
  const year = date.getFullYear() - 1;
125
124
  return this.dayOfYear(date) + // days this year
126
- 365 * year + (Math.floor(year / 4) - // + Julian Leap years
125
+ 365 * year + ( // + days in prior years
126
+ Math.floor(year / 4) - // + Julian Leap years
127
127
  Math.floor(year / 100) + // - century years
128
128
  Math.floor(year / 400)); // + Gregorian leap years
129
129
  },
@@ -136,11 +136,11 @@ const greg = {
136
136
  yearFromFixed: function yearFromFixed(theDate) {
137
137
  const l0 = theDate - 1;
138
138
  const n400 = quotient(l0, 146097);
139
- const d1 = mod$1(l0, 146097);
139
+ const d1 = mod(l0, 146097);
140
140
  const n100 = quotient(d1, 36524);
141
- const d2 = mod$1(d1, 36524);
141
+ const d2 = mod(d1, 36524);
142
142
  const n4 = quotient(d2, 1461);
143
- const d3 = mod$1(d2, 1461);
143
+ const d3 = mod(d2, 1461);
144
144
  const n1 = quotient(d3, 365);
145
145
  const year = 400 * n400 + 100 * n100 + 4 * n4 + n1;
146
146
  return n100 != 4 && n1 != 4 ? year + 1 : year;
@@ -172,6 +172,7 @@ const greg = {
172
172
  throw new TypeError('Argument to greg.abs2greg not a Number');
173
173
  }
174
174
 
175
+ theDate = Math.trunc(theDate);
175
176
  const year = this.yearFromFixed(theDate);
176
177
  const priorDays = theDate - this.toFixed(year, 1, 1);
177
178
  const correction = theDate < this.toFixed(year, 3, 1) ? 0 : this.isLeapYear(year) ? 1 : 2;
@@ -187,6 +188,927 @@ const greg = {
187
188
  }
188
189
  };
189
190
 
191
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
192
+
193
+ var check = function (it) {
194
+ return it && it.Math == Math && it;
195
+ };
196
+
197
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
198
+ var global$c =
199
+ // eslint-disable-next-line es/no-global-this -- safe
200
+ check(typeof globalThis == 'object' && globalThis) ||
201
+ check(typeof window == 'object' && window) ||
202
+ // eslint-disable-next-line no-restricted-globals -- safe
203
+ check(typeof self == 'object' && self) ||
204
+ check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
205
+ // eslint-disable-next-line no-new-func -- fallback
206
+ (function () { return this; })() || Function('return this')();
207
+
208
+ var objectGetOwnPropertyDescriptor = {};
209
+
210
+ var fails$6 = function (exec) {
211
+ try {
212
+ return !!exec();
213
+ } catch (error) {
214
+ return true;
215
+ }
216
+ };
217
+
218
+ var fails$5 = fails$6;
219
+
220
+ // Detect IE8's incomplete defineProperty implementation
221
+ var descriptors = !fails$5(function () {
222
+ // eslint-disable-next-line es/no-object-defineproperty -- required for testing
223
+ return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
224
+ });
225
+
226
+ var objectPropertyIsEnumerable = {};
227
+
228
+ var $propertyIsEnumerable = {}.propertyIsEnumerable;
229
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
230
+ var getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
231
+
232
+ // Nashorn ~ JDK8 bug
233
+ var NASHORN_BUG = getOwnPropertyDescriptor$1 && !$propertyIsEnumerable.call({ 1: 2 }, 1);
234
+
235
+ // `Object.prototype.propertyIsEnumerable` method implementation
236
+ // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
237
+ objectPropertyIsEnumerable.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
238
+ var descriptor = getOwnPropertyDescriptor$1(this, V);
239
+ return !!descriptor && descriptor.enumerable;
240
+ } : $propertyIsEnumerable;
241
+
242
+ var createPropertyDescriptor$2 = function (bitmap, value) {
243
+ return {
244
+ enumerable: !(bitmap & 1),
245
+ configurable: !(bitmap & 2),
246
+ writable: !(bitmap & 4),
247
+ value: value
248
+ };
249
+ };
250
+
251
+ var toString$3 = {}.toString;
252
+
253
+ var classofRaw$1 = function (it) {
254
+ return toString$3.call(it).slice(8, -1);
255
+ };
256
+
257
+ var fails$4 = fails$6;
258
+ var classof$2 = classofRaw$1;
259
+
260
+ var split = ''.split;
261
+
262
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
263
+ var indexedObject = fails$4(function () {
264
+ // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
265
+ // eslint-disable-next-line no-prototype-builtins -- safe
266
+ return !Object('z').propertyIsEnumerable(0);
267
+ }) ? function (it) {
268
+ return classof$2(it) == 'String' ? split.call(it, '') : Object(it);
269
+ } : Object;
270
+
271
+ // `RequireObjectCoercible` abstract operation
272
+ // https://tc39.es/ecma262/#sec-requireobjectcoercible
273
+ var requireObjectCoercible$3 = function (it) {
274
+ if (it == undefined) throw TypeError("Can't call method on " + it);
275
+ return it;
276
+ };
277
+
278
+ // toObject with fallback for non-array-like ES3 strings
279
+ var IndexedObject = indexedObject;
280
+ var requireObjectCoercible$2 = requireObjectCoercible$3;
281
+
282
+ var toIndexedObject$3 = function (it) {
283
+ return IndexedObject(requireObjectCoercible$2(it));
284
+ };
285
+
286
+ // `IsCallable` abstract operation
287
+ // https://tc39.es/ecma262/#sec-iscallable
288
+ var isCallable$a = function (argument) {
289
+ return typeof argument === 'function';
290
+ };
291
+
292
+ var isCallable$9 = isCallable$a;
293
+
294
+ var isObject$5 = function (it) {
295
+ return typeof it === 'object' ? it !== null : isCallable$9(it);
296
+ };
297
+
298
+ var global$b = global$c;
299
+ var isCallable$8 = isCallable$a;
300
+
301
+ var aFunction = function (argument) {
302
+ return isCallable$8(argument) ? argument : undefined;
303
+ };
304
+
305
+ var getBuiltIn$3 = function (namespace, method) {
306
+ return arguments.length < 2 ? aFunction(global$b[namespace]) : global$b[namespace] && global$b[namespace][method];
307
+ };
308
+
309
+ var getBuiltIn$2 = getBuiltIn$3;
310
+
311
+ var engineUserAgent = getBuiltIn$2('navigator', 'userAgent') || '';
312
+
313
+ var global$a = global$c;
314
+ var userAgent = engineUserAgent;
315
+
316
+ var process = global$a.process;
317
+ var Deno = global$a.Deno;
318
+ var versions = process && process.versions || Deno && Deno.version;
319
+ var v8 = versions && versions.v8;
320
+ var match, version$1;
321
+
322
+ if (v8) {
323
+ match = v8.split('.');
324
+ version$1 = match[0] < 4 ? 1 : match[0] + match[1];
325
+ } else if (userAgent) {
326
+ match = userAgent.match(/Edge\/(\d+)/);
327
+ if (!match || match[1] >= 74) {
328
+ match = userAgent.match(/Chrome\/(\d+)/);
329
+ if (match) version$1 = match[1];
330
+ }
331
+ }
332
+
333
+ var engineV8Version = version$1 && +version$1;
334
+
335
+ /* eslint-disable es/no-symbol -- required for testing */
336
+
337
+ var V8_VERSION = engineV8Version;
338
+ var fails$3 = fails$6;
339
+
340
+ // eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
341
+ var nativeSymbol = !!Object.getOwnPropertySymbols && !fails$3(function () {
342
+ var symbol = Symbol();
343
+ // Chrome 38 Symbol has incorrect toString conversion
344
+ // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
345
+ return !String(symbol) || !(Object(symbol) instanceof Symbol) ||
346
+ // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
347
+ !Symbol.sham && V8_VERSION && V8_VERSION < 41;
348
+ });
349
+
350
+ /* eslint-disable es/no-symbol -- required for testing */
351
+
352
+ var NATIVE_SYMBOL$1 = nativeSymbol;
353
+
354
+ var useSymbolAsUid = NATIVE_SYMBOL$1
355
+ && !Symbol.sham
356
+ && typeof Symbol.iterator == 'symbol';
357
+
358
+ var isCallable$7 = isCallable$a;
359
+ var getBuiltIn$1 = getBuiltIn$3;
360
+ var USE_SYMBOL_AS_UID$1 = useSymbolAsUid;
361
+
362
+ var isSymbol$2 = USE_SYMBOL_AS_UID$1 ? function (it) {
363
+ return typeof it == 'symbol';
364
+ } : function (it) {
365
+ var $Symbol = getBuiltIn$1('Symbol');
366
+ return isCallable$7($Symbol) && Object(it) instanceof $Symbol;
367
+ };
368
+
369
+ var tryToString$1 = function (argument) {
370
+ try {
371
+ return String(argument);
372
+ } catch (error) {
373
+ return 'Object';
374
+ }
375
+ };
376
+
377
+ var isCallable$6 = isCallable$a;
378
+ var tryToString = tryToString$1;
379
+
380
+ // `Assert: IsCallable(argument) is true`
381
+ var aCallable$1 = function (argument) {
382
+ if (isCallable$6(argument)) return argument;
383
+ throw TypeError(tryToString(argument) + ' is not a function');
384
+ };
385
+
386
+ var aCallable = aCallable$1;
387
+
388
+ // `GetMethod` abstract operation
389
+ // https://tc39.es/ecma262/#sec-getmethod
390
+ var getMethod$1 = function (V, P) {
391
+ var func = V[P];
392
+ return func == null ? undefined : aCallable(func);
393
+ };
394
+
395
+ var isCallable$5 = isCallable$a;
396
+ var isObject$4 = isObject$5;
397
+
398
+ // `OrdinaryToPrimitive` abstract operation
399
+ // https://tc39.es/ecma262/#sec-ordinarytoprimitive
400
+ var ordinaryToPrimitive$1 = function (input, pref) {
401
+ var fn, val;
402
+ if (pref === 'string' && isCallable$5(fn = input.toString) && !isObject$4(val = fn.call(input))) return val;
403
+ if (isCallable$5(fn = input.valueOf) && !isObject$4(val = fn.call(input))) return val;
404
+ if (pref !== 'string' && isCallable$5(fn = input.toString) && !isObject$4(val = fn.call(input))) return val;
405
+ throw TypeError("Can't convert object to primitive value");
406
+ };
407
+
408
+ var shared$3 = {exports: {}};
409
+
410
+ var global$9 = global$c;
411
+
412
+ var setGlobal$3 = function (key, value) {
413
+ try {
414
+ // eslint-disable-next-line es/no-object-defineproperty -- safe
415
+ Object.defineProperty(global$9, key, { value: value, configurable: true, writable: true });
416
+ } catch (error) {
417
+ global$9[key] = value;
418
+ } return value;
419
+ };
420
+
421
+ var global$8 = global$c;
422
+ var setGlobal$2 = setGlobal$3;
423
+
424
+ var SHARED = '__core-js_shared__';
425
+ var store$3 = global$8[SHARED] || setGlobal$2(SHARED, {});
426
+
427
+ var sharedStore = store$3;
428
+
429
+ var store$2 = sharedStore;
430
+
431
+ (shared$3.exports = function (key, value) {
432
+ return store$2[key] || (store$2[key] = value !== undefined ? value : {});
433
+ })('versions', []).push({
434
+ version: '3.18.3',
435
+ mode: 'global',
436
+ copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
437
+ });
438
+
439
+ var requireObjectCoercible$1 = requireObjectCoercible$3;
440
+
441
+ // `ToObject` abstract operation
442
+ // https://tc39.es/ecma262/#sec-toobject
443
+ var toObject$1 = function (argument) {
444
+ return Object(requireObjectCoercible$1(argument));
445
+ };
446
+
447
+ var toObject = toObject$1;
448
+
449
+ var hasOwnProperty = {}.hasOwnProperty;
450
+
451
+ // `HasOwnProperty` abstract operation
452
+ // https://tc39.es/ecma262/#sec-hasownproperty
453
+ var hasOwnProperty_1 = Object.hasOwn || function hasOwn(it, key) {
454
+ return hasOwnProperty.call(toObject(it), key);
455
+ };
456
+
457
+ var id = 0;
458
+ var postfix = Math.random();
459
+
460
+ var uid$2 = function (key) {
461
+ return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
462
+ };
463
+
464
+ var global$7 = global$c;
465
+ var shared$2 = shared$3.exports;
466
+ var hasOwn$6 = hasOwnProperty_1;
467
+ var uid$1 = uid$2;
468
+ var NATIVE_SYMBOL = nativeSymbol;
469
+ var USE_SYMBOL_AS_UID = useSymbolAsUid;
470
+
471
+ var WellKnownSymbolsStore = shared$2('wks');
472
+ var Symbol$2 = global$7.Symbol;
473
+ var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol$2 : Symbol$2 && Symbol$2.withoutSetter || uid$1;
474
+
475
+ var wellKnownSymbol$3 = function (name) {
476
+ if (!hasOwn$6(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {
477
+ if (NATIVE_SYMBOL && hasOwn$6(Symbol$2, name)) {
478
+ WellKnownSymbolsStore[name] = Symbol$2[name];
479
+ } else {
480
+ WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
481
+ }
482
+ } return WellKnownSymbolsStore[name];
483
+ };
484
+
485
+ var isObject$3 = isObject$5;
486
+ var isSymbol$1 = isSymbol$2;
487
+ var getMethod = getMethod$1;
488
+ var ordinaryToPrimitive = ordinaryToPrimitive$1;
489
+ var wellKnownSymbol$2 = wellKnownSymbol$3;
490
+
491
+ var TO_PRIMITIVE = wellKnownSymbol$2('toPrimitive');
492
+
493
+ // `ToPrimitive` abstract operation
494
+ // https://tc39.es/ecma262/#sec-toprimitive
495
+ var toPrimitive$1 = function (input, pref) {
496
+ if (!isObject$3(input) || isSymbol$1(input)) return input;
497
+ var exoticToPrim = getMethod(input, TO_PRIMITIVE);
498
+ var result;
499
+ if (exoticToPrim) {
500
+ if (pref === undefined) pref = 'default';
501
+ result = exoticToPrim.call(input, pref);
502
+ if (!isObject$3(result) || isSymbol$1(result)) return result;
503
+ throw TypeError("Can't convert object to primitive value");
504
+ }
505
+ if (pref === undefined) pref = 'number';
506
+ return ordinaryToPrimitive(input, pref);
507
+ };
508
+
509
+ var toPrimitive = toPrimitive$1;
510
+ var isSymbol = isSymbol$2;
511
+
512
+ // `ToPropertyKey` abstract operation
513
+ // https://tc39.es/ecma262/#sec-topropertykey
514
+ var toPropertyKey$2 = function (argument) {
515
+ var key = toPrimitive(argument, 'string');
516
+ return isSymbol(key) ? key : String(key);
517
+ };
518
+
519
+ var global$6 = global$c;
520
+ var isObject$2 = isObject$5;
521
+
522
+ var document = global$6.document;
523
+ // typeof document.createElement is 'object' in old IE
524
+ var EXISTS$1 = isObject$2(document) && isObject$2(document.createElement);
525
+
526
+ var documentCreateElement = function (it) {
527
+ return EXISTS$1 ? document.createElement(it) : {};
528
+ };
529
+
530
+ var DESCRIPTORS$4 = descriptors;
531
+ var fails$2 = fails$6;
532
+ var createElement = documentCreateElement;
533
+
534
+ // Thank's IE8 for his funny defineProperty
535
+ var ie8DomDefine = !DESCRIPTORS$4 && !fails$2(function () {
536
+ // eslint-disable-next-line es/no-object-defineproperty -- requied for testing
537
+ return Object.defineProperty(createElement('div'), 'a', {
538
+ get: function () { return 7; }
539
+ }).a != 7;
540
+ });
541
+
542
+ var DESCRIPTORS$3 = descriptors;
543
+ var propertyIsEnumerableModule = objectPropertyIsEnumerable;
544
+ var createPropertyDescriptor$1 = createPropertyDescriptor$2;
545
+ var toIndexedObject$2 = toIndexedObject$3;
546
+ var toPropertyKey$1 = toPropertyKey$2;
547
+ var hasOwn$5 = hasOwnProperty_1;
548
+ var IE8_DOM_DEFINE$1 = ie8DomDefine;
549
+
550
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
551
+ var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
552
+
553
+ // `Object.getOwnPropertyDescriptor` method
554
+ // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
555
+ objectGetOwnPropertyDescriptor.f = DESCRIPTORS$3 ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
556
+ O = toIndexedObject$2(O);
557
+ P = toPropertyKey$1(P);
558
+ if (IE8_DOM_DEFINE$1) try {
559
+ return $getOwnPropertyDescriptor(O, P);
560
+ } catch (error) { /* empty */ }
561
+ if (hasOwn$5(O, P)) return createPropertyDescriptor$1(!propertyIsEnumerableModule.f.call(O, P), O[P]);
562
+ };
563
+
564
+ var objectDefineProperty = {};
565
+
566
+ var isObject$1 = isObject$5;
567
+
568
+ // `Assert: Type(argument) is Object`
569
+ var anObject$2 = function (argument) {
570
+ if (isObject$1(argument)) return argument;
571
+ throw TypeError(String(argument) + ' is not an object');
572
+ };
573
+
574
+ var DESCRIPTORS$2 = descriptors;
575
+ var IE8_DOM_DEFINE = ie8DomDefine;
576
+ var anObject$1 = anObject$2;
577
+ var toPropertyKey = toPropertyKey$2;
578
+
579
+ // eslint-disable-next-line es/no-object-defineproperty -- safe
580
+ var $defineProperty = Object.defineProperty;
581
+
582
+ // `Object.defineProperty` method
583
+ // https://tc39.es/ecma262/#sec-object.defineproperty
584
+ objectDefineProperty.f = DESCRIPTORS$2 ? $defineProperty : function defineProperty(O, P, Attributes) {
585
+ anObject$1(O);
586
+ P = toPropertyKey(P);
587
+ anObject$1(Attributes);
588
+ if (IE8_DOM_DEFINE) try {
589
+ return $defineProperty(O, P, Attributes);
590
+ } catch (error) { /* empty */ }
591
+ if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
592
+ if ('value' in Attributes) O[P] = Attributes.value;
593
+ return O;
594
+ };
595
+
596
+ var DESCRIPTORS$1 = descriptors;
597
+ var definePropertyModule$1 = objectDefineProperty;
598
+ var createPropertyDescriptor = createPropertyDescriptor$2;
599
+
600
+ var createNonEnumerableProperty$3 = DESCRIPTORS$1 ? function (object, key, value) {
601
+ return definePropertyModule$1.f(object, key, createPropertyDescriptor(1, value));
602
+ } : function (object, key, value) {
603
+ object[key] = value;
604
+ return object;
605
+ };
606
+
607
+ var redefine$1 = {exports: {}};
608
+
609
+ var isCallable$4 = isCallable$a;
610
+ var store$1 = sharedStore;
611
+
612
+ var functionToString = Function.toString;
613
+
614
+ // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
615
+ if (!isCallable$4(store$1.inspectSource)) {
616
+ store$1.inspectSource = function (it) {
617
+ return functionToString.call(it);
618
+ };
619
+ }
620
+
621
+ var inspectSource$2 = store$1.inspectSource;
622
+
623
+ var global$5 = global$c;
624
+ var isCallable$3 = isCallable$a;
625
+ var inspectSource$1 = inspectSource$2;
626
+
627
+ var WeakMap$1 = global$5.WeakMap;
628
+
629
+ var nativeWeakMap = isCallable$3(WeakMap$1) && /native code/.test(inspectSource$1(WeakMap$1));
630
+
631
+ var shared$1 = shared$3.exports;
632
+ var uid = uid$2;
633
+
634
+ var keys = shared$1('keys');
635
+
636
+ var sharedKey$1 = function (key) {
637
+ return keys[key] || (keys[key] = uid(key));
638
+ };
639
+
640
+ var hiddenKeys$3 = {};
641
+
642
+ var NATIVE_WEAK_MAP = nativeWeakMap;
643
+ var global$4 = global$c;
644
+ var isObject = isObject$5;
645
+ var createNonEnumerableProperty$2 = createNonEnumerableProperty$3;
646
+ var hasOwn$4 = hasOwnProperty_1;
647
+ var shared = sharedStore;
648
+ var sharedKey = sharedKey$1;
649
+ var hiddenKeys$2 = hiddenKeys$3;
650
+
651
+ var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
652
+ var WeakMap = global$4.WeakMap;
653
+ var set, get, has;
654
+
655
+ var enforce = function (it) {
656
+ return has(it) ? get(it) : set(it, {});
657
+ };
658
+
659
+ var getterFor = function (TYPE) {
660
+ return function (it) {
661
+ var state;
662
+ if (!isObject(it) || (state = get(it)).type !== TYPE) {
663
+ throw TypeError('Incompatible receiver, ' + TYPE + ' required');
664
+ } return state;
665
+ };
666
+ };
667
+
668
+ if (NATIVE_WEAK_MAP || shared.state) {
669
+ var store = shared.state || (shared.state = new WeakMap());
670
+ var wmget = store.get;
671
+ var wmhas = store.has;
672
+ var wmset = store.set;
673
+ set = function (it, metadata) {
674
+ if (wmhas.call(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
675
+ metadata.facade = it;
676
+ wmset.call(store, it, metadata);
677
+ return metadata;
678
+ };
679
+ get = function (it) {
680
+ return wmget.call(store, it) || {};
681
+ };
682
+ has = function (it) {
683
+ return wmhas.call(store, it);
684
+ };
685
+ } else {
686
+ var STATE = sharedKey('state');
687
+ hiddenKeys$2[STATE] = true;
688
+ set = function (it, metadata) {
689
+ if (hasOwn$4(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
690
+ metadata.facade = it;
691
+ createNonEnumerableProperty$2(it, STATE, metadata);
692
+ return metadata;
693
+ };
694
+ get = function (it) {
695
+ return hasOwn$4(it, STATE) ? it[STATE] : {};
696
+ };
697
+ has = function (it) {
698
+ return hasOwn$4(it, STATE);
699
+ };
700
+ }
701
+
702
+ var internalState = {
703
+ set: set,
704
+ get: get,
705
+ has: has,
706
+ enforce: enforce,
707
+ getterFor: getterFor
708
+ };
709
+
710
+ var DESCRIPTORS = descriptors;
711
+ var hasOwn$3 = hasOwnProperty_1;
712
+
713
+ var FunctionPrototype = Function.prototype;
714
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
715
+ var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;
716
+
717
+ var EXISTS = hasOwn$3(FunctionPrototype, 'name');
718
+ // additional protection from minified / mangled / dropped function names
719
+ var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';
720
+ var CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));
721
+
722
+ var functionName = {
723
+ EXISTS: EXISTS,
724
+ PROPER: PROPER,
725
+ CONFIGURABLE: CONFIGURABLE
726
+ };
727
+
728
+ var global$3 = global$c;
729
+ var isCallable$2 = isCallable$a;
730
+ var hasOwn$2 = hasOwnProperty_1;
731
+ var createNonEnumerableProperty$1 = createNonEnumerableProperty$3;
732
+ var setGlobal$1 = setGlobal$3;
733
+ var inspectSource = inspectSource$2;
734
+ var InternalStateModule = internalState;
735
+ var CONFIGURABLE_FUNCTION_NAME = functionName.CONFIGURABLE;
736
+
737
+ var getInternalState = InternalStateModule.get;
738
+ var enforceInternalState = InternalStateModule.enforce;
739
+ var TEMPLATE = String(String).split('String');
740
+
741
+ (redefine$1.exports = function (O, key, value, options) {
742
+ var unsafe = options ? !!options.unsafe : false;
743
+ var simple = options ? !!options.enumerable : false;
744
+ var noTargetGet = options ? !!options.noTargetGet : false;
745
+ var name = options && options.name !== undefined ? options.name : key;
746
+ var state;
747
+ if (isCallable$2(value)) {
748
+ if (String(name).slice(0, 7) === 'Symbol(') {
749
+ name = '[' + String(name).replace(/^Symbol\(([^)]*)\)/, '$1') + ']';
750
+ }
751
+ if (!hasOwn$2(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {
752
+ createNonEnumerableProperty$1(value, 'name', name);
753
+ }
754
+ state = enforceInternalState(value);
755
+ if (!state.source) {
756
+ state.source = TEMPLATE.join(typeof name == 'string' ? name : '');
757
+ }
758
+ }
759
+ if (O === global$3) {
760
+ if (simple) O[key] = value;
761
+ else setGlobal$1(key, value);
762
+ return;
763
+ } else if (!unsafe) {
764
+ delete O[key];
765
+ } else if (!noTargetGet && O[key]) {
766
+ simple = true;
767
+ }
768
+ if (simple) O[key] = value;
769
+ else createNonEnumerableProperty$1(O, key, value);
770
+ // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
771
+ })(Function.prototype, 'toString', function toString() {
772
+ return isCallable$2(this) && getInternalState(this).source || inspectSource(this);
773
+ });
774
+
775
+ var objectGetOwnPropertyNames = {};
776
+
777
+ var ceil = Math.ceil;
778
+ var floor = Math.floor;
779
+
780
+ // `ToIntegerOrInfinity` abstract operation
781
+ // https://tc39.es/ecma262/#sec-tointegerorinfinity
782
+ var toIntegerOrInfinity$2 = function (argument) {
783
+ var number = +argument;
784
+ // eslint-disable-next-line no-self-compare -- safe
785
+ return number !== number || number === 0 ? 0 : (number > 0 ? floor : ceil)(number);
786
+ };
787
+
788
+ var toIntegerOrInfinity$1 = toIntegerOrInfinity$2;
789
+
790
+ var max = Math.max;
791
+ var min$1 = Math.min;
792
+
793
+ // Helper for a popular repeating case of the spec:
794
+ // Let integer be ? ToInteger(index).
795
+ // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
796
+ var toAbsoluteIndex$1 = function (index, length) {
797
+ var integer = toIntegerOrInfinity$1(index);
798
+ return integer < 0 ? max(integer + length, 0) : min$1(integer, length);
799
+ };
800
+
801
+ var toIntegerOrInfinity = toIntegerOrInfinity$2;
802
+
803
+ var min = Math.min;
804
+
805
+ // `ToLength` abstract operation
806
+ // https://tc39.es/ecma262/#sec-tolength
807
+ var toLength$1 = function (argument) {
808
+ return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
809
+ };
810
+
811
+ var toLength = toLength$1;
812
+
813
+ // `LengthOfArrayLike` abstract operation
814
+ // https://tc39.es/ecma262/#sec-lengthofarraylike
815
+ var lengthOfArrayLike$1 = function (obj) {
816
+ return toLength(obj.length);
817
+ };
818
+
819
+ var toIndexedObject$1 = toIndexedObject$3;
820
+ var toAbsoluteIndex = toAbsoluteIndex$1;
821
+ var lengthOfArrayLike = lengthOfArrayLike$1;
822
+
823
+ // `Array.prototype.{ indexOf, includes }` methods implementation
824
+ var createMethod$1 = function (IS_INCLUDES) {
825
+ return function ($this, el, fromIndex) {
826
+ var O = toIndexedObject$1($this);
827
+ var length = lengthOfArrayLike(O);
828
+ var index = toAbsoluteIndex(fromIndex, length);
829
+ var value;
830
+ // Array#includes uses SameValueZero equality algorithm
831
+ // eslint-disable-next-line no-self-compare -- NaN check
832
+ if (IS_INCLUDES && el != el) while (length > index) {
833
+ value = O[index++];
834
+ // eslint-disable-next-line no-self-compare -- NaN check
835
+ if (value != value) return true;
836
+ // Array#indexOf ignores holes, Array#includes - not
837
+ } else for (;length > index; index++) {
838
+ if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
839
+ } return !IS_INCLUDES && -1;
840
+ };
841
+ };
842
+
843
+ var arrayIncludes = {
844
+ // `Array.prototype.includes` method
845
+ // https://tc39.es/ecma262/#sec-array.prototype.includes
846
+ includes: createMethod$1(true),
847
+ // `Array.prototype.indexOf` method
848
+ // https://tc39.es/ecma262/#sec-array.prototype.indexof
849
+ indexOf: createMethod$1(false)
850
+ };
851
+
852
+ var hasOwn$1 = hasOwnProperty_1;
853
+ var toIndexedObject = toIndexedObject$3;
854
+ var indexOf = arrayIncludes.indexOf;
855
+ var hiddenKeys$1 = hiddenKeys$3;
856
+
857
+ var objectKeysInternal = function (object, names) {
858
+ var O = toIndexedObject(object);
859
+ var i = 0;
860
+ var result = [];
861
+ var key;
862
+ for (key in O) !hasOwn$1(hiddenKeys$1, key) && hasOwn$1(O, key) && result.push(key);
863
+ // Don't enum bug & hidden keys
864
+ while (names.length > i) if (hasOwn$1(O, key = names[i++])) {
865
+ ~indexOf(result, key) || result.push(key);
866
+ }
867
+ return result;
868
+ };
869
+
870
+ // IE8- don't enum bug keys
871
+ var enumBugKeys$1 = [
872
+ 'constructor',
873
+ 'hasOwnProperty',
874
+ 'isPrototypeOf',
875
+ 'propertyIsEnumerable',
876
+ 'toLocaleString',
877
+ 'toString',
878
+ 'valueOf'
879
+ ];
880
+
881
+ var internalObjectKeys = objectKeysInternal;
882
+ var enumBugKeys = enumBugKeys$1;
883
+
884
+ var hiddenKeys = enumBugKeys.concat('length', 'prototype');
885
+
886
+ // `Object.getOwnPropertyNames` method
887
+ // https://tc39.es/ecma262/#sec-object.getownpropertynames
888
+ // eslint-disable-next-line es/no-object-getownpropertynames -- safe
889
+ objectGetOwnPropertyNames.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
890
+ return internalObjectKeys(O, hiddenKeys);
891
+ };
892
+
893
+ var objectGetOwnPropertySymbols = {};
894
+
895
+ // eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
896
+ objectGetOwnPropertySymbols.f = Object.getOwnPropertySymbols;
897
+
898
+ var getBuiltIn = getBuiltIn$3;
899
+ var getOwnPropertyNamesModule = objectGetOwnPropertyNames;
900
+ var getOwnPropertySymbolsModule = objectGetOwnPropertySymbols;
901
+ var anObject = anObject$2;
902
+
903
+ // all object keys, includes non-enumerable and symbols
904
+ var ownKeys$1 = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
905
+ var keys = getOwnPropertyNamesModule.f(anObject(it));
906
+ var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
907
+ return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
908
+ };
909
+
910
+ var hasOwn = hasOwnProperty_1;
911
+ var ownKeys = ownKeys$1;
912
+ var getOwnPropertyDescriptorModule = objectGetOwnPropertyDescriptor;
913
+ var definePropertyModule = objectDefineProperty;
914
+
915
+ var copyConstructorProperties$1 = function (target, source) {
916
+ var keys = ownKeys(source);
917
+ var defineProperty = definePropertyModule.f;
918
+ var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
919
+ for (var i = 0; i < keys.length; i++) {
920
+ var key = keys[i];
921
+ if (!hasOwn(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
922
+ }
923
+ };
924
+
925
+ var fails$1 = fails$6;
926
+ var isCallable$1 = isCallable$a;
927
+
928
+ var replacement = /#|\.prototype\./;
929
+
930
+ var isForced$1 = function (feature, detection) {
931
+ var value = data[normalize(feature)];
932
+ return value == POLYFILL ? true
933
+ : value == NATIVE ? false
934
+ : isCallable$1(detection) ? fails$1(detection)
935
+ : !!detection;
936
+ };
937
+
938
+ var normalize = isForced$1.normalize = function (string) {
939
+ return String(string).replace(replacement, '.').toLowerCase();
940
+ };
941
+
942
+ var data = isForced$1.data = {};
943
+ var NATIVE = isForced$1.NATIVE = 'N';
944
+ var POLYFILL = isForced$1.POLYFILL = 'P';
945
+
946
+ var isForced_1 = isForced$1;
947
+
948
+ var global$2 = global$c;
949
+ var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
950
+ var createNonEnumerableProperty = createNonEnumerableProperty$3;
951
+ var redefine = redefine$1.exports;
952
+ var setGlobal = setGlobal$3;
953
+ var copyConstructorProperties = copyConstructorProperties$1;
954
+ var isForced = isForced_1;
955
+
956
+ /*
957
+ options.target - name of the target object
958
+ options.global - target is the global object
959
+ options.stat - export as static methods of target
960
+ options.proto - export as prototype methods of target
961
+ options.real - real prototype method for the `pure` version
962
+ options.forced - export even if the native feature is available
963
+ options.bind - bind methods to the target, required for the `pure` version
964
+ options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
965
+ options.unsafe - use the simple assignment of property instead of delete + defineProperty
966
+ options.sham - add a flag to not completely full polyfills
967
+ options.enumerable - export as enumerable property
968
+ options.noTargetGet - prevent calling a getter on target
969
+ options.name - the .name of the function if it does not match the key
970
+ */
971
+ var _export = function (options, source) {
972
+ var TARGET = options.target;
973
+ var GLOBAL = options.global;
974
+ var STATIC = options.stat;
975
+ var FORCED, target, key, targetProperty, sourceProperty, descriptor;
976
+ if (GLOBAL) {
977
+ target = global$2;
978
+ } else if (STATIC) {
979
+ target = global$2[TARGET] || setGlobal(TARGET, {});
980
+ } else {
981
+ target = (global$2[TARGET] || {}).prototype;
982
+ }
983
+ if (target) for (key in source) {
984
+ sourceProperty = source[key];
985
+ if (options.noTargetGet) {
986
+ descriptor = getOwnPropertyDescriptor(target, key);
987
+ targetProperty = descriptor && descriptor.value;
988
+ } else targetProperty = target[key];
989
+ FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
990
+ // contained in target
991
+ if (!FORCED && targetProperty !== undefined) {
992
+ if (typeof sourceProperty === typeof targetProperty) continue;
993
+ copyConstructorProperties(sourceProperty, targetProperty);
994
+ }
995
+ // add a flag to not completely full polyfills
996
+ if (options.sham || (targetProperty && targetProperty.sham)) {
997
+ createNonEnumerableProperty(sourceProperty, 'sham', true);
998
+ }
999
+ // extend global
1000
+ redefine(target, key, sourceProperty, options);
1001
+ }
1002
+ };
1003
+
1004
+ var wellKnownSymbol$1 = wellKnownSymbol$3;
1005
+
1006
+ var TO_STRING_TAG$1 = wellKnownSymbol$1('toStringTag');
1007
+ var test = {};
1008
+
1009
+ test[TO_STRING_TAG$1] = 'z';
1010
+
1011
+ var toStringTagSupport = String(test) === '[object z]';
1012
+
1013
+ var TO_STRING_TAG_SUPPORT = toStringTagSupport;
1014
+ var isCallable = isCallable$a;
1015
+ var classofRaw = classofRaw$1;
1016
+ var wellKnownSymbol = wellKnownSymbol$3;
1017
+
1018
+ var TO_STRING_TAG = wellKnownSymbol('toStringTag');
1019
+ // ES3 wrong here
1020
+ var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
1021
+
1022
+ // fallback for IE11 Script Access Denied error
1023
+ var tryGet = function (it, key) {
1024
+ try {
1025
+ return it[key];
1026
+ } catch (error) { /* empty */ }
1027
+ };
1028
+
1029
+ // getting tag from ES6+ `Object.prototype.toString`
1030
+ var classof$1 = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
1031
+ var O, tag, result;
1032
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
1033
+ // @@toStringTag case
1034
+ : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag
1035
+ // builtinTag case
1036
+ : CORRECT_ARGUMENTS ? classofRaw(O)
1037
+ // ES3 arguments fallback
1038
+ : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result;
1039
+ };
1040
+
1041
+ var classof = classof$1;
1042
+
1043
+ var toString$2 = function (argument) {
1044
+ if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');
1045
+ return String(argument);
1046
+ };
1047
+
1048
+ // a string of all valid unicode whitespaces
1049
+ var whitespaces$2 = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' +
1050
+ '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
1051
+
1052
+ var requireObjectCoercible = requireObjectCoercible$3;
1053
+ var toString$1 = toString$2;
1054
+ var whitespaces$1 = whitespaces$2;
1055
+
1056
+ var whitespace = '[' + whitespaces$1 + ']';
1057
+ var ltrim = RegExp('^' + whitespace + whitespace + '*');
1058
+ var rtrim = RegExp(whitespace + whitespace + '*$');
1059
+
1060
+ // `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
1061
+ var createMethod = function (TYPE) {
1062
+ return function ($this) {
1063
+ var string = toString$1(requireObjectCoercible($this));
1064
+ if (TYPE & 1) string = string.replace(ltrim, '');
1065
+ if (TYPE & 2) string = string.replace(rtrim, '');
1066
+ return string;
1067
+ };
1068
+ };
1069
+
1070
+ var stringTrim = {
1071
+ // `String.prototype.{ trimLeft, trimStart }` methods
1072
+ // https://tc39.es/ecma262/#sec-string.prototype.trimstart
1073
+ start: createMethod(1),
1074
+ // `String.prototype.{ trimRight, trimEnd }` methods
1075
+ // https://tc39.es/ecma262/#sec-string.prototype.trimend
1076
+ end: createMethod(2),
1077
+ // `String.prototype.trim` method
1078
+ // https://tc39.es/ecma262/#sec-string.prototype.trim
1079
+ trim: createMethod(3)
1080
+ };
1081
+
1082
+ var global$1 = global$c;
1083
+ var fails = fails$6;
1084
+ var toString = toString$2;
1085
+ var trim = stringTrim.trim;
1086
+ var whitespaces = whitespaces$2;
1087
+
1088
+ var $parseInt$1 = global$1.parseInt;
1089
+ var Symbol$1 = global$1.Symbol;
1090
+ var ITERATOR = Symbol$1 && Symbol$1.iterator;
1091
+ var hex = /^[+-]?0x/i;
1092
+ var FORCED = $parseInt$1(whitespaces + '08') !== 8 || $parseInt$1(whitespaces + '0x16') !== 22
1093
+ // MS Edge 18- broken with boxed symbols
1094
+ || (ITERATOR && !fails(function () { $parseInt$1(Object(ITERATOR)); }));
1095
+
1096
+ // `parseInt` method
1097
+ // https://tc39.es/ecma262/#sec-parseint-string-radix
1098
+ var numberParseInt = FORCED ? function parseInt(string, radix) {
1099
+ var S = trim(toString(string));
1100
+ return $parseInt$1(S, (radix >>> 0) || (hex.test(S) ? 16 : 10));
1101
+ } : $parseInt$1;
1102
+
1103
+ var $ = _export;
1104
+ var $parseInt = numberParseInt;
1105
+
1106
+ // `parseInt` method
1107
+ // https://tc39.es/ecma262/#sec-parseint-string-radix
1108
+ $({ global: true, forced: parseInt != $parseInt }, {
1109
+ parseInt: $parseInt
1110
+ });
1111
+
190
1112
  const GERESH = '׳';
191
1113
  const GERSHAYIM = '״';
192
1114
  /**
@@ -268,7 +1190,9 @@ function num2heb(num) {
268
1190
  }
269
1191
  }
270
1192
  /**
271
- *
1193
+ * Converts a numerical value to a string of Hebrew letters
1194
+ * @example
1195
+ * gematriya(5774) // תשע״ד - cropped to 774
272
1196
  * @param {number} number
273
1197
  * @return {string}
274
1198
  */
@@ -437,10 +1361,12 @@ const Locale = {
437
1361
  ordinal: function ordinal(n, locale) {
438
1362
  const locale0 = locale || this.activeName;
439
1363
 
440
- if (!locale0 || locale0 === 'en' || 'ashkenazi' === locale0.substring(0, 9)) {
1364
+ if (!locale0 || locale0 === 'en' || locale0 === 's' || 'ashkenazi' === locale0.substring(0, 9)) {
441
1365
  return this.getEnOrdinal(n);
442
1366
  } else if (locale0 == 'es') {
443
1367
  return n + 'º';
1368
+ } else if (locale0 == 'he') {
1369
+ return String(n);
444
1370
  } else {
445
1371
  return n + '.';
446
1372
  }
@@ -471,26 +1397,6 @@ Locale.addLocale('s', noopLocale);
471
1397
  Locale.addLocale('', noopLocale);
472
1398
  Locale.useLocale('en');
473
1399
 
474
- /*
475
- Hebcal - A Jewish Calendar Generator
476
- Copyright (c) 1994-2020 Danny Sadinoff
477
- Portions copyright Eyal Schachter and Michael J. Radwin
478
-
479
- https://github.com/hebcal/hebcal-es6
480
-
481
- This program is free software; you can redistribute it and/or
482
- modify it under the terms of the GNU General Public License
483
- as published by the Free Software Foundation; either version 2
484
- of the License, or (at your option) any later version.
485
-
486
- This program is distributed in the hope that it will be useful,
487
- but WITHOUT ANY WARRANTY; without even the implied warranty of
488
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
489
- GNU General Public License for more details.
490
-
491
- You should have received a copy of the GNU General Public License
492
- along with this program. If not, see <http://www.gnu.org/licenses/>.
493
- */
494
1400
  const NISAN$2 = 1;
495
1401
  const IYYAR$1 = 2;
496
1402
  const SIVAN$2 = 3;
@@ -564,7 +1470,9 @@ function throwTypeError$2(msg) {
564
1470
  }
565
1471
 
566
1472
  const edCache = Object.create(null);
567
- const EPOCH = -1373428;
1473
+ const EPOCH = -1373428; // Avg year length in the cycle (19 solar years with 235 lunar months)
1474
+
1475
+ const AVG_HEBYEAR_DAYS = 365.24682220597794;
568
1476
  const UNITS_DAY = 'day';
569
1477
  const UNITS_WEEK = 'week';
570
1478
  const UNITS_MONTH = 'month';
@@ -895,8 +1803,9 @@ class HDate$1 {
895
1803
  throw new TypeError("invalid parameter to abs2hebrew ".concat(abs));
896
1804
  }
897
1805
 
898
- const approx = 1 + Math.floor((abs - EPOCH) / 365.24682220597794);
899
- let year = approx - 1;
1806
+ abs = Math.trunc(abs); // first, quickly approximate year
1807
+
1808
+ let year = Math.floor((abs - EPOCH) / AVG_HEBYEAR_DAYS);
900
1809
 
901
1810
  while (HDate$1.newYear(year) <= abs) {
902
1811
  ++year;
@@ -909,7 +1818,7 @@ class HDate$1 {
909
1818
  ++month;
910
1819
  }
911
1820
 
912
- const day = Math.floor(1 + abs - HDate$1.hebrew2abs(year, month, 1));
1821
+ const day = 1 + abs - HDate$1.hebrew2abs(year, month, 1);
913
1822
  return {
914
1823
  yy: year,
915
1824
  mm: month,
@@ -933,21 +1842,23 @@ class HDate$1 {
933
1842
  *
934
1843
  * const hd = new HDate(15, months.CHESHVAN, 5769);
935
1844
  * console.log(hd.render()); // '15th of Cheshvan, 5769'
936
- * console.log(hd.render('he')); // '15 חֶשְׁוָן, 5769'
1845
+ * console.log(hd.render('he')); // '15 חֶשְׁוָן, 5769'
937
1846
  * @param {string} [locale] Optional locale name (defaults to active locale).
1847
+ * @param {boolean} [showYear=true] Display year (defaults to true).
938
1848
  * @return {string}
939
1849
  */
940
1850
 
941
1851
 
942
- render(locale) {
1852
+ render() {
1853
+ let locale = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1854
+ let showYear = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
943
1855
  const locale0 = locale || Locale.getLocaleName();
944
1856
  const day = this.getDate();
945
- const fullYear = this.getFullYear();
946
1857
  const monthName = Locale.gettext(this.getMonthName(), locale);
947
1858
  const nth = Locale.ordinal(day, locale0);
948
1859
  let dayOf = '';
949
1860
 
950
- if (locale0 == 'en' || 'ashkenazi' == locale0.substring(0, 9)) {
1861
+ if (locale0 === 'en' || locale0 === 's' || 'ashkenazi' == locale0.substring(0, 9)) {
951
1862
  dayOf = ' of';
952
1863
  } else {
953
1864
  const ofStr = Locale.lookupTranslation('of', locale0);
@@ -957,7 +1868,14 @@ class HDate$1 {
957
1868
  }
958
1869
  }
959
1870
 
960
- return "".concat(nth).concat(dayOf, " ").concat(monthName, ", ").concat(fullYear);
1871
+ const dateStr = "".concat(nth).concat(dayOf, " ").concat(monthName);
1872
+
1873
+ if (showYear) {
1874
+ const fullYear = this.getFullYear();
1875
+ return "".concat(dateStr, ", ").concat(fullYear);
1876
+ } else {
1877
+ return dateStr;
1878
+ }
961
1879
  }
962
1880
  /**
963
1881
  * Renders this Hebrew date in Hebrew gematriya, regardless of locale.
@@ -1492,22 +2410,11 @@ class HDate$1 {
1492
2410
  }
1493
2411
 
1494
2412
  }
1495
- /**
1496
- * @private
1497
- * @param {number} x
1498
- * @param {number} y
1499
- * @return {number}
1500
- */
1501
-
1502
- function mod(x, y) {
1503
- return x - y * Math.floor(x / y);
1504
- }
1505
2413
  /**
1506
2414
  * @private
1507
2415
  * @param {HDate} date
1508
2416
  */
1509
2417
 
1510
-
1511
2418
  function fix(date) {
1512
2419
  fixMonth(date);
1513
2420
  fixDate(date);
@@ -1862,10 +2769,36 @@ class HebrewDateEvent extends Event {
1862
2769
  render(locale) {
1863
2770
  const locale0 = locale || Locale.getLocaleName();
1864
2771
  const hd = this.getDate();
1865
- return locale0 == 'he' ? hd.renderGematriya() : hd.render(locale0);
2772
+ return locale0 === 'he' ? hd.renderGematriya() : hd.render(locale0, true);
2773
+ }
2774
+ /**
2775
+ * @param {string} [locale] Optional locale name (defaults to active locale).
2776
+ * @example
2777
+ * import {HDate, HebrewDateEvent, months} from '@hebcal/core';
2778
+ *
2779
+ * const hd = new HDate(15, months.CHESHVAN, 5769);
2780
+ * const ev = new HebrewDateEvent(hd);
2781
+ * console.log(ev.renderBrief()); // '15th of Cheshvan'
2782
+ * console.log(ev.renderBrief('he')); // 'ט״ו חֶשְׁוָן'
2783
+ * @return {string}
2784
+ */
2785
+
2786
+
2787
+ renderBrief(locale) {
2788
+ const locale0 = locale || Locale.getLocaleName();
2789
+ const hd = this.getDate();
2790
+
2791
+ if (locale !== 'he') {
2792
+ return hd.render(locale0, false);
2793
+ }
2794
+
2795
+ const dd = hd.getDate();
2796
+ const mm = Locale.gettext(hd.getMonthName(), 'he');
2797
+ return gematriya(dd) + ' ' + mm;
1866
2798
  }
1867
2799
  /**
1868
2800
  * Helper function to render a Hebrew date
2801
+ * @deprecated
1869
2802
  * @param {number} day
1870
2803
  * @param {string} monthName
1871
2804
  * @param {number} fullYear
@@ -3154,7 +4087,8 @@ class Molad {
3154
4087
  m_adj += HDate$1.monthsInYear(year);
3155
4088
  }
3156
4089
 
3157
- const m_elapsed = 235 * Math.floor((year - 1) / 19) + 12 * ((year - 1) % 19) + // Regular months in this cycle
4090
+ const m_elapsed = 235 * Math.floor((year - 1) / 19) + // Months in complete 19 year lunar (Metonic) cycles so far
4091
+ 12 * ((year - 1) % 19) + // Regular months in this cycle
3158
4092
  Math.floor((7 * ((year - 1) % 19) + 1) / 19) + // Leap months this cycle
3159
4093
  m_adj; // add elapsed months till the start of the molad of the month
3160
4094
 
@@ -3292,7 +4226,7 @@ class OmerEvent extends Event {
3292
4226
  const heWeek = Locale.gettext(week, 'he');
3293
4227
  const heDayWithinWeek = Locale.gettext(dayWithinWeek, 'he');
3294
4228
  const hePrefix = 'שֶׁבַּ';
3295
- this.memo = "".concat(dayWithinWeek, " that is in ").concat(week, " / ").concat(heDayWithinWeek, " ").concat(hePrefix).concat(heWeek);
4229
+ this.memo = "".concat(dayWithinWeek, " that is in ").concat(week, " / ").concat(heDayWithinWeek, " ").concat(hePrefix).concat(heWeek).normalize();
3296
4230
  }
3297
4231
  /**
3298
4232
  * @todo use gettext()
@@ -3576,6 +4510,7 @@ class Sedra {
3576
4510
  */
3577
4511
  constructor(hebYr, il) {
3578
4512
  // the Hebrew year
4513
+ hebYr = +hebYr;
3579
4514
  const longC = HDate$1.longCheshvan(hebYr);
3580
4515
  const shortK = HDate$1.shortKislev(hebYr);
3581
4516
  const type = this.type = longC && !shortK ? COMPLETE : !longC && shortK ? INCOMPLETE : REGULAR;
@@ -4000,7 +4935,8 @@ class ParshaEvent extends Event {
4000
4935
  name += hyphen + Locale.gettext(parsha[1], locale);
4001
4936
  }
4002
4937
 
4003
- return Locale.gettext('Parashat', locale) + ' ' + name;
4938
+ const str = Locale.gettext('Parashat', locale) + ' ' + name;
4939
+ return str.normalize();
4004
4940
  }
4005
4941
  /** @return {string} */
4006
4942
 
@@ -4577,38 +5513,18 @@ function getHolidaysForYear(year) {
4577
5513
  return h;
4578
5514
  }
4579
5515
 
4580
- var version="3.26.2";
5516
+ var version="3.26.6";
4581
5517
 
4582
- var headers$1={"plural-forms":"nplurals=2; plural=(n > 1);",language:"en_CA@ashkenazi"};var contexts$1={"":{Berachot:["Berachos"],Shabbat:["Shabbos"],Taanit:["Taanis"],Yevamot:["Yevamos"],Ketubot:["Kesubos"],"Baba Batra":["Baba Basra"],Makkot:["Makkos"],Shevuot:["Shevuos"],Horayot:["Horayos"],Menachot:["Menachos"],Bechorot:["Bechoros"],Keritot:["Kerisos"],Midot:["Midos"],"Achrei Mot":["Achrei Mos"],Bechukotai:["Bechukosai"],"Beha'alotcha":["Beha'aloscha"],Bereshit:["Bereshis"],Chukat:["Chukas"],"Erev Shavuot":["Erev Shavuos"],"Erev Sukkot":["Erev Sukkos"],"Ki Tavo":["Ki Savo"],"Ki Teitzei":["Ki Seitzei"],"Ki Tisa":["Ki Sisa"],Matot:["Matos"],"Purim Katan":["Purim Koton"],Tazria:["Sazria"],"Shabbat Chazon":["Shabbos Chazon"],"Shabbat HaChodesh":["Shabbos HaChodesh"],"Shabbat HaGadol":["Shabbos HaGadol"],"Shabbat Nachamu":["Shabbos Nachamu"],"Shabbat Parah":["Shabbos Parah"],"Shabbat Shekalim":["Shabbos Shekalim"],"Shabbat Shuva":["Shabbos Shuvah"],"Shabbat Zachor":["Shabbos Zachor"],Shavuot:["Shavuos"],"Shavuot I":["Shavuos I"],"Shavuot II":["Shavuos II"],Shemot:["Shemos"],"Shmini Atzeret":["Shmini Atzeres"],"Simchat Torah":["Simchas Torah"],Sukkot:["Sukkos"],"Sukkot I":["Sukkos I"],"Sukkot II":["Sukkos II"],"Sukkot II (CH''M)":["Sukkos II (CH''M)"],"Sukkot III (CH''M)":["Sukkos III (CH''M)"],"Sukkot IV (CH''M)":["Sukkos IV (CH''M)"],"Sukkot V (CH''M)":["Sukkos V (CH''M)"],"Sukkot VI (CH''M)":["Sukkos VI (CH''M)"],"Sukkot VII (Hoshana Raba)":["Sukkos VII (Hoshana Raba)"],"Ta'anit Bechorot":["Ta'anis Bechoros"],"Ta'anit Esther":["Ta'anis Esther"],Toldot:["Toldos"],Vaetchanan:["Vaeschanan"],Yitro:["Yisro"],Parashat:["Parshas"],"Leil Selichot":["Leil Selichos"],"Shabbat Mevarchim Chodesh":["Shabbos Mevorchim Chodesh"],"Shabbat Shirah":["Shabbos Shirah"]}};var poAshkenazi = {headers:headers$1,contexts:contexts$1};
5518
+ var headers$1={"plural-forms":"nplurals=2; plural=(n > 1);",language:"en_CA@ashkenazi"};var contexts$1={"":{Berachot:["Berachos"],Shabbat:["Shabbos"],Taanit:["Taanis"],Yevamot:["Yevamos"],Ketubot:["Kesubos"],"Baba Batra":["Baba Basra"],Makkot:["Makkos"],Shevuot:["Shevuos"],Horayot:["Horayos"],Menachot:["Menachos"],Bechorot:["Bechoros"],Keritot:["Kerisos"],Midot:["Midos"],"Achrei Mot":["Achrei Mos"],Bechukotai:["Bechukosai"],"Beha'alotcha":["Beha'aloscha"],Bereshit:["Bereshis"],Chukat:["Chukas"],"Erev Shavuot":["Erev Shavuos"],"Erev Sukkot":["Erev Sukkos"],"Ki Tavo":["Ki Savo"],"Ki Teitzei":["Ki Seitzei"],"Ki Tisa":["Ki Sisa"],Matot:["Matos"],"Purim Katan":["Purim Koton"],Tazria:["Sazria"],"Shabbat Chazon":["Shabbos Chazon"],"Shabbat HaChodesh":["Shabbos HaChodesh"],"Shabbat HaGadol":["Shabbos HaGadol"],"Shabbat Nachamu":["Shabbos Nachamu"],"Shabbat Parah":["Shabbos Parah"],"Shabbat Shekalim":["Shabbos Shekalim"],"Shabbat Shuva":["Shabbos Shuvah"],"Shabbat Zachor":["Shabbos Zachor"],Shavuot:["Shavuos"],"Shavuot I":["Shavuos I"],"Shavuot II":["Shavuos II"],Shemot:["Shemos"],"Shmini Atzeret":["Shmini Atzeres"],"Simchat Torah":["Simchas Torah"],Sukkot:["Sukkos"],"Sukkot I":["Sukkos I"],"Sukkot II":["Sukkos II"],"Sukkot II (CH''M)":["Sukkos II (CH''M)"],"Sukkot III (CH''M)":["Sukkos III (CH''M)"],"Sukkot IV (CH''M)":["Sukkos IV (CH''M)"],"Sukkot V (CH''M)":["Sukkos V (CH''M)"],"Sukkot VI (CH''M)":["Sukkos VI (CH''M)"],"Sukkot VII (Hoshana Raba)":["Sukkos VII (Hoshana Raba)"],"Ta'anit Bechorot":["Ta'anis Bechoros"],"Ta'anit Esther":["Ta'anis Esther"],Toldot:["Toldos"],Vaetchanan:["Vaeschanan"],Yitro:["Yisro"],"Vezot Haberakhah":["Vezos Haberakhah"],Parashat:["Parshas"],"Leil Selichot":["Leil Selichos"],"Shabbat Mevarchim Chodesh":["Shabbos Mevorchim Chodesh"],"Shabbat Shirah":["Shabbos Shirah"]}};var poAshkenazi = {headers:headers$1,contexts:contexts$1};
4583
5519
 
4584
5520
  Locale.addLocale('ashkenazi', poAshkenazi);
4585
5521
  Locale.addLocale('a', poAshkenazi);
4586
5522
 
4587
- var headers={"plural-forms":"nplurals=2; plural=(n > 1);",language:"he_IL"};var contexts={"":{Berachot:["ברכות"],Shabbat:["שַׁבָּת"],Eruvin:["עירובין"],Pesachim:["פסחים"],Shekalim:["שקלים"],Yoma:["יומא"],Sukkah:["סוכה"],Beitzah:["ביצה"],Taanit:["תענית"],Megillah:["מגילה"],"Moed Katan":["מועד קטן"],Chagigah:["חגיגה"],Yevamot:["יבמות"],Ketubot:["כתובות"],Nedarim:["נדרים"],Nazir:["נזיר"],Sotah:["סוטה"],Gitin:["גיטין"],Kiddushin:["קידושין"],"Baba Kamma":["בבא קמא"],"Baba Metzia":["בבא מציעא"],"Baba Batra":["בבא בתרא"],Sanhedrin:["סנהדרין"],Makkot:["מכות"],Shevuot:["שבועות"],"Avodah Zarah":["עבודה זרה"],Horayot:["הוריות"],Zevachim:["זבחים"],Menachot:["מנחות"],Chullin:["חולין"],Bechorot:["בכורות"],Arachin:["ערכין"],Temurah:["תמורה"],Keritot:["כריתות"],Meilah:["מעילה"],Kinnim:["קינים"],Tamid:["תמיד"],Midot:["מדות"],Niddah:["נדה"],"Daf Yomi: %s %d":["דף יומי: %s %d"],"Daf Yomi":["דף יומי"],Parashat:["פרשת"],"Achrei Mot":["אַחֲרֵי מוֹת"],Balak:["בָּלָק"],Bamidbar:["בְּמִדְבַּר"],Bechukotai:["בְּחֻקֹּתַי"],"Beha'alotcha":["בְּהַעֲלֹתְךָ"],Behar:["בְּהַר"],Bereshit:["בְּרֵאשִׁית"],Beshalach:["בְּשַׁלַּח"],Bo:["בֹּא"],"Chayei Sara":["חַיֵּי שָֹרָה"],Chukat:["חֻקַּת"],Devarim:["דְּבָרִים"],Eikev:["עֵקֶב"],Emor:["אֱמוֹר"],"Ha'Azinu":["הַאֲזִינוּ"],Kedoshim:["קְדשִׁים"],"Ki Tavo":["כִּי־תָבוֹא"],"Ki Teitzei":["כִּי־תֵצֵא"],"Ki Tisa":["כִּי תִשָּׂא"],Korach:["קוֹרַח"],"Lech-Lecha":["לֶךְ־לְךָ"],Masei:["מַסְעֵי"],Matot:["מַּטּוֹת"],Metzora:["מְּצֹרָע"],Miketz:["מִקֵּץ"],Mishpatim:["מִּשְׁפָּטִים"],Nasso:["נָשׂא"],Nitzavim:["נִצָּבִים"],Noach:["נֹחַ"],Pekudei:["פְקוּדֵי"],Pinchas:["פִּינְחָס"],"Re'eh":["רְאֵה"],"Sh'lach":["שְׁלַח־לְךָ"],Shemot:["שְׁמוֹת"],Shmini:["שְּׁמִינִי"],Shoftim:["שׁוֹפְטִים"],Tazria:["תַזְרִיעַ"],Terumah:["תְּרוּמָה"],Tetzaveh:["תְּצַוֶּה"],Toldot:["תּוֹלְדוֹת"],Tzav:["צַו"],Vaera:["וָאֵרָא"],Vaetchanan:["וָאֶתְחַנַּן"],Vayakhel:["וַיַּקְהֵל"],Vayechi:["וַיְחִי"],Vayeilech:["וַיֵּלֶךְ"],Vayera:["וַיֵּרָא"],Vayeshev:["וַיֵּשֶׁב"],Vayetzei:["וַיֵּצֵא"],Vayigash:["וַיִּגַּשׁ"],Vayikra:["וַיִּקְרָא"],Vayishlach:["וַיִּשְׁלַח"],"Vezot Haberakhah":["וְזֹאת הַבְּרָכָה"],Yitro:["יִתְרוֹ"],"Asara B'Tevet":["עֲשָׂרָה בְּטֵבֵת"],"Candle lighting":["הַדלָקָת נֵרוֹת"],Chanukah:["חֲנוּכָּה"],"Chanukah: 1 Candle":["חֲנוּכָּה: א׳ נֵר"],"Chanukah: 2 Candles":["חֲנוּכָּה: ב׳ נֵרוֹת"],"Chanukah: 3 Candles":["חֲנוּכָּה: ג׳ נֵרוֹת"],"Chanukah: 4 Candles":["חֲנוּכָּה: ד׳ נֵרוֹת"],"Chanukah: 5 Candles":["חֲנוּכָּה: ה׳ נֵרוֹת"],"Chanukah: 6 Candles":["חֲנוּכָּה: ו׳ נֵרוֹת"],"Chanukah: 7 Candles":["חֲנוּכָּה: ז׳ נֵרוֹת"],"Chanukah: 8 Candles":["חֲנוּכָּה: ח׳ נֵרוֹת"],"Chanukah: 8th Day":["חֲנוּכָּה: יוֹם ח׳"],"Days of the Omer":["עוֹמֶר"],Omer:["עוֹמֶר"],"day of the Omer":["בָּעוֹמֶר"],"Erev Pesach":["עֶרֶב פֶּסַח"],"Erev Purim":["עֶרֶב פּוּרִים"],"Erev Rosh Hashana":["עֶרֶב רֹאשׁ הַשָּׁנָה"],"Erev Shavuot":["עֶרֶב שָׁבוּעוֹת"],"Erev Simchat Torah":["עֶרֶב שִׂמְחַת תּוֹרָה"],"Erev Sukkot":["עֶרֶב סוּכּוֹת"],"Erev Tish'a B'Av":["עֶרֶב תִּשְׁעָה בְּאָב"],"Erev Yom Kippur":["עֶרֶב יוֹם כִּפּוּר"],Havdalah:["הַבדָלָה"],"Lag BaOmer":["ל״ג בָּעוֹמֶר"],"Leil Selichot":["סליחות"],Pesach:["פֶּסַח"],"Pesach I":["פֶּסַח א׳"],"Pesach II":["פֶּסַח ב׳"],"Pesach II (CH''M)":["פֶּסַח ב׳ (חוה״מ)"],"Pesach III (CH''M)":["פֶּסַח ג׳ (חוה״מ)"],"Pesach IV (CH''M)":["פֶּסַח ד׳ (חוה״מ)"],"Pesach Sheni":["פֶּסַח שני"],"Pesach V (CH''M)":["פֶּסַח ה׳ (חוה״מ)"],"Pesach VI (CH''M)":["פֶּסַח ו׳ (חוה״מ)"],"Pesach VII":["פֶּסַח ז׳"],"Pesach VIII":["פֶּסַח ח׳"],Purim:["פּוּרִים"],"Purim Katan":["פּוּרִים קָטָן"],"Rosh Chodesh %s":["רֹאשׁ חוֹדֶשׁ %s"],"Rosh Chodesh":["רֹאשׁ חוֹדֶשׁ"],Adar:["אַדָר"],"Adar I":["אַדָר א׳"],"Adar II":["אַדָר ב׳"],Av:["אָב"],Cheshvan:["חֶשְׁוָן"],Elul:["אֱלוּל"],Iyyar:["אִיָיר"],Kislev:["כִּסְלֵו"],Nisan:["נִיסָן"],"Sh'vat":["שְׁבָט"],Sivan:["סִיוָן"],Tamuz:["תַּמּוּז"],Tevet:["טֵבֵת"],Tishrei:["תִשְׁרֵי"],"Rosh Hashana":["רֹאשׁ הַשָּׁנָה"],"Rosh Hashana I":["רֹאשׁ הַשָּׁנָה א׳"],"Rosh Hashana II":["רֹאשׁ הַשָּׁנָה ב׳"],"Shabbat Chazon":["שַׁבָּת חֲזוֹן"],"Shabbat HaChodesh":["שַׁבָּת הַחֹדֶשׁ"],"Shabbat HaGadol":["שַׁבָּת הַגָּדוֹל"],"Shabbat Machar Chodesh":["שַׁבָּת מָחָר חוֹדֶשׁ"],"Shabbat Nachamu":["שַׁבָּת נַחֲמוּ"],"Shabbat Parah":["שַׁבָּת פּרה"],"Shabbat Rosh Chodesh":["שַׁבָּת רֹאשׁ חוֹדֶשׁ"],"Shabbat Shekalim":["שַׁבָּת שְׁקָלִים"],"Shabbat Shuva":["שַׁבָּת שׁוּבָה"],"Shabbat Zachor":["שַׁבָּת זָכוֹר"],Shavuot:["שָׁבוּעוֹת"],"Shavuot I":["שָׁבוּעוֹת א׳"],"Shavuot II":["שָׁבוּעוֹת ב׳"],"Shmini Atzeret":["שְׁמִינִי עֲצֶרֶת"],"Shushan Purim":["שׁוּשָׁן פּוּרִים"],Sigd:["סיגד"],"Simchat Torah":["שִׂמְחַת תּוֹרָה"],Sukkot:["סוּכּוֹת"],"Sukkot I":["סוּכּוֹת א׳"],"Sukkot II":["סוּכּוֹת ב׳"],"Sukkot II (CH''M)":["סוּכּוֹת ב׳ (חוה״מ)"],"Sukkot III (CH''M)":["סוּכּוֹת ג׳ (חוה״מ)"],"Sukkot IV (CH''M)":["סוּכּוֹת ד׳ (חוה״מ)"],"Sukkot V (CH''M)":["סוּכּוֹת ה׳ (חוה״מ)"],"Sukkot VI (CH''M)":["סוּכּוֹת ו׳ (חוה״מ)"],"Sukkot VII (Hoshana Raba)":["סוּכּוֹת ז׳ (הוֹשַׁעְנָא רַבָּה)"],"Ta'anit Bechorot":["תַּעֲנִית בְּכוֹרוֹת"],"Ta'anit Esther":["תַּעֲנִית אֶסְתֵּר"],"Tish'a B'Av":["תִּשְׁעָה בְּאָב"],"Tu B'Av":["טוּ בְּאָב"],"Tu BiShvat":["טוּ בִּשְׁבָט"],"Tu B'Shvat":["טוּ בִּשְׁבָט"],"Tzom Gedaliah":["צוֹם גְּדַלְיָה"],"Tzom Tammuz":["צוֹם תָּמוּז"],"Yom HaAtzma'ut":["יוֹם הָעַצְמָאוּת"],"Yom HaShoah":["יוֹם הַשּׁוֹאָה"],"Yom HaZikaron":["יוֹם הַזִּכָּרוֹן"],"Yom Kippur":["יוֹם כִּפּוּר"],"Yom Yerushalayim":["יוֹם יְרוּשָׁלַיִם"],"Yom HaAliyah":["יוֹם העלייה"],"Yom HaAliyah School Observance":["שמירת בית הספר ליום העלייה"],"Pesach I (on Shabbat)":["פֶּסַח יוֹם א׳ (בְּשַׁבָּת)"],"Pesach Chol ha-Moed Day 1":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם א׳"],"Pesach Chol ha-Moed Day 2":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם ב׳"],"Pesach Chol ha-Moed Day 3":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם ג׳"],"Pesach Chol ha-Moed Day 4":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם ד׳"],"Pesach Chol ha-Moed Day 5":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם ה׳"],"Pesach Shabbat Chol ha-Moed":["פֶּסַח שַׁבָּת חוֹל הַמּוֹעֵד"],"Shavuot II (on Shabbat)":["שָׁבוּעוֹת יוֹם ב׳ (בְּשַׁבָּת)"],"Rosh Hashana I (on Shabbat)":["רֹאשׁ הַשָּׁנָה יוֹם א׳ (בְּשַׁבָּת)"],"Yom Kippur (on Shabbat)":["יוֹם כִּפּוּר (בְּשַׁבָּת)"],"Yom Kippur (Mincha, Traditional)":["יוֹם כִּפּוּר מנחה"],"Yom Kippur (Mincha, Alternate)":["יוֹם כִּפּוּר מנחה"],"Sukkot I (on Shabbat)":["סוּכּוֹת יוֹם א׳ (בְּשַׁבָּת)"],"Sukkot Chol ha-Moed Day 1":["סוּכּוֹת יוֹם ג׳ (חוֹל הַמּוֹעֵד)"],"Sukkot Chol ha-Moed Day 2":["סוּכּוֹת יוֹם ד׳ (חוֹל הַמּוֹעֵד)"],"Sukkot Chol ha-Moed Day 3":["סוּכּוֹת יוֹם ה׳ (חוֹל הַמּוֹעֵד)"],"Sukkot Chol ha-Moed Day 4":["סוּכּוֹת יוֹם ו׳ (חוֹל הַמּוֹעֵד)"],"Sukkot Shabbat Chol ha-Moed":["סוּכּוֹת שַׁבָּת חוֹל הַמּוֹעֵד"],"Sukkot Final Day (Hoshana Raba)":["סוּכּוֹת ז׳ (הוֹשַׁעְנָא רַבָּה)"],"Rosh Chodesh Adar":["רֹאשׁ חוֹדֶשׁ אַדָר"],"Rosh Chodesh Adar I":["רֹאשׁ חוֹדֶשׁ אַדָר א׳"],"Rosh Chodesh Adar II":["רֹאשׁ חוֹדֶשׁ אַדָר ב׳"],"Rosh Chodesh Av":["רֹאשׁ חוֹדֶשׁ אָב"],"Rosh Chodesh Cheshvan":["רֹאשׁ חוֹדֶשׁ חֶשְׁוָן"],"Rosh Chodesh Elul":["רֹאשׁ חוֹדֶשׁ אֱלוּל"],"Rosh Chodesh Iyyar":["רֹאשׁ חוֹדֶשׁ אִיָיר"],"Rosh Chodesh Kislev":["רֹאשׁ חוֹדֶשׁ כִּסְלֵו"],"Rosh Chodesh Nisan":["רֹאשׁ חוֹדֶשׁ נִיסָן"],"Rosh Chodesh Sh'vat":["רֹאשׁ חוֹדֶשׁ שְׁבָט"],"Rosh Chodesh Sivan":["רֹאשׁ חוֹדֶשׁ סִיוָן"],"Rosh Chodesh Tamuz":["רֹאשׁ חוֹדֶשׁ תָּמוּז"],"Rosh Chodesh Tevet":["רֹאשׁ חוֹדֶשׁ טֵבֵת"],min:["דקות"],"Fast begins":["תחילת הַצוֹם"],"Fast ends":["סִיּוּם הַצוֹם"],"Rosh Hashana LaBehemot":["רֹאשׁ הַשָּׁנָה לְמַעְשַׂר בְּהֵמָה"],"Tish'a B'Av (observed)":["תִּשְׁעָה בְּאָב נִדחֶה"],"Shabbat Mevarchim Chodesh":["שַׁבָּת מברכים חוֹדֶשׁ"],"Shabbat Shirah":["שַׁבָּת שִׁירָה"],chatzotNight:["חֲצוֹת הַלַיְלָה"],alotHaShachar:["עֲלוֹת הַשַּׁחַר"],misheyakir:["משיכיר - זמן ציצית ותפילין"],misheyakirMachmir:["משיכיר - זמן ציצית ותפילין"],neitzHaChama:["הַנֵץ הַחַמָּה"],sofZmanShma:["סוֹף זְמַן קְרִיאַת שְׁמַע גר״א"],sofZmanTfilla:["סוֹף זְמַן תְּפִלָּה גר״א"],chatzot:["חֲצוֹת הַיּוֹם"],minchaGedola:["מִנְחָה גְּדוֹלָה"],minchaKetana:["מִנְחָה קְטַנָּה"],plagHaMincha:["פְּלַג הַמִּנְחָה"],shkiah:["שְׁקִיעָה"],tzeit:["צֵאת כוכבים"],Lovingkindness:["חֶֽסֶד"],Might:["גְבוּרָה"],Beauty:["תִּפאֶרֶת"],Eternity:["נֶּֽצַח"],Splendor:["הוֹד"],Foundation:["יְּסוֹד"],Majesty:["מַּלְכוּת"]}};var poHe = {headers:headers,contexts:contexts};
5523
+ var headers={"plural-forms":"nplurals=2; plural=(n > 1);",language:"he_IL"};var contexts={"":{Berachot:["ברכות"],Shabbat:["שַׁבָּת"],Eruvin:["עירובין"],Pesachim:["פסחים"],Shekalim:["שקלים"],Yoma:["יומא"],Sukkah:["סוכה"],Beitzah:["ביצה"],Taanit:["תענית"],Megillah:["מגילה"],"Moed Katan":["מועד קטן"],Chagigah:["חגיגה"],Yevamot:["יבמות"],Ketubot:["כתובות"],Nedarim:["נדרים"],Nazir:["נזיר"],Sotah:["סוטה"],Gitin:["גיטין"],Kiddushin:["קידושין"],"Baba Kamma":["בבא קמא"],"Baba Metzia":["בבא מציעא"],"Baba Batra":["בבא בתרא"],Sanhedrin:["סנהדרין"],Makkot:["מכות"],Shevuot:["שבועות"],"Avodah Zarah":["עבודה זרה"],Horayot:["הוריות"],Zevachim:["זבחים"],Menachot:["מנחות"],Chullin:["חולין"],Bechorot:["בכורות"],Arachin:["ערכין"],Temurah:["תמורה"],Keritot:["כריתות"],Meilah:["מעילה"],Kinnim:["קינים"],Tamid:["תמיד"],Midot:["מדות"],Niddah:["נדה"],"Daf Yomi: %s %d":["דף יומי: %s %d"],"Daf Yomi":["דף יומי"],Parashat:["פָּרָשַׁת"],"Achrei Mot":["אַחֲרֵי מוֹת"],Balak:["בָּלָק"],Bamidbar:["בְּמִדְבַּר"],Bechukotai:["בְּחֻקֹּתַי"],"Beha'alotcha":["בְּהַעֲלֹתְךָ"],Behar:["בְּהַר"],Bereshit:["בְּרֵאשִׁית"],Beshalach:["בְּשַׁלַּח"],Bo:["בֹּא"],"Chayei Sara":["חַיֵּי שָֹרָה"],Chukat:["חֻקַּת"],Devarim:["דְּבָרִים"],Eikev:["עֵקֶב"],Emor:["אֱמוֹר"],"Ha'Azinu":["הַאֲזִינוּ"],Kedoshim:["קְדשִׁים"],"Ki Tavo":["כִּי־תָבוֹא"],"Ki Teitzei":["כִּי־תֵצֵא"],"Ki Tisa":["כִּי תִשָּׂא"],Korach:["קוֹרַח"],"Lech-Lecha":["לֶךְ־לְךָ"],Masei:["מַסְעֵי"],Matot:["מַּטּוֹת"],Metzora:["מְּצֹרָע"],Miketz:["מִקֵּץ"],Mishpatim:["מִּשְׁפָּטִים"],Nasso:["נָשׂא"],Nitzavim:["נִצָּבִים"],Noach:["נֹחַ"],Pekudei:["פְקוּדֵי"],Pinchas:["פִּינְחָס"],"Re'eh":["רְאֵה"],"Sh'lach":["שְׁלַח־לְךָ"],Shemot:["שְׁמוֹת"],Shmini:["שְּׁמִינִי"],Shoftim:["שׁוֹפְטִים"],Tazria:["תַזְרִיעַ"],Terumah:["תְּרוּמָה"],Tetzaveh:["תְּצַוֶּה"],Toldot:["תּוֹלְדוֹת"],Tzav:["צַו"],Vaera:["וָאֵרָא"],Vaetchanan:["וָאֶתְחַנַּן"],Vayakhel:["וַיַּקְהֵל"],Vayechi:["וַיְחִי"],Vayeilech:["וַיֵּלֶךְ"],Vayera:["וַיֵּרָא"],Vayeshev:["וַיֵּשֶׁב"],Vayetzei:["וַיֵּצֵא"],Vayigash:["וַיִּגַּשׁ"],Vayikra:["וַיִּקְרָא"],Vayishlach:["וַיִּשְׁלַח"],"Vezot Haberakhah":["וְזֹאת הַבְּרָכָה"],Yitro:["יִתְרוֹ"],"Asara B'Tevet":["עֲשָׂרָה בְּטֵבֵת"],"Candle lighting":["הַדלָקָת נֵרוֹת"],Chanukah:["חֲנוּכָּה"],"Chanukah: 1 Candle":["חֲנוּכָּה: א׳ נֵר"],"Chanukah: 2 Candles":["חֲנוּכָּה: ב׳ נֵרוֹת"],"Chanukah: 3 Candles":["חֲנוּכָּה: ג׳ נֵרוֹת"],"Chanukah: 4 Candles":["חֲנוּכָּה: ד׳ נֵרוֹת"],"Chanukah: 5 Candles":["חֲנוּכָּה: ה׳ נֵרוֹת"],"Chanukah: 6 Candles":["חֲנוּכָּה: ו׳ נֵרוֹת"],"Chanukah: 7 Candles":["חֲנוּכָּה: ז׳ נֵרוֹת"],"Chanukah: 8 Candles":["חֲנוּכָּה: ח׳ נֵרוֹת"],"Chanukah: 8th Day":["חֲנוּכָּה: יוֹם ח׳"],"Days of the Omer":["עוֹמֶר"],Omer:["עוֹמֶר"],"day of the Omer":["בָּעוֹמֶר"],"Erev Pesach":["עֶרֶב פֶּסַח"],"Erev Purim":["עֶרֶב פּוּרִים"],"Erev Rosh Hashana":["עֶרֶב רֹאשׁ הַשָּׁנָה"],"Erev Shavuot":["עֶרֶב שָׁבוּעוֹת"],"Erev Simchat Torah":["עֶרֶב שִׂמְחַת תּוֹרָה"],"Erev Sukkot":["עֶרֶב סוּכּוֹת"],"Erev Tish'a B'Av":["עֶרֶב תִּשְׁעָה בְּאָב"],"Erev Yom Kippur":["עֶרֶב יוֹם כִּפּוּר"],Havdalah:["הַבדָלָה"],"Lag BaOmer":["ל״ג בָּעוֹמֶר"],"Leil Selichot":["סליחות"],Pesach:["פֶּסַח"],"Pesach I":["פֶּסַח א׳"],"Pesach II":["פֶּסַח ב׳"],"Pesach II (CH''M)":["פֶּסַח ב׳ (חוה״מ)"],"Pesach III (CH''M)":["פֶּסַח ג׳ (חוה״מ)"],"Pesach IV (CH''M)":["פֶּסַח ד׳ (חוה״מ)"],"Pesach Sheni":["פֶּסַח שני"],"Pesach V (CH''M)":["פֶּסַח ה׳ (חוה״מ)"],"Pesach VI (CH''M)":["פֶּסַח ו׳ (חוה״מ)"],"Pesach VII":["פֶּסַח ז׳"],"Pesach VIII":["פֶּסַח ח׳"],Purim:["פּוּרִים"],"Purim Katan":["פּוּרִים קָטָן"],"Rosh Chodesh %s":["רֹאשׁ חוֹדֶשׁ %s"],"Rosh Chodesh":["רֹאשׁ חוֹדֶשׁ"],Adar:["אַדָר"],"Adar I":["אַדָר א׳"],"Adar II":["אַדָר ב׳"],Av:["אָב"],Cheshvan:["חֶשְׁוָן"],Elul:["אֱלוּל"],Iyyar:["אִיָיר"],Kislev:["כִּסְלֵו"],Nisan:["נִיסָן"],"Sh'vat":["שְׁבָט"],Sivan:["סִיוָן"],Tamuz:["תַּמּוּז"],Tevet:["טֵבֵת"],Tishrei:["תִשְׁרֵי"],"Rosh Hashana":["רֹאשׁ הַשָּׁנָה"],"Rosh Hashana I":["רֹאשׁ הַשָּׁנָה א׳"],"Rosh Hashana II":["רֹאשׁ הַשָּׁנָה ב׳"],"Shabbat Chazon":["שַׁבָּת חֲזוֹן"],"Shabbat HaChodesh":["שַׁבָּת הַחֹדֶשׁ"],"Shabbat HaGadol":["שַׁבָּת הַגָּדוֹל"],"Shabbat Machar Chodesh":["שַׁבָּת מָחָר חוֹדֶשׁ"],"Shabbat Nachamu":["שַׁבָּת נַחֲמוּ"],"Shabbat Parah":["שַׁבָּת פּרה"],"Shabbat Rosh Chodesh":["שַׁבָּת רֹאשׁ חוֹדֶשׁ"],"Shabbat Shekalim":["שַׁבָּת שְׁקָלִים"],"Shabbat Shuva":["שַׁבָּת שׁוּבָה"],"Shabbat Zachor":["שַׁבָּת זָכוֹר"],Shavuot:["שָׁבוּעוֹת"],"Shavuot I":["שָׁבוּעוֹת א׳"],"Shavuot II":["שָׁבוּעוֹת ב׳"],"Shmini Atzeret":["שְׁמִינִי עֲצֶרֶת"],"Shushan Purim":["שׁוּשָׁן פּוּרִים"],Sigd:["סיגד"],"Simchat Torah":["שִׂמְחַת תּוֹרָה"],Sukkot:["סוּכּוֹת"],"Sukkot I":["סוּכּוֹת א׳"],"Sukkot II":["סוּכּוֹת ב׳"],"Sukkot II (CH''M)":["סוּכּוֹת ב׳ (חוה״מ)"],"Sukkot III (CH''M)":["סוּכּוֹת ג׳ (חוה״מ)"],"Sukkot IV (CH''M)":["סוּכּוֹת ד׳ (חוה״מ)"],"Sukkot V (CH''M)":["סוּכּוֹת ה׳ (חוה״מ)"],"Sukkot VI (CH''M)":["סוּכּוֹת ו׳ (חוה״מ)"],"Sukkot VII (Hoshana Raba)":["סוּכּוֹת ז׳ (הוֹשַׁעְנָא רַבָּה)"],"Ta'anit Bechorot":["תַּעֲנִית בְּכוֹרוֹת"],"Ta'anit Esther":["תַּעֲנִית אֶסְתֵּר"],"Tish'a B'Av":["תִּשְׁעָה בְּאָב"],"Tu B'Av":["טוּ בְּאָב"],"Tu BiShvat":["טוּ בִּשְׁבָט"],"Tu B'Shvat":["טוּ בִּשְׁבָט"],"Tzom Gedaliah":["צוֹם גְּדַלְיָה"],"Tzom Tammuz":["צוֹם תָּמוּז"],"Yom HaAtzma'ut":["יוֹם הָעַצְמָאוּת"],"Yom HaShoah":["יוֹם הַשּׁוֹאָה"],"Yom HaZikaron":["יוֹם הַזִּכָּרוֹן"],"Yom Kippur":["יוֹם כִּפּוּר"],"Yom Yerushalayim":["יוֹם יְרוּשָׁלַיִם"],"Yom HaAliyah":["יוֹם העלייה"],"Yom HaAliyah School Observance":["שמירת בית הספר ליום העלייה"],"Pesach I (on Shabbat)":["פֶּסַח יוֹם א׳ (בְּשַׁבָּת)"],"Pesach Chol ha-Moed Day 1":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם א׳"],"Pesach Chol ha-Moed Day 2":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם ב׳"],"Pesach Chol ha-Moed Day 3":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם ג׳"],"Pesach Chol ha-Moed Day 4":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם ד׳"],"Pesach Chol ha-Moed Day 5":["פֶּסַח חוֹל הַמּוֹעֵד יוֹם ה׳"],"Pesach Shabbat Chol ha-Moed":["פֶּסַח שַׁבָּת חוֹל הַמּוֹעֵד"],"Shavuot II (on Shabbat)":["שָׁבוּעוֹת יוֹם ב׳ (בְּשַׁבָּת)"],"Rosh Hashana I (on Shabbat)":["רֹאשׁ הַשָּׁנָה יוֹם א׳ (בְּשַׁבָּת)"],"Yom Kippur (on Shabbat)":["יוֹם כִּפּוּר (בְּשַׁבָּת)"],"Yom Kippur (Mincha, Traditional)":["יוֹם כִּפּוּר מנחה"],"Yom Kippur (Mincha, Alternate)":["יוֹם כִּפּוּר מנחה"],"Sukkot I (on Shabbat)":["סוּכּוֹת יוֹם א׳ (בְּשַׁבָּת)"],"Sukkot Chol ha-Moed Day 1":["סוּכּוֹת יוֹם ג׳ (חוֹל הַמּוֹעֵד)"],"Sukkot Chol ha-Moed Day 2":["סוּכּוֹת יוֹם ד׳ (חוֹל הַמּוֹעֵד)"],"Sukkot Chol ha-Moed Day 3":["סוּכּוֹת יוֹם ה׳ (חוֹל הַמּוֹעֵד)"],"Sukkot Chol ha-Moed Day 4":["סוּכּוֹת יוֹם ו׳ (חוֹל הַמּוֹעֵד)"],"Sukkot Shabbat Chol ha-Moed":["סוּכּוֹת שַׁבָּת חוֹל הַמּוֹעֵד"],"Sukkot Final Day (Hoshana Raba)":["סוּכּוֹת ז׳ (הוֹשַׁעְנָא רַבָּה)"],"Rosh Chodesh Adar":["רֹאשׁ חוֹדֶשׁ אַדָר"],"Rosh Chodesh Adar I":["רֹאשׁ חוֹדֶשׁ אַדָר א׳"],"Rosh Chodesh Adar II":["רֹאשׁ חוֹדֶשׁ אַדָר ב׳"],"Rosh Chodesh Av":["רֹאשׁ חוֹדֶשׁ אָב"],"Rosh Chodesh Cheshvan":["רֹאשׁ חוֹדֶשׁ חֶשְׁוָן"],"Rosh Chodesh Elul":["רֹאשׁ חוֹדֶשׁ אֱלוּל"],"Rosh Chodesh Iyyar":["רֹאשׁ חוֹדֶשׁ אִיָיר"],"Rosh Chodesh Kislev":["רֹאשׁ חוֹדֶשׁ כִּסְלֵו"],"Rosh Chodesh Nisan":["רֹאשׁ חוֹדֶשׁ נִיסָן"],"Rosh Chodesh Sh'vat":["רֹאשׁ חוֹדֶשׁ שְׁבָט"],"Rosh Chodesh Sivan":["רֹאשׁ חוֹדֶשׁ סִיוָן"],"Rosh Chodesh Tamuz":["רֹאשׁ חוֹדֶשׁ תָּמוּז"],"Rosh Chodesh Tevet":["רֹאשׁ חוֹדֶשׁ טֵבֵת"],min:["דקות"],"Fast begins":["תחילת הַצוֹם"],"Fast ends":["סִיּוּם הַצוֹם"],"Rosh Hashana LaBehemot":["רֹאשׁ הַשָּׁנָה לְמַעְשַׂר בְּהֵמָה"],"Tish'a B'Av (observed)":["תִּשְׁעָה בְּאָב נִדחֶה"],"Shabbat Mevarchim Chodesh":["שַׁבָּת מברכים חוֹדֶשׁ"],"Shabbat Shirah":["שַׁבָּת שִׁירָה"],chatzotNight:["חֲצוֹת הַלַיְלָה"],alotHaShachar:["עֲלוֹת הַשַּׁחַר"],misheyakir:["משיכיר - זמן ציצית ותפילין"],misheyakirMachmir:["משיכיר - זמן ציצית ותפילין"],neitzHaChama:["הַנֵץ הַחַמָּה"],sofZmanShma:["סוֹף זְמַן קְרִיאַת שְׁמַע גר״א"],sofZmanTfilla:["סוֹף זְמַן תְּפִלָּה גר״א"],chatzot:["חֲצוֹת הַיּוֹם"],minchaGedola:["מִנְחָה גְּדוֹלָה"],minchaKetana:["מִנְחָה קְטַנָּה"],plagHaMincha:["פְּלַג הַמִּנְחָה"],shkiah:["שְׁקִיעָה"],tzeit:["צֵאת כוכבים"],Lovingkindness:["חֶֽסֶד"],Might:["גְבוּרָה"],Beauty:["תִּפאֶרֶת"],Eternity:["נֶּֽצַח"],Splendor:["הוֹד"],Foundation:["יְּסוֹד"],Majesty:["מַּלְכוּת"]}};var poHe = {headers:headers,contexts:contexts};
4588
5524
 
4589
5525
  Locale.addLocale('he', poHe);
4590
5526
  Locale.addLocale('h', poHe);
4591
5527
 
4592
- /*
4593
- Hebcal - A Jewish Calendar Generator
4594
- Copyright (c) 1994-2020 Danny Sadinoff
4595
- Portions copyright Eyal Schachter and Michael J. Radwin
4596
-
4597
- https://github.com/hebcal/hebcal-es6
4598
-
4599
- This program is free software; you can redistribute it and/or
4600
- modify it under the terms of the GNU General Public License
4601
- as published by the Free Software Foundation; either version 2
4602
- of the License, or (at your option) any later version.
4603
-
4604
- This program is distributed in the hope that it will be useful,
4605
- but WITHOUT ANY WARRANTY; without even the implied warranty of
4606
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4607
- GNU General Public License for more details.
4608
-
4609
- You should have received a copy of the GNU General Public License
4610
- along with this program. If not, see <http://www.gnu.org/licenses/>.
4611
- */
4612
5528
  const FRI = 5;
4613
5529
  const SAT = 6;
4614
5530
  const NISAN = months.NISAN; // const IYYAR = months.IYYAR;
@@ -5504,4 +6420,4 @@ Object.defineProperty(exports, '__esModule', { value: true });
5504
6420
 
5505
6421
  return exports;
5506
6422
 
5507
- }({}));
6423
+ })({});