UNPKG

107 kBJavaScriptView Raw
1(function (global, factory) {
2 typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('jquery')) :
3 typeof define === 'function' && define.amd ? define(['jquery'], factory) :
4 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.jQuery));
5})(this, (function ($$7) { 'use strict';
6
7 function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
9 var $__default = /*#__PURE__*/_interopDefaultLegacy($$7);
10
11 function _classCallCheck(instance, Constructor) {
12 if (!(instance instanceof Constructor)) {
13 throw new TypeError("Cannot call a class as a function");
14 }
15 }
16
17 function _defineProperties(target, props) {
18 for (var i = 0; i < props.length; i++) {
19 var descriptor = props[i];
20 descriptor.enumerable = descriptor.enumerable || false;
21 descriptor.configurable = true;
22 if ("value" in descriptor) descriptor.writable = true;
23 Object.defineProperty(target, descriptor.key, descriptor);
24 }
25 }
26
27 function _createClass(Constructor, protoProps, staticProps) {
28 if (protoProps) _defineProperties(Constructor.prototype, protoProps);
29 if (staticProps) _defineProperties(Constructor, staticProps);
30 Object.defineProperty(Constructor, "prototype", {
31 writable: false
32 });
33 return Constructor;
34 }
35
36 function _defineProperty(obj, key, value) {
37 if (key in obj) {
38 Object.defineProperty(obj, key, {
39 value: value,
40 enumerable: true,
41 configurable: true,
42 writable: true
43 });
44 } else {
45 obj[key] = value;
46 }
47
48 return obj;
49 }
50
51 function _inherits(subClass, superClass) {
52 if (typeof superClass !== "function" && superClass !== null) {
53 throw new TypeError("Super expression must either be null or a function");
54 }
55
56 subClass.prototype = Object.create(superClass && superClass.prototype, {
57 constructor: {
58 value: subClass,
59 writable: true,
60 configurable: true
61 }
62 });
63 Object.defineProperty(subClass, "prototype", {
64 writable: false
65 });
66 if (superClass) _setPrototypeOf(subClass, superClass);
67 }
68
69 function _getPrototypeOf(o) {
70 _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
71 return o.__proto__ || Object.getPrototypeOf(o);
72 };
73 return _getPrototypeOf(o);
74 }
75
76 function _setPrototypeOf(o, p) {
77 _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
78 o.__proto__ = p;
79 return o;
80 };
81 return _setPrototypeOf(o, p);
82 }
83
84 function _isNativeReflectConstruct() {
85 if (typeof Reflect === "undefined" || !Reflect.construct) return false;
86 if (Reflect.construct.sham) return false;
87 if (typeof Proxy === "function") return true;
88
89 try {
90 Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
91 return true;
92 } catch (e) {
93 return false;
94 }
95 }
96
97 function _assertThisInitialized(self) {
98 if (self === void 0) {
99 throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
100 }
101
102 return self;
103 }
104
105 function _possibleConstructorReturn(self, call) {
106 if (call && (typeof call === "object" || typeof call === "function")) {
107 return call;
108 } else if (call !== void 0) {
109 throw new TypeError("Derived constructors may only return object or undefined");
110 }
111
112 return _assertThisInitialized(self);
113 }
114
115 function _createSuper(Derived) {
116 var hasNativeReflectConstruct = _isNativeReflectConstruct();
117
118 return function _createSuperInternal() {
119 var Super = _getPrototypeOf(Derived),
120 result;
121
122 if (hasNativeReflectConstruct) {
123 var NewTarget = _getPrototypeOf(this).constructor;
124
125 result = Reflect.construct(Super, arguments, NewTarget);
126 } else {
127 result = Super.apply(this, arguments);
128 }
129
130 return _possibleConstructorReturn(this, result);
131 };
132 }
133
134 function _superPropBase(object, property) {
135 while (!Object.prototype.hasOwnProperty.call(object, property)) {
136 object = _getPrototypeOf(object);
137 if (object === null) break;
138 }
139
140 return object;
141 }
142
143 function _get() {
144 if (typeof Reflect !== "undefined" && Reflect.get) {
145 _get = Reflect.get.bind();
146 } else {
147 _get = function _get(target, property, receiver) {
148 var base = _superPropBase(target, property);
149
150 if (!base) return;
151 var desc = Object.getOwnPropertyDescriptor(base, property);
152
153 if (desc.get) {
154 return desc.get.call(arguments.length < 3 ? target : receiver);
155 }
156
157 return desc.value;
158 };
159 }
160
161 return _get.apply(this, arguments);
162 }
163
164 function _unsupportedIterableToArray(o, minLen) {
165 if (!o) return;
166 if (typeof o === "string") return _arrayLikeToArray(o, minLen);
167 var n = Object.prototype.toString.call(o).slice(8, -1);
168 if (n === "Object" && o.constructor) n = o.constructor.name;
169 if (n === "Map" || n === "Set") return Array.from(o);
170 if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
171 }
172
173 function _arrayLikeToArray(arr, len) {
174 if (len == null || len > arr.length) len = arr.length;
175
176 for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
177
178 return arr2;
179 }
180
181 function _createForOfIteratorHelper(o, allowArrayLike) {
182 var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
183
184 if (!it) {
185 if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
186 if (it) o = it;
187 var i = 0;
188
189 var F = function () {};
190
191 return {
192 s: F,
193 n: function () {
194 if (i >= o.length) return {
195 done: true
196 };
197 return {
198 done: false,
199 value: o[i++]
200 };
201 },
202 e: function (e) {
203 throw e;
204 },
205 f: F
206 };
207 }
208
209 throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
210 }
211
212 var normalCompletion = true,
213 didErr = false,
214 err;
215 return {
216 s: function () {
217 it = it.call(o);
218 },
219 n: function () {
220 var step = it.next();
221 normalCompletion = step.done;
222 return step;
223 },
224 e: function (e) {
225 didErr = true;
226 err = e;
227 },
228 f: function () {
229 try {
230 if (!normalCompletion && it.return != null) it.return();
231 } finally {
232 if (didErr) throw err;
233 }
234 }
235 };
236 }
237
238 var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
239
240 var check = function (it) {
241 return it && it.Math == Math && it;
242 };
243
244 // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
245 var global$e =
246 // eslint-disable-next-line es-x/no-global-this -- safe
247 check(typeof globalThis == 'object' && globalThis) ||
248 check(typeof window == 'object' && window) ||
249 // eslint-disable-next-line no-restricted-globals -- safe
250 check(typeof self == 'object' && self) ||
251 check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
252 // eslint-disable-next-line no-new-func -- fallback
253 (function () { return this; })() || Function('return this')();
254
255 var objectGetOwnPropertyDescriptor = {};
256
257 var fails$j = function (exec) {
258 try {
259 return !!exec();
260 } catch (error) {
261 return true;
262 }
263 };
264
265 var fails$i = fails$j;
266
267 // Detect IE8's incomplete defineProperty implementation
268 var descriptors = !fails$i(function () {
269 // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing
270 return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
271 });
272
273 var fails$h = fails$j;
274
275 var functionBindNative = !fails$h(function () {
276 // eslint-disable-next-line es-x/no-function-prototype-bind -- safe
277 var test = (function () { /* empty */ }).bind();
278 // eslint-disable-next-line no-prototype-builtins -- safe
279 return typeof test != 'function' || test.hasOwnProperty('prototype');
280 });
281
282 var NATIVE_BIND$3 = functionBindNative;
283
284 var call$a = Function.prototype.call;
285
286 var functionCall = NATIVE_BIND$3 ? call$a.bind(call$a) : function () {
287 return call$a.apply(call$a, arguments);
288 };
289
290 var objectPropertyIsEnumerable = {};
291
292 var $propertyIsEnumerable = {}.propertyIsEnumerable;
293 // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe
294 var getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
295
296 // Nashorn ~ JDK8 bug
297 var NASHORN_BUG = getOwnPropertyDescriptor$1 && !$propertyIsEnumerable.call({ 1: 2 }, 1);
298
299 // `Object.prototype.propertyIsEnumerable` method implementation
300 // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
301 objectPropertyIsEnumerable.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
302 var descriptor = getOwnPropertyDescriptor$1(this, V);
303 return !!descriptor && descriptor.enumerable;
304 } : $propertyIsEnumerable;
305
306 var createPropertyDescriptor$3 = function (bitmap, value) {
307 return {
308 enumerable: !(bitmap & 1),
309 configurable: !(bitmap & 2),
310 writable: !(bitmap & 4),
311 value: value
312 };
313 };
314
315 var NATIVE_BIND$2 = functionBindNative;
316
317 var FunctionPrototype$2 = Function.prototype;
318 var bind$2 = FunctionPrototype$2.bind;
319 var call$9 = FunctionPrototype$2.call;
320 var uncurryThis$l = NATIVE_BIND$2 && bind$2.bind(call$9, call$9);
321
322 var functionUncurryThis = NATIVE_BIND$2 ? function (fn) {
323 return fn && uncurryThis$l(fn);
324 } : function (fn) {
325 return fn && function () {
326 return call$9.apply(fn, arguments);
327 };
328 };
329
330 var uncurryThis$k = functionUncurryThis;
331
332 var toString$7 = uncurryThis$k({}.toString);
333 var stringSlice$5 = uncurryThis$k(''.slice);
334
335 var classofRaw$1 = function (it) {
336 return stringSlice$5(toString$7(it), 8, -1);
337 };
338
339 var uncurryThis$j = functionUncurryThis;
340 var fails$g = fails$j;
341 var classof$7 = classofRaw$1;
342
343 var $Object$3 = Object;
344 var split = uncurryThis$j(''.split);
345
346 // fallback for non-array-like ES3 and non-enumerable old V8 strings
347 var indexedObject = fails$g(function () {
348 // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
349 // eslint-disable-next-line no-prototype-builtins -- safe
350 return !$Object$3('z').propertyIsEnumerable(0);
351 }) ? function (it) {
352 return classof$7(it) == 'String' ? split(it, '') : $Object$3(it);
353 } : $Object$3;
354
355 var $TypeError$8 = TypeError;
356
357 // `RequireObjectCoercible` abstract operation
358 // https://tc39.es/ecma262/#sec-requireobjectcoercible
359 var requireObjectCoercible$5 = function (it) {
360 if (it == undefined) throw $TypeError$8("Can't call method on " + it);
361 return it;
362 };
363
364 // toObject with fallback for non-array-like ES3 strings
365 var IndexedObject$3 = indexedObject;
366 var requireObjectCoercible$4 = requireObjectCoercible$5;
367
368 var toIndexedObject$6 = function (it) {
369 return IndexedObject$3(requireObjectCoercible$4(it));
370 };
371
372 // `IsCallable` abstract operation
373 // https://tc39.es/ecma262/#sec-iscallable
374 var isCallable$e = function (argument) {
375 return typeof argument == 'function';
376 };
377
378 var isCallable$d = isCallable$e;
379
380 var isObject$9 = function (it) {
381 return typeof it == 'object' ? it !== null : isCallable$d(it);
382 };
383
384 var global$d = global$e;
385 var isCallable$c = isCallable$e;
386
387 var aFunction = function (argument) {
388 return isCallable$c(argument) ? argument : undefined;
389 };
390
391 var getBuiltIn$5 = function (namespace, method) {
392 return arguments.length < 2 ? aFunction(global$d[namespace]) : global$d[namespace] && global$d[namespace][method];
393 };
394
395 var uncurryThis$i = functionUncurryThis;
396
397 var objectIsPrototypeOf = uncurryThis$i({}.isPrototypeOf);
398
399 var getBuiltIn$4 = getBuiltIn$5;
400
401 var engineUserAgent = getBuiltIn$4('navigator', 'userAgent') || '';
402
403 var global$c = global$e;
404 var userAgent = engineUserAgent;
405
406 var process = global$c.process;
407 var Deno = global$c.Deno;
408 var versions = process && process.versions || Deno && Deno.version;
409 var v8 = versions && versions.v8;
410 var match, version;
411
412 if (v8) {
413 match = v8.split('.');
414 // in old Chrome, versions of V8 isn't V8 = Chrome / 10
415 // but their correct versions are not interesting for us
416 version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);
417 }
418
419 // BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`
420 // so check `userAgent` even if `.v8` exists, but 0
421 if (!version && userAgent) {
422 match = userAgent.match(/Edge\/(\d+)/);
423 if (!match || match[1] >= 74) {
424 match = userAgent.match(/Chrome\/(\d+)/);
425 if (match) version = +match[1];
426 }
427 }
428
429 var engineV8Version = version;
430
431 /* eslint-disable es-x/no-symbol -- required for testing */
432
433 var V8_VERSION$2 = engineV8Version;
434 var fails$f = fails$j;
435
436 // eslint-disable-next-line es-x/no-object-getownpropertysymbols -- required for testing
437 var nativeSymbol = !!Object.getOwnPropertySymbols && !fails$f(function () {
438 var symbol = Symbol();
439 // Chrome 38 Symbol has incorrect toString conversion
440 // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
441 return !String(symbol) || !(Object(symbol) instanceof Symbol) ||
442 // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
443 !Symbol.sham && V8_VERSION$2 && V8_VERSION$2 < 41;
444 });
445
446 /* eslint-disable es-x/no-symbol -- required for testing */
447
448 var NATIVE_SYMBOL$1 = nativeSymbol;
449
450 var useSymbolAsUid = NATIVE_SYMBOL$1
451 && !Symbol.sham
452 && typeof Symbol.iterator == 'symbol';
453
454 var getBuiltIn$3 = getBuiltIn$5;
455 var isCallable$b = isCallable$e;
456 var isPrototypeOf = objectIsPrototypeOf;
457 var USE_SYMBOL_AS_UID$1 = useSymbolAsUid;
458
459 var $Object$2 = Object;
460
461 var isSymbol$2 = USE_SYMBOL_AS_UID$1 ? function (it) {
462 return typeof it == 'symbol';
463 } : function (it) {
464 var $Symbol = getBuiltIn$3('Symbol');
465 return isCallable$b($Symbol) && isPrototypeOf($Symbol.prototype, $Object$2(it));
466 };
467
468 var $String$2 = String;
469
470 var tryToString$2 = function (argument) {
471 try {
472 return $String$2(argument);
473 } catch (error) {
474 return 'Object';
475 }
476 };
477
478 var isCallable$a = isCallable$e;
479 var tryToString$1 = tryToString$2;
480
481 var $TypeError$7 = TypeError;
482
483 // `Assert: IsCallable(argument) is true`
484 var aCallable$2 = function (argument) {
485 if (isCallable$a(argument)) return argument;
486 throw $TypeError$7(tryToString$1(argument) + ' is not a function');
487 };
488
489 var aCallable$1 = aCallable$2;
490
491 // `GetMethod` abstract operation
492 // https://tc39.es/ecma262/#sec-getmethod
493 var getMethod$3 = function (V, P) {
494 var func = V[P];
495 return func == null ? undefined : aCallable$1(func);
496 };
497
498 var call$8 = functionCall;
499 var isCallable$9 = isCallable$e;
500 var isObject$8 = isObject$9;
501
502 var $TypeError$6 = TypeError;
503
504 // `OrdinaryToPrimitive` abstract operation
505 // https://tc39.es/ecma262/#sec-ordinarytoprimitive
506 var ordinaryToPrimitive$1 = function (input, pref) {
507 var fn, val;
508 if (pref === 'string' && isCallable$9(fn = input.toString) && !isObject$8(val = call$8(fn, input))) return val;
509 if (isCallable$9(fn = input.valueOf) && !isObject$8(val = call$8(fn, input))) return val;
510 if (pref !== 'string' && isCallable$9(fn = input.toString) && !isObject$8(val = call$8(fn, input))) return val;
511 throw $TypeError$6("Can't convert object to primitive value");
512 };
513
514 var shared$4 = {exports: {}};
515
516 var global$b = global$e;
517
518 // eslint-disable-next-line es-x/no-object-defineproperty -- safe
519 var defineProperty$3 = Object.defineProperty;
520
521 var defineGlobalProperty$3 = function (key, value) {
522 try {
523 defineProperty$3(global$b, key, { value: value, configurable: true, writable: true });
524 } catch (error) {
525 global$b[key] = value;
526 } return value;
527 };
528
529 var global$a = global$e;
530 var defineGlobalProperty$2 = defineGlobalProperty$3;
531
532 var SHARED = '__core-js_shared__';
533 var store$3 = global$a[SHARED] || defineGlobalProperty$2(SHARED, {});
534
535 var sharedStore = store$3;
536
537 var store$2 = sharedStore;
538
539 (shared$4.exports = function (key, value) {
540 return store$2[key] || (store$2[key] = value !== undefined ? value : {});
541 })('versions', []).push({
542 version: '3.22.8',
543 mode: 'global',
544 copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',
545 license: 'https://github.com/zloirock/core-js/blob/v3.22.8/LICENSE',
546 source: 'https://github.com/zloirock/core-js'
547 });
548
549 var requireObjectCoercible$3 = requireObjectCoercible$5;
550
551 var $Object$1 = Object;
552
553 // `ToObject` abstract operation
554 // https://tc39.es/ecma262/#sec-toobject
555 var toObject$5 = function (argument) {
556 return $Object$1(requireObjectCoercible$3(argument));
557 };
558
559 var uncurryThis$h = functionUncurryThis;
560 var toObject$4 = toObject$5;
561
562 var hasOwnProperty = uncurryThis$h({}.hasOwnProperty);
563
564 // `HasOwnProperty` abstract operation
565 // https://tc39.es/ecma262/#sec-hasownproperty
566 // eslint-disable-next-line es-x/no-object-hasown -- safe
567 var hasOwnProperty_1 = Object.hasOwn || function hasOwn(it, key) {
568 return hasOwnProperty(toObject$4(it), key);
569 };
570
571 var uncurryThis$g = functionUncurryThis;
572
573 var id = 0;
574 var postfix = Math.random();
575 var toString$6 = uncurryThis$g(1.0.toString);
576
577 var uid$2 = function (key) {
578 return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString$6(++id + postfix, 36);
579 };
580
581 var global$9 = global$e;
582 var shared$3 = shared$4.exports;
583 var hasOwn$6 = hasOwnProperty_1;
584 var uid$1 = uid$2;
585 var NATIVE_SYMBOL = nativeSymbol;
586 var USE_SYMBOL_AS_UID = useSymbolAsUid;
587
588 var WellKnownSymbolsStore = shared$3('wks');
589 var Symbol$1 = global$9.Symbol;
590 var symbolFor = Symbol$1 && Symbol$1['for'];
591 var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid$1;
592
593 var wellKnownSymbol$c = function (name) {
594 if (!hasOwn$6(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {
595 var description = 'Symbol.' + name;
596 if (NATIVE_SYMBOL && hasOwn$6(Symbol$1, name)) {
597 WellKnownSymbolsStore[name] = Symbol$1[name];
598 } else if (USE_SYMBOL_AS_UID && symbolFor) {
599 WellKnownSymbolsStore[name] = symbolFor(description);
600 } else {
601 WellKnownSymbolsStore[name] = createWellKnownSymbol(description);
602 }
603 } return WellKnownSymbolsStore[name];
604 };
605
606 var call$7 = functionCall;
607 var isObject$7 = isObject$9;
608 var isSymbol$1 = isSymbol$2;
609 var getMethod$2 = getMethod$3;
610 var ordinaryToPrimitive = ordinaryToPrimitive$1;
611 var wellKnownSymbol$b = wellKnownSymbol$c;
612
613 var $TypeError$5 = TypeError;
614 var TO_PRIMITIVE = wellKnownSymbol$b('toPrimitive');
615
616 // `ToPrimitive` abstract operation
617 // https://tc39.es/ecma262/#sec-toprimitive
618 var toPrimitive$1 = function (input, pref) {
619 if (!isObject$7(input) || isSymbol$1(input)) return input;
620 var exoticToPrim = getMethod$2(input, TO_PRIMITIVE);
621 var result;
622 if (exoticToPrim) {
623 if (pref === undefined) pref = 'default';
624 result = call$7(exoticToPrim, input, pref);
625 if (!isObject$7(result) || isSymbol$1(result)) return result;
626 throw $TypeError$5("Can't convert object to primitive value");
627 }
628 if (pref === undefined) pref = 'number';
629 return ordinaryToPrimitive(input, pref);
630 };
631
632 var toPrimitive = toPrimitive$1;
633 var isSymbol = isSymbol$2;
634
635 // `ToPropertyKey` abstract operation
636 // https://tc39.es/ecma262/#sec-topropertykey
637 var toPropertyKey$3 = function (argument) {
638 var key = toPrimitive(argument, 'string');
639 return isSymbol(key) ? key : key + '';
640 };
641
642 var global$8 = global$e;
643 var isObject$6 = isObject$9;
644
645 var document$1 = global$8.document;
646 // typeof document.createElement is 'object' in old IE
647 var EXISTS$1 = isObject$6(document$1) && isObject$6(document$1.createElement);
648
649 var documentCreateElement$2 = function (it) {
650 return EXISTS$1 ? document$1.createElement(it) : {};
651 };
652
653 var DESCRIPTORS$8 = descriptors;
654 var fails$e = fails$j;
655 var createElement = documentCreateElement$2;
656
657 // Thanks to IE8 for its funny defineProperty
658 var ie8DomDefine = !DESCRIPTORS$8 && !fails$e(function () {
659 // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing
660 return Object.defineProperty(createElement('div'), 'a', {
661 get: function () { return 7; }
662 }).a != 7;
663 });
664
665 var DESCRIPTORS$7 = descriptors;
666 var call$6 = functionCall;
667 var propertyIsEnumerableModule$1 = objectPropertyIsEnumerable;
668 var createPropertyDescriptor$2 = createPropertyDescriptor$3;
669 var toIndexedObject$5 = toIndexedObject$6;
670 var toPropertyKey$2 = toPropertyKey$3;
671 var hasOwn$5 = hasOwnProperty_1;
672 var IE8_DOM_DEFINE$1 = ie8DomDefine;
673
674 // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe
675 var $getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
676
677 // `Object.getOwnPropertyDescriptor` method
678 // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
679 objectGetOwnPropertyDescriptor.f = DESCRIPTORS$7 ? $getOwnPropertyDescriptor$1 : function getOwnPropertyDescriptor(O, P) {
680 O = toIndexedObject$5(O);
681 P = toPropertyKey$2(P);
682 if (IE8_DOM_DEFINE$1) try {
683 return $getOwnPropertyDescriptor$1(O, P);
684 } catch (error) { /* empty */ }
685 if (hasOwn$5(O, P)) return createPropertyDescriptor$2(!call$6(propertyIsEnumerableModule$1.f, O, P), O[P]);
686 };
687
688 var objectDefineProperty = {};
689
690 var DESCRIPTORS$6 = descriptors;
691 var fails$d = fails$j;
692
693 // V8 ~ Chrome 36-
694 // https://bugs.chromium.org/p/v8/issues/detail?id=3334
695 var v8PrototypeDefineBug = DESCRIPTORS$6 && fails$d(function () {
696 // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing
697 return Object.defineProperty(function () { /* empty */ }, 'prototype', {
698 value: 42,
699 writable: false
700 }).prototype != 42;
701 });
702
703 var isObject$5 = isObject$9;
704
705 var $String$1 = String;
706 var $TypeError$4 = TypeError;
707
708 // `Assert: Type(argument) is Object`
709 var anObject$9 = function (argument) {
710 if (isObject$5(argument)) return argument;
711 throw $TypeError$4($String$1(argument) + ' is not an object');
712 };
713
714 var DESCRIPTORS$5 = descriptors;
715 var IE8_DOM_DEFINE = ie8DomDefine;
716 var V8_PROTOTYPE_DEFINE_BUG$1 = v8PrototypeDefineBug;
717 var anObject$8 = anObject$9;
718 var toPropertyKey$1 = toPropertyKey$3;
719
720 var $TypeError$3 = TypeError;
721 // eslint-disable-next-line es-x/no-object-defineproperty -- safe
722 var $defineProperty = Object.defineProperty;
723 // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe
724 var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
725 var ENUMERABLE = 'enumerable';
726 var CONFIGURABLE$1 = 'configurable';
727 var WRITABLE = 'writable';
728
729 // `Object.defineProperty` method
730 // https://tc39.es/ecma262/#sec-object.defineproperty
731 objectDefineProperty.f = DESCRIPTORS$5 ? V8_PROTOTYPE_DEFINE_BUG$1 ? function defineProperty(O, P, Attributes) {
732 anObject$8(O);
733 P = toPropertyKey$1(P);
734 anObject$8(Attributes);
735 if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
736 var current = $getOwnPropertyDescriptor(O, P);
737 if (current && current[WRITABLE]) {
738 O[P] = Attributes.value;
739 Attributes = {
740 configurable: CONFIGURABLE$1 in Attributes ? Attributes[CONFIGURABLE$1] : current[CONFIGURABLE$1],
741 enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],
742 writable: false
743 };
744 }
745 } return $defineProperty(O, P, Attributes);
746 } : $defineProperty : function defineProperty(O, P, Attributes) {
747 anObject$8(O);
748 P = toPropertyKey$1(P);
749 anObject$8(Attributes);
750 if (IE8_DOM_DEFINE) try {
751 return $defineProperty(O, P, Attributes);
752 } catch (error) { /* empty */ }
753 if ('get' in Attributes || 'set' in Attributes) throw $TypeError$3('Accessors not supported');
754 if ('value' in Attributes) O[P] = Attributes.value;
755 return O;
756 };
757
758 var DESCRIPTORS$4 = descriptors;
759 var definePropertyModule$3 = objectDefineProperty;
760 var createPropertyDescriptor$1 = createPropertyDescriptor$3;
761
762 var createNonEnumerableProperty$5 = DESCRIPTORS$4 ? function (object, key, value) {
763 return definePropertyModule$3.f(object, key, createPropertyDescriptor$1(1, value));
764 } : function (object, key, value) {
765 object[key] = value;
766 return object;
767 };
768
769 var makeBuiltIn$2 = {exports: {}};
770
771 var DESCRIPTORS$3 = descriptors;
772 var hasOwn$4 = hasOwnProperty_1;
773
774 var FunctionPrototype$1 = Function.prototype;
775 // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe
776 var getDescriptor = DESCRIPTORS$3 && Object.getOwnPropertyDescriptor;
777
778 var EXISTS = hasOwn$4(FunctionPrototype$1, 'name');
779 // additional protection from minified / mangled / dropped function names
780 var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';
781 var CONFIGURABLE = EXISTS && (!DESCRIPTORS$3 || (DESCRIPTORS$3 && getDescriptor(FunctionPrototype$1, 'name').configurable));
782
783 var functionName = {
784 EXISTS: EXISTS,
785 PROPER: PROPER,
786 CONFIGURABLE: CONFIGURABLE
787 };
788
789 var uncurryThis$f = functionUncurryThis;
790 var isCallable$8 = isCallable$e;
791 var store$1 = sharedStore;
792
793 var functionToString = uncurryThis$f(Function.toString);
794
795 // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
796 if (!isCallable$8(store$1.inspectSource)) {
797 store$1.inspectSource = function (it) {
798 return functionToString(it);
799 };
800 }
801
802 var inspectSource$3 = store$1.inspectSource;
803
804 var global$7 = global$e;
805 var isCallable$7 = isCallable$e;
806 var inspectSource$2 = inspectSource$3;
807
808 var WeakMap$1 = global$7.WeakMap;
809
810 var nativeWeakMap = isCallable$7(WeakMap$1) && /native code/.test(inspectSource$2(WeakMap$1));
811
812 var shared$2 = shared$4.exports;
813 var uid = uid$2;
814
815 var keys = shared$2('keys');
816
817 var sharedKey$2 = function (key) {
818 return keys[key] || (keys[key] = uid(key));
819 };
820
821 var hiddenKeys$4 = {};
822
823 var NATIVE_WEAK_MAP = nativeWeakMap;
824 var global$6 = global$e;
825 var uncurryThis$e = functionUncurryThis;
826 var isObject$4 = isObject$9;
827 var createNonEnumerableProperty$4 = createNonEnumerableProperty$5;
828 var hasOwn$3 = hasOwnProperty_1;
829 var shared$1 = sharedStore;
830 var sharedKey$1 = sharedKey$2;
831 var hiddenKeys$3 = hiddenKeys$4;
832
833 var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
834 var TypeError$1 = global$6.TypeError;
835 var WeakMap = global$6.WeakMap;
836 var set, get, has;
837
838 var enforce = function (it) {
839 return has(it) ? get(it) : set(it, {});
840 };
841
842 var getterFor = function (TYPE) {
843 return function (it) {
844 var state;
845 if (!isObject$4(it) || (state = get(it)).type !== TYPE) {
846 throw TypeError$1('Incompatible receiver, ' + TYPE + ' required');
847 } return state;
848 };
849 };
850
851 if (NATIVE_WEAK_MAP || shared$1.state) {
852 var store = shared$1.state || (shared$1.state = new WeakMap());
853 var wmget = uncurryThis$e(store.get);
854 var wmhas = uncurryThis$e(store.has);
855 var wmset = uncurryThis$e(store.set);
856 set = function (it, metadata) {
857 if (wmhas(store, it)) throw new TypeError$1(OBJECT_ALREADY_INITIALIZED);
858 metadata.facade = it;
859 wmset(store, it, metadata);
860 return metadata;
861 };
862 get = function (it) {
863 return wmget(store, it) || {};
864 };
865 has = function (it) {
866 return wmhas(store, it);
867 };
868 } else {
869 var STATE = sharedKey$1('state');
870 hiddenKeys$3[STATE] = true;
871 set = function (it, metadata) {
872 if (hasOwn$3(it, STATE)) throw new TypeError$1(OBJECT_ALREADY_INITIALIZED);
873 metadata.facade = it;
874 createNonEnumerableProperty$4(it, STATE, metadata);
875 return metadata;
876 };
877 get = function (it) {
878 return hasOwn$3(it, STATE) ? it[STATE] : {};
879 };
880 has = function (it) {
881 return hasOwn$3(it, STATE);
882 };
883 }
884
885 var internalState = {
886 set: set,
887 get: get,
888 has: has,
889 enforce: enforce,
890 getterFor: getterFor
891 };
892
893 var fails$c = fails$j;
894 var isCallable$6 = isCallable$e;
895 var hasOwn$2 = hasOwnProperty_1;
896 var DESCRIPTORS$2 = descriptors;
897 var CONFIGURABLE_FUNCTION_NAME = functionName.CONFIGURABLE;
898 var inspectSource$1 = inspectSource$3;
899 var InternalStateModule = internalState;
900
901 var enforceInternalState = InternalStateModule.enforce;
902 var getInternalState$1 = InternalStateModule.get;
903 // eslint-disable-next-line es-x/no-object-defineproperty -- safe
904 var defineProperty$2 = Object.defineProperty;
905
906 var CONFIGURABLE_LENGTH = DESCRIPTORS$2 && !fails$c(function () {
907 return defineProperty$2(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
908 });
909
910 var TEMPLATE = String(String).split('String');
911
912 var makeBuiltIn$1 = makeBuiltIn$2.exports = function (value, name, options) {
913 if (String(name).slice(0, 7) === 'Symbol(') {
914 name = '[' + String(name).replace(/^Symbol\(([^)]*)\)/, '$1') + ']';
915 }
916 if (options && options.getter) name = 'get ' + name;
917 if (options && options.setter) name = 'set ' + name;
918 if (!hasOwn$2(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {
919 defineProperty$2(value, 'name', { value: name, configurable: true });
920 }
921 if (CONFIGURABLE_LENGTH && options && hasOwn$2(options, 'arity') && value.length !== options.arity) {
922 defineProperty$2(value, 'length', { value: options.arity });
923 }
924 try {
925 if (options && hasOwn$2(options, 'constructor') && options.constructor) {
926 if (DESCRIPTORS$2) defineProperty$2(value, 'prototype', { writable: false });
927 // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable
928 } else if (value.prototype) value.prototype = undefined;
929 } catch (error) { /* empty */ }
930 var state = enforceInternalState(value);
931 if (!hasOwn$2(state, 'source')) {
932 state.source = TEMPLATE.join(typeof name == 'string' ? name : '');
933 } return value;
934 };
935
936 // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
937 // eslint-disable-next-line no-extend-native -- required
938 Function.prototype.toString = makeBuiltIn$1(function toString() {
939 return isCallable$6(this) && getInternalState$1(this).source || inspectSource$1(this);
940 }, 'toString');
941
942 var isCallable$5 = isCallable$e;
943 var createNonEnumerableProperty$3 = createNonEnumerableProperty$5;
944 var makeBuiltIn = makeBuiltIn$2.exports;
945 var defineGlobalProperty$1 = defineGlobalProperty$3;
946
947 var defineBuiltIn$3 = function (O, key, value, options) {
948 if (!options) options = {};
949 var simple = options.enumerable;
950 var name = options.name !== undefined ? options.name : key;
951 if (isCallable$5(value)) makeBuiltIn(value, name, options);
952 if (options.global) {
953 if (simple) O[key] = value;
954 else defineGlobalProperty$1(key, value);
955 } else {
956 if (!options.unsafe) delete O[key];
957 else if (O[key]) simple = true;
958 if (simple) O[key] = value;
959 else createNonEnumerableProperty$3(O, key, value);
960 } return O;
961 };
962
963 var objectGetOwnPropertyNames = {};
964
965 var ceil = Math.ceil;
966 var floor$1 = Math.floor;
967
968 // `Math.trunc` method
969 // https://tc39.es/ecma262/#sec-math.trunc
970 // eslint-disable-next-line es-x/no-math-trunc -- safe
971 var mathTrunc = Math.trunc || function trunc(x) {
972 var n = +x;
973 return (n > 0 ? floor$1 : ceil)(n);
974 };
975
976 var trunc = mathTrunc;
977
978 // `ToIntegerOrInfinity` abstract operation
979 // https://tc39.es/ecma262/#sec-tointegerorinfinity
980 var toIntegerOrInfinity$4 = function (argument) {
981 var number = +argument;
982 // eslint-disable-next-line no-self-compare -- NaN check
983 return number !== number || number === 0 ? 0 : trunc(number);
984 };
985
986 var toIntegerOrInfinity$3 = toIntegerOrInfinity$4;
987
988 var max$3 = Math.max;
989 var min$3 = Math.min;
990
991 // Helper for a popular repeating case of the spec:
992 // Let integer be ? ToInteger(index).
993 // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
994 var toAbsoluteIndex$3 = function (index, length) {
995 var integer = toIntegerOrInfinity$3(index);
996 return integer < 0 ? max$3(integer + length, 0) : min$3(integer, length);
997 };
998
999 var toIntegerOrInfinity$2 = toIntegerOrInfinity$4;
1000
1001 var min$2 = Math.min;
1002
1003 // `ToLength` abstract operation
1004 // https://tc39.es/ecma262/#sec-tolength
1005 var toLength$3 = function (argument) {
1006 return argument > 0 ? min$2(toIntegerOrInfinity$2(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
1007 };
1008
1009 var toLength$2 = toLength$3;
1010
1011 // `LengthOfArrayLike` abstract operation
1012 // https://tc39.es/ecma262/#sec-lengthofarraylike
1013 var lengthOfArrayLike$5 = function (obj) {
1014 return toLength$2(obj.length);
1015 };
1016
1017 var toIndexedObject$4 = toIndexedObject$6;
1018 var toAbsoluteIndex$2 = toAbsoluteIndex$3;
1019 var lengthOfArrayLike$4 = lengthOfArrayLike$5;
1020
1021 // `Array.prototype.{ indexOf, includes }` methods implementation
1022 var createMethod$2 = function (IS_INCLUDES) {
1023 return function ($this, el, fromIndex) {
1024 var O = toIndexedObject$4($this);
1025 var length = lengthOfArrayLike$4(O);
1026 var index = toAbsoluteIndex$2(fromIndex, length);
1027 var value;
1028 // Array#includes uses SameValueZero equality algorithm
1029 // eslint-disable-next-line no-self-compare -- NaN check
1030 if (IS_INCLUDES && el != el) while (length > index) {
1031 value = O[index++];
1032 // eslint-disable-next-line no-self-compare -- NaN check
1033 if (value != value) return true;
1034 // Array#indexOf ignores holes, Array#includes - not
1035 } else for (;length > index; index++) {
1036 if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
1037 } return !IS_INCLUDES && -1;
1038 };
1039 };
1040
1041 var arrayIncludes = {
1042 // `Array.prototype.includes` method
1043 // https://tc39.es/ecma262/#sec-array.prototype.includes
1044 includes: createMethod$2(true),
1045 // `Array.prototype.indexOf` method
1046 // https://tc39.es/ecma262/#sec-array.prototype.indexof
1047 indexOf: createMethod$2(false)
1048 };
1049
1050 var uncurryThis$d = functionUncurryThis;
1051 var hasOwn$1 = hasOwnProperty_1;
1052 var toIndexedObject$3 = toIndexedObject$6;
1053 var indexOf$1 = arrayIncludes.indexOf;
1054 var hiddenKeys$2 = hiddenKeys$4;
1055
1056 var push$3 = uncurryThis$d([].push);
1057
1058 var objectKeysInternal = function (object, names) {
1059 var O = toIndexedObject$3(object);
1060 var i = 0;
1061 var result = [];
1062 var key;
1063 for (key in O) !hasOwn$1(hiddenKeys$2, key) && hasOwn$1(O, key) && push$3(result, key);
1064 // Don't enum bug & hidden keys
1065 while (names.length > i) if (hasOwn$1(O, key = names[i++])) {
1066 ~indexOf$1(result, key) || push$3(result, key);
1067 }
1068 return result;
1069 };
1070
1071 // IE8- don't enum bug keys
1072 var enumBugKeys$3 = [
1073 'constructor',
1074 'hasOwnProperty',
1075 'isPrototypeOf',
1076 'propertyIsEnumerable',
1077 'toLocaleString',
1078 'toString',
1079 'valueOf'
1080 ];
1081
1082 var internalObjectKeys$1 = objectKeysInternal;
1083 var enumBugKeys$2 = enumBugKeys$3;
1084
1085 var hiddenKeys$1 = enumBugKeys$2.concat('length', 'prototype');
1086
1087 // `Object.getOwnPropertyNames` method
1088 // https://tc39.es/ecma262/#sec-object.getownpropertynames
1089 // eslint-disable-next-line es-x/no-object-getownpropertynames -- safe
1090 objectGetOwnPropertyNames.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
1091 return internalObjectKeys$1(O, hiddenKeys$1);
1092 };
1093
1094 var objectGetOwnPropertySymbols = {};
1095
1096 // eslint-disable-next-line es-x/no-object-getownpropertysymbols -- safe
1097 objectGetOwnPropertySymbols.f = Object.getOwnPropertySymbols;
1098
1099 var getBuiltIn$2 = getBuiltIn$5;
1100 var uncurryThis$c = functionUncurryThis;
1101 var getOwnPropertyNamesModule = objectGetOwnPropertyNames;
1102 var getOwnPropertySymbolsModule$1 = objectGetOwnPropertySymbols;
1103 var anObject$7 = anObject$9;
1104
1105 var concat$2 = uncurryThis$c([].concat);
1106
1107 // all object keys, includes non-enumerable and symbols
1108 var ownKeys$1 = getBuiltIn$2('Reflect', 'ownKeys') || function ownKeys(it) {
1109 var keys = getOwnPropertyNamesModule.f(anObject$7(it));
1110 var getOwnPropertySymbols = getOwnPropertySymbolsModule$1.f;
1111 return getOwnPropertySymbols ? concat$2(keys, getOwnPropertySymbols(it)) : keys;
1112 };
1113
1114 var hasOwn = hasOwnProperty_1;
1115 var ownKeys = ownKeys$1;
1116 var getOwnPropertyDescriptorModule = objectGetOwnPropertyDescriptor;
1117 var definePropertyModule$2 = objectDefineProperty;
1118
1119 var copyConstructorProperties$1 = function (target, source, exceptions) {
1120 var keys = ownKeys(source);
1121 var defineProperty = definePropertyModule$2.f;
1122 var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
1123 for (var i = 0; i < keys.length; i++) {
1124 var key = keys[i];
1125 if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {
1126 defineProperty(target, key, getOwnPropertyDescriptor(source, key));
1127 }
1128 }
1129 };
1130
1131 var fails$b = fails$j;
1132 var isCallable$4 = isCallable$e;
1133
1134 var replacement = /#|\.prototype\./;
1135
1136 var isForced$1 = function (feature, detection) {
1137 var value = data[normalize(feature)];
1138 return value == POLYFILL ? true
1139 : value == NATIVE ? false
1140 : isCallable$4(detection) ? fails$b(detection)
1141 : !!detection;
1142 };
1143
1144 var normalize = isForced$1.normalize = function (string) {
1145 return String(string).replace(replacement, '.').toLowerCase();
1146 };
1147
1148 var data = isForced$1.data = {};
1149 var NATIVE = isForced$1.NATIVE = 'N';
1150 var POLYFILL = isForced$1.POLYFILL = 'P';
1151
1152 var isForced_1 = isForced$1;
1153
1154 var global$5 = global$e;
1155 var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
1156 var createNonEnumerableProperty$2 = createNonEnumerableProperty$5;
1157 var defineBuiltIn$2 = defineBuiltIn$3;
1158 var defineGlobalProperty = defineGlobalProperty$3;
1159 var copyConstructorProperties = copyConstructorProperties$1;
1160 var isForced = isForced_1;
1161
1162 /*
1163 options.target - name of the target object
1164 options.global - target is the global object
1165 options.stat - export as static methods of target
1166 options.proto - export as prototype methods of target
1167 options.real - real prototype method for the `pure` version
1168 options.forced - export even if the native feature is available
1169 options.bind - bind methods to the target, required for the `pure` version
1170 options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
1171 options.unsafe - use the simple assignment of property instead of delete + defineProperty
1172 options.sham - add a flag to not completely full polyfills
1173 options.enumerable - export as enumerable property
1174 options.dontCallGetSet - prevent calling a getter on target
1175 options.name - the .name of the function if it does not match the key
1176 */
1177 var _export = function (options, source) {
1178 var TARGET = options.target;
1179 var GLOBAL = options.global;
1180 var STATIC = options.stat;
1181 var FORCED, target, key, targetProperty, sourceProperty, descriptor;
1182 if (GLOBAL) {
1183 target = global$5;
1184 } else if (STATIC) {
1185 target = global$5[TARGET] || defineGlobalProperty(TARGET, {});
1186 } else {
1187 target = (global$5[TARGET] || {}).prototype;
1188 }
1189 if (target) for (key in source) {
1190 sourceProperty = source[key];
1191 if (options.dontCallGetSet) {
1192 descriptor = getOwnPropertyDescriptor(target, key);
1193 targetProperty = descriptor && descriptor.value;
1194 } else targetProperty = target[key];
1195 FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
1196 // contained in target
1197 if (!FORCED && targetProperty !== undefined) {
1198 if (typeof sourceProperty == typeof targetProperty) continue;
1199 copyConstructorProperties(sourceProperty, targetProperty);
1200 }
1201 // add a flag to not completely full polyfills
1202 if (options.sham || (targetProperty && targetProperty.sham)) {
1203 createNonEnumerableProperty$2(sourceProperty, 'sham', true);
1204 }
1205 defineBuiltIn$2(target, key, sourceProperty, options);
1206 }
1207 };
1208
1209 var wellKnownSymbol$a = wellKnownSymbol$c;
1210
1211 var TO_STRING_TAG$1 = wellKnownSymbol$a('toStringTag');
1212 var test = {};
1213
1214 test[TO_STRING_TAG$1] = 'z';
1215
1216 var toStringTagSupport = String(test) === '[object z]';
1217
1218 var TO_STRING_TAG_SUPPORT$2 = toStringTagSupport;
1219 var isCallable$3 = isCallable$e;
1220 var classofRaw = classofRaw$1;
1221 var wellKnownSymbol$9 = wellKnownSymbol$c;
1222
1223 var TO_STRING_TAG = wellKnownSymbol$9('toStringTag');
1224 var $Object = Object;
1225
1226 // ES3 wrong here
1227 var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
1228
1229 // fallback for IE11 Script Access Denied error
1230 var tryGet = function (it, key) {
1231 try {
1232 return it[key];
1233 } catch (error) { /* empty */ }
1234 };
1235
1236 // getting tag from ES6+ `Object.prototype.toString`
1237 var classof$6 = TO_STRING_TAG_SUPPORT$2 ? classofRaw : function (it) {
1238 var O, tag, result;
1239 return it === undefined ? 'Undefined' : it === null ? 'Null'
1240 // @@toStringTag case
1241 : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag
1242 // builtinTag case
1243 : CORRECT_ARGUMENTS ? classofRaw(O)
1244 // ES3 arguments fallback
1245 : (result = classofRaw(O)) == 'Object' && isCallable$3(O.callee) ? 'Arguments' : result;
1246 };
1247
1248 var classof$5 = classof$6;
1249
1250 var $String = String;
1251
1252 var toString$5 = function (argument) {
1253 if (classof$5(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');
1254 return $String(argument);
1255 };
1256
1257 var anObject$6 = anObject$9;
1258
1259 // `RegExp.prototype.flags` getter implementation
1260 // https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
1261 var regexpFlags$1 = function () {
1262 var that = anObject$6(this);
1263 var result = '';
1264 if (that.hasIndices) result += 'd';
1265 if (that.global) result += 'g';
1266 if (that.ignoreCase) result += 'i';
1267 if (that.multiline) result += 'm';
1268 if (that.dotAll) result += 's';
1269 if (that.unicode) result += 'u';
1270 if (that.sticky) result += 'y';
1271 return result;
1272 };
1273
1274 var fails$a = fails$j;
1275 var global$4 = global$e;
1276
1277 // babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
1278 var $RegExp$2 = global$4.RegExp;
1279
1280 var UNSUPPORTED_Y$2 = fails$a(function () {
1281 var re = $RegExp$2('a', 'y');
1282 re.lastIndex = 2;
1283 return re.exec('abcd') != null;
1284 });
1285
1286 // UC Browser bug
1287 // https://github.com/zloirock/core-js/issues/1008
1288 var MISSED_STICKY = UNSUPPORTED_Y$2 || fails$a(function () {
1289 return !$RegExp$2('a', 'y').sticky;
1290 });
1291
1292 var BROKEN_CARET = UNSUPPORTED_Y$2 || fails$a(function () {
1293 // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
1294 var re = $RegExp$2('^r', 'gy');
1295 re.lastIndex = 2;
1296 return re.exec('str') != null;
1297 });
1298
1299 var regexpStickyHelpers = {
1300 BROKEN_CARET: BROKEN_CARET,
1301 MISSED_STICKY: MISSED_STICKY,
1302 UNSUPPORTED_Y: UNSUPPORTED_Y$2
1303 };
1304
1305 var objectDefineProperties = {};
1306
1307 var internalObjectKeys = objectKeysInternal;
1308 var enumBugKeys$1 = enumBugKeys$3;
1309
1310 // `Object.keys` method
1311 // https://tc39.es/ecma262/#sec-object.keys
1312 // eslint-disable-next-line es-x/no-object-keys -- safe
1313 var objectKeys$2 = Object.keys || function keys(O) {
1314 return internalObjectKeys(O, enumBugKeys$1);
1315 };
1316
1317 var DESCRIPTORS$1 = descriptors;
1318 var V8_PROTOTYPE_DEFINE_BUG = v8PrototypeDefineBug;
1319 var definePropertyModule$1 = objectDefineProperty;
1320 var anObject$5 = anObject$9;
1321 var toIndexedObject$2 = toIndexedObject$6;
1322 var objectKeys$1 = objectKeys$2;
1323
1324 // `Object.defineProperties` method
1325 // https://tc39.es/ecma262/#sec-object.defineproperties
1326 // eslint-disable-next-line es-x/no-object-defineproperties -- safe
1327 objectDefineProperties.f = DESCRIPTORS$1 && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {
1328 anObject$5(O);
1329 var props = toIndexedObject$2(Properties);
1330 var keys = objectKeys$1(Properties);
1331 var length = keys.length;
1332 var index = 0;
1333 var key;
1334 while (length > index) definePropertyModule$1.f(O, key = keys[index++], props[key]);
1335 return O;
1336 };
1337
1338 var getBuiltIn$1 = getBuiltIn$5;
1339
1340 var html$1 = getBuiltIn$1('document', 'documentElement');
1341
1342 /* global ActiveXObject -- old IE, WSH */
1343
1344 var anObject$4 = anObject$9;
1345 var definePropertiesModule = objectDefineProperties;
1346 var enumBugKeys = enumBugKeys$3;
1347 var hiddenKeys = hiddenKeys$4;
1348 var html = html$1;
1349 var documentCreateElement$1 = documentCreateElement$2;
1350 var sharedKey = sharedKey$2;
1351
1352 var GT = '>';
1353 var LT = '<';
1354 var PROTOTYPE = 'prototype';
1355 var SCRIPT = 'script';
1356 var IE_PROTO = sharedKey('IE_PROTO');
1357
1358 var EmptyConstructor = function () { /* empty */ };
1359
1360 var scriptTag = function (content) {
1361 return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
1362 };
1363
1364 // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
1365 var NullProtoObjectViaActiveX = function (activeXDocument) {
1366 activeXDocument.write(scriptTag(''));
1367 activeXDocument.close();
1368 var temp = activeXDocument.parentWindow.Object;
1369 activeXDocument = null; // avoid memory leak
1370 return temp;
1371 };
1372
1373 // Create object with fake `null` prototype: use iframe Object with cleared prototype
1374 var NullProtoObjectViaIFrame = function () {
1375 // Thrash, waste and sodomy: IE GC bug
1376 var iframe = documentCreateElement$1('iframe');
1377 var JS = 'java' + SCRIPT + ':';
1378 var iframeDocument;
1379 iframe.style.display = 'none';
1380 html.appendChild(iframe);
1381 // https://github.com/zloirock/core-js/issues/475
1382 iframe.src = String(JS);
1383 iframeDocument = iframe.contentWindow.document;
1384 iframeDocument.open();
1385 iframeDocument.write(scriptTag('document.F=Object'));
1386 iframeDocument.close();
1387 return iframeDocument.F;
1388 };
1389
1390 // Check for document.domain and active x support
1391 // No need to use active x approach when document.domain is not set
1392 // see https://github.com/es-shims/es5-shim/issues/150
1393 // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
1394 // avoid IE GC bug
1395 var activeXDocument;
1396 var NullProtoObject = function () {
1397 try {
1398 activeXDocument = new ActiveXObject('htmlfile');
1399 } catch (error) { /* ignore */ }
1400 NullProtoObject = typeof document != 'undefined'
1401 ? document.domain && activeXDocument
1402 ? NullProtoObjectViaActiveX(activeXDocument) // old IE
1403 : NullProtoObjectViaIFrame()
1404 : NullProtoObjectViaActiveX(activeXDocument); // WSH
1405 var length = enumBugKeys.length;
1406 while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
1407 return NullProtoObject();
1408 };
1409
1410 hiddenKeys[IE_PROTO] = true;
1411
1412 // `Object.create` method
1413 // https://tc39.es/ecma262/#sec-object.create
1414 // eslint-disable-next-line es-x/no-object-create -- safe
1415 var objectCreate = Object.create || function create(O, Properties) {
1416 var result;
1417 if (O !== null) {
1418 EmptyConstructor[PROTOTYPE] = anObject$4(O);
1419 result = new EmptyConstructor();
1420 EmptyConstructor[PROTOTYPE] = null;
1421 // add "__proto__" for Object.getPrototypeOf polyfill
1422 result[IE_PROTO] = O;
1423 } else result = NullProtoObject();
1424 return Properties === undefined ? result : definePropertiesModule.f(result, Properties);
1425 };
1426
1427 var fails$9 = fails$j;
1428 var global$3 = global$e;
1429
1430 // babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError
1431 var $RegExp$1 = global$3.RegExp;
1432
1433 var regexpUnsupportedDotAll = fails$9(function () {
1434 var re = $RegExp$1('.', 's');
1435 return !(re.dotAll && re.exec('\n') && re.flags === 's');
1436 });
1437
1438 var fails$8 = fails$j;
1439 var global$2 = global$e;
1440
1441 // babel-minify and Closure Compiler transpiles RegExp('(?<a>b)', 'g') -> /(?<a>b)/g and it causes SyntaxError
1442 var $RegExp = global$2.RegExp;
1443
1444 var regexpUnsupportedNcg = fails$8(function () {
1445 var re = $RegExp('(?<a>b)', 'g');
1446 return re.exec('b').groups.a !== 'b' ||
1447 'b'.replace(re, '$<a>c') !== 'bc';
1448 });
1449
1450 /* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */
1451 /* eslint-disable regexp/no-useless-quantifier -- testing */
1452 var call$5 = functionCall;
1453 var uncurryThis$b = functionUncurryThis;
1454 var toString$4 = toString$5;
1455 var regexpFlags = regexpFlags$1;
1456 var stickyHelpers$1 = regexpStickyHelpers;
1457 var shared = shared$4.exports;
1458 var create$1 = objectCreate;
1459 var getInternalState = internalState.get;
1460 var UNSUPPORTED_DOT_ALL = regexpUnsupportedDotAll;
1461 var UNSUPPORTED_NCG = regexpUnsupportedNcg;
1462
1463 var nativeReplace = shared('native-string-replace', String.prototype.replace);
1464 var nativeExec = RegExp.prototype.exec;
1465 var patchedExec = nativeExec;
1466 var charAt$3 = uncurryThis$b(''.charAt);
1467 var indexOf = uncurryThis$b(''.indexOf);
1468 var replace$1 = uncurryThis$b(''.replace);
1469 var stringSlice$4 = uncurryThis$b(''.slice);
1470
1471 var UPDATES_LAST_INDEX_WRONG = (function () {
1472 var re1 = /a/;
1473 var re2 = /b*/g;
1474 call$5(nativeExec, re1, 'a');
1475 call$5(nativeExec, re2, 'a');
1476 return re1.lastIndex !== 0 || re2.lastIndex !== 0;
1477 })();
1478
1479 var UNSUPPORTED_Y$1 = stickyHelpers$1.BROKEN_CARET;
1480
1481 // nonparticipating capturing group, copied from es5-shim's String#split patch.
1482 var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
1483
1484 var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$1 || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;
1485
1486 if (PATCH) {
1487 patchedExec = function exec(string) {
1488 var re = this;
1489 var state = getInternalState(re);
1490 var str = toString$4(string);
1491 var raw = state.raw;
1492 var result, reCopy, lastIndex, match, i, object, group;
1493
1494 if (raw) {
1495 raw.lastIndex = re.lastIndex;
1496 result = call$5(patchedExec, raw, str);
1497 re.lastIndex = raw.lastIndex;
1498 return result;
1499 }
1500
1501 var groups = state.groups;
1502 var sticky = UNSUPPORTED_Y$1 && re.sticky;
1503 var flags = call$5(regexpFlags, re);
1504 var source = re.source;
1505 var charsAdded = 0;
1506 var strCopy = str;
1507
1508 if (sticky) {
1509 flags = replace$1(flags, 'y', '');
1510 if (indexOf(flags, 'g') === -1) {
1511 flags += 'g';
1512 }
1513
1514 strCopy = stringSlice$4(str, re.lastIndex);
1515 // Support anchored sticky behavior.
1516 if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt$3(str, re.lastIndex - 1) !== '\n')) {
1517 source = '(?: ' + source + ')';
1518 strCopy = ' ' + strCopy;
1519 charsAdded++;
1520 }
1521 // ^(? + rx + ) is needed, in combination with some str slicing, to
1522 // simulate the 'y' flag.
1523 reCopy = new RegExp('^(?:' + source + ')', flags);
1524 }
1525
1526 if (NPCG_INCLUDED) {
1527 reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
1528 }
1529 if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
1530
1531 match = call$5(nativeExec, sticky ? reCopy : re, strCopy);
1532
1533 if (sticky) {
1534 if (match) {
1535 match.input = stringSlice$4(match.input, charsAdded);
1536 match[0] = stringSlice$4(match[0], charsAdded);
1537 match.index = re.lastIndex;
1538 re.lastIndex += match[0].length;
1539 } else re.lastIndex = 0;
1540 } else if (UPDATES_LAST_INDEX_WRONG && match) {
1541 re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
1542 }
1543 if (NPCG_INCLUDED && match && match.length > 1) {
1544 // Fix browsers whose `exec` methods don't consistently return `undefined`
1545 // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
1546 call$5(nativeReplace, match[0], reCopy, function () {
1547 for (i = 1; i < arguments.length - 2; i++) {
1548 if (arguments[i] === undefined) match[i] = undefined;
1549 }
1550 });
1551 }
1552
1553 if (match && groups) {
1554 match.groups = object = create$1(null);
1555 for (i = 0; i < groups.length; i++) {
1556 group = groups[i];
1557 object[group[0]] = match[group[1]];
1558 }
1559 }
1560
1561 return match;
1562 };
1563 }
1564
1565 var regexpExec$3 = patchedExec;
1566
1567 var $$6 = _export;
1568 var exec$2 = regexpExec$3;
1569
1570 // `RegExp.prototype.exec` method
1571 // https://tc39.es/ecma262/#sec-regexp.prototype.exec
1572 $$6({ target: 'RegExp', proto: true, forced: /./.exec !== exec$2 }, {
1573 exec: exec$2
1574 });
1575
1576 var NATIVE_BIND$1 = functionBindNative;
1577
1578 var FunctionPrototype = Function.prototype;
1579 var apply$2 = FunctionPrototype.apply;
1580 var call$4 = FunctionPrototype.call;
1581
1582 // eslint-disable-next-line es-x/no-reflect -- safe
1583 var functionApply = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND$1 ? call$4.bind(apply$2) : function () {
1584 return call$4.apply(apply$2, arguments);
1585 });
1586
1587 // TODO: Remove from `core-js@4` since it's moved to entry points
1588
1589 var uncurryThis$a = functionUncurryThis;
1590 var defineBuiltIn$1 = defineBuiltIn$3;
1591 var regexpExec$2 = regexpExec$3;
1592 var fails$7 = fails$j;
1593 var wellKnownSymbol$8 = wellKnownSymbol$c;
1594 var createNonEnumerableProperty$1 = createNonEnumerableProperty$5;
1595
1596 var SPECIES$4 = wellKnownSymbol$8('species');
1597 var RegExpPrototype = RegExp.prototype;
1598
1599 var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
1600 var SYMBOL = wellKnownSymbol$8(KEY);
1601
1602 var DELEGATES_TO_SYMBOL = !fails$7(function () {
1603 // String methods call symbol-named RegEp methods
1604 var O = {};
1605 O[SYMBOL] = function () { return 7; };
1606 return ''[KEY](O) != 7;
1607 });
1608
1609 var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails$7(function () {
1610 // Symbol-named RegExp methods call .exec
1611 var execCalled = false;
1612 var re = /a/;
1613
1614 if (KEY === 'split') {
1615 // We can't use real regex here since it causes deoptimization
1616 // and serious performance degradation in V8
1617 // https://github.com/zloirock/core-js/issues/306
1618 re = {};
1619 // RegExp[@@split] doesn't call the regex's exec method, but first creates
1620 // a new one. We need to return the patched regex when creating the new one.
1621 re.constructor = {};
1622 re.constructor[SPECIES$4] = function () { return re; };
1623 re.flags = '';
1624 re[SYMBOL] = /./[SYMBOL];
1625 }
1626
1627 re.exec = function () { execCalled = true; return null; };
1628
1629 re[SYMBOL]('');
1630 return !execCalled;
1631 });
1632
1633 if (
1634 !DELEGATES_TO_SYMBOL ||
1635 !DELEGATES_TO_EXEC ||
1636 FORCED
1637 ) {
1638 var uncurriedNativeRegExpMethod = uncurryThis$a(/./[SYMBOL]);
1639 var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
1640 var uncurriedNativeMethod = uncurryThis$a(nativeMethod);
1641 var $exec = regexp.exec;
1642 if ($exec === regexpExec$2 || $exec === RegExpPrototype.exec) {
1643 if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
1644 // The native String method already delegates to @@method (this
1645 // polyfilled function), leasing to infinite recursion.
1646 // We avoid it by directly calling the native @@method method.
1647 return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };
1648 }
1649 return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };
1650 }
1651 return { done: false };
1652 });
1653
1654 defineBuiltIn$1(String.prototype, KEY, methods[0]);
1655 defineBuiltIn$1(RegExpPrototype, SYMBOL, methods[1]);
1656 }
1657
1658 if (SHAM) createNonEnumerableProperty$1(RegExpPrototype[SYMBOL], 'sham', true);
1659 };
1660
1661 var isObject$3 = isObject$9;
1662 var classof$4 = classofRaw$1;
1663 var wellKnownSymbol$7 = wellKnownSymbol$c;
1664
1665 var MATCH = wellKnownSymbol$7('match');
1666
1667 // `IsRegExp` abstract operation
1668 // https://tc39.es/ecma262/#sec-isregexp
1669 var isRegexp = function (it) {
1670 var isRegExp;
1671 return isObject$3(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof$4(it) == 'RegExp');
1672 };
1673
1674 var uncurryThis$9 = functionUncurryThis;
1675 var fails$6 = fails$j;
1676 var isCallable$2 = isCallable$e;
1677 var classof$3 = classof$6;
1678 var getBuiltIn = getBuiltIn$5;
1679 var inspectSource = inspectSource$3;
1680
1681 var noop = function () { /* empty */ };
1682 var empty = [];
1683 var construct = getBuiltIn('Reflect', 'construct');
1684 var constructorRegExp = /^\s*(?:class|function)\b/;
1685 var exec$1 = uncurryThis$9(constructorRegExp.exec);
1686 var INCORRECT_TO_STRING = !constructorRegExp.exec(noop);
1687
1688 var isConstructorModern = function isConstructor(argument) {
1689 if (!isCallable$2(argument)) return false;
1690 try {
1691 construct(noop, empty, argument);
1692 return true;
1693 } catch (error) {
1694 return false;
1695 }
1696 };
1697
1698 var isConstructorLegacy = function isConstructor(argument) {
1699 if (!isCallable$2(argument)) return false;
1700 switch (classof$3(argument)) {
1701 case 'AsyncFunction':
1702 case 'GeneratorFunction':
1703 case 'AsyncGeneratorFunction': return false;
1704 }
1705 try {
1706 // we can't check .prototype since constructors produced by .bind haven't it
1707 // `Function#toString` throws on some built-it function in some legacy engines
1708 // (for example, `DOMQuad` and similar in FF41-)
1709 return INCORRECT_TO_STRING || !!exec$1(constructorRegExp, inspectSource(argument));
1710 } catch (error) {
1711 return true;
1712 }
1713 };
1714
1715 isConstructorLegacy.sham = true;
1716
1717 // `IsConstructor` abstract operation
1718 // https://tc39.es/ecma262/#sec-isconstructor
1719 var isConstructor$3 = !construct || fails$6(function () {
1720 var called;
1721 return isConstructorModern(isConstructorModern.call)
1722 || !isConstructorModern(Object)
1723 || !isConstructorModern(function () { called = true; })
1724 || called;
1725 }) ? isConstructorLegacy : isConstructorModern;
1726
1727 var isConstructor$2 = isConstructor$3;
1728 var tryToString = tryToString$2;
1729
1730 var $TypeError$2 = TypeError;
1731
1732 // `Assert: IsConstructor(argument) is true`
1733 var aConstructor$1 = function (argument) {
1734 if (isConstructor$2(argument)) return argument;
1735 throw $TypeError$2(tryToString(argument) + ' is not a constructor');
1736 };
1737
1738 var anObject$3 = anObject$9;
1739 var aConstructor = aConstructor$1;
1740 var wellKnownSymbol$6 = wellKnownSymbol$c;
1741
1742 var SPECIES$3 = wellKnownSymbol$6('species');
1743
1744 // `SpeciesConstructor` abstract operation
1745 // https://tc39.es/ecma262/#sec-speciesconstructor
1746 var speciesConstructor$1 = function (O, defaultConstructor) {
1747 var C = anObject$3(O).constructor;
1748 var S;
1749 return C === undefined || (S = anObject$3(C)[SPECIES$3]) == undefined ? defaultConstructor : aConstructor(S);
1750 };
1751
1752 var uncurryThis$8 = functionUncurryThis;
1753 var toIntegerOrInfinity$1 = toIntegerOrInfinity$4;
1754 var toString$3 = toString$5;
1755 var requireObjectCoercible$2 = requireObjectCoercible$5;
1756
1757 var charAt$2 = uncurryThis$8(''.charAt);
1758 var charCodeAt = uncurryThis$8(''.charCodeAt);
1759 var stringSlice$3 = uncurryThis$8(''.slice);
1760
1761 var createMethod$1 = function (CONVERT_TO_STRING) {
1762 return function ($this, pos) {
1763 var S = toString$3(requireObjectCoercible$2($this));
1764 var position = toIntegerOrInfinity$1(pos);
1765 var size = S.length;
1766 var first, second;
1767 if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
1768 first = charCodeAt(S, position);
1769 return first < 0xD800 || first > 0xDBFF || position + 1 === size
1770 || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF
1771 ? CONVERT_TO_STRING
1772 ? charAt$2(S, position)
1773 : first
1774 : CONVERT_TO_STRING
1775 ? stringSlice$3(S, position, position + 2)
1776 : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
1777 };
1778 };
1779
1780 var stringMultibyte = {
1781 // `String.prototype.codePointAt` method
1782 // https://tc39.es/ecma262/#sec-string.prototype.codepointat
1783 codeAt: createMethod$1(false),
1784 // `String.prototype.at` method
1785 // https://github.com/mathiasbynens/String.prototype.at
1786 charAt: createMethod$1(true)
1787 };
1788
1789 var charAt$1 = stringMultibyte.charAt;
1790
1791 // `AdvanceStringIndex` abstract operation
1792 // https://tc39.es/ecma262/#sec-advancestringindex
1793 var advanceStringIndex$2 = function (S, index, unicode) {
1794 return index + (unicode ? charAt$1(S, index).length : 1);
1795 };
1796
1797 var toPropertyKey = toPropertyKey$3;
1798 var definePropertyModule = objectDefineProperty;
1799 var createPropertyDescriptor = createPropertyDescriptor$3;
1800
1801 var createProperty$3 = function (object, key, value) {
1802 var propertyKey = toPropertyKey(key);
1803 if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));
1804 else object[propertyKey] = value;
1805 };
1806
1807 var toAbsoluteIndex$1 = toAbsoluteIndex$3;
1808 var lengthOfArrayLike$3 = lengthOfArrayLike$5;
1809 var createProperty$2 = createProperty$3;
1810
1811 var $Array$2 = Array;
1812 var max$2 = Math.max;
1813
1814 var arraySliceSimple = function (O, start, end) {
1815 var length = lengthOfArrayLike$3(O);
1816 var k = toAbsoluteIndex$1(start, length);
1817 var fin = toAbsoluteIndex$1(end === undefined ? length : end, length);
1818 var result = $Array$2(max$2(fin - k, 0));
1819 for (var n = 0; k < fin; k++, n++) createProperty$2(result, n, O[k]);
1820 result.length = n;
1821 return result;
1822 };
1823
1824 var call$3 = functionCall;
1825 var anObject$2 = anObject$9;
1826 var isCallable$1 = isCallable$e;
1827 var classof$2 = classofRaw$1;
1828 var regexpExec$1 = regexpExec$3;
1829
1830 var $TypeError$1 = TypeError;
1831
1832 // `RegExpExec` abstract operation
1833 // https://tc39.es/ecma262/#sec-regexpexec
1834 var regexpExecAbstract = function (R, S) {
1835 var exec = R.exec;
1836 if (isCallable$1(exec)) {
1837 var result = call$3(exec, R, S);
1838 if (result !== null) anObject$2(result);
1839 return result;
1840 }
1841 if (classof$2(R) === 'RegExp') return call$3(regexpExec$1, R, S);
1842 throw $TypeError$1('RegExp#exec called on incompatible receiver');
1843 };
1844
1845 var apply$1 = functionApply;
1846 var call$2 = functionCall;
1847 var uncurryThis$7 = functionUncurryThis;
1848 var fixRegExpWellKnownSymbolLogic$1 = fixRegexpWellKnownSymbolLogic;
1849 var isRegExp = isRegexp;
1850 var anObject$1 = anObject$9;
1851 var requireObjectCoercible$1 = requireObjectCoercible$5;
1852 var speciesConstructor = speciesConstructor$1;
1853 var advanceStringIndex$1 = advanceStringIndex$2;
1854 var toLength$1 = toLength$3;
1855 var toString$2 = toString$5;
1856 var getMethod$1 = getMethod$3;
1857 var arraySlice$1 = arraySliceSimple;
1858 var callRegExpExec = regexpExecAbstract;
1859 var regexpExec = regexpExec$3;
1860 var stickyHelpers = regexpStickyHelpers;
1861 var fails$5 = fails$j;
1862
1863 var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;
1864 var MAX_UINT32 = 0xFFFFFFFF;
1865 var min$1 = Math.min;
1866 var $push = [].push;
1867 var exec = uncurryThis$7(/./.exec);
1868 var push$2 = uncurryThis$7($push);
1869 var stringSlice$2 = uncurryThis$7(''.slice);
1870
1871 // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
1872 // Weex JS has frozen built-in prototypes, so use try / catch wrapper
1873 var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails$5(function () {
1874 // eslint-disable-next-line regexp/no-empty-group -- required for testing
1875 var re = /(?:)/;
1876 var originalExec = re.exec;
1877 re.exec = function () { return originalExec.apply(this, arguments); };
1878 var result = 'ab'.split(re);
1879 return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
1880 });
1881
1882 // @@split logic
1883 fixRegExpWellKnownSymbolLogic$1('split', function (SPLIT, nativeSplit, maybeCallNative) {
1884 var internalSplit;
1885 if (
1886 'abbc'.split(/(b)*/)[1] == 'c' ||
1887 // eslint-disable-next-line regexp/no-empty-group -- required for testing
1888 'test'.split(/(?:)/, -1).length != 4 ||
1889 'ab'.split(/(?:ab)*/).length != 2 ||
1890 '.'.split(/(.?)(.?)/).length != 4 ||
1891 // eslint-disable-next-line regexp/no-empty-capturing-group, regexp/no-empty-group -- required for testing
1892 '.'.split(/()()/).length > 1 ||
1893 ''.split(/.?/).length
1894 ) {
1895 // based on es5-shim implementation, need to rework it
1896 internalSplit = function (separator, limit) {
1897 var string = toString$2(requireObjectCoercible$1(this));
1898 var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
1899 if (lim === 0) return [];
1900 if (separator === undefined) return [string];
1901 // If `separator` is not a regex, use native split
1902 if (!isRegExp(separator)) {
1903 return call$2(nativeSplit, string, separator, lim);
1904 }
1905 var output = [];
1906 var flags = (separator.ignoreCase ? 'i' : '') +
1907 (separator.multiline ? 'm' : '') +
1908 (separator.unicode ? 'u' : '') +
1909 (separator.sticky ? 'y' : '');
1910 var lastLastIndex = 0;
1911 // Make `global` and avoid `lastIndex` issues by working with a copy
1912 var separatorCopy = new RegExp(separator.source, flags + 'g');
1913 var match, lastIndex, lastLength;
1914 while (match = call$2(regexpExec, separatorCopy, string)) {
1915 lastIndex = separatorCopy.lastIndex;
1916 if (lastIndex > lastLastIndex) {
1917 push$2(output, stringSlice$2(string, lastLastIndex, match.index));
1918 if (match.length > 1 && match.index < string.length) apply$1($push, output, arraySlice$1(match, 1));
1919 lastLength = match[0].length;
1920 lastLastIndex = lastIndex;
1921 if (output.length >= lim) break;
1922 }
1923 if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop
1924 }
1925 if (lastLastIndex === string.length) {
1926 if (lastLength || !exec(separatorCopy, '')) push$2(output, '');
1927 } else push$2(output, stringSlice$2(string, lastLastIndex));
1928 return output.length > lim ? arraySlice$1(output, 0, lim) : output;
1929 };
1930 // Chakra, V8
1931 } else if ('0'.split(undefined, 0).length) {
1932 internalSplit = function (separator, limit) {
1933 return separator === undefined && limit === 0 ? [] : call$2(nativeSplit, this, separator, limit);
1934 };
1935 } else internalSplit = nativeSplit;
1936
1937 return [
1938 // `String.prototype.split` method
1939 // https://tc39.es/ecma262/#sec-string.prototype.split
1940 function split(separator, limit) {
1941 var O = requireObjectCoercible$1(this);
1942 var splitter = separator == undefined ? undefined : getMethod$1(separator, SPLIT);
1943 return splitter
1944 ? call$2(splitter, separator, O, limit)
1945 : call$2(internalSplit, toString$2(O), separator, limit);
1946 },
1947 // `RegExp.prototype[@@split]` method
1948 // https://tc39.es/ecma262/#sec-regexp.prototype-@@split
1949 //
1950 // NOTE: This cannot be properly polyfilled in engines that don't support
1951 // the 'y' flag.
1952 function (string, limit) {
1953 var rx = anObject$1(this);
1954 var S = toString$2(string);
1955 var res = maybeCallNative(internalSplit, rx, S, limit, internalSplit !== nativeSplit);
1956
1957 if (res.done) return res.value;
1958
1959 var C = speciesConstructor(rx, RegExp);
1960
1961 var unicodeMatching = rx.unicode;
1962 var flags = (rx.ignoreCase ? 'i' : '') +
1963 (rx.multiline ? 'm' : '') +
1964 (rx.unicode ? 'u' : '') +
1965 (UNSUPPORTED_Y ? 'g' : 'y');
1966
1967 // ^(? + rx + ) is needed, in combination with some S slicing, to
1968 // simulate the 'y' flag.
1969 var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);
1970 var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
1971 if (lim === 0) return [];
1972 if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
1973 var p = 0;
1974 var q = 0;
1975 var A = [];
1976 while (q < S.length) {
1977 splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;
1978 var z = callRegExpExec(splitter, UNSUPPORTED_Y ? stringSlice$2(S, q) : S);
1979 var e;
1980 if (
1981 z === null ||
1982 (e = min$1(toLength$1(splitter.lastIndex + (UNSUPPORTED_Y ? q : 0)), S.length)) === p
1983 ) {
1984 q = advanceStringIndex$1(S, q, unicodeMatching);
1985 } else {
1986 push$2(A, stringSlice$2(S, p, q));
1987 if (A.length === lim) return A;
1988 for (var i = 1; i <= z.length - 1; i++) {
1989 push$2(A, z[i]);
1990 if (A.length === lim) return A;
1991 }
1992 q = p = e;
1993 }
1994 }
1995 push$2(A, stringSlice$2(S, p));
1996 return A;
1997 }
1998 ];
1999 }, !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);
2000
2001 var uncurryThis$6 = functionUncurryThis;
2002 var toObject$3 = toObject$5;
2003
2004 var floor = Math.floor;
2005 var charAt = uncurryThis$6(''.charAt);
2006 var replace = uncurryThis$6(''.replace);
2007 var stringSlice$1 = uncurryThis$6(''.slice);
2008 var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g;
2009 var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g;
2010
2011 // `GetSubstitution` abstract operation
2012 // https://tc39.es/ecma262/#sec-getsubstitution
2013 var getSubstitution$1 = function (matched, str, position, captures, namedCaptures, replacement) {
2014 var tailPos = position + matched.length;
2015 var m = captures.length;
2016 var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
2017 if (namedCaptures !== undefined) {
2018 namedCaptures = toObject$3(namedCaptures);
2019 symbols = SUBSTITUTION_SYMBOLS;
2020 }
2021 return replace(replacement, symbols, function (match, ch) {
2022 var capture;
2023 switch (charAt(ch, 0)) {
2024 case '$': return '$';
2025 case '&': return matched;
2026 case '`': return stringSlice$1(str, 0, position);
2027 case "'": return stringSlice$1(str, tailPos);
2028 case '<':
2029 capture = namedCaptures[stringSlice$1(ch, 1, -1)];
2030 break;
2031 default: // \d\d?
2032 var n = +ch;
2033 if (n === 0) return match;
2034 if (n > m) {
2035 var f = floor(n / 10);
2036 if (f === 0) return match;
2037 if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);
2038 return match;
2039 }
2040 capture = captures[n - 1];
2041 }
2042 return capture === undefined ? '' : capture;
2043 });
2044 };
2045
2046 var apply = functionApply;
2047 var call$1 = functionCall;
2048 var uncurryThis$5 = functionUncurryThis;
2049 var fixRegExpWellKnownSymbolLogic = fixRegexpWellKnownSymbolLogic;
2050 var fails$4 = fails$j;
2051 var anObject = anObject$9;
2052 var isCallable = isCallable$e;
2053 var toIntegerOrInfinity = toIntegerOrInfinity$4;
2054 var toLength = toLength$3;
2055 var toString$1 = toString$5;
2056 var requireObjectCoercible = requireObjectCoercible$5;
2057 var advanceStringIndex = advanceStringIndex$2;
2058 var getMethod = getMethod$3;
2059 var getSubstitution = getSubstitution$1;
2060 var regExpExec = regexpExecAbstract;
2061 var wellKnownSymbol$5 = wellKnownSymbol$c;
2062
2063 var REPLACE = wellKnownSymbol$5('replace');
2064 var max$1 = Math.max;
2065 var min = Math.min;
2066 var concat$1 = uncurryThis$5([].concat);
2067 var push$1 = uncurryThis$5([].push);
2068 var stringIndexOf = uncurryThis$5(''.indexOf);
2069 var stringSlice = uncurryThis$5(''.slice);
2070
2071 var maybeToString = function (it) {
2072 return it === undefined ? it : String(it);
2073 };
2074
2075 // IE <= 11 replaces $0 with the whole match, as if it was $&
2076 // https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
2077 var REPLACE_KEEPS_$0 = (function () {
2078 // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing
2079 return 'a'.replace(/./, '$0') === '$0';
2080 })();
2081
2082 // Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string
2083 var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
2084 if (/./[REPLACE]) {
2085 return /./[REPLACE]('a', '$0') === '';
2086 }
2087 return false;
2088 })();
2089
2090 var REPLACE_SUPPORTS_NAMED_GROUPS = !fails$4(function () {
2091 var re = /./;
2092 re.exec = function () {
2093 var result = [];
2094 result.groups = { a: '7' };
2095 return result;
2096 };
2097 // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive
2098 return ''.replace(re, '$<a>') !== '7';
2099 });
2100
2101 // @@replace logic
2102 fixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {
2103 var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';
2104
2105 return [
2106 // `String.prototype.replace` method
2107 // https://tc39.es/ecma262/#sec-string.prototype.replace
2108 function replace(searchValue, replaceValue) {
2109 var O = requireObjectCoercible(this);
2110 var replacer = searchValue == undefined ? undefined : getMethod(searchValue, REPLACE);
2111 return replacer
2112 ? call$1(replacer, searchValue, O, replaceValue)
2113 : call$1(nativeReplace, toString$1(O), searchValue, replaceValue);
2114 },
2115 // `RegExp.prototype[@@replace]` method
2116 // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
2117 function (string, replaceValue) {
2118 var rx = anObject(this);
2119 var S = toString$1(string);
2120
2121 if (
2122 typeof replaceValue == 'string' &&
2123 stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&
2124 stringIndexOf(replaceValue, '$<') === -1
2125 ) {
2126 var res = maybeCallNative(nativeReplace, rx, S, replaceValue);
2127 if (res.done) return res.value;
2128 }
2129
2130 var functionalReplace = isCallable(replaceValue);
2131 if (!functionalReplace) replaceValue = toString$1(replaceValue);
2132
2133 var global = rx.global;
2134 if (global) {
2135 var fullUnicode = rx.unicode;
2136 rx.lastIndex = 0;
2137 }
2138 var results = [];
2139 while (true) {
2140 var result = regExpExec(rx, S);
2141 if (result === null) break;
2142
2143 push$1(results, result);
2144 if (!global) break;
2145
2146 var matchStr = toString$1(result[0]);
2147 if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
2148 }
2149
2150 var accumulatedResult = '';
2151 var nextSourcePosition = 0;
2152 for (var i = 0; i < results.length; i++) {
2153 result = results[i];
2154
2155 var matched = toString$1(result[0]);
2156 var position = max$1(min(toIntegerOrInfinity(result.index), S.length), 0);
2157 var captures = [];
2158 // NOTE: This is equivalent to
2159 // captures = result.slice(1).map(maybeToString)
2160 // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
2161 // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
2162 // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
2163 for (var j = 1; j < result.length; j++) push$1(captures, maybeToString(result[j]));
2164 var namedCaptures = result.groups;
2165 if (functionalReplace) {
2166 var replacerArgs = concat$1([matched], captures, position, S);
2167 if (namedCaptures !== undefined) push$1(replacerArgs, namedCaptures);
2168 var replacement = toString$1(apply(replaceValue, undefined, replacerArgs));
2169 } else {
2170 replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
2171 }
2172 if (position >= nextSourcePosition) {
2173 accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;
2174 nextSourcePosition = position + matched.length;
2175 }
2176 }
2177 return accumulatedResult + stringSlice(S, nextSourcePosition);
2178 }
2179 ];
2180 }, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);
2181
2182 var classof$1 = classofRaw$1;
2183
2184 // `IsArray` abstract operation
2185 // https://tc39.es/ecma262/#sec-isarray
2186 // eslint-disable-next-line es-x/no-array-isarray -- safe
2187 var isArray$3 = Array.isArray || function isArray(argument) {
2188 return classof$1(argument) == 'Array';
2189 };
2190
2191 var fails$3 = fails$j;
2192 var wellKnownSymbol$4 = wellKnownSymbol$c;
2193 var V8_VERSION$1 = engineV8Version;
2194
2195 var SPECIES$2 = wellKnownSymbol$4('species');
2196
2197 var arrayMethodHasSpeciesSupport$3 = function (METHOD_NAME) {
2198 // We can't use this feature detection in V8 since it causes
2199 // deoptimization and serious performance degradation
2200 // https://github.com/zloirock/core-js/issues/677
2201 return V8_VERSION$1 >= 51 || !fails$3(function () {
2202 var array = [];
2203 var constructor = array.constructor = {};
2204 constructor[SPECIES$2] = function () {
2205 return { foo: 1 };
2206 };
2207 return array[METHOD_NAME](Boolean).foo !== 1;
2208 });
2209 };
2210
2211 var uncurryThis$4 = functionUncurryThis;
2212
2213 var arraySlice = uncurryThis$4([].slice);
2214
2215 var $$5 = _export;
2216 var isArray$2 = isArray$3;
2217 var isConstructor$1 = isConstructor$3;
2218 var isObject$2 = isObject$9;
2219 var toAbsoluteIndex = toAbsoluteIndex$3;
2220 var lengthOfArrayLike$2 = lengthOfArrayLike$5;
2221 var toIndexedObject$1 = toIndexedObject$6;
2222 var createProperty$1 = createProperty$3;
2223 var wellKnownSymbol$3 = wellKnownSymbol$c;
2224 var arrayMethodHasSpeciesSupport$2 = arrayMethodHasSpeciesSupport$3;
2225 var un$Slice = arraySlice;
2226
2227 var HAS_SPECIES_SUPPORT$1 = arrayMethodHasSpeciesSupport$2('slice');
2228
2229 var SPECIES$1 = wellKnownSymbol$3('species');
2230 var $Array$1 = Array;
2231 var max = Math.max;
2232
2233 // `Array.prototype.slice` method
2234 // https://tc39.es/ecma262/#sec-array.prototype.slice
2235 // fallback for not array-like ES3 strings and DOM objects
2236 $$5({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT$1 }, {
2237 slice: function slice(start, end) {
2238 var O = toIndexedObject$1(this);
2239 var length = lengthOfArrayLike$2(O);
2240 var k = toAbsoluteIndex(start, length);
2241 var fin = toAbsoluteIndex(end === undefined ? length : end, length);
2242 // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible
2243 var Constructor, result, n;
2244 if (isArray$2(O)) {
2245 Constructor = O.constructor;
2246 // cross-realm fallback
2247 if (isConstructor$1(Constructor) && (Constructor === $Array$1 || isArray$2(Constructor.prototype))) {
2248 Constructor = undefined;
2249 } else if (isObject$2(Constructor)) {
2250 Constructor = Constructor[SPECIES$1];
2251 if (Constructor === null) Constructor = undefined;
2252 }
2253 if (Constructor === $Array$1 || Constructor === undefined) {
2254 return un$Slice(O, k, fin);
2255 }
2256 }
2257 result = new (Constructor === undefined ? $Array$1 : Constructor)(max(fin - k, 0));
2258 for (n = 0; k < fin; k++, n++) if (k in O) createProperty$1(result, n, O[k]);
2259 result.length = n;
2260 return result;
2261 }
2262 });
2263
2264 var uncurryThis$3 = functionUncurryThis;
2265 var aCallable = aCallable$2;
2266 var NATIVE_BIND = functionBindNative;
2267
2268 var bind$1 = uncurryThis$3(uncurryThis$3.bind);
2269
2270 // optional / simple context binding
2271 var functionBindContext = function (fn, that) {
2272 aCallable(fn);
2273 return that === undefined ? fn : NATIVE_BIND ? bind$1(fn, that) : function (/* ...args */) {
2274 return fn.apply(that, arguments);
2275 };
2276 };
2277
2278 var isArray$1 = isArray$3;
2279 var isConstructor = isConstructor$3;
2280 var isObject$1 = isObject$9;
2281 var wellKnownSymbol$2 = wellKnownSymbol$c;
2282
2283 var SPECIES = wellKnownSymbol$2('species');
2284 var $Array = Array;
2285
2286 // a part of `ArraySpeciesCreate` abstract operation
2287 // https://tc39.es/ecma262/#sec-arrayspeciescreate
2288 var arraySpeciesConstructor$1 = function (originalArray) {
2289 var C;
2290 if (isArray$1(originalArray)) {
2291 C = originalArray.constructor;
2292 // cross-realm fallback
2293 if (isConstructor(C) && (C === $Array || isArray$1(C.prototype))) C = undefined;
2294 else if (isObject$1(C)) {
2295 C = C[SPECIES];
2296 if (C === null) C = undefined;
2297 }
2298 } return C === undefined ? $Array : C;
2299 };
2300
2301 var arraySpeciesConstructor = arraySpeciesConstructor$1;
2302
2303 // `ArraySpeciesCreate` abstract operation
2304 // https://tc39.es/ecma262/#sec-arrayspeciescreate
2305 var arraySpeciesCreate$2 = function (originalArray, length) {
2306 return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
2307 };
2308
2309 var bind = functionBindContext;
2310 var uncurryThis$2 = functionUncurryThis;
2311 var IndexedObject$2 = indexedObject;
2312 var toObject$2 = toObject$5;
2313 var lengthOfArrayLike$1 = lengthOfArrayLike$5;
2314 var arraySpeciesCreate$1 = arraySpeciesCreate$2;
2315
2316 var push = uncurryThis$2([].push);
2317
2318 // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation
2319 var createMethod = function (TYPE) {
2320 var IS_MAP = TYPE == 1;
2321 var IS_FILTER = TYPE == 2;
2322 var IS_SOME = TYPE == 3;
2323 var IS_EVERY = TYPE == 4;
2324 var IS_FIND_INDEX = TYPE == 6;
2325 var IS_FILTER_REJECT = TYPE == 7;
2326 var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
2327 return function ($this, callbackfn, that, specificCreate) {
2328 var O = toObject$2($this);
2329 var self = IndexedObject$2(O);
2330 var boundFunction = bind(callbackfn, that);
2331 var length = lengthOfArrayLike$1(self);
2332 var index = 0;
2333 var create = specificCreate || arraySpeciesCreate$1;
2334 var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;
2335 var value, result;
2336 for (;length > index; index++) if (NO_HOLES || index in self) {
2337 value = self[index];
2338 result = boundFunction(value, index, O);
2339 if (TYPE) {
2340 if (IS_MAP) target[index] = result; // map
2341 else if (result) switch (TYPE) {
2342 case 3: return true; // some
2343 case 5: return value; // find
2344 case 6: return index; // findIndex
2345 case 2: push(target, value); // filter
2346 } else switch (TYPE) {
2347 case 4: return false; // every
2348 case 7: push(target, value); // filterReject
2349 }
2350 }
2351 }
2352 return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
2353 };
2354 };
2355
2356 var arrayIteration = {
2357 // `Array.prototype.forEach` method
2358 // https://tc39.es/ecma262/#sec-array.prototype.foreach
2359 forEach: createMethod(0),
2360 // `Array.prototype.map` method
2361 // https://tc39.es/ecma262/#sec-array.prototype.map
2362 map: createMethod(1),
2363 // `Array.prototype.filter` method
2364 // https://tc39.es/ecma262/#sec-array.prototype.filter
2365 filter: createMethod(2),
2366 // `Array.prototype.some` method
2367 // https://tc39.es/ecma262/#sec-array.prototype.some
2368 some: createMethod(3),
2369 // `Array.prototype.every` method
2370 // https://tc39.es/ecma262/#sec-array.prototype.every
2371 every: createMethod(4),
2372 // `Array.prototype.find` method
2373 // https://tc39.es/ecma262/#sec-array.prototype.find
2374 find: createMethod(5),
2375 // `Array.prototype.findIndex` method
2376 // https://tc39.es/ecma262/#sec-array.prototype.findIndex
2377 findIndex: createMethod(6),
2378 // `Array.prototype.filterReject` method
2379 // https://github.com/tc39/proposal-array-filtering
2380 filterReject: createMethod(7)
2381 };
2382
2383 var $$4 = _export;
2384 var $map = arrayIteration.map;
2385 var arrayMethodHasSpeciesSupport$1 = arrayMethodHasSpeciesSupport$3;
2386
2387 var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport$1('map');
2388
2389 // `Array.prototype.map` method
2390 // https://tc39.es/ecma262/#sec-array.prototype.map
2391 // with adding support of @@species
2392 $$4({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
2393 map: function map(callbackfn /* , thisArg */) {
2394 return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
2395 }
2396 });
2397
2398 var wellKnownSymbol$1 = wellKnownSymbol$c;
2399 var create = objectCreate;
2400 var defineProperty$1 = objectDefineProperty.f;
2401
2402 var UNSCOPABLES = wellKnownSymbol$1('unscopables');
2403 var ArrayPrototype = Array.prototype;
2404
2405 // Array.prototype[@@unscopables]
2406 // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
2407 if (ArrayPrototype[UNSCOPABLES] == undefined) {
2408 defineProperty$1(ArrayPrototype, UNSCOPABLES, {
2409 configurable: true,
2410 value: create(null)
2411 });
2412 }
2413
2414 // add a key to Array.prototype[@@unscopables]
2415 var addToUnscopables$1 = function (key) {
2416 ArrayPrototype[UNSCOPABLES][key] = true;
2417 };
2418
2419 var $$3 = _export;
2420 var $find = arrayIteration.find;
2421 var addToUnscopables = addToUnscopables$1;
2422
2423 var FIND = 'find';
2424 var SKIPS_HOLES = true;
2425
2426 // Shouldn't skip holes
2427 if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });
2428
2429 // `Array.prototype.find` method
2430 // https://tc39.es/ecma262/#sec-array.prototype.find
2431 $$3({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {
2432 find: function find(callbackfn /* , that = undefined */) {
2433 return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
2434 }
2435 });
2436
2437 // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
2438 addToUnscopables(FIND);
2439
2440 var TO_STRING_TAG_SUPPORT$1 = toStringTagSupport;
2441 var classof = classof$6;
2442
2443 // `Object.prototype.toString` method implementation
2444 // https://tc39.es/ecma262/#sec-object.prototype.tostring
2445 var objectToString = TO_STRING_TAG_SUPPORT$1 ? {}.toString : function toString() {
2446 return '[object ' + classof(this) + ']';
2447 };
2448
2449 var TO_STRING_TAG_SUPPORT = toStringTagSupport;
2450 var defineBuiltIn = defineBuiltIn$3;
2451 var toString = objectToString;
2452
2453 // `Object.prototype.toString` method
2454 // https://tc39.es/ecma262/#sec-object.prototype.tostring
2455 if (!TO_STRING_TAG_SUPPORT) {
2456 defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });
2457 }
2458
2459 var DESCRIPTORS = descriptors;
2460 var uncurryThis$1 = functionUncurryThis;
2461 var call = functionCall;
2462 var fails$2 = fails$j;
2463 var objectKeys = objectKeys$2;
2464 var getOwnPropertySymbolsModule = objectGetOwnPropertySymbols;
2465 var propertyIsEnumerableModule = objectPropertyIsEnumerable;
2466 var toObject$1 = toObject$5;
2467 var IndexedObject$1 = indexedObject;
2468
2469 // eslint-disable-next-line es-x/no-object-assign -- safe
2470 var $assign = Object.assign;
2471 // eslint-disable-next-line es-x/no-object-defineproperty -- required for testing
2472 var defineProperty = Object.defineProperty;
2473 var concat = uncurryThis$1([].concat);
2474
2475 // `Object.assign` method
2476 // https://tc39.es/ecma262/#sec-object.assign
2477 var objectAssign = !$assign || fails$2(function () {
2478 // should have correct order of operations (Edge bug)
2479 if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {
2480 enumerable: true,
2481 get: function () {
2482 defineProperty(this, 'b', {
2483 value: 3,
2484 enumerable: false
2485 });
2486 }
2487 }), { b: 2 })).b !== 1) return true;
2488 // should work with symbols and should have deterministic property order (V8 bug)
2489 var A = {};
2490 var B = {};
2491 // eslint-disable-next-line es-x/no-symbol -- safe
2492 var symbol = Symbol();
2493 var alphabet = 'abcdefghijklmnopqrst';
2494 A[symbol] = 7;
2495 alphabet.split('').forEach(function (chr) { B[chr] = chr; });
2496 return $assign({}, A)[symbol] != 7 || objectKeys($assign({}, B)).join('') != alphabet;
2497 }) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`
2498 var T = toObject$1(target);
2499 var argumentsLength = arguments.length;
2500 var index = 1;
2501 var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
2502 var propertyIsEnumerable = propertyIsEnumerableModule.f;
2503 while (argumentsLength > index) {
2504 var S = IndexedObject$1(arguments[index++]);
2505 var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);
2506 var length = keys.length;
2507 var j = 0;
2508 var key;
2509 while (length > j) {
2510 key = keys[j++];
2511 if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];
2512 }
2513 } return T;
2514 } : $assign;
2515
2516 var $$2 = _export;
2517 var assign = objectAssign;
2518
2519 // `Object.assign` method
2520 // https://tc39.es/ecma262/#sec-object.assign
2521 // eslint-disable-next-line es-x/no-object-assign -- required for testing
2522 $$2({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {
2523 assign: assign
2524 });
2525
2526 var $TypeError = TypeError;
2527 var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991
2528
2529 var doesNotExceedSafeInteger$1 = function (it) {
2530 if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');
2531 return it;
2532 };
2533
2534 var $$1 = _export;
2535 var fails$1 = fails$j;
2536 var isArray = isArray$3;
2537 var isObject = isObject$9;
2538 var toObject = toObject$5;
2539 var lengthOfArrayLike = lengthOfArrayLike$5;
2540 var doesNotExceedSafeInteger = doesNotExceedSafeInteger$1;
2541 var createProperty = createProperty$3;
2542 var arraySpeciesCreate = arraySpeciesCreate$2;
2543 var arrayMethodHasSpeciesSupport = arrayMethodHasSpeciesSupport$3;
2544 var wellKnownSymbol = wellKnownSymbol$c;
2545 var V8_VERSION = engineV8Version;
2546
2547 var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
2548
2549 // We can't use this feature detection in V8 since it causes
2550 // deoptimization and serious performance degradation
2551 // https://github.com/zloirock/core-js/issues/679
2552 var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails$1(function () {
2553 var array = [];
2554 array[IS_CONCAT_SPREADABLE] = false;
2555 return array.concat()[0] !== array;
2556 });
2557
2558 var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
2559
2560 var isConcatSpreadable = function (O) {
2561 if (!isObject(O)) return false;
2562 var spreadable = O[IS_CONCAT_SPREADABLE];
2563 return spreadable !== undefined ? !!spreadable : isArray(O);
2564 };
2565
2566 var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
2567
2568 // `Array.prototype.concat` method
2569 // https://tc39.es/ecma262/#sec-array.prototype.concat
2570 // with adding support of @@isConcatSpreadable and @@species
2571 $$1({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {
2572 // eslint-disable-next-line no-unused-vars -- required for `.length`
2573 concat: function concat(arg) {
2574 var O = toObject(this);
2575 var A = arraySpeciesCreate(O, 0);
2576 var n = 0;
2577 var i, k, length, len, E;
2578 for (i = -1, length = arguments.length; i < length; i++) {
2579 E = i === -1 ? O : arguments[i];
2580 if (isConcatSpreadable(E)) {
2581 len = lengthOfArrayLike(E);
2582 doesNotExceedSafeInteger(n + len);
2583 for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
2584 } else {
2585 doesNotExceedSafeInteger(n + 1);
2586 createProperty(A, n++, E);
2587 }
2588 }
2589 A.length = n;
2590 return A;
2591 }
2592 });
2593
2594 var fails = fails$j;
2595
2596 var arrayMethodIsStrict$2 = function (METHOD_NAME, argument) {
2597 var method = [][METHOD_NAME];
2598 return !!method && fails(function () {
2599 // eslint-disable-next-line no-useless-call -- required for testing
2600 method.call(null, argument || function () { return 1; }, 1);
2601 });
2602 };
2603
2604 var $ = _export;
2605 var uncurryThis = functionUncurryThis;
2606 var IndexedObject = indexedObject;
2607 var toIndexedObject = toIndexedObject$6;
2608 var arrayMethodIsStrict$1 = arrayMethodIsStrict$2;
2609
2610 var un$Join = uncurryThis([].join);
2611
2612 var ES3_STRINGS = IndexedObject != Object;
2613 var STRICT_METHOD$1 = arrayMethodIsStrict$1('join', ',');
2614
2615 // `Array.prototype.join` method
2616 // https://tc39.es/ecma262/#sec-array.prototype.join
2617 $({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD$1 }, {
2618 join: function join(separator) {
2619 return un$Join(toIndexedObject(this), separator === undefined ? ',' : separator);
2620 }
2621 });
2622
2623 // iterable DOM collections
2624 // flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
2625 var domIterables = {
2626 CSSRuleList: 0,
2627 CSSStyleDeclaration: 0,
2628 CSSValueList: 0,
2629 ClientRectList: 0,
2630 DOMRectList: 0,
2631 DOMStringList: 0,
2632 DOMTokenList: 1,
2633 DataTransferItemList: 0,
2634 FileList: 0,
2635 HTMLAllCollection: 0,
2636 HTMLCollection: 0,
2637 HTMLFormElement: 0,
2638 HTMLSelectElement: 0,
2639 MediaList: 0,
2640 MimeTypeArray: 0,
2641 NamedNodeMap: 0,
2642 NodeList: 1,
2643 PaintRequestList: 0,
2644 Plugin: 0,
2645 PluginArray: 0,
2646 SVGLengthList: 0,
2647 SVGNumberList: 0,
2648 SVGPathSegList: 0,
2649 SVGPointList: 0,
2650 SVGStringList: 0,
2651 SVGTransformList: 0,
2652 SourceBufferList: 0,
2653 StyleSheetList: 0,
2654 TextTrackCueList: 0,
2655 TextTrackList: 0,
2656 TouchList: 0
2657 };
2658
2659 // in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`
2660 var documentCreateElement = documentCreateElement$2;
2661
2662 var classList = documentCreateElement('span').classList;
2663 var DOMTokenListPrototype$1 = classList && classList.constructor && classList.constructor.prototype;
2664
2665 var domTokenListPrototype = DOMTokenListPrototype$1 === Object.prototype ? undefined : DOMTokenListPrototype$1;
2666
2667 var $forEach = arrayIteration.forEach;
2668 var arrayMethodIsStrict = arrayMethodIsStrict$2;
2669
2670 var STRICT_METHOD = arrayMethodIsStrict('forEach');
2671
2672 // `Array.prototype.forEach` method implementation
2673 // https://tc39.es/ecma262/#sec-array.prototype.foreach
2674 var arrayForEach = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {
2675 return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
2676 // eslint-disable-next-line es-x/no-array-prototype-foreach -- safe
2677 } : [].forEach;
2678
2679 var global$1 = global$e;
2680 var DOMIterables = domIterables;
2681 var DOMTokenListPrototype = domTokenListPrototype;
2682 var forEach = arrayForEach;
2683 var createNonEnumerableProperty = createNonEnumerableProperty$5;
2684
2685 var handlePrototype = function (CollectionPrototype) {
2686 // some Chrome versions have non-configurable methods on DOMTokenList
2687 if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {
2688 createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);
2689 } catch (error) {
2690 CollectionPrototype.forEach = forEach;
2691 }
2692 };
2693
2694 for (var COLLECTION_NAME in DOMIterables) {
2695 if (DOMIterables[COLLECTION_NAME]) {
2696 handlePrototype(global$1[COLLECTION_NAME] && global$1[COLLECTION_NAME].prototype);
2697 }
2698 }
2699
2700 handlePrototype(DOMTokenListPrototype);
2701
2702 /**
2703 * @author zhixin wen <wenzhixin2010@gmail.com>
2704 * extensions: https://github.com/hhurz/tableExport.jquery.plugin
2705 */
2706
2707 var Utils = $__default["default"].fn.bootstrapTable.utils;
2708 var TYPE_NAME = {
2709 json: 'JSON',
2710 xml: 'XML',
2711 png: 'PNG',
2712 csv: 'CSV',
2713 txt: 'TXT',
2714 sql: 'SQL',
2715 doc: 'MS-Word',
2716 excel: 'MS-Excel',
2717 xlsx: 'MS-Excel (OpenXML)',
2718 powerpoint: 'MS-Powerpoint',
2719 pdf: 'PDF'
2720 };
2721 $__default["default"].extend($__default["default"].fn.bootstrapTable.defaults, {
2722 showExport: false,
2723 exportDataType: 'basic',
2724 // basic, all, selected
2725 exportTypes: ['json', 'xml', 'csv', 'txt', 'sql', 'excel'],
2726 exportOptions: {},
2727 exportFooter: false
2728 });
2729 $__default["default"].extend($__default["default"].fn.bootstrapTable.columnDefaults, {
2730 forceExport: false,
2731 forceHide: false
2732 });
2733 $__default["default"].extend($__default["default"].fn.bootstrapTable.defaults.icons, {
2734 export: {
2735 bootstrap3: 'glyphicon-export icon-share',
2736 bootstrap5: 'bi-download',
2737 materialize: 'file_download',
2738 'bootstrap-table': 'icon-download'
2739 }[$__default["default"].fn.bootstrapTable.theme] || 'fa-download'
2740 });
2741 $__default["default"].extend($__default["default"].fn.bootstrapTable.locales, {
2742 formatExport: function formatExport() {
2743 return 'Export data';
2744 }
2745 });
2746 $__default["default"].extend($__default["default"].fn.bootstrapTable.defaults, $__default["default"].fn.bootstrapTable.locales);
2747 $__default["default"].fn.bootstrapTable.methods.push('exportTable');
2748 $__default["default"].extend($__default["default"].fn.bootstrapTable.defaults, {
2749 // eslint-disable-next-line no-unused-vars
2750 onExportSaved: function onExportSaved(exportedRows) {
2751 return false;
2752 },
2753 onExportStarted: function onExportStarted() {
2754 return false;
2755 }
2756 });
2757 $__default["default"].extend($__default["default"].fn.bootstrapTable.Constructor.EVENTS, {
2758 'export-saved.bs.table': 'onExportSaved',
2759 'export-started.bs.table': 'onExportStarted'
2760 });
2761
2762 $__default["default"].BootstrapTable = /*#__PURE__*/function (_$$BootstrapTable) {
2763 _inherits(_class, _$$BootstrapTable);
2764
2765 var _super = _createSuper(_class);
2766
2767 function _class() {
2768 _classCallCheck(this, _class);
2769
2770 return _super.apply(this, arguments);
2771 }
2772
2773 _createClass(_class, [{
2774 key: "initToolbar",
2775 value: function initToolbar() {
2776 var _this = this,
2777 _get2;
2778
2779 var o = this.options;
2780 var exportTypes = o.exportTypes;
2781 this.showToolbar = this.showToolbar || o.showExport;
2782
2783 if (this.options.showExport) {
2784 if (typeof exportTypes === 'string') {
2785 var types = exportTypes.slice(1, -1).replace(/ /g, '').split(',');
2786 exportTypes = types.map(function (t) {
2787 return t.slice(1, -1);
2788 });
2789 }
2790
2791 if (typeof o.exportOptions === 'string') {
2792 o.exportOptions = Utils.calculateObjectValue(null, o.exportOptions);
2793 }
2794
2795 this.$export = this.$toolbar.find('>.columns div.export');
2796
2797 if (this.$export.length) {
2798 this.updateExportButton();
2799 return;
2800 }
2801
2802 this.buttons = Object.assign(this.buttons, {
2803 export: {
2804 html: function html() {
2805 if (exportTypes.length === 1) {
2806 return "\n <div class=\"export ".concat(_this.constants.classes.buttonsDropdown, "\"\n data-type=\"").concat(exportTypes[0], "\">\n <button class=\"").concat(_this.constants.buttonsClass, "\"\n aria-label=\"").concat(o.formatExport(), "\"\n type=\"button\"\n title=\"").concat(o.formatExport(), "\">\n ").concat(o.showButtonIcons ? Utils.sprintf(_this.constants.html.icon, o.iconsPrefix, o.icons.export) : '', "\n ").concat(o.showButtonText ? o.formatExport() : '', "\n </button>\n </div>\n ");
2807 }
2808
2809 var html = [];
2810 html.push("\n <div class=\"export ".concat(_this.constants.classes.buttonsDropdown, "\">\n <button class=\"").concat(_this.constants.buttonsClass, " dropdown-toggle\"\n aria-label=\"").concat(o.formatExport(), "\"\n ").concat(_this.constants.dataToggle, "=\"dropdown\"\n type=\"button\"\n title=\"").concat(o.formatExport(), "\">\n ").concat(o.showButtonIcons ? Utils.sprintf(_this.constants.html.icon, o.iconsPrefix, o.icons.export) : '', "\n ").concat(o.showButtonText ? o.formatExport() : '', "\n ").concat(_this.constants.html.dropdownCaret, "\n </button>\n ").concat(_this.constants.html.toolbarDropdown[0], "\n "));
2811
2812 var _iterator = _createForOfIteratorHelper(exportTypes),
2813 _step;
2814
2815 try {
2816 for (_iterator.s(); !(_step = _iterator.n()).done;) {
2817 var type = _step.value;
2818
2819 if (TYPE_NAME.hasOwnProperty(type)) {
2820 var $item = $__default["default"](Utils.sprintf(_this.constants.html.pageDropdownItem, '', TYPE_NAME[type]));
2821 $item.attr('data-type', type);
2822 html.push($item.prop('outerHTML'));
2823 }
2824 }
2825 } catch (err) {
2826 _iterator.e(err);
2827 } finally {
2828 _iterator.f();
2829 }
2830
2831 html.push(_this.constants.html.toolbarDropdown[1], '</div>');
2832 return html.join('');
2833 }
2834 }
2835 });
2836 }
2837
2838 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2839 args[_key] = arguments[_key];
2840 }
2841
2842 (_get2 = _get(_getPrototypeOf(_class.prototype), "initToolbar", this)).call.apply(_get2, [this].concat(args));
2843
2844 this.$export = this.$toolbar.find('>.columns div.export');
2845
2846 if (!this.options.showExport) {
2847 return;
2848 }
2849
2850 this.updateExportButton();
2851 var $exportButtons = this.$export.find('[data-type]');
2852
2853 if (exportTypes.length === 1) {
2854 $exportButtons = this.$export;
2855 }
2856
2857 $exportButtons.click(function (e) {
2858 e.preventDefault();
2859
2860 _this.exportTable({
2861 type: $__default["default"](e.currentTarget).data('type')
2862 });
2863 });
2864 this.handleToolbar();
2865 }
2866 }, {
2867 key: "handleToolbar",
2868 value: function handleToolbar() {
2869 if (!this.$export) {
2870 return;
2871 }
2872
2873 if (_get(_getPrototypeOf(_class.prototype), "handleToolbar", this)) {
2874 _get(_getPrototypeOf(_class.prototype), "handleToolbar", this).call(this);
2875 }
2876 }
2877 }, {
2878 key: "exportTable",
2879 value: function exportTable(options) {
2880 var _this2 = this;
2881
2882 var o = this.options;
2883 var stateField = this.header.stateField;
2884 var isCardView = o.cardView;
2885
2886 var doExport = function doExport(callback) {
2887 _this2.trigger('export-started');
2888
2889 if (stateField) {
2890 _this2.hideColumn(stateField);
2891 }
2892
2893 if (isCardView) {
2894 _this2.toggleView();
2895 }
2896
2897 _this2.columns.forEach(function (row) {
2898 if (row.forceHide) {
2899 _this2.hideColumn(row.field);
2900 }
2901 });
2902
2903 var data = _this2.getData();
2904
2905 if (o.detailView && o.detailViewIcon) {
2906 var detailViewIndex = o.detailViewAlign === 'left' ? 0 : _this2.getVisibleFields().length + Utils.getDetailViewIndexOffset(_this2.options);
2907 o.exportOptions.ignoreColumn = [detailViewIndex].concat(o.exportOptions.ignoreColumn || []);
2908 }
2909
2910 if (o.exportFooter && o.height) {
2911 var $footerRow = _this2.$tableFooter.find('tr').first();
2912
2913 var footerData = {};
2914 var footerHtml = [];
2915 $__default["default"].each($footerRow.children(), function (index, footerCell) {
2916 var footerCellHtml = $__default["default"](footerCell).children('.th-inner').first().html();
2917 footerData[_this2.columns[index].field] = footerCellHtml === '&nbsp;' ? null : footerCellHtml; // grab footer cell text into cell index-based array
2918
2919 footerHtml.push(footerCellHtml);
2920 });
2921
2922 _this2.$body.append(_this2.$body.children().last()[0].outerHTML);
2923
2924 var $lastTableRow = _this2.$body.children().last();
2925
2926 $__default["default"].each($lastTableRow.children(), function (index, lastTableRowCell) {
2927 $__default["default"](lastTableRowCell).html(footerHtml[index]);
2928 });
2929 }
2930
2931 var hiddenColumns = _this2.getHiddenColumns();
2932
2933 hiddenColumns.forEach(function (row) {
2934 if (row.forceExport) {
2935 _this2.showColumn(row.field);
2936 }
2937 });
2938
2939 if (typeof o.exportOptions.fileName === 'function') {
2940 options.fileName = o.exportOptions.fileName();
2941 }
2942
2943 _this2.$el.tableExport($__default["default"].extend({
2944 onAfterSaveToFile: function onAfterSaveToFile() {
2945 if (o.exportFooter) {
2946 _this2.load(data);
2947 }
2948
2949 if (stateField) {
2950 _this2.showColumn(stateField);
2951 }
2952
2953 if (isCardView) {
2954 _this2.toggleView();
2955 }
2956
2957 hiddenColumns.forEach(function (row) {
2958 if (row.forceExport) {
2959 _this2.hideColumn(row.field);
2960 }
2961 });
2962
2963 _this2.columns.forEach(function (row) {
2964 if (row.forceHide) {
2965 _this2.showColumn(row.field);
2966 }
2967 });
2968
2969 if (callback) callback();
2970 }
2971 }, o.exportOptions, options));
2972 };
2973
2974 if (o.exportDataType === 'all' && o.pagination) {
2975 var eventName = o.sidePagination === 'server' ? 'post-body.bs.table' : 'page-change.bs.table';
2976 var virtualScroll = this.options.virtualScroll;
2977 this.$el.one(eventName, function () {
2978 setTimeout(function () {
2979 doExport(function () {
2980 _this2.options.virtualScroll = virtualScroll;
2981
2982 _this2.togglePagination();
2983 });
2984 }, 0);
2985 });
2986 this.options.virtualScroll = false;
2987 this.togglePagination();
2988 this.trigger('export-saved', this.getData());
2989 } else if (o.exportDataType === 'selected') {
2990 var data = this.getData();
2991 var selectedData = this.getSelections();
2992 var pagination = o.pagination;
2993
2994 if (!selectedData.length) {
2995 return;
2996 }
2997
2998 if (o.sidePagination === 'server') {
2999 data = _defineProperty({
3000 total: o.totalRows
3001 }, this.options.dataField, data);
3002 selectedData = _defineProperty({
3003 total: selectedData.length
3004 }, this.options.dataField, selectedData);
3005 }
3006
3007 this.load(selectedData);
3008
3009 if (pagination) {
3010 this.togglePagination();
3011 }
3012
3013 doExport(function () {
3014 if (pagination) {
3015 _this2.togglePagination();
3016 }
3017
3018 _this2.load(data);
3019 });
3020 this.trigger('export-saved', selectedData);
3021 } else {
3022 doExport();
3023 this.trigger('export-saved', this.getData(true));
3024 }
3025 }
3026 }, {
3027 key: "updateSelected",
3028 value: function updateSelected() {
3029 _get(_getPrototypeOf(_class.prototype), "updateSelected", this).call(this);
3030
3031 this.updateExportButton();
3032 }
3033 }, {
3034 key: "updateExportButton",
3035 value: function updateExportButton() {
3036 if (this.options.exportDataType === 'selected') {
3037 this.$export.find('> button').prop('disabled', !this.getSelections().length);
3038 }
3039 }
3040 }]);
3041
3042 return _class;
3043 }($__default["default"].BootstrapTable);
3044
3045}));