@hebcal/rest-api 4.5.1 → 4.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -3
- package/dist/bundle.js +230 -191
- package/dist/bundle.min.js +2 -2
- package/dist/fullcalendar.js +2 -2
- package/dist/fullcalendar.min.js +2 -2
- package/dist/index.js +27 -6
- package/dist/index.mjs +27 -6
- package/package.json +15 -15
- package/rest-api.d.ts +18 -1
package/dist/bundle.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
/*! @hebcal/rest-api v4.5.
|
|
1
|
+
/*! @hebcal/rest-api v4.5.3 */
|
|
2
2
|
var hebcal__rest_api = (function (exports, core, leyning, triennial) {
|
|
3
3
|
'use strict';
|
|
4
4
|
|
|
5
5
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
6
6
|
|
|
7
7
|
var check = function (it) {
|
|
8
|
-
return it && it.Math
|
|
8
|
+
return it && it.Math === Math && it;
|
|
9
9
|
};
|
|
10
10
|
|
|
11
11
|
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
|
|
@@ -34,7 +34,7 @@ var fails$g = fails$h;
|
|
|
34
34
|
// Detect IE8's incomplete defineProperty implementation
|
|
35
35
|
var descriptors = !fails$g(function () {
|
|
36
36
|
// eslint-disable-next-line es/no-object-defineproperty -- required for testing
|
|
37
|
-
return Object.defineProperty({}, 1, { get: function () { return 7; } })[1]
|
|
37
|
+
return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;
|
|
38
38
|
});
|
|
39
39
|
|
|
40
40
|
var fails$f = fails$h;
|
|
@@ -113,7 +113,7 @@ var indexedObject = fails$e(function () {
|
|
|
113
113
|
// eslint-disable-next-line no-prototype-builtins -- safe
|
|
114
114
|
return !$Object$4('z').propertyIsEnumerable(0);
|
|
115
115
|
}) ? function (it) {
|
|
116
|
-
return classof$6(it)
|
|
116
|
+
return classof$6(it) === 'String' ? split$3(it, '') : $Object$4(it);
|
|
117
117
|
} : $Object$4;
|
|
118
118
|
|
|
119
119
|
// we can't use just `it == null` since of `document.all` special case
|
|
@@ -221,7 +221,6 @@ if (!version && userAgent) {
|
|
|
221
221
|
var engineV8Version = version;
|
|
222
222
|
|
|
223
223
|
/* eslint-disable es/no-symbol -- required for testing */
|
|
224
|
-
|
|
225
224
|
var V8_VERSION = engineV8Version;
|
|
226
225
|
var fails$d = fails$h;
|
|
227
226
|
var global$e = global$h;
|
|
@@ -230,7 +229,7 @@ var $String$5 = global$e.String;
|
|
|
230
229
|
|
|
231
230
|
// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
|
|
232
231
|
var symbolConstructorDetection = !!Object.getOwnPropertySymbols && !fails$d(function () {
|
|
233
|
-
var symbol = Symbol();
|
|
232
|
+
var symbol = Symbol('symbol detection');
|
|
234
233
|
// Chrome 38 Symbol has incorrect toString conversion
|
|
235
234
|
// `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
|
|
236
235
|
// nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,
|
|
@@ -241,7 +240,6 @@ var symbolConstructorDetection = !!Object.getOwnPropertySymbols && !fails$d(func
|
|
|
241
240
|
});
|
|
242
241
|
|
|
243
242
|
/* eslint-disable es/no-symbol -- required for testing */
|
|
244
|
-
|
|
245
243
|
var NATIVE_SYMBOL$1 = symbolConstructorDetection;
|
|
246
244
|
|
|
247
245
|
var useSymbolAsUid = NATIVE_SYMBOL$1
|
|
@@ -339,10 +337,10 @@ var store$2 = sharedStore;
|
|
|
339
337
|
(shared$4.exports = function (key, value) {
|
|
340
338
|
return store$2[key] || (store$2[key] = value !== undefined ? value : {});
|
|
341
339
|
})('versions', []).push({
|
|
342
|
-
version: '3.
|
|
340
|
+
version: '3.32.2',
|
|
343
341
|
mode: 'global',
|
|
344
342
|
copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',
|
|
345
|
-
license: 'https://github.com/zloirock/core-js/blob/v3.
|
|
343
|
+
license: 'https://github.com/zloirock/core-js/blob/v3.32.2/LICENSE',
|
|
346
344
|
source: 'https://github.com/zloirock/core-js'
|
|
347
345
|
});
|
|
348
346
|
|
|
@@ -455,7 +453,7 @@ var ie8DomDefine = !DESCRIPTORS$c && !fails$c(function () {
|
|
|
455
453
|
// eslint-disable-next-line es/no-object-defineproperty -- required for testing
|
|
456
454
|
return Object.defineProperty(createElement('div'), 'a', {
|
|
457
455
|
get: function () { return 7; }
|
|
458
|
-
}).a
|
|
456
|
+
}).a !== 7;
|
|
459
457
|
});
|
|
460
458
|
|
|
461
459
|
var DESCRIPTORS$b = descriptors;
|
|
@@ -493,7 +491,7 @@ var v8PrototypeDefineBug = DESCRIPTORS$a && fails$b(function () {
|
|
|
493
491
|
return Object.defineProperty(function () { /* empty */ }, 'prototype', {
|
|
494
492
|
value: 42,
|
|
495
493
|
writable: false
|
|
496
|
-
}).prototype
|
|
494
|
+
}).prototype !== 42;
|
|
497
495
|
});
|
|
498
496
|
|
|
499
497
|
var isObject$4 = isObject$8;
|
|
@@ -838,10 +836,10 @@ var createMethod$1 = function (IS_INCLUDES) {
|
|
|
838
836
|
var value;
|
|
839
837
|
// Array#includes uses SameValueZero equality algorithm
|
|
840
838
|
// eslint-disable-next-line no-self-compare -- NaN check
|
|
841
|
-
if (IS_INCLUDES && el
|
|
839
|
+
if (IS_INCLUDES && el !== el) while (length > index) {
|
|
842
840
|
value = O[index++];
|
|
843
841
|
// eslint-disable-next-line no-self-compare -- NaN check
|
|
844
|
-
if (value
|
|
842
|
+
if (value !== value) return true;
|
|
845
843
|
// Array#indexOf ignores holes, Array#includes - not
|
|
846
844
|
} else for (;length > index; index++) {
|
|
847
845
|
if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
|
|
@@ -946,8 +944,8 @@ var replacement = /#|\.prototype\./;
|
|
|
946
944
|
|
|
947
945
|
var isForced$1 = function (feature, detection) {
|
|
948
946
|
var value = data[normalize(feature)];
|
|
949
|
-
return value
|
|
950
|
-
: value
|
|
947
|
+
return value === POLYFILL ? true
|
|
948
|
+
: value === NATIVE ? false
|
|
951
949
|
: isCallable$7(detection) ? fails$9(detection)
|
|
952
950
|
: !!detection;
|
|
953
951
|
};
|
|
@@ -1035,7 +1033,7 @@ var TO_STRING_TAG$2 = wellKnownSymbol$b('toStringTag');
|
|
|
1035
1033
|
var $Object$1 = Object;
|
|
1036
1034
|
|
|
1037
1035
|
// ES3 wrong here
|
|
1038
|
-
var CORRECT_ARGUMENTS = classofRaw$1(function () { return arguments; }())
|
|
1036
|
+
var CORRECT_ARGUMENTS = classofRaw$1(function () { return arguments; }()) === 'Arguments';
|
|
1039
1037
|
|
|
1040
1038
|
// fallback for IE11 Script Access Denied error
|
|
1041
1039
|
var tryGet = function (it, key) {
|
|
@@ -1053,7 +1051,7 @@ var classof$5 = TO_STRING_TAG_SUPPORT ? classofRaw$1 : function (it) {
|
|
|
1053
1051
|
// builtinTag case
|
|
1054
1052
|
: CORRECT_ARGUMENTS ? classofRaw$1(O)
|
|
1055
1053
|
// ES3 arguments fallback
|
|
1056
|
-
: (result = classofRaw$1(O))
|
|
1054
|
+
: (result = classofRaw$1(O)) === 'Object' && isCallable$6(O.callee) ? 'Arguments' : result;
|
|
1057
1055
|
};
|
|
1058
1056
|
|
|
1059
1057
|
var classof$4 = classof$5;
|
|
@@ -1092,7 +1090,7 @@ var $RegExp$2 = global$6.RegExp;
|
|
|
1092
1090
|
var UNSUPPORTED_Y$1 = fails$8(function () {
|
|
1093
1091
|
var re = $RegExp$2('a', 'y');
|
|
1094
1092
|
re.lastIndex = 2;
|
|
1095
|
-
return re.exec('abcd')
|
|
1093
|
+
return re.exec('abcd') !== null;
|
|
1096
1094
|
});
|
|
1097
1095
|
|
|
1098
1096
|
// UC Browser bug
|
|
@@ -1105,7 +1103,7 @@ var BROKEN_CARET = UNSUPPORTED_Y$1 || fails$8(function () {
|
|
|
1105
1103
|
// https://bugzilla.mozilla.org/show_bug.cgi?id=773687
|
|
1106
1104
|
var re = $RegExp$2('^r', 'gy');
|
|
1107
1105
|
re.lastIndex = 2;
|
|
1108
|
-
return re.exec('str')
|
|
1106
|
+
return re.exec('str') !== null;
|
|
1109
1107
|
});
|
|
1110
1108
|
|
|
1111
1109
|
var regexpStickyHelpers = {
|
|
@@ -1152,7 +1150,6 @@ var getBuiltIn$1 = getBuiltIn$4;
|
|
|
1152
1150
|
var html$1 = getBuiltIn$1('document', 'documentElement');
|
|
1153
1151
|
|
|
1154
1152
|
/* global ActiveXObject -- old IE, WSH */
|
|
1155
|
-
|
|
1156
1153
|
var anObject$6 = anObject$b;
|
|
1157
1154
|
var definePropertiesModule = objectDefineProperties;
|
|
1158
1155
|
var enumBugKeys = enumBugKeys$3;
|
|
@@ -1438,7 +1435,7 @@ var ArrayPrototype$1 = Array.prototype;
|
|
|
1438
1435
|
|
|
1439
1436
|
// Array.prototype[@@unscopables]
|
|
1440
1437
|
// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
|
|
1441
|
-
if (ArrayPrototype$1[UNSCOPABLES]
|
|
1438
|
+
if (ArrayPrototype$1[UNSCOPABLES] === undefined) {
|
|
1442
1439
|
defineProperty$4(ArrayPrototype$1, UNSCOPABLES, {
|
|
1443
1440
|
configurable: true,
|
|
1444
1441
|
value: create$2(null)
|
|
@@ -1579,7 +1576,6 @@ var aPossiblePrototype$1 = function (argument) {
|
|
|
1579
1576
|
};
|
|
1580
1577
|
|
|
1581
1578
|
/* eslint-disable no-proto -- safe */
|
|
1582
|
-
|
|
1583
1579
|
var uncurryThisAccessor = functionUncurryThisAccessor;
|
|
1584
1580
|
var anObject$5 = anObject$b;
|
|
1585
1581
|
var aPossiblePrototype = aPossiblePrototype$1;
|
|
@@ -1636,12 +1632,15 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
|
|
|
1636
1632
|
|
|
1637
1633
|
var getIterationMethod = function (KIND) {
|
|
1638
1634
|
if (KIND === DEFAULT && defaultIterator) return defaultIterator;
|
|
1639
|
-
if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];
|
|
1635
|
+
if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];
|
|
1636
|
+
|
|
1640
1637
|
switch (KIND) {
|
|
1641
1638
|
case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
|
|
1642
1639
|
case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
|
|
1643
1640
|
case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
|
|
1644
|
-
}
|
|
1641
|
+
}
|
|
1642
|
+
|
|
1643
|
+
return function () { return new IteratorConstructor(this); };
|
|
1645
1644
|
};
|
|
1646
1645
|
|
|
1647
1646
|
var TO_STRING_TAG = NAME + ' Iterator';
|
|
@@ -1651,7 +1650,7 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
|
|
|
1651
1650
|
|| IterablePrototype['@@iterator']
|
|
1652
1651
|
|| DEFAULT && IterablePrototype[DEFAULT];
|
|
1653
1652
|
var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
|
|
1654
|
-
var anyNativeIterator = NAME
|
|
1653
|
+
var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
|
|
1655
1654
|
var CurrentIteratorPrototype, methods, KEY;
|
|
1656
1655
|
|
|
1657
1656
|
// fix native
|
|
@@ -1671,7 +1670,7 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
|
|
|
1671
1670
|
}
|
|
1672
1671
|
|
|
1673
1672
|
// fix Array.prototype.{ values, @@iterator }.name in V8 / FF
|
|
1674
|
-
if (PROPER_FUNCTION_NAME$1 && DEFAULT
|
|
1673
|
+
if (PROPER_FUNCTION_NAME$1 && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {
|
|
1675
1674
|
if (CONFIGURABLE_FUNCTION_NAME) {
|
|
1676
1675
|
createNonEnumerableProperty$1(IterablePrototype, 'name', VALUES);
|
|
1677
1676
|
} else {
|
|
@@ -1750,9 +1749,10 @@ var es_array_iterator = defineIterator$1(Array, 'Array', function (iterated, kin
|
|
|
1750
1749
|
state.target = undefined;
|
|
1751
1750
|
return createIterResultObject$1(undefined, true);
|
|
1752
1751
|
}
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1752
|
+
switch (kind) {
|
|
1753
|
+
case 'keys': return createIterResultObject$1(index, false);
|
|
1754
|
+
case 'values': return createIterResultObject$1(target[index], false);
|
|
1755
|
+
} return createIterResultObject$1([index, target[index]], false);
|
|
1756
1756
|
}, 'values');
|
|
1757
1757
|
|
|
1758
1758
|
// argumentsList[@@iterator] is %ArrayProto_values%
|
|
@@ -1887,20 +1887,25 @@ var ITERATOR$3 = wellKnownSymbol$5('iterator');
|
|
|
1887
1887
|
var urlConstructorDetection = !fails$3(function () {
|
|
1888
1888
|
// eslint-disable-next-line unicorn/relative-url-style -- required for testing
|
|
1889
1889
|
var url = new URL('b?a=1&b=2&c=3', 'http://a');
|
|
1890
|
-
var
|
|
1890
|
+
var params = url.searchParams;
|
|
1891
|
+
var params2 = new URLSearchParams('a=1&a=2&b=3');
|
|
1891
1892
|
var result = '';
|
|
1892
1893
|
url.pathname = 'c%20d';
|
|
1893
|
-
|
|
1894
|
-
|
|
1894
|
+
params.forEach(function (value, key) {
|
|
1895
|
+
params['delete']('b');
|
|
1895
1896
|
result += key + value;
|
|
1896
1897
|
});
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1898
|
+
params2['delete']('a', 2);
|
|
1899
|
+
// `undefined` case is a Chromium 117 bug
|
|
1900
|
+
// https://bugs.chromium.org/p/v8/issues/detail?id=14222
|
|
1901
|
+
params2['delete']('b', undefined);
|
|
1902
|
+
return (IS_PURE && (!url.toJSON || !params2.has('a', 1) || params2.has('a', 2) || !params2.has('a', undefined) || params2.has('b')))
|
|
1903
|
+
|| (!params.size && (IS_PURE || !DESCRIPTORS$3))
|
|
1904
|
+
|| !params.sort
|
|
1900
1905
|
|| url.href !== 'http://a/c%20d?a=1&c=3'
|
|
1901
|
-
||
|
|
1906
|
+
|| params.get('c') !== '3'
|
|
1902
1907
|
|| String(new URLSearchParams('?a=1')) !== 'a=1'
|
|
1903
|
-
|| !
|
|
1908
|
+
|| !params[ITERATOR$3]
|
|
1904
1909
|
// throws in Edge
|
|
1905
1910
|
|| new URL('https://a@b').username !== 'a'
|
|
1906
1911
|
|| new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'
|
|
@@ -1989,11 +1994,11 @@ var objectAssign = !$assign || fails$2(function () {
|
|
|
1989
1994
|
var A = {};
|
|
1990
1995
|
var B = {};
|
|
1991
1996
|
// eslint-disable-next-line es/no-symbol -- safe
|
|
1992
|
-
var symbol = Symbol();
|
|
1997
|
+
var symbol = Symbol('assign detection');
|
|
1993
1998
|
var alphabet = 'abcdefghijklmnopqrst';
|
|
1994
1999
|
A[symbol] = 7;
|
|
1995
2000
|
alphabet.split('').forEach(function (chr) { B[chr] = chr; });
|
|
1996
|
-
return $assign({}, A)[symbol]
|
|
2001
|
+
return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;
|
|
1997
2002
|
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`
|
|
1998
2003
|
var T = toObject$1(target);
|
|
1999
2004
|
var argumentsLength = arguments.length;
|
|
@@ -2209,7 +2214,8 @@ var arraySliceSimple = function (O, start, end) {
|
|
|
2209
2214
|
var k = toAbsoluteIndex(start, length);
|
|
2210
2215
|
var fin = toAbsoluteIndex(end === undefined ? length : end, length);
|
|
2211
2216
|
var result = $Array(max(fin - k, 0));
|
|
2212
|
-
|
|
2217
|
+
var n = 0;
|
|
2218
|
+
for (; k < fin; k++, n++) createProperty(result, n, O[k]);
|
|
2213
2219
|
result.length = n;
|
|
2214
2220
|
return result;
|
|
2215
2221
|
};
|
|
@@ -2258,7 +2264,7 @@ var ucs2decode = function (string) {
|
|
|
2258
2264
|
if (value >= 0xD800 && value <= 0xDBFF && counter < length) {
|
|
2259
2265
|
// It's a high surrogate, and there is a next character.
|
|
2260
2266
|
var extra = charCodeAt(string, counter++);
|
|
2261
|
-
if ((extra & 0xFC00)
|
|
2267
|
+
if ((extra & 0xFC00) === 0xDC00) { // Low surrogate.
|
|
2262
2268
|
push$2(output, ((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);
|
|
2263
2269
|
} else {
|
|
2264
2270
|
// It's an unmatched surrogate; only append this code unit, in case the
|
|
@@ -2357,12 +2363,12 @@ var encode = function (input) {
|
|
|
2357
2363
|
if (currentValue < n && ++delta > maxInt) {
|
|
2358
2364
|
throw $RangeError(OVERFLOW_ERROR);
|
|
2359
2365
|
}
|
|
2360
|
-
if (currentValue
|
|
2366
|
+
if (currentValue === n) {
|
|
2361
2367
|
// Represent delta as a generalized variable-length integer.
|
|
2362
2368
|
var q = delta;
|
|
2363
2369
|
var k = base;
|
|
2364
2370
|
while (true) {
|
|
2365
|
-
var t = k <= bias ? tMin :
|
|
2371
|
+
var t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;
|
|
2366
2372
|
if (q < t) break;
|
|
2367
2373
|
var qMinusT = q - t;
|
|
2368
2374
|
var baseMinusT = base - t;
|
|
@@ -2372,7 +2378,7 @@ var encode = function (input) {
|
|
|
2372
2378
|
}
|
|
2373
2379
|
|
|
2374
2380
|
push$2(output, fromCharCode(digitToBasic(q)));
|
|
2375
|
-
bias = adapt(delta, handledCPCountPlusOne, handledCPCount
|
|
2381
|
+
bias = adapt(delta, handledCPCountPlusOne, handledCPCount === basicLength);
|
|
2376
2382
|
delta = 0;
|
|
2377
2383
|
handledCPCount++;
|
|
2378
2384
|
}
|
|
@@ -2660,7 +2666,7 @@ var URLSearchParamsConstructor = function URLSearchParams(/* init */) {
|
|
|
2660
2666
|
anInstance$1(this, URLSearchParamsPrototype);
|
|
2661
2667
|
var init = arguments.length > 0 ? arguments[0] : undefined;
|
|
2662
2668
|
var state = setInternalState$1(this, new URLSearchParamsState(init));
|
|
2663
|
-
if (!DESCRIPTORS$1) this.
|
|
2669
|
+
if (!DESCRIPTORS$1) this.size = state.entries.length;
|
|
2664
2670
|
};
|
|
2665
2671
|
|
|
2666
2672
|
var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;
|
|
@@ -2669,32 +2675,37 @@ defineBuiltIns(URLSearchParamsPrototype, {
|
|
|
2669
2675
|
// `URLSearchParams.prototype.append` method
|
|
2670
2676
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-append
|
|
2671
2677
|
append: function append(name, value) {
|
|
2672
|
-
validateArgumentsLength$1(arguments.length, 2);
|
|
2673
2678
|
var state = getInternalParamsState(this);
|
|
2679
|
+
validateArgumentsLength$1(arguments.length, 2);
|
|
2674
2680
|
push$1(state.entries, { key: $toString$2(name), value: $toString$2(value) });
|
|
2675
2681
|
if (!DESCRIPTORS$1) this.length++;
|
|
2676
2682
|
state.updateURL();
|
|
2677
2683
|
},
|
|
2678
2684
|
// `URLSearchParams.prototype.delete` method
|
|
2679
2685
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-delete
|
|
2680
|
-
'delete': function (name) {
|
|
2681
|
-
validateArgumentsLength$1(arguments.length, 1);
|
|
2686
|
+
'delete': function (name /* , value */) {
|
|
2682
2687
|
var state = getInternalParamsState(this);
|
|
2688
|
+
var length = validateArgumentsLength$1(arguments.length, 1);
|
|
2683
2689
|
var entries = state.entries;
|
|
2684
2690
|
var key = $toString$2(name);
|
|
2691
|
+
var $value = length < 2 ? undefined : arguments[1];
|
|
2692
|
+
var value = $value === undefined ? $value : $toString$2($value);
|
|
2685
2693
|
var index = 0;
|
|
2686
2694
|
while (index < entries.length) {
|
|
2687
|
-
|
|
2688
|
-
|
|
2695
|
+
var entry = entries[index];
|
|
2696
|
+
if (entry.key === key && (value === undefined || entry.value === value)) {
|
|
2697
|
+
splice(entries, index, 1);
|
|
2698
|
+
if (value !== undefined) break;
|
|
2699
|
+
} else index++;
|
|
2689
2700
|
}
|
|
2690
|
-
if (!DESCRIPTORS$1) this.
|
|
2701
|
+
if (!DESCRIPTORS$1) this.size = entries.length;
|
|
2691
2702
|
state.updateURL();
|
|
2692
2703
|
},
|
|
2693
2704
|
// `URLSearchParams.prototype.get` method
|
|
2694
2705
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-get
|
|
2695
2706
|
get: function get(name) {
|
|
2696
|
-
validateArgumentsLength$1(arguments.length, 1);
|
|
2697
2707
|
var entries = getInternalParamsState(this).entries;
|
|
2708
|
+
validateArgumentsLength$1(arguments.length, 1);
|
|
2698
2709
|
var key = $toString$2(name);
|
|
2699
2710
|
var index = 0;
|
|
2700
2711
|
for (; index < entries.length; index++) {
|
|
@@ -2705,8 +2716,8 @@ defineBuiltIns(URLSearchParamsPrototype, {
|
|
|
2705
2716
|
// `URLSearchParams.prototype.getAll` method
|
|
2706
2717
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-getall
|
|
2707
2718
|
getAll: function getAll(name) {
|
|
2708
|
-
validateArgumentsLength$1(arguments.length, 1);
|
|
2709
2719
|
var entries = getInternalParamsState(this).entries;
|
|
2720
|
+
validateArgumentsLength$1(arguments.length, 1);
|
|
2710
2721
|
var key = $toString$2(name);
|
|
2711
2722
|
var result = [];
|
|
2712
2723
|
var index = 0;
|
|
@@ -2717,21 +2728,24 @@ defineBuiltIns(URLSearchParamsPrototype, {
|
|
|
2717
2728
|
},
|
|
2718
2729
|
// `URLSearchParams.prototype.has` method
|
|
2719
2730
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-has
|
|
2720
|
-
has: function has(name) {
|
|
2721
|
-
validateArgumentsLength$1(arguments.length, 1);
|
|
2731
|
+
has: function has(name /* , value */) {
|
|
2722
2732
|
var entries = getInternalParamsState(this).entries;
|
|
2733
|
+
var length = validateArgumentsLength$1(arguments.length, 1);
|
|
2723
2734
|
var key = $toString$2(name);
|
|
2735
|
+
var $value = length < 2 ? undefined : arguments[1];
|
|
2736
|
+
var value = $value === undefined ? $value : $toString$2($value);
|
|
2724
2737
|
var index = 0;
|
|
2725
2738
|
while (index < entries.length) {
|
|
2726
|
-
|
|
2739
|
+
var entry = entries[index++];
|
|
2740
|
+
if (entry.key === key && (value === undefined || entry.value === value)) return true;
|
|
2727
2741
|
}
|
|
2728
2742
|
return false;
|
|
2729
2743
|
},
|
|
2730
2744
|
// `URLSearchParams.prototype.set` method
|
|
2731
2745
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-set
|
|
2732
2746
|
set: function set(name, value) {
|
|
2733
|
-
validateArgumentsLength$1(arguments.length, 1);
|
|
2734
2747
|
var state = getInternalParamsState(this);
|
|
2748
|
+
validateArgumentsLength$1(arguments.length, 1);
|
|
2735
2749
|
var entries = state.entries;
|
|
2736
2750
|
var found = false;
|
|
2737
2751
|
var key = $toString$2(name);
|
|
@@ -2749,7 +2763,7 @@ defineBuiltIns(URLSearchParamsPrototype, {
|
|
|
2749
2763
|
}
|
|
2750
2764
|
}
|
|
2751
2765
|
if (!found) push$1(entries, { key: key, value: val });
|
|
2752
|
-
if (!DESCRIPTORS$1) this.
|
|
2766
|
+
if (!DESCRIPTORS$1) this.size = entries.length;
|
|
2753
2767
|
state.updateURL();
|
|
2754
2768
|
},
|
|
2755
2769
|
// `URLSearchParams.prototype.sort` method
|
|
@@ -2933,7 +2947,7 @@ var EOF;
|
|
|
2933
2947
|
var parseIPv4 = function (input) {
|
|
2934
2948
|
var parts = split(input, '.');
|
|
2935
2949
|
var partsLength, numbers, index, part, radix, number, ipv4;
|
|
2936
|
-
if (parts.length && parts[parts.length - 1]
|
|
2950
|
+
if (parts.length && parts[parts.length - 1] === '') {
|
|
2937
2951
|
parts.length--;
|
|
2938
2952
|
}
|
|
2939
2953
|
partsLength = parts.length;
|
|
@@ -2941,23 +2955,23 @@ var parseIPv4 = function (input) {
|
|
|
2941
2955
|
numbers = [];
|
|
2942
2956
|
for (index = 0; index < partsLength; index++) {
|
|
2943
2957
|
part = parts[index];
|
|
2944
|
-
if (part
|
|
2958
|
+
if (part === '') return input;
|
|
2945
2959
|
radix = 10;
|
|
2946
|
-
if (part.length > 1 && charAt(part, 0)
|
|
2960
|
+
if (part.length > 1 && charAt(part, 0) === '0') {
|
|
2947
2961
|
radix = exec(HEX_START, part) ? 16 : 8;
|
|
2948
|
-
part = stringSlice$1(part, radix
|
|
2962
|
+
part = stringSlice$1(part, radix === 8 ? 1 : 2);
|
|
2949
2963
|
}
|
|
2950
2964
|
if (part === '') {
|
|
2951
2965
|
number = 0;
|
|
2952
2966
|
} else {
|
|
2953
|
-
if (!exec(radix
|
|
2967
|
+
if (!exec(radix === 10 ? DEC : radix === 8 ? OCT : HEX, part)) return input;
|
|
2954
2968
|
number = parseInt(part, radix);
|
|
2955
2969
|
}
|
|
2956
2970
|
push(numbers, number);
|
|
2957
2971
|
}
|
|
2958
2972
|
for (index = 0; index < partsLength; index++) {
|
|
2959
2973
|
number = numbers[index];
|
|
2960
|
-
if (index
|
|
2974
|
+
if (index === partsLength - 1) {
|
|
2961
2975
|
if (number >= pow(256, 5 - partsLength)) return null;
|
|
2962
2976
|
} else if (number > 255) return null;
|
|
2963
2977
|
}
|
|
@@ -2981,15 +2995,15 @@ var parseIPv6 = function (input) {
|
|
|
2981
2995
|
return charAt(input, pointer);
|
|
2982
2996
|
};
|
|
2983
2997
|
|
|
2984
|
-
if (chr()
|
|
2985
|
-
if (charAt(input, 1)
|
|
2998
|
+
if (chr() === ':') {
|
|
2999
|
+
if (charAt(input, 1) !== ':') return;
|
|
2986
3000
|
pointer += 2;
|
|
2987
3001
|
pieceIndex++;
|
|
2988
3002
|
compress = pieceIndex;
|
|
2989
3003
|
}
|
|
2990
3004
|
while (chr()) {
|
|
2991
|
-
if (pieceIndex
|
|
2992
|
-
if (chr()
|
|
3005
|
+
if (pieceIndex === 8) return;
|
|
3006
|
+
if (chr() === ':') {
|
|
2993
3007
|
if (compress !== null) return;
|
|
2994
3008
|
pointer++;
|
|
2995
3009
|
pieceIndex++;
|
|
@@ -3002,33 +3016,33 @@ var parseIPv6 = function (input) {
|
|
|
3002
3016
|
pointer++;
|
|
3003
3017
|
length++;
|
|
3004
3018
|
}
|
|
3005
|
-
if (chr()
|
|
3006
|
-
if (length
|
|
3019
|
+
if (chr() === '.') {
|
|
3020
|
+
if (length === 0) return;
|
|
3007
3021
|
pointer -= length;
|
|
3008
3022
|
if (pieceIndex > 6) return;
|
|
3009
3023
|
numbersSeen = 0;
|
|
3010
3024
|
while (chr()) {
|
|
3011
3025
|
ipv4Piece = null;
|
|
3012
3026
|
if (numbersSeen > 0) {
|
|
3013
|
-
if (chr()
|
|
3027
|
+
if (chr() === '.' && numbersSeen < 4) pointer++;
|
|
3014
3028
|
else return;
|
|
3015
3029
|
}
|
|
3016
3030
|
if (!exec(DIGIT, chr())) return;
|
|
3017
3031
|
while (exec(DIGIT, chr())) {
|
|
3018
3032
|
number = parseInt(chr(), 10);
|
|
3019
3033
|
if (ipv4Piece === null) ipv4Piece = number;
|
|
3020
|
-
else if (ipv4Piece
|
|
3034
|
+
else if (ipv4Piece === 0) return;
|
|
3021
3035
|
else ipv4Piece = ipv4Piece * 10 + number;
|
|
3022
3036
|
if (ipv4Piece > 255) return;
|
|
3023
3037
|
pointer++;
|
|
3024
3038
|
}
|
|
3025
3039
|
address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;
|
|
3026
3040
|
numbersSeen++;
|
|
3027
|
-
if (numbersSeen
|
|
3041
|
+
if (numbersSeen === 2 || numbersSeen === 4) pieceIndex++;
|
|
3028
3042
|
}
|
|
3029
|
-
if (numbersSeen
|
|
3043
|
+
if (numbersSeen !== 4) return;
|
|
3030
3044
|
break;
|
|
3031
|
-
} else if (chr()
|
|
3045
|
+
} else if (chr() === ':') {
|
|
3032
3046
|
pointer++;
|
|
3033
3047
|
if (!chr()) return;
|
|
3034
3048
|
} else if (chr()) return;
|
|
@@ -3037,12 +3051,12 @@ var parseIPv6 = function (input) {
|
|
|
3037
3051
|
if (compress !== null) {
|
|
3038
3052
|
swaps = pieceIndex - compress;
|
|
3039
3053
|
pieceIndex = 7;
|
|
3040
|
-
while (pieceIndex
|
|
3054
|
+
while (pieceIndex !== 0 && swaps > 0) {
|
|
3041
3055
|
swap = address[pieceIndex];
|
|
3042
3056
|
address[pieceIndex--] = address[compress + swaps - 1];
|
|
3043
3057
|
address[compress + --swaps] = swap;
|
|
3044
3058
|
}
|
|
3045
|
-
} else if (pieceIndex
|
|
3059
|
+
} else if (pieceIndex !== 8) return;
|
|
3046
3060
|
return address;
|
|
3047
3061
|
};
|
|
3048
3062
|
|
|
@@ -3130,15 +3144,15 @@ var specialSchemes = {
|
|
|
3130
3144
|
// https://url.spec.whatwg.org/#windows-drive-letter
|
|
3131
3145
|
var isWindowsDriveLetter = function (string, normalized) {
|
|
3132
3146
|
var second;
|
|
3133
|
-
return string.length
|
|
3134
|
-
&& ((second = charAt(string, 1))
|
|
3147
|
+
return string.length === 2 && exec(ALPHA, charAt(string, 0))
|
|
3148
|
+
&& ((second = charAt(string, 1)) === ':' || (!normalized && second === '|'));
|
|
3135
3149
|
};
|
|
3136
3150
|
|
|
3137
3151
|
// https://url.spec.whatwg.org/#start-with-a-windows-drive-letter
|
|
3138
3152
|
var startsWithWindowsDriveLetter = function (string) {
|
|
3139
3153
|
var third;
|
|
3140
3154
|
return string.length > 1 && isWindowsDriveLetter(stringSlice$1(string, 0, 2)) && (
|
|
3141
|
-
string.length
|
|
3155
|
+
string.length === 2 ||
|
|
3142
3156
|
((third = charAt(string, 2)) === '/' || third === '\\' || third === '?' || third === '#')
|
|
3143
3157
|
);
|
|
3144
3158
|
};
|
|
@@ -3242,27 +3256,27 @@ URLState.prototype = {
|
|
|
3242
3256
|
break;
|
|
3243
3257
|
|
|
3244
3258
|
case SCHEME:
|
|
3245
|
-
if (chr && (exec(ALPHANUMERIC, chr) || chr
|
|
3259
|
+
if (chr && (exec(ALPHANUMERIC, chr) || chr === '+' || chr === '-' || chr === '.')) {
|
|
3246
3260
|
buffer += toLowerCase(chr);
|
|
3247
|
-
} else if (chr
|
|
3261
|
+
} else if (chr === ':') {
|
|
3248
3262
|
if (stateOverride && (
|
|
3249
|
-
(url.isSpecial()
|
|
3250
|
-
(buffer
|
|
3251
|
-
(url.scheme
|
|
3263
|
+
(url.isSpecial() !== hasOwn$1(specialSchemes, buffer)) ||
|
|
3264
|
+
(buffer === 'file' && (url.includesCredentials() || url.port !== null)) ||
|
|
3265
|
+
(url.scheme === 'file' && !url.host)
|
|
3252
3266
|
)) return;
|
|
3253
3267
|
url.scheme = buffer;
|
|
3254
3268
|
if (stateOverride) {
|
|
3255
|
-
if (url.isSpecial() && specialSchemes[url.scheme]
|
|
3269
|
+
if (url.isSpecial() && specialSchemes[url.scheme] === url.port) url.port = null;
|
|
3256
3270
|
return;
|
|
3257
3271
|
}
|
|
3258
3272
|
buffer = '';
|
|
3259
|
-
if (url.scheme
|
|
3273
|
+
if (url.scheme === 'file') {
|
|
3260
3274
|
state = FILE;
|
|
3261
|
-
} else if (url.isSpecial() && base && base.scheme
|
|
3275
|
+
} else if (url.isSpecial() && base && base.scheme === url.scheme) {
|
|
3262
3276
|
state = SPECIAL_RELATIVE_OR_AUTHORITY;
|
|
3263
3277
|
} else if (url.isSpecial()) {
|
|
3264
3278
|
state = SPECIAL_AUTHORITY_SLASHES;
|
|
3265
|
-
} else if (codePoints[pointer + 1]
|
|
3279
|
+
} else if (codePoints[pointer + 1] === '/') {
|
|
3266
3280
|
state = PATH_OR_AUTHORITY;
|
|
3267
3281
|
pointer++;
|
|
3268
3282
|
} else {
|
|
@@ -3279,8 +3293,8 @@ URLState.prototype = {
|
|
|
3279
3293
|
break;
|
|
3280
3294
|
|
|
3281
3295
|
case NO_SCHEME:
|
|
3282
|
-
if (!base || (base.cannotBeABaseURL && chr
|
|
3283
|
-
if (base.cannotBeABaseURL && chr
|
|
3296
|
+
if (!base || (base.cannotBeABaseURL && chr !== '#')) return INVALID_SCHEME;
|
|
3297
|
+
if (base.cannotBeABaseURL && chr === '#') {
|
|
3284
3298
|
url.scheme = base.scheme;
|
|
3285
3299
|
url.path = arraySlice(base.path);
|
|
3286
3300
|
url.query = base.query;
|
|
@@ -3289,11 +3303,11 @@ URLState.prototype = {
|
|
|
3289
3303
|
state = FRAGMENT;
|
|
3290
3304
|
break;
|
|
3291
3305
|
}
|
|
3292
|
-
state = base.scheme
|
|
3306
|
+
state = base.scheme === 'file' ? FILE : RELATIVE;
|
|
3293
3307
|
continue;
|
|
3294
3308
|
|
|
3295
3309
|
case SPECIAL_RELATIVE_OR_AUTHORITY:
|
|
3296
|
-
if (chr
|
|
3310
|
+
if (chr === '/' && codePoints[pointer + 1] === '/') {
|
|
3297
3311
|
state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
|
|
3298
3312
|
pointer++;
|
|
3299
3313
|
} else {
|
|
@@ -3302,7 +3316,7 @@ URLState.prototype = {
|
|
|
3302
3316
|
} break;
|
|
3303
3317
|
|
|
3304
3318
|
case PATH_OR_AUTHORITY:
|
|
3305
|
-
if (chr
|
|
3319
|
+
if (chr === '/') {
|
|
3306
3320
|
state = AUTHORITY;
|
|
3307
3321
|
break;
|
|
3308
3322
|
} else {
|
|
@@ -3312,16 +3326,16 @@ URLState.prototype = {
|
|
|
3312
3326
|
|
|
3313
3327
|
case RELATIVE:
|
|
3314
3328
|
url.scheme = base.scheme;
|
|
3315
|
-
if (chr
|
|
3329
|
+
if (chr === EOF) {
|
|
3316
3330
|
url.username = base.username;
|
|
3317
3331
|
url.password = base.password;
|
|
3318
3332
|
url.host = base.host;
|
|
3319
3333
|
url.port = base.port;
|
|
3320
3334
|
url.path = arraySlice(base.path);
|
|
3321
3335
|
url.query = base.query;
|
|
3322
|
-
} else if (chr
|
|
3336
|
+
} else if (chr === '/' || (chr === '\\' && url.isSpecial())) {
|
|
3323
3337
|
state = RELATIVE_SLASH;
|
|
3324
|
-
} else if (chr
|
|
3338
|
+
} else if (chr === '?') {
|
|
3325
3339
|
url.username = base.username;
|
|
3326
3340
|
url.password = base.password;
|
|
3327
3341
|
url.host = base.host;
|
|
@@ -3329,7 +3343,7 @@ URLState.prototype = {
|
|
|
3329
3343
|
url.path = arraySlice(base.path);
|
|
3330
3344
|
url.query = '';
|
|
3331
3345
|
state = QUERY;
|
|
3332
|
-
} else if (chr
|
|
3346
|
+
} else if (chr === '#') {
|
|
3333
3347
|
url.username = base.username;
|
|
3334
3348
|
url.password = base.password;
|
|
3335
3349
|
url.host = base.host;
|
|
@@ -3350,9 +3364,9 @@ URLState.prototype = {
|
|
|
3350
3364
|
} break;
|
|
3351
3365
|
|
|
3352
3366
|
case RELATIVE_SLASH:
|
|
3353
|
-
if (url.isSpecial() && (chr
|
|
3367
|
+
if (url.isSpecial() && (chr === '/' || chr === '\\')) {
|
|
3354
3368
|
state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
|
|
3355
|
-
} else if (chr
|
|
3369
|
+
} else if (chr === '/') {
|
|
3356
3370
|
state = AUTHORITY;
|
|
3357
3371
|
} else {
|
|
3358
3372
|
url.username = base.username;
|
|
@@ -3365,24 +3379,24 @@ URLState.prototype = {
|
|
|
3365
3379
|
|
|
3366
3380
|
case SPECIAL_AUTHORITY_SLASHES:
|
|
3367
3381
|
state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
|
|
3368
|
-
if (chr
|
|
3382
|
+
if (chr !== '/' || charAt(buffer, pointer + 1) !== '/') continue;
|
|
3369
3383
|
pointer++;
|
|
3370
3384
|
break;
|
|
3371
3385
|
|
|
3372
3386
|
case SPECIAL_AUTHORITY_IGNORE_SLASHES:
|
|
3373
|
-
if (chr
|
|
3387
|
+
if (chr !== '/' && chr !== '\\') {
|
|
3374
3388
|
state = AUTHORITY;
|
|
3375
3389
|
continue;
|
|
3376
3390
|
} break;
|
|
3377
3391
|
|
|
3378
3392
|
case AUTHORITY:
|
|
3379
|
-
if (chr
|
|
3393
|
+
if (chr === '@') {
|
|
3380
3394
|
if (seenAt) buffer = '%40' + buffer;
|
|
3381
3395
|
seenAt = true;
|
|
3382
3396
|
bufferCodePoints = arrayFrom(buffer);
|
|
3383
3397
|
for (var i = 0; i < bufferCodePoints.length; i++) {
|
|
3384
3398
|
var codePoint = bufferCodePoints[i];
|
|
3385
|
-
if (codePoint
|
|
3399
|
+
if (codePoint === ':' && !seenPasswordToken) {
|
|
3386
3400
|
seenPasswordToken = true;
|
|
3387
3401
|
continue;
|
|
3388
3402
|
}
|
|
@@ -3392,10 +3406,10 @@ URLState.prototype = {
|
|
|
3392
3406
|
}
|
|
3393
3407
|
buffer = '';
|
|
3394
3408
|
} else if (
|
|
3395
|
-
chr
|
|
3396
|
-
(chr
|
|
3409
|
+
chr === EOF || chr === '/' || chr === '?' || chr === '#' ||
|
|
3410
|
+
(chr === '\\' && url.isSpecial())
|
|
3397
3411
|
) {
|
|
3398
|
-
if (seenAt && buffer
|
|
3412
|
+
if (seenAt && buffer === '') return INVALID_AUTHORITY;
|
|
3399
3413
|
pointer -= arrayFrom(buffer).length + 1;
|
|
3400
3414
|
buffer = '';
|
|
3401
3415
|
state = HOST;
|
|
@@ -3404,22 +3418,22 @@ URLState.prototype = {
|
|
|
3404
3418
|
|
|
3405
3419
|
case HOST:
|
|
3406
3420
|
case HOSTNAME:
|
|
3407
|
-
if (stateOverride && url.scheme
|
|
3421
|
+
if (stateOverride && url.scheme === 'file') {
|
|
3408
3422
|
state = FILE_HOST;
|
|
3409
3423
|
continue;
|
|
3410
|
-
} else if (chr
|
|
3411
|
-
if (buffer
|
|
3424
|
+
} else if (chr === ':' && !seenBracket) {
|
|
3425
|
+
if (buffer === '') return INVALID_HOST;
|
|
3412
3426
|
failure = url.parseHost(buffer);
|
|
3413
3427
|
if (failure) return failure;
|
|
3414
3428
|
buffer = '';
|
|
3415
3429
|
state = PORT;
|
|
3416
|
-
if (stateOverride
|
|
3430
|
+
if (stateOverride === HOSTNAME) return;
|
|
3417
3431
|
} else if (
|
|
3418
|
-
chr
|
|
3419
|
-
(chr
|
|
3432
|
+
chr === EOF || chr === '/' || chr === '?' || chr === '#' ||
|
|
3433
|
+
(chr === '\\' && url.isSpecial())
|
|
3420
3434
|
) {
|
|
3421
|
-
if (url.isSpecial() && buffer
|
|
3422
|
-
if (stateOverride && buffer
|
|
3435
|
+
if (url.isSpecial() && buffer === '') return INVALID_HOST;
|
|
3436
|
+
if (stateOverride && buffer === '' && (url.includesCredentials() || url.port !== null)) return;
|
|
3423
3437
|
failure = url.parseHost(buffer);
|
|
3424
3438
|
if (failure) return failure;
|
|
3425
3439
|
buffer = '';
|
|
@@ -3427,8 +3441,8 @@ URLState.prototype = {
|
|
|
3427
3441
|
if (stateOverride) return;
|
|
3428
3442
|
continue;
|
|
3429
3443
|
} else {
|
|
3430
|
-
if (chr
|
|
3431
|
-
else if (chr
|
|
3444
|
+
if (chr === '[') seenBracket = true;
|
|
3445
|
+
else if (chr === ']') seenBracket = false;
|
|
3432
3446
|
buffer += chr;
|
|
3433
3447
|
} break;
|
|
3434
3448
|
|
|
@@ -3436,11 +3450,11 @@ URLState.prototype = {
|
|
|
3436
3450
|
if (exec(DIGIT, chr)) {
|
|
3437
3451
|
buffer += chr;
|
|
3438
3452
|
} else if (
|
|
3439
|
-
chr
|
|
3440
|
-
(chr
|
|
3453
|
+
chr === EOF || chr === '/' || chr === '?' || chr === '#' ||
|
|
3454
|
+
(chr === '\\' && url.isSpecial()) ||
|
|
3441
3455
|
stateOverride
|
|
3442
3456
|
) {
|
|
3443
|
-
if (buffer
|
|
3457
|
+
if (buffer !== '') {
|
|
3444
3458
|
var port = parseInt(buffer, 10);
|
|
3445
3459
|
if (port > 0xFFFF) return INVALID_PORT;
|
|
3446
3460
|
url.port = (url.isSpecial() && port === specialSchemes[url.scheme]) ? null : port;
|
|
@@ -3454,31 +3468,35 @@ URLState.prototype = {
|
|
|
3454
3468
|
|
|
3455
3469
|
case FILE:
|
|
3456
3470
|
url.scheme = 'file';
|
|
3457
|
-
if (chr
|
|
3458
|
-
else if (base && base.scheme
|
|
3459
|
-
|
|
3460
|
-
|
|
3461
|
-
url.path = arraySlice(base.path);
|
|
3462
|
-
url.query = base.query;
|
|
3463
|
-
} else if (chr == '?') {
|
|
3464
|
-
url.host = base.host;
|
|
3465
|
-
url.path = arraySlice(base.path);
|
|
3466
|
-
url.query = '';
|
|
3467
|
-
state = QUERY;
|
|
3468
|
-
} else if (chr == '#') {
|
|
3469
|
-
url.host = base.host;
|
|
3470
|
-
url.path = arraySlice(base.path);
|
|
3471
|
-
url.query = base.query;
|
|
3472
|
-
url.fragment = '';
|
|
3473
|
-
state = FRAGMENT;
|
|
3474
|
-
} else {
|
|
3475
|
-
if (!startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {
|
|
3471
|
+
if (chr === '/' || chr === '\\') state = FILE_SLASH;
|
|
3472
|
+
else if (base && base.scheme === 'file') {
|
|
3473
|
+
switch (chr) {
|
|
3474
|
+
case EOF:
|
|
3476
3475
|
url.host = base.host;
|
|
3477
3476
|
url.path = arraySlice(base.path);
|
|
3478
|
-
url.
|
|
3479
|
-
|
|
3480
|
-
|
|
3481
|
-
|
|
3477
|
+
url.query = base.query;
|
|
3478
|
+
break;
|
|
3479
|
+
case '?':
|
|
3480
|
+
url.host = base.host;
|
|
3481
|
+
url.path = arraySlice(base.path);
|
|
3482
|
+
url.query = '';
|
|
3483
|
+
state = QUERY;
|
|
3484
|
+
break;
|
|
3485
|
+
case '#':
|
|
3486
|
+
url.host = base.host;
|
|
3487
|
+
url.path = arraySlice(base.path);
|
|
3488
|
+
url.query = base.query;
|
|
3489
|
+
url.fragment = '';
|
|
3490
|
+
state = FRAGMENT;
|
|
3491
|
+
break;
|
|
3492
|
+
default:
|
|
3493
|
+
if (!startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {
|
|
3494
|
+
url.host = base.host;
|
|
3495
|
+
url.path = arraySlice(base.path);
|
|
3496
|
+
url.shortenPath();
|
|
3497
|
+
}
|
|
3498
|
+
state = PATH;
|
|
3499
|
+
continue;
|
|
3482
3500
|
}
|
|
3483
3501
|
} else {
|
|
3484
3502
|
state = PATH;
|
|
@@ -3486,11 +3504,11 @@ URLState.prototype = {
|
|
|
3486
3504
|
} break;
|
|
3487
3505
|
|
|
3488
3506
|
case FILE_SLASH:
|
|
3489
|
-
if (chr
|
|
3507
|
+
if (chr === '/' || chr === '\\') {
|
|
3490
3508
|
state = FILE_HOST;
|
|
3491
3509
|
break;
|
|
3492
3510
|
}
|
|
3493
|
-
if (base && base.scheme
|
|
3511
|
+
if (base && base.scheme === 'file' && !startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {
|
|
3494
3512
|
if (isWindowsDriveLetter(base.path[0], true)) push(url.path, base.path[0]);
|
|
3495
3513
|
else url.host = base.host;
|
|
3496
3514
|
}
|
|
@@ -3498,17 +3516,17 @@ URLState.prototype = {
|
|
|
3498
3516
|
continue;
|
|
3499
3517
|
|
|
3500
3518
|
case FILE_HOST:
|
|
3501
|
-
if (chr
|
|
3519
|
+
if (chr === EOF || chr === '/' || chr === '\\' || chr === '?' || chr === '#') {
|
|
3502
3520
|
if (!stateOverride && isWindowsDriveLetter(buffer)) {
|
|
3503
3521
|
state = PATH;
|
|
3504
|
-
} else if (buffer
|
|
3522
|
+
} else if (buffer === '') {
|
|
3505
3523
|
url.host = '';
|
|
3506
3524
|
if (stateOverride) return;
|
|
3507
3525
|
state = PATH_START;
|
|
3508
3526
|
} else {
|
|
3509
3527
|
failure = url.parseHost(buffer);
|
|
3510
3528
|
if (failure) return failure;
|
|
3511
|
-
if (url.host
|
|
3529
|
+
if (url.host === 'localhost') url.host = '';
|
|
3512
3530
|
if (stateOverride) return;
|
|
3513
3531
|
buffer = '';
|
|
3514
3532
|
state = PATH_START;
|
|
@@ -3519,50 +3537,50 @@ URLState.prototype = {
|
|
|
3519
3537
|
case PATH_START:
|
|
3520
3538
|
if (url.isSpecial()) {
|
|
3521
3539
|
state = PATH;
|
|
3522
|
-
if (chr
|
|
3523
|
-
} else if (!stateOverride && chr
|
|
3540
|
+
if (chr !== '/' && chr !== '\\') continue;
|
|
3541
|
+
} else if (!stateOverride && chr === '?') {
|
|
3524
3542
|
url.query = '';
|
|
3525
3543
|
state = QUERY;
|
|
3526
|
-
} else if (!stateOverride && chr
|
|
3544
|
+
} else if (!stateOverride && chr === '#') {
|
|
3527
3545
|
url.fragment = '';
|
|
3528
3546
|
state = FRAGMENT;
|
|
3529
|
-
} else if (chr
|
|
3547
|
+
} else if (chr !== EOF) {
|
|
3530
3548
|
state = PATH;
|
|
3531
|
-
if (chr
|
|
3549
|
+
if (chr !== '/') continue;
|
|
3532
3550
|
} break;
|
|
3533
3551
|
|
|
3534
3552
|
case PATH:
|
|
3535
3553
|
if (
|
|
3536
|
-
chr
|
|
3537
|
-
(chr
|
|
3538
|
-
(!stateOverride && (chr
|
|
3554
|
+
chr === EOF || chr === '/' ||
|
|
3555
|
+
(chr === '\\' && url.isSpecial()) ||
|
|
3556
|
+
(!stateOverride && (chr === '?' || chr === '#'))
|
|
3539
3557
|
) {
|
|
3540
3558
|
if (isDoubleDot(buffer)) {
|
|
3541
3559
|
url.shortenPath();
|
|
3542
|
-
if (chr
|
|
3560
|
+
if (chr !== '/' && !(chr === '\\' && url.isSpecial())) {
|
|
3543
3561
|
push(url.path, '');
|
|
3544
3562
|
}
|
|
3545
3563
|
} else if (isSingleDot(buffer)) {
|
|
3546
|
-
if (chr
|
|
3564
|
+
if (chr !== '/' && !(chr === '\\' && url.isSpecial())) {
|
|
3547
3565
|
push(url.path, '');
|
|
3548
3566
|
}
|
|
3549
3567
|
} else {
|
|
3550
|
-
if (url.scheme
|
|
3568
|
+
if (url.scheme === 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {
|
|
3551
3569
|
if (url.host) url.host = '';
|
|
3552
3570
|
buffer = charAt(buffer, 0) + ':'; // normalize windows drive letter
|
|
3553
3571
|
}
|
|
3554
3572
|
push(url.path, buffer);
|
|
3555
3573
|
}
|
|
3556
3574
|
buffer = '';
|
|
3557
|
-
if (url.scheme
|
|
3575
|
+
if (url.scheme === 'file' && (chr === EOF || chr === '?' || chr === '#')) {
|
|
3558
3576
|
while (url.path.length > 1 && url.path[0] === '') {
|
|
3559
3577
|
shift(url.path);
|
|
3560
3578
|
}
|
|
3561
3579
|
}
|
|
3562
|
-
if (chr
|
|
3580
|
+
if (chr === '?') {
|
|
3563
3581
|
url.query = '';
|
|
3564
3582
|
state = QUERY;
|
|
3565
|
-
} else if (chr
|
|
3583
|
+
} else if (chr === '#') {
|
|
3566
3584
|
url.fragment = '';
|
|
3567
3585
|
state = FRAGMENT;
|
|
3568
3586
|
}
|
|
@@ -3571,28 +3589,28 @@ URLState.prototype = {
|
|
|
3571
3589
|
} break;
|
|
3572
3590
|
|
|
3573
3591
|
case CANNOT_BE_A_BASE_URL_PATH:
|
|
3574
|
-
if (chr
|
|
3592
|
+
if (chr === '?') {
|
|
3575
3593
|
url.query = '';
|
|
3576
3594
|
state = QUERY;
|
|
3577
|
-
} else if (chr
|
|
3595
|
+
} else if (chr === '#') {
|
|
3578
3596
|
url.fragment = '';
|
|
3579
3597
|
state = FRAGMENT;
|
|
3580
|
-
} else if (chr
|
|
3598
|
+
} else if (chr !== EOF) {
|
|
3581
3599
|
url.path[0] += percentEncode(chr, C0ControlPercentEncodeSet);
|
|
3582
3600
|
} break;
|
|
3583
3601
|
|
|
3584
3602
|
case QUERY:
|
|
3585
|
-
if (!stateOverride && chr
|
|
3603
|
+
if (!stateOverride && chr === '#') {
|
|
3586
3604
|
url.fragment = '';
|
|
3587
3605
|
state = FRAGMENT;
|
|
3588
|
-
} else if (chr
|
|
3589
|
-
if (chr
|
|
3590
|
-
else if (chr
|
|
3606
|
+
} else if (chr !== EOF) {
|
|
3607
|
+
if (chr === "'" && url.isSpecial()) url.query += '%27';
|
|
3608
|
+
else if (chr === '#') url.query += '%23';
|
|
3591
3609
|
else url.query += percentEncode(chr, C0ControlPercentEncodeSet);
|
|
3592
3610
|
} break;
|
|
3593
3611
|
|
|
3594
3612
|
case FRAGMENT:
|
|
3595
|
-
if (chr
|
|
3613
|
+
if (chr !== EOF) url.fragment += percentEncode(chr, fragmentPercentEncodeSet);
|
|
3596
3614
|
break;
|
|
3597
3615
|
}
|
|
3598
3616
|
|
|
@@ -3602,8 +3620,8 @@ URLState.prototype = {
|
|
|
3602
3620
|
// https://url.spec.whatwg.org/#host-parsing
|
|
3603
3621
|
parseHost: function (input) {
|
|
3604
3622
|
var result, codePoints, index;
|
|
3605
|
-
if (charAt(input, 0)
|
|
3606
|
-
if (charAt(input, input.length - 1)
|
|
3623
|
+
if (charAt(input, 0) === '[') {
|
|
3624
|
+
if (charAt(input, input.length - 1) !== ']') return INVALID_HOST;
|
|
3607
3625
|
result = parseIPv6(stringSlice$1(input, 1, -1));
|
|
3608
3626
|
if (!result) return INVALID_HOST;
|
|
3609
3627
|
this.host = result;
|
|
@@ -3626,11 +3644,11 @@ URLState.prototype = {
|
|
|
3626
3644
|
},
|
|
3627
3645
|
// https://url.spec.whatwg.org/#cannot-have-a-username-password-port
|
|
3628
3646
|
cannotHaveUsernamePasswordPort: function () {
|
|
3629
|
-
return !this.host || this.cannotBeABaseURL || this.scheme
|
|
3647
|
+
return !this.host || this.cannotBeABaseURL || this.scheme === 'file';
|
|
3630
3648
|
},
|
|
3631
3649
|
// https://url.spec.whatwg.org/#include-credentials
|
|
3632
3650
|
includesCredentials: function () {
|
|
3633
|
-
return this.username
|
|
3651
|
+
return this.username !== '' || this.password !== '';
|
|
3634
3652
|
},
|
|
3635
3653
|
// https://url.spec.whatwg.org/#is-special
|
|
3636
3654
|
isSpecial: function () {
|
|
@@ -3640,7 +3658,7 @@ URLState.prototype = {
|
|
|
3640
3658
|
shortenPath: function () {
|
|
3641
3659
|
var path = this.path;
|
|
3642
3660
|
var pathSize = path.length;
|
|
3643
|
-
if (pathSize && (this.scheme
|
|
3661
|
+
if (pathSize && (this.scheme !== 'file' || pathSize !== 1 || !isWindowsDriveLetter(path[0], true))) {
|
|
3644
3662
|
path.length--;
|
|
3645
3663
|
}
|
|
3646
3664
|
},
|
|
@@ -3663,7 +3681,7 @@ URLState.prototype = {
|
|
|
3663
3681
|
}
|
|
3664
3682
|
output += serializeHost(host);
|
|
3665
3683
|
if (port !== null) output += ':' + port;
|
|
3666
|
-
} else if (scheme
|
|
3684
|
+
} else if (scheme === 'file') output += '//';
|
|
3667
3685
|
output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + join(path, '/') : '';
|
|
3668
3686
|
if (query !== null) output += '?' + query;
|
|
3669
3687
|
if (fragment !== null) output += '#' + fragment;
|
|
@@ -3679,12 +3697,12 @@ URLState.prototype = {
|
|
|
3679
3697
|
getOrigin: function () {
|
|
3680
3698
|
var scheme = this.scheme;
|
|
3681
3699
|
var port = this.port;
|
|
3682
|
-
if (scheme
|
|
3700
|
+
if (scheme === 'blob') try {
|
|
3683
3701
|
return new URLConstructor(scheme.path[0]).origin;
|
|
3684
3702
|
} catch (error) {
|
|
3685
3703
|
return 'null';
|
|
3686
3704
|
}
|
|
3687
|
-
if (scheme
|
|
3705
|
+
if (scheme === 'file' || !this.isSpecial()) return 'null';
|
|
3688
3706
|
return scheme + '://' + serializeHost(this.host) + (port !== null ? ':' + port : '');
|
|
3689
3707
|
},
|
|
3690
3708
|
// https://url.spec.whatwg.org/#dom-url-protocol
|
|
@@ -3747,7 +3765,7 @@ URLState.prototype = {
|
|
|
3747
3765
|
setPort: function (port) {
|
|
3748
3766
|
if (this.cannotHaveUsernamePasswordPort()) return;
|
|
3749
3767
|
port = $toString$1(port);
|
|
3750
|
-
if (port
|
|
3768
|
+
if (port === '') this.port = null;
|
|
3751
3769
|
else this.parse(port, PORT);
|
|
3752
3770
|
},
|
|
3753
3771
|
// https://url.spec.whatwg.org/#dom-url-pathname
|
|
@@ -3767,10 +3785,10 @@ URLState.prototype = {
|
|
|
3767
3785
|
},
|
|
3768
3786
|
setSearch: function (search) {
|
|
3769
3787
|
search = $toString$1(search);
|
|
3770
|
-
if (search
|
|
3788
|
+
if (search === '') {
|
|
3771
3789
|
this.query = null;
|
|
3772
3790
|
} else {
|
|
3773
|
-
if (
|
|
3791
|
+
if (charAt(search, 0) === '?') search = stringSlice$1(search, 1);
|
|
3774
3792
|
this.query = '';
|
|
3775
3793
|
this.parse(search, QUERY);
|
|
3776
3794
|
}
|
|
@@ -3787,11 +3805,11 @@ URLState.prototype = {
|
|
|
3787
3805
|
},
|
|
3788
3806
|
setHash: function (hash) {
|
|
3789
3807
|
hash = $toString$1(hash);
|
|
3790
|
-
if (hash
|
|
3808
|
+
if (hash === '') {
|
|
3791
3809
|
this.fragment = null;
|
|
3792
3810
|
return;
|
|
3793
3811
|
}
|
|
3794
|
-
if (
|
|
3812
|
+
if (charAt(hash, 0) === '#') hash = stringSlice$1(hash, 1);
|
|
3795
3813
|
this.fragment = '';
|
|
3796
3814
|
this.parse(hash, FRAGMENT);
|
|
3797
3815
|
},
|
|
@@ -3915,7 +3933,7 @@ var MATCH$1 = wellKnownSymbol$1('match');
|
|
|
3915
3933
|
// https://tc39.es/ecma262/#sec-isregexp
|
|
3916
3934
|
var isRegexp = function (it) {
|
|
3917
3935
|
var isRegExp;
|
|
3918
|
-
return isObject(it) && ((isRegExp = it[MATCH$1]) !== undefined ? !!isRegExp : classof(it)
|
|
3936
|
+
return isObject(it) && ((isRegExp = it[MATCH$1]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');
|
|
3919
3937
|
};
|
|
3920
3938
|
|
|
3921
3939
|
var isRegExp = isRegexp;
|
|
@@ -4003,9 +4021,9 @@ var TO_STRING = 'toString';
|
|
|
4003
4021
|
var RegExpPrototype = RegExp.prototype;
|
|
4004
4022
|
var nativeToString = RegExpPrototype[TO_STRING];
|
|
4005
4023
|
|
|
4006
|
-
var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' })
|
|
4024
|
+
var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) !== '/a/b'; });
|
|
4007
4025
|
// FF44- RegExp#toString has a wrong name
|
|
4008
|
-
var INCORRECT_NAME = PROPER_FUNCTION_NAME && nativeToString.name
|
|
4026
|
+
var INCORRECT_NAME = PROPER_FUNCTION_NAME && nativeToString.name !== TO_STRING;
|
|
4009
4027
|
|
|
4010
4028
|
// `RegExp.prototype.toString` method
|
|
4011
4029
|
// https://tc39.es/ecma262/#sec-regexp.prototype.tostring
|
|
@@ -4018,13 +4036,33 @@ if (NOT_GENERIC || INCORRECT_NAME) {
|
|
|
4018
4036
|
}, { unsafe: true });
|
|
4019
4037
|
}
|
|
4020
4038
|
|
|
4021
|
-
var Chanukah="Hanukkah, the Jewish festival of rededication. Also known as the Festival of Lights, the eight-day festival is observed by lighting the candles of a hanukkiah (menorah)";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. Also called the Feast of Tabernacles, the seven-day holiday is one of the Three Pilgrimage Festivals (Hebrew: שלוש רגלים, shalosh regalim)";var holidayDescription = {"Asara B'Tevet":"Fast commemorating the siege of Jerusalem","Ben-Gurion Day":"Commemorates the life and vision of Israel's first Prime Minister David Ben-Gurion","Birkat Hachamah":"A rare Jewish blessing recited once every 28 years thanking G-d for creating the sun","Chag HaBanot":"North African Chanukah festival of daughters. Called Eid al-Banat in Arabic, the holiday was most preserved in Tunisia",Chanukah:Chanukah,"Days of the Omer":"7 weeks from the second night of Pesach to the day before Shavuot. Also called Sefirat HaOmer, it is a practice that consists of a verbal counting of each of the forty-nine days between the two holidays","Family Day":"Yom HaMishpacha, a day to honor the family unit","Herzl Day":"Commemorates the life and vision of Zionist leader Theodor Herzl","Jabotinsky Day":"Commemorates the life and vision of Zionist leader Ze'ev Jabotinsky","Lag BaOmer":"33rd day of counting the Omer. The holiday is a temporary break from the semi-mourning period the counting of the Omer. Practices include lighting bonfires, getting haircuts, and Jewish weddings","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,"Purim Meshulash":"Triple Purim, spanning 3 days in Jerusalem and walled cities. It occurs when the 15th of Adar coincides with Shabbat","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 of Prophecy/Shabbat of Vision. Shabbat before Tish'a B'Av","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. Immediately following Sukkot, it is observed as a separate holiday in the Diaspora and is combined with Simchat Torah in Israel","Shushan Purim":"Purim celebrated in Jerusalem and walled cities","Shushan Purim Katan":"Minor Purim celebration during Adar I on leap years in Jerusalem and walled cities",Sigd:Sigd,"Simchat Torah":"Day of Celebrating the Torah. Celebration marking the conclusion of the annual cycle of public Torah readings, and the beginning of a new cycle",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. Tu BiShvat is one of four “New Years” mentioned in the Mishnah","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","Yitzhak Rabin Memorial Day":"Commemorates the life of Israeli Prime Minister Yitzhak Rabin","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. 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. Remembers those who died in the War of Independence and other wars in Israel. The full name of the holiday is Yom HaZikaron LeHalalei Ma'arakhot Yisrael ul'Nifge'ei Pe'ulot HaEivah (Hebrew: יוֹם הזִּכָּרוֹן לְחַלְלֵי מַעֲרָכוֹת יִשְׂרָאֵל וּלְנִפְגְעֵי פְּעֻלּוֹת הָאֵיבָה), Memorial Day for the Fallen Soldiers of the Wars of Israel and Victims of Actions of Terrorism. 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. The holiest day of the year in Judaism, traditionally observed with a 25-hour period of fasting and intensive prayer","Yom Kippur Katan":"Minor day of atonement occurring monthly on the day preceeding each Rosh Chodesh","Yom Yerushalayim":"Jerusalem Day. Commemorates the re-unification of Jerusalem in 1967"};
|
|
4039
|
+
var Chanukah="Hanukkah, the Jewish festival of rededication. Also known as the Festival of Lights, the eight-day festival is observed by lighting the candles of a hanukkiah (menorah)";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. Also called the Feast of Tabernacles, the seven-day holiday is one of the Three Pilgrimage Festivals (Hebrew: שלוש רגלים, shalosh regalim)";var holidayDescription = {"Asara B'Tevet":"Fast commemorating the siege of Jerusalem","Ben-Gurion Day":"Commemorates the life and vision of Israel's first Prime Minister David Ben-Gurion","Birkat Hachamah":"A rare Jewish blessing recited once every 28 years thanking G-d for creating the sun","Chag HaBanot":"North African Chanukah festival of daughters. Called Eid al-Banat in Arabic, the holiday was most preserved in Tunisia",Chanukah:Chanukah,"Days of the Omer":"7 weeks from the second night of Pesach to the day before Shavuot. Also called Sefirat HaOmer, it is a practice that consists of a verbal counting of each of the forty-nine days between the two holidays","Family Day":"Yom HaMishpacha, a day to honor the family unit","Herzl Day":"Commemorates the life and vision of Zionist leader Theodor Herzl","Jabotinsky Day":"Commemorates the life and vision of Zionist leader Ze'ev Jabotinsky","Lag BaOmer":"33rd day of counting the Omer. The holiday is a temporary break from the semi-mourning period the counting of the Omer. Practices include lighting bonfires, getting haircuts, and Jewish weddings","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,"Purim Meshulash":"Triple Purim, spanning 3 days in Jerusalem and walled cities. It occurs when the 15th of Adar coincides with Shabbat","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 of Prophecy/Shabbat of Vision. Shabbat before Tish'a B'Av","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. Immediately following Sukkot, it is observed as a separate holiday in the Diaspora and is combined with Simchat Torah in Israel","Shushan Purim":"Purim celebrated in Jerusalem and walled cities","Shushan Purim Katan":"Minor Purim celebration during Adar I on leap years in Jerusalem and walled cities",Sigd:Sigd,"Simchat Torah":"Day of Celebrating the Torah. Celebration marking the conclusion of the annual cycle of public Torah readings, and the beginning of a new cycle",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. Tu BiShvat is one of four “New Years” mentioned in the Mishnah","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","Yitzhak Rabin Memorial Day":"Commemorates the life of Israeli Prime Minister Yitzhak Rabin","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. 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. Remembers those who died in the War of Independence and other wars in Israel. The full name of the holiday is Yom HaZikaron LeHalalei Ma'arakhot Yisrael ul'Nifge'ei Pe'ulot HaEivah (Hebrew: יוֹם הזִּכָּרוֹן לְחַלְלֵי מַעֲרָכוֹת יִשְׂרָאֵל וּלְנִפְגְעֵי פְּעֻלּוֹת הָאֵיבָה), Memorial Day for the Fallen Soldiers of the Wars of Israel and Victims of Actions of Terrorism. 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. The holiest day of the year in Judaism, traditionally observed with a 25-hour period of fasting and intensive prayer","Yom Kippur Katan":"Minor day of atonement occurring monthly on the day preceeding each Rosh Chodesh","Yom Yerushalayim":"Jerusalem Day. Commemorates the re-unification of Jerusalem in 1967"};
|
|
4022
4040
|
|
|
4023
4041
|
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};
|
|
4024
4042
|
|
|
4025
4043
|
/**
|
|
4044
|
+
* Location information
|
|
4045
|
+
* @typedef {Object} LocationPlainObj
|
|
4046
|
+
* @property {string} title
|
|
4047
|
+
* @property {string} city
|
|
4048
|
+
* @property {string} tzid
|
|
4049
|
+
* @property {number} latitude
|
|
4050
|
+
* @property {number} longitude
|
|
4051
|
+
* @property {string} cc
|
|
4052
|
+
* @property {string} country
|
|
4053
|
+
* @property {string} admin1
|
|
4054
|
+
* @property {string} asciiname
|
|
4055
|
+
* @property {string} geo
|
|
4056
|
+
* @property {string} zip
|
|
4057
|
+
* @property {string} state
|
|
4058
|
+
* @property {string} stateName
|
|
4059
|
+
* @property {number} geonameid
|
|
4060
|
+
*/
|
|
4061
|
+
|
|
4062
|
+
/**
|
|
4063
|
+
* Converts a @hebcal/core `Location` to a plain JS object.
|
|
4026
4064
|
* @param {Location} location
|
|
4027
|
-
* @return {
|
|
4065
|
+
* @return {LocationPlainObj}
|
|
4028
4066
|
*/
|
|
4029
4067
|
function locationToPlainObj(location) {
|
|
4030
4068
|
if (typeof location === 'object' && location !== null && typeof location.name === 'string') {
|
|
@@ -4207,7 +4245,8 @@ function getCalendarTitle(events, options) {
|
|
|
4207
4245
|
*/
|
|
4208
4246
|
function getHolidayDescription(ev) {
|
|
4209
4247
|
let firstSentence = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
4210
|
-
const
|
|
4248
|
+
const str0 = holidayDescription[ev.getDesc()] || holidayDescription[ev.basename()] || '';
|
|
4249
|
+
const str = str0.normalize();
|
|
4211
4250
|
if (firstSentence && str) {
|
|
4212
4251
|
const dot = str.indexOf('.');
|
|
4213
4252
|
if (dot != -1) {
|
|
@@ -4568,8 +4607,8 @@ function eventToClassicApiObject(ev, options) {
|
|
|
4568
4607
|
};
|
|
4569
4608
|
}
|
|
4570
4609
|
const memo = ev.memo || holidayDescription[ev.basename()];
|
|
4571
|
-
if (memo) {
|
|
4572
|
-
result.memo = memo;
|
|
4610
|
+
if (typeof memo === 'string' && memo.length !== 0) {
|
|
4611
|
+
result.memo = memo.normalize();
|
|
4573
4612
|
} else if (typeof ev.linkedEvent !== 'undefined') {
|
|
4574
4613
|
result.memo = ev.linkedEvent.render(options.locale);
|
|
4575
4614
|
}
|