@dereekb/util 10.1.9 → 10.1.10

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/index.esm.js CHANGED
@@ -33,21 +33,21 @@ var functionUncurryThis = NATIVE_BIND$3 ? uncurryThisWithBind : function (fn) {
33
33
  };
34
34
  };
35
35
 
36
- var uncurryThis$s = functionUncurryThis;
36
+ var uncurryThis$t = functionUncurryThis;
37
37
 
38
- var toString$e = uncurryThis$s({}.toString);
39
- var stringSlice$a = uncurryThis$s(''.slice);
38
+ var toString$f = uncurryThis$t({}.toString);
39
+ var stringSlice$b = uncurryThis$t(''.slice);
40
40
 
41
41
  var classofRaw$2 = function (it) {
42
- return stringSlice$a(toString$e(it), 8, -1);
42
+ return stringSlice$b(toString$f(it), 8, -1);
43
43
  };
44
44
 
45
- var uncurryThis$r = functionUncurryThis;
45
+ var uncurryThis$s = functionUncurryThis;
46
46
  var fails$n = fails$p;
47
47
  var classof$8 = classofRaw$2;
48
48
 
49
49
  var $Object$4 = Object;
50
- var split = uncurryThis$r(''.split);
50
+ var split = uncurryThis$s(''.split);
51
51
 
52
52
  // fallback for non-array-like ES3 and non-enumerable old V8 strings
