UNPKG

64.5 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 ($) { 'use strict';
6
7 function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
9 var $__default = /*#__PURE__*/_interopDefaultLegacy($);
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 return Constructor;
31 }
32
33 function _inherits(subClass, superClass) {
34 if (typeof superClass !== "function" && superClass !== null) {
35 throw new TypeError("Super expression must either be null or a function");
36 }
37
38 subClass.prototype = Object.create(superClass && superClass.prototype, {
39 constructor: {
40 value: subClass,
41 writable: true,
42 configurable: true
43 }
44 });
45 if (superClass) _setPrototypeOf(subClass, superClass);
46 }
47
48 function _getPrototypeOf(o) {
49 _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
50 return o.__proto__ || Object.getPrototypeOf(o);
51 };
52 return _getPrototypeOf(o);
53 }
54
55 function _setPrototypeOf(o, p) {
56 _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
57 o.__proto__ = p;
58 return o;
59 };
60
61 return _setPrototypeOf(o, p);
62 }
63
64 function _isNativeReflectConstruct() {
65 if (typeof Reflect === "undefined" || !Reflect.construct) return false;
66 if (Reflect.construct.sham) return false;
67 if (typeof Proxy === "function") return true;
68
69 try {
70 Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
71 return true;
72 } catch (e) {
73 return false;
74 }
75 }
76
77 function _assertThisInitialized(self) {
78 if (self === void 0) {
79 throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
80 }
81
82 return self;
83 }
84
85 function _possibleConstructorReturn(self, call) {
86 if (call && (typeof call === "object" || typeof call === "function")) {
87 return call;
88 }
89
90 return _assertThisInitialized(self);
91 }
92
93 function _createSuper(Derived) {
94 var hasNativeReflectConstruct = _isNativeReflectConstruct();
95
96 return function _createSuperInternal() {
97 var Super = _getPrototypeOf(Derived),
98 result;
99
100 if (hasNativeReflectConstruct) {
101 var NewTarget = _getPrototypeOf(this).constructor;
102
103 result = Reflect.construct(Super, arguments, NewTarget);
104 } else {
105 result = Super.apply(this, arguments);
106 }
107
108 return _possibleConstructorReturn(this, result);
109 };
110 }
111
112 function _superPropBase(object, property) {
113 while (!Object.prototype.hasOwnProperty.call(object, property)) {
114 object = _getPrototypeOf(object);
115 if (object === null) break;
116 }
117
118 return object;
119 }
120
121 function _get(target, property, receiver) {
122 if (typeof Reflect !== "undefined" && Reflect.get) {
123 _get = Reflect.get;
124 } else {
125 _get = function _get(target, property, receiver) {
126 var base = _superPropBase(target, property);
127
128 if (!base) return;
129 var desc = Object.getOwnPropertyDescriptor(base, property);
130
131 if (desc.get) {
132 return desc.get.call(receiver);
133 }
134
135 return desc.value;
136 };
137 }
138
139 return _get(target, property, receiver || target);
140 }
141
142 function _slicedToArray(arr, i) {
143 return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
144 }
145
146 function _arrayWithHoles(arr) {
147 if (Array.isArray(arr)) return arr;
148 }
149
150 function _iterableToArrayLimit(arr, i) {
151 if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;
152 var _arr = [];
153 var _n = true;
154 var _d = false;
155 var _e = undefined;
156
157 try {
158 for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
159 _arr.push(_s.value);
160
161 if (i && _arr.length === i) break;
162 }
163 } catch (err) {
164 _d = true;
165 _e = err;
166 } finally {
167 try {
168 if (!_n && _i["return"] != null) _i["return"]();
169 } finally {
170 if (_d) throw _e;
171 }
172 }
173
174 return _arr;
175 }
176
177 function _unsupportedIterableToArray(o, minLen) {
178 if (!o) return;
179 if (typeof o === "string") return _arrayLikeToArray(o, minLen);
180 var n = Object.prototype.toString.call(o).slice(8, -1);
181 if (n === "Object" && o.constructor) n = o.constructor.name;
182 if (n === "Map" || n === "Set") return Array.from(o);
183 if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
184 }
185
186 function _arrayLikeToArray(arr, len) {
187 if (len == null || len > arr.length) len = arr.length;
188
189 for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
190
191 return arr2;
192 }
193
194 function _nonIterableRest() {
195 throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
196 }
197
198 function _createForOfIteratorHelper(o, allowArrayLike) {
199 var it;
200
201 if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
202 if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
203 if (it) o = it;
204 var i = 0;
205
206 var F = function () {};
207
208 return {
209 s: F,
210 n: function () {
211 if (i >= o.length) return {
212 done: true
213 };
214 return {
215 done: false,
216 value: o[i++]
217 };
218 },
219 e: function (e) {
220 throw e;
221 },
222 f: F
223 };
224 }
225
226 throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
227 }
228
229 var normalCompletion = true,
230 didErr = false,
231 err;
232 return {
233 s: function () {
234 it = o[Symbol.iterator]();
235 },
236 n: function () {
237 var step = it.next();
238 normalCompletion = step.done;
239 return step;
240 },
241 e: function (e) {
242 didErr = true;
243 err = e;
244 },
245 f: function () {
246 try {
247 if (!normalCompletion && it.return != null) it.return();
248 } finally {
249 if (didErr) throw err;
250 }
251 }
252 };
253 }
254
255 var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
256
257 function createCommonjsModule(fn, module) {
258 return module = { exports: {} }, fn(module, module.exports), module.exports;
259 }
260
261 var check = function (it) {
262 return it && it.Math == Math && it;
263 };
264
265 // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
266 var global_1 =
267 /* global globalThis -- safe */
268 check(typeof globalThis == 'object' && globalThis) ||
269 check(typeof window == 'object' && window) ||
270 check(typeof self == 'object' && self) ||
271 check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
272 // eslint-disable-next-line no-new-func -- fallback
273 (function () { return this; })() || Function('return this')();
274
275 var fails = function (exec) {
276 try {
277 return !!exec();
278 } catch (error) {
279 return true;
280 }
281 };
282
283 // Detect IE8's incomplete defineProperty implementation
284 var descriptors = !fails(function () {
285 return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
286 });
287
288 var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
289 var getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
290
291 // Nashorn ~ JDK8 bug
292 var NASHORN_BUG = getOwnPropertyDescriptor$1 && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
293
294 // `Object.prototype.propertyIsEnumerable` method implementation
295 // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
296 var f$4 = NASHORN_BUG ? function propertyIsEnumerable(V) {
297 var descriptor = getOwnPropertyDescriptor$1(this, V);
298 return !!descriptor && descriptor.enumerable;
299 } : nativePropertyIsEnumerable;
300
301 var objectPropertyIsEnumerable = {
302 f: f$4
303 };
304
305 var createPropertyDescriptor = function (bitmap, value) {
306 return {
307 enumerable: !(bitmap & 1),
308 configurable: !(bitmap & 2),
309 writable: !(bitmap & 4),
310 value: value
311 };
312 };
313
314 var toString = {}.toString;
315
316 var classofRaw = function (it) {
317 return toString.call(it).slice(8, -1);
318 };
319
320 var split = ''.split;
321
322 // fallback for non-array-like ES3 and non-enumerable old V8 strings
323 var indexedObject = fails(function () {
324 // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
325 // eslint-disable-next-line no-prototype-builtins -- safe
326 return !Object('z').propertyIsEnumerable(0);
327 }) ? function (it) {
328 return classofRaw(it) == 'String' ? split.call(it, '') : Object(it);
329 } : Object;
330
331 // `RequireObjectCoercible` abstract operation
332 // https://tc39.es/ecma262/#sec-requireobjectcoercible
333 var requireObjectCoercible = function (it) {
334 if (it == undefined) throw TypeError("Can't call method on " + it);
335 return it;
336 };
337
338 // toObject with fallback for non-array-like ES3 strings
339
340
341
342 var toIndexedObject = function (it) {
343 return indexedObject(requireObjectCoercible(it));
344 };
345
346 var isObject = function (it) {
347 return typeof it === 'object' ? it !== null : typeof it === 'function';
348 };
349
350 // `ToPrimitive` abstract operation
351 // https://tc39.es/ecma262/#sec-toprimitive
352 // instead of the ES6 spec version, we didn't implement @@toPrimitive case
353 // and the second argument - flag - preferred type is a string
354 var toPrimitive = function (input, PREFERRED_STRING) {
355 if (!isObject(input)) return input;
356 var fn, val;
357 if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
358 if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
359 if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
360 throw TypeError("Can't convert object to primitive value");
361 };
362
363 var hasOwnProperty = {}.hasOwnProperty;
364
365 var has$1 = function (it, key) {
366 return hasOwnProperty.call(it, key);
367 };
368
369 var document$1 = global_1.document;
370 // typeof document.createElement is 'object' in old IE
371 var EXISTS = isObject(document$1) && isObject(document$1.createElement);
372
373 var documentCreateElement = function (it) {
374 return EXISTS ? document$1.createElement(it) : {};
375 };
376
377 // Thank's IE8 for his funny defineProperty
378 var ie8DomDefine = !descriptors && !fails(function () {
379 return Object.defineProperty(documentCreateElement('div'), 'a', {
380 get: function () { return 7; }
381 }).a != 7;
382 });
383
384 var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
385
386 // `Object.getOwnPropertyDescriptor` method
387 // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
388 var f$3 = descriptors ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
389 O = toIndexedObject(O);
390 P = toPrimitive(P, true);
391 if (ie8DomDefine) try {
392 return nativeGetOwnPropertyDescriptor(O, P);
393 } catch (error) { /* empty */ }
394 if (has$1(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]);
395 };
396
397 var objectGetOwnPropertyDescriptor = {
398 f: f$3
399 };
400
401 var anObject = function (it) {
402 if (!isObject(it)) {
403 throw TypeError(String(it) + ' is not an object');
404 } return it;
405 };
406
407 var nativeDefineProperty = Object.defineProperty;
408
409 // `Object.defineProperty` method
410 // https://tc39.es/ecma262/#sec-object.defineproperty
411 var f$2 = descriptors ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
412 anObject(O);
413 P = toPrimitive(P, true);
414 anObject(Attributes);
415 if (ie8DomDefine) try {
416 return nativeDefineProperty(O, P, Attributes);
417 } catch (error) { /* empty */ }
418 if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
419 if ('value' in Attributes) O[P] = Attributes.value;
420 return O;
421 };
422
423 var objectDefineProperty = {
424 f: f$2
425 };
426
427 var createNonEnumerableProperty = descriptors ? function (object, key, value) {
428 return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value));
429 } : function (object, key, value) {
430 object[key] = value;
431 return object;
432 };
433
434 var setGlobal = function (key, value) {
435 try {
436 createNonEnumerableProperty(global_1, key, value);
437 } catch (error) {
438 global_1[key] = value;
439 } return value;
440 };
441
442 var SHARED = '__core-js_shared__';
443 var store$1 = global_1[SHARED] || setGlobal(SHARED, {});
444
445 var sharedStore = store$1;
446
447 var functionToString = Function.toString;
448
449 // this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
450 if (typeof sharedStore.inspectSource != 'function') {
451 sharedStore.inspectSource = function (it) {
452 return functionToString.call(it);
453 };
454 }
455
456 var inspectSource = sharedStore.inspectSource;
457
458 var WeakMap$1 = global_1.WeakMap;
459
460 var nativeWeakMap = typeof WeakMap$1 === 'function' && /native code/.test(inspectSource(WeakMap$1));
461
462 var shared = createCommonjsModule(function (module) {
463 (module.exports = function (key, value) {
464 return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {});
465 })('versions', []).push({
466 version: '3.9.1',
467 mode: 'global',
468 copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
469 });
470 });
471
472 var id = 0;
473 var postfix = Math.random();
474
475 var uid = function (key) {
476 return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
477 };
478
479 var keys = shared('keys');
480
481 var sharedKey = function (key) {
482 return keys[key] || (keys[key] = uid(key));
483 };
484
485 var hiddenKeys$1 = {};
486
487 var WeakMap = global_1.WeakMap;
488 var set, get, has;
489
490 var enforce = function (it) {
491 return has(it) ? get(it) : set(it, {});
492 };
493
494 var getterFor = function (TYPE) {
495 return function (it) {
496 var state;
497 if (!isObject(it) || (state = get(it)).type !== TYPE) {
498 throw TypeError('Incompatible receiver, ' + TYPE + ' required');
499 } return state;
500 };
501 };
502
503 if (nativeWeakMap) {
504 var store = sharedStore.state || (sharedStore.state = new WeakMap());
505 var wmget = store.get;
506 var wmhas = store.has;
507 var wmset = store.set;
508 set = function (it, metadata) {
509 metadata.facade = it;
510 wmset.call(store, it, metadata);
511 return metadata;
512 };
513 get = function (it) {
514 return wmget.call(store, it) || {};
515 };
516 has = function (it) {
517 return wmhas.call(store, it);
518 };
519 } else {
520 var STATE = sharedKey('state');
521 hiddenKeys$1[STATE] = true;
522 set = function (it, metadata) {
523 metadata.facade = it;
524 createNonEnumerableProperty(it, STATE, metadata);
525 return metadata;
526 };
527 get = function (it) {
528 return has$1(it, STATE) ? it[STATE] : {};
529 };
530 has = function (it) {
531 return has$1(it, STATE);
532 };
533 }
534
535 var internalState = {
536 set: set,
537 get: get,
538 has: has,
539 enforce: enforce,
540 getterFor: getterFor
541 };
542
543 var redefine = createCommonjsModule(function (module) {
544 var getInternalState = internalState.get;
545 var enforceInternalState = internalState.enforce;
546 var TEMPLATE = String(String).split('String');
547
548 (module.exports = function (O, key, value, options) {
549 var unsafe = options ? !!options.unsafe : false;
550 var simple = options ? !!options.enumerable : false;
551 var noTargetGet = options ? !!options.noTargetGet : false;
552 var state;
553 if (typeof value == 'function') {
554 if (typeof key == 'string' && !has$1(value, 'name')) {
555 createNonEnumerableProperty(value, 'name', key);
556 }
557 state = enforceInternalState(value);
558 if (!state.source) {
559 state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
560 }
561 }
562 if (O === global_1) {
563 if (simple) O[key] = value;
564 else setGlobal(key, value);
565 return;
566 } else if (!unsafe) {
567 delete O[key];
568 } else if (!noTargetGet && O[key]) {
569 simple = true;
570 }
571 if (simple) O[key] = value;
572 else createNonEnumerableProperty(O, key, value);
573 // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
574 })(Function.prototype, 'toString', function toString() {
575 return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
576 });
577 });
578
579 var path = global_1;
580
581 var aFunction$1 = function (variable) {
582 return typeof variable == 'function' ? variable : undefined;
583 };
584
585 var getBuiltIn = function (namespace, method) {
586 return arguments.length < 2 ? aFunction$1(path[namespace]) || aFunction$1(global_1[namespace])
587 : path[namespace] && path[namespace][method] || global_1[namespace] && global_1[namespace][method];
588 };
589
590 var ceil = Math.ceil;
591 var floor$1 = Math.floor;
592
593 // `ToInteger` abstract operation
594 // https://tc39.es/ecma262/#sec-tointeger
595 var toInteger = function (argument) {
596 return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor$1 : ceil)(argument);
597 };
598
599 var min$2 = Math.min;
600
601 // `ToLength` abstract operation
602 // https://tc39.es/ecma262/#sec-tolength
603 var toLength = function (argument) {
604 return argument > 0 ? min$2(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
605 };
606
607 var max$1 = Math.max;
608 var min$1 = Math.min;
609
610 // Helper for a popular repeating case of the spec:
611 // Let integer be ? ToInteger(index).
612 // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
613 var toAbsoluteIndex = function (index, length) {
614 var integer = toInteger(index);
615 return integer < 0 ? max$1(integer + length, 0) : min$1(integer, length);
616 };
617
618 // `Array.prototype.{ indexOf, includes }` methods implementation
619 var createMethod$3 = function (IS_INCLUDES) {
620 return function ($this, el, fromIndex) {
621 var O = toIndexedObject($this);
622 var length = toLength(O.length);
623 var index = toAbsoluteIndex(fromIndex, length);
624 var value;
625 // Array#includes uses SameValueZero equality algorithm
626 // eslint-disable-next-line no-self-compare -- NaN check
627 if (IS_INCLUDES && el != el) while (length > index) {
628 value = O[index++];
629 // eslint-disable-next-line no-self-compare -- NaN check
630 if (value != value) return true;
631 // Array#indexOf ignores holes, Array#includes - not
632 } else for (;length > index; index++) {
633 if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
634 } return !IS_INCLUDES && -1;
635 };
636 };
637
638 var arrayIncludes = {
639 // `Array.prototype.includes` method
640 // https://tc39.es/ecma262/#sec-array.prototype.includes
641 includes: createMethod$3(true),
642 // `Array.prototype.indexOf` method
643 // https://tc39.es/ecma262/#sec-array.prototype.indexof
644 indexOf: createMethod$3(false)
645 };
646
647 var indexOf = arrayIncludes.indexOf;
648
649
650 var objectKeysInternal = function (object, names) {
651 var O = toIndexedObject(object);
652 var i = 0;
653 var result = [];
654 var key;
655 for (key in O) !has$1(hiddenKeys$1, key) && has$1(O, key) && result.push(key);
656 // Don't enum bug & hidden keys
657 while (names.length > i) if (has$1(O, key = names[i++])) {
658 ~indexOf(result, key) || result.push(key);
659 }
660 return result;
661 };
662
663 // IE8- don't enum bug keys
664 var enumBugKeys = [
665 'constructor',
666 'hasOwnProperty',
667 'isPrototypeOf',
668 'propertyIsEnumerable',
669 'toLocaleString',
670 'toString',
671 'valueOf'
672 ];
673
674 var hiddenKeys = enumBugKeys.concat('length', 'prototype');
675
676 // `Object.getOwnPropertyNames` method
677 // https://tc39.es/ecma262/#sec-object.getownpropertynames
678 var f$1 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
679 return objectKeysInternal(O, hiddenKeys);
680 };
681
682 var objectGetOwnPropertyNames = {
683 f: f$1
684 };
685
686 var f = Object.getOwnPropertySymbols;
687
688 var objectGetOwnPropertySymbols = {
689 f: f
690 };
691
692 // all object keys, includes non-enumerable and symbols
693 var ownKeys = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
694 var keys = objectGetOwnPropertyNames.f(anObject(it));
695 var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
696 return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
697 };
698
699 var copyConstructorProperties = function (target, source) {
700 var keys = ownKeys(source);
701 var defineProperty = objectDefineProperty.f;
702 var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
703 for (var i = 0; i < keys.length; i++) {
704 var key = keys[i];
705 if (!has$1(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
706 }
707 };
708
709 var replacement = /#|\.prototype\./;
710
711 var isForced = function (feature, detection) {
712 var value = data[normalize(feature)];
713 return value == POLYFILL ? true
714 : value == NATIVE ? false
715 : typeof detection == 'function' ? fails(detection)
716 : !!detection;
717 };
718
719 var normalize = isForced.normalize = function (string) {
720 return String(string).replace(replacement, '.').toLowerCase();
721 };
722
723 var data = isForced.data = {};
724 var NATIVE = isForced.NATIVE = 'N';
725 var POLYFILL = isForced.POLYFILL = 'P';
726
727 var isForced_1 = isForced;
728
729 var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
730
731
732
733
734
735
736 /*
737 options.target - name of the target object
738 options.global - target is the global object
739 options.stat - export as static methods of target
740 options.proto - export as prototype methods of target
741 options.real - real prototype method for the `pure` version
742 options.forced - export even if the native feature is available
743 options.bind - bind methods to the target, required for the `pure` version
744 options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
745 options.unsafe - use the simple assignment of property instead of delete + defineProperty
746 options.sham - add a flag to not completely full polyfills
747 options.enumerable - export as enumerable property
748 options.noTargetGet - prevent calling a getter on target
749 */
750 var _export = function (options, source) {
751 var TARGET = options.target;
752 var GLOBAL = options.global;
753 var STATIC = options.stat;
754 var FORCED, target, key, targetProperty, sourceProperty, descriptor;
755 if (GLOBAL) {
756 target = global_1;
757 } else if (STATIC) {
758 target = global_1[TARGET] || setGlobal(TARGET, {});
759 } else {
760 target = (global_1[TARGET] || {}).prototype;
761 }
762 if (target) for (key in source) {
763 sourceProperty = source[key];
764 if (options.noTargetGet) {
765 descriptor = getOwnPropertyDescriptor(target, key);
766 targetProperty = descriptor && descriptor.value;
767 } else targetProperty = target[key];
768 FORCED = isForced_1(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
769 // contained in target
770 if (!FORCED && targetProperty !== undefined) {
771 if (typeof sourceProperty === typeof targetProperty) continue;
772 copyConstructorProperties(sourceProperty, targetProperty);
773 }
774 // add a flag to not completely full polyfills
775 if (options.sham || (targetProperty && targetProperty.sham)) {
776 createNonEnumerableProperty(sourceProperty, 'sham', true);
777 }
778 // extend global
779 redefine(target, key, sourceProperty, options);
780 }
781 };
782
783 // `RegExp.prototype.flags` getter implementation
784 // https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
785 var regexpFlags = function () {
786 var that = anObject(this);
787 var result = '';
788 if (that.global) result += 'g';
789 if (that.ignoreCase) result += 'i';
790 if (that.multiline) result += 'm';
791 if (that.dotAll) result += 's';
792 if (that.unicode) result += 'u';
793 if (that.sticky) result += 'y';
794 return result;
795 };
796
797 // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,
798 // so we use an intermediate function.
799 function RE(s, f) {
800 return RegExp(s, f);
801 }
802
803 var UNSUPPORTED_Y$1 = fails(function () {
804 // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
805 var re = RE('a', 'y');
806 re.lastIndex = 2;
807 return re.exec('abcd') != null;
808 });
809
810 var BROKEN_CARET = fails(function () {
811 // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
812 var re = RE('^r', 'gy');
813 re.lastIndex = 2;
814 return re.exec('str') != null;
815 });
816
817 var regexpStickyHelpers = {
818 UNSUPPORTED_Y: UNSUPPORTED_Y$1,
819 BROKEN_CARET: BROKEN_CARET
820 };
821
822 var nativeExec = RegExp.prototype.exec;
823 // This always refers to the native implementation, because the
824 // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
825 // which loads this file before patching the method.
826 var nativeReplace = String.prototype.replace;
827
828 var patchedExec = nativeExec;
829
830 var UPDATES_LAST_INDEX_WRONG = (function () {
831 var re1 = /a/;
832 var re2 = /b*/g;
833 nativeExec.call(re1, 'a');
834 nativeExec.call(re2, 'a');
835 return re1.lastIndex !== 0 || re2.lastIndex !== 0;
836 })();
837
838 var UNSUPPORTED_Y = regexpStickyHelpers.UNSUPPORTED_Y || regexpStickyHelpers.BROKEN_CARET;
839
840 // nonparticipating capturing group, copied from es5-shim's String#split patch.
841 // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing
842 var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
843
844 var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;
845
846 if (PATCH) {
847 patchedExec = function exec(str) {
848 var re = this;
849 var lastIndex, reCopy, match, i;
850 var sticky = UNSUPPORTED_Y && re.sticky;
851 var flags = regexpFlags.call(re);
852 var source = re.source;
853 var charsAdded = 0;
854 var strCopy = str;
855
856 if (sticky) {
857 flags = flags.replace('y', '');
858 if (flags.indexOf('g') === -1) {
859 flags += 'g';
860 }
861
862 strCopy = String(str).slice(re.lastIndex);
863 // Support anchored sticky behavior.
864 if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) {
865 source = '(?: ' + source + ')';
866 strCopy = ' ' + strCopy;
867 charsAdded++;
868 }
869 // ^(? + rx + ) is needed, in combination with some str slicing, to
870 // simulate the 'y' flag.
871 reCopy = new RegExp('^(?:' + source + ')', flags);
872 }
873
874 if (NPCG_INCLUDED) {
875 reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
876 }
877 if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
878
879 match = nativeExec.call(sticky ? reCopy : re, strCopy);
880
881 if (sticky) {
882 if (match) {
883 match.input = match.input.slice(charsAdded);
884 match[0] = match[0].slice(charsAdded);
885 match.index = re.lastIndex;
886 re.lastIndex += match[0].length;
887 } else re.lastIndex = 0;
888 } else if (UPDATES_LAST_INDEX_WRONG && match) {
889 re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
890 }
891 if (NPCG_INCLUDED && match && match.length > 1) {
892 // Fix browsers whose `exec` methods don't consistently return `undefined`
893 // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
894 nativeReplace.call(match[0], reCopy, function () {
895 for (i = 1; i < arguments.length - 2; i++) {
896 if (arguments[i] === undefined) match[i] = undefined;
897 }
898 });
899 }
900
901 return match;
902 };
903 }
904
905 var regexpExec = patchedExec;
906
907 // `RegExp.prototype.exec` method
908 // https://tc39.es/ecma262/#sec-regexp.prototype.exec
909 _export({ target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, {
910 exec: regexpExec
911 });
912
913 var engineIsNode = classofRaw(global_1.process) == 'process';
914
915 var engineUserAgent = getBuiltIn('navigator', 'userAgent') || '';
916
917 var process = global_1.process;
918 var versions = process && process.versions;
919 var v8 = versions && versions.v8;
920 var match, version;
921
922 if (v8) {
923 match = v8.split('.');
924 version = match[0] + match[1];
925 } else if (engineUserAgent) {
926 match = engineUserAgent.match(/Edge\/(\d+)/);
927 if (!match || match[1] >= 74) {
928 match = engineUserAgent.match(/Chrome\/(\d+)/);
929 if (match) version = match[1];
930 }
931 }
932
933 var engineV8Version = version && +version;
934
935 var nativeSymbol = !!Object.getOwnPropertySymbols && !fails(function () {
936 /* global Symbol -- required for testing */
937 return !Symbol.sham &&
938 // Chrome 38 Symbol has incorrect toString conversion
939 // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
940 (engineIsNode ? engineV8Version === 38 : engineV8Version > 37 && engineV8Version < 41);
941 });
942
943 var useSymbolAsUid = nativeSymbol
944 /* global Symbol -- safe */
945 && !Symbol.sham
946 && typeof Symbol.iterator == 'symbol';
947
948 var WellKnownSymbolsStore = shared('wks');
949 var Symbol$1 = global_1.Symbol;
950 var createWellKnownSymbol = useSymbolAsUid ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid;
951
952 var wellKnownSymbol = function (name) {
953 if (!has$1(WellKnownSymbolsStore, name) || !(nativeSymbol || typeof WellKnownSymbolsStore[name] == 'string')) {
954 if (nativeSymbol && has$1(Symbol$1, name)) {
955 WellKnownSymbolsStore[name] = Symbol$1[name];
956 } else {
957 WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
958 }
959 } return WellKnownSymbolsStore[name];
960 };
961
962 // TODO: Remove from `core-js@4` since it's moved to entry points
963
964
965
966
967
968
969
970 var SPECIES$2 = wellKnownSymbol('species');
971
972 var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
973 // #replace needs built-in support for named groups.
974 // #match works fine because it just return the exec results, even if it has
975 // a "grops" property.
976 var re = /./;
977 re.exec = function () {
978 var result = [];
979 result.groups = { a: '7' };
980 return result;
981 };
982 return ''.replace(re, '$<a>') !== '7';
983 });
984
985 // IE <= 11 replaces $0 with the whole match, as if it was $&
986 // https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
987 var REPLACE_KEEPS_$0 = (function () {
988 return 'a'.replace(/./, '$0') === '$0';
989 })();
990
991 var REPLACE = wellKnownSymbol('replace');
992 // Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string
993 var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
994 if (/./[REPLACE]) {
995 return /./[REPLACE]('a', '$0') === '';
996 }
997 return false;
998 })();
999
1000 // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
1001 // Weex JS has frozen built-in prototypes, so use try / catch wrapper
1002 var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
1003 // eslint-disable-next-line regexp/no-empty-group -- required for testing
1004 var re = /(?:)/;
1005 var originalExec = re.exec;
1006 re.exec = function () { return originalExec.apply(this, arguments); };
1007 var result = 'ab'.split(re);
1008 return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
1009 });
1010
1011 var fixRegexpWellKnownSymbolLogic = function (KEY, length, exec, sham) {
1012 var SYMBOL = wellKnownSymbol(KEY);
1013
1014 var DELEGATES_TO_SYMBOL = !fails(function () {
1015 // String methods call symbol-named RegEp methods
1016 var O = {};
1017 O[SYMBOL] = function () { return 7; };
1018 return ''[KEY](O) != 7;
1019 });
1020
1021 var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
1022 // Symbol-named RegExp methods call .exec
1023 var execCalled = false;
1024 var re = /a/;
1025
1026 if (KEY === 'split') {
1027 // We can't use real regex here since it causes deoptimization
1028 // and serious performance degradation in V8
1029 // https://github.com/zloirock/core-js/issues/306
1030 re = {};
1031 // RegExp[@@split] doesn't call the regex's exec method, but first creates
1032 // a new one. We need to return the patched regex when creating the new one.
1033 re.constructor = {};
1034 re.constructor[SPECIES$2] = function () { return re; };
1035 re.flags = '';
1036 re[SYMBOL] = /./[SYMBOL];
1037 }
1038
1039 re.exec = function () { execCalled = true; return null; };
1040
1041 re[SYMBOL]('');
1042 return !execCalled;
1043 });
1044
1045 if (
1046 !DELEGATES_TO_SYMBOL ||
1047 !DELEGATES_TO_EXEC ||
1048 (KEY === 'replace' && !(
1049 REPLACE_SUPPORTS_NAMED_GROUPS &&
1050 REPLACE_KEEPS_$0 &&
1051 !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
1052 )) ||
1053 (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
1054 ) {
1055 var nativeRegExpMethod = /./[SYMBOL];
1056 var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
1057 if (regexp.exec === regexpExec) {
1058 if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
1059 // The native String method already delegates to @@method (this
1060 // polyfilled function), leasing to infinite recursion.
1061 // We avoid it by directly calling the native @@method method.
1062 return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
1063 }
1064 return { done: true, value: nativeMethod.call(str, regexp, arg2) };
1065 }
1066 return { done: false };
1067 }, {
1068 REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,
1069 REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
1070 });
1071 var stringMethod = methods[0];
1072 var regexMethod = methods[1];
1073
1074 redefine(String.prototype, KEY, stringMethod);
1075 redefine(RegExp.prototype, SYMBOL, length == 2
1076 // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
1077 // 21.2.5.11 RegExp.prototype[@@split](string, limit)
1078 ? function (string, arg) { return regexMethod.call(string, this, arg); }
1079 // 21.2.5.6 RegExp.prototype[@@match](string)
1080 // 21.2.5.9 RegExp.prototype[@@search](string)
1081 : function (string) { return regexMethod.call(string, this); }
1082 );
1083 }
1084
1085 if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);
1086 };
1087
1088 // `String.prototype.{ codePointAt, at }` methods implementation
1089 var createMethod$2 = function (CONVERT_TO_STRING) {
1090 return function ($this, pos) {
1091 var S = String(requireObjectCoercible($this));
1092 var position = toInteger(pos);
1093 var size = S.length;
1094 var first, second;
1095 if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
1096 first = S.charCodeAt(position);
1097 return first < 0xD800 || first > 0xDBFF || position + 1 === size
1098 || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
1099 ? CONVERT_TO_STRING ? S.charAt(position) : first
1100 : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
1101 };
1102 };
1103
1104 var stringMultibyte = {
1105 // `String.prototype.codePointAt` method
1106 // https://tc39.es/ecma262/#sec-string.prototype.codepointat
1107 codeAt: createMethod$2(false),
1108 // `String.prototype.at` method
1109 // https://github.com/mathiasbynens/String.prototype.at
1110 charAt: createMethod$2(true)
1111 };
1112
1113 var charAt = stringMultibyte.charAt;
1114
1115 // `AdvanceStringIndex` abstract operation
1116 // https://tc39.es/ecma262/#sec-advancestringindex
1117 var advanceStringIndex = function (S, index, unicode) {
1118 return index + (unicode ? charAt(S, index).length : 1);
1119 };
1120
1121 // `ToObject` abstract operation
1122 // https://tc39.es/ecma262/#sec-toobject
1123 var toObject = function (argument) {
1124 return Object(requireObjectCoercible(argument));
1125 };
1126
1127 var floor = Math.floor;
1128 var replace = ''.replace;
1129 var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g;
1130 var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g;
1131
1132 // https://tc39.es/ecma262/#sec-getsubstitution
1133 var getSubstitution = function (matched, str, position, captures, namedCaptures, replacement) {
1134 var tailPos = position + matched.length;
1135 var m = captures.length;
1136 var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
1137 if (namedCaptures !== undefined) {
1138 namedCaptures = toObject(namedCaptures);
1139 symbols = SUBSTITUTION_SYMBOLS;
1140 }
1141 return replace.call(replacement, symbols, function (match, ch) {
1142 var capture;
1143 switch (ch.charAt(0)) {
1144 case '$': return '$';
1145 case '&': return matched;
1146 case '`': return str.slice(0, position);
1147 case "'": return str.slice(tailPos);
1148 case '<':
1149 capture = namedCaptures[ch.slice(1, -1)];
1150 break;
1151 default: // \d\d?
1152 var n = +ch;
1153 if (n === 0) return match;
1154 if (n > m) {
1155 var f = floor(n / 10);
1156 if (f === 0) return match;
1157 if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
1158 return match;
1159 }
1160 capture = captures[n - 1];
1161 }
1162 return capture === undefined ? '' : capture;
1163 });
1164 };
1165
1166 // `RegExpExec` abstract operation
1167 // https://tc39.es/ecma262/#sec-regexpexec
1168 var regexpExecAbstract = function (R, S) {
1169 var exec = R.exec;
1170 if (typeof exec === 'function') {
1171 var result = exec.call(R, S);
1172 if (typeof result !== 'object') {
1173 throw TypeError('RegExp exec method returned something other than an Object or null');
1174 }
1175 return result;
1176 }
1177
1178 if (classofRaw(R) !== 'RegExp') {
1179 throw TypeError('RegExp#exec called on incompatible receiver');
1180 }
1181
1182 return regexpExec.call(R, S);
1183 };
1184
1185 var max = Math.max;
1186 var min = Math.min;
1187
1188 var maybeToString = function (it) {
1189 return it === undefined ? it : String(it);
1190 };
1191
1192 // @@replace logic
1193 fixRegexpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {
1194 var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;
1195 var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;
1196 var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';
1197
1198 return [
1199 // `String.prototype.replace` method
1200 // https://tc39.es/ecma262/#sec-string.prototype.replace
1201 function replace(searchValue, replaceValue) {
1202 var O = requireObjectCoercible(this);
1203 var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];
1204 return replacer !== undefined
1205 ? replacer.call(searchValue, O, replaceValue)
1206 : nativeReplace.call(String(O), searchValue, replaceValue);
1207 },
1208 // `RegExp.prototype[@@replace]` method
1209 // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
1210 function (regexp, replaceValue) {
1211 if (
1212 (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||
1213 (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)
1214 ) {
1215 var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
1216 if (res.done) return res.value;
1217 }
1218
1219 var rx = anObject(regexp);
1220 var S = String(this);
1221
1222 var functionalReplace = typeof replaceValue === 'function';
1223 if (!functionalReplace) replaceValue = String(replaceValue);
1224
1225 var global = rx.global;
1226 if (global) {
1227 var fullUnicode = rx.unicode;
1228 rx.lastIndex = 0;
1229 }
1230 var results = [];
1231 while (true) {
1232 var result = regexpExecAbstract(rx, S);
1233 if (result === null) break;
1234
1235 results.push(result);
1236 if (!global) break;
1237
1238 var matchStr = String(result[0]);
1239 if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
1240 }
1241
1242 var accumulatedResult = '';
1243 var nextSourcePosition = 0;
1244 for (var i = 0; i < results.length; i++) {
1245 result = results[i];
1246
1247 var matched = String(result[0]);
1248 var position = max(min(toInteger(result.index), S.length), 0);
1249 var captures = [];
1250 // NOTE: This is equivalent to
1251 // captures = result.slice(1).map(maybeToString)
1252 // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
1253 // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
1254 // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
1255 for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
1256 var namedCaptures = result.groups;
1257 if (functionalReplace) {
1258 var replacerArgs = [matched].concat(captures, position, S);
1259 if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
1260 var replacement = String(replaceValue.apply(undefined, replacerArgs));
1261 } else {
1262 replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
1263 }
1264 if (position >= nextSourcePosition) {
1265 accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
1266 nextSourcePosition = position + matched.length;
1267 }
1268 }
1269 return accumulatedResult + S.slice(nextSourcePosition);
1270 }
1271 ];
1272 });
1273
1274 var arrayMethodIsStrict = function (METHOD_NAME, argument) {
1275 var method = [][METHOD_NAME];
1276 return !!method && fails(function () {
1277 // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing
1278 method.call(null, argument || function () { throw 1; }, 1);
1279 });
1280 };
1281
1282 var $indexOf = arrayIncludes.indexOf;
1283
1284
1285 var nativeIndexOf = [].indexOf;
1286
1287 var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;
1288 var STRICT_METHOD$1 = arrayMethodIsStrict('indexOf');
1289
1290 // `Array.prototype.indexOf` method
1291 // https://tc39.es/ecma262/#sec-array.prototype.indexof
1292 _export({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD$1 }, {
1293 indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {
1294 return NEGATIVE_ZERO
1295 // convert -0 to +0
1296 ? nativeIndexOf.apply(this, arguments) || 0
1297 : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);
1298 }
1299 });
1300
1301 // `IsArray` abstract operation
1302 // https://tc39.es/ecma262/#sec-isarray
1303 var isArray = Array.isArray || function isArray(arg) {
1304 return classofRaw(arg) == 'Array';
1305 };
1306
1307 var createProperty = function (object, key, value) {
1308 var propertyKey = toPrimitive(key);
1309 if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value));
1310 else object[propertyKey] = value;
1311 };
1312
1313 var SPECIES$1 = wellKnownSymbol('species');
1314
1315 // `ArraySpeciesCreate` abstract operation
1316 // https://tc39.es/ecma262/#sec-arrayspeciescreate
1317 var arraySpeciesCreate = function (originalArray, length) {
1318 var C;
1319 if (isArray(originalArray)) {
1320 C = originalArray.constructor;
1321 // cross-realm fallback
1322 if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
1323 else if (isObject(C)) {
1324 C = C[SPECIES$1];
1325 if (C === null) C = undefined;
1326 }
1327 } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
1328 };
1329
1330 var SPECIES = wellKnownSymbol('species');
1331
1332 var arrayMethodHasSpeciesSupport = function (METHOD_NAME) {
1333 // We can't use this feature detection in V8 since it causes
1334 // deoptimization and serious performance degradation
1335 // https://github.com/zloirock/core-js/issues/677
1336 return engineV8Version >= 51 || !fails(function () {
1337 var array = [];
1338 var constructor = array.constructor = {};
1339 constructor[SPECIES] = function () {
1340 return { foo: 1 };
1341 };
1342 return array[METHOD_NAME](Boolean).foo !== 1;
1343 });
1344 };
1345
1346 var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
1347 var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
1348 var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
1349
1350 // We can't use this feature detection in V8 since it causes
1351 // deoptimization and serious performance degradation
1352 // https://github.com/zloirock/core-js/issues/679
1353 var IS_CONCAT_SPREADABLE_SUPPORT = engineV8Version >= 51 || !fails(function () {
1354 var array = [];
1355 array[IS_CONCAT_SPREADABLE] = false;
1356 return array.concat()[0] !== array;
1357 });
1358
1359 var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
1360
1361 var isConcatSpreadable = function (O) {
1362 if (!isObject(O)) return false;
1363 var spreadable = O[IS_CONCAT_SPREADABLE];
1364 return spreadable !== undefined ? !!spreadable : isArray(O);
1365 };
1366
1367 var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
1368
1369 // `Array.prototype.concat` method
1370 // https://tc39.es/ecma262/#sec-array.prototype.concat
1371 // with adding support of @@isConcatSpreadable and @@species
1372 _export({ target: 'Array', proto: true, forced: FORCED }, {
1373 // eslint-disable-next-line no-unused-vars -- required for `.length`
1374 concat: function concat(arg) {
1375 var O = toObject(this);
1376 var A = arraySpeciesCreate(O, 0);
1377 var n = 0;
1378 var i, k, length, len, E;
1379 for (i = -1, length = arguments.length; i < length; i++) {
1380 E = i === -1 ? O : arguments[i];
1381 if (isConcatSpreadable(E)) {
1382 len = toLength(E.length);
1383 if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
1384 for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
1385 } else {
1386 if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
1387 createProperty(A, n++, E);
1388 }
1389 }
1390 A.length = n;
1391 return A;
1392 }
1393 });
1394
1395 var nativeJoin = [].join;
1396
1397 var ES3_STRINGS = indexedObject != Object;
1398 var STRICT_METHOD = arrayMethodIsStrict('join', ',');
1399
1400 // `Array.prototype.join` method
1401 // https://tc39.es/ecma262/#sec-array.prototype.join
1402 _export({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {
1403 join: function join(separator) {
1404 return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);
1405 }
1406 });
1407
1408 var aFunction = function (it) {
1409 if (typeof it != 'function') {
1410 throw TypeError(String(it) + ' is not a function');
1411 } return it;
1412 };
1413
1414 // optional / simple context binding
1415 var functionBindContext = function (fn, that, length) {
1416 aFunction(fn);
1417 if (that === undefined) return fn;
1418 switch (length) {
1419 case 0: return function () {
1420 return fn.call(that);
1421 };
1422 case 1: return function (a) {
1423 return fn.call(that, a);
1424 };
1425 case 2: return function (a, b) {
1426 return fn.call(that, a, b);
1427 };
1428 case 3: return function (a, b, c) {
1429 return fn.call(that, a, b, c);
1430 };
1431 }
1432 return function (/* ...args */) {
1433 return fn.apply(that, arguments);
1434 };
1435 };
1436
1437 var push = [].push;
1438
1439 // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
1440 var createMethod$1 = function (TYPE) {
1441 var IS_MAP = TYPE == 1;
1442 var IS_FILTER = TYPE == 2;
1443 var IS_SOME = TYPE == 3;
1444 var IS_EVERY = TYPE == 4;
1445 var IS_FIND_INDEX = TYPE == 6;
1446 var IS_FILTER_OUT = TYPE == 7;
1447 var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
1448 return function ($this, callbackfn, that, specificCreate) {
1449 var O = toObject($this);
1450 var self = indexedObject(O);
1451 var boundFunction = functionBindContext(callbackfn, that, 3);
1452 var length = toLength(self.length);
1453 var index = 0;
1454 var create = specificCreate || arraySpeciesCreate;
1455 var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
1456 var value, result;
1457 for (;length > index; index++) if (NO_HOLES || index in self) {
1458 value = self[index];
1459 result = boundFunction(value, index, O);
1460 if (TYPE) {
1461 if (IS_MAP) target[index] = result; // map
1462 else if (result) switch (TYPE) {
1463 case 3: return true; // some
1464 case 5: return value; // find
1465 case 6: return index; // findIndex
1466 case 2: push.call(target, value); // filter
1467 } else switch (TYPE) {
1468 case 4: return false; // every
1469 case 7: push.call(target, value); // filterOut
1470 }
1471 }
1472 }
1473 return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
1474 };
1475 };
1476
1477 var arrayIteration = {
1478 // `Array.prototype.forEach` method
1479 // https://tc39.es/ecma262/#sec-array.prototype.foreach
1480 forEach: createMethod$1(0),
1481 // `Array.prototype.map` method
1482 // https://tc39.es/ecma262/#sec-array.prototype.map
1483 map: createMethod$1(1),
1484 // `Array.prototype.filter` method
1485 // https://tc39.es/ecma262/#sec-array.prototype.filter
1486 filter: createMethod$1(2),
1487 // `Array.prototype.some` method
1488 // https://tc39.es/ecma262/#sec-array.prototype.some
1489 some: createMethod$1(3),
1490 // `Array.prototype.every` method
1491 // https://tc39.es/ecma262/#sec-array.prototype.every
1492 every: createMethod$1(4),
1493 // `Array.prototype.find` method
1494 // https://tc39.es/ecma262/#sec-array.prototype.find
1495 find: createMethod$1(5),
1496 // `Array.prototype.findIndex` method
1497 // https://tc39.es/ecma262/#sec-array.prototype.findIndex
1498 findIndex: createMethod$1(6),
1499 // `Array.prototype.filterOut` method
1500 // https://github.com/tc39/proposal-array-filtering
1501 filterOut: createMethod$1(7)
1502 };
1503
1504 // `Object.keys` method
1505 // https://tc39.es/ecma262/#sec-object.keys
1506 var objectKeys = Object.keys || function keys(O) {
1507 return objectKeysInternal(O, enumBugKeys);
1508 };
1509
1510 // `Object.defineProperties` method
1511 // https://tc39.es/ecma262/#sec-object.defineproperties
1512 var objectDefineProperties = descriptors ? Object.defineProperties : function defineProperties(O, Properties) {
1513 anObject(O);
1514 var keys = objectKeys(Properties);
1515 var length = keys.length;
1516 var index = 0;
1517 var key;
1518 while (length > index) objectDefineProperty.f(O, key = keys[index++], Properties[key]);
1519 return O;
1520 };
1521
1522 var html = getBuiltIn('document', 'documentElement');
1523
1524 var GT = '>';
1525 var LT = '<';
1526 var PROTOTYPE = 'prototype';
1527 var SCRIPT = 'script';
1528 var IE_PROTO = sharedKey('IE_PROTO');
1529
1530 var EmptyConstructor = function () { /* empty */ };
1531
1532 var scriptTag = function (content) {
1533 return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
1534 };
1535
1536 // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
1537 var NullProtoObjectViaActiveX = function (activeXDocument) {
1538 activeXDocument.write(scriptTag(''));
1539 activeXDocument.close();
1540 var temp = activeXDocument.parentWindow.Object;
1541 activeXDocument = null; // avoid memory leak
1542 return temp;
1543 };
1544
1545 // Create object with fake `null` prototype: use iframe Object with cleared prototype
1546 var NullProtoObjectViaIFrame = function () {
1547 // Thrash, waste and sodomy: IE GC bug
1548 var iframe = documentCreateElement('iframe');
1549 var JS = 'java' + SCRIPT + ':';
1550 var iframeDocument;
1551 iframe.style.display = 'none';
1552 html.appendChild(iframe);
1553 // https://github.com/zloirock/core-js/issues/475
1554 iframe.src = String(JS);
1555 iframeDocument = iframe.contentWindow.document;
1556 iframeDocument.open();
1557 iframeDocument.write(scriptTag('document.F=Object'));
1558 iframeDocument.close();
1559 return iframeDocument.F;
1560 };
1561
1562 // Check for document.domain and active x support
1563 // No need to use active x approach when document.domain is not set
1564 // see https://github.com/es-shims/es5-shim/issues/150
1565 // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
1566 // avoid IE GC bug
1567 var activeXDocument;
1568 var NullProtoObject = function () {
1569 try {
1570 /* global ActiveXObject -- old IE */
1571 activeXDocument = document.domain && new ActiveXObject('htmlfile');
1572 } catch (error) { /* ignore */ }
1573 NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
1574 var length = enumBugKeys.length;
1575 while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
1576 return NullProtoObject();
1577 };
1578
1579 hiddenKeys$1[IE_PROTO] = true;
1580
1581 // `Object.create` method
1582 // https://tc39.es/ecma262/#sec-object.create
1583 var objectCreate = Object.create || function create(O, Properties) {
1584 var result;
1585 if (O !== null) {
1586 EmptyConstructor[PROTOTYPE] = anObject(O);
1587 result = new EmptyConstructor();
1588 EmptyConstructor[PROTOTYPE] = null;
1589 // add "__proto__" for Object.getPrototypeOf polyfill
1590 result[IE_PROTO] = O;
1591 } else result = NullProtoObject();
1592 return Properties === undefined ? result : objectDefineProperties(result, Properties);
1593 };
1594
1595 var UNSCOPABLES = wellKnownSymbol('unscopables');
1596 var ArrayPrototype = Array.prototype;
1597
1598 // Array.prototype[@@unscopables]
1599 // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
1600 if (ArrayPrototype[UNSCOPABLES] == undefined) {
1601 objectDefineProperty.f(ArrayPrototype, UNSCOPABLES, {
1602 configurable: true,
1603 value: objectCreate(null)
1604 });
1605 }
1606
1607 // add a key to Array.prototype[@@unscopables]
1608 var addToUnscopables = function (key) {
1609 ArrayPrototype[UNSCOPABLES][key] = true;
1610 };
1611
1612 var $find = arrayIteration.find;
1613
1614
1615 var FIND = 'find';
1616 var SKIPS_HOLES = true;
1617
1618 // Shouldn't skip holes
1619 if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });
1620
1621 // `Array.prototype.find` method
1622 // https://tc39.es/ecma262/#sec-array.prototype.find
1623 _export({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {
1624 find: function find(callbackfn /* , that = undefined */) {
1625 return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
1626 }
1627 });
1628
1629 // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
1630 addToUnscopables(FIND);
1631
1632 var propertyIsEnumerable = objectPropertyIsEnumerable.f;
1633
1634 // `Object.{ entries, values }` methods implementation
1635 var createMethod = function (TO_ENTRIES) {
1636 return function (it) {
1637 var O = toIndexedObject(it);
1638 var keys = objectKeys(O);
1639 var length = keys.length;
1640 var i = 0;
1641 var result = [];
1642 var key;
1643 while (length > i) {
1644 key = keys[i++];
1645 if (!descriptors || propertyIsEnumerable.call(O, key)) {
1646 result.push(TO_ENTRIES ? [key, O[key]] : O[key]);
1647 }
1648 }
1649 return result;
1650 };
1651 };
1652
1653 var objectToArray = {
1654 // `Object.entries` method
1655 // https://tc39.es/ecma262/#sec-object.entries
1656 entries: createMethod(true),
1657 // `Object.values` method
1658 // https://tc39.es/ecma262/#sec-object.values
1659 values: createMethod(false)
1660 };
1661
1662 var $entries = objectToArray.entries;
1663
1664 // `Object.entries` method
1665 // https://tc39.es/ecma262/#sec-object.entries
1666 _export({ target: 'Object', stat: true }, {
1667 entries: function entries(O) {
1668 return $entries(O);
1669 }
1670 });
1671
1672 /* eslint-disable no-unused-vars */
1673
1674 /**
1675 * @author zhixin wen <wenzhixin2010@gmail.com>
1676 * extensions: https://github.com/vitalets/x-editable
1677 */
1678
1679 var Utils = $__default['default'].fn.bootstrapTable.utils;
1680 $__default['default'].extend($__default['default'].fn.bootstrapTable.defaults, {
1681 editable: true,
1682 onEditableInit: function onEditableInit() {
1683 return false;
1684 },
1685 onEditableSave: function onEditableSave(field, row, rowIndex, oldValue, $el) {
1686 return false;
1687 },
1688 onEditableShown: function onEditableShown(field, row, $el, editable) {
1689 return false;
1690 },
1691 onEditableHidden: function onEditableHidden(field, row, $el, reason) {
1692 return false;
1693 }
1694 });
1695 $__default['default'].extend($__default['default'].fn.bootstrapTable.columnDefaults, {
1696 alwaysUseFormatter: false
1697 });
1698 $__default['default'].extend($__default['default'].fn.bootstrapTable.Constructor.EVENTS, {
1699 'editable-init.bs.table': 'onEditableInit',
1700 'editable-save.bs.table': 'onEditableSave',
1701 'editable-shown.bs.table': 'onEditableShown',
1702 'editable-hidden.bs.table': 'onEditableHidden'
1703 });
1704
1705 $__default['default'].BootstrapTable = /*#__PURE__*/function (_$$BootstrapTable) {
1706 _inherits(_class, _$$BootstrapTable);
1707
1708 var _super = _createSuper(_class);
1709
1710 function _class() {
1711 _classCallCheck(this, _class);
1712
1713 return _super.apply(this, arguments);
1714 }
1715
1716 _createClass(_class, [{
1717 key: "initTable",
1718 value: function initTable() {
1719 var _this = this;
1720
1721 _get(_getPrototypeOf(_class.prototype), "initTable", this).call(this);
1722
1723 if (!this.options.editable) {
1724 return;
1725 }
1726
1727 this.editedCells = [];
1728 $__default['default'].each(this.columns, function (i, column) {
1729 if (!column.editable) {
1730 return;
1731 }
1732
1733 var editableOptions = {};
1734 var editableDataMarkup = [];
1735 var editableDataPrefix = 'editable-';
1736
1737 var processDataOptions = function processDataOptions(key, value) {
1738 // Replace camel case with dashes.
1739 var dashKey = key.replace(/([A-Z])/g, function ($1) {
1740 return "-".concat($1.toLowerCase());
1741 });
1742
1743 if (dashKey.indexOf(editableDataPrefix) === 0) {
1744 editableOptions[dashKey.replace(editableDataPrefix, 'data-')] = value;
1745 }
1746 };
1747
1748 $__default['default'].each(_this.options, processDataOptions);
1749
1750 column.formatter = column.formatter || function (value) {
1751 return value;
1752 };
1753
1754 column._formatter = column._formatter ? column._formatter : column.formatter;
1755
1756 column.formatter = function (value, row, index) {
1757 var result = Utils.calculateObjectValue(column, column._formatter, [value, row, index], value);
1758 result = typeof result === 'undefined' || result === null ? _this.options.undefinedText : result;
1759
1760 if (_this.options.uniqueId !== undefined && !column.alwaysUseFormatter) {
1761 var uniqueId = Utils.getItemField(row, _this.options.uniqueId, false);
1762
1763 if ($__default['default'].inArray(column.field + uniqueId, _this.editedCells) !== -1) {
1764 result = value;
1765 }
1766 }
1767
1768 $__default['default'].each(column, processDataOptions);
1769 $__default['default'].each(editableOptions, function (key, value) {
1770 editableDataMarkup.push(" ".concat(key, "=\"").concat(value, "\""));
1771 });
1772 var noEditFormatter = false;
1773 var editableOpts = Utils.calculateObjectValue(column, column.editable, [index, row], {});
1774
1775 if (editableOpts.hasOwnProperty('noEditFormatter')) {
1776 noEditFormatter = editableOpts.noEditFormatter(value, row, index);
1777 }
1778
1779 if (noEditFormatter === false) {
1780 return "<a href=\"javascript:void(0)\"\n data-name=\"".concat(column.field, "\"\n data-pk=\"").concat(row[_this.options.idField], "\"\n data-value=\"").concat(result, "\"\n ").concat(editableDataMarkup.join(''), "></a>");
1781 }
1782
1783 return noEditFormatter;
1784 };
1785 });
1786 }
1787 }, {
1788 key: "initBody",
1789 value: function initBody(fixedScroll) {
1790 var _this2 = this;
1791
1792 _get(_getPrototypeOf(_class.prototype), "initBody", this).call(this, fixedScroll);
1793
1794 if (!this.options.editable) {
1795 return;
1796 }
1797
1798 $__default['default'].each(this.columns, function (i, column) {
1799 if (!column.editable) {
1800 return;
1801 }
1802
1803 var data = _this2.getData({
1804 escape: true
1805 });
1806
1807 var $field = _this2.$body.find("a[data-name=\"".concat(column.field, "\"]"));
1808
1809 $field.each(function (i, element) {
1810 var $element = $__default['default'](element);
1811 var $tr = $element.closest('tr');
1812 var index = $tr.data('index');
1813 var row = data[index];
1814 var editableOpts = Utils.calculateObjectValue(column, column.editable, [index, row, $element], {});
1815 $element.editable(editableOpts);
1816 });
1817 $field.off('save').on('save', function (_ref, _ref2) {
1818 var currentTarget = _ref.currentTarget;
1819 var submitValue = _ref2.submitValue;
1820 var $this = $__default['default'](currentTarget);
1821
1822 var data = _this2.getData();
1823
1824 var rowIndex = $this.parents('tr[data-index]').data('index');
1825 var row = data[rowIndex];
1826 var oldValue = row[column.field];
1827
1828 if (_this2.options.uniqueId !== undefined && !column.alwaysUseFormatter) {
1829 var uniqueId = Utils.getItemField(row, _this2.options.uniqueId, false);
1830
1831 if ($__default['default'].inArray(column.field + uniqueId, _this2.editedCells) === -1) {
1832 _this2.editedCells.push(column.field + uniqueId);
1833 }
1834 }
1835
1836 submitValue = Utils.escapeHTML(submitValue);
1837 $this.data('value', submitValue);
1838 row[column.field] = submitValue;
1839
1840 _this2.trigger('editable-save', column.field, row, rowIndex, oldValue, $this);
1841
1842 _this2.initBody();
1843 });
1844 $field.off('shown').on('shown', function (_ref3, editable) {
1845 var currentTarget = _ref3.currentTarget;
1846 var $this = $__default['default'](currentTarget);
1847
1848 var data = _this2.getData();
1849
1850 var rowIndex = $this.parents('tr[data-index]').data('index');
1851 var row = data[rowIndex];
1852
1853 _this2.trigger('editable-shown', column.field, row, $this, editable);
1854 });
1855 $field.off('hidden').on('hidden', function (_ref4, reason) {
1856 var currentTarget = _ref4.currentTarget;
1857 var $this = $__default['default'](currentTarget);
1858
1859 var data = _this2.getData();
1860
1861 var rowIndex = $this.parents('tr[data-index]').data('index');
1862 var row = data[rowIndex];
1863
1864 _this2.trigger('editable-hidden', column.field, row, $this, reason);
1865 });
1866 });
1867 this.trigger('editable-init');
1868 }
1869 }, {
1870 key: "getData",
1871 value: function getData(params) {
1872 var data = _get(_getPrototypeOf(_class.prototype), "getData", this).call(this, params);
1873
1874 if (params && params.escape) {
1875 var _iterator = _createForOfIteratorHelper(data),
1876 _step;
1877
1878 try {
1879 for (_iterator.s(); !(_step = _iterator.n()).done;) {
1880 var row = _step.value;
1881
1882 for (var _i = 0, _Object$entries = Object.entries(row); _i < _Object$entries.length; _i++) {
1883 var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
1884 key = _Object$entries$_i[0],
1885 value = _Object$entries$_i[1];
1886
1887 row[key] = Utils.unescapeHTML(value);
1888 }
1889 }
1890 } catch (err) {
1891 _iterator.e(err);
1892 } finally {
1893 _iterator.f();
1894 }
1895 }
1896
1897 return data;
1898 }
1899 }]);
1900
1901 return _class;
1902 }($__default['default'].BootstrapTable);
1903
1904})));