UNPKG

136 kBJavaScriptView Raw
1/*!
2{
3 "copywrite": "Copyright (c) 2015-2017",
4 "date": "2019-08-05T21:51:56.238Z",
5 "describe": "",
6 "description": "node's deepEqual and deepStrictEqual algorithm.",
7 "file": "deep-equal-x.js",
8 "hash": "305372cc20f227385803",
9 "license": "MIT",
10 "version": "2.0.13"
11}
12*/
13(function webpackUniversalModuleDefinition(root, factory) {
14 if(typeof exports === 'object' && typeof module === 'object')
15 module.exports = factory();
16 else if(typeof define === 'function' && define.amd)
17 define([], factory);
18 else if(typeof exports === 'object')
19 exports["deepEqualX"] = factory();
20 else
21 root["deepEqualX"] = factory();
22})((function () {
23 'use strict';
24
25 if (typeof self !== 'undefined') {
26 return self;
27 }
28
29 if (typeof window !== 'undefined') {
30 return window;
31 }
32
33 if (typeof global !== 'undefined') {
34 return global;
35 }
36
37 return Function('return this')();
38}()), function() {
39return /******/ (function(modules) { // webpackBootstrap
40/******/ // The module cache
41/******/ var installedModules = {};
42/******/
43/******/ // The require function
44/******/ function __webpack_require__(moduleId) {
45/******/
46/******/ // Check if module is in cache
47/******/ if(installedModules[moduleId]) {
48/******/ return installedModules[moduleId].exports;
49/******/ }
50/******/ // Create a new module (and put it into the cache)
51/******/ var module = installedModules[moduleId] = {
52/******/ i: moduleId,
53/******/ l: false,
54/******/ exports: {}
55/******/ };
56/******/
57/******/ // Execute the module function
58/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
59/******/
60/******/ // Flag the module as loaded
61/******/ module.l = true;
62/******/
63/******/ // Return the exports of the module
64/******/ return module.exports;
65/******/ }
66/******/
67/******/
68/******/ // expose the modules object (__webpack_modules__)
69/******/ __webpack_require__.m = modules;
70/******/
71/******/ // expose the module cache
72/******/ __webpack_require__.c = installedModules;
73/******/
74/******/ // define getter function for harmony exports
75/******/ __webpack_require__.d = function(exports, name, getter) {
76/******/ if(!__webpack_require__.o(exports, name)) {
77/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
78/******/ }
79/******/ };
80/******/
81/******/ // define __esModule on exports
82/******/ __webpack_require__.r = function(exports) {
83/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
84/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
85/******/ }
86/******/ Object.defineProperty(exports, '__esModule', { value: true });
87/******/ };
88/******/
89/******/ // create a fake namespace object
90/******/ // mode & 1: value is a module id, require it
91/******/ // mode & 2: merge all properties of value into the ns
92/******/ // mode & 4: return value when already ns object
93/******/ // mode & 8|1: behave like require
94/******/ __webpack_require__.t = function(value, mode) {
95/******/ if(mode & 1) value = __webpack_require__(value);
96/******/ if(mode & 8) return value;
97/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
98/******/ var ns = Object.create(null);
99/******/ __webpack_require__.r(ns);
100/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
101/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
102/******/ return ns;
103/******/ };
104/******/
105/******/ // getDefaultExport function for compatibility with non-harmony modules
106/******/ __webpack_require__.n = function(module) {
107/******/ var getter = module && module.__esModule ?
108/******/ function getDefault() { return module['default']; } :
109/******/ function getModuleExports() { return module; };
110/******/ __webpack_require__.d(getter, 'a', getter);
111/******/ return getter;
112/******/ };
113/******/
114/******/ // Object.prototype.hasOwnProperty.call
115/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
116/******/
117/******/ // __webpack_public_path__
118/******/ __webpack_require__.p = "";
119/******/
120/******/
121/******/ // Load entry module and return exports
122/******/ return __webpack_require__(__webpack_require__.s = 14);
123/******/ })
124/************************************************************************/
125/******/ ([
126/* 0 */
127/***/ (function(module, exports, __webpack_require__) {
128
129"use strict";
130/*!
131 * is-primitive <https://github.com/jonschlinkert/is-primitive>
132 *
133 * Copyright (c) 2014-present, Jon Schlinkert.
134 * Released under the MIT License.
135 */
136
137
138
139module.exports = function isPrimitive(val) {
140 if (typeof val === 'object') {
141 return val === null;
142 }
143 return typeof val !== 'function';
144};
145
146
147/***/ }),
148/* 1 */
149/***/ (function(module, exports, __webpack_require__) {
150
151"use strict";
152
153
154var strValue = String.prototype.valueOf;
155var tryStringObject = function tryStringObject(value) {
156 try {
157 strValue.call(value);
158 return true;
159 } catch (e) {
160 return false;
161 }
162};
163var toStr = Object.prototype.toString;
164var strClass = '[object String]';
165var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
166
167module.exports = function isString(value) {
168 if (typeof value === 'string') { return true; }
169 if (typeof value !== 'object') { return false; }
170 return hasToStringTag ? tryStringObject(value) : toStr.call(value) === strClass;
171};
172
173
174/***/ }),
175/* 2 */
176/***/ (function(module, exports, __webpack_require__) {
177
178"use strict";
179
180
181var toStr = Object.prototype.toString;
182var hasSymbols = __webpack_require__(10)();
183
184if (hasSymbols) {
185 var symToStr = Symbol.prototype.toString;
186 var symStringRegex = /^Symbol\(.*\)$/;
187 var isSymbolObject = function isRealSymbolObject(value) {
188 if (typeof value.valueOf() !== 'symbol') {
189 return false;
190 }
191 return symStringRegex.test(symToStr.call(value));
192 };
193
194 module.exports = function isSymbol(value) {
195 if (typeof value === 'symbol') {
196 return true;
197 }
198 if (toStr.call(value) !== '[object Symbol]') {
199 return false;
200 }
201 try {
202 return isSymbolObject(value);
203 } catch (e) {
204 return false;
205 }
206 };
207} else {
208
209 module.exports = function isSymbol(value) {
210 // this environment does not support Symbols.
211 return false && false;
212 };
213}
214
215
216/***/ }),
217/* 3 */
218/***/ (function(module, exports, __webpack_require__) {
219
220"use strict";
221
222
223var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
224var toStr = Object.prototype.toString;
225
226var isStandardArguments = function isArguments(value) {
227 if (hasToStringTag && value && typeof value === 'object' && Symbol.toStringTag in value) {
228 return false;
229 }
230 return toStr.call(value) === '[object Arguments]';
231};
232
233var isLegacyArguments = function isArguments(value) {
234 if (isStandardArguments(value)) {
235 return true;
236 }
237 return value !== null &&
238 typeof value === 'object' &&
239 typeof value.length === 'number' &&
240 value.length >= 0 &&
241 toStr.call(value) !== '[object Array]' &&
242 toStr.call(value.callee) === '[object Function]';
243};
244
245var supportsStandardArguments = (function () {
246 return isStandardArguments(arguments);
247}());
248
249isStandardArguments.isLegacyArguments = isLegacyArguments; // for tests
250
251module.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments;
252
253
254/***/ }),
255/* 4 */
256/***/ (function(module, exports, __webpack_require__) {
257
258"use strict";
259
260
261var getDay = Date.prototype.getDay;
262var tryDateObject = function tryDateObject(value) {
263 try {
264 getDay.call(value);
265 return true;
266 } catch (e) {
267 return false;
268 }
269};
270
271var toStr = Object.prototype.toString;
272var dateClass = '[object Date]';
273var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
274
275module.exports = function isDateObject(value) {
276 if (typeof value !== 'object' || value === null) { return false; }
277 return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass;
278};
279
280
281/***/ }),
282/* 5 */
283/***/ (function(module, exports, __webpack_require__) {
284
285"use strict";
286
287
288module.exports = function isObject(x) {
289 return typeof x === "object" && x !== null;
290};
291
292
293/***/ }),
294/* 6 */
295/***/ (function(module, exports) {
296
297/*!
298 * Determine if an object is a Buffer
299 *
300 * @author Feross Aboukhadijeh <https://feross.org>
301 * @license MIT
302 */
303
304module.exports = function isBuffer (obj) {
305 return obj != null && obj.constructor != null &&
306 typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)
307}
308
309
310/***/ }),
311/* 7 */
312/***/ (function(module, exports, __webpack_require__) {
313
314//! stable.js 0.1.8, https://github.com/Two-Screen/stable
315//! © 2018 Angry Bytes and contributors. MIT licensed.
316
317(function (global, factory) {
318 true ? module.exports = factory() :
319 undefined;
320}(this, (function () { 'use strict';
321
322 // A stable array sort, because `Array#sort()` is not guaranteed stable.
323 // This is an implementation of merge sort, without recursion.
324
325 var stable = function (arr, comp) {
326 return exec(arr.slice(), comp)
327 };
328
329 stable.inplace = function (arr, comp) {
330 var result = exec(arr, comp);
331
332 // This simply copies back if the result isn't in the original array,
333 // which happens on an odd number of passes.
334 if (result !== arr) {
335 pass(result, null, arr.length, arr);
336 }
337
338 return arr
339 };
340
341 // Execute the sort using the input array and a second buffer as work space.
342 // Returns one of those two, containing the final result.
343 function exec(arr, comp) {
344 if (typeof(comp) !== 'function') {
345 comp = function (a, b) {
346 return String(a).localeCompare(b)
347 };
348 }
349
350 // Short-circuit when there's nothing to sort.
351 var len = arr.length;
352 if (len <= 1) {
353 return arr
354 }
355
356 // Rather than dividing input, simply iterate chunks of 1, 2, 4, 8, etc.
357 // Chunks are the size of the left or right hand in merge sort.
358 // Stop when the left-hand covers all of the array.
359 var buffer = new Array(len);
360 for (var chk = 1; chk < len; chk *= 2) {
361 pass(arr, comp, chk, buffer);
362
363 var tmp = arr;
364 arr = buffer;
365 buffer = tmp;
366 }
367
368 return arr
369 }
370
371 // Run a single pass with the given chunk size.
372 var pass = function (arr, comp, chk, result) {
373 var len = arr.length;
374 var i = 0;
375 // Step size / double chunk size.
376 var dbl = chk * 2;
377 // Bounds of the left and right chunks.
378 var l, r, e;
379 // Iterators over the left and right chunk.
380 var li, ri;
381
382 // Iterate over pairs of chunks.
383 for (l = 0; l < len; l += dbl) {
384 r = l + chk;
385 e = r + chk;
386 if (r > len) r = len;
387 if (e > len) e = len;
388
389 // Iterate both chunks in parallel.
390 li = l;
391 ri = r;
392 while (true) {
393 // Compare the chunks.
394 if (li < r && ri < e) {
395 // This works for a regular `sort()` compatible comparator,
396 // but also for a simple comparator like: `a > b`
397 if (comp(arr[li], arr[ri]) <= 0) {
398 result[i++] = arr[li++];
399 }
400 else {
401 result[i++] = arr[ri++];
402 }
403 }
404 // Nothing to compare, just flush what's left.
405 else if (li < r) {
406 result[i++] = arr[li++];
407 }
408 else if (ri < e) {
409 result[i++] = arr[ri++];
410 }
411 // Both iterators are at the chunk ends.
412 else {
413 break
414 }
415 }
416 }
417 };
418
419 return stable;
420
421})));
422
423
424/***/ }),
425/* 8 */
426/***/ (function(module, exports, __webpack_require__) {
427
428"use strict";
429
430
431var toStr = Object.prototype.toString;
432
433module.exports = function isArguments(value) {
434 var str = toStr.call(value);
435 var isArgs = str === '[object Arguments]';
436 if (!isArgs) {
437 isArgs = str !== '[object Array]' &&
438 value !== null &&
439 typeof value === 'object' &&
440 typeof value.length === 'number' &&
441 value.length >= 0 &&
442 toStr.call(value.callee) === '[object Function]';
443 }
444 return isArgs;
445};
446
447
448/***/ }),
449/* 9 */
450/***/ (function(module, exports, __webpack_require__) {
451
452"use strict";
453
454
455var slice = Array.prototype.slice;
456var isArgs = __webpack_require__(8);
457
458var origKeys = Object.keys;
459var keysShim = origKeys ? function keys(o) { return origKeys(o); } : __webpack_require__(13);
460
461var originalKeys = Object.keys;
462
463keysShim.shim = function shimObjectKeys() {
464 if (Object.keys) {
465 var keysWorksWithArguments = (function () {
466 // Safari 5.0 bug
467 var args = Object.keys(arguments);
468 return args && args.length === arguments.length;
469 }(1, 2));
470 if (!keysWorksWithArguments) {
471 Object.keys = function keys(object) { // eslint-disable-line func-name-matching
472 if (isArgs(object)) {
473 return originalKeys(slice.call(object));
474 }
475 return originalKeys(object);
476 };
477 }
478 } else {
479 Object.keys = keysShim;
480 }
481 return Object.keys || keysShim;
482};
483
484module.exports = keysShim;
485
486
487/***/ }),
488/* 10 */
489/***/ (function(module, exports, __webpack_require__) {
490
491"use strict";
492/* WEBPACK VAR INJECTION */(function(global) {
493
494var origSymbol = global.Symbol;
495var hasSymbolSham = __webpack_require__(12);
496
497module.exports = function hasNativeSymbols() {
498 if (typeof origSymbol !== 'function') { return false; }
499 if (typeof Symbol !== 'function') { return false; }
500 if (typeof origSymbol('foo') !== 'symbol') { return false; }
501 if (typeof Symbol('bar') !== 'symbol') { return false; }
502
503 return hasSymbolSham();
504};
505
506/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(11)))
507
508/***/ }),
509/* 11 */
510/***/ (function(module, exports) {
511
512var g;
513
514// This works in non-strict mode
515g = (function() {
516 return this;
517})();
518
519try {
520 // This works if eval is allowed (see CSP)
521 g = g || new Function("return this")();
522} catch (e) {
523 // This works if the window reference is available
524 if (typeof window === "object") g = window;
525}
526
527// g can still be undefined, but nothing to do about it...
528// We return undefined, instead of nothing here, so it's
529// easier to handle this case. if(!global) { ...}
530
531module.exports = g;
532
533
534/***/ }),
535/* 12 */
536/***/ (function(module, exports, __webpack_require__) {
537
538"use strict";
539
540
541/* eslint complexity: [2, 17], max-statements: [2, 33] */
542module.exports = function hasSymbols() {
543 if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
544 if (typeof Symbol.iterator === 'symbol') { return true; }
545
546 var obj = {};
547 var sym = Symbol('test');
548 var symObj = Object(sym);
549 if (typeof sym === 'string') { return false; }
550
551 if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
552 if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }
553
554 // temp disabled per https://github.com/ljharb/object.assign/issues/17
555 // if (sym instanceof Symbol) { return false; }
556 // temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
557 // if (!(symObj instanceof Symbol)) { return false; }
558
559 // if (typeof Symbol.prototype.toString !== 'function') { return false; }
560 // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }
561
562 var symVal = 42;
563 obj[sym] = symVal;
564 for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax
565 if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }
566
567 if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }
568
569 var syms = Object.getOwnPropertySymbols(obj);
570 if (syms.length !== 1 || syms[0] !== sym) { return false; }
571
572 if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }
573
574 if (typeof Object.getOwnPropertyDescriptor === 'function') {
575 var descriptor = Object.getOwnPropertyDescriptor(obj, sym);
576 if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
577 }
578
579 return true;
580};
581
582
583/***/ }),
584/* 13 */
585/***/ (function(module, exports, __webpack_require__) {
586
587"use strict";
588
589
590var keysShim;
591if (!Object.keys) {
592 // modified from https://github.com/es-shims/es5-shim
593 var has = Object.prototype.hasOwnProperty;
594 var toStr = Object.prototype.toString;
595 var isArgs = __webpack_require__(8); // eslint-disable-line global-require
596 var isEnumerable = Object.prototype.propertyIsEnumerable;
597 var hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');
598 var hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');
599 var dontEnums = [
600 'toString',
601 'toLocaleString',
602 'valueOf',
603 'hasOwnProperty',
604 'isPrototypeOf',
605 'propertyIsEnumerable',
606 'constructor'
607 ];
608 var equalsConstructorPrototype = function (o) {
609 var ctor = o.constructor;
610 return ctor && ctor.prototype === o;
611 };
612 var excludedKeys = {
613 $applicationCache: true,
614 $console: true,
615 $external: true,
616 $frame: true,
617 $frameElement: true,
618 $frames: true,
619 $innerHeight: true,
620 $innerWidth: true,
621 $onmozfullscreenchange: true,
622 $onmozfullscreenerror: true,
623 $outerHeight: true,
624 $outerWidth: true,
625 $pageXOffset: true,
626 $pageYOffset: true,
627 $parent: true,
628 $scrollLeft: true,
629 $scrollTop: true,
630 $scrollX: true,
631 $scrollY: true,
632 $self: true,
633 $webkitIndexedDB: true,
634 $webkitStorageInfo: true,
635 $window: true
636 };
637 var hasAutomationEqualityBug = (function () {
638 /* global window */
639 if (typeof window === 'undefined') { return false; }
640 for (var k in window) {
641 try {
642 if (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {
643 try {
644 equalsConstructorPrototype(window[k]);
645 } catch (e) {
646 return true;
647 }
648 }
649 } catch (e) {
650 return true;
651 }
652 }
653 return false;
654 }());
655 var equalsConstructorPrototypeIfNotBuggy = function (o) {
656 /* global window */
657 if (typeof window === 'undefined' || !hasAutomationEqualityBug) {
658 return equalsConstructorPrototype(o);
659 }
660 try {
661 return equalsConstructorPrototype(o);
662 } catch (e) {
663 return false;
664 }
665 };
666
667 keysShim = function keys(object) {
668 var isObject = object !== null && typeof object === 'object';
669 var isFunction = toStr.call(object) === '[object Function]';
670 var isArguments = isArgs(object);
671 var isString = isObject && toStr.call(object) === '[object String]';
672 var theKeys = [];
673
674 if (!isObject && !isFunction && !isArguments) {
675 throw new TypeError('Object.keys called on a non-object');
676 }
677
678 var skipProto = hasProtoEnumBug && isFunction;
679 if (isString && object.length > 0 && !has.call(object, 0)) {
680 for (var i = 0; i < object.length; ++i) {
681 theKeys.push(String(i));
682 }
683 }
684
685 if (isArguments && object.length > 0) {
686 for (var j = 0; j < object.length; ++j) {
687 theKeys.push(String(j));
688 }
689 } else {
690 for (var name in object) {
691 if (!(skipProto && name === 'prototype') && has.call(object, name)) {
692 theKeys.push(String(name));
693 }
694 }
695 }
696
697 if (hasDontEnumBug) {
698 var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);
699
700 for (var k = 0; k < dontEnums.length; ++k) {
701 if (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {
702 theKeys.push(dontEnums[k]);
703 }
704 }
705 }
706 return theKeys;
707 };
708}
709module.exports = keysShim;
710
711
712/***/ }),
713/* 14 */
714/***/ (function(module, __webpack_exports__, __webpack_require__) {
715
716"use strict";
717__webpack_require__.r(__webpack_exports__);
718
719// EXTERNAL MODULE: ./node_modules/is-date-object/index.js
720var is_date_object = __webpack_require__(4);
721var is_date_object_default = /*#__PURE__*/__webpack_require__.n(is_date_object);
722
723// EXTERNAL MODULE: ./node_modules/is-arguments/index.js
724var is_arguments = __webpack_require__(3);
725var is_arguments_default = /*#__PURE__*/__webpack_require__.n(is_arguments);
726
727// EXTERNAL MODULE: ./node_modules/is-primitive/index.js
728var is_primitive = __webpack_require__(0);
729var is_primitive_default = /*#__PURE__*/__webpack_require__.n(is_primitive);
730
731// EXTERNAL MODULE: ./node_modules/is-object/index.js
732var is_object = __webpack_require__(5);
733var is_object_default = /*#__PURE__*/__webpack_require__.n(is_object);
734
735// EXTERNAL MODULE: ./node_modules/is-buffer/index.js
736var is_buffer = __webpack_require__(6);
737var is_buffer_default = /*#__PURE__*/__webpack_require__.n(is_buffer);
738
739// EXTERNAL MODULE: ./node_modules/is-string/index.js
740var is_string = __webpack_require__(1);
741var is_string_default = /*#__PURE__*/__webpack_require__.n(is_string);
742
743// CONCATENATED MODULE: ./node_modules/to-string-tag-x/dist/to-string-tag-x.esm.js
744var nativeObjectToString = {}.toString;
745/**
746 * The `toStringTag` method returns "[object type]", where type is the
747 * object type.
748 *
749 * @param {*} [value] - The object of which to get the object type string.
750 * @returns {string} The object type string.
751 */
752
753var toStringTag = function toStringTag(value) {
754 if (value === null) {
755 return '[object Null]';
756 }
757
758 if (typeof value === 'undefined') {
759 return '[object Undefined]';
760 }
761
762 return nativeObjectToString.call(value);
763};
764
765/* harmony default export */ var to_string_tag_x_esm = (toStringTag);
766
767
768// CONCATENATED MODULE: ./node_modules/attempt-x/dist/attempt-x.esm.js
769/**
770 * This method attempts to invoke the function, returning either the result or
771 * the caught error object. Any additional arguments are provided to the
772 * function when it's invoked.
773 *
774 * @param {Function} [fn] - The function to attempt.
775 * @param {...*} [args] - The arguments to invoke the function with.
776 * @returns {object} Returns an object of the result.
777 */
778var attempt = function attempt(fn) {
779 try {
780 for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
781 args[_key - 1] = arguments[_key];
782 }
783
784 return {
785 threw: false,
786
787 /* eslint-disable-next-line babel/no-invalid-this */
788 value: fn.apply(this, args)
789 };
790 } catch (e) {
791 return {
792 threw: true,
793 value: e
794 };
795 }
796};
797
798/* harmony default export */ var attempt_x_esm = (attempt);
799
800
801// CONCATENATED MODULE: ./node_modules/to-boolean-x/dist/to-boolean-x.esm.js
802/**
803 * The abstract operation ToBoolean converts argument to a value of type Boolean.
804 *
805 * @param {*} [value] - The value to be converted.
806 * @returns {boolean} 'true' if value is truthy; otherwise 'false'.
807 */
808var toBoolean = function toBoolean(value) {
809 return !!value;
810};
811
812/* harmony default export */ var to_boolean_x_esm = (toBoolean);
813
814
815// EXTERNAL MODULE: ./node_modules/is-symbol/index.js
816var is_symbol = __webpack_require__(2);
817var is_symbol_default = /*#__PURE__*/__webpack_require__.n(is_symbol);
818
819// CONCATENATED MODULE: ./node_modules/has-symbol-support-x/dist/has-symbol-support-x.esm.js
820var has_symbol_support_x_esm_this = undefined;
821
822function _newArrowCheck(innerThis, boundThis) { if (innerThis !== boundThis) { throw new TypeError("Cannot instantiate an arrow function"); } }
823
824
825
826var hasSymbolSupport = attempt_x_esm(function () {
827 _newArrowCheck(this, has_symbol_support_x_esm_this);
828
829 /* eslint-disable-next-line compat/compat */
830 return typeof Symbol === 'function' && is_symbol_default()(Symbol(''));
831}.bind(undefined));
832/**
833 * Indicates if `Symbol`exists and creates the correct type.
834 * `true`, if it exists and creates the correct type, otherwise `false`.
835 *
836 * @type boolean
837 */
838
839/* harmony default export */ var has_symbol_support_x_esm = (hasSymbolSupport.threw === false && hasSymbolSupport.value === true);
840
841
842// CONCATENATED MODULE: ./node_modules/has-to-string-tag-x/dist/has-to-string-tag-x.esm.js
843
844
845/**
846 * Indicates if `Symbol.toStringTag`exists and is the correct type.
847 * `true`, if it exists and is the correct type, otherwise `false`.
848 *
849 * @type boolean
850 */
851
852/* harmony default export */ var has_to_string_tag_x_esm = (has_symbol_support_x_esm &&
853/* eslint-disable-next-line compat/compat */
854is_symbol_default()(Symbol.toStringTag));
855
856
857// CONCATENATED MODULE: ./node_modules/is-nil-x/dist/is-nil-x.esm.js
858/**
859 * Checks if `value` is `null` or `undefined`.
860 *
861 * @param {*} [value] - The value to check.
862 * @returns {boolean} Returns `true` if `value` is nullish, else `false`.
863 */
864var isNil = function isNil(value) {
865 /* eslint-disable-next-line lodash/prefer-is-nil */
866 return value === null || typeof value === 'undefined';
867};
868
869/* harmony default export */ var is_nil_x_esm = (isNil);
870
871
872// CONCATENATED MODULE: ./node_modules/require-object-coercible-x/dist/require-object-coercible-x.esm.js
873
874/**
875 * The abstract operation RequireObjectCoercible throws an error if argument
876 * is a value that cannot be converted to an Object using ToObject.
877 *
878 * @param {*} [value] - The `value` to check.
879 * @throws {TypeError} If `value` is a `null` or `undefined`.
880 * @returns {string} The `value`.
881 */
882
883var require_object_coercible_x_esm_requireObjectCoercible = function requireObjectCoercible(value) {
884 if (is_nil_x_esm(value)) {
885 throw new TypeError("Cannot call method on ".concat(value));
886 }
887
888 return value;
889};
890
891/* harmony default export */ var require_object_coercible_x_esm = (require_object_coercible_x_esm_requireObjectCoercible);
892
893
894// CONCATENATED MODULE: ./node_modules/to-string-x/dist/to-string-x.esm.js
895
896var ERROR_MESSAGE = 'Cannot convert a Symbol value to a string';
897var castString = ERROR_MESSAGE.constructor;
898/**
899 * The abstract operation ToString converts argument to a value of type String.
900 *
901 * @param {*} [value] - The value to convert to a string.
902 * @throws {TypeError} If `value` is a Symbol.
903 * @returns {string} The converted value.
904 */
905
906var to_string_x_esm_ToString = function ToString(value) {
907 if (is_symbol_default()(value)) {
908 throw new TypeError(ERROR_MESSAGE);
909 }
910
911 return castString(value);
912};
913
914/* harmony default export */ var to_string_x_esm = (to_string_x_esm_ToString);
915
916
917// CONCATENATED MODULE: ./node_modules/require-coercible-to-string-x/dist/require-coercible-to-string-x.esm.js
918
919
920/**
921 * This method requires an argument is corecible then converts using ToString.
922 *
923 * @param {*} [value] - The value to converted to a string.
924 * @throws {TypeError} If value is null or undefined.
925 * @returns {string} The value as a string.
926 */
927
928var require_coercible_to_string_x_esm_requireCoercibleToString = function requireCoercibleToString(value) {
929 return to_string_x_esm(require_object_coercible_x_esm(value));
930};
931
932/* harmony default export */ var require_coercible_to_string_x_esm = (require_coercible_to_string_x_esm_requireCoercibleToString);
933
934
935// CONCATENATED MODULE: ./node_modules/white-space-x/dist/white-space-x.esm.js
936/**
937 * A record of a white space character.
938 *
939 * @typedef {object} CharRecord
940 * @property {number} code - The character code.
941 * @property {string} description - A description of the character.
942 * @property {boolean} es5 - Whether the spec lists this as a white space.
943 * @property {boolean} es2015 - Whether the spec lists this as a white space.
944 * @property {boolean} es2016 - Whether the spec lists this as a white space.
945 * @property {boolean} es2017 - Whether the spec lists this as a white space.
946 * @property {boolean} es2018 - Whether the spec lists this as a white space.
947 * @property {string} string - The character string.
948 */
949
950/**
951 * An array of the whitespace char codes, string, descriptions and language
952 * presence in the specifications.
953 *
954 * @type Array.<CharRecord>
955 */
956var list = [{
957 code: 0x0009,
958 description: 'Tab',
959 es5: true,
960 es2015: true,
961 es2016: true,
962 es2017: true,
963 es2018: true,
964 string: "\t"
965}, {
966 code: 0x000a,
967 description: 'Line Feed',
968 es5: true,
969 es2015: true,
970 es2016: true,
971 es2017: true,
972 es2018: true,
973 string: "\n"
974}, {
975 code: 0x000b,
976 description: 'Vertical Tab',
977 es5: true,
978 es2015: true,
979 es2016: true,
980 es2017: true,
981 es2018: true,
982 string: "\x0B"
983}, {
984 code: 0x000c,
985 description: 'Form Feed',
986 es5: true,
987 es2015: true,
988 es2016: true,
989 es2017: true,
990 es2018: true,
991 string: "\f"
992}, {
993 code: 0x000d,
994 description: 'Carriage Return',
995 es5: true,
996 es2015: true,
997 es2016: true,
998 es2017: true,
999 es2018: true,
1000 string: "\r"
1001}, {
1002 code: 0x0020,
1003 description: 'Space',
1004 es5: true,
1005 es2015: true,
1006 es2016: true,
1007 es2017: true,
1008 es2018: true,
1009 string: " "
1010},
1011/*
1012{
1013 code: 0x0085,
1014 description: 'Next line',
1015 es5: false,
1016 es2015: false,
1017 es2016: false,
1018 es2017: false,
1019 es2018: false,
1020 string: '\u0085'
1021}
1022*/
1023{
1024 code: 0x00a0,
1025 description: 'No-break space',
1026 es5: true,
1027 es2015: true,
1028 es2016: true,
1029 es2017: true,
1030 es2018: true,
1031 string: "\xA0"
1032}, {
1033 code: 0x1680,
1034 description: 'Ogham space mark',
1035 es5: true,
1036 es2015: true,
1037 es2016: true,
1038 es2017: true,
1039 es2018: true,
1040 string: "\u1680"
1041}, {
1042 code: 0x180e,
1043 description: 'Mongolian vowel separator',
1044 es5: true,
1045 es2015: true,
1046 es2016: true,
1047 es2017: false,
1048 es2018: false,
1049 string: "\u180E"
1050}, {
1051 code: 0x2000,
1052 description: 'En quad',
1053 es5: true,
1054 es2015: true,
1055 es2016: true,
1056 es2017: true,
1057 es2018: true,
1058 string: "\u2000"
1059}, {
1060 code: 0x2001,
1061 description: 'Em quad',
1062 es5: true,
1063 es2015: true,
1064 es2016: true,
1065 es2017: true,
1066 es2018: true,
1067 string: "\u2001"
1068}, {
1069 code: 0x2002,
1070 description: 'En space',
1071 es5: true,
1072 es2015: true,
1073 es2016: true,
1074 es2017: true,
1075 es2018: true,
1076 string: "\u2002"
1077}, {
1078 code: 0x2003,
1079 description: 'Em space',
1080 es5: true,
1081 es2015: true,
1082 es2016: true,
1083 es2017: true,
1084 es2018: true,
1085 string: "\u2003"
1086}, {
1087 code: 0x2004,
1088 description: 'Three-per-em space',
1089 es5: true,
1090 es2015: true,
1091 es2016: true,
1092 es2017: true,
1093 es2018: true,
1094 string: "\u2004"
1095}, {
1096 code: 0x2005,
1097 description: 'Four-per-em space',
1098 es5: true,
1099 es2015: true,
1100 es2016: true,
1101 es2017: true,
1102 es2018: true,
1103 string: "\u2005"
1104}, {
1105 code: 0x2006,
1106 description: 'Six-per-em space',
1107 es5: true,
1108 es2015: true,
1109 es2016: true,
1110 es2017: true,
1111 es2018: true,
1112 string: "\u2006"
1113}, {
1114 code: 0x2007,
1115 description: 'Figure space',
1116 es5: true,
1117 es2015: true,
1118 es2016: true,
1119 es2017: true,
1120 es2018: true,
1121 string: "\u2007"
1122}, {
1123 code: 0x2008,
1124 description: 'Punctuation space',
1125 es5: true,
1126 es2015: true,
1127 es2016: true,
1128 es2017: true,
1129 es2018: true,
1130 string: "\u2008"
1131}, {
1132 code: 0x2009,
1133 description: 'Thin space',
1134 es5: true,
1135 es2015: true,
1136 es2016: true,
1137 es2017: true,
1138 es2018: true,
1139 string: "\u2009"
1140}, {
1141 code: 0x200a,
1142 description: 'Hair space',
1143 es5: true,
1144 es2015: true,
1145 es2016: true,
1146 es2017: true,
1147 es2018: true,
1148 string: "\u200A"
1149},
1150/*
1151{
1152 code: 0x200b,
1153 description: 'Zero width space',
1154 es5: false,
1155 es2015: false,
1156 es2016: false,
1157 es2017: false,
1158 es2018: false,
1159 string: '\u200b'
1160},
1161*/
1162{
1163 code: 0x2028,
1164 description: 'Line separator',
1165 es5: true,
1166 es2015: true,
1167 es2016: true,
1168 es2017: true,
1169 es2018: true,
1170 string: "\u2028"
1171}, {
1172 code: 0x2029,
1173 description: 'Paragraph separator',
1174 es5: true,
1175 es2015: true,
1176 es2016: true,
1177 es2017: true,
1178 es2018: true,
1179 string: "\u2029"
1180}, {
1181 code: 0x202f,
1182 description: 'Narrow no-break space',
1183 es5: true,
1184 es2015: true,
1185 es2016: true,
1186 es2017: true,
1187 es2018: true,
1188 string: "\u202F"
1189}, {
1190 code: 0x205f,
1191 description: 'Medium mathematical space',
1192 es5: true,
1193 es2015: true,
1194 es2016: true,
1195 es2017: true,
1196 es2018: true,
1197 string: "\u205F"
1198}, {
1199 code: 0x3000,
1200 description: 'Ideographic space',
1201 es5: true,
1202 es2015: true,
1203 es2016: true,
1204 es2017: true,
1205 es2018: true,
1206 string: "\u3000"
1207}, {
1208 code: 0xfeff,
1209 description: 'Byte Order Mark',
1210 es5: true,
1211 es2015: true,
1212 es2016: true,
1213 es2017: true,
1214 es2018: true,
1215 string: "\uFEFF"
1216}];
1217/**
1218 * A string of the ES5 to ES2016 whitespace characters.
1219 *
1220 * @type string
1221 */
1222
1223var stringES2016 = '';
1224/**
1225 * A string of the ES2017 to ES2018 whitespace characters.
1226 *
1227 * @type string
1228 */
1229
1230var stringES2018 = '';
1231var white_space_x_esm_length = list.length;
1232
1233for (var white_space_x_esm_i = 0; white_space_x_esm_i < white_space_x_esm_length; white_space_x_esm_i += 1) {
1234 if (list[white_space_x_esm_i].es2016) {
1235 stringES2016 += list[white_space_x_esm_i].string;
1236 }
1237
1238 if (list[white_space_x_esm_i].es2018) {
1239 stringES2018 += list[white_space_x_esm_i].string;
1240 }
1241}
1242
1243var string2018 = stringES2018;
1244/* harmony default export */ var white_space_x_esm = (string2018);
1245var string2016 = stringES2016;
1246
1247
1248// CONCATENATED MODULE: ./node_modules/trim-left-x/dist/trim-left-x.esm.js
1249
1250
1251var EMPTY_STRING = '';
1252var RegExpCtr = /none/.constructor;
1253var reLeft = new RegExpCtr("^[".concat(white_space_x_esm, "]+"));
1254var replace = EMPTY_STRING.replace;
1255/**
1256 * This method removes whitespace from the start of a string. (ES2019).
1257 *
1258 * @param {string} [string] - The string to trim the left end whitespace from.
1259 * @throws {TypeError} If string is null or undefined or not coercible.
1260 * @returns {string} The left trimmed string.
1261 */
1262
1263var trim_left_x_esm_trimStart = function trimStart(string) {
1264 return replace.call(require_coercible_to_string_x_esm(string), reLeft, EMPTY_STRING);
1265};
1266
1267/* harmony default export */ var trim_left_x_esm = (trim_left_x_esm_trimStart);
1268
1269
1270// CONCATENATED MODULE: ./node_modules/trim-right-x/dist/trim-right-x.esm.js
1271
1272
1273var trim_right_x_esm_EMPTY_STRING = '';
1274var trim_right_x_esm_RegExpCtr = /none/.constructor;
1275var reRight2018 = new trim_right_x_esm_RegExpCtr("[".concat(white_space_x_esm, "]+$"));
1276var trim_right_x_esm_replace = trim_right_x_esm_EMPTY_STRING.replace;
1277/**
1278 * This method removes whitespace from the end of a string. (ES2019).
1279 *
1280 * @param {string} [string] - The string to trim the right end whitespace from.
1281 * @throws {TypeError} If string is null or undefined or not coercible.
1282 * @returns {string} The right trimmed string.
1283 */
1284
1285var trim_right_x_esm_trimEnd = function trimEnd(string) {
1286 return trim_right_x_esm_replace.call(require_coercible_to_string_x_esm(string), reRight2018, trim_right_x_esm_EMPTY_STRING);
1287};
1288
1289/* harmony default export */ var trim_right_x_esm = (trim_right_x_esm_trimEnd);
1290
1291
1292// CONCATENATED MODULE: ./node_modules/trim-x/dist/trim-x.esm.js
1293
1294
1295/**
1296 * This method removes whitespace from the start and end of a string.
1297 * (ES2019).
1298 *
1299 * @param {string} [string] - The string to trim the whitespace from.
1300 * @throws {TypeError} If string is null or undefined or not coercible.
1301 * @returns {string} The trimmed string.
1302 */
1303
1304var trim_x_esm_trim = function trim(string) {
1305 return trim_left_x_esm(trim_right_x_esm(string));
1306};
1307
1308/* harmony default export */ var trim_x_esm = (trim_x_esm_trim);
1309
1310
1311// CONCATENATED MODULE: ./node_modules/normalize-space-x/dist/normalize-space-x.esm.js
1312
1313
1314var SPACE = ' ';
1315var normalize_space_x_esm_RegExpCtr = /none/.constructor;
1316var reNormalize2018 = new normalize_space_x_esm_RegExpCtr("[".concat(white_space_x_esm, "]+"), 'g');
1317var normalize_space_x_esm_replace = SPACE.replace;
1318/**
1319 * This method strips leading and trailing white-space from a string,
1320 * replaces sequences of whitespace characters by a single space,
1321 * and returns the resulting string. (ES2019).
1322 *
1323 * @param {string} [string] - The string to be normalized.
1324 * @throws {TypeError} If string is null or undefined or not coercible.
1325 */
1326
1327var normalize_space_x_esm_normalizeSpace = function normalizeSpace(string) {
1328 return normalize_space_x_esm_replace.call(trim_x_esm(string), reNormalize2018, SPACE);
1329};
1330
1331/* harmony default export */ var normalize_space_x_esm = (normalize_space_x_esm_normalizeSpace);
1332
1333
1334// CONCATENATED MODULE: ./node_modules/replace-comments-x/dist/replace-comments-x.esm.js
1335
1336
1337var replace_comments_x_esm_EMPTY_STRING = '';
1338var STRIP_COMMENTS = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm;
1339var replace_comments_x_esm_replace = replace_comments_x_esm_EMPTY_STRING.replace;
1340/**
1341 * This method replaces comments in a string.
1342 *
1343 * @param {string} [string] - The string to be stripped.
1344 * @param {string} [replacement=''] - The string to be used as a replacement.
1345 * @throws {TypeError} If string is null or undefined or not coercible.
1346 * @throws {TypeError} If replacement is not coercible.
1347 * @returns {string} The new string with the comments replaced.
1348 */
1349
1350var replace_comments_x_esm_replaceComments = function replaceComments(string, replacement) {
1351 return replace_comments_x_esm_replace.call(require_coercible_to_string_x_esm(string), STRIP_COMMENTS, arguments.length > 1 ? to_string_x_esm(replacement) : replace_comments_x_esm_EMPTY_STRING);
1352};
1353
1354/* harmony default export */ var replace_comments_x_esm = (replace_comments_x_esm_replaceComments);
1355
1356
1357// CONCATENATED MODULE: ./node_modules/is-function-x/dist/is-function-x.esm.js
1358
1359
1360
1361
1362
1363
1364
1365var FunctionCtr = attempt_x_esm.constructor;
1366var is_function_x_esm_SPACE = ' ';
1367var fToString = attempt_x_esm.toString;
1368var funcTag = '[object Function]';
1369var genTag = '[object GeneratorFunction]';
1370var asyncTag = '[object AsyncFunction]';
1371var ctrRx = /^class /;
1372var test = ctrRx.test;
1373var hasNativeClass = attempt_x_esm(function attemptee() {
1374 /* eslint-disable-next-line babel/new-cap */
1375 return FunctionCtr('"use strict"; return class My {};')();
1376}).threw === false;
1377
1378var is_function_x_esm_testClassString = function testClassString(value) {
1379 return test.call(ctrRx, normalize_space_x_esm(replace_comments_x_esm(fToString.call(value), is_function_x_esm_SPACE)));
1380};
1381
1382var isES6ClassFn = function isES6ClassFunc(value) {
1383 var result = attempt_x_esm(is_function_x_esm_testClassString, value);
1384 return result.threw === false && result.value;
1385};
1386/**
1387 * Checks if `value` is classified as a `Function` object.
1388 *
1389 * @private
1390 * @param {*} value - The value to check.
1391 * @param {boolean} allowClass - Whether to filter ES6 classes.
1392 * @returns {boolean} Returns `true` if `value` is correctly classified,
1393 * else `false`.
1394 */
1395
1396
1397var tryFuncToString = function funcToString(value, allowClass) {
1398 if (hasNativeClass && allowClass === false && isES6ClassFn(value)) {
1399 return false;
1400 }
1401
1402 return attempt_x_esm.call(value, fToString).threw === false;
1403};
1404
1405var is_function_x_esm_compareTags = function compareTags(value) {
1406 var strTag = to_string_tag_x_esm(value);
1407 return strTag === funcTag || strTag === genTag || strTag === asyncTag;
1408};
1409/**
1410 * Checks if `value` is classified as a `Function` object.
1411 *
1412 * @param {*} value - The value to check.
1413 * @param {boolean} [allowClass=false] - Whether to filter ES6 classes.
1414 * @returns {boolean} Returns `true` if `value` is correctly classified,
1415 * else `false`.
1416 */
1417
1418
1419var is_function_x_esm_isFunction = function isFunction(value, allowClass) {
1420 if (is_primitive_default()(value)) {
1421 return false;
1422 }
1423
1424 if (has_to_string_tag_x_esm) {
1425 return tryFuncToString(value, to_boolean_x_esm(allowClass));
1426 }
1427
1428 if (hasNativeClass && to_boolean_x_esm(allowClass) === false && isES6ClassFn(value)) {
1429 return false;
1430 }
1431
1432 return is_function_x_esm_compareTags(value);
1433};
1434
1435/* harmony default export */ var is_function_x_esm = (is_function_x_esm_isFunction);
1436
1437
1438// CONCATENATED MODULE: ./node_modules/is-object-like-x/dist/is-object-like-x.esm.js
1439
1440
1441/**
1442 * Checks if `value` is object-like. A value is object-like if it's not a
1443 * primitive and not a function.
1444 *
1445 * @param {*} [value] - The value to check.
1446 * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
1447 */
1448
1449var is_object_like_x_esm_isObjectLike = function isObjectLike(value) {
1450 return is_primitive_default()(value) === false && is_function_x_esm(value, true) === false;
1451};
1452
1453/* harmony default export */ var is_object_like_x_esm = (is_object_like_x_esm_isObjectLike);
1454
1455
1456// CONCATENATED MODULE: ./node_modules/to-object-x/dist/to-object-x.esm.js
1457
1458var castObject = {}.constructor;
1459/**
1460 * The abstract operation ToObject converts argument to a value of
1461 * type Object.
1462 *
1463 * @param {*} value - The `value` to convert.
1464 * @throws {TypeError} If `value` is a `null` or `undefined`.
1465 * @returns {!object} The `value` converted to an object.
1466 */
1467
1468var to_object_x_esm_toObject = function toObject(value) {
1469 return castObject(require_object_coercible_x_esm(value));
1470};
1471
1472/* harmony default export */ var to_object_x_esm = (to_object_x_esm_toObject);
1473
1474
1475// CONCATENATED MODULE: ./node_modules/get-prototype-of-x/dist/get-prototype-of-x.esm.js
1476
1477
1478
1479var ObjectCtr = {}.constructor;
1480var nativeGetPrototypeOf = ObjectCtr.getPrototypeOf;
1481
1482var get_prototype_of_x_esm_test1 = function test1() {
1483 var prototypeOfCtr = {};
1484 /* eslint-disable-next-line lodash/prefer-noop */
1485
1486 var Ctr = function Ctr() {};
1487
1488 Ctr.prototype = prototypeOfCtr;
1489 var ctr = new Ctr();
1490
1491 try {
1492 return nativeGetPrototypeOf(ctr) === prototypeOfCtr;
1493 } catch (ignore) {
1494 return false;
1495 }
1496};
1497
1498var isWorking = to_boolean_x_esm(nativeGetPrototypeOf) && get_prototype_of_x_esm_test1();
1499
1500var patchedGetPrototypeOf = function getPrototypeOf(obj) {
1501 return nativeGetPrototypeOf(to_object_x_esm(obj));
1502};
1503
1504var implementation = function getPrototypeOf(obj) {
1505 var object = to_object_x_esm(obj);
1506 /* eslint-disable-next-line no-proto */
1507
1508 var proto = object.__proto__;
1509
1510 if (proto || proto === null) {
1511 return proto;
1512 }
1513
1514 if (is_function_x_esm(object.constructor)) {
1515 return object.constructor.prototype;
1516 }
1517
1518 if (object instanceof ObjectCtr) {
1519 return ObjectCtr.prototype;
1520 }
1521
1522 return null;
1523};
1524/**
1525 * This method returns the prototype (i.e. The value of the internal [[Prototype]] property)
1526 * of the specified object.
1527 *
1528 * @function getPrototypeOf
1529 * @param {*} obj - The object whose prototype is to be returned.
1530 * @returns {object} The prototype of the given object. If there are no inherited properties, null is returned.
1531 */
1532
1533var gpo = isWorking ? patchedGetPrototypeOf : implementation;
1534/* harmony default export */ var get_prototype_of_x_esm = (gpo);
1535
1536
1537// CONCATENATED MODULE: ./node_modules/is-error-x/dist/is-error-x.esm.js
1538
1539
1540
1541
1542var errorCheck = function checkIfError(value) {
1543 return to_string_tag_x_esm(value) === '[object Error]';
1544};
1545
1546if (errorCheck(Error.prototype) === false) {
1547 var errorProto = Error.prototype;
1548 var testStringTag = errorCheck;
1549
1550 errorCheck = function checkIfError(value) {
1551 return value === errorProto || testStringTag(value);
1552 };
1553}
1554/**
1555 * Determine whether or not a given `value` is an `Error` type.
1556 *
1557 * @param {*} value - The object to be tested.
1558 * @returns {boolean} Returns `true` if `value` is an `Error` type,
1559 * else `false`.
1560 */
1561
1562
1563var is_error_x_esm_isError = function isError(value) {
1564 if (is_object_like_x_esm(value) === false) {
1565 return false;
1566 }
1567
1568 var object = value;
1569 var maxLoop = 100;
1570
1571 while (object && maxLoop > -1) {
1572 if (errorCheck(object)) {
1573 return true;
1574 }
1575
1576 object = get_prototype_of_x_esm(object);
1577 maxLoop -= 1;
1578 }
1579
1580 return false;
1581};
1582
1583/* harmony default export */ var is_error_x_esm = (is_error_x_esm_isError);
1584
1585
1586// CONCATENATED MODULE: ./node_modules/to-primitive-x/dist/to-primitive-x.esm.js
1587
1588
1589
1590
1591
1592
1593
1594var ZERO = 0;
1595var ONE = 1;
1596/* eslint-disable-next-line no-void */
1597
1598var UNDEFINED = void ZERO;
1599var NUMBER = 'number';
1600var STRING = 'string';
1601var DEFAULT = 'default';
1602var StringCtr = STRING.constructor;
1603var NumberCtr = ZERO.constructor;
1604/* eslint-disable-next-line compat/compat */
1605
1606var symToPrimitive = has_symbol_support_x_esm && Symbol.toPrimitive;
1607/* eslint-disable-next-line compat/compat */
1608
1609var symValueOf = has_symbol_support_x_esm && Symbol.prototype.valueOf;
1610var toStringOrder = ['toString', 'valueOf'];
1611var toNumberOrder = ['valueOf', 'toString'];
1612var orderLength = 2;
1613
1614var assertHint = function assertHint(hint) {
1615 if (typeof hint !== 'string' || hint !== NUMBER && hint !== STRING) {
1616 throw new TypeError('hint must be "string" or "number"');
1617 }
1618
1619 return hint;
1620};
1621/**
1622 * @param {*} ordinary - The ordinary to convert.
1623 * @param {*} hint - The hint.
1624 * @returns {*} - The primitive.
1625 */
1626
1627
1628var to_primitive_x_esm_ordinaryToPrimitive = function ordinaryToPrimitive(ordinary, hint) {
1629 require_object_coercible_x_esm(ordinary);
1630 assertHint(hint);
1631 var methodNames = hint === STRING ? toStringOrder : toNumberOrder;
1632 var method;
1633 var result;
1634
1635 for (var i = ZERO; i < orderLength; i += ONE) {
1636 method = ordinary[methodNames[i]];
1637
1638 if (is_function_x_esm(method)) {
1639 result = method.call(ordinary);
1640
1641 if (is_primitive_default()(result)) {
1642 return result;
1643 }
1644 }
1645 }
1646
1647 throw new TypeError('No default value');
1648};
1649/**
1650 * @param {*} object - The object.
1651 * @param {*} property - The property.
1652 * @returns {undefined|Function} - The method.
1653 */
1654
1655
1656var to_primitive_x_esm_getMethod = function getMethod(object, property) {
1657 var func = object[property];
1658
1659 if (is_nil_x_esm(func) === false) {
1660 if (is_function_x_esm(func) === false) {
1661 throw new TypeError("".concat(func, " returned for property ").concat(property, " of object ").concat(object, " is not a function"));
1662 }
1663
1664 return func;
1665 }
1666
1667 return UNDEFINED;
1668};
1669/**
1670 * Get the hint.
1671 *
1672 * @param {*} value - The value to compare.
1673 * @param {boolean} supplied - Was a value supplied.
1674 * @returns {string} - The hint string.
1675 */
1676
1677
1678var getHint = function getHint(value, supplied) {
1679 if (supplied) {
1680 if (value === StringCtr) {
1681 return STRING;
1682 }
1683
1684 if (value === NumberCtr) {
1685 return NUMBER;
1686 }
1687 }
1688
1689 return DEFAULT;
1690};
1691/**
1692 * Get the primitive from the exotic.
1693 *
1694 * @param {*} value - The exotic.
1695 * @returns {*} - The primitive.
1696 */
1697
1698
1699var to_primitive_x_esm_getExoticToPrim = function getExoticToPrim(value) {
1700 if (has_symbol_support_x_esm) {
1701 if (symToPrimitive) {
1702 return to_primitive_x_esm_getMethod(value, symToPrimitive);
1703 }
1704
1705 if (is_symbol_default()(value)) {
1706 return symValueOf;
1707 }
1708 }
1709
1710 return UNDEFINED;
1711};
1712
1713var to_primitive_x_esm_evalExotic = function evalExotic(obj) {
1714 var exoticToPrim = obj.exoticToPrim,
1715 input = obj.input,
1716 hint = obj.hint;
1717 var result = exoticToPrim.call(input, hint);
1718
1719 if (is_primitive_default()(result)) {
1720 return result;
1721 }
1722
1723 throw new TypeError('unable to convert exotic object to primitive');
1724};
1725
1726var to_primitive_x_esm_evalPrimitive = function evalPrimitive(input, hint) {
1727 var newHint = hint === DEFAULT && (is_date_object_default()(input) || is_symbol_default()(input)) ? STRING : hint;
1728 return to_primitive_x_esm_ordinaryToPrimitive(input, newHint === DEFAULT ? NUMBER : newHint);
1729};
1730/**
1731 * This method converts a JavaScript object to a primitive value.
1732 * Note: When toPrimitive is called with no hint, then it generally behaves as
1733 * if the hint were Number. However, objects may over-ride this behaviour by
1734 * defining a @@toPrimitive method. Of the objects defined in this specification
1735 * only Date objects (see 20.3.4.45) and Symbol objects (see 19.4.3.4) over-ride
1736 * the default ToPrimitive behaviour. Date objects treat no hint as if the hint
1737 * were String.
1738 *
1739 * @param {*} input - The input to convert.
1740 * @param {Function} [preferredType] - The preferred type (String or Number).
1741 * @throws {TypeError} If unable to convert input to a primitive.
1742 * @returns {string|number} The converted input as a primitive.
1743 * @see {http://www.ecma-international.org/ecma-262/6.0/#sec-toprimitive}
1744 */
1745
1746
1747var to_primitive_x_esm_toPrimitive = function toPrimitive(input, preferredType) {
1748 if (is_primitive_default()(input)) {
1749 return input;
1750 }
1751
1752 var hint = getHint(preferredType, arguments.length > ONE);
1753 var exoticToPrim = to_primitive_x_esm_getExoticToPrim(input);
1754 return typeof exoticToPrim === 'undefined' ? to_primitive_x_esm_evalPrimitive(input, hint) : to_primitive_x_esm_evalExotic({
1755 exoticToPrim: exoticToPrim,
1756 input: input,
1757 hint: hint
1758 });
1759};
1760
1761/* harmony default export */ var to_primitive_x_esm = (to_primitive_x_esm_toPrimitive);
1762
1763
1764// CONCATENATED MODULE: ./node_modules/to-property-key-x/dist/to-property-key-x.esm.js
1765function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
1766
1767
1768
1769
1770/**
1771 * This method Converts argument to a value that can be used as a property key.
1772 *
1773 * @param {*} argument - The argument to convert to a property key.
1774 * @throws {TypeError} If argument is not a symbol and is not coercible to a string.
1775 * @returns {string|symbol} The converted argument.
1776 */
1777
1778var to_property_key_x_esm_toPropertyKey = function toPropertyKey(argument) {
1779 var key = to_primitive_x_esm(argument, String);
1780 return has_symbol_support_x_esm && _typeof(key) === 'symbol' ? key : to_string_x_esm(key);
1781};
1782
1783/* harmony default export */ var to_property_key_x_esm = (to_property_key_x_esm_toPropertyKey);
1784
1785
1786// CONCATENATED MODULE: ./node_modules/has-own-property-x/dist/has-own-property-x.esm.js
1787
1788
1789var hop = {}.hasOwnProperty;
1790/**
1791 * The `hasOwnProperty` method returns a boolean indicating whether
1792 * the `object` has the specified `property`. Does not attempt to fix known
1793 * issues in older browsers, but does ES6ify the method.
1794 *
1795 * @param {!object} object - The object to test.
1796 * @throws {TypeError} If object is null or undefined.
1797 * @param {string|number|symbol} property - The name or Symbol of the property to test.
1798 * @returns {boolean} `true` if the property is set on `object`, else `false`.
1799 */
1800
1801var has_own_property_x_esm_hasOwnProperty = function hasOwnProperty(object, property) {
1802 return hop.call(to_object_x_esm(object), to_property_key_x_esm(property));
1803};
1804
1805/* harmony default export */ var has_own_property_x_esm = (has_own_property_x_esm_hasOwnProperty);
1806
1807
1808// CONCATENATED MODULE: ./node_modules/to-string-symbols-supported-x/dist/to-string-symbols-supported-x.esm.js
1809
1810
1811/* eslint-disable-next-line compat/compat */
1812
1813var pToString = has_symbol_support_x_esm && Symbol.prototype.toString;
1814var isSymbolFn = typeof pToString === 'function' && is_symbol_default.a;
1815/** @type {Function} */
1816
1817var to_string_symbols_supported_x_esm_castString = ''.constructor;
1818/**
1819 * The abstract operation ToString converts argument to a value of type String,
1820 * however the specification states that if the argument is a Symbol then a
1821 * 'TypeError' is thrown. This version also allows Symbols be converted to
1822 * a string. Other uncoercible exotics will still throw though.
1823 *
1824 * @param {*} [value] - The value to convert to a string.
1825 * @returns {string} The converted value.
1826 */
1827
1828var toStringSymbolsSupported = function toStringSymbolsSupported(value) {
1829 return isSymbolFn && isSymbolFn(value) ? pToString.call(value) : to_string_symbols_supported_x_esm_castString(value);
1830};
1831
1832/* harmony default export */ var to_string_symbols_supported_x_esm = (toStringSymbolsSupported);
1833
1834
1835// CONCATENATED MODULE: ./node_modules/nan-x/dist/nan-x.esm.js
1836/**
1837 * The constant NaN derived mathematically by 0 / 0.
1838 *
1839 * @type number
1840 */
1841/* harmony default export */ var nan_x_esm = (0 / 0);
1842
1843
1844// CONCATENATED MODULE: ./node_modules/parse-int-x/dist/parse-int-x.esm.js
1845
1846
1847
1848var nativeParseInt = parseInt;
1849/** @type {Function} */
1850
1851var castNumber = 0 .constructor; // noinspection JSPotentiallyInvalidConstructorUsage
1852
1853var _ref = '',
1854 charAt = _ref.charAt;
1855var hexRegex = /^[-+]?0[xX]/;
1856var parse_int_x_esm_test = hexRegex.test;
1857/**
1858 * This method parses a string argument and returns an integer of the specified
1859 * radix (the base in mathematical numeral systems). (ES2019).
1860 *
1861 * @param {string} [string] - The value to parse. If the string argument is not a
1862 * string, then it is converted to a string (using the ToString abstract
1863 * operation). Leading whitespace in the string argument is ignored.
1864 * @param {number} [radix] - An integer between 2 and 36 that represents the radix
1865 * (the base in mathematical numeral systems) of the above mentioned string.
1866 * Specify 10 for the decimal numeral system commonly used by humans. Always
1867 * specify this parameter to eliminate reader confusion and to guarantee
1868 * predictable behavior. Different implementations produce different results
1869 * when a radix is not specified, usually defaulting the value to 10.
1870 * @throws {TypeError} If target is a Symbol or is not coercible.
1871 * @returns {number} An integer number parsed from the given string. If the first
1872 * character cannot be converted to a number, NaN is returned.
1873 */
1874
1875var parse_int_x_esm_$parseInt = function $parseInt(string, radix) {
1876 var str = trim_left_x_esm(to_string_x_esm(string));
1877
1878 if (charAt.call(str, 0) === "\u180E") {
1879 return nan_x_esm;
1880 }
1881
1882 return nativeParseInt(str, castNumber(radix) || (parse_int_x_esm_test.call(hexRegex, str) ? 16 : 10));
1883};
1884
1885/* harmony default export */ var parse_int_x_esm = (parse_int_x_esm_$parseInt);
1886
1887
1888// CONCATENATED MODULE: ./node_modules/to-number-x/dist/to-number-x.esm.js
1889
1890
1891
1892
1893
1894var binaryRadix = 2;
1895var octalRadix = 8;
1896var testCharsCount = 2;
1897var to_number_x_esm_ERROR_MESSAGE = 'Cannot convert a Symbol value to a number';
1898var to_number_x_esm_castNumber = testCharsCount.constructor;
1899var pStrSlice = to_number_x_esm_ERROR_MESSAGE.slice;
1900var binaryRegex = /^0b[01]+$/i;
1901var RegExpConstructor = binaryRegex.constructor; // Note that in IE 8, RegExp.prototype.test doesn't seem to exist: ie, "test" is
1902// an own property of regexes. wtf.
1903
1904var to_number_x_esm_test = binaryRegex.test;
1905
1906var isBinary = function isBinary(value) {
1907 return to_number_x_esm_test.call(binaryRegex, value);
1908};
1909
1910var octalRegex = /^0o[0-7]+$/i;
1911
1912var isOctal = function isOctal(value) {
1913 return to_number_x_esm_test.call(octalRegex, value);
1914};
1915
1916var nonWSregex = new RegExpConstructor("[\x85\u180E\u200B\uFFFE]", 'g');
1917
1918var hasNonWS = function hasNonWS(value) {
1919 return to_number_x_esm_test.call(nonWSregex, value);
1920};
1921
1922var invalidHexLiteral = /^[-+]0x[0-9a-f]+$/i;
1923
1924var isInvalidHexLiteral = function isInvalidHexLiteral(value) {
1925 return to_number_x_esm_test.call(invalidHexLiteral, value);
1926};
1927
1928var to_number_x_esm_assertNotSymbol = function assertNotSymbol(value) {
1929 if (is_symbol_default()(value)) {
1930 throw new TypeError(to_number_x_esm_ERROR_MESSAGE);
1931 }
1932
1933 return value;
1934};
1935
1936var to_number_x_esm_parseBase = function parseBase(value, radix) {
1937 return parse_int_x_esm(pStrSlice.call(value, testCharsCount), radix);
1938};
1939
1940var parseString = function parseString(toNum, value) {
1941 if (isBinary(value)) {
1942 return toNum(to_number_x_esm_parseBase(value, binaryRadix));
1943 }
1944
1945 if (isOctal(value)) {
1946 return toNum(to_number_x_esm_parseBase(value, octalRadix));
1947 }
1948
1949 return null;
1950};
1951
1952var to_number_x_esm_convertString = function convertString(toNum, value) {
1953 var val = parseString(toNum, value);
1954
1955 if (val !== null) {
1956 return val;
1957 }
1958
1959 if (hasNonWS(value) || isInvalidHexLiteral(value)) {
1960 return nan_x_esm;
1961 }
1962
1963 var trimmed = trim_x_esm(value);
1964
1965 if (trimmed !== value) {
1966 return toNum(trimmed);
1967 }
1968
1969 return null;
1970};
1971/**
1972 * This method converts argument to a value of type Number. (ES2019).
1973 *
1974 * @param {*} [argument] - The argument to convert to a number.
1975 * @throws {TypeError} - If argument is a Symbol or not coercible.
1976 * @returns {*} The argument converted to a number.
1977 */
1978
1979
1980var to_number_x_esm_toNumber = function toNumber(argument) {
1981 var value = to_number_x_esm_assertNotSymbol(to_primitive_x_esm(argument, to_number_x_esm_castNumber));
1982
1983 if (typeof value === 'string') {
1984 var val = to_number_x_esm_convertString(toNumber, value);
1985
1986 if (val !== null) {
1987 return val;
1988 }
1989 }
1990
1991 return to_number_x_esm_castNumber(value);
1992};
1993
1994/* harmony default export */ var to_number_x_esm = (to_number_x_esm_toNumber);
1995
1996
1997// CONCATENATED MODULE: ./node_modules/is-nan-x/dist/is-nan-x.esm.js
1998/**
1999 * This method determines whether the passed value is NaN and its type is
2000 * `Number`. It is a more robust version of the original, global isNaN().
2001 *
2002 * @param {*} [value] - The value to be tested for NaN.
2003 * @returns {boolean} `true` if the given value is NaN and its type is Number;
2004 * otherwise, `false`.
2005 */
2006var is_nan_x_esm_isNaN = function isNaN(value) {
2007 /* eslint-disable-next-line no-self-compare */
2008 return value !== value;
2009};
2010
2011/* harmony default export */ var is_nan_x_esm = (is_nan_x_esm_isNaN);
2012
2013
2014// CONCATENATED MODULE: ./node_modules/infinity-x/dist/infinity-x.esm.js
2015/**
2016 * The constant value Infinity derived mathematically by 1 / 0.
2017 *
2018 * @type number
2019 */
2020/* harmony default export */ var infinity_x_esm = (1 / 0);
2021
2022
2023// CONCATENATED MODULE: ./node_modules/is-finite-x/dist/is-finite-x.esm.js
2024
2025
2026/**
2027 * This method determines whether the passed value is a finite number.
2028 *
2029 * @param {*} [number] - The value to be tested for finiteness.
2030 * @returns {boolean} A Boolean indicating whether or not the given value is a finite number.
2031 */
2032
2033var is_finite_x_esm_isFinite = function isFinite(number) {
2034 return typeof number === 'number' && is_nan_x_esm(number) === false && number !== infinity_x_esm && number !== -infinity_x_esm;
2035};
2036
2037/* harmony default export */ var is_finite_x_esm = (is_finite_x_esm_isFinite);
2038
2039
2040// CONCATENATED MODULE: ./node_modules/math-sign-x/dist/math-sign-x.esm.js
2041
2042
2043/**
2044 * This method returns the sign of a number, indicating whether the number is positive,
2045 * negative or zero. (ES2019).
2046 *
2047 * @param {*} x - A number.
2048 * @returns {number} A number representing the sign of the given argument. If the argument
2049 * is a positive number, negative number, positive zero or negative zero, the function will
2050 * return 1, -1, 0 or -0 respectively. Otherwise, NaN is returned.
2051 */
2052
2053var math_sign_x_esm_sign = function sign(x) {
2054 var n = to_number_x_esm(x);
2055
2056 if (n === 0 || is_nan_x_esm(n)) {
2057 return n;
2058 }
2059
2060 return n > 0 ? 1 : -1;
2061};
2062
2063/* harmony default export */ var math_sign_x_esm = (math_sign_x_esm_sign);
2064
2065
2066// CONCATENATED MODULE: ./node_modules/to-integer-x/dist/to-integer-x.esm.js
2067
2068
2069
2070
2071var abs = Math.abs,
2072 floor = Math.floor;
2073/**
2074 * Converts `value` to an integer. (ES2019).
2075 *
2076 * @param {*} value - The value to convert.
2077 * @returns {number} Returns the converted integer.
2078 */
2079
2080var to_integer_x_esm_toInteger = function toInteger(value) {
2081 var number = to_number_x_esm(value);
2082
2083 if (is_nan_x_esm(number)) {
2084 return 0;
2085 }
2086
2087 if (number === 0 || is_finite_x_esm(number) === false) {
2088 return number;
2089 }
2090
2091 return math_sign_x_esm(number) * floor(abs(number));
2092};
2093
2094/* harmony default export */ var to_integer_x_esm = (to_integer_x_esm_toInteger);
2095
2096
2097// CONCATENATED MODULE: ./node_modules/math-clamp-x/dist/math-clamp-x.esm.js
2098
2099
2100var math_clamp_x_esm_getMaxMin = function getMaxMin(args) {
2101 var minVal = to_number_x_esm(args[1]);
2102 var result = args.length < 3 ? {
2103 max: minVal,
2104 min: 0
2105 } : {
2106 max: to_number_x_esm(args[2]),
2107 min: minVal
2108 };
2109
2110 if (result.min > result.max) {
2111 throw new RangeError('"min" must be less than "max"');
2112 }
2113
2114 return result;
2115}; // eslint-disable jsdoc/check-param-names
2116// noinspection JSCommentMatchesSignature
2117
2118/**
2119 * This method clamp a number to min and max limits inclusive.
2120 *
2121 * @param {number} value - The number to be clamped.
2122 * @param {number} [min=0] - The minimum number.
2123 * @param {number} max - The maximum number.
2124 * @throws {RangeError} If min > max.
2125 * @returns {number} The clamped number.
2126 */
2127// eslint-enable jsdoc/check-param-names
2128
2129
2130var math_clamp_x_esm_clamp = function clamp(value) {
2131 var number = to_number_x_esm(value);
2132
2133 if (arguments.length < 2) {
2134 return number;
2135 }
2136 /* eslint-disable-next-line prefer-rest-params */
2137
2138
2139 var _getMaxMin = math_clamp_x_esm_getMaxMin(arguments),
2140 max = _getMaxMin.max,
2141 min = _getMaxMin.min;
2142
2143 if (number < min) {
2144 return min;
2145 }
2146
2147 if (number > max) {
2148 return max;
2149 }
2150
2151 return number;
2152};
2153
2154/* harmony default export */ var math_clamp_x_esm = (math_clamp_x_esm_clamp);
2155
2156
2157// CONCATENATED MODULE: ./node_modules/is-index-x/dist/is-index-x.esm.js
2158
2159
2160
2161
2162var MAX_SAFE_INTEGER = 9007199254740991;
2163var reIsUint = /^(?:0|[1-9]\d*)$/;
2164var rxTest = reIsUint.test;
2165/**
2166 * This method determines whether the passed value is a zero based index.
2167 * JavaScript arrays are zero-indexed: the first element of an array is at
2168 * index 0, and the last element is at the index equal to the value of the
2169 * array's length property minus 1.
2170 *
2171 * @param {number|string} value - The value to be tested for being a zero based index.
2172 * @param {number} [length=MAX_SAFE_INTEGER] - The length that sets the upper bound.
2173 * @returns {boolean} A Boolean indicating whether or not the given value is a
2174 * zero based index within bounds.
2175 */
2176
2177var is_index_x_esm_isIndex = function isIndex(value, length) {
2178 var string = to_string_symbols_supported_x_esm(value);
2179
2180 if (rxTest.call(reIsUint, string) === false) {
2181 return false;
2182 }
2183
2184 var number = to_number_x_esm(string);
2185
2186 if (arguments.length > 1) {
2187 return number < math_clamp_x_esm(to_integer_x_esm(length), MAX_SAFE_INTEGER);
2188 }
2189
2190 return number < MAX_SAFE_INTEGER;
2191};
2192
2193/* harmony default export */ var is_index_x_esm = (is_index_x_esm_isIndex);
2194
2195
2196// CONCATENATED MODULE: ./node_modules/property-is-enumerable-x/dist/property-is-enumerable-x.esm.js
2197
2198
2199var propIsEnumerable = {}.propertyIsEnumerable;
2200/**
2201 * This method returns a Boolean indicating whether the specified property is
2202 * enumerable. Does not attempt to fix bugs in IE<9 or old Opera, otherwise it
2203 * does ES6ify the method.
2204 *
2205 * @param {!object} object - The object on which to test the property.
2206 * @param {string|symbol} property - The name of the property to test.
2207 * @throws {TypeError} If target is null or undefined.
2208 * @returns {boolean} A Boolean indicating whether the specified property is
2209 * enumerable.
2210 */
2211
2212var property_is_enumerable_x_esm_propertyIsEnumerable = function propertyIsEnumerable(object, property) {
2213 return propIsEnumerable.call(to_object_x_esm(object), to_property_key_x_esm(property));
2214};
2215
2216/* harmony default export */ var property_is_enumerable_x_esm = (property_is_enumerable_x_esm_propertyIsEnumerable);
2217
2218
2219// CONCATENATED MODULE: ./node_modules/object-get-own-property-descriptor-x/dist/object-get-own-property-descriptor-x.esm.js
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230var object_get_own_property_descriptor_x_esm_EMPTY_STRING = '';
2231var object_get_own_property_descriptor_x_esm_charAt = object_get_own_property_descriptor_x_esm_EMPTY_STRING.charAt;
2232var object_get_own_property_descriptor_x_esm_ObjectCtr = {}.constructor;
2233var ngopd = object_get_own_property_descriptor_x_esm_ObjectCtr.getOwnPropertyDescriptor;
2234var nativeGOPD = typeof ngopd === 'function' && ngopd;
2235var getOPDFallback1;
2236var getOPDFallback2; // ES5 15.2.3.3
2237// http://es5.github.com/#x15.2.3.3
2238
2239var object_get_own_property_descriptor_x_esm_doesGOPDWork = function doesGOPDWork(object, prop) {
2240 object[to_property_key_x_esm(prop)] = 0;
2241 var testResult = attempt_x_esm(nativeGOPD, object, prop);
2242 return testResult.threw === false && testResult.value.value === 0;
2243}; // check whether getOwnPropertyDescriptor works if it's given. Otherwise, shim partially.
2244
2245/**
2246 * This method returns a property descriptor for an own property (that is,
2247 * one directly present on an object and not in the object's prototype chain)
2248 * of a given object.
2249 *
2250 * @param {*} object - The object in which to look for the property.
2251 * @param {*} property - The name of the property whose description is to be retrieved.
2252 * @returns {object} A property descriptor of the given property if it exists on the object, undefined otherwise.
2253 */
2254
2255
2256var $getOwnPropertyDescriptor;
2257
2258if (nativeGOPD) {
2259 var object_get_own_property_descriptor_x_esm_doc = typeof document !== 'undefined' && document;
2260 var getOPDWorksOnDom = object_get_own_property_descriptor_x_esm_doc ? object_get_own_property_descriptor_x_esm_doesGOPDWork(object_get_own_property_descriptor_x_esm_doc.createElement('div'), 'sentinel') : true;
2261
2262 if (getOPDWorksOnDom) {
2263 var object_get_own_property_descriptor_x_esm_res = attempt_x_esm(nativeGOPD, to_object_x_esm('abc'), 1);
2264 var worksWithStr = object_get_own_property_descriptor_x_esm_res.threw === false && object_get_own_property_descriptor_x_esm_res.value && object_get_own_property_descriptor_x_esm_res.value.value === 'b';
2265
2266 if (worksWithStr) {
2267 var getOPDWorksOnObject = object_get_own_property_descriptor_x_esm_doesGOPDWork({}, 'sentinel');
2268
2269 if (getOPDWorksOnObject) {
2270 var worksWithPrim = attempt_x_esm(nativeGOPD, 42, 'name').threw === false;
2271 /* eslint-disable-next-line compat/compat */
2272
2273 var worksWithObjSym = has_symbol_support_x_esm && object_get_own_property_descriptor_x_esm_doesGOPDWork({}, to_object_x_esm(Symbol(object_get_own_property_descriptor_x_esm_EMPTY_STRING)));
2274
2275 if (worksWithObjSym) {
2276 if (worksWithPrim) {
2277 $getOwnPropertyDescriptor = nativeGOPD;
2278 } else {
2279 $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(object, property) {
2280 return nativeGOPD(to_object_x_esm(object), property);
2281 };
2282 }
2283 } else if (worksWithPrim) {
2284 $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(object, property) {
2285 return nativeGOPD(object, to_property_key_x_esm(property));
2286 };
2287 } else {
2288 $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(object, property) {
2289 return nativeGOPD(to_object_x_esm(object), to_property_key_x_esm(property));
2290 };
2291 }
2292 } else {
2293 getOPDFallback1 = nativeGOPD;
2294 }
2295 } else {
2296 getOPDFallback2 = nativeGOPD;
2297 }
2298 }
2299}
2300
2301if (to_boolean_x_esm($getOwnPropertyDescriptor) === false || getOPDFallback1 || getOPDFallback2) {
2302 var prototypeOfObject = object_get_own_property_descriptor_x_esm_ObjectCtr.prototype; // If JS engine supports accessors creating shortcuts.
2303
2304 var lookupGetter;
2305 var lookupSetter;
2306 var supportsAccessors = has_own_property_x_esm(prototypeOfObject, '__defineGetter__');
2307
2308 if (supportsAccessors) {
2309 /* eslint-disable-next-line no-underscore-dangle */
2310 var lg = prototypeOfObject.__lookupGetter__;
2311 /* eslint-disable-next-line no-underscore-dangle */
2312
2313 var ls = prototypeOfObject.__lookupSetter__;
2314
2315 lookupGetter = function $lookupGetter(object, property) {
2316 return lg.call(object, property);
2317 };
2318
2319 lookupSetter = function $lookupSetter(object, property) {
2320 return ls.call(object, property);
2321 };
2322 }
2323
2324 $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(object, property) {
2325 var obj = to_object_x_esm(object);
2326 var propKey = to_property_key_x_esm(property);
2327 var result; // make a valiant attempt to use the real getOwnPropertyDescriptor for I8's DOM elements.
2328
2329 if (getOPDFallback1) {
2330 result = attempt_x_esm.call(to_object_x_esm, getOPDFallback1, obj, propKey);
2331
2332 if (result.threw === false) {
2333 return result.value;
2334 } // try the shim if the real one doesn't work
2335
2336 }
2337
2338 var isStringIndex = is_string_default()(obj) && is_index_x_esm(propKey, obj.length);
2339
2340 if (getOPDFallback2 && isStringIndex === false) {
2341 result = attempt_x_esm.call(to_object_x_esm, getOPDFallback2, obj, propKey);
2342
2343 if (result.threw === false) {
2344 return result.value;
2345 } // try the shim if the real one doesn't work
2346
2347 }
2348 /* eslint-disable-next-line no-void */
2349
2350
2351 var descriptor = void 0; // If object does not owns property return undefined immediately.
2352
2353 if (isStringIndex === false && has_own_property_x_esm(obj, propKey) === false) {
2354 return descriptor;
2355 } // If object has a property then it's for sure `configurable`, and
2356 // probably `enumerable`. Detect enumerability though.
2357
2358
2359 descriptor = {
2360 configurable: is_primitive_default()(object) === false && isStringIndex === false,
2361 enumerable: property_is_enumerable_x_esm(obj, propKey)
2362 }; // If JS engine supports accessor properties then property may be a
2363 // getter or setter.
2364
2365 if (supportsAccessors) {
2366 // Unfortunately `__lookupGetter__` will return a getter even
2367 // if object has own non getter property along with a same named
2368 // inherited getter. To avoid misbehavior we temporary remove
2369 // `__proto__` so that `__lookupGetter__` will return getter only
2370 // if it's owned by an object.
2371
2372 /* eslint-disable-next-line no-proto */
2373 var prototype = obj.__proto__;
2374 var notPrototypeOfObject = obj !== prototypeOfObject; // avoid recursion problem, breaking in Opera Mini when
2375 // Object.getOwnPropertyDescriptor(Object.prototype, 'toString')
2376 // or any other Object.prototype accessor
2377
2378 if (notPrototypeOfObject) {
2379 /* eslint-disable-next-line no-proto */
2380 obj.__proto__ = prototypeOfObject;
2381 }
2382
2383 var getter = lookupGetter(obj, propKey);
2384 var setter = lookupSetter(obj, propKey);
2385
2386 if (notPrototypeOfObject) {
2387 // Once we have getter and setter we can put values back.
2388
2389 /* eslint-disable-next-line no-proto */
2390 obj.__proto__ = prototype;
2391 }
2392
2393 if (getter || setter) {
2394 if (getter) {
2395 descriptor.get = getter;
2396 }
2397
2398 if (setter) {
2399 descriptor.set = setter;
2400 } // If it was accessor property we're done and return here
2401 // in order to avoid adding `value` to the descriptor.
2402
2403
2404 return descriptor;
2405 }
2406 } // If we got this far we know that object has an own property that is
2407 // not an accessor so we set it as a value and return descriptor.
2408
2409
2410 if (isStringIndex) {
2411 descriptor.value = object_get_own_property_descriptor_x_esm_charAt.call(obj, propKey);
2412 descriptor.writable = false;
2413 } else {
2414 descriptor.value = obj[propKey];
2415 descriptor.writable = true;
2416 }
2417
2418 return descriptor;
2419 };
2420}
2421
2422var gOPS = $getOwnPropertyDescriptor;
2423/* harmony default export */ var object_get_own_property_descriptor_x_esm = (gOPS);
2424
2425
2426// CONCATENATED MODULE: ./node_modules/is-integer-x/dist/is-integer-x.esm.js
2427
2428
2429/**
2430 * This method determines whether the passed value is an integer.
2431 *
2432 * @param {*} value - The value to be tested for being an integer.
2433 * @returns {boolean} A Boolean indicating whether or not the given value is an integer.
2434 */
2435
2436var is_integer_x_esm_isInteger = function isInteger(value) {
2437 return is_finite_x_esm(value) && to_integer_x_esm(value) === value;
2438};
2439
2440/* harmony default export */ var is_integer_x_esm = (is_integer_x_esm_isInteger);
2441
2442
2443// CONCATENATED MODULE: ./node_modules/is-safe-integer-x/dist/is-safe-integer-x.esm.js
2444
2445var is_safe_integer_x_esm_MAX_SAFE_INTEGER = 9007199254740991;
2446var MIN_SAFE_INTEGER = -is_safe_integer_x_esm_MAX_SAFE_INTEGER;
2447/**
2448 * This method determines whether the passed value is a safe integer.
2449 *
2450 * Can be exactly represented as an IEEE-754 double precision number, and
2451 * whose IEEE-754 representation cannot be the result of rounding any other
2452 * integer to fit the IEEE-754 representation.
2453 *
2454 * @param {*} value - The value to be tested for being a safe integer.
2455 * @returns {boolean} A Boolean indicating whether or not the given value is a
2456 * safe integer.
2457 */
2458
2459var is_safe_integer_x_esm_isSafeInteger = function isSafeInteger(value) {
2460 return is_integer_x_esm(value) && value >= MIN_SAFE_INTEGER && value <= is_safe_integer_x_esm_MAX_SAFE_INTEGER;
2461};
2462
2463/* harmony default export */ var is_safe_integer_x_esm = (is_safe_integer_x_esm_isSafeInteger);
2464
2465
2466// CONCATENATED MODULE: ./node_modules/is-length-x/dist/is-length-x.esm.js
2467
2468/**
2469 * This method checks if `value` is a valid array-like length.
2470 *
2471 * @param {*} value - The value to check.
2472 * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
2473 */
2474
2475var is_length_x_esm_isLength = function isLength(value) {
2476 return is_safe_integer_x_esm(value) && value >= 0;
2477};
2478
2479/* harmony default export */ var is_length_x_esm = (is_length_x_esm_isLength);
2480
2481
2482// CONCATENATED MODULE: ./node_modules/is-map-x/dist/is-map-x.esm.js
2483
2484
2485
2486
2487
2488var is_map_x_esm_test1 = function test1() {
2489 return attempt_x_esm(function createMap() {
2490 /* eslint-disable-next-line compat/compat */
2491 return new Map();
2492 });
2493};
2494
2495var is_map_x_esm_getFromDescriptor = function getFromDescriptor(descriptor) {
2496 var resTest1 = is_map_x_esm_test1();
2497
2498 if (resTest1.threw === false && is_object_like_x_esm(resTest1.value)) {
2499 var res = attempt_x_esm.call(resTest1.value, descriptor.get);
2500
2501 if (res.threw === false && is_length_x_esm(res.value)) {
2502 return descriptor.get;
2503 }
2504 }
2505
2506 return null;
2507};
2508
2509var is_map_x_esm_getGetter = function getGetter() {
2510 if (typeof Map === 'function') {
2511 /* eslint-disable-next-line compat/compat */
2512 var descriptor = object_get_own_property_descriptor_x_esm(Map.prototype, 'size');
2513
2514 if (descriptor && typeof descriptor.get === 'function') {
2515 var getter = is_map_x_esm_getFromDescriptor(descriptor);
2516
2517 if (getter !== null) {
2518 return getter;
2519 }
2520 }
2521 }
2522
2523 return null;
2524};
2525
2526var getSize = is_map_x_esm_getGetter();
2527/**
2528 * Determine if an `object` is a `Map`.
2529 *
2530 * @param {*} object - The object to test.
2531 * @returns {boolean} `true` if the `object` is a `Map`,
2532 * else `false`.
2533 */
2534
2535var is_map_x_esm_isMap = function isMap(object) {
2536 if (getSize === null || is_object_like_x_esm(object) === false) {
2537 return false;
2538 }
2539
2540 var result = attempt_x_esm.call(object, getSize);
2541 return result.threw === false && is_length_x_esm(result.value);
2542};
2543
2544/* harmony default export */ var is_map_x_esm = (is_map_x_esm_isMap);
2545
2546
2547// CONCATENATED MODULE: ./node_modules/is-set-x/dist/is-set-x.esm.js
2548
2549
2550
2551
2552
2553var is_set_x_esm_test1 = function test1() {
2554 return attempt_x_esm(function createSet() {
2555 /* eslint-disable-next-line compat/compat */
2556 return new Set();
2557 });
2558};
2559
2560var is_set_x_esm_getFromDescriptor = function getFromDescriptor(descriptor) {
2561 var resTest1 = is_set_x_esm_test1();
2562
2563 if (resTest1.threw === false && is_object_like_x_esm(resTest1.value)) {
2564 var res = attempt_x_esm.call(resTest1.value, descriptor.get);
2565
2566 if (res.threw === false && is_length_x_esm(res.value)) {
2567 return descriptor.get;
2568 }
2569 }
2570
2571 return null;
2572};
2573
2574var is_set_x_esm_getGetter = function getGetter() {
2575 if (typeof Set === 'function') {
2576 /* eslint-disable-next-line compat/compat */
2577 var descriptor = object_get_own_property_descriptor_x_esm(Set.prototype, 'size');
2578
2579 if (descriptor && typeof descriptor.get === 'function') {
2580 var getter = is_set_x_esm_getFromDescriptor(descriptor);
2581
2582 if (getter !== null) {
2583 return getter;
2584 }
2585 }
2586 }
2587
2588 return null;
2589};
2590
2591var is_set_x_esm_getSize = is_set_x_esm_getGetter();
2592/**
2593 * Determine if an `object` is a `Set`.
2594 *
2595 * @param {*} object - The object to test.
2596 * @returns {boolean} `true` if the `object` is a `Set`,
2597 * else `false`.
2598 */
2599
2600var is_set_x_esm_isSet = function isSet(object) {
2601 if (is_set_x_esm_getSize === null || is_object_like_x_esm(object) === false) {
2602 return false;
2603 }
2604
2605 var result = attempt_x_esm.call(object, is_set_x_esm_getSize);
2606 return result.threw === false && is_length_x_esm(result.value);
2607};
2608
2609/* harmony default export */ var is_set_x_esm = (is_set_x_esm_isSet);
2610
2611
2612// CONCATENATED MODULE: ./node_modules/assert-is-object-x/dist/assert-is-object-x.esm.js
2613
2614
2615/**
2616 * Tests `value` to see if it is an object, throws a `TypeError` if it is
2617 * not. Otherwise returns the `value`.
2618 *
2619 * @param {*} value - The argument to be tested.
2620 * @throws {TypeError} Throws if `value` is not an object.
2621 * @returns {*} Returns `value` if it is an object.
2622 */
2623
2624var assert_is_object_x_esm_assertIsObject = function assertIsObject(value) {
2625 if (is_primitive_default()(value)) {
2626 throw new TypeError("".concat(to_string_symbols_supported_x_esm(value), " is not an object"));
2627 }
2628
2629 return value;
2630};
2631
2632/* harmony default export */ var assert_is_object_x_esm = (assert_is_object_x_esm_assertIsObject);
2633
2634
2635// CONCATENATED MODULE: ./node_modules/object-define-property-x/dist/object-define-property-x.esm.js
2636
2637
2638
2639
2640
2641
2642
2643var object_define_property_x_esm_ObjectCtr = {}.constructor;
2644var nd = object_define_property_x_esm_ObjectCtr.defineProperty;
2645var nativeDefProp = typeof nd === 'function' && nd;
2646var definePropertyFallback;
2647
2648var object_define_property_x_esm_toPropertyDescriptor = function toPropertyDescriptor(desc) {
2649 var object = to_object_x_esm(desc);
2650 var descriptor = {};
2651
2652 if (has_own_property_x_esm(object, 'enumerable')) {
2653 descriptor.enumerable = to_boolean_x_esm(object.enumerable);
2654 }
2655
2656 if (has_own_property_x_esm(object, 'configurable')) {
2657 descriptor.configurable = to_boolean_x_esm(object.configurable);
2658 }
2659
2660 if (has_own_property_x_esm(object, 'value')) {
2661 descriptor.value = object.value;
2662 }
2663
2664 if (has_own_property_x_esm(object, 'writable')) {
2665 descriptor.writable = to_boolean_x_esm(object.writable);
2666 }
2667
2668 if (has_own_property_x_esm(object, 'get')) {
2669 var getter = object.get;
2670
2671 if (typeof getter !== 'undefined' && is_function_x_esm(getter) === false) {
2672 throw new TypeError('getter must be a function');
2673 }
2674
2675 descriptor.get = getter;
2676 }
2677
2678 if (has_own_property_x_esm(object, 'set')) {
2679 var setter = object.set;
2680
2681 if (typeof setter !== 'undefined' && is_function_x_esm(setter) === false) {
2682 throw new TypeError('setter must be a function');
2683 }
2684
2685 descriptor.set = setter;
2686 }
2687
2688 if ((has_own_property_x_esm(descriptor, 'get') || has_own_property_x_esm(descriptor, 'set')) && (has_own_property_x_esm(descriptor, 'value') || has_own_property_x_esm(descriptor, 'writable'))) {
2689 throw new TypeError('Invalid property descriptor. Cannot both specify accessors and a value or writable attribute');
2690 }
2691
2692 return descriptor;
2693}; // ES5 15.2.3.6
2694// http://es5.github.com/#x15.2.3.6
2695// Patch for WebKit and IE8 standard mode
2696// Designed by hax <hax.github.com>
2697// related issue: https://github.com/es-shims/es5-shim/issues#issue/5
2698// IE8 Reference:
2699// http://msdn.microsoft.com/en-us/library/dd282900.aspx
2700// http://msdn.microsoft.com/en-us/library/dd229916.aspx
2701// WebKit Bugs:
2702// https://bugs.webkit.org/show_bug.cgi?id=36423
2703
2704/**
2705 * This method defines a new property directly on an object, or modifies an
2706 * existing property on an object, and returns the object.
2707 *
2708 * @param {object} object - The object on which to define the property.
2709 * @param {string} property - The name of the property to be defined or modified.
2710 * @param {object} descriptor - The descriptor for the property being defined or modified.
2711 * @returns {object} The object that was passed to the function.
2712 * });.
2713 */
2714
2715
2716var $defineProperty; // check whether defineProperty works if it's given. Otherwise, shim partially.
2717
2718if (nativeDefProp) {
2719 var object_define_property_x_esm_testWorksWith = function testWorksWith(object) {
2720 var testResult = attempt_x_esm(nativeDefProp, object, 'sentinel', {});
2721 return testResult.threw === false && testResult.value === object && 'sentinel' in object;
2722 };
2723
2724 var object_define_property_x_esm_doc = typeof document !== 'undefined' && document;
2725
2726 if (object_define_property_x_esm_testWorksWith({}) && (to_boolean_x_esm(object_define_property_x_esm_doc) === false || object_define_property_x_esm_testWorksWith(object_define_property_x_esm_doc.createElement('div')))) {
2727 $defineProperty = function defineProperty(object, property, descriptor) {
2728 return nativeDefProp(assert_is_object_x_esm(object), to_property_key_x_esm(property), object_define_property_x_esm_toPropertyDescriptor(descriptor));
2729 };
2730 } else {
2731 definePropertyFallback = nativeDefProp;
2732 }
2733}
2734
2735if (to_boolean_x_esm(nativeDefProp) === false || definePropertyFallback) {
2736 var object_define_property_x_esm_prototypeOfObject = object_define_property_x_esm_ObjectCtr.prototype; // If JS engine supports accessors creating shortcuts.
2737
2738 var object_define_property_x_esm_supportsAccessors = has_own_property_x_esm(object_define_property_x_esm_prototypeOfObject, '__defineGetter__');
2739 /* eslint-disable-next-line no-underscore-dangle */
2740
2741 var defineGetter = object_define_property_x_esm_supportsAccessors && object_define_property_x_esm_prototypeOfObject.__defineGetter_;
2742 /* eslint-disable-next-line no-underscore-dangle,no-restricted-properties */
2743
2744 var defineSetter = object_define_property_x_esm_supportsAccessors && object_define_property_x_esm_prototypeOfObject.__defineSetter__;
2745 /* eslint-disable-next-line no-underscore-dangle */
2746
2747 var object_define_property_x_esm_lookupGetter = object_define_property_x_esm_supportsAccessors && object_define_property_x_esm_prototypeOfObject.__lookupGetter__;
2748 /* eslint-disable-next-line no-underscore-dangle */
2749
2750 var object_define_property_x_esm_lookupSetter = object_define_property_x_esm_supportsAccessors && object_define_property_x_esm_prototypeOfObject.__lookupSetter__;
2751
2752 $defineProperty = function defineProperty(object, property, descriptor) {
2753 assert_is_object_x_esm(object);
2754 var propKey = to_property_key_x_esm(property);
2755 var propDesc = object_define_property_x_esm_toPropertyDescriptor(descriptor); // make a valiant attempt to use the real defineProperty for IE8's DOM elements.
2756
2757 if (definePropertyFallback) {
2758 var result = attempt_x_esm.call(object_define_property_x_esm_ObjectCtr, definePropertyFallback, object, propKey, propDesc);
2759
2760 if (result.threw === false) {
2761 return result.value;
2762 } // try the shim if the real one doesn't work
2763
2764 } // If it's a data property.
2765
2766
2767 if (has_own_property_x_esm(propDesc, 'value')) {
2768 // fail silently if 'writable', 'enumerable', or 'configurable' are requested but not supported
2769 if (object_define_property_x_esm_supportsAccessors && (object_define_property_x_esm_lookupGetter.call(object, propKey) || object_define_property_x_esm_lookupSetter.call(object, propKey))) {
2770 // As accessors are supported only on engines implementing
2771 // `__proto__` we can safely override `__proto__` while defining
2772 // a property to make sure that we don't hit an inherited accessor.
2773
2774 /* eslint-disable-next-line no-proto */
2775 var prototype = object.__proto__;
2776 /* eslint-disable-next-line no-proto */
2777
2778 object.__proto__ = object_define_property_x_esm_prototypeOfObject; // Deleting a property anyway since getter / setter may be defined on object itself.
2779
2780 delete object[propKey];
2781 object[propKey] = propDesc.value; // Setting original `__proto__` back now.
2782
2783 /* eslint-disable-next-line no-proto */
2784
2785 object.__proto__ = prototype;
2786 } else {
2787 object[propKey] = propDesc.value;
2788 }
2789 } else {
2790 if (object_define_property_x_esm_supportsAccessors === false && (propDesc.get || propDesc.set)) {
2791 throw new TypeError('getters & setters can not be defined on this javascript engine');
2792 } // If we got that far then getters and setters can be defined !!
2793
2794
2795 if (propDesc.get) {
2796 defineGetter.call(object, propKey, propDesc.get);
2797 }
2798
2799 if (propDesc.set) {
2800 defineSetter.call(object, propKey, propDesc.set);
2801 }
2802 }
2803
2804 return object;
2805 };
2806}
2807
2808var defProp = $defineProperty;
2809/* harmony default export */ var object_define_property_x_esm = (defProp);
2810
2811
2812// CONCATENATED MODULE: ./node_modules/is-regexp-x/dist/is-regexp-x.esm.js
2813
2814
2815
2816
2817
2818
2819var regexExec = /none/.exec;
2820var regexClass = '[object RegExp]';
2821
2822var tryRegexExecCall = function tryRegexExec(value, descriptor) {
2823 try {
2824 value.lastIndex = 0;
2825 regexExec.call(value);
2826 return true;
2827 } catch (e) {
2828 return false;
2829 } finally {
2830 object_define_property_x_esm(value, 'lastIndex', descriptor);
2831 }
2832};
2833/**
2834 * This method tests if a value is a regex.
2835 *
2836 * @param {*} value - The value to test.
2837 * @returns {boolean} `true` if value is a regex; otherwise `false`.
2838 */
2839
2840
2841var is_regexp_x_esm_isRegex = function isRegex(value) {
2842 if (is_object_like_x_esm(value) === false) {
2843 return false;
2844 }
2845
2846 if (has_to_string_tag_x_esm === false) {
2847 return to_string_tag_x_esm(value) === regexClass;
2848 }
2849
2850 var descriptor = object_get_own_property_descriptor_x_esm(value, 'lastIndex');
2851 var hasLastIndexDataProperty = descriptor && has_own_property_x_esm(descriptor, 'value');
2852
2853 if (hasLastIndexDataProperty !== true) {
2854 return false;
2855 }
2856
2857 return tryRegexExecCall(value, descriptor);
2858};
2859
2860/* harmony default export */ var is_regexp_x_esm = (is_regexp_x_esm_isRegex);
2861
2862
2863// CONCATENATED MODULE: ./node_modules/to-length-x/dist/to-length-x.esm.js
2864
2865var to_length_x_esm_MAX_SAFE_INTEGER = 9007199254740991;
2866/**
2867 * Converts `value` to an integer suitable for use as the length of an
2868 * array-like object. (ES2019).
2869 *
2870 * @param {*} value - The value to convert.
2871 * @returns {number} Returns the converted integer.
2872 */
2873
2874var to_length_x_esm_toLength = function toLength(value) {
2875 var len = to_integer_x_esm(value); // includes converting -0 to +0
2876
2877 if (len <= 0) {
2878 return 0;
2879 }
2880
2881 if (len > to_length_x_esm_MAX_SAFE_INTEGER) {
2882 return to_length_x_esm_MAX_SAFE_INTEGER;
2883 }
2884
2885 return len;
2886};
2887
2888/* harmony default export */ var to_length_x_esm = (to_length_x_esm_toLength);
2889
2890
2891// CONCATENATED MODULE: ./node_modules/same-value-x/dist/same-value-x.esm.js
2892
2893/**
2894 * This method is the comparison abstract operation SameValue(x, y), where x
2895 * and y are ECMAScript language values, produces true or false.
2896 *
2897 * @param {*} [value1] - The first value to compare.
2898 * @param {*} [value2] - The second value to compare.
2899 * @returns {boolean} A Boolean indicating whether or not the two arguments are
2900 * the same value.
2901 */
2902
2903var same_value_x_esm_sameValue = function sameValue(value1, value2) {
2904 if (value1 === 0 && value2 === 0) {
2905 return 1 / value1 === 1 / value2;
2906 }
2907
2908 if (value1 === value2) {
2909 return true;
2910 }
2911
2912 return is_nan_x_esm(value1) && is_nan_x_esm(value2);
2913};
2914
2915/* harmony default export */ var same_value_x_esm = (same_value_x_esm_sameValue);
2916
2917
2918// CONCATENATED MODULE: ./node_modules/same-value-zero-x/dist/same-value-zero-x.esm.js
2919
2920/**
2921 * This method determines whether two values are the same value.
2922 * SameValueZero differs from SameValue (`Object.is`) only in its treatment
2923 * of +0 and -0.
2924 *
2925 * @param {*} [x] - The first value to compare.
2926 * @param {*} [y] - The second value to compare.
2927 * @returns {boolean} A Boolean indicating whether or not the two arguments
2928 * are the same value.
2929 */
2930
2931var same_value_zero_x_esm_sameValueZero = function sameValueZero(x, y) {
2932 return x === y || same_value_x_esm(x, y);
2933};
2934
2935/* harmony default export */ var same_value_zero_x_esm = (same_value_zero_x_esm_sameValueZero);
2936
2937
2938// CONCATENATED MODULE: ./node_modules/assert-is-function-x/dist/assert-is-function-x.esm.js
2939
2940
2941
2942/**
2943 * Tests `callback` to see if it is a function, throws a `TypeError` if it is
2944 * not. Otherwise returns the `callback`.
2945 *
2946 * @param {*} callback - The argument to be tested.
2947 * @throws {TypeError} Throws if `callback` is not a function.
2948 * @returns {*} Returns `callback` if it is function.
2949 */
2950
2951var assert_is_function_x_esm_assertIsFunction = function assertIsFunction(callback) {
2952 if (is_function_x_esm(callback) === false) {
2953 var msg = is_primitive_default()(callback) ? to_string_symbols_supported_x_esm(callback) : '#<Object>';
2954 throw new TypeError("".concat(msg, " is not a function"));
2955 }
2956
2957 return callback;
2958};
2959
2960/* harmony default export */ var assert_is_function_x_esm = (assert_is_function_x_esm_assertIsFunction);
2961
2962
2963// CONCATENATED MODULE: ./node_modules/has-boxed-string-x/dist/has-boxed-string-x.esm.js
2964var has_boxed_string_x_esm_string = 'a';
2965var boxedString = {}.constructor(has_boxed_string_x_esm_string);
2966/**
2967 * Check failure of by-index access of string characters (IE < 9)
2968 * and failure of `0 in boxedString` (Rhino).
2969 *
2970 * `true` if no failure; otherwise `false`.
2971 *
2972 * @type boolean
2973 */
2974
2975var hasBoxed = boxedString[0] === has_boxed_string_x_esm_string && 0 in boxedString;
2976/* harmony default export */ var has_boxed_string_x_esm = (hasBoxed);
2977
2978
2979// CONCATENATED MODULE: ./node_modules/split-if-boxed-bug-x/dist/split-if-boxed-bug-x.esm.js
2980
2981
2982var split_if_boxed_bug_x_esm_EMPTY_STRING = '';
2983var strSplit = split_if_boxed_bug_x_esm_EMPTY_STRING.split;
2984var isStringFn = has_boxed_string_x_esm === false && typeof strSplit === 'function' && is_string_default.a;
2985/**
2986 * This method tests if a value is a string with the boxed bug; splits to an
2987 * array for iteration; otherwise returns the original value.
2988 *
2989 * @param {*} [value] - The value to be tested.
2990 * @returns {*} An array or characters if value was a string with the boxed bug;
2991 * otherwise the value.
2992 */
2993
2994var splitIfBoxedBug = function splitIfBoxedBug(value) {
2995 return isStringFn && isStringFn(value) ? strSplit.call(value, split_if_boxed_bug_x_esm_EMPTY_STRING) : value;
2996};
2997
2998/* harmony default export */ var split_if_boxed_bug_x_esm = (splitIfBoxedBug);
2999
3000
3001// CONCATENATED MODULE: ./node_modules/find-index-x/dist/find-index-x.esm.js
3002var find_index_x_esm_this = undefined;
3003
3004function find_index_x_esm_newArrowCheck(innerThis, boundThis) { if (innerThis !== boundThis) { throw new TypeError("Cannot instantiate an arrow function"); } }
3005
3006
3007
3008
3009
3010
3011var pFindIndex = typeof Array.prototype.findIndex === 'function' && Array.prototype.findIndex;
3012var find_index_x_esm_isWorking;
3013
3014if (pFindIndex) {
3015 var testArr = [];
3016 testArr.length = 2;
3017 testArr[1] = 1;
3018 var find_index_x_esm_res = attempt_x_esm.call(testArr, pFindIndex, function (item, idx) {
3019 find_index_x_esm_newArrowCheck(this, find_index_x_esm_this);
3020
3021 return idx === 0;
3022 }.bind(undefined));
3023 find_index_x_esm_isWorking = find_index_x_esm_res.threw === false && find_index_x_esm_res.value === 0;
3024
3025 if (find_index_x_esm_isWorking) {
3026 find_index_x_esm_res = attempt_x_esm.call(1, pFindIndex, function (item, idx) {
3027 find_index_x_esm_newArrowCheck(this, find_index_x_esm_this);
3028
3029 return idx === 0;
3030 }.bind(undefined));
3031 find_index_x_esm_isWorking = find_index_x_esm_res.threw === false && find_index_x_esm_res.value === -1;
3032 }
3033
3034 if (find_index_x_esm_isWorking) {
3035 find_index_x_esm_isWorking = attempt_x_esm.call([], pFindIndex).threw;
3036 }
3037
3038 if (find_index_x_esm_isWorking) {
3039 find_index_x_esm_res = attempt_x_esm.call('abc', pFindIndex, function (item) {
3040 find_index_x_esm_newArrowCheck(this, find_index_x_esm_this);
3041
3042 return item === 'c';
3043 }.bind(undefined));
3044 find_index_x_esm_isWorking = find_index_x_esm_res.threw === false && find_index_x_esm_res.value === 2;
3045 }
3046
3047 if (find_index_x_esm_isWorking) {
3048 find_index_x_esm_res = attempt_x_esm.call(function getArgs() {
3049 /* eslint-disable-next-line prefer-rest-params */
3050 return arguments;
3051 }('a', 'b', 'c'), pFindIndex, function (item) {
3052 find_index_x_esm_newArrowCheck(this, find_index_x_esm_this);
3053
3054 return item === 'c';
3055 }.bind(undefined));
3056 find_index_x_esm_isWorking = find_index_x_esm_res.threw === false && find_index_x_esm_res.value === 2;
3057 }
3058}
3059/**
3060 * Like `findIndex`, this method returns an index in the array, if an element
3061 * in the array satisfies the provided testing function. Otherwise -1 is returned.
3062 *
3063 * @param {Array} array - The array to search.
3064 * @throws {TypeError} If array is `null` or `undefined`-.
3065 * @param {Function} callback - Function to execute on each value in the array,
3066 * taking three arguments: `element`, `index` and `array`.
3067 * @throws {TypeError} If `callback` is not a function.
3068 * @param {*} [thisArg] - Object to use as `this` when executing `callback`.
3069 * @returns {number} Returns index of positively tested element, otherwise -1.
3070 */
3071
3072
3073var findIdx;
3074
3075if (find_index_x_esm_isWorking) {
3076 findIdx = function findIndex(array, callback) {
3077 var args = [callback];
3078
3079 if (arguments.length > 2) {
3080 /* eslint-disable-next-line prefer-rest-params,prefer-destructuring */
3081 args[1] = arguments[2];
3082 }
3083
3084 return pFindIndex.apply(array, args);
3085 };
3086} else {
3087 findIdx = function findIndex(array, callback) {
3088 var object = to_object_x_esm(array);
3089 assert_is_function_x_esm(callback);
3090 var iterable = split_if_boxed_bug_x_esm(object);
3091 var length = to_length_x_esm(iterable.length);
3092
3093 if (length < 1) {
3094 return -1;
3095 }
3096
3097 var thisArg;
3098
3099 if (arguments.length > 2) {
3100 /* eslint-disable-next-line prefer-rest-params,prefer-destructuring */
3101 thisArg = arguments[2];
3102 }
3103
3104 var index = 0;
3105
3106 while (index < length) {
3107 if (callback.call(thisArg, iterable[index], index, object)) {
3108 return index;
3109 }
3110
3111 index += 1;
3112 }
3113
3114 return -1;
3115 };
3116}
3117
3118var fi = findIdx;
3119/* harmony default export */ var find_index_x_esm = (fi);
3120
3121
3122// CONCATENATED MODULE: ./node_modules/is-array-like-x/dist/is-array-like-x.esm.js
3123
3124
3125
3126/**
3127 * Checks if value is array-like. A value is considered array-like if it's
3128 * not a function and has a `length` that's an integer greater than or
3129 * equal to 0 and less than or equal to `Number.MAX_SAFE_INTEGER`.
3130 *
3131 * @param {*} value - The object to be tested.
3132 */
3133
3134var is_array_like_x_esm_isArrayLike = function isArrayLike(value) {
3135 return is_nil_x_esm(value) === false && is_function_x_esm(value, true) === false && is_length_x_esm(value.length);
3136};
3137
3138/* harmony default export */ var is_array_like_x_esm = (is_array_like_x_esm_isArrayLike);
3139
3140
3141// CONCATENATED MODULE: ./node_modules/calculate-from-index-x/dist/calculate-from-index-x.esm.js
3142
3143
3144
3145
3146
3147var getMax = function getMax(a, b) {
3148 return a >= b ? a : b;
3149};
3150/**
3151 * This method calculates a fromIndex of a given value for an array.
3152 *
3153 * @param {Array} array - * The array on which to calculate the starting index.
3154 * @throws {TypeError} If array is null or undefined.
3155 * @param {number} fromIndex - * The position in this array at which to begin. A
3156 * negative value gives the index of array.length + fromIndex by asc.
3157 * @returns {number} The calculated fromIndex. Default is 0.
3158 */
3159
3160
3161var calculate_from_index_x_esm_calcFromIndex = function calcFromIndex(array, fromIndex) {
3162 var object = to_object_x_esm(array);
3163
3164 if (is_array_like_x_esm(object) === false) {
3165 return 0;
3166 }
3167
3168 var index = to_integer_x_esm(fromIndex);
3169 return index >= 0 ? index : getMax(0, to_length_x_esm(object.length) + index);
3170};
3171
3172/* harmony default export */ var calculate_from_index_x_esm = (calculate_from_index_x_esm_calcFromIndex);
3173
3174
3175// CONCATENATED MODULE: ./node_modules/index-of-x/dist/index-of-x.esm.js
3176function index_of_x_esm_newArrowCheck(innerThis, boundThis) { if (innerThis !== boundThis) { throw new TypeError("Cannot instantiate an arrow function"); } }
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189var pIndexOf = typeof Array.prototype.indexOf === 'function' && Array.prototype.indexOf;
3190var index_of_x_esm_isWorking;
3191
3192if (pIndexOf) {
3193 var index_of_x_esm_res = attempt_x_esm.call([0, 1], pIndexOf, 1, 2);
3194 index_of_x_esm_isWorking = index_of_x_esm_res.threw === false && index_of_x_esm_res.value === -1;
3195
3196 if (index_of_x_esm_isWorking) {
3197 index_of_x_esm_res = attempt_x_esm.call([0, 1], pIndexOf, 1);
3198 index_of_x_esm_isWorking = index_of_x_esm_res.threw === false && index_of_x_esm_res.value === 1;
3199 }
3200
3201 if (index_of_x_esm_isWorking) {
3202 index_of_x_esm_res = attempt_x_esm.call([0, -0], pIndexOf, -0);
3203 index_of_x_esm_isWorking = index_of_x_esm_res.threw === false && index_of_x_esm_res.value === 0;
3204 }
3205
3206 if (index_of_x_esm_isWorking) {
3207 var index_of_x_esm_testArr = [];
3208 index_of_x_esm_testArr.length = 2;
3209 /* eslint-disable-next-line no-void */
3210
3211 index_of_x_esm_testArr[1] = void 0;
3212 /* eslint-disable-next-line no-void */
3213
3214 index_of_x_esm_res = attempt_x_esm.call(index_of_x_esm_testArr, pIndexOf, void 0);
3215 index_of_x_esm_isWorking = index_of_x_esm_res.threw === false && index_of_x_esm_res.value === 1;
3216 }
3217
3218 if (index_of_x_esm_isWorking) {
3219 index_of_x_esm_res = attempt_x_esm.call('abc', pIndexOf, 'c');
3220 index_of_x_esm_isWorking = index_of_x_esm_res.threw === false && index_of_x_esm_res.value === 2;
3221 }
3222
3223 if (index_of_x_esm_isWorking) {
3224 index_of_x_esm_res = attempt_x_esm.call(function getArgs() {
3225 /* eslint-disable-next-line prefer-rest-params */
3226 return arguments;
3227 }('a', 'b', 'c'), pIndexOf, 'c');
3228 index_of_x_esm_isWorking = index_of_x_esm_res.threw === false && index_of_x_esm_res.value === 2;
3229 }
3230}
3231
3232if (index_of_x_esm_isWorking !== true) {
3233 pIndexOf = function $pIndexOf(searchElement) {
3234 /* eslint-disable-next-line babel/no-invalid-this */
3235 var length = to_length_x_esm(this.length);
3236
3237 if (length < 1) {
3238 return -1;
3239 }
3240 /* eslint-disable-next-line prefer-rest-params */
3241
3242
3243 var i = arguments[1];
3244
3245 while (i < length) {
3246 /* eslint-disable-next-line babel/no-invalid-this */
3247 if (i in this && this[i] === searchElement) {
3248 return i;
3249 }
3250
3251 i += 1;
3252 }
3253
3254 return -1;
3255 };
3256}
3257/**
3258 * This method returns an index in the array, if an element in the array
3259 * satisfies the provided testing function. Otherwise -1 is returned.
3260 *
3261 * @private
3262 * @param {Array} array - The array to search.
3263 * @param {*} searchElement - Element to locate in the array.
3264 * @param {number} fromIndex - The index to start the search at.
3265 * @param {Function} extendFn - The comparison function to use.
3266 * @returns {number} Returns index of found element, otherwise -1.
3267 */
3268
3269
3270var findIdxFrom = function findIndexFrom(array, searchElement, fromIndex, extendFn) {
3271 var fIdx = fromIndex;
3272 var length = to_length_x_esm(array.length);
3273
3274 while (fIdx < length) {
3275 if (fIdx in array && extendFn(array[fIdx], searchElement)) {
3276 return fIdx;
3277 }
3278
3279 fIdx += 1;
3280 }
3281
3282 return -1;
3283}; // eslint-disable jsdoc/check-param-names
3284// noinspection JSCommentMatchesSignature
3285
3286/**
3287 * This method returns the first index at which a given element can be found
3288 * in the array, or -1 if it is not present.
3289 *
3290 * @param {Array} array - The array to search.
3291 * @throws {TypeError} If `array` is `null` or `undefined`.
3292 * @param {*} searchElement - Element to locate in the `array`.
3293 * @param {number} [fromIndex] - The index to start the search at. If the
3294 * index is greater than or equal to the array's length, -1 is returned,
3295 * which means the array will not be searched. If the provided index value is
3296 * a negative number, it is taken as the offset from the end of the array.
3297 * Note: if the provided index is negative, the array is still searched from
3298 * front to back. If the calculated index is less than 0, then the whole
3299 * array will be searched. Default: 0 (entire array is searched).
3300 * @param {string} [extend] - Extension type: `SameValue` or `SameValueZero`.
3301 * @returns {number} Returns index of found element, otherwise -1.
3302 */
3303// eslint-enable jsdoc/check-param-names
3304
3305
3306var index_of_x_esm_indexOf = function indexOf(array, searchElement) {
3307 var _this = this;
3308
3309 var object = to_object_x_esm(array);
3310 var iterable = split_if_boxed_bug_x_esm(object);
3311 var length = to_length_x_esm(iterable.length);
3312
3313 if (length < 1) {
3314 return -1;
3315 }
3316
3317 var argLength = arguments.length;
3318 /* eslint-disable-next-line prefer-rest-params */
3319
3320 var extend = argLength > 2 && argLength > 3 ? arguments[3] : arguments[2];
3321 var extendFn;
3322
3323 if (is_string_default()(extend)) {
3324 extend = extend.toLowerCase();
3325
3326 if (extend === 'samevalue') {
3327 extendFn = same_value_x_esm;
3328 } else if (extend === 'samevaluezero') {
3329 extendFn = same_value_zero_x_esm;
3330 }
3331 }
3332
3333 var fromIndex = 0;
3334
3335 if (extendFn && (searchElement === 0 || is_nan_x_esm(searchElement))) {
3336 if (argLength > 3) {
3337 /* eslint-disable-next-line prefer-rest-params */
3338 fromIndex = calculate_from_index_x_esm(iterable, arguments[2]);
3339
3340 if (fromIndex >= length) {
3341 return -1;
3342 }
3343
3344 if (fromIndex < 0) {
3345 fromIndex = 0;
3346 }
3347 }
3348
3349 if (fromIndex > 0) {
3350 return findIdxFrom(iterable, searchElement, fromIndex, extendFn);
3351 }
3352
3353 return find_index_x_esm(iterable, function (element, index) {
3354 index_of_x_esm_newArrowCheck(this, _this);
3355
3356 return index in iterable && extendFn(searchElement, element);
3357 }.bind(this));
3358 }
3359
3360 if (argLength > 3 || argLength > 2 && to_boolean_x_esm(extendFn) === false) {
3361 /* eslint-disable-next-line prefer-rest-params */
3362 fromIndex = calculate_from_index_x_esm(iterable, arguments[2]);
3363
3364 if (fromIndex >= length) {
3365 return -1;
3366 }
3367
3368 if (fromIndex < 0) {
3369 fromIndex = 0;
3370 }
3371 }
3372
3373 return pIndexOf.call(iterable, searchElement, fromIndex);
3374};
3375
3376/* harmony default export */ var index_of_x_esm = (index_of_x_esm_indexOf);
3377
3378
3379// CONCATENATED MODULE: ./node_modules/is-array-x/dist/is-array-x.esm.js
3380
3381
3382var nia = [].isArray;
3383var nativeIsArray = typeof nia === 'function' && nia;
3384var is_array_x_esm_testResult = attempt_x_esm(function attemptee() {
3385 return nativeIsArray([]) === true && nativeIsArray({
3386 length: 0
3387 }) === false;
3388});
3389var is_array_x_esm_isWorking = is_array_x_esm_testResult.threw === false && is_array_x_esm_testResult.value === true;
3390var is_array_x_esm_implementation = function isArray(value) {
3391 return to_string_tag_x_esm(value) === '[object Array]';
3392};
3393/**
3394 * Determines whether the passed value is an Array.
3395 *
3396 * @param {*} value - The value to test.
3397 * @returns {boolean} - True if an array; otherwise false.
3398 */
3399
3400var is_array_x_esm_isArray = is_array_x_esm_isWorking ? nativeIsArray : is_array_x_esm_implementation;
3401/* harmony default export */ var is_array_x_esm = (is_array_x_esm_isArray);
3402
3403
3404// CONCATENATED MODULE: ./node_modules/array-like-slice-x/dist/array-like-slice-x.esm.js
3405
3406
3407
3408
3409
3410var array_like_slice_x_esm_getMax = function _getMax(a, b) {
3411 return a >= b ? a : b;
3412};
3413
3414var getMin = function _getMin(a, b) {
3415 return a <= b ? a : b;
3416};
3417
3418var setRelative = function _setRelative(value, length) {
3419 return value < 0 ? array_like_slice_x_esm_getMax(length + value, 0) : getMin(value, length);
3420};
3421/**
3422 * The slice() method returns a shallow copy of a portion of an array into a new
3423 * array object selected from begin to end (end not included). The original
3424 * array will not be modified.
3425 *
3426 * @param {!object} arrayLike - The array like object to slice.
3427 * @param {number} [start] - Zero-based index at which to begin extraction.
3428 * A negative index can be used, indicating an offset from the end of the
3429 * sequence. Running slice(-2) extracts the last two elements in the sequence.
3430 * If begin is undefined, slice begins from index 0.
3431 * @param {number} [end] - Zero-based index before which to end extraction.
3432 * Slice extracts up to but not including end. For example, slice([0,1,2,3,4],1,4)
3433 * extracts the second element through the fourth element (elements indexed
3434 * 1, 2, and 3).
3435 * A negative index can be used, indicating an offset from the end of the
3436 * sequence. Running slice(2,-1) extracts the third element through the second-to-last
3437 * element in the sequence.
3438 * If end is omitted, slice extracts through the end of the sequence (arr.length).
3439 * If end is greater than the length of the sequence, slice extracts through
3440 * the end of the sequence (arr.length).
3441 * @returns {Array} A new array containing the extracted elements.
3442 */
3443
3444
3445var array_like_slice_x_esm_slice = function slice(arrayLike, start, end) {
3446 var iterable = split_if_boxed_bug_x_esm(to_object_x_esm(arrayLike));
3447 var length = to_length_x_esm(iterable.length);
3448 var k = setRelative(to_integer_x_esm(start), length);
3449 var relativeEnd = typeof end === 'undefined' ? length : to_integer_x_esm(end);
3450 var finalEnd = setRelative(relativeEnd, length);
3451 var val = [];
3452 val.length = array_like_slice_x_esm_getMax(finalEnd - k, 0);
3453 var next = 0;
3454
3455 while (k < finalEnd) {
3456 if (k in iterable) {
3457 val[next] = iterable[k];
3458 }
3459
3460 next += 1;
3461 k += 1;
3462 }
3463
3464 return val;
3465};
3466
3467/* harmony default export */ var array_like_slice_x_esm = (array_like_slice_x_esm_slice);
3468
3469
3470// CONCATENATED MODULE: ./node_modules/array-slice-x/dist/array-slice-x.esm.js
3471
3472
3473
3474
3475
3476
3477var nativeSlice = [].slice;
3478
3479var array_slice_x_esm_testArray = function testArray() {
3480 var res = attempt_x_esm.call([1, 2, 3], nativeSlice, 1, 2);
3481 return res.threw || is_array_x_esm(res.value) === false || res.value.length !== 1 || res.value[0] !== 2;
3482};
3483
3484var array_slice_x_esm_testString = function testString() {
3485 var res = attempt_x_esm.call('abc', nativeSlice, 1, 2);
3486 return res.threw || is_array_x_esm(res.value) === false || res.value.length !== 1 || res.value[0] !== 'b';
3487};
3488
3489var array_slice_x_esm_testDOM = function testDOM() {
3490 var doc = typeof document !== 'undefined' && document;
3491 var resultDocElement = doc ? attempt_x_esm.call(doc.documentElement, nativeSlice).threw : false;
3492 return resultDocElement ? resultDocElement.threw : false;
3493};
3494
3495var failArray = array_slice_x_esm_testArray();
3496var failString = array_slice_x_esm_testString();
3497var failDOM = array_slice_x_esm_testDOM();
3498/**
3499 * The slice() method returns a shallow copy of a portion of an array into a new
3500 * array object selected from begin to end (end not included). The original
3501 * array will not be modified.
3502 *
3503 * @param {Array|object} array - The array to slice.
3504 * @param {number} [start] - Zero-based index at which to begin extraction.
3505 * A negative index can be used, indicating an offset from the end of the
3506 * sequence. Running slice(-2) extracts the last two elements in the sequence.
3507 * If begin is undefined, slice begins from index 0.
3508 * @param {number} [end] - Zero-based index before which to end extraction.
3509 * Slice extracts up to but not including end. For example, slice(1,4)
3510 * extracts the second element through the fourth element (elements indexed
3511 * 1, 2, and 3).
3512 * A negative index can be used, indicating an offset from the end of the
3513 * sequence. Running slice(2,-1) extracts the third element through the second-to-last
3514 * element in the sequence.
3515 * If end is omitted, slice extracts through the end of the
3516 * sequence (arr.length).
3517 * If end is greater than the length of the sequence, slice extracts through
3518 * the end of the sequence (arr.length).
3519 * @returns {Array} A new array containing the extracted elements.
3520 */
3521
3522var array_slice_x_esm_slice = function slice(array, start, end) {
3523 var object = to_object_x_esm(array);
3524
3525 if (failArray || failDOM && is_array_x_esm(object) === false || failString && is_string_default()(object) || is_arguments_default()(object)) {
3526 return array_like_slice_x_esm(object, start, end);
3527 }
3528 /* eslint-disable-next-line prefer-rest-params */
3529
3530
3531 return nativeSlice.apply(object, array_like_slice_x_esm(arguments, 1));
3532};
3533
3534/* harmony default export */ var array_slice_x_esm = (array_slice_x_esm_slice);
3535
3536
3537// CONCATENATED MODULE: ./node_modules/array-any-x/dist/array-any-x.esm.js
3538function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
3539
3540function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
3541
3542function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
3543
3544function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
3545
3546
3547
3548
3549
3550
3551var performCallback = function performCallback(args) {
3552 var _args = _slicedToArray(args, 6),
3553 noThis = _args[0],
3554 thisArg = _args[1],
3555 callBack = _args[2],
3556 iterable = _args[3],
3557 index = _args[4],
3558 object = _args[5];
3559
3560 var item = iterable[index];
3561 return noThis ? callBack(item, index, object) : callBack.call(thisArg, item, index, object);
3562};
3563
3564var array_any_x_esm_getIterableLengthPair = function getIterableLengthPair(object) {
3565 var iterable = split_if_boxed_bug_x_esm(object);
3566 return [iterable, to_length_x_esm(iterable.length)];
3567}; // eslint-disable jsdoc/check-param-names
3568// noinspection JSCommentMatchesSignature
3569
3570/**
3571 * This method tests whether some element in the array passes the test
3572 * implemented by the provided function.
3573 *
3574 * @function any
3575 * @param {Array} array - The array to iterate over.
3576 * @param {Function} callBack - Function to test for each element.
3577 * @param {*} [thisArg] - Value to use as this when executing callback.
3578 * @throws {TypeError} If array is null or undefined.
3579 * @throws {TypeError} If callBack is not a function.
3580 * @returns {boolean} `true` if the callback function returns a truthy value for
3581 * any array element; otherwise, `false`.
3582 */
3583// eslint-enable jsdoc/check-param-names
3584
3585
3586var array_any_x_esm_any = function any(array, callBack
3587/* , thisArg */
3588) {
3589 var object = to_object_x_esm(array); // If no callback function or if callback is not a callable function
3590
3591 assert_is_function_x_esm(callBack);
3592
3593 var _getIterableLengthPai = array_any_x_esm_getIterableLengthPair(object),
3594 _getIterableLengthPai2 = _slicedToArray(_getIterableLengthPai, 2),
3595 iterable = _getIterableLengthPai2[0],
3596 length = _getIterableLengthPai2[1];
3597 /* eslint-disable-next-line prefer-rest-params,no-void */
3598
3599
3600 var thisArg = arguments.length > 2 ? arguments[2] : void 0;
3601 var noThis = typeof thisArg === 'undefined';
3602
3603 if (length) {
3604 for (var index = 0; index < length; index += 1) {
3605 if (performCallback([noThis, thisArg, callBack, iterable, index, object])) {
3606 return true;
3607 }
3608 }
3609 }
3610
3611 return false;
3612};
3613
3614/* harmony default export */ var array_any_x_esm = (array_any_x_esm_any);
3615
3616
3617// CONCATENATED MODULE: ./node_modules/array-some-x/dist/array-some-x.esm.js
3618
3619
3620
3621
3622
3623
3624var ns = [].some;
3625var nativeSome = typeof ns === 'function' && ns;
3626
3627var array_some_x_esm_test1 = function test1() {
3628 var spy = 0;
3629 var res = attempt_x_esm.call([1, 2], nativeSome, function spyAdd1(item) {
3630 spy += item;
3631 return false;
3632 });
3633 return res.threw === false && res.value === false && spy === 3;
3634};
3635
3636var array_some_x_esm_test2 = function test2() {
3637 var spy = '';
3638 var res = attempt_x_esm.call(to_object_x_esm('abc'), nativeSome, function spyAdd2(item, index) {
3639 spy += item;
3640 return index === 1;
3641 });
3642 return res.threw === false && res.value === true && spy === 'ab';
3643};
3644
3645var array_some_x_esm_test3 = function test3() {
3646 var spy = 0;
3647 var res = attempt_x_esm.call(function getArgs() {
3648 /* eslint-disable-next-line prefer-rest-params */
3649 return arguments;
3650 }(1, 2, 3), nativeSome, function spyAdd3(item, index) {
3651 spy += item;
3652 return index === 2;
3653 });
3654 return res.threw === false && res.value === true && spy === 6;
3655};
3656
3657var array_some_x_esm_test4 = function test4() {
3658 var spy = 0;
3659 var res = attempt_x_esm.call({
3660 0: 1,
3661 1: 2,
3662 3: 3,
3663 4: 4,
3664 length: 4
3665 }, nativeSome, function spyAdd4(item) {
3666 spy += item;
3667 return false;
3668 });
3669 return res.threw === false && res.value === false && spy === 6;
3670};
3671
3672var array_some_x_esm_test5 = function test5() {
3673 var doc = typeof document !== 'undefined' && document;
3674
3675 if (doc) {
3676 var spy = null;
3677 var fragment = doc.createDocumentFragment();
3678 var div = doc.createElement('div');
3679 fragment.appendChild(div);
3680 var res = attempt_x_esm.call(fragment.childNodes, nativeSome, function spyAssign(item) {
3681 spy = item;
3682 return item;
3683 });
3684 return res.threw === false && res.value === true && spy === div;
3685 }
3686
3687 return true;
3688};
3689
3690var array_some_x_esm_test6 = function test6() {
3691 var isStrict = function getIsStrict() {
3692 /* eslint-disable-next-line babel/no-invalid-this */
3693 return to_boolean_x_esm(this) === false;
3694 }();
3695
3696 if (isStrict) {
3697 var spy = null;
3698
3699 var thisTest = function thisTest() {
3700 /* eslint-disable-next-line babel/no-invalid-this */
3701 spy = typeof this === 'string';
3702 };
3703
3704 var res = attempt_x_esm.call([1], nativeSome, thisTest, 'x');
3705 return res.threw === false && res.value === false && spy === true;
3706 }
3707
3708 return true;
3709};
3710
3711var array_some_x_esm_test7 = function test7() {
3712 var spy = {};
3713 var fn = 'return nativeSome.call("foo", function (_, __, context) {' + 'if (castBoolean(context) === false || typeof context !== "object") {' + 'spy.value = true;}});';
3714 /* eslint-disable-next-line no-new-func */
3715
3716 var res = attempt_x_esm(Function('nativeSome', 'spy', 'castBoolean', fn), nativeSome, spy, to_boolean_x_esm);
3717 return res.threw === false && res.value === false && spy.value !== true;
3718};
3719
3720var array_some_x_esm_isWorking = to_boolean_x_esm(nativeSome) && array_some_x_esm_test1() && array_some_x_esm_test2() && array_some_x_esm_test3() && array_some_x_esm_test4() && array_some_x_esm_test5() && array_some_x_esm_test6() && array_some_x_esm_test7();
3721
3722var patchedSome = function some(array, callBack
3723/* , thisArg */
3724) {
3725 require_object_coercible_x_esm(array);
3726 var args = [assert_is_function_x_esm(callBack)];
3727
3728 if (arguments.length > 2) {
3729 /* eslint-disable-next-line prefer-rest-params,prefer-destructuring */
3730 args[1] = arguments[2];
3731 }
3732
3733 return nativeSome.apply(array, args);
3734}; // ES5 15.4.4.17
3735// http://es5.github.com/#x15.4.4.17
3736// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/some
3737
3738
3739var array_some_x_esm_implementation = function some(array, callBack
3740/* , thisArg */
3741) {
3742 var object = to_object_x_esm(array); // If no callback function or if callback is not a callable function
3743
3744 assert_is_function_x_esm(callBack);
3745
3746 var iteratee = function iteratee() {
3747 /* eslint-disable-next-line prefer-rest-params */
3748 var i = arguments[1];
3749 /* eslint-disable-next-line prefer-rest-params */
3750
3751 if (i in arguments[2]) {
3752 /* eslint-disable-next-line prefer-rest-params,babel/no-invalid-this */
3753 if (callBack.call(this, arguments[0], i, object)) {
3754 return true;
3755 }
3756 }
3757
3758 return false;
3759 };
3760 /* eslint-disable-next-line prefer-rest-params */
3761
3762
3763 return array_any_x_esm(object, iteratee, arguments[2]);
3764};
3765/**
3766 * This method tests whether some element in the array passes the test
3767 * implemented by the provided function.
3768 *
3769 * @param {Array} array - The array to iterate over.
3770 * @param {Function} callBack - Function to test for each element.
3771 * @param {*} [thisArg] - Value to use as this when executing callback.
3772 * @throws {TypeError} If array is null or undefined.
3773 * @throws {TypeError} If callBack is not a function.
3774 * @returns {boolean} `true` if the callback function returns a truthy value for
3775 * any array element; otherwise, `false`.
3776 */
3777
3778var $some = array_some_x_esm_isWorking ? patchedSome : array_some_x_esm_implementation;
3779/* harmony default export */ var array_some_x_esm = ($some);
3780
3781
3782// CONCATENATED MODULE: ./node_modules/array-all-x/dist/array-all-x.esm.js
3783 // eslint-disable jsdoc/check-param-names
3784// noinspection JSCommentMatchesSignature
3785
3786/**
3787 * This method executes a provided function once for each array element.
3788 *
3789 * @function all
3790 * @param {Array} array - The array to iterate over.
3791 * @param {Function} callBack - Function to execute for each element.
3792 * @param {*} [thisArg] - Value to use as this when executing callback.
3793 * @throws {TypeError} If array is null or undefined.
3794 * @throws {TypeError} If callBack is not a function.
3795 */
3796// eslint-enable jsdoc/check-param-names
3797
3798var array_all_x_esm_all = function all(array, callBack
3799/* , thisArg */
3800) {
3801 var iteratee = function iteratee() {
3802 /* eslint-disable-next-line prefer-rest-params,babel/no-invalid-this */
3803 callBack.call(this, arguments[0], arguments[1], arguments[2]);
3804 };
3805 /* eslint-disable-next-line prefer-rest-params */
3806
3807
3808 array_any_x_esm(array, iteratee, arguments[2]);
3809};
3810
3811/* harmony default export */ var array_all_x_esm = (array_all_x_esm_all);
3812
3813
3814// CONCATENATED MODULE: ./node_modules/array-filter-x/dist/array-filter-x.esm.js
3815function array_filter_x_esm_slicedToArray(arr, i) { return array_filter_x_esm_arrayWithHoles(arr) || array_filter_x_esm_iterableToArrayLimit(arr, i) || array_filter_x_esm_nonIterableRest(); }
3816
3817function array_filter_x_esm_nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
3818
3819function array_filter_x_esm_iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
3820
3821function array_filter_x_esm_arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
3822
3823
3824
3825
3826
3827
3828
3829var nf = [].filter;
3830var nativeFilter = typeof nf === 'function' && nf;
3831
3832var array_filter_x_esm_test1 = function test1() {
3833 var spy = 0;
3834 var res = attempt_x_esm.call([1, 2], nativeFilter, function spyAdd1(item) {
3835 spy += item;
3836 return false;
3837 });
3838 return res.threw === false && res.value && res.value.length === 0 && spy === 3;
3839};
3840
3841var array_filter_x_esm_test2 = function test2() {
3842 var spy = '';
3843 var res = attempt_x_esm.call(to_object_x_esm('abc'), nativeFilter, function spyAdd2(item, index) {
3844 spy += item;
3845 return index === 1;
3846 });
3847 return res.threw === false && res.value && res.value.length === 1 && res.value[0] === 'b' && spy === 'abc';
3848};
3849
3850var array_filter_x_esm_test3 = function test3() {
3851 var spy = 0;
3852 var res = attempt_x_esm.call(function getArgs() {
3853 /* eslint-disable-next-line prefer-rest-params */
3854 return arguments;
3855 }(1, 2, 3), nativeFilter, function spyAdd3(item, index) {
3856 spy += item;
3857 return index === 2;
3858 });
3859 return res.threw === false && res.value && res.value.length === 1 && res.value[0] === 3 && spy === 6;
3860};
3861
3862var array_filter_x_esm_test4 = function test4() {
3863 var spy = 0;
3864 var res = attempt_x_esm.call({
3865 0: 1,
3866 1: 2,
3867 3: 3,
3868 4: 4,
3869 length: 4
3870 }, nativeFilter, function spyAdd4(item) {
3871 spy += item;
3872 return false;
3873 });
3874 return res.threw === false && res.value && res.value.length === 0 && spy === 6;
3875};
3876
3877var getTest5Result = function getTest5Result(args) {
3878 var _args = array_filter_x_esm_slicedToArray(args, 3),
3879 res = _args[0],
3880 div = _args[1],
3881 spy = _args[2];
3882
3883 return res.threw === false && res.value && res.value.length === 1 && res.value[0] === div && spy === div;
3884};
3885
3886var array_filter_x_esm_test5 = function test5() {
3887 var doc = typeof document !== 'undefined' && document;
3888
3889 if (doc) {
3890 var spy = null;
3891 var fragment = doc.createDocumentFragment();
3892 var div = doc.createElement('div');
3893 fragment.appendChild(div);
3894 var res = attempt_x_esm.call(fragment.childNodes, nativeFilter, function spyAssign(item) {
3895 spy = item;
3896 return item;
3897 });
3898 return getTest5Result([res, div, spy]);
3899 }
3900
3901 return true;
3902};
3903
3904var array_filter_x_esm_test6 = function test6() {
3905 var isStrict = function returnIsStrict() {
3906 /* eslint-disable-next-line babel/no-invalid-this */
3907 return to_boolean_x_esm(this) === false;
3908 }();
3909
3910 if (isStrict) {
3911 var spy = null;
3912
3913 var testThis = function testThis() {
3914 /* eslint-disable-next-line babel/no-invalid-this */
3915 spy = typeof this === 'string';
3916 };
3917
3918 var res = attempt_x_esm.call([1], nativeFilter, testThis, 'x');
3919 return res.threw === false && res.value && res.value.length === 0 && spy === true;
3920 }
3921
3922 return true;
3923};
3924
3925var array_filter_x_esm_test7 = function test7() {
3926 var spy = {};
3927 var fn = 'return nativeFilter.call("foo", function (_, __, context) {' + 'if (castBoolean(context) === false || typeof context !== "object") {' + 'spy.value = true;}});';
3928 /* eslint-disable-next-line no-new-func */
3929
3930 var res = attempt_x_esm(Function('nativeFilter', 'spy', 'castBoolean', fn), nativeFilter, spy, to_boolean_x_esm);
3931 return res.threw === false && res.value && res.value.length === 0 && spy.value !== true;
3932};
3933
3934var array_filter_x_esm_isWorking = to_boolean_x_esm(nativeFilter) && array_filter_x_esm_test1() && array_filter_x_esm_test2() && array_filter_x_esm_test3() && array_filter_x_esm_test4() && array_filter_x_esm_test5() && array_filter_x_esm_test6() && array_filter_x_esm_test7();
3935
3936var patchedFilter = function filter(array, callBack
3937/* , thisArg */
3938) {
3939 require_object_coercible_x_esm(array);
3940 var args = [assert_is_function_x_esm(callBack)];
3941
3942 if (arguments.length > 2) {
3943 /* eslint-disable-next-line prefer-rest-params,prefer-destructuring */
3944 args[1] = arguments[2];
3945 }
3946
3947 return nativeFilter.apply(array, args);
3948};
3949
3950var array_filter_x_esm_implementation = function filter(array, callBack
3951/* , thisArg */
3952) {
3953 var object = to_object_x_esm(array); // If no callback function or if callback is not a callable function
3954
3955 assert_is_function_x_esm(callBack);
3956 var result = [];
3957
3958 var predicate = function predicate() {
3959 /* eslint-disable-next-line prefer-rest-params */
3960 var i = arguments[1];
3961 /* eslint-disable-next-line prefer-rest-params */
3962
3963 if (i in arguments[2]) {
3964 /* eslint-disable-next-line prefer-rest-params */
3965 var item = arguments[0];
3966 /* eslint-disable-next-line babel/no-invalid-this */
3967
3968 if (callBack.call(this, item, i, object)) {
3969 result[result.length] = item;
3970 }
3971 }
3972 };
3973 /* eslint-disable-next-line prefer-rest-params */
3974
3975
3976 array_all_x_esm(object, predicate, arguments[2]);
3977 return result;
3978};
3979/**
3980 * This method creates a new array with all elements that pass the test
3981 * implemented by the provided function.
3982 *
3983 * @param {Array} array - The array to iterate over.
3984 * @param {Function} callBack - Function is a predicate, to test each element.
3985 * @param {*} [thisArg] - Value to use as this when executing callback.
3986 * @throws {TypeError} If array is null or undefined.
3987 * @throws {TypeError} If callBack is not a function.
3988 * @returns {Array} A new array with the elements that pass the test.
3989 */
3990
3991var $filter = array_filter_x_esm_isWorking ? patchedFilter : array_filter_x_esm_implementation;
3992/* harmony default export */ var array_filter_x_esm = ($filter);
3993
3994
3995// EXTERNAL MODULE: ./node_modules/stable/stable.js
3996var stable = __webpack_require__(7);
3997var stable_default = /*#__PURE__*/__webpack_require__.n(stable);
3998
3999// EXTERNAL MODULE: ./node_modules/object-keys/index.js
4000var object_keys = __webpack_require__(9);
4001var object_keys_default = /*#__PURE__*/__webpack_require__.n(object_keys);
4002
4003// CONCATENATED MODULE: ./node_modules/object-keys-x/dist/object-keys-x.esm.js
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014var object_keys_x_esm_ObjectCtr = {}.constructor;
4015var nativeKeys = typeof object_keys_x_esm_ObjectCtr.keys === 'function' && object_keys_x_esm_ObjectCtr.keys;
4016var object_keys_x_esm_isWorking;
4017var throwsWithNull;
4018var object_keys_x_esm_worksWithPrim;
4019var worksWithRegex;
4020var worksWithArgs;
4021var object_keys_x_esm_worksWithStr;
4022
4023if (nativeKeys) {
4024 var isCorrectRes = function _isCorrectRes(r, length) {
4025 return r.threw === false && is_array_x_esm(r.value) && r.value.length === length;
4026 };
4027
4028 var either = function _either(r, a, b) {
4029 var x = r.value[0];
4030 var y = r.value[1];
4031 return x === a && y === b || x === b && y === a;
4032 };
4033
4034 var testObj = {
4035 a: 1,
4036 b: 2
4037 };
4038 var object_keys_x_esm_res = attempt_x_esm(nativeKeys, testObj);
4039 object_keys_x_esm_isWorking = isCorrectRes(object_keys_x_esm_res, 2) && either(object_keys_x_esm_res, 'a', 'b');
4040
4041 if (object_keys_x_esm_isWorking) {
4042 testObj = Object('a');
4043 testObj.y = 1;
4044 object_keys_x_esm_res = attempt_x_esm(nativeKeys, testObj);
4045 object_keys_x_esm_isWorking = isCorrectRes(object_keys_x_esm_res, 2) && either(object_keys_x_esm_res, '0', 'y');
4046 }
4047
4048 if (object_keys_x_esm_isWorking) {
4049 throwsWithNull = attempt_x_esm(nativeKeys, null).threw;
4050 object_keys_x_esm_worksWithPrim = isCorrectRes(attempt_x_esm(nativeKeys, 42), 0);
4051 worksWithRegex = attempt_x_esm(nativeKeys, /a/g).threw === false;
4052 object_keys_x_esm_res = attempt_x_esm(nativeKeys, function getArgs() {
4053 /* eslint-disable-next-line prefer-rest-params */
4054 return arguments;
4055 }(1, 2));
4056 worksWithArgs = isCorrectRes(object_keys_x_esm_res, 2) && either(object_keys_x_esm_res, '0', '1');
4057 object_keys_x_esm_res = attempt_x_esm(nativeKeys, Object('ab'));
4058 object_keys_x_esm_worksWithStr = isCorrectRes(object_keys_x_esm_res, 2) && either(object_keys_x_esm_res, '0', '1');
4059 }
4060}
4061/**
4062 * This method returns an array of a given object's own enumerable properties,
4063 * in the same order as that provided by a for...in loop (the difference being
4064 * that a for-in loop enumerates properties in the prototype chain as well).
4065 *
4066 * @param {*} obj - The object of which the enumerable own properties are to be returned.
4067 * @returns {Array} An array of strings that represent all the enumerable properties of the given object.
4068 */
4069
4070
4071var objectKeys;
4072
4073if (object_keys_x_esm_isWorking) {
4074 if (throwsWithNull && object_keys_x_esm_worksWithPrim && worksWithRegex && worksWithArgs && object_keys_x_esm_worksWithStr) {
4075 objectKeys = nativeKeys;
4076 } else {
4077 objectKeys = function keys(object) {
4078 var obj = to_object_x_esm ? to_object_x_esm(object) : object;
4079
4080 if (worksWithArgs !== true && is_arguments_default()(obj)) {
4081 obj = array_like_slice_x_esm(obj);
4082 } else if (object_keys_x_esm_worksWithStr !== true && is_string_default()(obj)) {
4083 obj = split_if_boxed_bug_x_esm(obj);
4084 } else if (worksWithRegex !== true && is_regexp_x_esm(obj)) {
4085 var regexKeys = [];
4086 /* eslint-disable-next-line no-restricted-syntax */
4087
4088 for (var key in obj) {
4089 // noinspection JSUnfilteredForInLoop
4090 if (has_own_property_x_esm(obj, key)) {
4091 regexKeys[regexKeys.length] = key;
4092 }
4093 }
4094
4095 return regexKeys;
4096 }
4097
4098 return nativeKeys(obj);
4099 };
4100 }
4101} else {
4102 objectKeys = function keys(object) {
4103 return object_keys_default()(to_object_x_esm(object));
4104 };
4105}
4106
4107var ok = objectKeys;
4108/* harmony default export */ var object_keys_x_esm = (ok);
4109
4110
4111// CONCATENATED MODULE: ./dist/deep-equal-x.esm.js
4112function deep_equal_x_esm_slicedToArray(arr, i) { return deep_equal_x_esm_arrayWithHoles(arr) || deep_equal_x_esm_iterableToArrayLimit(arr, i) || deep_equal_x_esm_nonIterableRest(); }
4113
4114function deep_equal_x_esm_nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
4115
4116function deep_equal_x_esm_iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
4117
4118function deep_equal_x_esm_arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139 // Check failure of by-index access of string characters (IE < 9)
4140// and failure of `0 in boxedString` (Rhino)
4141
4142var hasBoxedStringBug = has_boxed_string_x_esm === false; // Used to detect unsigned integer values.
4143
4144var deep_equal_x_esm_reIsUint = /^(?:0|[1-9]\d*)$/;
4145/* eslint-disable-next-line compat/compat */
4146
4147var hasMapEnumerables = typeof Map === 'function' ? object_keys_x_esm(new Map()) : [];
4148/* eslint-disable-next-line compat/compat */
4149
4150var hasSetEnumerables = typeof Set === 'function' ? object_keys_x_esm(new Set()) : [];
4151var hasErrorEnumerables;
4152
4153try {
4154 // noinspection ExceptionCaughtLocallyJS
4155 throw new Error('a');
4156} catch (e) {
4157 hasErrorEnumerables = object_keys_x_esm(e);
4158}
4159
4160var indexNotFound = -1;
4161var maxSafeIndex = 4294967295; // (2^32)-1
4162
4163/**
4164 * Checks if `value` is a valid string index. Specifically for boxed string
4165 * bug fix and not general purpose.
4166 *
4167 * @private
4168 * @param {*} value - The value to check.
4169 * @returns {boolean} Returns `true` if `value` is valid index, else `false`.
4170 */
4171
4172var deep_equal_x_esm_isIndex = function isIndex(value) {
4173 var num = indexNotFound;
4174
4175 if (deep_equal_x_esm_reIsUint.test(value)) {
4176 num = Number(value);
4177 }
4178
4179 return num > indexNotFound && num % 1 === 0 && num < maxSafeIndex;
4180}; // eslint-disable jsdoc/require-param
4181// noinspection JSCommentMatchesSignature
4182
4183/**
4184 * Get an object's key avoiding boxed string bug. Specifically for boxed
4185 * string bug fix and not general purpose.
4186 *
4187 * @private
4188 * @param {Array|string|object} object - The object to get the `value` from.
4189 * @param {string|number} key - The `key` reference to the `value`.
4190 * @param {boolean} isStr - Is the object a string.
4191 * @param {boolean} isIdx - Is the `key` a character index.
4192 * @returns {*} Returns the `value` referenced by the `key`.
4193 */
4194// eslint-enable jsdoc/require-param
4195
4196
4197var getItem = function getItem(args) {
4198 var _args = deep_equal_x_esm_slicedToArray(args, 4),
4199 object = _args[0],
4200 key = _args[1],
4201 isStr = _args[2],
4202 isIdx = _args[3];
4203
4204 return isStr && isIdx ? object.charAt(key) : object[key];
4205};
4206/**
4207 * Filter `keys` of unwanted Error enumerables. Specifically for Error has
4208 * unwanted enumerables fix and not general purpose.
4209 *
4210 * @private
4211 * @param {Array} keys - The Error object's keys.
4212 * @param {Array} unwanted - The unwanted keys.
4213 * @returns {Array} Returns the filtered keys.
4214 */
4215
4216
4217var deep_equal_x_esm_filterUnwanted = function filterUnwanted(keys, unwanted) {
4218 return unwanted.length ? array_filter_x_esm(keys, function predicate(key) {
4219 return index_of_x_esm(unwanted, key) === indexNotFound;
4220 }) : keys;
4221}; // eslint-disable jsdoc/require-param
4222// noinspection JSCommentMatchesSignature
4223
4224/**
4225 * Tests for deep equality. Primitive values are compared with the equal
4226 * comparison operator ( == ). This only considers enumerable properties.
4227 * It does not test object prototypes, attached symbols, or non-enumerable
4228 * properties. This can lead to some potentially surprising results. If
4229 * `strict` is `true` then Primitive values are compared with the strict
4230 * equal comparison operator ( === ).
4231 *
4232 * @private
4233 * @param {*} actual - First comparison object.
4234 * @param {*} expected - Second comparison object.
4235 * @param {boolean} [strict] - Comparison mode. If set to `true` use `===`.
4236 * @param {object} previousStack - The circular stack.
4237 * @returns {boolean} `true` if `actual` and `expected` are deemed equal,
4238 * otherwise `false`.
4239 */
4240// eslint-enable jsdoc/require-param
4241
4242
4243var deep_equal_x_esm_baseDeepEqual = function baseDeepEqual(args) {
4244 var _args2 = deep_equal_x_esm_slicedToArray(args, 4),
4245 actual = _args2[0],
4246 expected = _args2[1],
4247 strict = _args2[2],
4248 previousStack = _args2[3]; // 7.1. All identical values are equivalent, as determined by ===.
4249
4250
4251 if (actual === expected) {
4252 return true;
4253 }
4254
4255 if (is_buffer_default()(actual) && is_buffer_default()(expected)) {
4256 return actual.length === expected.length && array_some_x_esm(actual, function predicate(item, index) {
4257 return item !== expected[index];
4258 }) === false;
4259 } // 7.2. If the expected value is a Date object, the actual value is
4260 // equivalent if it is also a Date object that refers to the same time.
4261
4262
4263 if (is_date_object_default()(actual) && is_date_object_default()(expected)) {
4264 return actual.getTime() === expected.getTime();
4265 } // 7.3 If the expected value is a RegExp object, the actual value is
4266 // equivalent if it is also a RegExp object with the same `source` and
4267 // properties (`global`, `multiline`, `lastIndex`, `ignoreCase` & `sticky`).
4268
4269
4270 if (is_regexp_x_esm(actual) && is_regexp_x_esm(expected)) {
4271 return actual.toString() === expected.toString() && actual.lastIndex === expected.lastIndex;
4272 } // 7.4. Other pairs that do not both pass typeof value == 'object',
4273 // equivalence is determined by == or strict ===.
4274
4275
4276 if (is_object_default()(actual) === false && is_object_default()(expected) === false) {
4277 if (strict) {
4278 return actual === expected;
4279 } // noinspection EqualityComparisonWithCoercionJS
4280
4281
4282 return actual == expected;
4283 /* eslint-disable-line eqeqeq */
4284 } // 7.5 For all other Object pairs, including Array objects, equivalence is
4285 // determined by having the same number of owned properties (as verified
4286 // with Object.prototype.hasOwnProperty.call), the same set of keys
4287 // (although not necessarily the same order), equivalent values for every
4288 // corresponding key, and an identical 'prototype' property. Note: this
4289 // accounts for both named and indexed properties on Arrays.
4290
4291
4292 if (is_nil_x_esm(actual) || is_nil_x_esm(expected)) {
4293 return false;
4294 }
4295 /* jshint eqnull:false */
4296 // This only considers enumerable properties. It does not test object
4297 // prototypes, attached symbols, or non-enumerable properties. This can
4298 // lead to some potentially surprising results.
4299
4300
4301 if (strict && get_prototype_of_x_esm(actual) !== get_prototype_of_x_esm(expected)) {
4302 return false;
4303 } // if one is actual primitive, the other must be same
4304
4305
4306 if (is_primitive_default()(actual) || is_primitive_default()(expected)) {
4307 return actual === expected;
4308 }
4309
4310 var ka = is_arguments_default()(actual);
4311 var kb = is_arguments_default()(expected);
4312 var aNotB = ka && kb === false;
4313 var bNotA = ka === false && kb;
4314
4315 if (aNotB || bNotA) {
4316 return false;
4317 }
4318
4319 if (ka) {
4320 if (ka.length !== kb.length) {
4321 return false;
4322 }
4323
4324 return baseDeepEqual([array_slice_x_esm(actual), array_slice_x_esm(expected), strict, null]);
4325 }
4326
4327 ka = object_keys_x_esm(actual);
4328 kb = object_keys_x_esm(expected); // having the same number of owned properties (keys incorporates hasOwnProperty)
4329
4330 if (ka.length !== kb.length) {
4331 return false;
4332 }
4333
4334 if (is_object_default()(actual)) {
4335 if (is_error_x_esm(actual)) {
4336 ka = deep_equal_x_esm_filterUnwanted(ka, hasErrorEnumerables);
4337 } else if (is_map_x_esm(actual)) {
4338 ka = deep_equal_x_esm_filterUnwanted(ka, hasMapEnumerables);
4339 } else if (is_set_x_esm(actual)) {
4340 ka = deep_equal_x_esm_filterUnwanted(ka, hasSetEnumerables);
4341 }
4342 }
4343
4344 if (is_object_default()(expected)) {
4345 if (is_error_x_esm(expected)) {
4346 kb = deep_equal_x_esm_filterUnwanted(kb, hasErrorEnumerables);
4347 } else if (is_map_x_esm(expected)) {
4348 kb = deep_equal_x_esm_filterUnwanted(kb, hasMapEnumerables);
4349 } else if (is_set_x_esm(expected)) {
4350 kb = deep_equal_x_esm_filterUnwanted(kb, hasSetEnumerables);
4351 }
4352 } // the same set of keys (although not necessarily the same order),
4353
4354
4355 stable_default.a.inplace(ka);
4356 stable_default.a.inplace(kb);
4357 var aIsString;
4358 var bIsString;
4359
4360 if (hasBoxedStringBug) {
4361 aIsString = is_string_default()(actual);
4362 bIsString = is_string_default()(expected);
4363 } // ~~~cheap key test
4364 // equivalent values for every corresponding key, and
4365 // ~~~possibly expensive deep test
4366
4367
4368 return array_some_x_esm(ka, function predicate(key, index) {
4369 if (key !== kb[index]) {
4370 return true;
4371 }
4372
4373 var isIdx = (aIsString || bIsString) && deep_equal_x_esm_isIndex(key);
4374 var stack = previousStack || [actual];
4375 var item = getItem([actual, key, aIsString, isIdx]);
4376 var isPrim = is_primitive_default()(item);
4377
4378 if (isPrim === false) {
4379 if (index_of_x_esm(stack, item) !== indexNotFound) {
4380 throw new RangeError('Circular object');
4381 }
4382
4383 stack.push(item);
4384 }
4385
4386 var result = baseDeepEqual([item, getItem([expected, key, bIsString, isIdx]), strict, stack]) === false;
4387
4388 if (isPrim === false) {
4389 stack.pop();
4390 }
4391
4392 return result;
4393 }) === false;
4394}; // eslint-enable jsdoc/require-param
4395// noinspection JSCommentMatchesSignature
4396
4397/**
4398 * Tests for deep equality. Primitive values are compared with the equal
4399 * comparison operator ( == ). This only considers enumerable properties.
4400 * It does not test object prototypes, attached symbols, or non-enumerable
4401 * properties. This can lead to some potentially surprising results. If
4402 * `strict` is `true` then Primitive values are compared with the strict
4403 * equal comparison operator ( === ).
4404 *
4405 * @param {*} actual - First comparison object.
4406 * @param {*} expected - Second comparison object.
4407 * @param {boolean} [strict] - Comparison mode. If set to `true` use `===`.
4408 * @returns {boolean} `true` if `actual` and `expected` are deemed equal,
4409 * otherwise `false`.
4410 * @see https://nodejs.org/api/assert.html
4411 */
4412// eslint-disable jsdoc/require-param
4413
4414
4415var deep_equal_x_esm_deepEqual = function deepEqual(actual, expected) {
4416 /* eslint-disable-next-line prefer-rest-params */
4417 return deep_equal_x_esm_baseDeepEqual([actual, expected, to_boolean_x_esm(arguments[2])]);
4418};
4419
4420/* harmony default export */ var deep_equal_x_esm = __webpack_exports__["default"] = (deep_equal_x_esm_deepEqual);
4421
4422
4423
4424/***/ })
4425/******/ ]);
4426});
4427//# sourceMappingURL=deep-equal-x.js.map
\No newline at end of file