53
53
  var indexedObject = fails$n(function () {
@@ -70,17 +70,17 @@ var $TypeError$h = TypeError;
70
70
 
71
71
  // `RequireObjectCoercible` abstract operation
72
72
  // https://tc39.es/ecma262/#sec-requireobjectcoercible
73
- var requireObjectCoercible$a = function (it) {
73
+ var requireObjectCoercible$b = function (it) {
74
74
  if (isNullOrUndefined$6(it)) throw new $TypeError$h("Can't call method on " + it);
75
75
  return it;
76
76
  };
77
77
 
78
78
  // toObject with fallback for non-array-like ES3 strings
79
79
  var IndexedObject$2 = indexedObject;
80
- var requireObjectCoercible$9 = requireObjectCoercible$a;
80
+ var requireObjectCoercible$a = requireObjectCoercible$b;
81
81
 
82
82
  var toIndexedObject$5 = function (it) {
83
- return IndexedObject$2(requireObjectCoercible$9(it));
83
+ return IndexedObject$2(requireObjectCoercible$a(it));
84
84
  };
85
85
 
86
86
  var check = function (it) {
@@ -134,20 +134,20 @@ var store$2 = sharedStore;
134
134
  source: 'https://github.com/zloirock/core-js'
135
135
  });
136
136
 
137
- var requireObjectCoercible$8 = requireObjectCoercible$a;
137
+ var requireObjectCoercible$9 = requireObjectCoercible$b;
138
138
 
139
139
  var $Object$3 = Object;
140
140
 
141
141
  // `ToObject` abstract operation
142
142
  // https://tc39.es/ecma262/#sec-toobject
143
143
  var toObject$7 = function (argument) {
144
- return $Object$3(requireObjectCoercible$8(argument));
144
+ return $Object$3(requireObjectCoercible$9(argument));
145
145
  };
146
146
 
147
- var uncurryThis$q = functionUncurryThis;
147
+ var uncurryThis$r = functionUncurryThis;
148
148
  var toObject$6 = toObject$7;
149
149
 
150
- var hasOwnProperty = uncurryThis$q({}.hasOwnProperty);
150
+ var hasOwnProperty = uncurryThis$r({}.hasOwnProperty);
151
151
 
152
152
  // `HasOwnProperty` abstract operation
153
153
  // https://tc39.es/ecma262/#sec-hasownproperty
@@ -156,20 +156,20 @@ var hasOwnProperty_1 = Object.hasOwn || function hasOwn(it, key) {
156
156
  return hasOwnProperty(toObject$6(it), key);
157
157
  };
158
158
 
159
- var uncurryThis$p = functionUncurryThis;
159
+ var uncurryThis$q = functionUncurryThis;
160
160
 
161
161
  var id = 0;
162
162
  var postfix = Math.random();
163
- var toString$d = uncurryThis$p(1.0.toString);
163
+ var toString$e = uncurryThis$q(1.0.toString);
164
164
 
165
165
  var uid$2 = function (key) {
166
- return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString$d(++id + postfix, 36);
166
+ return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString$e(++id + postfix, 36);
167
167
  };
168
168
 
169
169
  var engineUserAgent = typeof navigator != 'undefined' && String(navigator.userAgent) || '';
170
170
 
171
171
  var global$l = global$o;
172
- var userAgent$5 = engineUserAgent;
172
+ var userAgent$6 = engineUserAgent;
173
173
 
174
174
  var process$3 = global$l.process;
175
175
  var Deno$1 = global$l.Deno;
@@ -186,10 +186,10 @@ if (v8) {
186
186
 
187
187
  // BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`
188
188
  // so check `userAgent` even if `.v8` exists, but 0
189
- if (!version && userAgent$5) {
190
- match = userAgent$5.match(/Edge\/(\d+)/);
189
+ if (!version && userAgent$6) {
190
+ match = userAgent$6.match(/Edge\/(\d+)/);
191
191
  if (!match || match[1] >= 74) {
192
- match = userAgent$5.match(/Chrome\/(\d+)/);
192
+ match = userAgent$6.match(/Chrome\/(\d+)/);
193
193
  if (match) version = +match[1];
194
194
  }
195
195
  }
@@ -337,9 +337,9 @@ var getBuiltIn$7 = function (namespace, method) {
337
337
  return arguments.length < 2 ? aFunction(global$h[namespace]) : global$h[namespace] && global$h[namespace][method];
338
338
  };
339
339
 
340
- var uncurryThis$o = functionUncurryThis;
340
+ var uncurryThis$p = functionUncurryThis;
341
341
 
342
- var objectIsPrototypeOf = uncurryThis$o({}.isPrototypeOf);
342
+ var objectIsPrototypeOf = uncurryThis$p({}.isPrototypeOf);
343
343
 
344
344
  var getBuiltIn$6 = getBuiltIn$7;
345
345
  var isCallable$k = isCallable$n;
@@ -482,7 +482,7 @@ objectDefineProperty.f = DESCRIPTORS$b ? V8_PROTOTYPE_DEFINE_BUG$1 ? function de
482
482
  return O;
483
483
  };
484
484
 
485
- var ceil = Math.ceil;
485
+ var ceil$1 = Math.ceil;
486
486
  var floor$3 = Math.floor;
487
487
 
488
488
  // `Math.trunc` method
@@ -490,7 +490,7 @@ var floor$3 = Math.floor;
490
490
  // eslint-disable-next-line es/no-math-trunc -- safe
491
491
  var mathTrunc = Math.trunc || function trunc(x) {
492
492
  var n = +x;
493
- return (n > 0 ? floor$3 : ceil)(n);
493
+ return (n > 0 ? floor$3 : ceil$1)(n);
494
494
  };
495
495
 
496
496
  var trunc = mathTrunc;
@@ -522,17 +522,17 @@ var min$4 = Math.min;
522
522
 
523
523
  // `ToLength` abstract operation
524
524
  // https://tc39.es/ecma262/#sec-tolength
525
- var toLength$6 = function (argument) {
525
+ var toLength$7 = function (argument) {
526
526
  var len = toIntegerOrInfinity$5(argument);
527
527
  return len > 0 ? min$4(len, 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
528
528
  };
529
529
 
530
- var toLength$5 = toLength$6;
530
+ var toLength$6 = toLength$7;
531
531
 
532
532
  // `LengthOfArrayLike` abstract operation
533
533
  // https://tc39.es/ecma262/#sec-lengthofarraylike
534
534
  var lengthOfArrayLike$6 = function (obj) {
535
- return toLength$5(obj.length);
535
+ return toLength$6(obj.length);
536
536
  };
537
537
 
538
538
  var toIndexedObject$4 = toIndexedObject$5;
@@ -540,7 +540,7 @@ var toAbsoluteIndex = toAbsoluteIndex$1;
540
540
  var lengthOfArrayLike$5 = lengthOfArrayLike$6;
541
541
 
542
542
  // `Array.prototype.{ indexOf, includes }` methods implementation
543
- var createMethod$3 = function (IS_INCLUDES) {
543
+ var createMethod$4 = function (IS_INCLUDES) {
544
544
  return function ($this, el, fromIndex) {
545
545
  var O = toIndexedObject$4($this);
546
546
  var length = lengthOfArrayLike$5(O);
@@ -562,21 +562,21 @@ var createMethod$3 = function (IS_INCLUDES) {
562
562
  var arrayIncludes = {
563
563
  // `Array.prototype.includes` method
564
564
  // https://tc39.es/ecma262/#sec-array.prototype.includes
565
- includes: createMethod$3(true),
565
+ includes: createMethod$4(true),
566
566
  // `Array.prototype.indexOf` method
567
567
  // https://tc39.es/ecma262/#sec-array.prototype.indexof
568
- indexOf: createMethod$3(false)
568
+ indexOf: createMethod$4(false)
569
569
  };
570
570
 
571
571
  var hiddenKeys$4 = {};
572
572
 
573
- var uncurryThis$n = functionUncurryThis;
573
+ var uncurryThis$o = functionUncurryThis;
574
574
  var hasOwn$b = hasOwnProperty_1;
575
575
  var toIndexedObject$3 = toIndexedObject$5;
576
576
  var indexOf$1 = arrayIncludes.indexOf;
577
577
  var hiddenKeys$3 = hiddenKeys$4;
578
578
 
579
- var push$3 = uncurryThis$n([].push);
579
+ var push$3 = uncurryThis$o([].push);
580
580
 
581
581
  var objectKeysInternal = function (object, names) {
582
582
  var O = toIndexedObject$3(object);
@@ -912,11 +912,11 @@ var functionName = {
912
912
  CONFIGURABLE: CONFIGURABLE
913
913
  };
914
914
 
915
- var uncurryThis$m = functionUncurryThis;
915
+ var uncurryThis$n = functionUncurryThis;
916
916
  var isCallable$g = isCallable$n;
917
917
  var store = sharedStore;
918
918
 
919
- var functionToString = uncurryThis$m(Function.toString);
919
+ var functionToString = uncurryThis$n(Function.toString);
920
920
 
921
921
  // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
922
922
  if (!isCallable$g(store.inspectSource)) {
@@ -927,7 +927,7 @@ if (!isCallable$g(store.inspectSource)) {
927
927
 
928
928
  var inspectSource$3 = store.inspectSource;
929
929
 
930
- var uncurryThis$l = functionUncurryThis;
930
+ var uncurryThis$m = functionUncurryThis;
931
931
  var fails$i = fails$p;
932
932
  var isCallable$f = isCallable$n;
933
933
  var hasOwn$7 = hasOwnProperty_1;
@@ -941,9 +941,9 @@ var getInternalState$2 = InternalStateModule$2.get;
941
941
  var $String$3 = String;
942
942
  // eslint-disable-next-line es/no-object-defineproperty -- safe
943
943
  var defineProperty$5 = Object.defineProperty;
944
- var stringSlice$9 = uncurryThis$l(''.slice);
945
- var replace$5 = uncurryThis$l(''.replace);
946
- var join = uncurryThis$l([].join);
944
+ var stringSlice$a = uncurryThis$m(''.slice);
945
+ var replace$5 = uncurryThis$m(''.replace);
946
+ var join = uncurryThis$m([].join);
947
947
 
948
948
  var CONFIGURABLE_LENGTH = DESCRIPTORS$6 && !fails$i(function () {
949
949
  return defineProperty$5(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
@@ -952,7 +952,7 @@ var CONFIGURABLE_LENGTH = DESCRIPTORS$6 && !fails$i(function () {
952
952
  var TEMPLATE = String(String).split('String');
953
953
 
954
954
  var makeBuiltIn$2 = makeBuiltIn$3.exports = function (value, name, options) {
955
- if (stringSlice$9($String$3(name), 0, 7) === 'Symbol(') {
955
+ if (stringSlice$a($String$3(name), 0, 7) === 'Symbol(') {
956
956
  name = '[' + replace$5($String$3(name), /^Symbol\(([^)]*)\).*$/, '$1') + ']';
957
957
  }
958
958
  if (options && options.getter) name = 'get ' + name;
@@ -1030,12 +1030,12 @@ var objectGetOwnPropertySymbols = {};
1030
1030
  objectGetOwnPropertySymbols.f = Object.getOwnPropertySymbols;
1031
1031
 
1032
1032
  var getBuiltIn$4 = getBuiltIn$7;
1033
- var uncurryThis$k = functionUncurryThis;
1033
+ var uncurryThis$l = functionUncurryThis;
1034
1034
  var getOwnPropertyNamesModule = objectGetOwnPropertyNames;
1035
1035
  var getOwnPropertySymbolsModule$1 = objectGetOwnPropertySymbols;
1036
1036
  var anObject$c = anObject$g;
1037
1037
 
1038
- var concat$2 = uncurryThis$k([].concat);
1038
+ var concat$2 = uncurryThis$l([].concat);
1039
1039
 
1040
1040
  // all object keys, includes non-enumerable and symbols
1041
1041
  var ownKeys$1 = getBuiltIn$4('Reflect', 'ownKeys') || function ownKeys(it) {
@@ -1245,13 +1245,13 @@ var iteratorCreateConstructor = function (IteratorConstructor, NAME, next, ENUME
1245
1245
  return IteratorConstructor;
1246
1246
  };
1247
1247
 
1248
- var uncurryThis$j = functionUncurryThis;
1248
+ var uncurryThis$k = functionUncurryThis;
1249
1249
  var aCallable$8 = aCallable$a;
1250
1250
 
1251
1251
  var functionUncurryThisAccessor = function (object, key, method) {
1252
1252
  try {
1253
1253
  // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
1254
- return uncurryThis$j(aCallable$8(Object.getOwnPropertyDescriptor(object, key)[method]));
1254
+ return uncurryThis$k(aCallable$8(Object.getOwnPropertyDescriptor(object, key)[method]));
1255
1255
  } catch (error) { /* empty */ }
1256
1256
  };
1257
1257
 
@@ -1298,7 +1298,7 @@ var objectSetPrototypeOf = Object.setPrototypeOf || ('__proto__' in {} ? functio
1298
1298
  };
1299
1299
  }() : undefined);
1300
1300
 
1301
- var $$h = _export;
1301
+ var $$i = _export;
1302
1302
  var call$f = functionCall;
1303
1303
  var FunctionName = functionName;
1304
1304
  var isCallable$a = isCallable$n;
@@ -1386,7 +1386,7 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
1386
1386
  if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
1387
1387
  defineBuiltIn$5(IterablePrototype, KEY, methods[KEY]);
1388
1388
  }
1389
- } else $$h({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
1389
+ } else $$i({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
1390
1390
  }
1391
1391
 
1392
1392
  // define iterator
@@ -1554,7 +1554,7 @@ var lengthOfArrayLike$4 = lengthOfArrayLike$6;
1554
1554
  var $TypeError$a = TypeError;
1555
1555
 
1556
1556
  // `Array.prototype.{ reduce, reduceRight }` methods implementation
1557
- var createMethod$2 = function (IS_RIGHT) {
1557
+ var createMethod$3 = function (IS_RIGHT) {
1558
1558
  return function (that, callbackfn, argumentsLength, memo) {
1559
1559
  var O = toObject$4(that);
1560
1560
  var self = IndexedObject$1(O);
@@ -1583,10 +1583,10 @@ var createMethod$2 = function (IS_RIGHT) {
1583
1583
  var arrayReduce = {
1584
1584
  // `Array.prototype.reduce` method
1585
1585
  // https://tc39.es/ecma262/#sec-array.prototype.reduce
1586
- left: createMethod$2(false),
1586
+ left: createMethod$3(false),
1587
1587
  // `Array.prototype.reduceRight` method
1588
1588
  // https://tc39.es/ecma262/#sec-array.prototype.reduceright
1589
- right: createMethod$2(true)
1589
+ right: createMethod$3(true)
1590
1590
  };
1591
1591
 
1592
1592
  var fails$e = fails$p;
@@ -1604,7 +1604,7 @@ var classof$7 = classofRaw$2;
1604
1604
 
1605
1605
  var engineIsNode = classof$7(global$c.process) === 'process';
1606
1606
 
1607
- var $$g = _export;
1607
+ var $$h = _export;
1608
1608
  var $reduce = arrayReduce.left;
1609
1609
  var arrayMethodIsStrict$1 = arrayMethodIsStrict$2;
1610
1610
  var CHROME_VERSION = engineV8Version;
@@ -1617,7 +1617,7 @@ var FORCED$2 = CHROME_BUG || !arrayMethodIsStrict$1('reduce');
1617
1617
 
1618
1618
  // `Array.prototype.reduce` method
1619
1619
  // https://tc39.es/ecma262/#sec-array.prototype.reduce
1620
- $$g({ target: 'Array', proto: true, forced: FORCED$2 }, {
1620
+ $$h({ target: 'Array', proto: true, forced: FORCED$2 }, {
1621
1621
  reduce: function reduce(callbackfn /* , initialValue */) {
1622
1622
  var length = arguments.length;
1623
1623
  return $reduce(this, callbackfn, length, length > 1 ? arguments[1] : undefined);
@@ -1907,7 +1907,7 @@ var classof$5 = classof$6;
1907
1907
 
1908
1908
  var $String$1 = String;
1909
1909
 
1910
- var toString$c = function (argument) {
1910
+ var toString$d = function (argument) {
1911
1911
  if (classof$5(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
1912
1912
  return $String$1(argument);
1913
1913
  };
@@ -1921,14 +1921,14 @@ var defineBuiltInAccessor$2 = function (target, name, descriptor) {
1921
1921
  return defineProperty$2.f(target, name, descriptor);
1922
1922
  };
1923
1923
 
1924
- var $$f = _export;
1924
+ var $$g = _export;
1925
1925
  var DESCRIPTORS$4 = descriptors;
1926
1926
  var global$b = global$o;
1927
- var uncurryThis$i = functionUncurryThis;
1927
+ var uncurryThis$j = functionUncurryThis;
1928
1928
  var hasOwn$3 = hasOwnProperty_1;
1929
1929
  var isCallable$8 = isCallable$n;
1930
1930
  var isPrototypeOf$4 = objectIsPrototypeOf;
1931
- var toString$b = toString$c;
1931
+ var toString$c = toString$d;
1932
1932
  var defineBuiltInAccessor$1 = defineBuiltInAccessor$2;
1933
1933
  var copyConstructorProperties = copyConstructorProperties$2;
1934
1934
 
@@ -1942,7 +1942,7 @@ if (DESCRIPTORS$4 && isCallable$8(NativeSymbol) && (!('description' in SymbolPro
1942
1942
  var EmptyStringDescriptionStore = {};
1943
1943
  // wrap Symbol constructor for correct work with undefined description
1944
1944
  var SymbolWrapper = function Symbol() {
1945
- var description = arguments.length < 1 || arguments[0] === undefined ? undefined : toString$b(arguments[0]);
1945
+ var description = arguments.length < 1 || arguments[0] === undefined ? undefined : toString$c(arguments[0]);
1946
1946
  var result = isPrototypeOf$4(SymbolPrototype, this)
1947
1947
  ? new NativeSymbol(description)
1948
1948
  // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'
@@ -1956,11 +1956,11 @@ if (DESCRIPTORS$4 && isCallable$8(NativeSymbol) && (!('description' in SymbolPro
1956
1956
  SymbolPrototype.constructor = SymbolWrapper;
1957
1957
 
1958
1958
  var NATIVE_SYMBOL = String(NativeSymbol('description detection')) === 'Symbol(description detection)';
1959
- var thisSymbolValue = uncurryThis$i(SymbolPrototype.valueOf);
1960
- var symbolDescriptiveString = uncurryThis$i(SymbolPrototype.toString);
1959
+ var thisSymbolValue = uncurryThis$j(SymbolPrototype.valueOf);
1960
+ var symbolDescriptiveString = uncurryThis$j(SymbolPrototype.toString);
1961
1961
  var regexp = /^Symbol\((.*)\)[^)]+$/;
1962
- var replace$4 = uncurryThis$i(''.replace);
1963
- var stringSlice$8 = uncurryThis$i(''.slice);
1962
+ var replace$4 = uncurryThis$j(''.replace);
1963
+ var stringSlice$9 = uncurryThis$j(''.slice);
1964
1964
 
1965
1965
  defineBuiltInAccessor$1(SymbolPrototype, 'description', {
1966
1966
  configurable: true,
@@ -1968,12 +1968,12 @@ if (DESCRIPTORS$4 && isCallable$8(NativeSymbol) && (!('description' in SymbolPro
1968
1968
  var symbol = thisSymbolValue(this);
1969
1969
  if (hasOwn$3(EmptyStringDescriptionStore, symbol)) return '';
1970
1970
  var string = symbolDescriptiveString(symbol);
1971
- var desc = NATIVE_SYMBOL ? stringSlice$8(string, 7, -1) : replace$4(string, regexp, '$1');
1971
+ var desc = NATIVE_SYMBOL ? stringSlice$9(string, 7, -1) : replace$4(string, regexp, '$1');
1972
1972
  return desc === '' ? undefined : desc;
1973
1973
  }
1974
1974
  });
1975
1975
 
1976
- $$f({ global: true, constructor: true, forced: true }, {
1976
+ $$g({ global: true, constructor: true, forced: true }, {
1977
1977
  Symbol: SymbolWrapper
1978
1978
  });
1979
1979
  }
@@ -2661,7 +2661,7 @@ function setsAreEquivalent(a, b) {
2661
2661
  }
2662
2662
 
2663
2663
  var DESCRIPTORS$3 = descriptors;
2664
- var uncurryThis$h = functionUncurryThis;
2664
+ var uncurryThis$i = functionUncurryThis;
2665
2665
  var call$e = functionCall;
2666
2666
  var fails$d = fails$p;
2667
2667
  var objectKeys = objectKeys$2;
@@ -2674,7 +2674,7 @@ var IndexedObject = indexedObject;
2674
2674
  var $assign = Object.assign;
2675
2675
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
2676
2676
  var defineProperty$1 = Object.defineProperty;
2677
- var concat$1 = uncurryThis$h([].concat);
2677
+ var concat$1 = uncurryThis$i([].concat);
2678
2678
 
2679
2679
  // `Object.assign` method
2680
2680
  // https://tc39.es/ecma262/#sec-object.assign
@@ -2717,13 +2717,13 @@ var objectAssign = !$assign || fails$d(function () {
2717
2717
  } return T;
2718
2718
  } : $assign;
2719
2719
 
2720
- var $$e = _export;
2720
+ var $$f = _export;
2721
2721
  var assign = objectAssign;
2722
2722
 
2723
2723
  // `Object.assign` method
2724
2724
  // https://tc39.es/ecma262/#sec-object.assign
2725
2725
  // eslint-disable-next-line es/no-object-assign -- required for testing
2726
- $$e({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {
2726
+ $$f({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {
2727
2727
  assign: assign
2728
2728
  });
2729
2729
 
@@ -3505,9 +3505,9 @@ var deletePropertyOrThrow$1 = function (O, P) {
3505
3505
  if (!delete O[P]) throw new $TypeError$9('Cannot delete property ' + tryToString$3(P) + ' of ' + tryToString$3(O));
3506
3506
  };
3507
3507
 
3508
- var uncurryThis$g = functionUncurryThis;
3508
+ var uncurryThis$h = functionUncurryThis;
3509
3509
 
3510
- var arraySlice$2 = uncurryThis$g([].slice);
3510
+ var arraySlice$2 = uncurryThis$h([].slice);
3511
3511
 
3512
3512
  var arraySlice$1 = arraySlice$2;
3513
3513
 
@@ -3551,9 +3551,9 @@ var sort = function (array, comparefn) {
3551
3551
 
3552
3552
  var arraySort = sort;
3553
3553
 
3554
- var userAgent$4 = engineUserAgent;
3554
+ var userAgent$5 = engineUserAgent;
3555
3555
 
3556
- var firefox = userAgent$4.match(/firefox\/(\d+)/i);
3556
+ var firefox = userAgent$5.match(/firefox\/(\d+)/i);
3557
3557
 
3558
3558
  var engineFfVersion = !!firefox && +firefox[1];
3559
3559
 
@@ -3561,19 +3561,19 @@ var UA = engineUserAgent;
3561
3561
 
3562
3562
  var engineIsIeOrEdge = /MSIE|Trident/.test(UA);
3563
3563
 
3564
- var userAgent$3 = engineUserAgent;
3564
+ var userAgent$4 = engineUserAgent;
3565
3565
 
3566
- var webkit = userAgent$3.match(/AppleWebKit\/(\d+)\./);
3566
+ var webkit = userAgent$4.match(/AppleWebKit\/(\d+)\./);
3567
3567
 
3568
3568
  var engineWebkitVersion = !!webkit && +webkit[1];
3569
3569
 
3570
- var $$d = _export;
3571
- var uncurryThis$f = functionUncurryThis;
3570
+ var $$e = _export;
3571
+ var uncurryThis$g = functionUncurryThis;
3572
3572
  var aCallable$6 = aCallable$a;
3573
3573
  var toObject$2 = toObject$7;
3574
3574
  var lengthOfArrayLike$3 = lengthOfArrayLike$6;
3575
3575
  var deletePropertyOrThrow = deletePropertyOrThrow$1;
3576
- var toString$a = toString$c;
3576
+ var toString$b = toString$d;
3577
3577
  var fails$c = fails$p;
3578
3578
  var internalSort = arraySort;
3579
3579
  var arrayMethodIsStrict = arrayMethodIsStrict$2;
@@ -3583,8 +3583,8 @@ var V8 = engineV8Version;
3583
3583
  var WEBKIT = engineWebkitVersion;
3584
3584
 
3585
3585
  var test$1 = [];
3586
- var nativeSort = uncurryThis$f(test$1.sort);
3587
- var push$2 = uncurryThis$f(test$1.push);
3586
+ var nativeSort = uncurryThis$g(test$1.sort);
3587
+ var push$2 = uncurryThis$g(test$1.push);
3588
3588
 
3589
3589
  // IE8-
3590
3590
  var FAILS_ON_UNDEFINED = fails$c(function () {
@@ -3639,13 +3639,13 @@ var getSortCompare = function (comparefn) {
3639
3639
  if (y === undefined) return -1;
3640
3640
  if (x === undefined) return 1;
3641
3641
  if (comparefn !== undefined) return +comparefn(x, y) || 0;
3642
- return toString$a(x) > toString$a(y) ? 1 : -1;
3642
+ return toString$b(x) > toString$b(y) ? 1 : -1;
3643
3643
  };
3644
3644
  };
3645
3645
 
3646
3646
  // `Array.prototype.sort` method
3647
3647
  // https://tc39.es/ecma262/#sec-array.prototype.sort
3648
- $$d({ target: 'Array', proto: true, forced: FORCED$1 }, {
3648
+ $$e({ target: 'Array', proto: true, forced: FORCED$1 }, {
3649
3649
  sort: function sort(comparefn) {
3650
3650
  if (comparefn !== undefined) aCallable$6(comparefn);
3651
3651
 
@@ -3707,7 +3707,7 @@ var regexpGetFlags = function (R) {
3707
3707
  var PROPER_FUNCTION_NAME$1 = functionName.PROPER;
3708
3708
  var defineBuiltIn$4 = defineBuiltIn$8;
3709
3709
  var anObject$9 = anObject$g;
3710
- var $toString = toString$c;
3710
+ var $toString = toString$d;
3711
3711
  var fails$b = fails$p;
3712
3712
  var getRegExpFlags$1 = regexpGetFlags;
3713
3713
 
@@ -5000,8 +5000,8 @@ var regexpUnsupportedNcg = fails$8(function () {
5000
5000
  /* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */
5001
5001
  /* eslint-disable regexp/no-useless-quantifier -- testing */
5002
5002
  var call$c = functionCall;
5003
- var uncurryThis$e = functionUncurryThis;
5004
- var toString$9 = toString$c;
5003
+ var uncurryThis$f = functionUncurryThis;
5004
+ var toString$a = toString$d;
5005
5005
  var regexpFlags = regexpFlags$1;
5006
5006
  var stickyHelpers$2 = regexpStickyHelpers;
5007
5007
  var shared = shared$4.exports;
@@ -5013,10 +5013,10 @@ var UNSUPPORTED_NCG$1 = regexpUnsupportedNcg;
5013
5013
  var nativeReplace = shared('native-string-replace', String.prototype.replace);
5014
5014
  var nativeExec = RegExp.prototype.exec;
5015
5015
  var patchedExec = nativeExec;
5016
- var charAt$4 = uncurryThis$e(''.charAt);
5017
- var indexOf = uncurryThis$e(''.indexOf);
5018
- var replace$3 = uncurryThis$e(''.replace);
5019
- var stringSlice$7 = uncurryThis$e(''.slice);
5016
+ var charAt$4 = uncurryThis$f(''.charAt);
5017
+ var indexOf = uncurryThis$f(''.indexOf);
5018
+ var replace$3 = uncurryThis$f(''.replace);
5019
+ var stringSlice$8 = uncurryThis$f(''.slice);
5020
5020
 
5021
5021
  var UPDATES_LAST_INDEX_WRONG = (function () {
5022
5022
  var re1 = /a/;
@@ -5037,7 +5037,7 @@ if (PATCH) {
5037
5037
  patchedExec = function exec(string) {
5038
5038
  var re = this;
5039
5039
  var state = getInternalState(re);
5040
- var str = toString$9(string);
5040
+ var str = toString$a(string);
5041
5041
  var raw = state.raw;
5042
5042
  var result, reCopy, lastIndex, match, i, object, group;
5043
5043
 
@@ -5061,7 +5061,7 @@ if (PATCH) {
5061
5061
  flags += 'g';
5062
5062
  }
5063
5063
 
5064
- strCopy = stringSlice$7(str, re.lastIndex);
5064
+ strCopy = stringSlice$8(str, re.lastIndex);
5065
5065
  // Support anchored sticky behavior.
5066
5066
  if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt$4(str, re.lastIndex - 1) !== '\n')) {
5067
5067
  source = '(?: ' + source + ')';
@@ -5082,8 +5082,8 @@ if (PATCH) {
5082
5082
 
5083
5083
  if (sticky) {
5084
5084
  if (match) {
5085
- match.input = stringSlice$7(match.input, charsAdded);
5086
- match[0] = stringSlice$7(match[0], charsAdded);
5085
+ match.input = stringSlice$8(match.input, charsAdded);
5086
+ match[0] = stringSlice$8(match[0], charsAdded);
5087
5087
  match.index = re.lastIndex;
5088
5088
  re.lastIndex += match[0].length;
5089
5089
  } else re.lastIndex = 0;
@@ -5114,31 +5114,31 @@ if (PATCH) {
5114
5114
 
5115
5115
  var regexpExec$2 = patchedExec;
5116
5116
 
5117
- var $$c = _export;
5117
+ var $$d = _export;
5118
5118
  var exec$2 = regexpExec$2;
5119
5119
 
5120
5120
  // `RegExp.prototype.exec` method
5121
5121
  // https://tc39.es/ecma262/#sec-regexp.prototype.exec
5122
- $$c({ target: 'RegExp', proto: true, forced: /./.exec !== exec$2 }, {
5122
+ $$d({ target: 'RegExp', proto: true, forced: /./.exec !== exec$2 }, {
5123
5123
  exec: exec$2
5124
5124
  });
5125
5125
 
5126
- var uncurryThis$d = functionUncurryThis;
5126
+ var uncurryThis$e = functionUncurryThis;
5127
5127
 
5128
5128
  // `thisNumberValue` abstract operation
5129
5129
  // https://tc39.es/ecma262/#sec-thisnumbervalue
5130
- var thisNumberValue$1 = uncurryThis$d(1.0.valueOf);
5130
+ var thisNumberValue$1 = uncurryThis$e(1.0.valueOf);
5131
5131
 
5132
5132
  var toIntegerOrInfinity$4 = toIntegerOrInfinity$7;
5133
- var toString$8 = toString$c;
5134
- var requireObjectCoercible$7 = requireObjectCoercible$a;
5133
+ var toString$9 = toString$d;
5134
+ var requireObjectCoercible$8 = requireObjectCoercible$b;
5135
5135
 
5136
5136
  var $RangeError$1 = RangeError;
5137
5137
 
5138
5138
  // `String.prototype.repeat` method implementation
5139
5139
  // https://tc39.es/ecma262/#sec-string.prototype.repeat
5140
5140
  var stringRepeat = function repeat(count) {
5141
- var str = toString$8(requireObjectCoercible$7(this));
5141
+ var str = toString$9(requireObjectCoercible$8(this));
5142
5142
  var result = '';
5143
5143
  var n = toIntegerOrInfinity$4(count);
5144
5144
  if (n < 0 || n === Infinity) throw new $RangeError$1('Wrong number of repetitions');
@@ -5146,19 +5146,19 @@ var stringRepeat = function repeat(count) {
5146
5146
  return result;
5147
5147
  };
5148
5148
 
5149
- var $$b = _export;
5150
- var uncurryThis$c = functionUncurryThis;
5149
+ var $$c = _export;
5150
+ var uncurryThis$d = functionUncurryThis;
5151
5151
  var toIntegerOrInfinity$3 = toIntegerOrInfinity$7;
5152
5152
  var thisNumberValue = thisNumberValue$1;
5153
- var $repeat = stringRepeat;
5153
+ var $repeat$1 = stringRepeat;
5154
5154
  var fails$7 = fails$p;
5155
5155
 
5156
5156
  var $RangeError = RangeError;
5157
5157
  var $String = String;
5158
5158
  var floor$1 = Math.floor;
5159
- var repeat = uncurryThis$c($repeat);
5160
- var stringSlice$6 = uncurryThis$c(''.slice);
5161
- var nativeToFixed = uncurryThis$c(1.0.toFixed);
5159
+ var repeat$1 = uncurryThis$d($repeat$1);
5160
+ var stringSlice$7 = uncurryThis$d(''.slice);
5161
+ var nativeToFixed = uncurryThis$d(1.0.toFixed);
5162
5162
 
5163
5163
  var pow = function (x, n, acc) {
5164
5164
  return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);
@@ -5203,7 +5203,7 @@ var dataToString = function (data) {
5203
5203
  while (--index >= 0) {
5204
5204
  if (s !== '' || index === 0 || data[index] !== 0) {
5205
5205
  var t = $String(data[index]);
5206
- s = s === '' ? t : s + repeat('0', 7 - t.length) + t;
5206
+ s = s === '' ? t : s + repeat$1('0', 7 - t.length) + t;
5207
5207
  }
5208
5208
  } return s;
5209
5209
  };
@@ -5220,7 +5220,7 @@ var FORCED = fails$7(function () {
5220
5220
 
5221
5221
  // `Number.prototype.toFixed` method
5222
5222
  // https://tc39.es/ecma262/#sec-number.prototype.tofixed
5223
- $$b({ target: 'Number', proto: true, forced: FORCED }, {
5223
+ $$c({ target: 'Number', proto: true, forced: FORCED }, {
5224
5224
  toFixed: function toFixed(fractionDigits) {
5225
5225
  var number = thisNumberValue(this);
5226
5226
  var fractDigits = toIntegerOrInfinity$3(fractionDigits);
@@ -5263,14 +5263,14 @@ $$b({ target: 'Number', proto: true, forced: FORCED }, {
5263
5263
  } else {
5264
5264
  multiply(data, 0, z);
5265
5265
  multiply(data, 1 << -e, 0);
5266
- result = dataToString(data) + repeat('0', fractDigits);
5266
+ result = dataToString(data) + repeat$1('0', fractDigits);
5267
5267
  }
5268
5268
  }
5269
5269
  if (fractDigits > 0) {
5270
5270
  k = result.length;
5271
5271
  result = sign + (k <= fractDigits
5272
- ? '0.' + repeat('0', fractDigits - k) + result
5273
- : stringSlice$6(result, 0, k - fractDigits) + '.' + stringSlice$6(result, k - fractDigits));
5272
+ ? '0.' + repeat$1('0', fractDigits - k) + result
5273
+ : stringSlice$7(result, 0, k - fractDigits) + '.' + stringSlice$7(result, k - fractDigits));
5274
5274
  } else {
5275
5275
  result = sign + result;
5276
5276
  } return result;
@@ -6691,18 +6691,18 @@ var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
6691
6691
  if (SHAM) createNonEnumerableProperty$1(RegExpPrototype$1[SYMBOL], 'sham', true);
6692
6692
  };
6693
6693
 
6694
- var uncurryThis$b = functionUncurryThis;
6694
+ var uncurryThis$c = functionUncurryThis;
6695
6695
  var toIntegerOrInfinity$2 = toIntegerOrInfinity$7;
6696
- var toString$7 = toString$c;
6697
- var requireObjectCoercible$6 = requireObjectCoercible$a;
6696
+ var toString$8 = toString$d;
6697
+ var requireObjectCoercible$7 = requireObjectCoercible$b;
6698
6698
 
6699
- var charAt$3 = uncurryThis$b(''.charAt);
6700
- var charCodeAt = uncurryThis$b(''.charCodeAt);
6701
- var stringSlice$5 = uncurryThis$b(''.slice);
6699
+ var charAt$3 = uncurryThis$c(''.charAt);
6700
+ var charCodeAt = uncurryThis$c(''.charCodeAt);
6701
+ var stringSlice$6 = uncurryThis$c(''.slice);
6702
6702
 
6703
- var createMethod$1 = function (CONVERT_TO_STRING) {
6703
+ var createMethod$2 = function (CONVERT_TO_STRING) {
6704
6704
  return function ($this, pos) {
6705
- var S = toString$7(requireObjectCoercible$6($this));
6705
+ var S = toString$8(requireObjectCoercible$7($this));
6706
6706
  var position = toIntegerOrInfinity$2(pos);
6707
6707
  var size = S.length;
6708
6708
  var first, second;
@@ -6714,7 +6714,7 @@ var createMethod$1 = function (CONVERT_TO_STRING) {
6714
6714
  ? charAt$3(S, position)
6715
6715
  : first
6716
6716
  : CONVERT_TO_STRING
6717
- ? stringSlice$5(S, position, position + 2)
6717
+ ? stringSlice$6(S, position, position + 2)
6718
6718
  : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
6719
6719
  };
6720
6720
  };
@@ -6722,10 +6722,10 @@ var createMethod$1 = function (CONVERT_TO_STRING) {
6722
6722
  var stringMultibyte = {
6723
6723
  // `String.prototype.codePointAt` method
6724
6724
  // https://tc39.es/ecma262/#sec-string.prototype.codepointat
6725
- codeAt: createMethod$1(false),
6725
+ codeAt: createMethod$2(false),
6726
6726
  // `String.prototype.at` method
6727
6727
  // https://github.com/mathiasbynens/String.prototype.at
6728
- charAt: createMethod$1(true)
6728
+ charAt: createMethod$2(true)
6729
6729
  };
6730
6730
 
6731
6731
  var charAt$2 = stringMultibyte.charAt;
@@ -6761,9 +6761,9 @@ var call$9 = functionCall;
6761
6761
  var fixRegExpWellKnownSymbolLogic$2 = fixRegexpWellKnownSymbolLogic;
6762
6762
  var anObject$7 = anObject$g;
6763
6763
  var isNullOrUndefined$4 = isNullOrUndefined$7;
6764
- var toLength$4 = toLength$6;
6765
- var toString$6 = toString$c;
6766
- var requireObjectCoercible$5 = requireObjectCoercible$a;
6764
+ var toLength$5 = toLength$7;
6765
+ var toString$7 = toString$d;
6766
+ var requireObjectCoercible$6 = requireObjectCoercible$b;
6767
6767
  var getMethod$4 = getMethod$6;
6768
6768
  var advanceStringIndex$2 = advanceStringIndex$3;
6769
6769
  var regExpExec$2 = regexpExecAbstract;
@@ -6774,15 +6774,15 @@ fixRegExpWellKnownSymbolLogic$2('match', function (MATCH, nativeMatch, maybeCall
6774
6774
  // `String.prototype.match` method
6775
6775
  // https://tc39.es/ecma262/#sec-string.prototype.match
6776
6776
  function match(regexp) {
6777
- var O = requireObjectCoercible$5(this);
6777
+ var O = requireObjectCoercible$6(this);
6778
6778
  var matcher = isNullOrUndefined$4(regexp) ? undefined : getMethod$4(regexp, MATCH);
6779
- return matcher ? call$9(matcher, regexp, O) : new RegExp(regexp)[MATCH](toString$6(O));
6779
+ return matcher ? call$9(matcher, regexp, O) : new RegExp(regexp)[MATCH](toString$7(O));
6780
6780
  },
6781
6781
  // `RegExp.prototype[@@match]` method
6782
6782
  // https://tc39.es/ecma262/#sec-regexp.prototype-@@match
6783
6783
  function (string) {
6784
6784
  var rx = anObject$7(this);
6785
- var S = toString$6(string);
6785
+ var S = toString$7(string);
6786
6786
  var res = maybeCallNative(nativeMatch, rx, S);
6787
6787
 
6788
6788
  if (res.done) return res.value;
@@ -6795,9 +6795,9 @@ fixRegExpWellKnownSymbolLogic$2('match', function (MATCH, nativeMatch, maybeCall
6795
6795
  var n = 0;
6796
6796
  var result;
6797
6797
  while ((result = regExpExec$2(rx, S)) !== null) {
6798
- var matchStr = toString$6(result[0]);
6798
+ var matchStr = toString$7(result[0]);
6799
6799
  A[n] = matchStr;
6800
- if (matchStr === '') rx.lastIndex = advanceStringIndex$2(S, toLength$4(rx.lastIndex), fullUnicode);
6800
+ if (matchStr === '') rx.lastIndex = advanceStringIndex$2(S, toLength$5(rx.lastIndex), fullUnicode);
6801
6801
  n++;
6802
6802
  }
6803
6803
  return n === 0 ? null : A;
@@ -7109,19 +7109,19 @@ function findIndexOfFirstDuplicateValue(values) {
7109
7109
  var whitespaces$2 = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' +
7110
7110
  '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
7111
7111
 
7112
- var uncurryThis$a = functionUncurryThis;
7113
- var requireObjectCoercible$4 = requireObjectCoercible$a;
7114
- var toString$5 = toString$c;
7112
+ var uncurryThis$b = functionUncurryThis;
7113
+ var requireObjectCoercible$5 = requireObjectCoercible$b;
7114
+ var toString$6 = toString$d;
7115
7115
  var whitespaces$1 = whitespaces$2;
7116
7116
 
7117
- var replace$2 = uncurryThis$a(''.replace);
7117
+ var replace$2 = uncurryThis$b(''.replace);
7118
7118
  var ltrim = RegExp('^[' + whitespaces$1 + ']+');
7119
7119
  var rtrim = RegExp('(^|[^' + whitespaces$1 + '])[' + whitespaces$1 + ']+$');
7120
7120
 
7121
7121
  // `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
7122
- var createMethod = function (TYPE) {
7122
+ var createMethod$1 = function (TYPE) {
7123
7123
  return function ($this) {
7124
- var string = toString$5(requireObjectCoercible$4($this));
7124
+ var string = toString$6(requireObjectCoercible$5($this));
7125
7125
  if (TYPE & 1) string = replace$2(string, ltrim, '');
7126
7126
  if (TYPE & 2) string = replace$2(string, rtrim, '$1');
7127
7127
  return string;
@@ -7131,13 +7131,13 @@ var createMethod = function (TYPE) {
7131
7131
  var stringTrim = {
7132
7132
  // `String.prototype.{ trimLeft, trimStart }` methods
7133
7133
  // https://tc39.es/ecma262/#sec-string.prototype.trimstart
7134
- start: createMethod(1),
7134
+ start: createMethod$1(1),
7135
7135
  // `String.prototype.{ trimRight, trimEnd }` methods
7136
7136
  // https://tc39.es/ecma262/#sec-string.prototype.trimend
7137
- end: createMethod(2),
7137
+ end: createMethod$1(2),
7138
7138
  // `String.prototype.trim` method
7139
7139
  // https://tc39.es/ecma262/#sec-string.prototype.trim
7140
- trim: createMethod(3)
7140
+ trim: createMethod$1(3)
7141
7141
  };
7142
7142
 
7143
7143
  var PROPER_FUNCTION_NAME = functionName.PROPER;
@@ -7156,19 +7156,19 @@ var stringTrimForced = function (METHOD_NAME) {
7156
7156
  });
7157
7157
  };
7158
7158
 
7159
- var $$a = _export;
7159
+ var $$b = _export;
7160
7160
  var $trim = stringTrim.trim;
7161
7161
  var forcedStringTrimMethod = stringTrimForced;
7162
7162
 
7163
7163
  // `String.prototype.trim` method
7164
7164
  // https://tc39.es/ecma262/#sec-string.prototype.trim
7165
- $$a({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {
7165
+ $$b({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {
7166
7166
  trim: function trim() {
7167
7167
  return $trim(this);
7168
7168
  }
7169
7169
  });
7170
7170
 
7171
- var uncurryThis$9 = functionUncurryThis;
7171
+ var uncurryThis$a = functionUncurryThis;
7172
7172
  var fails$4 = fails$p;
7173
7173
  var isCallable$6 = isCallable$n;
7174
7174
  var classof$3 = classof$6;
@@ -7178,7 +7178,7 @@ var inspectSource$1 = inspectSource$3;
7178
7178
  var noop = function () { /* empty */ };
7179
7179
  var construct = getBuiltIn$3('Reflect', 'construct');
7180
7180
  var constructorRegExp = /^\s*(?:class|function)\b/;
7181
- var exec$1 = uncurryThis$9(constructorRegExp.exec);
7181
+ var exec$1 = uncurryThis$a(constructorRegExp.exec);
7182
7182
  var INCORRECT_TO_STRING = !constructorRegExp.test(noop);
7183
7183
 
7184
7184
  var isConstructorModern = function isConstructor(argument) {
@@ -7247,15 +7247,15 @@ var speciesConstructor$2 = function (O, defaultConstructor) {
7247
7247
  };
7248
7248
 
7249
7249
  var call$8 = functionCall;
7250
- var uncurryThis$8 = functionUncurryThis;
7250
+ var uncurryThis$9 = functionUncurryThis;
7251
7251
  var fixRegExpWellKnownSymbolLogic$1 = fixRegexpWellKnownSymbolLogic;
7252
7252
  var anObject$5 = anObject$g;
7253
7253
  var isNullOrUndefined$2 = isNullOrUndefined$7;
7254
- var requireObjectCoercible$3 = requireObjectCoercible$a;
7254
+ var requireObjectCoercible$4 = requireObjectCoercible$b;
7255
7255
  var speciesConstructor$1 = speciesConstructor$2;
7256
7256
  var advanceStringIndex$1 = advanceStringIndex$3;
7257
- var toLength$3 = toLength$6;
7258
- var toString$4 = toString$c;
7257
+ var toLength$4 = toLength$7;
7258
+ var toString$5 = toString$d;
7259
7259
  var getMethod$3 = getMethod$6;
7260
7260
  var regExpExec$1 = regexpExecAbstract;
7261
7261
  var stickyHelpers$1 = regexpStickyHelpers;
@@ -7264,8 +7264,8 @@ var fails$3 = fails$p;
7264
7264
  var UNSUPPORTED_Y$1 = stickyHelpers$1.UNSUPPORTED_Y;
7265
7265
  var MAX_UINT32 = 0xFFFFFFFF;
7266
7266
  var min$3 = Math.min;
7267
- var push$1 = uncurryThis$8([].push);
7268
- var stringSlice$4 = uncurryThis$8(''.slice);
7267
+ var push$1 = uncurryThis$9([].push);
7268
+ var stringSlice$5 = uncurryThis$9(''.slice);
7269
7269
 
7270
7270
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
7271
7271
  // Weex JS has frozen built-in prototypes, so use try / catch wrapper
@@ -7297,11 +7297,11 @@ fixRegExpWellKnownSymbolLogic$1('split', function (SPLIT, nativeSplit, maybeCall
7297
7297
  // `String.prototype.split` method
7298
7298
  // https://tc39.es/ecma262/#sec-string.prototype.split
7299
7299
  function split(separator, limit) {
7300
- var O = requireObjectCoercible$3(this);
7300
+ var O = requireObjectCoercible$4(this);
7301
7301
  var splitter = isNullOrUndefined$2(separator) ? undefined : getMethod$3(separator, SPLIT);
7302
7302
  return splitter
7303
7303
  ? call$8(splitter, separator, O, limit)
7304
- : call$8(internalSplit, toString$4(O), separator, limit);
7304
+ : call$8(internalSplit, toString$5(O), separator, limit);
7305
7305
  },
7306
7306
  // `RegExp.prototype[@@split]` method
7307
7307
  // https://tc39.es/ecma262/#sec-regexp.prototype-@@split
@@ -7310,7 +7310,7 @@ fixRegExpWellKnownSymbolLogic$1('split', function (SPLIT, nativeSplit, maybeCall
7310
7310
  // the 'y' flag.
7311
7311
  function (string, limit) {
7312
7312
  var rx = anObject$5(this);
7313
- var S = toString$4(string);
7313
+ var S = toString$5(string);
7314
7314
 
7315
7315
  if (!BUGGY) {
7316
7316
  var res = maybeCallNative(internalSplit, rx, S, limit, internalSplit !== nativeSplit);
@@ -7334,15 +7334,15 @@ fixRegExpWellKnownSymbolLogic$1('split', function (SPLIT, nativeSplit, maybeCall
7334
7334
  var A = [];
7335
7335
  while (q < S.length) {
7336
7336
  splitter.lastIndex = UNSUPPORTED_Y$1 ? 0 : q;
7337
- var z = regExpExec$1(splitter, UNSUPPORTED_Y$1 ? stringSlice$4(S, q) : S);
7337
+ var z = regExpExec$1(splitter, UNSUPPORTED_Y$1 ? stringSlice$5(S, q) : S);
7338
7338
  var e;
7339
7339
  if (
7340
7340
  z === null ||
7341
- (e = min$3(toLength$3(splitter.lastIndex + (UNSUPPORTED_Y$1 ? q : 0)), S.length)) === p
7341
+ (e = min$3(toLength$4(splitter.lastIndex + (UNSUPPORTED_Y$1 ? q : 0)), S.length)) === p
7342
7342
  ) {
7343
7343
  q = advanceStringIndex$1(S, q, unicodeMatching);
7344
7344
  } else {
7345
- push$1(A, stringSlice$4(S, p, q));
7345
+ push$1(A, stringSlice$5(S, p, q));
7346
7346
  if (A.length === lim) return A;
7347
7347
  for (var i = 1; i <= z.length - 1; i++) {
7348
7348
  push$1(A, z[i]);
@@ -7351,7 +7351,7 @@ fixRegExpWellKnownSymbolLogic$1('split', function (SPLIT, nativeSplit, maybeCall
7351
7351
  q = p = e;
7352
7352
  }
7353
7353
  }
7354
- push$1(A, stringSlice$4(S, p));
7354
+ push$1(A, stringSlice$5(S, p));
7355
7355
  return A;
7356
7356
  }
7357
7357
  ];
@@ -7489,13 +7489,13 @@ function mapIterable(values, fn) {
7489
7489
  }
7490
7490
 
7491
7491
  var classofRaw = classofRaw$2;
7492
- var uncurryThis$7 = functionUncurryThis;
7492
+ var uncurryThis$8 = functionUncurryThis;
7493
7493
 
7494
7494
  var functionUncurryThisClause = function (fn) {
7495
7495
  // Nashorn bug:
7496
7496
  // https://github.com/zloirock/core-js/issues/1128
7497
7497
  // https://github.com/zloirock/core-js/issues/1130
7498
- if (classofRaw(fn) === 'Function') return uncurryThis$7(fn);
7498
+ if (classofRaw(fn) === 'Function') return uncurryThis$8(fn);
7499
7499
  };
7500
7500
 
7501
7501
  var isObject$4 = isObject$c;
@@ -7537,16 +7537,16 @@ var correctIsRegexpLogic = function (METHOD_NAME) {
7537
7537
  } return false;
7538
7538
  };
7539
7539
 
7540
- var $$9 = _export;
7541
- var uncurryThis$6 = functionUncurryThisClause;
7540
+ var $$a = _export;
7541
+ var uncurryThis$7 = functionUncurryThisClause;
7542
7542
  var getOwnPropertyDescriptor$2 = objectGetOwnPropertyDescriptor.f;
7543
- var toLength$2 = toLength$6;
7544
- var toString$3 = toString$c;
7543
+ var toLength$3 = toLength$7;
7544
+ var toString$4 = toString$d;
7545
7545
  var notARegExp$1 = notARegexp;
7546
- var requireObjectCoercible$2 = requireObjectCoercible$a;
7546
+ var requireObjectCoercible$3 = requireObjectCoercible$b;
7547
7547
  var correctIsRegExpLogic$1 = correctIsRegexpLogic;
7548
7548
 
7549
- var stringSlice$3 = uncurryThis$6(''.slice);
7549
+ var stringSlice$4 = uncurryThis$7(''.slice);
7550
7550
  var min$2 = Math.min;
7551
7551
 
7552
7552
  var CORRECT_IS_REGEXP_LOGIC$1 = correctIsRegExpLogic$1('startsWith');
@@ -7558,26 +7558,26 @@ var MDN_POLYFILL_BUG$1 = !CORRECT_IS_REGEXP_LOGIC$1 && !!function () {
7558
7558
 
7559
7559
  // `String.prototype.startsWith` method
7560
7560
  // https://tc39.es/ecma262/#sec-string.prototype.startswith
7561
- $$9({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG$1 && !CORRECT_IS_REGEXP_LOGIC$1 }, {
7561
+ $$a({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG$1 && !CORRECT_IS_REGEXP_LOGIC$1 }, {
7562
7562
  startsWith: function startsWith(searchString /* , position = 0 */) {
7563
- var that = toString$3(requireObjectCoercible$2(this));
7563
+ var that = toString$4(requireObjectCoercible$3(this));
7564
7564
  notARegExp$1(searchString);
7565
- var index = toLength$2(min$2(arguments.length > 1 ? arguments[1] : undefined, that.length));
7566
- var search = toString$3(searchString);
7567
- return stringSlice$3(that, index, index + search.length) === search;
7565
+ var index = toLength$3(min$2(arguments.length > 1 ? arguments[1] : undefined, that.length));
7566
+ var search = toString$4(searchString);
7567
+ return stringSlice$4(that, index, index + search.length) === search;
7568
7568
  }
7569
7569
  });
7570
7570
 
7571
- var $$8 = _export;
7572
- var uncurryThis$5 = functionUncurryThisClause;
7571
+ var $$9 = _export;
7572
+ var uncurryThis$6 = functionUncurryThisClause;
7573
7573
  var getOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f;
7574
- var toLength$1 = toLength$6;
7575
- var toString$2 = toString$c;
7574
+ var toLength$2 = toLength$7;
7575
+ var toString$3 = toString$d;
7576
7576
  var notARegExp = notARegexp;
7577
- var requireObjectCoercible$1 = requireObjectCoercible$a;
7577
+ var requireObjectCoercible$2 = requireObjectCoercible$b;
7578
7578
  var correctIsRegExpLogic = correctIsRegexpLogic;
7579
7579
 
7580
- var slice = uncurryThis$5(''.slice);
7580
+ var slice = uncurryThis$6(''.slice);
7581
7581
  var min$1 = Math.min;
7582
7582
 
7583
7583
  var CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('endsWith');
@@ -7589,18 +7589,71 @@ var MDN_POLYFILL_BUG = !CORRECT_IS_REGEXP_LOGIC && !!function () {
7589
7589
 
7590
7590
  // `String.prototype.endsWith` method
7591
7591
  // https://tc39.es/ecma262/#sec-string.prototype.endswith
7592
- $$8({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {
7592
+ $$9({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {
7593
7593
  endsWith: function endsWith(searchString /* , endPosition = @length */) {
7594
- var that = toString$2(requireObjectCoercible$1(this));
7594
+ var that = toString$3(requireObjectCoercible$2(this));
7595
7595
  notARegExp(searchString);
7596
7596
  var endPosition = arguments.length > 1 ? arguments[1] : undefined;
7597
7597
  var len = that.length;
7598
- var end = endPosition === undefined ? len : min$1(toLength$1(endPosition), len);
7599
- var search = toString$2(searchString);
7598
+ var end = endPosition === undefined ? len : min$1(toLength$2(endPosition), len);
7599
+ var search = toString$3(searchString);
7600
7600
  return slice(that, end - search.length, end) === search;
7601
7601
  }
7602
7602
  });
7603
7603
 
7604
+ // https://github.com/tc39/proposal-string-pad-start-end
7605
+ var uncurryThis$5 = functionUncurryThis;
7606
+ var toLength$1 = toLength$7;
7607
+ var toString$2 = toString$d;
7608
+ var $repeat = stringRepeat;
7609
+ var requireObjectCoercible$1 = requireObjectCoercible$b;
7610
+
7611
+ var repeat = uncurryThis$5($repeat);
7612
+ var stringSlice$3 = uncurryThis$5(''.slice);
7613
+ var ceil = Math.ceil;
7614
+
7615
+ // `String.prototype.{ padStart, padEnd }` methods implementation
7616
+ var createMethod = function (IS_END) {
7617
+ return function ($this, maxLength, fillString) {
7618
+ var S = toString$2(requireObjectCoercible$1($this));
7619
+ var intMaxLength = toLength$1(maxLength);
7620
+ var stringLength = S.length;
7621
+ var fillStr = fillString === undefined ? ' ' : toString$2(fillString);
7622
+ var fillLen, stringFiller;
7623
+ if (intMaxLength <= stringLength || fillStr === '') return S;
7624
+ fillLen = intMaxLength - stringLength;
7625
+ stringFiller = repeat(fillStr, ceil(fillLen / fillStr.length));
7626
+ if (stringFiller.length > fillLen) stringFiller = stringSlice$3(stringFiller, 0, fillLen);
7627
+ return IS_END ? S + stringFiller : stringFiller + S;
7628
+ };
7629
+ };
7630
+
7631
+ var stringPad = {
7632
+ // `String.prototype.padStart` method
7633
+ // https://tc39.es/ecma262/#sec-string.prototype.padstart
7634
+ start: createMethod(false),
7635
+ // `String.prototype.padEnd` method
7636
+ // https://tc39.es/ecma262/#sec-string.prototype.padend
7637
+ end: createMethod(true)
7638
+ };
7639
+
7640
+ // https://github.com/zloirock/core-js/issues/280
7641
+ var userAgent$3 = engineUserAgent;
7642
+
7643
+ var stringPadWebkitBug = /Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(userAgent$3);
7644
+
7645
+ var $$8 = _export;
7646
+ var $padStart = stringPad.start;
7647
+ var WEBKIT_BUG = stringPadWebkitBug;
7648
+
7649
+ // `String.prototype.padStart` method
7650
+ // https://tc39.es/ecma262/#sec-string.prototype.padstart
7651
+ $$8({ target: 'String', proto: true, forced: WEBKIT_BUG }, {
7652
+ padStart: function padStart(maxLength /* , fillString = ' ' */) {
7653
+ return $padStart(this, maxLength, arguments.length > 1 ? arguments[1] : undefined);
7654
+ }
7655
+ });
7656
+
7604
7657
  function stringTrimFunction(input) {
7605
7658
  return input.trim();
7606
7659
  }
@@ -7680,6 +7733,20 @@ function addSuffixFunction(suffix) {
7680
7733
  };
7681
7734
  }
7682
7735
 
7736
+ /**
7737
+ * Function that pads the start of a string to a minimum length.
7738
+ */
7739
+
7740
+ /**
7741
+ *
7742
+ * @param minLength
7743
+ * @param padCharacter
7744
+ * @returns
7745
+ */
7746
+ function padStartFunction(minLength, padCharacter) {
7747
+ return input => input.padStart(minLength, padCharacter);
7748
+ }
7749
+
7683
7750
  function hasDifferentStringsNoCase(a, b) {
7684
7751
  return hasDifferentValues(a.map(caseInsensitiveString), b.map(caseInsensitiveString));
7685
7752
  }
@@ -8892,7 +8959,7 @@ var create = objectCreate;
8892
8959
  var getOwnPropertyNames = objectGetOwnPropertyNames.f;
8893
8960
  var isPrototypeOf$2 = objectIsPrototypeOf;
8894
8961
  var isRegExp = isRegexp;
8895
- var toString$1 = toString$c;
8962
+ var toString$1 = toString$d;
8896
8963
  var getRegExpFlags = regexpGetFlags;
8897
8964
  var stickyHelpers = regexpStickyHelpers;
8898
8965
  var proxyAccessor = proxyAccessor$1;
@@ -9140,9 +9207,9 @@ var anObject$4 = anObject$g;
9140
9207
  var isCallable$4 = isCallable$n;
9141
9208
  var isNullOrUndefined$1 = isNullOrUndefined$7;
9142
9209
  var toIntegerOrInfinity$1 = toIntegerOrInfinity$7;
9143
- var toLength = toLength$6;
9144
- var toString = toString$c;
9145
- var requireObjectCoercible = requireObjectCoercible$a;
9210
+ var toLength = toLength$7;
9211
+ var toString = toString$d;
9212
+ var requireObjectCoercible = requireObjectCoercible$b;
9146
9213
  var advanceStringIndex = advanceStringIndex$3;
9147
9214
  var getMethod$2 = getMethod$6;
9148
9215
  var getSubstitution = getSubstitution$1;
@@ -9425,6 +9492,23 @@ const UTF_8_START_CHARACTER = '\u0000';
9425
9492
  */
9426
9493
  const UTF_PRIVATE_USAGE_AREA_START = '\uf8ff';
9427
9494
 
9495
+ /**
9496
+ * Takes in a string and returns a Record that has the index value mapped to the property of the character.
9497
+ *
9498
+ * The latest character index is used in collision cases.
9499
+ *
9500
+ * @param chars
9501
+ * @returns
9502
+ */
9503
+ function stringCharactersToIndexRecord(chars) {
9504
+ const record = {};
9505
+ for (let i = 0; i < chars.length; i += 1) {
9506
+ const char = chars[i];
9507
+ record[char] = i;
9508
+ }
9509
+ return record;
9510
+ }
9511
+
9428
9512
  function replaceStringsFunction(config) {
9429
9513
  const {
9430
9514
  replace: replaceInput,
@@ -13198,128 +13282,652 @@ function mapKeysIntersectionObjectToArray(object, keys) {
13198
13282
  return applyArray;
13199
13283
  }
13200
13284
 
13201
- /**
13202
- * A partial "delta" of the given entry. It only contains values that changed from the last entry.
13203
- *
13204
- * - Undefined field values mean the entry should inherit the previous entry's values.
13205
- * - Null field values in a field mean the value has been cleared and should be excluded from future entries.
13206
- */
13207
-
13208
- /**
13209
- * A compressed object array.
13210
- *
13211
- * The first object is always fully expanded. Objects are in order of the delta changes.
13212
- */
13285
+ var $TypeError = TypeError;
13286
+ var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991
13213
13287
 
13214
- /**
13215
- * Compresses the input objects array to a CompressedObjectDeltaArray.
13216
- */
13288
+ var doesNotExceedSafeInteger$1 = function (it) {
13289
+ if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');
13290
+ return it;
13291
+ };
13217
13292
 
13218
- /**
13219
- * Expands a CompressedObjectDeltaArray to an array of objects.
13220
- */
13293
+ var isArray$1 = isArray$3;
13294
+ var lengthOfArrayLike$1 = lengthOfArrayLike$6;
13295
+ var doesNotExceedSafeInteger = doesNotExceedSafeInteger$1;
13296
+ var bind = functionBindContext;
13221
13297
 
13222
- /**
13223
- * Configuration for an object delta array compressor.
13224
- */
13298
+ // `FlattenIntoArray` abstract operation
13299
+ // https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray
13300
+ var flattenIntoArray$1 = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {
13301
+ var targetIndex = start;
13302
+ var sourceIndex = 0;
13303
+ var mapFn = mapper ? bind(mapper, thisArg) : false;
13304
+ var element, elementLen;
13225
13305
 
13226
- /**
13227
- * An object delta array compressor.
13228
- */
13306
+ while (sourceIndex < sourceLen) {
13307
+ if (sourceIndex in source) {
13308
+ element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];
13229
13309
 
13230
- /**
13231
- * Creates an object delta array compressor.
13232
- *
13233
- * @param compressor
13234
- */
13235
- function objectDeltaArrayCompressor(config) {
13236
- const {
13237
- equalityChecker: _equalityChecker
13238
- } = config;
13239
- const assignKnownValuesToCopy = assignValuesToPOJOFunction({
13240
- keysFilter: Array.from(_equalityChecker._fields.keys()),
13241
- valueFilter: KeyValueTypleValueFilter.NULL
13242
- });
13243
- function compress(uncompressed) {
13244
- // return an empty array if there is nothing to compress
13245
- if (uncompressed.length === 0) {
13246
- return [];
13247
- }
13248
- let current = assignKnownValuesToCopy({}, uncompressed[0]);
13249
- const result = [current];
13250
- uncompressed.slice(1).forEach(next => {
13251
- const compressed = {};
13252
- const fieldEqualityResult = _equalityChecker(current, next);
13310
+ if (depth > 0 && isArray$1(element)) {
13311
+ elementLen = lengthOfArrayLike$1(element);
13312
+ targetIndex = flattenIntoArray$1(target, original, element, elementLen, targetIndex, depth - 1) - 1;
13313
+ } else {
13314
+ doesNotExceedSafeInteger(targetIndex + 1);
13315
+ target[targetIndex] = element;
13316
+ }
13253
13317
 
13254
- // only append unequal fields
13255
- fieldEqualityResult.unequalFields.forEach(field => {
13256
- const nextValue = next[field];
13257
- let saveValue;
13258
- if (nextValue == null) {
13259
- // if null or undefined, check previous value
13260
- const previousValue = current[field];
13261
- if (previousValue == null) {
13262
- saveValue = undefined; // "no change"
13263
- } else {
13264
- saveValue = null; // "clear"
13265
- }
13266
- } else {
13267
- saveValue = nextValue;
13268
- }
13269
- compressed[field] = saveValue;
13270
- });
13271
- result.push(compressed);
13272
- current = next;
13273
- });
13274
- return result;
13275
- }
13276
- const allKeys = Array.from(_equalityChecker._fields.keys());
13277
- function expand(compressed) {
13278
- if (compressed.length === 0) {
13279
- return [];
13318
+ targetIndex++;
13280
13319
  }
13281
- let current = assignKnownValuesToCopy({}, compressed[0]); // first one is never compressed.
13282
- const result = [current];
13283
- compressed.slice(1).forEach(next => {
13284
- const uncompressed = {};
13285
- allKeys.forEach(key => {
13286
- let setValue;
13287
- if (objectHasKey(next, key)) {
13288
- const nextValue = next[key];
13289
- if (nextValue === null) {
13290
- // do nothing, since the value should be "undefined"
13291
- setValue = undefined;
13292
- } else {
13293
- setValue = nextValue;
13294
- }
13295
- } else {
13296
- setValue = current[key];
13297
- }
13298
- uncompressed[key] = setValue;
13299
- });
13300
- result.push(uncompressed);
13301
- current = uncompressed;
13302
- });
13303
- return result;
13320
+ sourceIndex++;
13304
13321
  }
13305
- return {
13306
- _equalityChecker,
13307
- compress: compress,
13308
- expand: expand
13309
- };
13310
- }
13322
+ return targetIndex;
13323
+ };
13311
13324
 
13312
- /**
13313
- * Convenience function for objectMergeMatrix that returns a flat array.
13314
- */
13315
- function objectFlatMergeMatrix(a, b) {
13316
- return flattenArray(objectMergeMatrix(a, b));
13317
- }
13325
+ var flattenIntoArray_1 = flattenIntoArray$1;
13318
13326
 
13319
- /**
13320
- * Creates a matrix of results by merging the input. If either a or b is null/undefined, the result is returned as an array of the other value.
13321
- */
13322
- function objectMergeMatrix(a, b) {
13327
+ var isArray = isArray$3;
13328
+ var isConstructor = isConstructor$2;
13329
+ var isObject = isObject$c;
13330
+ var wellKnownSymbol = wellKnownSymbol$k;
13331
+
13332
+ var SPECIES = wellKnownSymbol('species');
13333
+ var $Array = Array;
13334
+
13335
+ // a part of `ArraySpeciesCreate` abstract operation
13336
+ // https://tc39.es/ecma262/#sec-arrayspeciescreate
13337
+ var arraySpeciesConstructor$1 = function (originalArray) {
13338
+ var C;
13339
+ if (isArray(originalArray)) {
13340
+ C = originalArray.constructor;
13341
+ // cross-realm fallback
13342
+ if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;
13343
+ else if (isObject(C)) {
13344
+ C = C[SPECIES];
13345
+ if (C === null) C = undefined;
13346
+ }
13347
+ } return C === undefined ? $Array : C;
13348
+ };
13349
+
13350
+ var arraySpeciesConstructor = arraySpeciesConstructor$1;
13351
+
13352
+ // `ArraySpeciesCreate` abstract operation
13353
+ // https://tc39.es/ecma262/#sec-arrayspeciescreate
13354
+ var arraySpeciesCreate$1 = function (originalArray, length) {
13355
+ return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
13356
+ };
13357
+
13358
+ var $ = _export;
13359
+ var flattenIntoArray = flattenIntoArray_1;
13360
+ var toObject = toObject$7;
13361
+ var lengthOfArrayLike = lengthOfArrayLike$6;
13362
+ var toIntegerOrInfinity = toIntegerOrInfinity$7;
13363
+ var arraySpeciesCreate = arraySpeciesCreate$1;
13364
+
13365
+ // `Array.prototype.flat` method
13366
+ // https://tc39.es/ecma262/#sec-array.prototype.flat
13367
+ $({ target: 'Array', proto: true }, {
13368
+ flat: function flat(/* depthArg = 1 */) {
13369
+ var depthArg = arguments.length ? arguments[0] : undefined;
13370
+ var O = toObject(this);
13371
+ var sourceLen = lengthOfArrayLike(O);
13372
+ var A = arraySpeciesCreate(O, 0);
13373
+ A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toIntegerOrInfinity(depthArg));
13374
+ return A;
13375
+ }
13376
+ });
13377
+
13378
+ // this method was added to unscopables after implementation
13379
+ // in popular engines, so it's moved to a separate module
13380
+ var addToUnscopables = addToUnscopables$2;
13381
+
13382
+ // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
13383
+ addToUnscopables('flat');
13384
+
13385
+ // MARK: Loop
13386
+
13387
+ async function performTaskLoop(config) {
13388
+ let result;
13389
+ const initValue = config.initValue;
13390
+ const startLoop = initValue == null || (await config.checkContinue(initValue, -1));
13391
+ if (startLoop) {
13392
+ let i = 0;
13393
+ let prevValue = initValue;
13394
+ let check;
13395
+ do {
13396
+ prevValue = await config.next(i, prevValue);
13397
+ i += 1;
13398
+ check = await config.checkContinue(prevValue, i);
13399
+ } while (check);
13400
+ result = prevValue;
13401
+ } else {
13402
+ result = initValue;
13403
+ }
13404
+ return result;
13405
+ }
13406
+
13407
+ // MARK: Loop Count
13408
+
13409
+ function performTaskCountLoop(config) {
13410
+ return performTaskLoop(Object.assign({}, config, {
13411
+ checkContinue: (_, i) => i < config.count
13412
+ }));
13413
+ }
13414
+
13415
+ // MARK: Loop Make
13416
+
13417
+ function performMakeLoop(config) {
13418
+ return performTaskCountLoop({
13419
+ count: config.count,
13420
+ initValue: [],
13421
+ next: async (i, accumulator) => {
13422
+ const result = await config.make(i, accumulator);
13423
+ accumulator.push(result);
13424
+ return accumulator;
13425
+ }
13426
+ });
13427
+ }
13428
+
13429
+ // MARK: Batch Loop
13430
+
13431
+ function performBatchLoop(config) {
13432
+ const {
13433
+ make
13434
+ } = config;
13435
+ const calc = batchCalc(config);
13436
+ const {
13437
+ batchCount
13438
+ } = calc;
13439
+ return performMakeLoop({
13440
+ count: batchCount,
13441
+ make: async (i, made) => {
13442
+ const itemsToMake = itemCountForBatchIndex(i, calc);
13443
+ const batch = await make(itemsToMake, i, made);
13444
+ return batch;
13445
+ }
13446
+ });
13447
+ }
13448
+
13449
+ /**
13450
+ * Used to verify each id valid and available for use.
13451
+ */
13452
+
13453
+ /**
13454
+ * Used by to verify tags have not already been taken.
13455
+ */
13456
+
13457
+ /**
13458
+ * Used to generate valid, unused identifiers.
13459
+ */
13460
+
13461
+ /**
13462
+ * Creates an IdBatchFactory
13463
+ *
13464
+ * @param config
13465
+ * @returns
13466
+ */
13467
+ function idBatchFactory(config) {
13468
+ const {
13469
+ factory,
13470
+ verifier
13471
+ } = config;
13472
+ const {
13473
+ maxBatchSize: tagsToGeneratePerBatch,
13474
+ filterUnique = x => x,
13475
+ verify: verifyTags
13476
+ } = verifier;
13477
+ const maxUniquenessFailures = 20; // arbitrary failure point, but generally shouldn't occur with proper input.
13478
+
13479
+ return async totalTagIdentifiersToGenerate => {
13480
+ const uniquenessAccumulator = []; // used for uniqueness checks
13481
+
13482
+ async function generateIdentifiersBatch(batchSize) {
13483
+ let ids = [];
13484
+ let uniquenessFailure = 0;
13485
+ while (ids.length < batchSize) {
13486
+ const countToGenerate = batchSize - ids.length;
13487
+ let newIds = filterUnique(factory(countToGenerate), uniquenessAccumulator);
13488
+ if (newIds.length === 0) {
13489
+ uniquenessFailure += 1;
13490
+ if (uniquenessFailure === maxUniquenessFailures) {
13491
+ throw new Error(`idBatchFactory failed generating unique values "${maxUniquenessFailures}" times. Factory may be insufficient for generating unique values.`);
13492
+ }
13493
+ continue;
13494
+ } else if (newIds.length > countToGenerate) {
13495
+ newIds = newIds.slice(0, countToGenerate); // ignore any extra values the generator may return.
13496
+ }
13497
+
13498
+ // add to the uniqueness acumulator to prevent further usage
13499
+ mergeArraysIntoArray(uniquenessAccumulator, newIds);
13500
+ const verifiedIds = await verifyTags(newIds);
13501
+
13502
+ // concat identifiers
13503
+ ids = ids.concat(verifiedIds);
13504
+
13505
+ // restart loop if there are still items to be generated.
13506
+ }
13507
+
13508
+ return ids;
13509
+ }
13510
+ const tagBatches = await performBatchLoop({
13511
+ totalItems: totalTagIdentifiersToGenerate,
13512
+ itemsPerBatch: tagsToGeneratePerBatch,
13513
+ make: async batchSize => {
13514
+ const result = await generateIdentifiersBatch(batchSize);
13515
+ return result;
13516
+ }
13517
+ });
13518
+ return tagBatches.flat();
13519
+ };
13520
+ }
13521
+
13522
+ /**
13523
+ * Map object of PrimativeKey dencoder values, keyed by the encoded value.
13524
+ */
13525
+
13526
+ /**
13527
+ * PrimativeKeyDencoder values. No key or value should be repeated.
13528
+ */
13529
+
13530
+ /**
13531
+ * Creates a Map of the PrimativeKeyDencoder values.
13532
+ *
13533
+ * If any repeat values are found, an error will be thrown.
13534
+ *
13535
+ * @param values
13536
+ */
13537
+ function primativeKeyDencoderMap(values) {
13538
+ const map = new Map();
13539
+ let valuesArray;
13540
+ if (!Array.isArray(values)) {
13541
+ valuesArray = [];
13542
+ forEachKeyValue(values, {
13543
+ forEach: pair => {
13544
+ valuesArray.push(pair);
13545
+ },
13546
+ filter: KeyValueTypleValueFilter.UNDEFINED
13547
+ });
13548
+ } else {
13549
+ valuesArray = values;
13550
+ }
13551
+ valuesArray.forEach(value => {
13552
+ const [d, e] = value;
13553
+ if (map.has(d) || map.has(e)) {
13554
+ throw new Error(`primativeKeyDencoderMap() encountered a repeat key/value: ${d}/${e}. Keys and values must be unique.`);
13555
+ }
13556
+ map.set(d, e);
13557
+ map.set(e, d);
13558
+ });
13559
+ map._tuples = valuesArray;
13560
+ return map;
13561
+ }
13562
+
13563
+ /**
13564
+ * Used for encoding/decoding pre-configured strings values from a map.
13565
+ *
13566
+ * If a single value is input that produces a nullish value, an error is thrown.
13567
+ */
13568
+
13569
+ const PRIMATIVE_KEY_DENCODER_VALUE = input => null;
13570
+
13571
+ /**
13572
+ * Creates a new PrimiativeKeyDencoder.
13573
+ */
13574
+ function primativeKeyDencoder(config) {
13575
+ const {
13576
+ defaultValue = PRIMATIVE_KEY_DENCODER_VALUE
13577
+ } = config;
13578
+ const map = primativeKeyDencoderMap(config.values);
13579
+ const fn = input => {
13580
+ if (Array.isArray(input)) {
13581
+ const values = filterMaybeValues(input.map(x => map.get(x)));
13582
+ return values;
13583
+ } else {
13584
+ let value = map.get(input);
13585
+ if (value == null) {
13586
+ value = defaultValue(input);
13587
+ if (value == null) {
13588
+ throw new Error(`Encountered unknown value ${input} in primativeKeyDencoder.`);
13589
+ }
13590
+ }
13591
+ return value;
13592
+ }
13593
+ };
13594
+ fn._map = map;
13595
+ return fn;
13596
+ }
13597
+
13598
+ /**
13599
+ * Used to decode
13600
+ */
13601
+
13602
+ /**
13603
+ * Maps the input encode/decode value to the proper value.
13604
+ *
13605
+ * If a single value is input that produces a nullish value, an error is thrown.
13606
+ */
13607
+
13608
+ /**
13609
+ * Creates a new PrimativeKeyStringDencoderFunction.
13610
+ *
13611
+ * @param config
13612
+ * @returns
13613
+ */
13614
+ function primativeKeyStringDencoder(config) {
13615
+ const dencoder = typeof config.dencoder === 'function' ? config.dencoder : primativeKeyDencoder(config.dencoder);
13616
+ const {
13617
+ splitter
13618
+ } = config;
13619
+ const {
13620
+ _map: dencoderMap
13621
+ } = dencoder;
13622
+ if (splitter) {
13623
+ dencoderMap._tuples.forEach(x => {
13624
+ if (x[0].toString().indexOf(splitter) !== -1) {
13625
+ throw new Error(`primativeKeyStringDencoder() encountered a value (${x[0]}) that contains the splitter (${splitter}).`);
13626
+ }
13627
+ });
13628
+ } else {
13629
+ // Assert all encoded values are 1 character long max.
13630
+ dencoderMap._tuples.forEach(x => {
13631
+ if (x[0].toString().length !== 1) {
13632
+ throw new Error(`primativeKeyStringDencoder() without a splitter defined cannot use encoded values of a length greater than 1. Encountered encoded "${x[0]}".`);
13633
+ }
13634
+ });
13635
+ }
13636
+ const joiner = splitter || '';
13637
+ const splitEncodedValues = splitter ? encodedValues => encodedValues.split(splitter) : encodedValues => Array.from(encodedValues);
13638
+ return input => {
13639
+ if (typeof input === 'string') {
13640
+ const split = splitEncodedValues(input);
13641
+ return dencoder(split);
13642
+ } else {
13643
+ const encoded = dencoder(input);
13644
+ return encoded.join(joiner);
13645
+ }
13646
+ };
13647
+ }
13648
+
13649
+ // MARK: NumberString
13650
+ /**
13651
+ * An encodable number. This is typically a positive integer value.
13652
+ */
13653
+
13654
+ /**
13655
+ * A number-encoded string. Little-Endian. Should Decode to the same value each time.
13656
+ */
13657
+
13658
+ /**
13659
+ * Digits used when encoding/decoding a value.
13660
+ *
13661
+ * The number of digits/characters must be a factor of 2. I.E. 8, 16, 32, 64
13662
+ */
13663
+
13664
+ /**
13665
+ * The number of "bits" given by the NumberStringDencoderDigits.
13666
+ */
13667
+
13668
+ /**
13669
+ * Default 64 NumberStringDencoderDigits value.
13670
+ */
13671
+ const NUMBER_STRING_DENCODER_64_DIGITS = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_';
13672
+
13673
+ /**
13674
+ * The default negative prefix for negative numbers.
13675
+ */
13676
+ const NUMBER_STRING_DENCODER_64_DEFAULT_NEGATIVE_PREFIX = '!';
13677
+
13678
+ /**
13679
+ * The NumberString dencoder type
13680
+ * - positive_integer: can only encode/decode positive integers
13681
+ * - integer: can only encode/decode integers
13682
+ * - positive_decimal: can encoded/decode positive decimals
13683
+ * - decimal: can encoded/decode decimals
13684
+ */
13685
+
13686
+ /**
13687
+ * A NumberString dencoder.
13688
+ *
13689
+ * Can encode/decode a number from the input string.
13690
+ */
13691
+
13692
+ /**
13693
+ * Creates an integer-type NumberStringDencoder.
13694
+ *
13695
+ * If the config does not include a negative prefix, any negative number will be treated like a positive number.
13696
+ *
13697
+ * @param config
13698
+ * @returns
13699
+ */
13700
+ function numberStringDencoder(config) {
13701
+ const {
13702
+ negativePrefix,
13703
+ digits
13704
+ } = config;
13705
+ const type = negativePrefix ? 'integer' : 'positive_integer';
13706
+ const log2OfDigits = Math.min(6, Math.floor(Math.log2(digits.length))); // essentially the number of bits. Floor to round. Max of 6=64bits
13707
+ const bitDepth = Math.pow(2, log2OfDigits);
13708
+ const bitMask = bitDepth - 1;
13709
+ const digitsLookup = stringCharactersToIndexRecord(digits);
13710
+ function encodeNumber(number) {
13711
+ let result = '';
13712
+ const isNegativeNumber = number < 0;
13713
+ if (isNegativeNumber) {
13714
+ number = -number;
13715
+ }
13716
+ do {
13717
+ const index = number & bitMask;
13718
+ result = digits[index] + result; // Little-endian
13719
+ number >>>= log2OfDigits;
13720
+ } while (number !== 0);
13721
+ if (isNegativeNumber && negativePrefix) {
13722
+ result = negativePrefix + result;
13723
+ }
13724
+ return result;
13725
+ }
13726
+ function decodeNumber(encodedNumber) {
13727
+ let isNegativeNumber = false;
13728
+ if (encodedNumber[0] === negativePrefix) {
13729
+ isNegativeNumber = true;
13730
+ }
13731
+ const startAtIndex = isNegativeNumber ? 1 : 0;
13732
+ let result = 0;
13733
+ for (let i = startAtIndex; i < encodedNumber.length; i += 1) {
13734
+ result = (result << log2OfDigits) + digitsLookup[encodedNumber[i]];
13735
+ }
13736
+ if (isNegativeNumber) {
13737
+ result = -result;
13738
+ }
13739
+ return result;
13740
+ }
13741
+ return {
13742
+ type,
13743
+ digits,
13744
+ bitDepth,
13745
+ negativePrefix,
13746
+ encodeNumber,
13747
+ decodeNumber
13748
+ };
13749
+ }
13750
+ const NUMBER_STRING_DENCODER_64 = numberStringDencoder({
13751
+ negativePrefix: NUMBER_STRING_DENCODER_64_DEFAULT_NEGATIVE_PREFIX,
13752
+ digits: NUMBER_STRING_DENCODER_64_DIGITS
13753
+ });
13754
+ function numberStringDencoderFunction(dencoder) {
13755
+ const fn = input => {
13756
+ const result = typeof input === 'number' ? dencoder.encodeNumber(input) : dencoder.decodeNumber(input);
13757
+ return result;
13758
+ };
13759
+ return fn;
13760
+ }
13761
+ function numberStringDencoderEncodedStringValueFunction(dencoder) {
13762
+ return input => {
13763
+ return typeof input === 'number' ? dencoder.encodeNumber(input) : input;
13764
+ };
13765
+ }
13766
+ function numberStringDencoderDecodedNumberValueFunction(dencoder) {
13767
+ return input => {
13768
+ return typeof input === 'number' ? input : dencoder.decodeNumber(input);
13769
+ };
13770
+ }
13771
+
13772
+ // TODO: can add a function that can encode/decode fractions by splitting at the decimal point and encoding twice.
13773
+
13774
+ /**
13775
+ * A factory for generating a unique model identifier.
13776
+ */
13777
+
13778
+ /**
13779
+ * Creates a ModelIdFactory that generates sequential incrementing encoded NumberStringDencoderString values using the input configuration.
13780
+ */
13781
+ function sequentialIncrementingNumberStringModelIdFactory(config = {}) {
13782
+ const {
13783
+ transform: inputTranformFunction,
13784
+ dencoder: inputDencoder,
13785
+ currentIndex,
13786
+ startAt: inputStartAt,
13787
+ increaseBy: inputIncreaseBy
13788
+ } = config;
13789
+ if (inputIncreaseBy === 0) {
13790
+ throw new Error('Cannot use 0 for increaseBy.');
13791
+ }
13792
+ const increaseBy = inputIncreaseBy != null ? inputIncreaseBy : 1;
13793
+ const dencoder = inputDencoder != null ? inputDencoder : NUMBER_STRING_DENCODER_64;
13794
+ const dencoderNumberValue = numberStringDencoderDecodedNumberValueFunction(dencoder);
13795
+ const startAtFromCurrentIndex = currentIndex != null ? dencoderNumberValue(currentIndex) + increaseBy : undefined;
13796
+ const startAt = inputStartAt != null ? dencoderNumberValue(inputStartAt) : startAtFromCurrentIndex != null ? startAtFromCurrentIndex : 0;
13797
+ const transform = inputTranformFunction != null ? inputTranformFunction : mapIdentityFunction();
13798
+ const numberFactory = incrementingNumberFactory({
13799
+ startAt,
13800
+ increaseBy
13801
+ });
13802
+ return () => {
13803
+ const nextIndex = numberFactory();
13804
+ const next = dencoder.encodeNumber(nextIndex);
13805
+ return transform(next, nextIndex);
13806
+ };
13807
+ }
13808
+
13809
+ /**
13810
+ * A partial "delta" of the given entry. It only contains values that changed from the last entry.
13811
+ *
13812
+ * - Undefined field values mean the entry should inherit the previous entry's values.
13813
+ * - Null field values in a field mean the value has been cleared and should be excluded from future entries.
13814
+ */
13815
+
13816
+ /**
13817
+ * A compressed object array.
13818
+ *
13819
+ * The first object is always fully expanded. Objects are in order of the delta changes.
13820
+ */
13821
+
13822
+ /**
13823
+ * Compresses the input objects array to a CompressedObjectDeltaArray.
13824
+ */
13825
+
13826
+ /**
13827
+ * Expands a CompressedObjectDeltaArray to an array of objects.
13828
+ */
13829
+
13830
+ /**
13831
+ * Configuration for an object delta array compressor.
13832
+ */
13833
+
13834
+ /**
13835
+ * An object delta array compressor.
13836
+ */
13837
+
13838
+ /**
13839
+ * Creates an object delta array compressor.
13840
+ *
13841
+ * @param compressor
13842
+ */
13843
+ function objectDeltaArrayCompressor(config) {
13844
+ const {
13845
+ equalityChecker: _equalityChecker
13846
+ } = config;
13847
+ const assignKnownValuesToCopy = assignValuesToPOJOFunction({
13848
+ keysFilter: Array.from(_equalityChecker._fields.keys()),
13849
+ valueFilter: KeyValueTypleValueFilter.NULL
13850
+ });
13851
+ function compress(uncompressed) {
13852
+ // return an empty array if there is nothing to compress
13853
+ if (uncompressed.length === 0) {
13854
+ return [];
13855
+ }
13856
+ let current = assignKnownValuesToCopy({}, uncompressed[0]);
13857
+ const result = [current];
13858
+ uncompressed.slice(1).forEach(next => {
13859
+ const compressed = {};
13860
+ const fieldEqualityResult = _equalityChecker(current, next);
13861
+
13862
+ // only append unequal fields
13863
+ fieldEqualityResult.unequalFields.forEach(field => {
13864
+ const nextValue = next[field];
13865
+ let saveValue;
13866
+ if (nextValue == null) {
13867
+ // if null or undefined, check previous value
13868
+ const previousValue = current[field];
13869
+ if (previousValue == null) {
13870
+ saveValue = undefined; // "no change"
13871
+ } else {
13872
+ saveValue = null; // "clear"
13873
+ }
13874
+ } else {
13875
+ saveValue = nextValue;
13876
+ }
13877
+ compressed[field] = saveValue;
13878
+ });
13879
+ result.push(compressed);
13880
+ current = next;
13881
+ });
13882
+ return result;
13883
+ }
13884
+ const allKeys = Array.from(_equalityChecker._fields.keys());
13885
+ function expand(compressed) {
13886
+ if (compressed.length === 0) {
13887
+ return [];
13888
+ }
13889
+ let current = assignKnownValuesToCopy({}, compressed[0]); // first one is never compressed.
13890
+ const result = [current];
13891
+ compressed.slice(1).forEach(next => {
13892
+ const uncompressed = {};
13893
+ allKeys.forEach(key => {
13894
+ let setValue;
13895
+ if (objectHasKey(next, key)) {
13896
+ const nextValue = next[key];
13897
+ if (nextValue === null) {
13898
+ // do nothing, since the value should be "undefined"
13899
+ setValue = undefined;
13900
+ } else {
13901
+ setValue = nextValue;
13902
+ }
13903
+ } else {
13904
+ setValue = current[key];
13905
+ }
13906
+ uncompressed[key] = setValue;
13907
+ });
13908
+ result.push(uncompressed);
13909
+ current = uncompressed;
13910
+ });
13911
+ return result;
13912
+ }
13913
+ return {
13914
+ _equalityChecker,
13915
+ compress: compress,
13916
+ expand: expand
13917
+ };
13918
+ }
13919
+
13920
+ /**
13921
+ * Convenience function for objectMergeMatrix that returns a flat array.
13922
+ */
13923
+ function objectFlatMergeMatrix(a, b) {
13924
+ return flattenArray(objectMergeMatrix(a, b));
13925
+ }
13926
+
13927
+ /**
13928
+ * Creates a matrix of results by merging the input. If either a or b is null/undefined, the result is returned as an array of the other value.
13929
+ */
13930
+ function objectMergeMatrix(a, b) {
13323
13931
  if (a && b) {
13324
13932
  const aNorm = convertToArray(a);
13325
13933
  const bNorm = convertToArray(b);
@@ -13613,303 +14221,66 @@ function copyField(defaultOutput) {
13613
14221
  return {
13614
14222
  from: {
13615
14223
  default: defaultOutput,
13616
- convert: x => x
13617
- },
13618
- to: {
13619
- default: defaultOutput,
13620
- convert: x => x
13621
- }
13622
- };
13623
- }
13624
-
13625
- function maybeMergeModelModifiers(input) {
13626
- const modifiers = asArray(input);
13627
- const allModifyData = filterMaybeValues(modifiers.map(x => x.modifyData));
13628
- const allModifyModel = filterMaybeValues(modifiers.map(x => x.modifyModel));
13629
- const modifyData = maybeMergeModifiers(allModifyData);
13630
- const modifyModel = maybeMergeModifiers(allModifyModel);
13631
- return {
13632
- modifyData,
13633
- modifyModel
13634
- };
13635
- }
13636
- function modifyModelMapFunctions(config) {
13637
- const {
13638
- copy,
13639
- copyModel = copy,
13640
- copyData = copy,
13641
- mapFunctions,
13642
- modifiers
13643
- } = config;
13644
- const {
13645
- from,
13646
- to
13647
- } = mapFunctions;
13648
- const {
13649
- modifyData,
13650
- modifyModel
13651
- } = maybeMergeModelModifiers(modifiers);
13652
- const modifyFrom = modifyModelMapFunction(from, modifyData, copyData);
13653
- const modifyTo = modifyModelMapFunction(to, modifyModel, copyModel);
13654
- return {
13655
- from: modifyFrom,
13656
- to: modifyTo
13657
- };
13658
- }
13659
-
13660
- /**
13661
- * Merges a ModifierFunction with a ModelMapFunction
13662
- *
13663
- * @param mapFn
13664
- * @param modifyModel
13665
- * @param copy
13666
- * @returns
13667
- */
13668
- function modifyModelMapFunction(mapFn, modifyModel, copy = true) {
13669
- return modifyModel ? (input, target, options) => {
13670
- const inputToMap = copy && input != null ? Object.assign({}, input) : input;
13671
- if (inputToMap != null) {
13672
- modifyModel(inputToMap);
13673
- }
13674
- return mapFn(inputToMap, target, options);
13675
- } : mapFn;
13676
- }
13677
-
13678
- var $TypeError = TypeError;
13679
- var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991
13680
-
13681
- var doesNotExceedSafeInteger$1 = function (it) {
13682
- if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');
13683
- return it;
13684
- };
13685
-
13686
- var isArray$1 = isArray$3;
13687
- var lengthOfArrayLike$1 = lengthOfArrayLike$6;
13688
- var doesNotExceedSafeInteger = doesNotExceedSafeInteger$1;
13689
- var bind = functionBindContext;
13690
-
13691
- // `FlattenIntoArray` abstract operation
13692
- // https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray
13693
- var flattenIntoArray$1 = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {
13694
- var targetIndex = start;
13695
- var sourceIndex = 0;
13696
- var mapFn = mapper ? bind(mapper, thisArg) : false;
13697
- var element, elementLen;
13698
-
13699
- while (sourceIndex < sourceLen) {
13700
- if (sourceIndex in source) {
13701
- element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];
13702
-
13703
- if (depth > 0 && isArray$1(element)) {
13704
- elementLen = lengthOfArrayLike$1(element);
13705
- targetIndex = flattenIntoArray$1(target, original, element, elementLen, targetIndex, depth - 1) - 1;
13706
- } else {
13707
- doesNotExceedSafeInteger(targetIndex + 1);
13708
- target[targetIndex] = element;
13709
- }
13710
-
13711
- targetIndex++;
13712
- }
13713
- sourceIndex++;
13714
- }
13715
- return targetIndex;
13716
- };
13717
-
13718
- var flattenIntoArray_1 = flattenIntoArray$1;
13719
-
13720
- var isArray = isArray$3;
13721
- var isConstructor = isConstructor$2;
13722
- var isObject = isObject$c;
13723
- var wellKnownSymbol = wellKnownSymbol$k;
13724
-
13725
- var SPECIES = wellKnownSymbol('species');
13726
- var $Array = Array;
13727
-
13728
- // a part of `ArraySpeciesCreate` abstract operation
13729
- // https://tc39.es/ecma262/#sec-arrayspeciescreate
13730
- var arraySpeciesConstructor$1 = function (originalArray) {
13731
- var C;
13732
- if (isArray(originalArray)) {
13733
- C = originalArray.constructor;
13734
- // cross-realm fallback
13735
- if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;
13736
- else if (isObject(C)) {
13737
- C = C[SPECIES];
13738
- if (C === null) C = undefined;
13739
- }
13740
- } return C === undefined ? $Array : C;
13741
- };
13742
-
13743
- var arraySpeciesConstructor = arraySpeciesConstructor$1;
13744
-
13745
- // `ArraySpeciesCreate` abstract operation
13746
- // https://tc39.es/ecma262/#sec-arrayspeciescreate
13747
- var arraySpeciesCreate$1 = function (originalArray, length) {
13748
- return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
13749
- };
13750
-
13751
- var $ = _export;
13752
- var flattenIntoArray = flattenIntoArray_1;
13753
- var toObject = toObject$7;
13754
- var lengthOfArrayLike = lengthOfArrayLike$6;
13755
- var toIntegerOrInfinity = toIntegerOrInfinity$7;
13756
- var arraySpeciesCreate = arraySpeciesCreate$1;
13757
-
13758
- // `Array.prototype.flat` method
13759
- // https://tc39.es/ecma262/#sec-array.prototype.flat
13760
- $({ target: 'Array', proto: true }, {
13761
- flat: function flat(/* depthArg = 1 */) {
13762
- var depthArg = arguments.length ? arguments[0] : undefined;
13763
- var O = toObject(this);
13764
- var sourceLen = lengthOfArrayLike(O);
13765
- var A = arraySpeciesCreate(O, 0);
13766
- A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toIntegerOrInfinity(depthArg));
13767
- return A;
13768
- }
13769
- });
13770
-
13771
- // this method was added to unscopables after implementation
13772
- // in popular engines, so it's moved to a separate module
13773
- var addToUnscopables = addToUnscopables$2;
13774
-
13775
- // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
13776
- addToUnscopables('flat');
13777
-
13778
- // MARK: Loop
13779
-
13780
- async function performTaskLoop(config) {
13781
- let result;
13782
- const initValue = config.initValue;
13783
- const startLoop = initValue == null || (await config.checkContinue(initValue, -1));
13784
- if (startLoop) {
13785
- let i = 0;
13786
- let prevValue = initValue;
13787
- let check;
13788
- do {
13789
- prevValue = await config.next(i, prevValue);
13790
- i += 1;
13791
- check = await config.checkContinue(prevValue, i);
13792
- } while (check);
13793
- result = prevValue;
13794
- } else {
13795
- result = initValue;
13796
- }
13797
- return result;
13798
- }
13799
-
13800
- // MARK: Loop Count
13801
-
13802
- function performTaskCountLoop(config) {
13803
- return performTaskLoop(Object.assign({}, config, {
13804
- checkContinue: (_, i) => i < config.count
13805
- }));
13806
- }
13807
-
13808
- // MARK: Loop Make
13809
-
13810
- function performMakeLoop(config) {
13811
- return performTaskCountLoop({
13812
- count: config.count,
13813
- initValue: [],
13814
- next: async (i, accumulator) => {
13815
- const result = await config.make(i, accumulator);
13816
- accumulator.push(result);
13817
- return accumulator;
14224
+ convert: x => x
14225
+ },
14226
+ to: {
14227
+ default: defaultOutput,
14228
+ convert: x => x
13818
14229
  }
13819
- });
14230
+ };
13820
14231
  }
13821
14232
 
13822
- // MARK: Batch Loop
13823
-
13824
- function performBatchLoop(config) {
14233
+ function maybeMergeModelModifiers(input) {
14234
+ const modifiers = asArray(input);
14235
+ const allModifyData = filterMaybeValues(modifiers.map(x => x.modifyData));
14236
+ const allModifyModel = filterMaybeValues(modifiers.map(x => x.modifyModel));
14237
+ const modifyData = maybeMergeModifiers(allModifyData);
14238
+ const modifyModel = maybeMergeModifiers(allModifyModel);
14239
+ return {
14240
+ modifyData,
14241
+ modifyModel
14242
+ };
14243
+ }
14244
+ function modifyModelMapFunctions(config) {
13825
14245
  const {
13826
- make
14246
+ copy,
14247
+ copyModel = copy,
14248
+ copyData = copy,
14249
+ mapFunctions,
14250
+ modifiers
13827
14251
  } = config;
13828
- const calc = batchCalc(config);
13829
14252
  const {
13830
- batchCount
13831
- } = calc;
13832
- return performMakeLoop({
13833
- count: batchCount,
13834
- make: async (i, made) => {
13835
- const itemsToMake = itemCountForBatchIndex(i, calc);
13836
- const batch = await make(itemsToMake, i, made);
13837
- return batch;
13838
- }
13839
- });
14253
+ from,
14254
+ to
14255
+ } = mapFunctions;
14256
+ const {
14257
+ modifyData,
14258
+ modifyModel
14259
+ } = maybeMergeModelModifiers(modifiers);
14260
+ const modifyFrom = modifyModelMapFunction(from, modifyData, copyData);
14261
+ const modifyTo = modifyModelMapFunction(to, modifyModel, copyModel);
14262
+ return {
14263
+ from: modifyFrom,
14264
+ to: modifyTo
14265
+ };
13840
14266
  }
13841
14267
 
13842
14268
  /**
13843
- * Used to verify each id valid and available for use.
13844
- */
13845
-
13846
- /**
13847
- * Used by to verify tags have not already been taken.
13848
- */
13849
-
13850
- /**
13851
- * Used to generate valid, unused identifiers.
13852
- */
13853
-
13854
- /**
13855
- * Creates an IdBatchFactory
14269
+ * Merges a ModifierFunction with a ModelMapFunction
13856
14270
  *
13857
- * @param config
14271
+ * @param mapFn
14272
+ * @param modifyModel
14273
+ * @param copy
13858
14274
  * @returns
13859
14275
  */
13860
- function idBatchFactory(config) {
13861
- const {
13862
- factory,
13863
- verifier
13864
- } = config;
13865
- const {
13866
- maxBatchSize: tagsToGeneratePerBatch,
13867
- filterUnique = x => x,
13868
- verify: verifyTags
13869
- } = verifier;
13870
- const maxUniquenessFailures = 20; // arbitrary failure point, but generally shouldn't occur with proper input.
13871
-
13872
- return async totalTagIdentifiersToGenerate => {
13873
- const uniquenessAccumulator = []; // used for uniqueness checks
13874
-
13875
- async function generateIdentifiersBatch(batchSize) {
13876
- let ids = [];
13877
- let uniquenessFailure = 0;
13878
- while (ids.length < batchSize) {
13879
- const countToGenerate = batchSize - ids.length;
13880
- let newIds = filterUnique(factory(countToGenerate), uniquenessAccumulator);
13881
- if (newIds.length === 0) {
13882
- uniquenessFailure += 1;
13883
- if (uniquenessFailure === maxUniquenessFailures) {
13884
- throw new Error(`idBatchFactory failed generating unique values "${maxUniquenessFailures}" times. Factory may be insufficient for generating unique values.`);
13885
- }
13886
- continue;
13887
- } else if (newIds.length > countToGenerate) {
13888
- newIds = newIds.slice(0, countToGenerate); // ignore any extra values the generator may return.
13889
- }
13890
-
13891
- // add to the uniqueness acumulator to prevent further usage
13892
- mergeArraysIntoArray(uniquenessAccumulator, newIds);
13893
- const verifiedIds = await verifyTags(newIds);
13894
-
13895
- // concat identifiers
13896
- ids = ids.concat(verifiedIds);
13897
-
13898
- // restart loop if there are still items to be generated.
13899
- }
13900
-
13901
- return ids;
14276
+ function modifyModelMapFunction(mapFn, modifyModel, copy = true) {
14277
+ return modifyModel ? (input, target, options) => {
14278
+ const inputToMap = copy && input != null ? Object.assign({}, input) : input;
14279
+ if (inputToMap != null) {
14280
+ modifyModel(inputToMap);
13902
14281
  }
13903
- const tagBatches = await performBatchLoop({
13904
- totalItems: totalTagIdentifiersToGenerate,
13905
- itemsPerBatch: tagsToGeneratePerBatch,
13906
- make: async batchSize => {
13907
- const result = await generateIdentifiersBatch(batchSize);
13908
- return result;
13909
- }
13910
- });
13911
- return tagBatches.flat();
13912
- };
14282
+ return mapFn(inputToMap, target, options);
14283
+ } : mapFn;
13913
14284
  }
13914
14285
 
13915
14286
  /**
@@ -14968,133 +15339,6 @@ class StorageObjectUtility {
14968
15339
  }
14969
15340
  }
14970
15341
 
14971
- /**
14972
- * Map object of PrimativeKey dencoder values, keyed by the encoded value.
14973
- */
14974
-
14975
- /**
14976
- * PrimativeKeyDencoder values. No key or value should be repeated.
14977
- */
14978
-
14979
- /**
14980
- * Creates a Map of the PrimativeKeyDencoder values.
14981
- *
14982
- * If any repeat values are found, an error will be thrown.
14983
- *
14984
- * @param values
14985
- */
14986
- function primativeKeyDencoderMap(values) {
14987
- const map = new Map();
14988
- let valuesArray;
14989
- if (!Array.isArray(values)) {
14990
- valuesArray = [];
14991
- forEachKeyValue(values, {
14992
- forEach: pair => {
14993
- valuesArray.push(pair);
14994
- },
14995
- filter: KeyValueTypleValueFilter.UNDEFINED
14996
- });
14997
- } else {
14998
- valuesArray = values;
14999
- }
15000
- valuesArray.forEach(value => {
15001
- const [d, e] = value;
15002
- if (map.has(d) || map.has(e)) {
15003
- throw new Error(`primativeKeyDencoderMap() encountered a repeat key/value: ${d}/${e}. Keys and values must be unique.`);
15004
- }
15005
- map.set(d, e);
15006
- map.set(e, d);
15007
- });
15008
- map._tuples = valuesArray;
15009
- return map;
15010
- }
15011
-
15012
- /**
15013
- * Used for encoding/decoding pre-configured strings values from a map.
15014
- *
15015
- * If a single value is input that produces a nullish value, an error is thrown.
15016
- */
15017
-
15018
- const PRIMATIVE_KEY_DENCODER_VALUE = input => null;
15019
-
15020
- /**
15021
- * Creates a new PrimiativeKeyDencoder.
15022
- */
15023
- function primativeKeyDencoder(config) {
15024
- const {
15025
- defaultValue = PRIMATIVE_KEY_DENCODER_VALUE
15026
- } = config;
15027
- const map = primativeKeyDencoderMap(config.values);
15028
- const fn = input => {
15029
- if (Array.isArray(input)) {
15030
- const values = filterMaybeValues(input.map(x => map.get(x)));
15031
- return values;
15032
- } else {
15033
- let value = map.get(input);
15034
- if (value == null) {
15035
- value = defaultValue(input);
15036
- if (value == null) {
15037
- throw new Error(`Encountered unknown value ${input} in primativeKeyDencoder.`);
15038
- }
15039
- }
15040
- return value;
15041
- }
15042
- };
15043
- fn._map = map;
15044
- return fn;
15045
- }
15046
-
15047
- /**
15048
- * Used to decode
15049
- */
15050
-
15051
- /**
15052
- * Maps the input encode/decode value to the proper value.
15053
- *
15054
- * If a single value is input that produces a nullish value, an error is thrown.
15055
- */
15056
-
15057
- /**
15058
- * Creates a new PrimativeKeyStringDencoderFunction.
15059
- *
15060
- * @param config
15061
- * @returns
15062
- */
15063
- function primativeKeyStringDencoder(config) {
15064
- const dencoder = typeof config.dencoder === 'function' ? config.dencoder : primativeKeyDencoder(config.dencoder);
15065
- const {
15066
- splitter
15067
- } = config;
15068
- const {
15069
- _map: dencoderMap
15070
- } = dencoder;
15071
- if (splitter) {
15072
- dencoderMap._tuples.forEach(x => {
15073
- if (x[0].toString().indexOf(splitter) !== -1) {
15074
- throw new Error(`primativeKeyStringDencoder() encountered a value (${x[0]}) that contains the splitter (${splitter}).`);
15075
- }
15076
- });
15077
- } else {
15078
- // Assert all encoded values are 1 character long max.
15079
- dencoderMap._tuples.forEach(x => {
15080
- if (x[0].toString().length !== 1) {
15081
- throw new Error(`primativeKeyStringDencoder() without a splitter defined cannot use encoded values of a length greater than 1. Encountered encoded "${x[0]}".`);
15082
- }
15083
- });
15084
- }
15085
- const joiner = splitter || '';
15086
- const splitEncodedValues = splitter ? encodedValues => encodedValues.split(splitter) : encodedValues => Array.from(encodedValues);
15087
- return input => {
15088
- if (typeof input === 'string') {
15089
- const split = splitEncodedValues(input);
15090
- return dencoder(split);
15091
- } else {
15092
- const encoded = dencoder(input);
15093
- return encoded.join(joiner);
15094
- }
15095
- };
15096
- }
15097
-
15098
15342
  /**
15099
15343
  * Represents a single CSS class
15100
15344
  */
@@ -16283,4 +16527,4 @@ async function iterateFilteredPages(inputPage, loadFn, iterFn) {
16283
16527
  return count;
16284
16528
  }
16285
16529
 
16286
- export { ALL_DOUBLE_SLASHES_REGEX, ALL_SLASHES_REGEX, ALL_SLASH_PATH_FILE_TYPE_SEPARATORS_REGEX, ASSERTION_ERROR_CODE, ASSERTION_HANDLER, AUTH_ADMIN_ROLE, AUTH_ONBOARDED_ROLE, AUTH_ROLE_CLAIMS_DEFAULT_CLAIM_VALUE, AUTH_ROLE_CLAIMS_DEFAULT_EMPTY_VALUE, AUTH_TOS_SIGNED_ROLE, AUTH_USER_ROLE, AbstractUniqueModel, Assert, AssertMax, AssertMin, AssertionError, AssertionIssueHandler, BooleanKeyArrayUtilityInstance, BooleanStringKeyArrayUtilityInstance, CATCH_ALL_HANDLE_RESULT_KEY, CUT_VALUE_TO_ZERO_PRECISION, DATE_NOW_VALUE, DEFAULT_LAT_LNG_STRING_VALUE, DEFAULT_RANDOM_EMAIL_FACTORY_CONFIG, DEFAULT_RANDOM_PHONE_NUMBER_FACTORY_CONFIG, DEFAULT_READABLE_ERROR_CODE, DEFAULT_SLASH_PATH_ILLEGAL_CHARACTERS, DEFAULT_SLASH_PATH_ILLEGAL_CHARACTER_REPLACEMENT, DEFAULT_UNKNOWN_MODEL_TYPE_STRING, DOLLAR_AMOUNT_PRECISION, DOLLAR_AMOUNT_STRING_REGEX, DataDoesNotExistError, DataIsExpiredError, Day, DestroyFunctionObject, E164PHONE_NUMBER_REGEX, E164PHONE_NUMBER_WITH_EXTENSION_REGEX, E164PHONE_NUMBER_WITH_OPTIONAL_EXTENSION_REGEX, FINAL_PAGE, FIRST_PAGE, FRACTIONAL_HOURS_PRECISION_FUNCTION, FullStorageObject, HAS_WEBSITE_DOMAIN_NAME_REGEX, HOURS_IN_DAY, HTTP_OR_HTTPS_REGEX, HashSet, ISO8601_DAY_STRING_REGEX, ISO8601_DAY_STRING_START_REGEX, ISO_8601_DATE_STRING_REGEX, KeyValueTypleValueFilter, LAT_LNG_PATTERN, LAT_LNG_PATTERN_MAX_PRECISION, LAT_LONG_100KM_PRECISION, LAT_LONG_100M_PRECISION, LAT_LONG_10CM_PRECISION, LAT_LONG_10KM_PRECISION, LAT_LONG_10M_PRECISION, LAT_LONG_1CM_PRECISION, LAT_LONG_1KM_PRECISION, LAT_LONG_1MM_PRECISION, LAT_LONG_1M_PRECISION, LAT_LONG_GRAINS_OF_SAND_PRECISION, LEADING_SLASHES_REGEX, MAP_IDENTITY, MAX_BITWISE_SET_SIZE, MAX_LATITUDE_VALUE, MAX_LONGITUDE_VALUE, MINUTES_IN_DAY, MINUTES_IN_HOUR, MIN_LATITUDE_VALUE, MIN_LONGITUDE_VALUE, MONTH_DAY_SLASH_DATE_STRING_REGEX, MS_IN_DAY, MS_IN_HOUR, MS_IN_MINUTE, MS_IN_SECOND, MemoryStorageInstance, ModelRelationUtility, NOOP_MODIFIER, PHONE_EXTENSION_NUMBER_REGEX, PRIMATIVE_KEY_DENCODER_VALUE, PageCalculator, PropertyDescriptorUtility, REGEX_SPECIAL_CHARACTERS, REGEX_SPECIAL_CHARACTERS_SET, RelationChange, SECONDS_IN_MINUTE, SHARED_MEMORY_STORAGE, SLASH_PATH_FILE_TYPE_SEPARATOR, SLASH_PATH_SEPARATOR, SORT_VALUE_EQUAL, SORT_VALUE_GREATER_THAN, SORT_VALUE_LESS_THAN, ServerErrorResponse, SetDeltaChange, SimpleStorageObject, StorageObject, StorageObjectUtility, StoredDataError, SyncState, TOTAL_LATITUDE_RANGE, TOTAL_LONGITUDE_RANGE, TOTAL_SPAN_OF_LONGITUDE, TRAILING_FILE_TYPE_SEPARATORS_REGEX, TRAILING_SLASHES_REGEX, TimeAM, TimerCancelledError, TimerInstance, TypedServiceRegistryInstance, UNLOADED_PAGE, US_STATE_CODE_STRING_REGEX, UTC_DATE_STRING_REGEX, UTC_TIMEZONE_STRING, UTF_8_START_CHARACTER, UTF_PRIVATE_USAGE_AREA_START, UnauthorizedServerErrorResponse, WEB_PROTOCOL_PREFIX_REGEX, ZIP_CODE_STRING_REGEX, addHttpToUrl, addLatLngPoints, addModifiers, addPlusPrefixToNumber, addPrefix, addPrefixFunction, addSuffix, addSuffixFunction, addToSet, addToSetCopy, allFalsyOrEmptyKeys, allIndexesInIndexRange, allKeyValueTuples, allMaybeSoKeys, allNonUndefinedKeys, allObjectsAreEqual, allValuesAreMaybeNot, allValuesAreNotMaybe, allowValueOnceFilter, applyBestFit, applyToMultipleFields, approximateTimerEndDate, areEqualContext, areEqualPOJOValues, arrayContainsDuplicateValue, arrayContentsDiffer, arrayDecision, arrayDecisionFunction, arrayFactory, arrayInputFactory, arrayToLowercase, arrayToMap, arrayToObject, arrayToUppercase, asArray, asDecisionFunction, asGetter, asIndexRangeCheckFunctionConfig, asIterable, asNumber, asObjectCopyFactory, asPromise, asSet, assignValuesToPOJO, assignValuesToPOJOFunction, authClaims, authRoleClaimsService, authRolesSetHasRoles, baseWebsiteUrl, batch, batchCalc, bitwiseObjectDencoder, bitwiseObjectEncoder, bitwiseObjectdecoder, bitwiseSetDecoder, bitwiseSetDencoder, booleanFactory, boundNumber, boundNumberFunction, boundToRectangle, build, cachedGetter, capLatValue, capitalizeFirstLetter, caseInsensitiveFilterByIndexOfDecisionFactory, caseInsensitiveString, catchAllHandlerKey, chainMapFunction, chainMapSameFunctions, coerceToEmailParticipants, combineMaps, compareEqualityWithValueFromItemsFunction, compareEqualityWithValueFromItemsFunctionFactory, compareFnOrder, compareWithMappedValuesFunction, computeNextFractionalHour, computeNextFreeIndexFunction, concatArrays, concatArraysUnique, containsAllStringsAnyCase, containsAllValues, containsAnyStringAnyCase, containsAnyValue, containsAnyValueFromSet, containsNoValueFromSet, containsNoneOfValue, containsStringAnyCase, convertEmailParticipantStringToParticipant, convertMaybeToArray, convertParticipantToEmailParticipantString, convertToArray, copyArray, copyField, copyLatLngBound, copyLatLngPoint, copyObject, copySetAndDo, countAllInNestedArray, countPOJOKeys, countPOJOKeysFunction, cronExpressionRepeatingEveryNMinutes, cssClassesSet, cutToPrecision, cutValueToInteger, cutValueToPrecision, cutValueToPrecisionFunction, dateFromLogicalDate, dayOfWeek, daysOfWeekArray, daysOfWeekFromEnabledDays, daysOfWeekNameFunction, daysOfWeekNameMap, decisionFunction, decodeHashedValues, decodeHashedValuesWithDecodeMap, decodeModelKeyTypePair, defaultFilterFromPOJOFunctionNoCopy, defaultForwardFunctionFactory, defaultLatLngPoint, defaultLatLngString, dencodeBitwiseSet, diffLatLngBoundPoints, diffLatLngPoints, dollarAmountString, e164PhoneNumberExtensionPair, e164PhoneNumberFromE164PhoneNumberExtensionPair, enabledDaysFromDaysOfWeek, encodeBitwiseSet, encodeModelKeyTypePair, errorMessageContainsString, errorMessageContainsStringFunction, escapeStringForRegex, excludeValues, excludeValuesFromArray, excludeValuesFromSet, existsInIterable, expandArrayMapTuples, expandArrayValueTuples, expandFlattenTreeFunction, expandIndexSet, expandTreeFunction, expandTrees, extendLatLngBound, filterAndMapFunction, filterEmptyValues, filterFalsyAndEmptyValues, filterFromIterable, filterFromPOJO, filterFromPOJOFunction, filterKeyValueTupleFunction, filterKeyValueTuples, filterKeyValueTuplesFunction, filterKeyValueTuplesInputToFilter, filterMaybeValues, filterNullAndUndefinedValues, filterOnlyUndefinedValues, filterUndefinedValues, filterUniqueByIndex, filterUniqueCaseInsensitiveStrings, filterUniqueFunction, filterUniqueTransform, filterUniqueValues, filterValuesByDistance, filterValuesByDistanceNoOrder, filterValuesToSet, filterValuesUsingSet, filteredPage, findAllCharacterOccurences, findAllCharacterOccurencesFunction, findBest, findBestIndexMatch, findBestIndexMatchFunction, findBestIndexSetPair, findFirstCharacterOccurence, findInIterable, findIndexOfFirstDuplicateValue, findItemsByIndex, findNext, findPOJOKeys, findPOJOKeysFunction, findStringsRegexString, findToIndexSet, findValuesFrom, firstAndLastCharacterOccurrence, firstAndLastValue, firstValue, firstValueFromIterable, fitToIndexRangeFunction, fixExtraQueryParameters, fixMultiSlashesInSlashPath, flattenArray, flattenArrayOrValueArray, flattenArrayToSet, flattenArrayUnique, flattenArrayUniqueCaseInsensitiveStrings, flattenTree, flattenTreeToArray, flattenTreeToArrayFunction, flattenTrees, forEachInIterable, forEachKeyValue, forEachKeyValueOnPOJOFunction, forEachWithArray, forwardFunction, fractionalHoursToMinutes, generateIfDoesNotExist, getArrayNextIndex, getDayOffset, getDayTomorrow, getDayYesterday, getDaysOfWeekNames, getFunctionType, getNextDay, getNextPageNumber, getOverlappingRectangle, getPageNumber, getPreviousDay, getValueFromGetter, groupValues, handlerBindAccessor, handlerConfigurerFactory, handlerFactory, handlerMappedSetFunction, handlerMappedSetFunctionFactory, handlerSetFunction, hasDifferentStringsNoCase, hasDifferentValues, hasHttpPrefix, hasNonNullValue, hasSameTimezone, hasSameValues, hasValueFunction, hasValueOrNotEmpty, hasValueOrNotEmptyObject, hasWebsiteDomain, hashSetForIndexed, hourToFractionalHour, idBatchFactory, incrementingNumberFactory, indexDeltaGroup, indexDeltaGroupFunction, indexRange, indexRangeCheckFunction, indexRangeCheckReaderFunction, indexRangeForArray, indexRangeOverlapsIndexRange, indexRangeOverlapsIndexRangeFunction, indexRangeReaderPairFactory, indexRefMap, indexedValuesArrayAccessorFactory, insertIntoBooleanKeyArray, invertBooleanReturnFunction, invertDecision, invertFilter, isAllowed, isClassLikeType, isCompleteUnitedStatesAddress, isConsideredUtcTimezoneString, isDate, isDefaultLatLngPoint, isDefaultLatLngPointValue, isDefaultReadableError, isDefinedAndNotFalse, isDollarAmountString, isE164PhoneNumber, isE164PhoneNumberWithExtension, isEmptyIterable, isEqualContext, isEqualToValueDecisionFunction, isEvenNumber, isFalseBooleanKeyArray, isFinalPage, isGetter, isISO8601DateString, isISO8601DayString, isISO8601DayStringStart, isInAllowedDaysOfWeekSet, isInNumberBoundFunction, isInSetDecisionFunction, isIndexNumberInIndexRange, isIndexNumberInIndexRangeFunction, isIndexRangeInIndexRange, isIndexRangeInIndexRangeFunction, isIterable, isLatLngBound, isLatLngBoundWithinLatLngBound, isLatLngPoint, isLatLngPointWithinLatLngBound, isLatLngString, isLogicalDateStringCode, isMapIdentityFunction, isMaybeNot, isMaybeNotOrTrue, isMaybeSo, isModelKey, isMonthDaySlashDate, isNonClassFunction, isNotNullOrEmptyString, isNumberDivisibleBy, isObjectWithConstructor, isOddNumber, isPromise, isPromiseLike, isSameLatLngBound, isSameLatLngPoint, isSameNonNullValue, isSameVector, isSelectedDecisionFunctionFactory, isSelectedIndexDecisionFunction, isServerError, isSlashPathFile, isSlashPathFolder, isSlashPathTypedFile, isStringOrTrue, isTrueBooleanKeyArray, isUTCDateString, isUsStateCodeString, isValidLatLngPoint, isValidLatitude, isValidLongitude, isValidNumberBound, isValidPhoneExtensionNumber, isValidSlashPath, isWebsiteUrl, isWebsiteUrlWithPrefix, isWithinLatLngBoundFunction, isolateSlashPath, isolateSlashPathFunction, isolateWebsitePathFunction, itemCountForBatchIndex, iterableToArray, iterableToMap, iterablesAreSetEquivalent, iterate, iterateFilteredPages, joinHostAndPort, joinStringsWithSpaces, keepCharactersAfterFirstCharacterOccurence, keepCharactersAfterFirstCharacterOccurenceFunction, keepFromSetCopy, keepValuesFromArray, keepValuesFromSet, keyValueMapFactory, labeledValueMap, lastValue, latLngBound, latLngBoundCenterPoint, latLngBoundEastBound, latLngBoundFromInput, latLngBoundFullyWrapsMap, latLngBoundFunction, latLngBoundNorthBound, latLngBoundNorthEastPoint, latLngBoundNorthWestPoint, latLngBoundOverlapsLatLngBound, latLngBoundSouthBound, latLngBoundSouthEastPoint, latLngBoundSouthWestPoint, latLngBoundStrictlyWrapsMap, latLngBoundTuple, latLngBoundTupleFunction, latLngBoundWestBound, latLngBoundWrapsMap, latLngDataPointFunction, latLngPoint, latLngPointFromString, latLngPointFunction, latLngPointPrecisionFunction, latLngString, latLngStringFunction, latLngTuple, latLngTupleFunction, limitArray, lonLatTuple, lowercaseFirstLetter, mailToUrlString, makeBestFit, makeCopyModelFieldFunction, makeDateMonthForMonthOfYear, makeGetter, makeHandler, makeHashDecodeMap, makeKeyPairs, makeModelConversionFieldValuesFunction, makeModelMap, makeModelMapFunctions, makeMultiModelKeyMap, makeValuesGroupMap, makeWithFactory, makeWithFactoryInput, mapArrayFunction, mapFunctionOutput, mapFunctionOutputPair, mapGetter, mapGetterFactory, mapIdentityFunction, mapIterable, mapKeysIntersectionObjectToArray, mapMaybeFunction, mapObjectMap, mapObjectMapFunction, mapObjectToTargetObject, mapPromiseOrValue, mapToObject, mapToTuples, mapValuesToSet, mappedUseAsyncFunction, mappedUseFunction, mapsHaveSameKeys, maybeMergeModelModifiers, maybeMergeModifiers, maybeModifierMapToFunction, maybeSet, mergeArrayIntoArray, mergeArrayOrValueIntoArray, mergeArrays, mergeArraysIntoArray, mergeFilterFunctions, mergeIntoArray, mergeModifiers, mergeObjects, mergeObjectsFunction, mergeSlashPaths, messageFromError, minAndMaxFunction, minAndMaxIndex, minAndMaxIndexFunction, minAndMaxIndexItemsFunction, minAndMaxNumber, minutesToFractionalHours, modelFieldConversions, modelFieldMapFunction, modelFieldMapFunctions, modelTypeDataPairFactory, modifier, modifierMapToFunction, modifyModelMapFunction, modifyModelMapFunctions, monthDaySlashDateToDateString, monthOfYearFromDate, monthOfYearFromDateMonth, multiKeyValueMapFactory, multiValueMapBuilder, neMostLatLngPoint, nearestDivisibleValues, objectCopyFactory, objectDeltaArrayCompressor, objectFieldEqualityChecker, objectFlatMergeMatrix, objectHasKey, objectHasKeys, objectHasNoKeys, objectIsEmpty, objectKeyEqualityComparatorFunction, objectKeysEqualityComparatorFunction, objectMergeMatrix, objectToMap, objectToTuples, overlapsLatLngBoundFunction, overrideInObject, overrideInObjectFunctionFactory, pairGroupValues, parseISO8601DayStringToUTCDate, partialServerError, passThrough, percentNumberFromDecimal, percentNumberToDecimal, performAsyncTask, performAsyncTasks, performBatchLoop, performMakeLoop, performTaskCountLoop, performTaskLoop, performTasksFromFactoryInParallelFunction, performTasksInParallel, performTasksInParallelFunction, pickOneRandomly, poll, primativeKeyDencoder, primativeKeyDencoderMap, primativeKeyStringDencoder, primativeValuesDelta, promiseReference, protectedFactory, pushArrayItemsIntoArray, pushElementOntoArray, pushItemOrArrayItemsIntoArray, randomArrayFactory, randomArrayIndex, randomBoolean, randomEmailFactory, randomFromArrayFactory, randomLatLngFactory, randomLatLngFromCenterFactory, randomNumber, randomNumberFactory, randomPhoneNumberFactory, randomPickFactory, range, rangedIndexedValuesArrayAccessorFactory, rangedIndexedValuesArrayAccessorInfoFactory, readBooleanKeySafetyWrap, readDomainFromEmailAddress, readDomainsFromEmailAddresses, readEmailDomainFromUrlOrEmailAddress, readIndexNumber, readKeysFrom, readKeysFromFilterUniqueFunctionAdditionalKeys, readKeysFromFilterUniqueFunctionAdditionalKeysInput, readKeysFunction, readKeysSetFrom, readKeysSetFunction, readKeysToMap, readModelKey, readModelKeyFromObject, readModelKeys, readModelKeysFromObjects, readMultipleKeysToMap, readUniqueModelKey, readableError, readableStreamToBase64, readableStreamToBuffer, readableStreamToStringFunction, rectangleOverlapsRectangle, reduceBooleansFn, reduceBooleansWithAnd, reduceBooleansWithAndFn, reduceBooleansWithOr, reduceBooleansWithOrFn, reduceNumbers, reduceNumbersFn, reduceNumbersWithAdd, reduceNumbersWithAddFn, reduceNumbersWithMax, reduceNumbersWithMaxFn, reduceNumbersWithMin, reduceNumbersWithMinFn, removeByKeyFromBooleanKeyArray, removeCharactersAfterFirstCharacterOccurence, removeCharactersAfterFirstCharacterOccurenceFunction, removeExtensionFromPhoneNumber, removeFromBooleanKeyArray, removeFromSet, removeFromSetCopy, removeHttpFromUrl, removeModelsWithKey, removeModelsWithSameKey, removeModifiers, removeTrailingFileTypeSeparators, removeTrailingSlashes, removeWebProtocolPrefix, repeatString, replaceCharacterAtIndexIf, replaceCharacterAtIndexWith, replaceInvalidFilePathTypeSeparatorsInSlashPath, replaceInvalidFilePathTypeSeparatorsInSlashPathFunction, replaceLastCharacterIf, replaceLastCharacterIfIsFunction, replaceMultipleFilePathsInSlashPath, replaceStringsFunction, requireModelKey, restoreOrder, restoreOrderWithValues, reverseCompareFn, roundNumberToStepFunction, roundNumberUpToStep, roundToPrecision, roundToPrecisionFunction, roundingFunction, runAsyncTaskForValue, runAsyncTasksForValues, safeCompareEquality, safeEqualityComparatorFunction, safeFindBestIndexMatch, searchStringFilterFunction, separateValues, separateValuesToSets, serverError, setContainsAllValues, setContainsAnyValue, setContainsNoneOfValue, setDeltaChangeKeys, setDeltaFunction, setHasValueFunction, setIncludes, setIncludesFunction, setKeysOnMap, setWebProtocolPrefix, setsAreEquivalent, simpleSortValuesFunctionWithSortRef, slashPathFactory, slashPathInvalidError, slashPathName, slashPathParts, slashPathStartTypeFactory, slashPathType, slashPathValidationFactory, sliceIndexRangeFunction, sortAscendingIndexNumberRefFunction, sortByIndexAscendingCompareFunction, sortByIndexRangeAscendingCompareFunction, sortByLabelFunction, sortByNumberFunction, sortByStringFunction, sortCompareNumberFunction, sortNumbersAscendingFunction, sortValues, sortValuesFunctionOrMapIdentityWithSortRef, sortValuesFunctionWithSortRef, spaceSeparatedCssClasses, splitCommaSeparatedString, splitCommaSeparatedStringToSet, splitJoinNameString, splitJoinRemainder, splitStringAtFirstCharacterOccurence, splitStringAtFirstCharacterOccurenceFunction, splitStringAtIndex, startOfDayForSystemDateInUTC, startOfDayForUTCDateInUTC, stepsFromIndex, stepsFromIndexFunction, stringFactoryFromFactory, stringToLowercaseFunction, stringToUppercaseFunction, stringTrimFunction, sumOfIntegersBetween, swMostLatLngPoint, symmetricDifferenceArray, symmetricDifferenceArrayBetweenSets, symmetricDifferenceWithModels, takeFront, takeLast, takeValuesFromIterable, telUrlString, telUrlStringForE164PhoneNumberPair, terminatingFactoryFromArray, throwKeyIsRequired, timePeriodCounter, timer, toAbsoluteSlashPathStartType, toCaseInsensitiveStringArray, toModelFieldConversions, toModelMapFunctions, toReadableError, toRelativeSlashPathStartType, toggleInSet, toggleInSetCopy, toggleTimerRunning, transformNumberFunction, transformNumberFunctionConfig, transformStringFunction, transformStringFunctionConfig, transformStrings, trimArray, typedServiceRegistry, unique, uniqueCaseInsensitiveStrings, uniqueCaseInsensitiveStringsSet, uniqueKeys, uniqueModels, unitedStatesAddressString, urlWithoutParameters, useAsync, useCallback, useContextFunction, useIterableOrValue, useModelOrKey, usePromise, useValue, validLatLngPoint, validLatLngPointFunction, valueAtIndex, valuesAreBothNullishOrEquivalent, valuesFromPOJO, valuesFromPOJOFunction, vectorMinimumSizeResizeFunction, vectorsAreEqual, waitForMs, websiteDomainAndPathPair, websiteDomainAndPathPairFromWebsiteUrl, websitePathAndQueryPair, websitePathFromWebsiteDomainAndPath, websitePathFromWebsiteUrl, websiteUrlFromPaths, wrapIndexRangeFunction, wrapLatLngPoint, wrapLngValue, wrapMapFunctionOutput, wrapNumberFunction, wrapTuples, wrapUseAsyncFunction, wrapUseFunction };
16530
+ export { ALL_DOUBLE_SLASHES_REGEX, ALL_SLASHES_REGEX, ALL_SLASH_PATH_FILE_TYPE_SEPARATORS_REGEX, ASSERTION_ERROR_CODE, ASSERTION_HANDLER, AUTH_ADMIN_ROLE, AUTH_ONBOARDED_ROLE, AUTH_ROLE_CLAIMS_DEFAULT_CLAIM_VALUE, AUTH_ROLE_CLAIMS_DEFAULT_EMPTY_VALUE, AUTH_TOS_SIGNED_ROLE, AUTH_USER_ROLE, AbstractUniqueModel, Assert, AssertMax, AssertMin, AssertionError, AssertionIssueHandler, BooleanKeyArrayUtilityInstance, BooleanStringKeyArrayUtilityInstance, CATCH_ALL_HANDLE_RESULT_KEY, CUT_VALUE_TO_ZERO_PRECISION, DATE_NOW_VALUE, DEFAULT_LAT_LNG_STRING_VALUE, DEFAULT_RANDOM_EMAIL_FACTORY_CONFIG, DEFAULT_RANDOM_PHONE_NUMBER_FACTORY_CONFIG, DEFAULT_READABLE_ERROR_CODE, DEFAULT_SLASH_PATH_ILLEGAL_CHARACTERS, DEFAULT_SLASH_PATH_ILLEGAL_CHARACTER_REPLACEMENT, DEFAULT_UNKNOWN_MODEL_TYPE_STRING, DOLLAR_AMOUNT_PRECISION, DOLLAR_AMOUNT_STRING_REGEX, DataDoesNotExistError, DataIsExpiredError, Day, DestroyFunctionObject, E164PHONE_NUMBER_REGEX, E164PHONE_NUMBER_WITH_EXTENSION_REGEX, E164PHONE_NUMBER_WITH_OPTIONAL_EXTENSION_REGEX, FINAL_PAGE, FIRST_PAGE, FRACTIONAL_HOURS_PRECISION_FUNCTION, FullStorageObject, HAS_WEBSITE_DOMAIN_NAME_REGEX, HOURS_IN_DAY, HTTP_OR_HTTPS_REGEX, HashSet, ISO8601_DAY_STRING_REGEX, ISO8601_DAY_STRING_START_REGEX, ISO_8601_DATE_STRING_REGEX, KeyValueTypleValueFilter, LAT_LNG_PATTERN, LAT_LNG_PATTERN_MAX_PRECISION, LAT_LONG_100KM_PRECISION, LAT_LONG_100M_PRECISION, LAT_LONG_10CM_PRECISION, LAT_LONG_10KM_PRECISION, LAT_LONG_10M_PRECISION, LAT_LONG_1CM_PRECISION, LAT_LONG_1KM_PRECISION, LAT_LONG_1MM_PRECISION, LAT_LONG_1M_PRECISION, LAT_LONG_GRAINS_OF_SAND_PRECISION, LEADING_SLASHES_REGEX, MAP_IDENTITY, MAX_BITWISE_SET_SIZE, MAX_LATITUDE_VALUE, MAX_LONGITUDE_VALUE, MINUTES_IN_DAY, MINUTES_IN_HOUR, MIN_LATITUDE_VALUE, MIN_LONGITUDE_VALUE, MONTH_DAY_SLASH_DATE_STRING_REGEX, MS_IN_DAY, MS_IN_HOUR, MS_IN_MINUTE, MS_IN_SECOND, MemoryStorageInstance, ModelRelationUtility, NOOP_MODIFIER, NUMBER_STRING_DENCODER_64, NUMBER_STRING_DENCODER_64_DEFAULT_NEGATIVE_PREFIX, NUMBER_STRING_DENCODER_64_DIGITS, PHONE_EXTENSION_NUMBER_REGEX, PRIMATIVE_KEY_DENCODER_VALUE, PageCalculator, PropertyDescriptorUtility, REGEX_SPECIAL_CHARACTERS, REGEX_SPECIAL_CHARACTERS_SET, RelationChange, SECONDS_IN_MINUTE, SHARED_MEMORY_STORAGE, SLASH_PATH_FILE_TYPE_SEPARATOR, SLASH_PATH_SEPARATOR, SORT_VALUE_EQUAL, SORT_VALUE_GREATER_THAN, SORT_VALUE_LESS_THAN, ServerErrorResponse, SetDeltaChange, SimpleStorageObject, StorageObject, StorageObjectUtility, StoredDataError, SyncState, TOTAL_LATITUDE_RANGE, TOTAL_LONGITUDE_RANGE, TOTAL_SPAN_OF_LONGITUDE, TRAILING_FILE_TYPE_SEPARATORS_REGEX, TRAILING_SLASHES_REGEX, TimeAM, TimerCancelledError, TimerInstance, TypedServiceRegistryInstance, UNLOADED_PAGE, US_STATE_CODE_STRING_REGEX, UTC_DATE_STRING_REGEX, UTC_TIMEZONE_STRING, UTF_8_START_CHARACTER, UTF_PRIVATE_USAGE_AREA_START, UnauthorizedServerErrorResponse, WEB_PROTOCOL_PREFIX_REGEX, ZIP_CODE_STRING_REGEX, addHttpToUrl, addLatLngPoints, addModifiers, addPlusPrefixToNumber, addPrefix, addPrefixFunction, addSuffix, addSuffixFunction, addToSet, addToSetCopy, allFalsyOrEmptyKeys, allIndexesInIndexRange, allKeyValueTuples, allMaybeSoKeys, allNonUndefinedKeys, allObjectsAreEqual, allValuesAreMaybeNot, allValuesAreNotMaybe, allowValueOnceFilter, applyBestFit, applyToMultipleFields, approximateTimerEndDate, areEqualContext, areEqualPOJOValues, arrayContainsDuplicateValue, arrayContentsDiffer, arrayDecision, arrayDecisionFunction, arrayFactory, arrayInputFactory, arrayToLowercase, arrayToMap, arrayToObject, arrayToUppercase, asArray, asDecisionFunction, asGetter, asIndexRangeCheckFunctionConfig, asIterable, asNumber, asObjectCopyFactory, asPromise, asSet, assignValuesToPOJO, assignValuesToPOJOFunction, authClaims, authRoleClaimsService, authRolesSetHasRoles, baseWebsiteUrl, batch, batchCalc, bitwiseObjectDencoder, bitwiseObjectEncoder, bitwiseObjectdecoder, bitwiseSetDecoder, bitwiseSetDencoder, booleanFactory, boundNumber, boundNumberFunction, boundToRectangle, build, cachedGetter, capLatValue, capitalizeFirstLetter, caseInsensitiveFilterByIndexOfDecisionFactory, caseInsensitiveString, catchAllHandlerKey, chainMapFunction, chainMapSameFunctions, coerceToEmailParticipants, combineMaps, compareEqualityWithValueFromItemsFunction, compareEqualityWithValueFromItemsFunctionFactory, compareFnOrder, compareWithMappedValuesFunction, computeNextFractionalHour, computeNextFreeIndexFunction, concatArrays, concatArraysUnique, containsAllStringsAnyCase, containsAllValues, containsAnyStringAnyCase, containsAnyValue, containsAnyValueFromSet, containsNoValueFromSet, containsNoneOfValue, containsStringAnyCase, convertEmailParticipantStringToParticipant, convertMaybeToArray, convertParticipantToEmailParticipantString, convertToArray, copyArray, copyField, copyLatLngBound, copyLatLngPoint, copyObject, copySetAndDo, countAllInNestedArray, countPOJOKeys, countPOJOKeysFunction, cronExpressionRepeatingEveryNMinutes, cssClassesSet, cutToPrecision, cutValueToInteger, cutValueToPrecision, cutValueToPrecisionFunction, dateFromLogicalDate, dayOfWeek, daysOfWeekArray, daysOfWeekFromEnabledDays, daysOfWeekNameFunction, daysOfWeekNameMap, decisionFunction, decodeHashedValues, decodeHashedValuesWithDecodeMap, decodeModelKeyTypePair, defaultFilterFromPOJOFunctionNoCopy, defaultForwardFunctionFactory, defaultLatLngPoint, defaultLatLngString, dencodeBitwiseSet, diffLatLngBoundPoints, diffLatLngPoints, dollarAmountString, e164PhoneNumberExtensionPair, e164PhoneNumberFromE164PhoneNumberExtensionPair, enabledDaysFromDaysOfWeek, encodeBitwiseSet, encodeModelKeyTypePair, errorMessageContainsString, errorMessageContainsStringFunction, escapeStringForRegex, excludeValues, excludeValuesFromArray, excludeValuesFromSet, existsInIterable, expandArrayMapTuples, expandArrayValueTuples, expandFlattenTreeFunction, expandIndexSet, expandTreeFunction, expandTrees, extendLatLngBound, filterAndMapFunction, filterEmptyValues, filterFalsyAndEmptyValues, filterFromIterable, filterFromPOJO, filterFromPOJOFunction, filterKeyValueTupleFunction, filterKeyValueTuples, filterKeyValueTuplesFunction, filterKeyValueTuplesInputToFilter, filterMaybeValues, filterNullAndUndefinedValues, filterOnlyUndefinedValues, filterUndefinedValues, filterUniqueByIndex, filterUniqueCaseInsensitiveStrings, filterUniqueFunction, filterUniqueTransform, filterUniqueValues, filterValuesByDistance, filterValuesByDistanceNoOrder, filterValuesToSet, filterValuesUsingSet, filteredPage, findAllCharacterOccurences, findAllCharacterOccurencesFunction, findBest, findBestIndexMatch, findBestIndexMatchFunction, findBestIndexSetPair, findFirstCharacterOccurence, findInIterable, findIndexOfFirstDuplicateValue, findItemsByIndex, findNext, findPOJOKeys, findPOJOKeysFunction, findStringsRegexString, findToIndexSet, findValuesFrom, firstAndLastCharacterOccurrence, firstAndLastValue, firstValue, firstValueFromIterable, fitToIndexRangeFunction, fixExtraQueryParameters, fixMultiSlashesInSlashPath, flattenArray, flattenArrayOrValueArray, flattenArrayToSet, flattenArrayUnique, flattenArrayUniqueCaseInsensitiveStrings, flattenTree, flattenTreeToArray, flattenTreeToArrayFunction, flattenTrees, forEachInIterable, forEachKeyValue, forEachKeyValueOnPOJOFunction, forEachWithArray, forwardFunction, fractionalHoursToMinutes, generateIfDoesNotExist, getArrayNextIndex, getDayOffset, getDayTomorrow, getDayYesterday, getDaysOfWeekNames, getFunctionType, getNextDay, getNextPageNumber, getOverlappingRectangle, getPageNumber, getPreviousDay, getValueFromGetter, groupValues, handlerBindAccessor, handlerConfigurerFactory, handlerFactory, handlerMappedSetFunction, handlerMappedSetFunctionFactory, handlerSetFunction, hasDifferentStringsNoCase, hasDifferentValues, hasHttpPrefix, hasNonNullValue, hasSameTimezone, hasSameValues, hasValueFunction, hasValueOrNotEmpty, hasValueOrNotEmptyObject, hasWebsiteDomain, hashSetForIndexed, hourToFractionalHour, idBatchFactory, incrementingNumberFactory, indexDeltaGroup, indexDeltaGroupFunction, indexRange, indexRangeCheckFunction, indexRangeCheckReaderFunction, indexRangeForArray, indexRangeOverlapsIndexRange, indexRangeOverlapsIndexRangeFunction, indexRangeReaderPairFactory, indexRefMap, indexedValuesArrayAccessorFactory, insertIntoBooleanKeyArray, invertBooleanReturnFunction, invertDecision, invertFilter, isAllowed, isClassLikeType, isCompleteUnitedStatesAddress, isConsideredUtcTimezoneString, isDate, isDefaultLatLngPoint, isDefaultLatLngPointValue, isDefaultReadableError, isDefinedAndNotFalse, isDollarAmountString, isE164PhoneNumber, isE164PhoneNumberWithExtension, isEmptyIterable, isEqualContext, isEqualToValueDecisionFunction, isEvenNumber, isFalseBooleanKeyArray, isFinalPage, isGetter, isISO8601DateString, isISO8601DayString, isISO8601DayStringStart, isInAllowedDaysOfWeekSet, isInNumberBoundFunction, isInSetDecisionFunction, isIndexNumberInIndexRange, isIndexNumberInIndexRangeFunction, isIndexRangeInIndexRange, isIndexRangeInIndexRangeFunction, isIterable, isLatLngBound, isLatLngBoundWithinLatLngBound, isLatLngPoint, isLatLngPointWithinLatLngBound, isLatLngString, isLogicalDateStringCode, isMapIdentityFunction, isMaybeNot, isMaybeNotOrTrue, isMaybeSo, isModelKey, isMonthDaySlashDate, isNonClassFunction, isNotNullOrEmptyString, isNumberDivisibleBy, isObjectWithConstructor, isOddNumber, isPromise, isPromiseLike, isSameLatLngBound, isSameLatLngPoint, isSameNonNullValue, isSameVector, isSelectedDecisionFunctionFactory, isSelectedIndexDecisionFunction, isServerError, isSlashPathFile, isSlashPathFolder, isSlashPathTypedFile, isStringOrTrue, isTrueBooleanKeyArray, isUTCDateString, isUsStateCodeString, isValidLatLngPoint, isValidLatitude, isValidLongitude, isValidNumberBound, isValidPhoneExtensionNumber, isValidSlashPath, isWebsiteUrl, isWebsiteUrlWithPrefix, isWithinLatLngBoundFunction, isolateSlashPath, isolateSlashPathFunction, isolateWebsitePathFunction, itemCountForBatchIndex, iterableToArray, iterableToMap, iterablesAreSetEquivalent, iterate, iterateFilteredPages, joinHostAndPort, joinStringsWithSpaces, keepCharactersAfterFirstCharacterOccurence, keepCharactersAfterFirstCharacterOccurenceFunction, keepFromSetCopy, keepValuesFromArray, keepValuesFromSet, keyValueMapFactory, labeledValueMap, lastValue, latLngBound, latLngBoundCenterPoint, latLngBoundEastBound, latLngBoundFromInput, latLngBoundFullyWrapsMap, latLngBoundFunction, latLngBoundNorthBound, latLngBoundNorthEastPoint, latLngBoundNorthWestPoint, latLngBoundOverlapsLatLngBound, latLngBoundSouthBound, latLngBoundSouthEastPoint, latLngBoundSouthWestPoint, latLngBoundStrictlyWrapsMap, latLngBoundTuple, latLngBoundTupleFunction, latLngBoundWestBound, latLngBoundWrapsMap, latLngDataPointFunction, latLngPoint, latLngPointFromString, latLngPointFunction, latLngPointPrecisionFunction, latLngString, latLngStringFunction, latLngTuple, latLngTupleFunction, limitArray, lonLatTuple, lowercaseFirstLetter, mailToUrlString, makeBestFit, makeCopyModelFieldFunction, makeDateMonthForMonthOfYear, makeGetter, makeHandler, makeHashDecodeMap, makeKeyPairs, makeModelConversionFieldValuesFunction, makeModelMap, makeModelMapFunctions, makeMultiModelKeyMap, makeValuesGroupMap, makeWithFactory, makeWithFactoryInput, mapArrayFunction, mapFunctionOutput, mapFunctionOutputPair, mapGetter, mapGetterFactory, mapIdentityFunction, mapIterable, mapKeysIntersectionObjectToArray, mapMaybeFunction, mapObjectMap, mapObjectMapFunction, mapObjectToTargetObject, mapPromiseOrValue, mapToObject, mapToTuples, mapValuesToSet, mappedUseAsyncFunction, mappedUseFunction, mapsHaveSameKeys, maybeMergeModelModifiers, maybeMergeModifiers, maybeModifierMapToFunction, maybeSet, mergeArrayIntoArray, mergeArrayOrValueIntoArray, mergeArrays, mergeArraysIntoArray, mergeFilterFunctions, mergeIntoArray, mergeModifiers, mergeObjects, mergeObjectsFunction, mergeSlashPaths, messageFromError, minAndMaxFunction, minAndMaxIndex, minAndMaxIndexFunction, minAndMaxIndexItemsFunction, minAndMaxNumber, minutesToFractionalHours, modelFieldConversions, modelFieldMapFunction, modelFieldMapFunctions, modelTypeDataPairFactory, modifier, modifierMapToFunction, modifyModelMapFunction, modifyModelMapFunctions, monthDaySlashDateToDateString, monthOfYearFromDate, monthOfYearFromDateMonth, multiKeyValueMapFactory, multiValueMapBuilder, neMostLatLngPoint, nearestDivisibleValues, numberStringDencoder, numberStringDencoderDecodedNumberValueFunction, numberStringDencoderEncodedStringValueFunction, numberStringDencoderFunction, objectCopyFactory, objectDeltaArrayCompressor, objectFieldEqualityChecker, objectFlatMergeMatrix, objectHasKey, objectHasKeys, objectHasNoKeys, objectIsEmpty, objectKeyEqualityComparatorFunction, objectKeysEqualityComparatorFunction, objectMergeMatrix, objectToMap, objectToTuples, overlapsLatLngBoundFunction, overrideInObject, overrideInObjectFunctionFactory, padStartFunction, pairGroupValues, parseISO8601DayStringToUTCDate, partialServerError, passThrough, percentNumberFromDecimal, percentNumberToDecimal, performAsyncTask, performAsyncTasks, performBatchLoop, performMakeLoop, performTaskCountLoop, performTaskLoop, performTasksFromFactoryInParallelFunction, performTasksInParallel, performTasksInParallelFunction, pickOneRandomly, poll, primativeKeyDencoder, primativeKeyDencoderMap, primativeKeyStringDencoder, primativeValuesDelta, promiseReference, protectedFactory, pushArrayItemsIntoArray, pushElementOntoArray, pushItemOrArrayItemsIntoArray, randomArrayFactory, randomArrayIndex, randomBoolean, randomEmailFactory, randomFromArrayFactory, randomLatLngFactory, randomLatLngFromCenterFactory, randomNumber, randomNumberFactory, randomPhoneNumberFactory, randomPickFactory, range, rangedIndexedValuesArrayAccessorFactory, rangedIndexedValuesArrayAccessorInfoFactory, readBooleanKeySafetyWrap, readDomainFromEmailAddress, readDomainsFromEmailAddresses, readEmailDomainFromUrlOrEmailAddress, readIndexNumber, readKeysFrom, readKeysFromFilterUniqueFunctionAdditionalKeys, readKeysFromFilterUniqueFunctionAdditionalKeysInput, readKeysFunction, readKeysSetFrom, readKeysSetFunction, readKeysToMap, readModelKey, readModelKeyFromObject, readModelKeys, readModelKeysFromObjects, readMultipleKeysToMap, readUniqueModelKey, readableError, readableStreamToBase64, readableStreamToBuffer, readableStreamToStringFunction, rectangleOverlapsRectangle, reduceBooleansFn, reduceBooleansWithAnd, reduceBooleansWithAndFn, reduceBooleansWithOr, reduceBooleansWithOrFn, reduceNumbers, reduceNumbersFn, reduceNumbersWithAdd, reduceNumbersWithAddFn, reduceNumbersWithMax, reduceNumbersWithMaxFn, reduceNumbersWithMin, reduceNumbersWithMinFn, removeByKeyFromBooleanKeyArray, removeCharactersAfterFirstCharacterOccurence, removeCharactersAfterFirstCharacterOccurenceFunction, removeExtensionFromPhoneNumber, removeFromBooleanKeyArray, removeFromSet, removeFromSetCopy, removeHttpFromUrl, removeModelsWithKey, removeModelsWithSameKey, removeModifiers, removeTrailingFileTypeSeparators, removeTrailingSlashes, removeWebProtocolPrefix, repeatString, replaceCharacterAtIndexIf, replaceCharacterAtIndexWith, replaceInvalidFilePathTypeSeparatorsInSlashPath, replaceInvalidFilePathTypeSeparatorsInSlashPathFunction, replaceLastCharacterIf, replaceLastCharacterIfIsFunction, replaceMultipleFilePathsInSlashPath, replaceStringsFunction, requireModelKey, restoreOrder, restoreOrderWithValues, reverseCompareFn, roundNumberToStepFunction, roundNumberUpToStep, roundToPrecision, roundToPrecisionFunction, roundingFunction, runAsyncTaskForValue, runAsyncTasksForValues, safeCompareEquality, safeEqualityComparatorFunction, safeFindBestIndexMatch, searchStringFilterFunction, separateValues, separateValuesToSets, sequentialIncrementingNumberStringModelIdFactory, serverError, setContainsAllValues, setContainsAnyValue, setContainsNoneOfValue, setDeltaChangeKeys, setDeltaFunction, setHasValueFunction, setIncludes, setIncludesFunction, setKeysOnMap, setWebProtocolPrefix, setsAreEquivalent, simpleSortValuesFunctionWithSortRef, slashPathFactory, slashPathInvalidError, slashPathName, slashPathParts, slashPathStartTypeFactory, slashPathType, slashPathValidationFactory, sliceIndexRangeFunction, sortAscendingIndexNumberRefFunction, sortByIndexAscendingCompareFunction, sortByIndexRangeAscendingCompareFunction, sortByLabelFunction, sortByNumberFunction, sortByStringFunction, sortCompareNumberFunction, sortNumbersAscendingFunction, sortValues, sortValuesFunctionOrMapIdentityWithSortRef, sortValuesFunctionWithSortRef, spaceSeparatedCssClasses, splitCommaSeparatedString, splitCommaSeparatedStringToSet, splitJoinNameString, splitJoinRemainder, splitStringAtFirstCharacterOccurence, splitStringAtFirstCharacterOccurenceFunction, splitStringAtIndex, startOfDayForSystemDateInUTC, startOfDayForUTCDateInUTC, stepsFromIndex, stepsFromIndexFunction, stringCharactersToIndexRecord, stringFactoryFromFactory, stringToLowercaseFunction, stringToUppercaseFunction, stringTrimFunction, sumOfIntegersBetween, swMostLatLngPoint, symmetricDifferenceArray, symmetricDifferenceArrayBetweenSets, symmetricDifferenceWithModels, takeFront, takeLast, takeValuesFromIterable, telUrlString, telUrlStringForE164PhoneNumberPair, terminatingFactoryFromArray, throwKeyIsRequired, timePeriodCounter, timer, toAbsoluteSlashPathStartType, toCaseInsensitiveStringArray, toModelFieldConversions, toModelMapFunctions, toReadableError, toRelativeSlashPathStartType, toggleInSet, toggleInSetCopy, toggleTimerRunning, transformNumberFunction, transformNumberFunctionConfig, transformStringFunction, transformStringFunctionConfig, transformStrings, trimArray, typedServiceRegistry, unique, uniqueCaseInsensitiveStrings, uniqueCaseInsensitiveStringsSet, uniqueKeys, uniqueModels, unitedStatesAddressString, urlWithoutParameters, useAsync, useCallback, useContextFunction, useIterableOrValue, useModelOrKey, usePromise, useValue, validLatLngPoint, validLatLngPointFunction, valueAtIndex, valuesAreBothNullishOrEquivalent, valuesFromPOJO, valuesFromPOJOFunction, vectorMinimumSizeResizeFunction, vectorsAreEqual, waitForMs, websiteDomainAndPathPair, websiteDomainAndPathPairFromWebsiteUrl, websitePathAndQueryPair, websitePathFromWebsiteDomainAndPath, websitePathFromWebsiteUrl, websiteUrlFromPaths, wrapIndexRangeFunction, wrapLatLngPoint, wrapLngValue, wrapMapFunctionOutput, wrapNumberFunction, wrapTuples, wrapUseAsyncFunction, wrapUseFunction };