@hebcal/rest-api 3.13.2 → 3.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bundle.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! @hebcal/rest-api v3.13.2 */
1
+ /*! @hebcal/rest-api v3.14.0 */
2
2
  var hebcal__rest_api = (function (exports, core, leyn) {
3
3
  'use strict';
4
4
 
@@ -41,7 +41,7 @@ var global$C =
41
41
 
42
42
  var objectGetOwnPropertyDescriptor = {};
43
43
 
44
- var fails$g = function (exec) {
44
+ var fails$h = function (exec) {
45
45
  try {
46
46
  return !!exec();
47
47
  } catch (error) {
@@ -49,17 +49,17 @@ var fails$g = function (exec) {
49
49
  }
50
50
  };
51
51
 
52
- var fails$f = fails$g;
52
+ var fails$g = fails$h;
53
53
 
54
54
  // Detect IE8's incomplete defineProperty implementation
55
- var descriptors = !fails$f(function () {
55
+ var descriptors = !fails$g(function () {
56
56
  // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing
57
57
  return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
58
58
  });
59
59
 
60
- var fails$e = fails$g;
60
+ var fails$f = fails$h;
61
61
 
62
- var functionBindNative = !fails$e(function () {
62
+ var functionBindNative = !fails$f(function () {
63
63
  // eslint-disable-next-line es-x/no-function-prototype-bind -- safe
64
64
  var test = (function () { /* empty */ }).bind();
65
65
  // eslint-disable-next-line no-prototype-builtins -- safe
@@ -125,14 +125,14 @@ var classofRaw$1 = function (it) {
125
125
 
126
126
  var global$B = global$C;
127
127
  var uncurryThis$h = functionUncurryThis;
128
- var fails$d = fails$g;
128
+ var fails$e = fails$h;
129
129
  var classof$6 = classofRaw$1;
130
130
 
131
131
  var Object$5 = global$B.Object;
132
132
  var split$3 = uncurryThis$h(''.split);
133
133
 
134
134
  // fallback for non-array-like ES3 and non-enumerable old V8 strings
135
- var indexedObject = fails$d(function () {
135
+ var indexedObject = fails$e(function () {
136
136
  // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
137
137
  // eslint-disable-next-line no-prototype-builtins -- safe
138
138
  return !Object$5('z').propertyIsEnumerable(0);
@@ -161,21 +161,21 @@ var toIndexedObject$5 = function (it) {
161
161
 
162
162
  // `IsCallable` abstract operation
163
163
  // https://tc39.es/ecma262/#sec-iscallable
164
- var isCallable$g = function (argument) {
164
+ var isCallable$h = function (argument) {
165
165
  return typeof argument == 'function';
166
166
  };
167
167
 
168
- var isCallable$f = isCallable$g;
168
+ var isCallable$g = isCallable$h;
169
169
 
170
170
  var isObject$7 = function (it) {
171
- return typeof it == 'object' ? it !== null : isCallable$f(it);
171
+ return typeof it == 'object' ? it !== null : isCallable$g(it);
172
172
  };
173
173
 
174
174
  var global$z = global$C;
175
- var isCallable$e = isCallable$g;
175
+ var isCallable$f = isCallable$h;
176
176
 
177
177
  var aFunction = function (argument) {
178
- return isCallable$e(argument) ? argument : undefined;
178
+ return isCallable$f(argument) ? argument : undefined;
179
179
  };
180
180
 
181
181
  var getBuiltIn$5 = function (namespace, method) {
@@ -221,10 +221,10 @@ var engineV8Version = version;
221
221
  /* eslint-disable es-x/no-symbol -- required for testing */
222
222
 
223
223
  var V8_VERSION = engineV8Version;
224
- var fails$c = fails$g;
224
+ var fails$d = fails$h;
225
225
 
226
226
  // eslint-disable-next-line es-x/no-object-getownpropertysymbols -- required for testing
227
- var nativeSymbol = !!Object.getOwnPropertySymbols && !fails$c(function () {
227
+ var nativeSymbol = !!Object.getOwnPropertySymbols && !fails$d(function () {
228
228
  var symbol = Symbol();
229
229
  // Chrome 38 Symbol has incorrect toString conversion
230
230
  // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
@@ -243,7 +243,7 @@ var useSymbolAsUid = NATIVE_SYMBOL$1
243
243
 
244
244
  var global$x = global$C;
245
245
  var getBuiltIn$3 = getBuiltIn$5;
246
- var isCallable$d = isCallable$g;
246
+ var isCallable$e = isCallable$h;
247
247
  var isPrototypeOf$2 = objectIsPrototypeOf;
248
248
  var USE_SYMBOL_AS_UID$1 = useSymbolAsUid;
249
249
 
@@ -253,7 +253,7 @@ var isSymbol$2 = USE_SYMBOL_AS_UID$1 ? function (it) {
253
253
  return typeof it == 'symbol';
254
254
  } : function (it) {
255
255
  var $Symbol = getBuiltIn$3('Symbol');
256
- return isCallable$d($Symbol) && isPrototypeOf$2($Symbol.prototype, Object$4(it));
256
+ return isCallable$e($Symbol) && isPrototypeOf$2($Symbol.prototype, Object$4(it));
257
257
  };
258
258
 
259
259
  var global$w = global$C;
@@ -269,14 +269,14 @@ var tryToString$2 = function (argument) {
269
269
  };
270
270
 
271
271
  var global$v = global$C;
272
- var isCallable$c = isCallable$g;
272
+ var isCallable$d = isCallable$h;
273
273
  var tryToString$1 = tryToString$2;
274
274
 
275
275
  var TypeError$d = global$v.TypeError;
276
276
 
277
277
  // `Assert: IsCallable(argument) is true`
278
278
  var aCallable$3 = function (argument) {
279
- if (isCallable$c(argument)) return argument;
279
+ if (isCallable$d(argument)) return argument;
280
280
  throw TypeError$d(tryToString$1(argument) + ' is not a function');
281
281
  };
282
282
 
@@ -291,7 +291,7 @@ var getMethod$3 = function (V, P) {
291
291
 
292
292
  var global$u = global$C;
293
293
  var call$a = functionCall;
294
- var isCallable$b = isCallable$g;
294
+ var isCallable$c = isCallable$h;
295
295
  var isObject$6 = isObject$7;
296
296
 
297
297
  var TypeError$c = global$u.TypeError;
@@ -300,9 +300,9 @@ var TypeError$c = global$u.TypeError;
300
300
  // https://tc39.es/ecma262/#sec-ordinarytoprimitive
301
301
  var ordinaryToPrimitive$1 = function (input, pref) {
302
302
  var fn, val;
303
- if (pref === 'string' && isCallable$b(fn = input.toString) && !isObject$6(val = call$a(fn, input))) return val;
304
- if (isCallable$b(fn = input.valueOf) && !isObject$6(val = call$a(fn, input))) return val;
305
- if (pref !== 'string' && isCallable$b(fn = input.toString) && !isObject$6(val = call$a(fn, input))) return val;
303
+ if (pref === 'string' && isCallable$c(fn = input.toString) && !isObject$6(val = call$a(fn, input))) return val;
304
+ if (isCallable$c(fn = input.valueOf) && !isObject$6(val = call$a(fn, input))) return val;
305
+ if (pref !== 'string' && isCallable$c(fn = input.toString) && !isObject$6(val = call$a(fn, input))) return val;
306
306
  throw TypeError$c("Can't convert object to primitive value");
307
307
  };
308
308
 
@@ -313,11 +313,11 @@ var isPure = false;
313
313
  var global$t = global$C;
314
314
 
315
315
  // eslint-disable-next-line es-x/no-object-defineproperty -- safe
316
- var defineProperty$3 = Object.defineProperty;
316
+ var defineProperty$5 = Object.defineProperty;
317
317
 
318
318
  var setGlobal$3 = function (key, value) {
319
319
  try {
320
- defineProperty$3(global$t, key, { value: value, configurable: true, writable: true });
320
+ defineProperty$5(global$t, key, { value: value, configurable: true, writable: true });
321
321
  } catch (error) {
322
322
  global$t[key] = value;
323
323
  } return value;
@@ -336,10 +336,10 @@ var store$2 = sharedStore;
336
336
  (shared$4.exports = function (key, value) {
337
337
  return store$2[key] || (store$2[key] = value !== undefined ? value : {});
338
338
  })('versions', []).push({
339
- version: '3.22.2',
339
+ version: '3.22.4',
340
340
  mode: 'global',
341
341
  copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',
342
- license: 'https://github.com/zloirock/core-js/blob/v3.22.2/LICENSE',
342
+ license: 'https://github.com/zloirock/core-js/blob/v3.22.4/LICENSE',
343
343
  source: 'https://github.com/zloirock/core-js'
344
344
  });
345
345
 
@@ -450,11 +450,11 @@ var documentCreateElement$2 = function (it) {
450
450
  };
451
451
 
452
452
  var DESCRIPTORS$a = descriptors;
453
- var fails$b = fails$g;
453
+ var fails$c = fails$h;
454
454
  var createElement = documentCreateElement$2;
455
455
 
456
456
  // Thanks to IE8 for its funny defineProperty
457
- var ie8DomDefine = !DESCRIPTORS$a && !fails$b(function () {
457
+ var ie8DomDefine = !DESCRIPTORS$a && !fails$c(function () {
458
458
  // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing
459
459
  return Object.defineProperty(createElement('div'), 'a', {
460
460
  get: function () { return 7; }
@@ -487,11 +487,11 @@ objectGetOwnPropertyDescriptor.f = DESCRIPTORS$9 ? $getOwnPropertyDescriptor$1 :
487
487
  var objectDefineProperty = {};
488
488
 
489
489
  var DESCRIPTORS$8 = descriptors;
490
- var fails$a = fails$g;
490
+ var fails$b = fails$h;
491
491
 
492
492
  // V8 ~ Chrome 36-
493
493
  // https://bugs.chromium.org/p/v8/issues/detail?id=3334
494
- var v8PrototypeDefineBug = DESCRIPTORS$8 && fails$a(function () {
494
+ var v8PrototypeDefineBug = DESCRIPTORS$8 && fails$b(function () {
495
495
  // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing
496
496
  return Object.defineProperty(function () { /* empty */ }, 'prototype', {
497
497
  value: 42,
@@ -567,16 +567,34 @@ var createNonEnumerableProperty$5 = DESCRIPTORS$6 ? function (object, key, value
567
567
  return object;
568
568
  };
569
569
 
570
- var redefine$7 = {exports: {}};
570
+ var makeBuiltIn$3 = {exports: {}};
571
+
572
+ var DESCRIPTORS$5 = descriptors;
573
+ var hasOwn$9 = hasOwnProperty_1;
574
+
575
+ var FunctionPrototype = Function.prototype;
576
+ // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe
577
+ var getDescriptor = DESCRIPTORS$5 && Object.getOwnPropertyDescriptor;
578
+
579
+ var EXISTS = hasOwn$9(FunctionPrototype, 'name');
580
+ // additional protection from minified / mangled / dropped function names
581
+ var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';
582
+ var CONFIGURABLE = EXISTS && (!DESCRIPTORS$5 || (DESCRIPTORS$5 && getDescriptor(FunctionPrototype, 'name').configurable));
583
+
584
+ var functionName = {
585
+ EXISTS: EXISTS,
586
+ PROPER: PROPER,
587
+ CONFIGURABLE: CONFIGURABLE
588
+ };
571
589
 
572
590
  var uncurryThis$d = functionUncurryThis;
573
- var isCallable$a = isCallable$g;
591
+ var isCallable$b = isCallable$h;
574
592
  var store$1 = sharedStore;
575
593
 
576
594
  var functionToString = uncurryThis$d(Function.toString);
577
595
 
578
596
  // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
579
- if (!isCallable$a(store$1.inspectSource)) {
597
+ if (!isCallable$b(store$1.inspectSource)) {
580
598
  store$1.inspectSource = function (it) {
581
599
  return functionToString(it);
582
600
  };
@@ -585,12 +603,12 @@ if (!isCallable$a(store$1.inspectSource)) {
585
603
  var inspectSource$3 = store$1.inspectSource;
586
604
 
587
605
  var global$l = global$C;
588
- var isCallable$9 = isCallable$g;
606
+ var isCallable$a = isCallable$h;
589
607
  var inspectSource$2 = inspectSource$3;
590
608
 
591
609
  var WeakMap$1 = global$l.WeakMap;
592
610
 
593
- var nativeWeakMap = isCallable$9(WeakMap$1) && /native code/.test(inspectSource$2(WeakMap$1));
611
+ var nativeWeakMap = isCallable$a(WeakMap$1) && /native code/.test(inspectSource$2(WeakMap$1));
594
612
 
595
613
  var shared$2 = shared$4.exports;
596
614
  var uid = uid$2;
@@ -608,7 +626,7 @@ var global$k = global$C;
608
626
  var uncurryThis$c = functionUncurryThis;
609
627
  var isObject$2 = isObject$7;
610
628
  var createNonEnumerableProperty$4 = createNonEnumerableProperty$5;
611
- var hasOwn$9 = hasOwnProperty_1;
629
+ var hasOwn$8 = hasOwnProperty_1;
612
630
  var shared$1 = sharedStore;
613
631
  var sharedKey$2 = sharedKey$3;
614
632
  var hiddenKeys$3 = hiddenKeys$4;
@@ -652,16 +670,16 @@ if (NATIVE_WEAK_MAP || shared$1.state) {
652
670
  var STATE = sharedKey$2('state');
653
671
  hiddenKeys$3[STATE] = true;
654
672
  set = function (it, metadata) {
655
- if (hasOwn$9(it, STATE)) throw new TypeError$8(OBJECT_ALREADY_INITIALIZED);
673
+ if (hasOwn$8(it, STATE)) throw new TypeError$8(OBJECT_ALREADY_INITIALIZED);
656
674
  metadata.facade = it;
657
675
  createNonEnumerableProperty$4(it, STATE, metadata);
658
676
  return metadata;
659
677
  };
660
678
  get = function (it) {
661
- return hasOwn$9(it, STATE) ? it[STATE] : {};
679
+ return hasOwn$8(it, STATE) ? it[STATE] : {};
662
680
  };
663
681
  has = function (it) {
664
- return hasOwn$9(it, STATE);
682
+ return hasOwn$8(it, STATE);
665
683
  };
666
684
  }
667
685
 
@@ -673,59 +691,63 @@ var internalState = {
673
691
  getterFor: getterFor
674
692
  };
675
693
 
676
- var DESCRIPTORS$5 = descriptors;
677
- var hasOwn$8 = hasOwnProperty_1;
694
+ var fails$a = fails$h;
695
+ var isCallable$9 = isCallable$h;
696
+ var hasOwn$7 = hasOwnProperty_1;
697
+ var defineProperty$4 = objectDefineProperty.f;
698
+ var CONFIGURABLE_FUNCTION_NAME$1 = functionName.CONFIGURABLE;
699
+ var inspectSource$1 = inspectSource$3;
700
+ var InternalStateModule$4 = internalState;
678
701
 
679
- var FunctionPrototype = Function.prototype;
680
- // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe
681
- var getDescriptor = DESCRIPTORS$5 && Object.getOwnPropertyDescriptor;
702
+ var enforceInternalState = InternalStateModule$4.enforce;
703
+ var getInternalState$3 = InternalStateModule$4.get;
682
704
 
683
- var EXISTS = hasOwn$8(FunctionPrototype, 'name');
684
- // additional protection from minified / mangled / dropped function names
685
- var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';
686
- var CONFIGURABLE = EXISTS && (!DESCRIPTORS$5 || (DESCRIPTORS$5 && getDescriptor(FunctionPrototype, 'name').configurable));
705
+ var CONFIGURABLE_LENGTH = !fails$a(function () {
706
+ return defineProperty$4(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
707
+ });
687
708
 
688
- var functionName = {
689
- EXISTS: EXISTS,
690
- PROPER: PROPER,
691
- CONFIGURABLE: CONFIGURABLE
709
+ var TEMPLATE = String(String).split('String');
710
+
711
+ var makeBuiltIn$2 = makeBuiltIn$3.exports = function (value, name, options) {
712
+ if (String(name).slice(0, 7) === 'Symbol(') {
713
+ name = '[' + String(name).replace(/^Symbol\(([^)]*)\)/, '$1') + ']';
714
+ }
715
+ if (options && options.getter) name = 'get ' + name;
716
+ if (options && options.setter) name = 'set ' + name;
717
+ if (!hasOwn$7(value, 'name') || (CONFIGURABLE_FUNCTION_NAME$1 && value.name !== name)) {
718
+ defineProperty$4(value, 'name', { value: name, configurable: true });
719
+ }
720
+ if (CONFIGURABLE_LENGTH && options && hasOwn$7(options, 'arity') && value.length !== options.arity) {
721
+ defineProperty$4(value, 'length', { value: options.arity });
722
+ }
723
+ var state = enforceInternalState(value);
724
+ if (!hasOwn$7(state, 'source')) {
725
+ state.source = TEMPLATE.join(typeof name == 'string' ? name : '');
726
+ } return value;
692
727
  };
693
728
 
729
+ // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
730
+ // eslint-disable-next-line no-extend-native -- required
731
+ Function.prototype.toString = makeBuiltIn$2(function toString() {
732
+ return isCallable$9(this) && getInternalState$3(this).source || inspectSource$1(this);
733
+ }, 'toString');
734
+
694
735
  var global$j = global$C;
695
- var isCallable$8 = isCallable$g;
696
- var hasOwn$7 = hasOwnProperty_1;
736
+ var isCallable$8 = isCallable$h;
697
737
  var createNonEnumerableProperty$3 = createNonEnumerableProperty$5;
738
+ var makeBuiltIn$1 = makeBuiltIn$3.exports;
698
739
  var setGlobal$1 = setGlobal$3;
699
- var inspectSource$1 = inspectSource$3;
700
- var InternalStateModule$4 = internalState;
701
- var CONFIGURABLE_FUNCTION_NAME$1 = functionName.CONFIGURABLE;
702
-
703
- var getInternalState$3 = InternalStateModule$4.get;
704
- var enforceInternalState = InternalStateModule$4.enforce;
705
- var TEMPLATE = String(String).split('String');
706
740
 
707
- (redefine$7.exports = function (O, key, value, options) {
741
+ var defineBuiltIn$7 = function (O, key, value, options) {
708
742
  var unsafe = options ? !!options.unsafe : false;
709
743
  var simple = options ? !!options.enumerable : false;
710
744
  var noTargetGet = options ? !!options.noTargetGet : false;
711
745
  var name = options && options.name !== undefined ? options.name : key;
712
- var state;
713
- if (isCallable$8(value)) {
714
- if (String(name).slice(0, 7) === 'Symbol(') {
715
- name = '[' + String(name).replace(/^Symbol\(([^)]*)\)/, '$1') + ']';
716
- }
717
- if (!hasOwn$7(value, 'name') || (CONFIGURABLE_FUNCTION_NAME$1 && value.name !== name)) {
718
- createNonEnumerableProperty$3(value, 'name', name);
719
- }
720
- state = enforceInternalState(value);
721
- if (!state.source) {
722
- state.source = TEMPLATE.join(typeof name == 'string' ? name : '');
723
- }
724
- }
746
+ if (isCallable$8(value)) makeBuiltIn$1(value, name, options);
725
747
  if (O === global$j) {
726
748
  if (simple) O[key] = value;
727
749
  else setGlobal$1(key, value);
728
- return;
750
+ return O;
729
751
  } else if (!unsafe) {
730
752
  delete O[key];
731
753
  } else if (!noTargetGet && O[key]) {
@@ -733,10 +755,8 @@ var TEMPLATE = String(String).split('String');
733
755
  }
734
756
  if (simple) O[key] = value;
735
757
  else createNonEnumerableProperty$3(O, key, value);
736
- // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
737
- })(Function.prototype, 'toString', function toString() {
738
- return isCallable$8(this) && getInternalState$3(this).source || inspectSource$1(this);
739
- });
758
+ return O;
759
+ };
740
760
 
741
761
  var objectGetOwnPropertyNames = {};
742
762
 
@@ -896,8 +916,8 @@ var copyConstructorProperties$1 = function (target, source, exceptions) {
896
916
  }
897
917
  };
898
918
 
899
- var fails$9 = fails$g;
900
- var isCallable$7 = isCallable$g;
919
+ var fails$9 = fails$h;
920
+ var isCallable$7 = isCallable$h;
901
921
 
902
922
  var replacement = /#|\.prototype\./;
903
923
 
@@ -922,7 +942,7 @@ var isForced_1 = isForced$1;
922
942
  var global$i = global$C;
923
943
  var getOwnPropertyDescriptor$2 = objectGetOwnPropertyDescriptor.f;
924
944
  var createNonEnumerableProperty$2 = createNonEnumerableProperty$5;
925
- var redefine$6 = redefine$7.exports;
945
+ var defineBuiltIn$6 = defineBuiltIn$7;
926
946
  var setGlobal = setGlobal$3;
927
947
  var copyConstructorProperties = copyConstructorProperties$1;
928
948
  var isForced = isForced_1;
@@ -970,8 +990,7 @@ var _export = function (options, source) {
970
990
  if (options.sham || (targetProperty && targetProperty.sham)) {
971
991
  createNonEnumerableProperty$2(sourceProperty, 'sham', true);
972
992
  }
973
- // extend global
974
- redefine$6(target, key, sourceProperty, options);
993
+ defineBuiltIn$6(target, key, sourceProperty, options);
975
994
  }
976
995
  };
977
996
 
@@ -986,7 +1005,7 @@ var toStringTagSupport = String(test) === '[object z]';
986
1005
 
987
1006
  var global$h = global$C;
988
1007
  var TO_STRING_TAG_SUPPORT = toStringTagSupport;
989
- var isCallable$6 = isCallable$g;
1008
+ var isCallable$6 = isCallable$h;
990
1009
  var classofRaw = classofRaw$1;
991
1010
  var wellKnownSymbol$b = wellKnownSymbol$e;
992
1011
 
@@ -1042,7 +1061,7 @@ var regexpFlags$1 = function () {
1042
1061
  return result;
1043
1062
  };
1044
1063
 
1045
- var fails$8 = fails$g;
1064
+ var fails$8 = fails$h;
1046
1065
  var global$f = global$C;
1047
1066
 
1048
1067
  // babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
@@ -1195,7 +1214,7 @@ var objectCreate = Object.create || function create(O, Properties) {
1195
1214
  return Properties === undefined ? result : definePropertiesModule.f(result, Properties);
1196
1215
  };
1197
1216
 
1198
- var fails$7 = fails$g;
1217
+ var fails$7 = fails$h;
1199
1218
  var global$e = global$C;
1200
1219
 
1201
1220
  // babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError
@@ -1206,7 +1225,7 @@ var regexpUnsupportedDotAll = fails$7(function () {
1206
1225
  return !(re.dotAll && re.exec('\n') && re.flags === 's');
1207
1226
  });
1208
1227
 
1209
- var fails$6 = fails$g;
1228
+ var fails$6 = fails$h;
1210
1229
  var global$d = global$C;
1211
1230
 
1212
1231
  // babel-minify and Closure Compiler transpiles RegExp('(?<a>b)', 'g') -> /(?<a>b)/g and it causes SyntaxError
@@ -1411,7 +1430,7 @@ var addToUnscopables$1 = function (key) {
1411
1430
 
1412
1431
  var iterators = {};
1413
1432
 
1414
- var fails$5 = fails$g;
1433
+ var fails$5 = fails$h;
1415
1434
 
1416
1435
  var correctPrototypeGetter = !fails$5(function () {
1417
1436
  function F() { /* empty */ }
@@ -1422,7 +1441,7 @@ var correctPrototypeGetter = !fails$5(function () {
1422
1441
 
1423
1442
  var global$c = global$C;
1424
1443
  var hasOwn$4 = hasOwnProperty_1;
1425
- var isCallable$5 = isCallable$g;
1444
+ var isCallable$5 = isCallable$h;
1426
1445
  var toObject$2 = toObject$4;
1427
1446
  var sharedKey = sharedKey$3;
1428
1447
  var CORRECT_PROTOTYPE_GETTER = correctPrototypeGetter;
@@ -1442,10 +1461,10 @@ var objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? Object$1.getPrototypeOf :
1442
1461
  } return object instanceof Object$1 ? ObjectPrototype : null;
1443
1462
  };
1444
1463
 
1445
- var fails$4 = fails$g;
1446
- var isCallable$4 = isCallable$g;
1464
+ var fails$4 = fails$h;
1465
+ var isCallable$4 = isCallable$h;
1447
1466
  var getPrototypeOf$1 = objectGetPrototypeOf;
1448
- var redefine$5 = redefine$7.exports;
1467
+ var defineBuiltIn$5 = defineBuiltIn$7;
1449
1468
  var wellKnownSymbol$9 = wellKnownSymbol$e;
1450
1469
 
1451
1470
  var ITERATOR$6 = wellKnownSymbol$9('iterator');
@@ -1477,7 +1496,7 @@ if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype$2 = {};
1477
1496
  // `%IteratorPrototype%[@@iterator]()` method
1478
1497
  // https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
1479
1498
  if (!isCallable$4(IteratorPrototype$2[ITERATOR$6])) {
1480
- redefine$5(IteratorPrototype$2, ITERATOR$6, function () {
1499
+ defineBuiltIn$5(IteratorPrototype$2, ITERATOR$6, function () {
1481
1500
  return this;
1482
1501
  });
1483
1502
  }
@@ -1487,7 +1506,7 @@ var iteratorsCore = {
1487
1506
  BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS$1
1488
1507
  };
1489
1508
 
1490
- var defineProperty$2 = objectDefineProperty.f;
1509
+ var defineProperty$3 = objectDefineProperty.f;
1491
1510
  var hasOwn$3 = hasOwnProperty_1;
1492
1511
  var wellKnownSymbol$8 = wellKnownSymbol$e;
1493
1512
 
@@ -1496,7 +1515,7 @@ var TO_STRING_TAG$1 = wellKnownSymbol$8('toStringTag');
1496
1515
  var setToStringTag$4 = function (target, TAG, STATIC) {
1497
1516
  if (target && !STATIC) target = target.prototype;
1498
1517
  if (target && !hasOwn$3(target, TO_STRING_TAG$1)) {
1499
- defineProperty$2(target, TO_STRING_TAG$1, { configurable: true, value: TAG });
1518
+ defineProperty$3(target, TO_STRING_TAG$1, { configurable: true, value: TAG });
1500
1519
  }
1501
1520
  };
1502
1521
 
@@ -1517,7 +1536,7 @@ var createIteratorConstructor$2 = function (IteratorConstructor, NAME, next, ENU
1517
1536
  };
1518
1537
 
1519
1538
  var global$b = global$C;
1520
- var isCallable$3 = isCallable$g;
1539
+ var isCallable$3 = isCallable$h;
1521
1540
 
1522
1541
  var String$1 = global$b.String;
1523
1542
  var TypeError$7 = global$b.TypeError;
@@ -1559,13 +1578,13 @@ var objectSetPrototypeOf = Object.setPrototypeOf || ('__proto__' in {} ? functio
1559
1578
  var $$3 = _export;
1560
1579
  var call$6 = functionCall;
1561
1580
  var FunctionName = functionName;
1562
- var isCallable$2 = isCallable$g;
1581
+ var isCallable$2 = isCallable$h;
1563
1582
  var createIteratorConstructor$1 = createIteratorConstructor$2;
1564
1583
  var getPrototypeOf = objectGetPrototypeOf;
1565
1584
  var setPrototypeOf = objectSetPrototypeOf;
1566
1585
  var setToStringTag$2 = setToStringTag$4;
1567
1586
  var createNonEnumerableProperty$1 = createNonEnumerableProperty$5;
1568
- var redefine$4 = redefine$7.exports;
1587
+ var defineBuiltIn$4 = defineBuiltIn$7;
1569
1588
  var wellKnownSymbol$7 = wellKnownSymbol$e;
1570
1589
  var Iterators$3 = iterators;
1571
1590
  var IteratorsCore = iteratorsCore;
@@ -1612,7 +1631,7 @@ var defineIterator$2 = function (Iterable, NAME, IteratorConstructor, next, DEFA
1612
1631
  if (setPrototypeOf) {
1613
1632
  setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
1614
1633
  } else if (!isCallable$2(CurrentIteratorPrototype[ITERATOR$5])) {
1615
- redefine$4(CurrentIteratorPrototype, ITERATOR$5, returnThis);
1634
+ defineBuiltIn$4(CurrentIteratorPrototype, ITERATOR$5, returnThis);
1616
1635
  }
1617
1636
  }
1618
1637
  // Set @@toStringTag to native iterators
@@ -1639,14 +1658,14 @@ var defineIterator$2 = function (Iterable, NAME, IteratorConstructor, next, DEFA
1639
1658
  };
1640
1659
  if (FORCED) for (KEY in methods) {
1641
1660
  if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
1642
- redefine$4(IterablePrototype, KEY, methods[KEY]);
1661
+ defineBuiltIn$4(IterablePrototype, KEY, methods[KEY]);
1643
1662
  }
1644
1663
  } else $$3({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
1645
1664
  }
1646
1665
 
1647
1666
  // define iterator
1648
1667
  if (IterablePrototype[ITERATOR$5] !== defaultIterator) {
1649
- redefine$4(IterablePrototype, ITERATOR$5, defaultIterator, { name: DEFAULT });
1668
+ defineBuiltIn$4(IterablePrototype, ITERATOR$5, defaultIterator, { name: DEFAULT });
1650
1669
  }
1651
1670
  Iterators$3[NAME] = defaultIterator;
1652
1671
 
@@ -1657,7 +1676,7 @@ var toIndexedObject = toIndexedObject$5;
1657
1676
  var addToUnscopables = addToUnscopables$1;
1658
1677
  var Iterators$2 = iterators;
1659
1678
  var InternalStateModule$3 = internalState;
1660
- var defineProperty$1 = objectDefineProperty.f;
1679
+ var defineProperty$2 = objectDefineProperty.f;
1661
1680
  var defineIterator$1 = defineIterator$2;
1662
1681
  var DESCRIPTORS$3 = descriptors;
1663
1682
 
@@ -1710,7 +1729,7 @@ addToUnscopables('entries');
1710
1729
 
1711
1730
  // V8 ~ Chrome 45- bug
1712
1731
  if (DESCRIPTORS$3 && values.name !== 'values') try {
1713
- defineProperty$1(values, 'name', { value: 'values' });
1732
+ defineProperty$2(values, 'name', { value: 'values' });
1714
1733
  } catch (error) { /* empty */ }
1715
1734
 
1716
1735
  var global$a = global$C;
@@ -1819,7 +1838,7 @@ defineIterator(String, 'String', function (iterated) {
1819
1838
  return { value: point, done: false };
1820
1839
  });
1821
1840
 
1822
- var fails$3 = fails$g;
1841
+ var fails$3 = fails$h;
1823
1842
  var wellKnownSymbol$5 = wellKnownSymbol$e;
1824
1843
  var IS_PURE = isPure;
1825
1844
 
@@ -1868,6 +1887,15 @@ var functionBindContext = function (fn, that) {
1868
1887
  };
1869
1888
  };
1870
1889
 
1890
+ var makeBuiltIn = makeBuiltIn$3.exports;
1891
+ var defineProperty$1 = objectDefineProperty;
1892
+
1893
+ var defineBuiltInAccessor$1 = function (target, name, descriptor) {
1894
+ if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });
1895
+ if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });
1896
+ return defineProperty$1.f(target, name, descriptor);
1897
+ };
1898
+
1871
1899
  var global$9 = global$C;
1872
1900
  var isPrototypeOf$1 = objectIsPrototypeOf;
1873
1901
 
@@ -1881,7 +1909,7 @@ var anInstance$2 = function (it, Prototype) {
1881
1909
  var DESCRIPTORS$2 = descriptors;
1882
1910
  var uncurryThis$5 = functionUncurryThis;
1883
1911
  var call$5 = functionCall;
1884
- var fails$2 = fails$g;
1912
+ var fails$2 = fails$h;
1885
1913
  var objectKeys = objectKeys$2;
1886
1914
  var getOwnPropertySymbolsModule = objectGetOwnPropertySymbols;
1887
1915
  var propertyIsEnumerableModule = objectPropertyIsEnumerable;
@@ -1983,8 +2011,8 @@ var isArrayIteratorMethod$1 = function (it) {
1983
2011
  };
1984
2012
 
1985
2013
  var uncurryThis$4 = functionUncurryThis;
1986
- var fails$1 = fails$g;
1987
- var isCallable$1 = isCallable$g;
2014
+ var fails$1 = fails$h;
2015
+ var isCallable$1 = isCallable$h;
1988
2016
  var classof$3 = classof$5;
1989
2017
  var getBuiltIn = getBuiltIn$5;
1990
2018
  var inspectSource = inspectSource$3;
@@ -2329,10 +2357,10 @@ var validateArgumentsLength$2 = function (passed, required) {
2329
2357
  return passed;
2330
2358
  };
2331
2359
 
2332
- var redefine$3 = redefine$7.exports;
2360
+ var defineBuiltIn$3 = defineBuiltIn$7;
2333
2361
 
2334
- var redefineAll$1 = function (target, src, options) {
2335
- for (var key in src) redefine$3(target, key, src[key], options);
2362
+ var defineBuiltIns$1 = function (target, src, options) {
2363
+ for (var key in src) defineBuiltIn$3(target, key, src[key], options);
2336
2364
  return target;
2337
2365
  };
2338
2366
 
@@ -2389,13 +2417,13 @@ var call$1 = functionCall;
2389
2417
  var uncurryThis$2 = functionUncurryThis;
2390
2418
  var DESCRIPTORS$1 = descriptors;
2391
2419
  var USE_NATIVE_URL$1 = nativeUrl;
2392
- var redefine$2 = redefine$7.exports;
2393
- var redefineAll = redefineAll$1;
2420
+ var defineBuiltIn$2 = defineBuiltIn$7;
2421
+ var defineBuiltIns = defineBuiltIns$1;
2394
2422
  var setToStringTag$1 = setToStringTag$4;
2395
2423
  var createIteratorConstructor = createIteratorConstructor$2;
2396
2424
  var InternalStateModule$1 = internalState;
2397
2425
  var anInstance$1 = anInstance$2;
2398
- var isCallable = isCallable$g;
2426
+ var isCallable = isCallable$h;
2399
2427
  var hasOwn$2 = hasOwnProperty_1;
2400
2428
  var bind$1 = functionBindContext;
2401
2429
  var classof$1 = classof$5;
@@ -2590,7 +2618,7 @@ var URLSearchParamsConstructor = function URLSearchParams(/* init */) {
2590
2618
 
2591
2619
  var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;
2592
2620
 
2593
- redefineAll(URLSearchParamsPrototype, {
2621
+ defineBuiltIns(URLSearchParamsPrototype, {
2594
2622
  // `URLSearchParams.prototype.append` method
2595
2623
  // https://url.spec.whatwg.org/#dom-urlsearchparams-append
2596
2624
  append: function append(name, value) {
@@ -2709,11 +2737,11 @@ redefineAll(URLSearchParamsPrototype, {
2709
2737
  }, { enumerable: true });
2710
2738
 
2711
2739
  // `URLSearchParams.prototype[@@iterator]` method
2712
- redefine$2(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries, { name: 'entries' });
2740
+ defineBuiltIn$2(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries, { name: 'entries' });
2713
2741
 
2714
2742
  // `URLSearchParams.prototype.toString` method
2715
2743
  // https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior
2716
- redefine$2(URLSearchParamsPrototype, 'toString', function toString() {
2744
+ defineBuiltIn$2(URLSearchParamsPrototype, 'toString', function toString() {
2717
2745
  return getInternalParamsState(this).serialize();
2718
2746
  }, { enumerable: true });
2719
2747
 
@@ -2781,8 +2809,8 @@ var USE_NATIVE_URL = nativeUrl;
2781
2809
  var global$2 = global$C;
2782
2810
  var bind = functionBindContext;
2783
2811
  var uncurryThis$1 = functionUncurryThis;
2784
- var defineProperties = objectDefineProperties.f;
2785
- var redefine$1 = redefine$7.exports;
2812
+ var defineBuiltIn$1 = defineBuiltIn$7;
2813
+ var defineBuiltInAccessor = defineBuiltInAccessor$1;
2786
2814
  var anInstance = anInstance$2;
2787
2815
  var hasOwn$1 = hasOwnProperty_1;
2788
2816
  var assign = objectAssign;
@@ -3748,55 +3776,53 @@ var accessorDescriptor = function (getter, setter) {
3748
3776
  };
3749
3777
 
3750
3778
  if (DESCRIPTORS) {
3751
- defineProperties(URLPrototype, {
3752
- // `URL.prototype.href` accessors pair
3753
- // https://url.spec.whatwg.org/#dom-url-href
3754
- href: accessorDescriptor('serialize', 'setHref'),
3755
- // `URL.prototype.origin` getter
3756
- // https://url.spec.whatwg.org/#dom-url-origin
3757
- origin: accessorDescriptor('getOrigin'),
3758
- // `URL.prototype.protocol` accessors pair
3759
- // https://url.spec.whatwg.org/#dom-url-protocol
3760
- protocol: accessorDescriptor('getProtocol', 'setProtocol'),
3761
- // `URL.prototype.username` accessors pair
3762
- // https://url.spec.whatwg.org/#dom-url-username
3763
- username: accessorDescriptor('getUsername', 'setUsername'),
3764
- // `URL.prototype.password` accessors pair
3765
- // https://url.spec.whatwg.org/#dom-url-password
3766
- password: accessorDescriptor('getPassword', 'setPassword'),
3767
- // `URL.prototype.host` accessors pair
3768
- // https://url.spec.whatwg.org/#dom-url-host
3769
- host: accessorDescriptor('getHost', 'setHost'),
3770
- // `URL.prototype.hostname` accessors pair
3771
- // https://url.spec.whatwg.org/#dom-url-hostname
3772
- hostname: accessorDescriptor('getHostname', 'setHostname'),
3773
- // `URL.prototype.port` accessors pair
3774
- // https://url.spec.whatwg.org/#dom-url-port
3775
- port: accessorDescriptor('getPort', 'setPort'),
3776
- // `URL.prototype.pathname` accessors pair
3777
- // https://url.spec.whatwg.org/#dom-url-pathname
3778
- pathname: accessorDescriptor('getPathname', 'setPathname'),
3779
- // `URL.prototype.search` accessors pair
3780
- // https://url.spec.whatwg.org/#dom-url-search
3781
- search: accessorDescriptor('getSearch', 'setSearch'),
3782
- // `URL.prototype.searchParams` getter
3783
- // https://url.spec.whatwg.org/#dom-url-searchparams
3784
- searchParams: accessorDescriptor('getSearchParams'),
3785
- // `URL.prototype.hash` accessors pair
3786
- // https://url.spec.whatwg.org/#dom-url-hash
3787
- hash: accessorDescriptor('getHash', 'setHash')
3788
- });
3779
+ // `URL.prototype.href` accessors pair
3780
+ // https://url.spec.whatwg.org/#dom-url-href
3781
+ defineBuiltInAccessor(URLPrototype, 'href', accessorDescriptor('serialize', 'setHref'));
3782
+ // `URL.prototype.origin` getter
3783
+ // https://url.spec.whatwg.org/#dom-url-origin
3784
+ defineBuiltInAccessor(URLPrototype, 'origin', accessorDescriptor('getOrigin'));
3785
+ // `URL.prototype.protocol` accessors pair
3786
+ // https://url.spec.whatwg.org/#dom-url-protocol
3787
+ defineBuiltInAccessor(URLPrototype, 'protocol', accessorDescriptor('getProtocol', 'setProtocol'));
3788
+ // `URL.prototype.username` accessors pair
3789
+ // https://url.spec.whatwg.org/#dom-url-username
3790
+ defineBuiltInAccessor(URLPrototype, 'username', accessorDescriptor('getUsername', 'setUsername'));
3791
+ // `URL.prototype.password` accessors pair
3792
+ // https://url.spec.whatwg.org/#dom-url-password
3793
+ defineBuiltInAccessor(URLPrototype, 'password', accessorDescriptor('getPassword', 'setPassword'));
3794
+ // `URL.prototype.host` accessors pair
3795
+ // https://url.spec.whatwg.org/#dom-url-host
3796
+ defineBuiltInAccessor(URLPrototype, 'host', accessorDescriptor('getHost', 'setHost'));
3797
+ // `URL.prototype.hostname` accessors pair
3798
+ // https://url.spec.whatwg.org/#dom-url-hostname
3799
+ defineBuiltInAccessor(URLPrototype, 'hostname', accessorDescriptor('getHostname', 'setHostname'));
3800
+ // `URL.prototype.port` accessors pair
3801
+ // https://url.spec.whatwg.org/#dom-url-port
3802
+ defineBuiltInAccessor(URLPrototype, 'port', accessorDescriptor('getPort', 'setPort'));
3803
+ // `URL.prototype.pathname` accessors pair
3804
+ // https://url.spec.whatwg.org/#dom-url-pathname
3805
+ defineBuiltInAccessor(URLPrototype, 'pathname', accessorDescriptor('getPathname', 'setPathname'));
3806
+ // `URL.prototype.search` accessors pair
3807
+ // https://url.spec.whatwg.org/#dom-url-search
3808
+ defineBuiltInAccessor(URLPrototype, 'search', accessorDescriptor('getSearch', 'setSearch'));
3809
+ // `URL.prototype.searchParams` getter
3810
+ // https://url.spec.whatwg.org/#dom-url-searchparams
3811
+ defineBuiltInAccessor(URLPrototype, 'searchParams', accessorDescriptor('getSearchParams'));
3812
+ // `URL.prototype.hash` accessors pair
3813
+ // https://url.spec.whatwg.org/#dom-url-hash
3814
+ defineBuiltInAccessor(URLPrototype, 'hash', accessorDescriptor('getHash', 'setHash'));
3789
3815
  }
3790
3816
 
3791
3817
  // `URL.prototype.toJSON` method
3792
3818
  // https://url.spec.whatwg.org/#dom-url-tojson
3793
- redefine$1(URLPrototype, 'toJSON', function toJSON() {
3819
+ defineBuiltIn$1(URLPrototype, 'toJSON', function toJSON() {
3794
3820
  return getInternalURLState(this).serialize();
3795
3821
  }, { enumerable: true });
3796
3822
 
3797
3823
  // `URL.prototype.toString` method
3798
3824
  // https://url.spec.whatwg.org/#URL-stringification-behavior
3799
- redefine$1(URLPrototype, 'toString', function toString() {
3825
+ defineBuiltIn$1(URLPrototype, 'toString', function toString() {
3800
3826
  return getInternalURLState(this).serialize();
3801
3827
  }, { enumerable: true });
3802
3828
 
@@ -3805,10 +3831,10 @@ if (NativeURL) {
3805
3831
  var nativeRevokeObjectURL = NativeURL.revokeObjectURL;
3806
3832
  // `URL.createObjectURL` method
3807
3833
  // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL
3808
- if (nativeCreateObjectURL) redefine$1(URLConstructor, 'createObjectURL', bind(nativeCreateObjectURL, NativeURL));
3834
+ if (nativeCreateObjectURL) defineBuiltIn$1(URLConstructor, 'createObjectURL', bind(nativeCreateObjectURL, NativeURL));
3809
3835
  // `URL.revokeObjectURL` method
3810
3836
  // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL
3811
- if (nativeRevokeObjectURL) redefine$1(URLConstructor, 'revokeObjectURL', bind(nativeRevokeObjectURL, NativeURL));
3837
+ if (nativeRevokeObjectURL) defineBuiltIn$1(URLConstructor, 'revokeObjectURL', bind(nativeRevokeObjectURL, NativeURL));
3812
3838
  }
3813
3839
 
3814
3840
  setToStringTag(URLConstructor, 'URL');
@@ -3906,10 +3932,10 @@ var regexpGetFlags = function (R) {
3906
3932
  };
3907
3933
 
3908
3934
  var PROPER_FUNCTION_NAME = functionName.PROPER;
3909
- var redefine = redefine$7.exports;
3935
+ var defineBuiltIn = defineBuiltIn$7;
3910
3936
  var anObject = anObject$b;
3911
3937
  var $toString = toString$4;
3912
- var fails = fails$g;
3938
+ var fails = fails$h;
3913
3939
  var getRegExpFlags = regexpGetFlags;
3914
3940
 
3915
3941
  var TO_STRING = 'toString';
@@ -3923,7 +3949,7 @@ var INCORRECT_NAME = PROPER_FUNCTION_NAME && n$ToString.name != TO_STRING;
3923
3949
  // `RegExp.prototype.toString` method
3924
3950
  // https://tc39.es/ecma262/#sec-regexp.prototype.tostring
3925
3951
  if (NOT_GENERIC || INCORRECT_NAME) {
3926
- redefine(RegExp.prototype, TO_STRING, function toString() {
3952
+ defineBuiltIn(RegExp.prototype, TO_STRING, function toString() {
3927
3953
  var R = anObject(this);
3928
3954
  var pattern = $toString(R.source);
3929
3955
  var flags = $toString(getRegExpFlags(R));
@@ -3933,6 +3959,36 @@ if (NOT_GENERIC || INCORRECT_NAME) {
3933
3959
 
3934
3960
  var Chanukah="Hanukkah, the Jewish festival of rededication. Also known as the Festival of Lights";var Pesach="Passover, the Feast of Unleavened Bread. Also called Chag HaMatzot (the Festival of Matzah), it commemorates the Exodus and freedom of the Israelites from ancient Egypt";var Purim="Celebration of Jewish deliverance as told by Megilat Esther. It commemorates a time when the Jewish people living in Persia were saved from extermination";var Shavuot="Festival of Weeks. Commemorates the giving of the Torah at Mount Sinai";var Sigd="Ethiopian Jewish holiday occurring 50 days after Yom Kippur";var Sukkot="Feast of Booths";var holidayDescription = {"Asara B'Tevet":"Fast commemorating the siege of Jerusalem",Chanukah:Chanukah,"Days of the Omer":"7 weeks from the second night of Pesach to the day before Shavuot","Lag BaOmer":"33rd day of counting the Omer","Leil Selichot":"Prayers for forgiveness in preparation for the High Holidays","Pesach Sheni":"Second Passover, one month after Passover",Pesach:Pesach,"Purim Katan":"Minor Purim celebration during Adar I on leap years",Purim:Purim,"Rosh Chodesh Nisan":"Start of month of Nisan on the Hebrew calendar. נִיסָן (transliterated Nisan or Nissan) is the 1st month of the Hebrew year, has 30 days, and corresponds to March or April on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Iyyar":"Start of month of Iyyar on the Hebrew calendar. אִיָיר (transliterated Iyyar or Iyar) is the 2nd month of the Hebrew year, has 29 days, and corresponds to April or May on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Sivan":"Start of month of Sivan on the Hebrew calendar. Sivan (סִיוָן) is the 3rd month of the Hebrew year, has 30 days, and corresponds to May or June on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Tamuz":"Start of month of Tamuz on the Hebrew calendar. תַּמּוּז (transliterated Tamuz or Tammuz) is the 4th month of the Hebrew year, has 29 days, and corresponds to June or July on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Av":"Start of month of Av on the Hebrew calendar. Av (אָב) is the 5th month of the Hebrew year, has 30 days, and corresponds to July or August on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Elul":"Start of month of Elul on the Hebrew calendar. Elul (אֱלוּל) is the 6th month of the Hebrew year, has 29 days, and corresponds to August or September on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Cheshvan":"Start of month of Cheshvan on the Hebrew calendar. חֶשְׁוָן (transliterated Cheshvan or Heshvan) is the 8th month of the Hebrew year, has 29 or 30 days, and corresponds to October or November on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Kislev":"Start of month of Kislev on the Hebrew calendar. Kislev (כִּסְלֵו) is the 9th month of the Hebrew year, has 30 or 29 days, and corresponds to November or December on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Tevet":"Start of month of Tevet on the Hebrew calendar. Tevet (טֵבֵת) is the 10th month of the Hebrew year, has 29 days, and corresponds to December or January on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Sh'vat":"Start of month of Sh'vat on the Hebrew calendar. שְׁבָט (transliterated Sh'vat or Shevat) is the 11th month of the Hebrew year, has 30 days, and corresponds to January or February on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Adar":"Start of month of Adar on the Hebrew calendar. Adar (אַדָר) is the 12th month of the Hebrew year, has 29 days, and corresponds to February or March on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Adar I":"Start of month of Adar I (on leap years) on the Hebrew calendar. Adar I (אַדָר א׳) is the 12th month of the Hebrew year, occurs only on leap years, has 30 days, and corresponds to February or March on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Chodesh Adar II":"Start of month of Adar II (on leap years) on the Hebrew calendar. Adar II (אַדָר ב׳), sometimes \"Adar Bet\" or \"Adar Sheni\", is the 13th month of the Hebrew year, has 29 days, occurs only on leap years, and corresponds to February or March on the Gregorian calendar. רֹאשׁ חוֹדֶשׁ, transliterated Rosh Chodesh or Rosh Hodesh, is a minor holiday that occurs at the beginning of every month in the Hebrew calendar. It is marked by the birth of a new moon","Rosh Hashana":"The Jewish New Year. Also spelled Rosh Hashanah","Rosh Hashana LaBehemot":"New Year for Tithing Animals","Shabbat Chazon":"Shabbat before Tish'a B'Av (Shabbat of Prophecy/Shabbat of Vision)","Shabbat HaChodesh":"Shabbat before Rosh Chodesh Nissan","Shabbat HaGadol":"Shabbat before Pesach","Shabbat Machar Chodesh":"When Shabbat falls the day before Rosh Chodesh","Shabbat Nachamu":"Shabbat after Tish'a B'Av (Shabbat of Consolation). The first of seven Shabbatot leading up to Rosh Hashanah. Named after the Haftarah (from Isaiah 40) which begins with the verse נַחֲמוּ נַחֲמוּ, עַמִּי (\"Comfort, oh comfort my people\")","Shabbat Parah":"Shabbat of the Red Heifer","Shabbat Rosh Chodesh":"When Shabbat falls on Rosh Chodesh","Shabbat Shekalim":"Shabbat before Rosh Chodesh Adar","Shabbat Shirah":"Shabbat of Song","Shabbat Shuva":"Shabbat that falls between Rosh Hashanah and Yom Kippur (Shabbat of Returning)","Shabbat Zachor":"Shabbat before Purim",Shavuot:Shavuot,"Shmini Atzeret":"Eighth Day of Assembly","Shushan Purim":"Purim celebrated in Jerusalem and walled cities",Sigd:Sigd,"Simchat Torah":"Day of Celebrating the Torah",Sukkot:Sukkot,"Ta'anit Bechorot":"Fast of the First Born","Ta'anit Esther":"Fast of Esther","Tish'a B'Av":"The Ninth of Av. Fast commemorating the destruction of the two Temples","Tu B'Av":"Minor Jewish holiday of love. Observed on the 15th day of the Hebrew month of Av","Tu BiShvat":"New Year for Trees","Tzom Gedaliah":"Fast of the Seventh Month. Commemorates the assassination of the Jewish governor of Judah","Tzom Tammuz":"Fast commemorating breaching of the walls of Jerusalem before the destruction of the Second Temple","Yom HaAliyah":"Recognizes Aliyah, immigration to the Jewish State of Israel","Yom HaAliyah School Observance":"Aliyah Day observed in Israeli schools","Yom HaAtzma'ut":"Israeli Independence Day. Commemorates the declaration of independence of Israel in 1948. Note that Hebcal displays modern holidays like Yom HaAtzma'ut according to the Israeli schedule. Although Yom HaAtzma'ut is normally observed on the 5th of Iyyar, it may be moved earlier or postponed if observance of the holiday (or Yom HaZikaron, which always precedes it) would conflict with Shabbat","Yom HaShoah":"Holocaust Memorial Day","Yom HaZikaron":"Israeli Memorial Day. Note that Hebcal displays modern holidays like Yom HaZikaron according to the Israeli schedule. Although Yom Hazikaron is normally observed on the 4th of Iyyar, it may be moved earlier or postponed if observance of the holiday (or Yom HaAtzma'ut, which always follows it) would conflict with Shabbat","Yom Kippur":"Day of Atonement","Yom Yerushalayim":"Jerusalem Day. Commemorates the re-unification of Jerusalem in 1967"};
3935
3961
 
3962
+ var AD="Andorra";var AE="United Arab Emirates";var AF="Afghanistan";var AI="Anguilla";var AL="Albania";var AM="Armenia";var AO="Angola";var AR="Argentina";var AS="American Samoa";var AT="Austria";var AU="Australia";var AW="Aruba";var AZ="Azerbaijan";var BA="Bosnia and Herzegovina";var BB="Barbados";var BD="Bangladesh";var BE="Belgium";var BF="Burkina Faso";var BG="Bulgaria";var BH="Bahrain";var BI="Burundi";var BJ="Benin";var BM="Bermuda";var BN="Brunei";var BO="Bolivia";var BR="Brazil";var BS="Bahamas";var BT="Bhutan";var BW="Botswana";var BY="Belarus";var BZ="Belize";var CA="Canada";var CD="Democratic Republic of the Congo";var CF="Central African Republic";var CG="Republic of the Congo";var CH="Switzerland";var CI="Ivory Coast";var CK="Cook Islands";var CL="Chile";var CM="Cameroon";var CN="China";var CO="Colombia";var CR="Costa Rica";var CU="Cuba";var CV="Cape Verde";var CW="Curacao";var CY="Cyprus";var CZ="Czech Republic";var DE="Germany";var DK="Denmark";var DM="Dominica";var DO="Dominican Republic";var DZ="Algeria";var EC="Ecuador";var EE="Estonia";var EG="Egypt";var ER="Eritrea";var ES="Spain";var ET="Ethiopia";var FI="Finland";var FJ="Fiji";var FK="Falkland Islands";var FO="Faroe Islands";var FR="France";var GA="Gabon";var GB="United Kingdom";var GE="Georgia";var GH="Ghana";var GI="Gibraltar";var GL="Greenland";var GM="Gambia";var GN="Guinea";var GQ="Equatorial Guinea";var GR="Greece";var GT="Guatemala";var GW="Guinea-Bissau";var GY="Guyana";var HK="Hong Kong";var HN="Honduras";var HR="Croatia";var HT="Haiti";var HU="Hungary";var ID="Indonesia";var IE="Ireland";var IL="Israel";var IM="Isle of Man";var IN="India";var IQ="Iraq";var IR="Iran";var IS="Iceland";var IT="Italy";var JM="Jamaica";var JO="Jordan";var JP="Japan";var KE="Kenya";var KG="Kyrgyzstan";var KH="Cambodia";var KM="Comoros";var KN="Saint Kitts and Nevis";var KP="North Korea";var KR="South Korea";var KW="Kuwait";var KY="Cayman Islands";var KZ="Kazakhstan";var LA="Laos";var LB="Lebanon";var LC="Saint Lucia";var LI="Liechtenstein";var LR="Liberia";var LS="Lesotho";var LT="Lithuania";var LU="Luxembourg";var LV="Latvia";var LY="Libya";var MA="Morocco";var MD="Moldova";var ME="Montenegro";var MG="Madagascar";var MK="Macedonia";var ML="Mali";var MM="Myanmar";var MN="Mongolia";var MP="Northern Mariana Islands";var MR="Mauritania";var MS="Montserrat";var MT="Malta";var MU="Mauritius";var MW="Malawi";var MX="Mexico";var MY="Malaysia";var MZ="Mozambique";var NA="Namibia";var NC="New Caledonia";var NE="Niger";var NG="Nigeria";var NI="Nicaragua";var NL="Netherlands";var NO="Norway";var NP="Nepal";var NU="Niue";var NZ="New Zealand";var OM="Oman";var PA="Panama";var PE="Peru";var PF="French Polynesia";var PG="Papua New Guinea";var PH="Philippines";var PK="Pakistan";var PL="Poland";var PR="Puerto Rico";var PT="Portugal";var PY="Paraguay";var QA="Qatar";var RO="Romania";var RS="Serbia";var RU="Russia";var RW="Rwanda";var SA="Saudi Arabia";var SB="Solomon Islands";var SC="Seychelles";var SD="Sudan";var SE="Sweden";var SG="Singapore";var SH="Saint Helena";var SI="Slovenia";var SK="Slovakia";var SL="Sierra Leone";var SN="Senegal";var SO="Somalia";var SR="Suriname";var ST="Sao Tome and Principe";var SV="El Salvador";var SY="Syria";var SZ="Swaziland";var TC="Turks and Caicos Islands";var TD="Chad";var TG="Togo";var TH="Thailand";var TJ="Tajikistan";var TM="Turkmenistan";var TN="Tunisia";var TR="Turkey";var TV="Tuvalu";var TW="Taiwan";var TZ="Tanzania";var UA="Ukraine";var UG="Uganda";var US="United States";var UY="Uruguay";var UZ="Uzbekistan";var VC="Saint Vincent and the Grenadines";var VE="Venezuela";var VG="British Virgin Islands";var VN="Vietnam";var WS="Samoa";var YE="Yemen";var YT="Mayotte";var ZA="South Africa";var ZM="Zambia";var ZW="Zimbabwe";var countryNames = {AD:AD,AE:AE,AF:AF,AI:AI,AL:AL,AM:AM,AO:AO,AR:AR,AS:AS,AT:AT,AU:AU,AW:AW,AZ:AZ,BA:BA,BB:BB,BD:BD,BE:BE,BF:BF,BG:BG,BH:BH,BI:BI,BJ:BJ,BM:BM,BN:BN,BO:BO,BR:BR,BS:BS,BT:BT,BW:BW,BY:BY,BZ:BZ,CA:CA,CD:CD,CF:CF,CG:CG,CH:CH,CI:CI,CK:CK,CL:CL,CM:CM,CN:CN,CO:CO,CR:CR,CU:CU,CV:CV,CW:CW,CY:CY,CZ:CZ,DE:DE,DK:DK,DM:DM,DO:DO,DZ:DZ,EC:EC,EE:EE,EG:EG,ER:ER,ES:ES,ET:ET,FI:FI,FJ:FJ,FK:FK,FO:FO,FR:FR,GA:GA,GB:GB,GE:GE,GH:GH,GI:GI,GL:GL,GM:GM,GN:GN,GQ:GQ,GR:GR,GT:GT,GW:GW,GY:GY,HK:HK,HN:HN,HR:HR,HT:HT,HU:HU,ID:ID,IE:IE,IL:IL,IM:IM,IN:IN,IQ:IQ,IR:IR,IS:IS,IT:IT,JM:JM,JO:JO,JP:JP,KE:KE,KG:KG,KH:KH,KM:KM,KN:KN,KP:KP,KR:KR,KW:KW,KY:KY,KZ:KZ,LA:LA,LB:LB,LC:LC,LI:LI,LR:LR,LS:LS,LT:LT,LU:LU,LV:LV,LY:LY,MA:MA,MD:MD,ME:ME,MG:MG,MK:MK,ML:ML,MM:MM,MN:MN,MP:MP,MR:MR,MS:MS,MT:MT,MU:MU,MW:MW,MX:MX,MY:MY,MZ:MZ,NA:NA,NC:NC,NE:NE,NG:NG,NI:NI,NL:NL,NO:NO,NP:NP,NU:NU,NZ:NZ,OM:OM,PA:PA,PE:PE,PF:PF,PG:PG,PH:PH,PK:PK,PL:PL,PR:PR,PT:PT,PY:PY,QA:QA,RO:RO,RS:RS,RU:RU,RW:RW,SA:SA,SB:SB,SC:SC,SD:SD,SE:SE,SG:SG,SH:SH,SI:SI,SK:SK,SL:SL,SN:SN,SO:SO,SR:SR,ST:ST,SV:SV,SY:SY,SZ:SZ,TC:TC,TD:TD,TG:TG,TH:TH,TJ:TJ,TM:TM,TN:TN,TR:TR,TV:TV,TW:TW,TZ:TZ,UA:UA,UG:UG,US:US,UY:UY,UZ:UZ,VC:VC,VE:VE,VG:VG,VN:VN,WS:WS,YE:YE,YT:YT,ZA:ZA,ZM:ZM,ZW:ZW};
3963
+
3964
+ /**
3965
+ * @param {Location} location
3966
+ * @return {string}
3967
+ */
3968
+
3969
+ function locationToPlainObj(location) {
3970
+ if (typeof location === 'object' && location !== null && typeof location.name === 'string') {
3971
+ const o = {
3972
+ title: location.getName(),
3973
+ city: location.getShortName(),
3974
+ tzid: location.getTzid(),
3975
+ latitude: location.getLatitude(),
3976
+ longitude: location.getLongitude(),
3977
+ cc: location.getCountryCode(),
3978
+ country: countryNames[location.getCountryCode()]
3979
+ };
3980
+ ['admin1', 'asciiname', 'geo', 'zip', 'state', 'stateName', 'geonameid'].forEach(k => {
3981
+ if (location[k]) {
3982
+ o[k] = location[k];
3983
+ }
3984
+ });
3985
+ return o;
3986
+ } else {
3987
+ return {
3988
+ geo: 'none'
3989
+ };
3990
+ }
3991
+ }
3936
3992
  /**
3937
3993
  * Helper function to transform a string to make it more usable in a URL or filename.
3938
3994
  * Converts to lowercase and replaces non-word characters with hyphen ('-').
@@ -3946,7 +4002,7 @@ function makeAnchor(s) {
3946
4002
  return s.toLowerCase().replace(/'/g, '').replace(/[^\w]/g, '-').replace(/-+/g, '-').replace(/^-/g, '').replace(/-$/g, '');
3947
4003
  }
3948
4004
  /**
3949
- * @param {HebrewCalendar.Options} options
4005
+ * @param {CalOptions} options
3950
4006
  * @return {string}
3951
4007
  */
3952
4008
 
@@ -4132,7 +4188,7 @@ function renderTitleWithoutTime(ev) {
4132
4188
  /**
4133
4189
  * Generates a title like "Hebcal 2020 Israel" or "Hebcal May 1993 Providence"
4134
4190
  * @param {Event[]} events
4135
- * @param {HebrewCalendar.Options} options
4191
+ * @param {CalOptions} options
4136
4192
  * @return {string}
4137
4193
  */
4138
4194
 
@@ -4345,7 +4401,7 @@ const CATEGORY = {
4345
4401
  /**
4346
4402
  * Renders an Event as a string
4347
4403
  * @param {Event} e
4348
- * @param {HebrewCalendar.Options} options
4404
+ * @param {CalOptions} options
4349
4405
  * @return {string}
4350
4406
  */
4351
4407
 
@@ -4421,12 +4477,10 @@ function eventsToCsv(events, options) {
4421
4477
  return [csvHeader].concat(events.map(e => eventToCsv(e, options))).join('\r\n') + '\r\n';
4422
4478
  }
4423
4479
 
4424
- var AD="Andorra";var AE="United Arab Emirates";var AF="Afghanistan";var AI="Anguilla";var AL="Albania";var AM="Armenia";var AO="Angola";var AR="Argentina";var AS="American Samoa";var AT="Austria";var AU="Australia";var AW="Aruba";var AZ="Azerbaijan";var BA="Bosnia and Herzegovina";var BB="Barbados";var BD="Bangladesh";var BE="Belgium";var BF="Burkina Faso";var BG="Bulgaria";var BH="Bahrain";var BI="Burundi";var BJ="Benin";var BM="Bermuda";var BN="Brunei";var BO="Bolivia";var BR="Brazil";var BS="Bahamas";var BT="Bhutan";var BW="Botswana";var BY="Belarus";var BZ="Belize";var CA="Canada";var CD="Democratic Republic of the Congo";var CF="Central African Republic";var CG="Republic of the Congo";var CH="Switzerland";var CI="Ivory Coast";var CK="Cook Islands";var CL="Chile";var CM="Cameroon";var CN="China";var CO="Colombia";var CR="Costa Rica";var CU="Cuba";var CV="Cape Verde";var CW="Curacao";var CY="Cyprus";var CZ="Czech Republic";var DE="Germany";var DK="Denmark";var DM="Dominica";var DO="Dominican Republic";var DZ="Algeria";var EC="Ecuador";var EE="Estonia";var EG="Egypt";var ER="Eritrea";var ES="Spain";var ET="Ethiopia";var FI="Finland";var FJ="Fiji";var FK="Falkland Islands";var FO="Faroe Islands";var FR="France";var GA="Gabon";var GB="United Kingdom";var GE="Georgia";var GH="Ghana";var GI="Gibraltar";var GL="Greenland";var GM="Gambia";var GN="Guinea";var GQ="Equatorial Guinea";var GR="Greece";var GT="Guatemala";var GW="Guinea-Bissau";var GY="Guyana";var HK="Hong Kong";var HN="Honduras";var HR="Croatia";var HT="Haiti";var HU="Hungary";var ID="Indonesia";var IE="Ireland";var IL="Israel";var IM="Isle of Man";var IN="India";var IQ="Iraq";var IR="Iran";var IS="Iceland";var IT="Italy";var JM="Jamaica";var JO="Jordan";var JP="Japan";var KE="Kenya";var KG="Kyrgyzstan";var KH="Cambodia";var KM="Comoros";var KN="Saint Kitts and Nevis";var KP="North Korea";var KR="South Korea";var KW="Kuwait";var KY="Cayman Islands";var KZ="Kazakhstan";var LA="Laos";var LB="Lebanon";var LC="Saint Lucia";var LI="Liechtenstein";var LR="Liberia";var LS="Lesotho";var LT="Lithuania";var LU="Luxembourg";var LV="Latvia";var LY="Libya";var MA="Morocco";var MD="Moldova";var ME="Montenegro";var MG="Madagascar";var MK="Macedonia";var ML="Mali";var MM="Myanmar";var MN="Mongolia";var MP="Northern Mariana Islands";var MR="Mauritania";var MS="Montserrat";var MT="Malta";var MU="Mauritius";var MW="Malawi";var MX="Mexico";var MY="Malaysia";var MZ="Mozambique";var NA="Namibia";var NC="New Caledonia";var NE="Niger";var NG="Nigeria";var NI="Nicaragua";var NL="Netherlands";var NO="Norway";var NP="Nepal";var NU="Niue";var NZ="New Zealand";var OM="Oman";var PA="Panama";var PE="Peru";var PF="French Polynesia";var PG="Papua New Guinea";var PH="Philippines";var PK="Pakistan";var PL="Poland";var PR="Puerto Rico";var PT="Portugal";var PY="Paraguay";var QA="Qatar";var RO="Romania";var RS="Serbia";var RU="Russia";var RW="Rwanda";var SA="Saudi Arabia";var SB="Solomon Islands";var SC="Seychelles";var SD="Sudan";var SE="Sweden";var SG="Singapore";var SH="Saint Helena";var SI="Slovenia";var SK="Slovakia";var SL="Sierra Leone";var SN="Senegal";var SO="Somalia";var SR="Suriname";var ST="Sao Tome and Principe";var SV="El Salvador";var SY="Syria";var SZ="Swaziland";var TC="Turks and Caicos Islands";var TD="Chad";var TG="Togo";var TH="Thailand";var TJ="Tajikistan";var TM="Turkmenistan";var TN="Tunisia";var TR="Turkey";var TV="Tuvalu";var TW="Taiwan";var TZ="Tanzania";var UA="Ukraine";var UG="Uganda";var US="United States";var UY="Uruguay";var UZ="Uzbekistan";var VC="Saint Vincent and the Grenadines";var VE="Venezuela";var VG="British Virgin Islands";var VN="Vietnam";var WS="Samoa";var YE="Yemen";var YT="Mayotte";var ZA="South Africa";var ZM="Zambia";var ZW="Zimbabwe";var countryNames = {AD:AD,AE:AE,AF:AF,AI:AI,AL:AL,AM:AM,AO:AO,AR:AR,AS:AS,AT:AT,AU:AU,AW:AW,AZ:AZ,BA:BA,BB:BB,BD:BD,BE:BE,BF:BF,BG:BG,BH:BH,BI:BI,BJ:BJ,BM:BM,BN:BN,BO:BO,BR:BR,BS:BS,BT:BT,BW:BW,BY:BY,BZ:BZ,CA:CA,CD:CD,CF:CF,CG:CG,CH:CH,CI:CI,CK:CK,CL:CL,CM:CM,CN:CN,CO:CO,CR:CR,CU:CU,CV:CV,CW:CW,CY:CY,CZ:CZ,DE:DE,DK:DK,DM:DM,DO:DO,DZ:DZ,EC:EC,EE:EE,EG:EG,ER:ER,ES:ES,ET:ET,FI:FI,FJ:FJ,FK:FK,FO:FO,FR:FR,GA:GA,GB:GB,GE:GE,GH:GH,GI:GI,GL:GL,GM:GM,GN:GN,GQ:GQ,GR:GR,GT:GT,GW:GW,GY:GY,HK:HK,HN:HN,HR:HR,HT:HT,HU:HU,ID:ID,IE:IE,IL:IL,IM:IM,IN:IN,IQ:IQ,IR:IR,IS:IS,IT:IT,JM:JM,JO:JO,JP:JP,KE:KE,KG:KG,KH:KH,KM:KM,KN:KN,KP:KP,KR:KR,KW:KW,KY:KY,KZ:KZ,LA:LA,LB:LB,LC:LC,LI:LI,LR:LR,LS:LS,LT:LT,LU:LU,LV:LV,LY:LY,MA:MA,MD:MD,ME:ME,MG:MG,MK:MK,ML:ML,MM:MM,MN:MN,MP:MP,MR:MR,MS:MS,MT:MT,MU:MU,MW:MW,MX:MX,MY:MY,MZ:MZ,NA:NA,NC:NC,NE:NE,NG:NG,NI:NI,NL:NL,NO:NO,NP:NP,NU:NU,NZ:NZ,OM:OM,PA:PA,PE:PE,PF:PF,PG:PG,PH:PH,PK:PK,PL:PL,PR:PR,PT:PT,PY:PY,QA:QA,RO:RO,RS:RS,RU:RU,RW:RW,SA:SA,SB:SB,SC:SC,SD:SD,SE:SE,SG:SG,SH:SH,SI:SI,SK:SK,SL:SL,SN:SN,SO:SO,SR:SR,ST:ST,SV:SV,SY:SY,SZ:SZ,TC:TC,TD:TD,TG:TG,TH:TH,TJ:TJ,TM:TM,TN:TN,TR:TR,TV:TV,TW:TW,TZ:TZ,UA:UA,UG:UG,US:US,UY:UY,UZ:UZ,VC:VC,VE:VE,VG:VG,VN:VN,WS:WS,YE:YE,YT:YT,ZA:ZA,ZM:ZM,ZW:ZW};
4425
-
4426
4480
  /**
4427
4481
  * Formats a list events for the classic Hebcal.com JSON API response
4428
4482
  * @param {Event[]} events
4429
- * @param {HebrewCalendar.Options} options
4483
+ * @param {CalOptions} options
4430
4484
  * @param {boolean} [leyning=true]
4431
4485
  * @return {Object}
4432
4486
  */
@@ -4437,36 +4491,14 @@ function eventsToClassicApi(events, options) {
4437
4491
  title: getCalendarTitle(events, options),
4438
4492
  date: new Date().toISOString()
4439
4493
  };
4440
- const location = options.location;
4441
-
4442
- if (typeof location === 'object' && typeof location.name === 'string') {
4443
- result.location = {
4444
- title: location.getName(),
4445
- city: location.getShortName(),
4446
- tzid: location.getTzid(),
4447
- latitude: location.getLatitude(),
4448
- longitude: location.getLongitude(),
4449
- cc: location.getCountryCode(),
4450
- country: countryNames[location.getCountryCode()]
4451
- };
4452
- ['admin1', 'asciiname', 'geo', 'zip', 'state', 'stateName', 'geonameid'].forEach(k => {
4453
- if (location[k]) {
4454
- result.location[k] = location[k];
4455
- }
4456
- });
4457
- } else {
4458
- result.location = {
4459
- geo: 'none'
4460
- };
4461
- }
4462
-
4494
+ result.location = locationToPlainObj(options.location);
4463
4495
  result.items = events.map(ev => eventToClassicApiObject(ev, options, leyning));
4464
4496
  return result;
4465
4497
  }
4466
4498
  /**
4467
4499
  * Converts a Hebcal event to a classic Hebcal.com JSON API object
4468
4500
  * @param {Event} ev
4469
- * @param {HebrewCalendar.Options} options
4501
+ * @param {CalOptions} options
4470
4502
  * @param {boolean} [leyning=true]
4471
4503
  * @return {Object}
4472
4504
  */
@@ -4683,7 +4715,7 @@ const localeToLg = {
4683
4715
  };
4684
4716
  /**
4685
4717
  * @param {Event[]} events
4686
- * @param {HebrewCalendar.Options} options
4718
+ * @param {CalOptions} options
4687
4719
  * @return {string}
4688
4720
  */
4689
4721
 
@@ -4737,7 +4769,7 @@ function getPubDate(ev, evPubDate, evDate, lastBuildDate) {
4737
4769
  }
4738
4770
  /**
4739
4771
  * @param {Event} ev
4740
- * @param {HebrewCalendar.Options} options
4772
+ * @param {CalOptions} options
4741
4773
  * @return {string}
4742
4774
  */
4743
4775
 
@@ -4752,7 +4784,7 @@ function eventToRssItem2(ev, options) {
4752
4784
  * @param {Intl.DateTimeFormat} dayFormat
4753
4785
  * @param {Location} location
4754
4786
  * @param {string} mainUrl
4755
- * @param {HebrewCalendar.Options} [options]
4787
+ * @param {CalOptions} [options]
4756
4788
  * @return {string}
4757
4789
  */
4758
4790
 
@@ -4863,6 +4895,7 @@ exports.getDownloadFilename = getDownloadFilename;
4863
4895
  exports.getEventCategories = getEventCategories;
4864
4896
  exports.getHolidayDescription = getHolidayDescription;
4865
4897
  exports.holidayDescription = holidayDescription;
4898
+ exports.locationToPlainObj = locationToPlainObj;
4866
4899
  exports.makeAnchor = makeAnchor;
4867
4900
  exports.makeTorahMemoText = makeTorahMemoText;
4868
4901
  exports.pad2 = pad2;