UNPKG

49.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 var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
143
144 function createCommonjsModule(fn, module) {
145 return module = { exports: {} }, fn(module, module.exports), module.exports;
146 }
147
148 var check = function (it) {
149 return it && it.Math == Math && it;
150 };
151
152 // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
153 var global_1 =
154 // eslint-disable-next-line es/no-global-this -- safe
155 check(typeof globalThis == 'object' && globalThis) ||
156 check(typeof window == 'object' && window) ||
157 // eslint-disable-next-line no-restricted-globals -- safe
158 check(typeof self == 'object' && self) ||
159 check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
160 // eslint-disable-next-line no-new-func -- fallback
161 (function () { return this; })() || Function('return this')();
162
163 var fails = function (exec) {
164 try {
165 return !!exec();
166 } catch (error) {
167 return true;
168 }
169 };
170
171 // Detect IE8's incomplete defineProperty implementation
172 var descriptors = !fails(function () {
173 // eslint-disable-next-line es/no-object-defineproperty -- required for testing
174 return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
175 });
176
177 var $propertyIsEnumerable = {}.propertyIsEnumerable;
178 // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
179 var getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
180
181 // Nashorn ~ JDK8 bug
182 var NASHORN_BUG = getOwnPropertyDescriptor$1 && !$propertyIsEnumerable.call({ 1: 2 }, 1);
183
184 // `Object.prototype.propertyIsEnumerable` method implementation
185 // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
186 var f$4 = NASHORN_BUG ? function propertyIsEnumerable(V) {
187 var descriptor = getOwnPropertyDescriptor$1(this, V);
188 return !!descriptor && descriptor.enumerable;
189 } : $propertyIsEnumerable;
190
191 var objectPropertyIsEnumerable = {
192 f: f$4
193 };
194
195 var createPropertyDescriptor = function (bitmap, value) {
196 return {
197 enumerable: !(bitmap & 1),
198 configurable: !(bitmap & 2),
199 writable: !(bitmap & 4),
200 value: value
201 };
202 };
203
204 var toString = {}.toString;
205
206 var classofRaw = function (it) {
207 return toString.call(it).slice(8, -1);
208 };
209
210 var split = ''.split;
211
212 // fallback for non-array-like ES3 and non-enumerable old V8 strings
213 var indexedObject = fails(function () {
214 // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
215 // eslint-disable-next-line no-prototype-builtins -- safe
216 return !Object('z').propertyIsEnumerable(0);
217 }) ? function (it) {
218 return classofRaw(it) == 'String' ? split.call(it, '') : Object(it);
219 } : Object;
220
221 // `RequireObjectCoercible` abstract operation
222 // https://tc39.es/ecma262/#sec-requireobjectcoercible
223 var requireObjectCoercible = function (it) {
224 if (it == undefined) throw TypeError("Can't call method on " + it);
225 return it;
226 };
227
228 // toObject with fallback for non-array-like ES3 strings
229
230
231
232 var toIndexedObject = function (it) {
233 return indexedObject(requireObjectCoercible(it));
234 };
235
236 var isObject = function (it) {
237 return typeof it === 'object' ? it !== null : typeof it === 'function';
238 };
239
240 // `ToPrimitive` abstract operation
241 // https://tc39.es/ecma262/#sec-toprimitive
242 // instead of the ES6 spec version, we didn't implement @@toPrimitive case
243 // and the second argument - flag - preferred type is a string
244 var toPrimitive = function (input, PREFERRED_STRING) {
245 if (!isObject(input)) return input;
246 var fn, val;
247 if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
248 if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
249 if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
250 throw TypeError("Can't convert object to primitive value");
251 };
252
253 var hasOwnProperty = {}.hasOwnProperty;
254
255 var has$1 = function (it, key) {
256 return hasOwnProperty.call(it, key);
257 };
258
259 var document$1 = global_1.document;
260 // typeof document.createElement is 'object' in old IE
261 var EXISTS = isObject(document$1) && isObject(document$1.createElement);
262
263 var documentCreateElement = function (it) {
264 return EXISTS ? document$1.createElement(it) : {};
265 };
266
267 // Thank's IE8 for his funny defineProperty
268 var ie8DomDefine = !descriptors && !fails(function () {
269 // eslint-disable-next-line es/no-object-defineproperty -- requied for testing
270 return Object.defineProperty(documentCreateElement('div'), 'a', {
271 get: function () { return 7; }
272 }).a != 7;
273 });
274
275 // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
276 var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
277
278 // `Object.getOwnPropertyDescriptor` method
279 // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
280 var f$3 = descriptors ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
281 O = toIndexedObject(O);
282 P = toPrimitive(P, true);
283 if (ie8DomDefine) try {
284 return $getOwnPropertyDescriptor(O, P);
285 } catch (error) { /* empty */ }
286 if (has$1(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]);
287 };
288
289 var objectGetOwnPropertyDescriptor = {
290 f: f$3
291 };
292
293 var anObject = function (it) {
294 if (!isObject(it)) {
295 throw TypeError(String(it) + ' is not an object');
296 } return it;
297 };
298
299 // eslint-disable-next-line es/no-object-defineproperty -- safe
300 var $defineProperty = Object.defineProperty;
301
302 // `Object.defineProperty` method
303 // https://tc39.es/ecma262/#sec-object.defineproperty
304 var f$2 = descriptors ? $defineProperty : function defineProperty(O, P, Attributes) {
305 anObject(O);
306 P = toPrimitive(P, true);
307 anObject(Attributes);
308 if (ie8DomDefine) try {
309 return $defineProperty(O, P, Attributes);
310 } catch (error) { /* empty */ }
311 if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
312 if ('value' in Attributes) O[P] = Attributes.value;
313 return O;
314 };
315
316 var objectDefineProperty = {
317 f: f$2
318 };
319
320 var createNonEnumerableProperty = descriptors ? function (object, key, value) {
321 return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value));
322 } : function (object, key, value) {
323 object[key] = value;
324 return object;
325 };
326
327 var setGlobal = function (key, value) {
328 try {
329 createNonEnumerableProperty(global_1, key, value);
330 } catch (error) {
331 global_1[key] = value;
332 } return value;
333 };
334
335 var SHARED = '__core-js_shared__';
336 var store$1 = global_1[SHARED] || setGlobal(SHARED, {});
337
338 var sharedStore = store$1;
339
340 var functionToString = Function.toString;
341
342 // this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
343 if (typeof sharedStore.inspectSource != 'function') {
344 sharedStore.inspectSource = function (it) {
345 return functionToString.call(it);
346 };
347 }
348
349 var inspectSource = sharedStore.inspectSource;
350
351 var WeakMap$1 = global_1.WeakMap;
352
353 var nativeWeakMap = typeof WeakMap$1 === 'function' && /native code/.test(inspectSource(WeakMap$1));
354
355 var shared = createCommonjsModule(function (module) {
356 (module.exports = function (key, value) {
357 return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {});
358 })('versions', []).push({
359 version: '3.10.1',
360 mode: 'global',
361 copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
362 });
363 });
364
365 var id = 0;
366 var postfix = Math.random();
367
368 var uid = function (key) {
369 return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
370 };
371
372 var keys = shared('keys');
373
374 var sharedKey = function (key) {
375 return keys[key] || (keys[key] = uid(key));
376 };
377
378 var hiddenKeys$1 = {};
379
380 var WeakMap = global_1.WeakMap;
381 var set, get, has;
382
383 var enforce = function (it) {
384 return has(it) ? get(it) : set(it, {});
385 };
386
387 var getterFor = function (TYPE) {
388 return function (it) {
389 var state;
390 if (!isObject(it) || (state = get(it)).type !== TYPE) {
391 throw TypeError('Incompatible receiver, ' + TYPE + ' required');
392 } return state;
393 };
394 };
395
396 if (nativeWeakMap) {
397 var store = sharedStore.state || (sharedStore.state = new WeakMap());
398 var wmget = store.get;
399 var wmhas = store.has;
400 var wmset = store.set;
401 set = function (it, metadata) {
402 metadata.facade = it;
403 wmset.call(store, it, metadata);
404 return metadata;
405 };
406 get = function (it) {
407 return wmget.call(store, it) || {};
408 };
409 has = function (it) {
410 return wmhas.call(store, it);
411 };
412 } else {
413 var STATE = sharedKey('state');
414 hiddenKeys$1[STATE] = true;
415 set = function (it, metadata) {
416 metadata.facade = it;
417 createNonEnumerableProperty(it, STATE, metadata);
418 return metadata;
419 };
420 get = function (it) {
421 return has$1(it, STATE) ? it[STATE] : {};
422 };
423 has = function (it) {
424 return has$1(it, STATE);
425 };
426 }
427
428 var internalState = {
429 set: set,
430 get: get,
431 has: has,
432 enforce: enforce,
433 getterFor: getterFor
434 };
435
436 var redefine = createCommonjsModule(function (module) {
437 var getInternalState = internalState.get;
438 var enforceInternalState = internalState.enforce;
439 var TEMPLATE = String(String).split('String');
440
441 (module.exports = function (O, key, value, options) {
442 var unsafe = options ? !!options.unsafe : false;
443 var simple = options ? !!options.enumerable : false;
444 var noTargetGet = options ? !!options.noTargetGet : false;
445 var state;
446 if (typeof value == 'function') {
447 if (typeof key == 'string' && !has$1(value, 'name')) {
448 createNonEnumerableProperty(value, 'name', key);
449 }
450 state = enforceInternalState(value);
451 if (!state.source) {
452 state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
453 }
454 }
455 if (O === global_1) {
456 if (simple) O[key] = value;
457 else setGlobal(key, value);
458 return;
459 } else if (!unsafe) {
460 delete O[key];
461 } else if (!noTargetGet && O[key]) {
462 simple = true;
463 }
464 if (simple) O[key] = value;
465 else createNonEnumerableProperty(O, key, value);
466 // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
467 })(Function.prototype, 'toString', function toString() {
468 return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
469 });
470 });
471
472 var path = global_1;
473
474 var aFunction$1 = function (variable) {
475 return typeof variable == 'function' ? variable : undefined;
476 };
477
478 var getBuiltIn = function (namespace, method) {
479 return arguments.length < 2 ? aFunction$1(path[namespace]) || aFunction$1(global_1[namespace])
480 : path[namespace] && path[namespace][method] || global_1[namespace] && global_1[namespace][method];
481 };
482
483 var ceil = Math.ceil;
484 var floor = Math.floor;
485
486 // `ToInteger` abstract operation
487 // https://tc39.es/ecma262/#sec-tointeger
488 var toInteger = function (argument) {
489 return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
490 };
491
492 var min$1 = Math.min;
493
494 // `ToLength` abstract operation
495 // https://tc39.es/ecma262/#sec-tolength
496 var toLength = function (argument) {
497 return argument > 0 ? min$1(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
498 };
499
500 var max = Math.max;
501 var min = Math.min;
502
503 // Helper for a popular repeating case of the spec:
504 // Let integer be ? ToInteger(index).
505 // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
506 var toAbsoluteIndex = function (index, length) {
507 var integer = toInteger(index);
508 return integer < 0 ? max(integer + length, 0) : min(integer, length);
509 };
510
511 // `Array.prototype.{ indexOf, includes }` methods implementation
512 var createMethod$1 = function (IS_INCLUDES) {
513 return function ($this, el, fromIndex) {
514 var O = toIndexedObject($this);
515 var length = toLength(O.length);
516 var index = toAbsoluteIndex(fromIndex, length);
517 var value;
518 // Array#includes uses SameValueZero equality algorithm
519 // eslint-disable-next-line no-self-compare -- NaN check
520 if (IS_INCLUDES && el != el) while (length > index) {
521 value = O[index++];
522 // eslint-disable-next-line no-self-compare -- NaN check
523 if (value != value) return true;
524 // Array#indexOf ignores holes, Array#includes - not
525 } else for (;length > index; index++) {
526 if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
527 } return !IS_INCLUDES && -1;
528 };
529 };
530
531 var arrayIncludes = {
532 // `Array.prototype.includes` method
533 // https://tc39.es/ecma262/#sec-array.prototype.includes
534 includes: createMethod$1(true),
535 // `Array.prototype.indexOf` method
536 // https://tc39.es/ecma262/#sec-array.prototype.indexof
537 indexOf: createMethod$1(false)
538 };
539
540 var indexOf = arrayIncludes.indexOf;
541
542
543 var objectKeysInternal = function (object, names) {
544 var O = toIndexedObject(object);
545 var i = 0;
546 var result = [];
547 var key;
548 for (key in O) !has$1(hiddenKeys$1, key) && has$1(O, key) && result.push(key);
549 // Don't enum bug & hidden keys
550 while (names.length > i) if (has$1(O, key = names[i++])) {
551 ~indexOf(result, key) || result.push(key);
552 }
553 return result;
554 };
555
556 // IE8- don't enum bug keys
557 var enumBugKeys = [
558 'constructor',
559 'hasOwnProperty',
560 'isPrototypeOf',
561 'propertyIsEnumerable',
562 'toLocaleString',
563 'toString',
564 'valueOf'
565 ];
566
567 var hiddenKeys = enumBugKeys.concat('length', 'prototype');
568
569 // `Object.getOwnPropertyNames` method
570 // https://tc39.es/ecma262/#sec-object.getownpropertynames
571 // eslint-disable-next-line es/no-object-getownpropertynames -- safe
572 var f$1 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
573 return objectKeysInternal(O, hiddenKeys);
574 };
575
576 var objectGetOwnPropertyNames = {
577 f: f$1
578 };
579
580 // eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
581 var f = Object.getOwnPropertySymbols;
582
583 var objectGetOwnPropertySymbols = {
584 f: f
585 };
586
587 // all object keys, includes non-enumerable and symbols
588 var ownKeys = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
589 var keys = objectGetOwnPropertyNames.f(anObject(it));
590 var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
591 return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
592 };
593
594 var copyConstructorProperties = function (target, source) {
595 var keys = ownKeys(source);
596 var defineProperty = objectDefineProperty.f;
597 var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
598 for (var i = 0; i < keys.length; i++) {
599 var key = keys[i];
600 if (!has$1(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
601 }
602 };
603
604 var replacement = /#|\.prototype\./;
605
606 var isForced = function (feature, detection) {
607 var value = data[normalize(feature)];
608 return value == POLYFILL ? true
609 : value == NATIVE ? false
610 : typeof detection == 'function' ? fails(detection)
611 : !!detection;
612 };
613
614 var normalize = isForced.normalize = function (string) {
615 return String(string).replace(replacement, '.').toLowerCase();
616 };
617
618 var data = isForced.data = {};
619 var NATIVE = isForced.NATIVE = 'N';
620 var POLYFILL = isForced.POLYFILL = 'P';
621
622 var isForced_1 = isForced;
623
624 var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
625
626
627
628
629
630
631 /*
632 options.target - name of the target object
633 options.global - target is the global object
634 options.stat - export as static methods of target
635 options.proto - export as prototype methods of target
636 options.real - real prototype method for the `pure` version
637 options.forced - export even if the native feature is available
638 options.bind - bind methods to the target, required for the `pure` version
639 options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
640 options.unsafe - use the simple assignment of property instead of delete + defineProperty
641 options.sham - add a flag to not completely full polyfills
642 options.enumerable - export as enumerable property
643 options.noTargetGet - prevent calling a getter on target
644 */
645 var _export = function (options, source) {
646 var TARGET = options.target;
647 var GLOBAL = options.global;
648 var STATIC = options.stat;
649 var FORCED, target, key, targetProperty, sourceProperty, descriptor;
650 if (GLOBAL) {
651 target = global_1;
652 } else if (STATIC) {
653 target = global_1[TARGET] || setGlobal(TARGET, {});
654 } else {
655 target = (global_1[TARGET] || {}).prototype;
656 }
657 if (target) for (key in source) {
658 sourceProperty = source[key];
659 if (options.noTargetGet) {
660 descriptor = getOwnPropertyDescriptor(target, key);
661 targetProperty = descriptor && descriptor.value;
662 } else targetProperty = target[key];
663 FORCED = isForced_1(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
664 // contained in target
665 if (!FORCED && targetProperty !== undefined) {
666 if (typeof sourceProperty === typeof targetProperty) continue;
667 copyConstructorProperties(sourceProperty, targetProperty);
668 }
669 // add a flag to not completely full polyfills
670 if (options.sham || (targetProperty && targetProperty.sham)) {
671 createNonEnumerableProperty(sourceProperty, 'sham', true);
672 }
673 // extend global
674 redefine(target, key, sourceProperty, options);
675 }
676 };
677
678 // `IsArray` abstract operation
679 // https://tc39.es/ecma262/#sec-isarray
680 // eslint-disable-next-line es/no-array-isarray -- safe
681 var isArray = Array.isArray || function isArray(arg) {
682 return classofRaw(arg) == 'Array';
683 };
684
685 // `ToObject` abstract operation
686 // https://tc39.es/ecma262/#sec-toobject
687 var toObject = function (argument) {
688 return Object(requireObjectCoercible(argument));
689 };
690
691 var createProperty = function (object, key, value) {
692 var propertyKey = toPrimitive(key);
693 if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value));
694 else object[propertyKey] = value;
695 };
696
697 var engineIsNode = classofRaw(global_1.process) == 'process';
698
699 var engineUserAgent = getBuiltIn('navigator', 'userAgent') || '';
700
701 var process = global_1.process;
702 var versions = process && process.versions;
703 var v8 = versions && versions.v8;
704 var match, version;
705
706 if (v8) {
707 match = v8.split('.');
708 version = match[0] + match[1];
709 } else if (engineUserAgent) {
710 match = engineUserAgent.match(/Edge\/(\d+)/);
711 if (!match || match[1] >= 74) {
712 match = engineUserAgent.match(/Chrome\/(\d+)/);
713 if (match) version = match[1];
714 }
715 }
716
717 var engineV8Version = version && +version;
718
719 // eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
720 var nativeSymbol = !!Object.getOwnPropertySymbols && !fails(function () {
721 // eslint-disable-next-line es/no-symbol -- required for testing
722 return !Symbol.sham &&
723 // Chrome 38 Symbol has incorrect toString conversion
724 // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
725 (engineIsNode ? engineV8Version === 38 : engineV8Version > 37 && engineV8Version < 41);
726 });
727
728 /* eslint-disable es/no-symbol -- required for testing */
729
730
731 var useSymbolAsUid = nativeSymbol
732 && !Symbol.sham
733 && typeof Symbol.iterator == 'symbol';
734
735 var WellKnownSymbolsStore = shared('wks');
736 var Symbol$1 = global_1.Symbol;
737 var createWellKnownSymbol = useSymbolAsUid ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid;
738
739 var wellKnownSymbol = function (name) {
740 if (!has$1(WellKnownSymbolsStore, name) || !(nativeSymbol || typeof WellKnownSymbolsStore[name] == 'string')) {
741 if (nativeSymbol && has$1(Symbol$1, name)) {
742 WellKnownSymbolsStore[name] = Symbol$1[name];
743 } else {
744 WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
745 }
746 } return WellKnownSymbolsStore[name];
747 };
748
749 var SPECIES$2 = wellKnownSymbol('species');
750
751 // `ArraySpeciesCreate` abstract operation
752 // https://tc39.es/ecma262/#sec-arrayspeciescreate
753 var arraySpeciesCreate = function (originalArray, length) {
754 var C;
755 if (isArray(originalArray)) {
756 C = originalArray.constructor;
757 // cross-realm fallback
758 if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
759 else if (isObject(C)) {
760 C = C[SPECIES$2];
761 if (C === null) C = undefined;
762 }
763 } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
764 };
765
766 var SPECIES$1 = wellKnownSymbol('species');
767
768 var arrayMethodHasSpeciesSupport = function (METHOD_NAME) {
769 // We can't use this feature detection in V8 since it causes
770 // deoptimization and serious performance degradation
771 // https://github.com/zloirock/core-js/issues/677
772 return engineV8Version >= 51 || !fails(function () {
773 var array = [];
774 var constructor = array.constructor = {};
775 constructor[SPECIES$1] = function () {
776 return { foo: 1 };
777 };
778 return array[METHOD_NAME](Boolean).foo !== 1;
779 });
780 };
781
782 var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
783 var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
784 var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
785
786 // We can't use this feature detection in V8 since it causes
787 // deoptimization and serious performance degradation
788 // https://github.com/zloirock/core-js/issues/679
789 var IS_CONCAT_SPREADABLE_SUPPORT = engineV8Version >= 51 || !fails(function () {
790 var array = [];
791 array[IS_CONCAT_SPREADABLE] = false;
792 return array.concat()[0] !== array;
793 });
794
795 var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
796
797 var isConcatSpreadable = function (O) {
798 if (!isObject(O)) return false;
799 var spreadable = O[IS_CONCAT_SPREADABLE];
800 return spreadable !== undefined ? !!spreadable : isArray(O);
801 };
802
803 var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
804
805 // `Array.prototype.concat` method
806 // https://tc39.es/ecma262/#sec-array.prototype.concat
807 // with adding support of @@isConcatSpreadable and @@species
808 _export({ target: 'Array', proto: true, forced: FORCED }, {
809 // eslint-disable-next-line no-unused-vars -- required for `.length`
810 concat: function concat(arg) {
811 var O = toObject(this);
812 var A = arraySpeciesCreate(O, 0);
813 var n = 0;
814 var i, k, length, len, E;
815 for (i = -1, length = arguments.length; i < length; i++) {
816 E = i === -1 ? O : arguments[i];
817 if (isConcatSpreadable(E)) {
818 len = toLength(E.length);
819 if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
820 for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
821 } else {
822 if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
823 createProperty(A, n++, E);
824 }
825 }
826 A.length = n;
827 return A;
828 }
829 });
830
831 var aFunction = function (it) {
832 if (typeof it != 'function') {
833 throw TypeError(String(it) + ' is not a function');
834 } return it;
835 };
836
837 // optional / simple context binding
838 var functionBindContext = function (fn, that, length) {
839 aFunction(fn);
840 if (that === undefined) return fn;
841 switch (length) {
842 case 0: return function () {
843 return fn.call(that);
844 };
845 case 1: return function (a) {
846 return fn.call(that, a);
847 };
848 case 2: return function (a, b) {
849 return fn.call(that, a, b);
850 };
851 case 3: return function (a, b, c) {
852 return fn.call(that, a, b, c);
853 };
854 }
855 return function (/* ...args */) {
856 return fn.apply(that, arguments);
857 };
858 };
859
860 var push = [].push;
861
862 // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
863 var createMethod = function (TYPE) {
864 var IS_MAP = TYPE == 1;
865 var IS_FILTER = TYPE == 2;
866 var IS_SOME = TYPE == 3;
867 var IS_EVERY = TYPE == 4;
868 var IS_FIND_INDEX = TYPE == 6;
869 var IS_FILTER_OUT = TYPE == 7;
870 var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
871 return function ($this, callbackfn, that, specificCreate) {
872 var O = toObject($this);
873 var self = indexedObject(O);
874 var boundFunction = functionBindContext(callbackfn, that, 3);
875 var length = toLength(self.length);
876 var index = 0;
877 var create = specificCreate || arraySpeciesCreate;
878 var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
879 var value, result;
880 for (;length > index; index++) if (NO_HOLES || index in self) {
881 value = self[index];
882 result = boundFunction(value, index, O);
883 if (TYPE) {
884 if (IS_MAP) target[index] = result; // map
885 else if (result) switch (TYPE) {
886 case 3: return true; // some
887 case 5: return value; // find
888 case 6: return index; // findIndex
889 case 2: push.call(target, value); // filter
890 } else switch (TYPE) {
891 case 4: return false; // every
892 case 7: push.call(target, value); // filterOut
893 }
894 }
895 }
896 return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
897 };
898 };
899
900 var arrayIteration = {
901 // `Array.prototype.forEach` method
902 // https://tc39.es/ecma262/#sec-array.prototype.foreach
903 forEach: createMethod(0),
904 // `Array.prototype.map` method
905 // https://tc39.es/ecma262/#sec-array.prototype.map
906 map: createMethod(1),
907 // `Array.prototype.filter` method
908 // https://tc39.es/ecma262/#sec-array.prototype.filter
909 filter: createMethod(2),
910 // `Array.prototype.some` method
911 // https://tc39.es/ecma262/#sec-array.prototype.some
912 some: createMethod(3),
913 // `Array.prototype.every` method
914 // https://tc39.es/ecma262/#sec-array.prototype.every
915 every: createMethod(4),
916 // `Array.prototype.find` method
917 // https://tc39.es/ecma262/#sec-array.prototype.find
918 find: createMethod(5),
919 // `Array.prototype.findIndex` method
920 // https://tc39.es/ecma262/#sec-array.prototype.findIndex
921 findIndex: createMethod(6),
922 // `Array.prototype.filterOut` method
923 // https://github.com/tc39/proposal-array-filtering
924 filterOut: createMethod(7)
925 };
926
927 // `Object.keys` method
928 // https://tc39.es/ecma262/#sec-object.keys
929 // eslint-disable-next-line es/no-object-keys -- safe
930 var objectKeys = Object.keys || function keys(O) {
931 return objectKeysInternal(O, enumBugKeys);
932 };
933
934 // `Object.defineProperties` method
935 // https://tc39.es/ecma262/#sec-object.defineproperties
936 // eslint-disable-next-line es/no-object-defineproperties -- safe
937 var objectDefineProperties = descriptors ? Object.defineProperties : function defineProperties(O, Properties) {
938 anObject(O);
939 var keys = objectKeys(Properties);
940 var length = keys.length;
941 var index = 0;
942 var key;
943 while (length > index) objectDefineProperty.f(O, key = keys[index++], Properties[key]);
944 return O;
945 };
946
947 var html = getBuiltIn('document', 'documentElement');
948
949 var GT = '>';
950 var LT = '<';
951 var PROTOTYPE = 'prototype';
952 var SCRIPT = 'script';
953 var IE_PROTO = sharedKey('IE_PROTO');
954
955 var EmptyConstructor = function () { /* empty */ };
956
957 var scriptTag = function (content) {
958 return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
959 };
960
961 // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
962 var NullProtoObjectViaActiveX = function (activeXDocument) {
963 activeXDocument.write(scriptTag(''));
964 activeXDocument.close();
965 var temp = activeXDocument.parentWindow.Object;
966 activeXDocument = null; // avoid memory leak
967 return temp;
968 };
969
970 // Create object with fake `null` prototype: use iframe Object with cleared prototype
971 var NullProtoObjectViaIFrame = function () {
972 // Thrash, waste and sodomy: IE GC bug
973 var iframe = documentCreateElement('iframe');
974 var JS = 'java' + SCRIPT + ':';
975 var iframeDocument;
976 iframe.style.display = 'none';
977 html.appendChild(iframe);
978 // https://github.com/zloirock/core-js/issues/475
979 iframe.src = String(JS);
980 iframeDocument = iframe.contentWindow.document;
981 iframeDocument.open();
982 iframeDocument.write(scriptTag('document.F=Object'));
983 iframeDocument.close();
984 return iframeDocument.F;
985 };
986
987 // Check for document.domain and active x support
988 // No need to use active x approach when document.domain is not set
989 // see https://github.com/es-shims/es5-shim/issues/150
990 // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
991 // avoid IE GC bug
992 var activeXDocument;
993 var NullProtoObject = function () {
994 try {
995 /* global ActiveXObject -- old IE */
996 activeXDocument = document.domain && new ActiveXObject('htmlfile');
997 } catch (error) { /* ignore */ }
998 NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
999 var length = enumBugKeys.length;
1000 while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
1001 return NullProtoObject();
1002 };
1003
1004 hiddenKeys$1[IE_PROTO] = true;
1005
1006 // `Object.create` method
1007 // https://tc39.es/ecma262/#sec-object.create
1008 var objectCreate = Object.create || function create(O, Properties) {
1009 var result;
1010 if (O !== null) {
1011 EmptyConstructor[PROTOTYPE] = anObject(O);
1012 result = new EmptyConstructor();
1013 EmptyConstructor[PROTOTYPE] = null;
1014 // add "__proto__" for Object.getPrototypeOf polyfill
1015 result[IE_PROTO] = O;
1016 } else result = NullProtoObject();
1017 return Properties === undefined ? result : objectDefineProperties(result, Properties);
1018 };
1019
1020 var UNSCOPABLES = wellKnownSymbol('unscopables');
1021 var ArrayPrototype = Array.prototype;
1022
1023 // Array.prototype[@@unscopables]
1024 // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
1025 if (ArrayPrototype[UNSCOPABLES] == undefined) {
1026 objectDefineProperty.f(ArrayPrototype, UNSCOPABLES, {
1027 configurable: true,
1028 value: objectCreate(null)
1029 });
1030 }
1031
1032 // add a key to Array.prototype[@@unscopables]
1033 var addToUnscopables = function (key) {
1034 ArrayPrototype[UNSCOPABLES][key] = true;
1035 };
1036
1037 var $find = arrayIteration.find;
1038
1039
1040 var FIND = 'find';
1041 var SKIPS_HOLES = true;
1042
1043 // Shouldn't skip holes
1044 if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });
1045
1046 // `Array.prototype.find` method
1047 // https://tc39.es/ecma262/#sec-array.prototype.find
1048 _export({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {
1049 find: function find(callbackfn /* , that = undefined */) {
1050 return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
1051 }
1052 });
1053
1054 // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
1055 addToUnscopables(FIND);
1056
1057 // `RegExp.prototype.flags` getter implementation
1058 // https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
1059 var regexpFlags = function () {
1060 var that = anObject(this);
1061 var result = '';
1062 if (that.global) result += 'g';
1063 if (that.ignoreCase) result += 'i';
1064 if (that.multiline) result += 'm';
1065 if (that.dotAll) result += 's';
1066 if (that.unicode) result += 'u';
1067 if (that.sticky) result += 'y';
1068 return result;
1069 };
1070
1071 // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,
1072 // so we use an intermediate function.
1073 function RE(s, f) {
1074 return RegExp(s, f);
1075 }
1076
1077 var UNSUPPORTED_Y$1 = fails(function () {
1078 // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
1079 var re = RE('a', 'y');
1080 re.lastIndex = 2;
1081 return re.exec('abcd') != null;
1082 });
1083
1084 var BROKEN_CARET = fails(function () {
1085 // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
1086 var re = RE('^r', 'gy');
1087 re.lastIndex = 2;
1088 return re.exec('str') != null;
1089 });
1090
1091 var regexpStickyHelpers = {
1092 UNSUPPORTED_Y: UNSUPPORTED_Y$1,
1093 BROKEN_CARET: BROKEN_CARET
1094 };
1095
1096 var nativeExec = RegExp.prototype.exec;
1097 var nativeReplace = shared('native-string-replace', String.prototype.replace);
1098
1099 var patchedExec = nativeExec;
1100
1101 var UPDATES_LAST_INDEX_WRONG = (function () {
1102 var re1 = /a/;
1103 var re2 = /b*/g;
1104 nativeExec.call(re1, 'a');
1105 nativeExec.call(re2, 'a');
1106 return re1.lastIndex !== 0 || re2.lastIndex !== 0;
1107 })();
1108
1109 var UNSUPPORTED_Y = regexpStickyHelpers.UNSUPPORTED_Y || regexpStickyHelpers.BROKEN_CARET;
1110
1111 // nonparticipating capturing group, copied from es5-shim's String#split patch.
1112 // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing
1113 var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
1114
1115 var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;
1116
1117 if (PATCH) {
1118 patchedExec = function exec(str) {
1119 var re = this;
1120 var lastIndex, reCopy, match, i;
1121 var sticky = UNSUPPORTED_Y && re.sticky;
1122 var flags = regexpFlags.call(re);
1123 var source = re.source;
1124 var charsAdded = 0;
1125 var strCopy = str;
1126
1127 if (sticky) {
1128 flags = flags.replace('y', '');
1129 if (flags.indexOf('g') === -1) {
1130 flags += 'g';
1131 }
1132
1133 strCopy = String(str).slice(re.lastIndex);
1134 // Support anchored sticky behavior.
1135 if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) {
1136 source = '(?: ' + source + ')';
1137 strCopy = ' ' + strCopy;
1138 charsAdded++;
1139 }
1140 // ^(? + rx + ) is needed, in combination with some str slicing, to
1141 // simulate the 'y' flag.
1142 reCopy = new RegExp('^(?:' + source + ')', flags);
1143 }
1144
1145 if (NPCG_INCLUDED) {
1146 reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
1147 }
1148 if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
1149
1150 match = nativeExec.call(sticky ? reCopy : re, strCopy);
1151
1152 if (sticky) {
1153 if (match) {
1154 match.input = match.input.slice(charsAdded);
1155 match[0] = match[0].slice(charsAdded);
1156 match.index = re.lastIndex;
1157 re.lastIndex += match[0].length;
1158 } else re.lastIndex = 0;
1159 } else if (UPDATES_LAST_INDEX_WRONG && match) {
1160 re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
1161 }
1162 if (NPCG_INCLUDED && match && match.length > 1) {
1163 // Fix browsers whose `exec` methods don't consistently return `undefined`
1164 // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
1165 nativeReplace.call(match[0], reCopy, function () {
1166 for (i = 1; i < arguments.length - 2; i++) {
1167 if (arguments[i] === undefined) match[i] = undefined;
1168 }
1169 });
1170 }
1171
1172 return match;
1173 };
1174 }
1175
1176 var regexpExec = patchedExec;
1177
1178 // `RegExp.prototype.exec` method
1179 // https://tc39.es/ecma262/#sec-regexp.prototype.exec
1180 _export({ target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, {
1181 exec: regexpExec
1182 });
1183
1184 // TODO: Remove from `core-js@4` since it's moved to entry points
1185
1186
1187
1188
1189
1190
1191 var SPECIES = wellKnownSymbol('species');
1192
1193 var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
1194 // #replace needs built-in support for named groups.
1195 // #match works fine because it just return the exec results, even if it has
1196 // a "grops" property.
1197 var re = /./;
1198 re.exec = function () {
1199 var result = [];
1200 result.groups = { a: '7' };
1201 return result;
1202 };
1203 return ''.replace(re, '$<a>') !== '7';
1204 });
1205
1206 // IE <= 11 replaces $0 with the whole match, as if it was $&
1207 // https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
1208 var REPLACE_KEEPS_$0 = (function () {
1209 // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing
1210 return 'a'.replace(/./, '$0') === '$0';
1211 })();
1212
1213 var REPLACE = wellKnownSymbol('replace');
1214 // Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string
1215 var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {
1216 if (/./[REPLACE]) {
1217 return /./[REPLACE]('a', '$0') === '';
1218 }
1219 return false;
1220 })();
1221
1222 // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
1223 // Weex JS has frozen built-in prototypes, so use try / catch wrapper
1224 var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
1225 // eslint-disable-next-line regexp/no-empty-group -- required for testing
1226 var re = /(?:)/;
1227 var originalExec = re.exec;
1228 re.exec = function () { return originalExec.apply(this, arguments); };
1229 var result = 'ab'.split(re);
1230 return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
1231 });
1232
1233 var fixRegexpWellKnownSymbolLogic = function (KEY, length, exec, sham) {
1234 var SYMBOL = wellKnownSymbol(KEY);
1235
1236 var DELEGATES_TO_SYMBOL = !fails(function () {
1237 // String methods call symbol-named RegEp methods
1238 var O = {};
1239 O[SYMBOL] = function () { return 7; };
1240 return ''[KEY](O) != 7;
1241 });
1242
1243 var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
1244 // Symbol-named RegExp methods call .exec
1245 var execCalled = false;
1246 var re = /a/;
1247
1248 if (KEY === 'split') {
1249 // We can't use real regex here since it causes deoptimization
1250 // and serious performance degradation in V8
1251 // https://github.com/zloirock/core-js/issues/306
1252 re = {};
1253 // RegExp[@@split] doesn't call the regex's exec method, but first creates
1254 // a new one. We need to return the patched regex when creating the new one.
1255 re.constructor = {};
1256 re.constructor[SPECIES] = function () { return re; };
1257 re.flags = '';
1258 re[SYMBOL] = /./[SYMBOL];
1259 }
1260
1261 re.exec = function () { execCalled = true; return null; };
1262
1263 re[SYMBOL]('');
1264 return !execCalled;
1265 });
1266
1267 if (
1268 !DELEGATES_TO_SYMBOL ||
1269 !DELEGATES_TO_EXEC ||
1270 (KEY === 'replace' && !(
1271 REPLACE_SUPPORTS_NAMED_GROUPS &&
1272 REPLACE_KEEPS_$0 &&
1273 !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
1274 )) ||
1275 (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
1276 ) {
1277 var nativeRegExpMethod = /./[SYMBOL];
1278 var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
1279 if (regexp.exec === RegExp.prototype.exec) {
1280 if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
1281 // The native String method already delegates to @@method (this
1282 // polyfilled function), leasing to infinite recursion.
1283 // We avoid it by directly calling the native @@method method.
1284 return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
1285 }
1286 return { done: true, value: nativeMethod.call(str, regexp, arg2) };
1287 }
1288 return { done: false };
1289 }, {
1290 REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,
1291 REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE
1292 });
1293 var stringMethod = methods[0];
1294 var regexMethod = methods[1];
1295
1296 redefine(String.prototype, KEY, stringMethod);
1297 redefine(RegExp.prototype, SYMBOL, length == 2
1298 // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
1299 // 21.2.5.11 RegExp.prototype[@@split](string, limit)
1300 ? function (string, arg) { return regexMethod.call(string, this, arg); }
1301 // 21.2.5.6 RegExp.prototype[@@match](string)
1302 // 21.2.5.9 RegExp.prototype[@@search](string)
1303 : function (string) { return regexMethod.call(string, this); }
1304 );
1305 }
1306
1307 if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);
1308 };
1309
1310 // `SameValue` abstract operation
1311 // https://tc39.es/ecma262/#sec-samevalue
1312 // eslint-disable-next-line es/no-object-is -- safe
1313 var sameValue = Object.is || function is(x, y) {
1314 // eslint-disable-next-line no-self-compare -- NaN check
1315 return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
1316 };
1317
1318 // `RegExpExec` abstract operation
1319 // https://tc39.es/ecma262/#sec-regexpexec
1320 var regexpExecAbstract = function (R, S) {
1321 var exec = R.exec;
1322 if (typeof exec === 'function') {
1323 var result = exec.call(R, S);
1324 if (typeof result !== 'object') {
1325 throw TypeError('RegExp exec method returned something other than an Object or null');
1326 }
1327 return result;
1328 }
1329
1330 if (classofRaw(R) !== 'RegExp') {
1331 throw TypeError('RegExp#exec called on incompatible receiver');
1332 }
1333
1334 return regexpExec.call(R, S);
1335 };
1336
1337 // @@search logic
1338 fixRegexpWellKnownSymbolLogic('search', 1, function (SEARCH, nativeSearch, maybeCallNative) {
1339 return [
1340 // `String.prototype.search` method
1341 // https://tc39.es/ecma262/#sec-string.prototype.search
1342 function search(regexp) {
1343 var O = requireObjectCoercible(this);
1344 var searcher = regexp == undefined ? undefined : regexp[SEARCH];
1345 return searcher !== undefined ? searcher.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
1346 },
1347 // `RegExp.prototype[@@search]` method
1348 // https://tc39.es/ecma262/#sec-regexp.prototype-@@search
1349 function (regexp) {
1350 var res = maybeCallNative(nativeSearch, regexp, this);
1351 if (res.done) return res.value;
1352
1353 var rx = anObject(regexp);
1354 var S = String(this);
1355
1356 var previousLastIndex = rx.lastIndex;
1357 if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
1358 var result = regexpExecAbstract(rx, S);
1359 if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
1360 return result === null ? -1 : result.index;
1361 }
1362 ];
1363 });
1364
1365 /**
1366 * @author: Dennis Hernández
1367 * @webSite: http://djhvscf.github.io/Blog
1368 * @update zhixin wen <wenzhixin2010@gmail.com>
1369 */
1370
1371 var Utils = $__default['default'].fn.bootstrapTable.utils;
1372 $__default['default'].extend($__default['default'].fn.bootstrapTable.defaults, {
1373 keyEvents: false
1374 });
1375
1376 $__default['default'].BootstrapTable = /*#__PURE__*/function (_$$BootstrapTable) {
1377 _inherits(_class, _$$BootstrapTable);
1378
1379 var _super = _createSuper(_class);
1380
1381 function _class() {
1382 _classCallCheck(this, _class);
1383
1384 return _super.apply(this, arguments);
1385 }
1386
1387 _createClass(_class, [{
1388 key: "init",
1389 value: function init() {
1390 var _get2;
1391
1392 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1393 args[_key] = arguments[_key];
1394 }
1395
1396 (_get2 = _get(_getPrototypeOf(_class.prototype), "init", this)).call.apply(_get2, [this].concat(args));
1397
1398 if (this.options.keyEvents) {
1399 this.initKeyEvents();
1400 }
1401 }
1402 }, {
1403 key: "initKeyEvents",
1404 value: function initKeyEvents() {
1405 var _this = this;
1406
1407 $__default['default'](document).off('keydown').on('keydown', function (e) {
1408 var $search = Utils.getSearchInput(_this);
1409
1410 var $refresh = _this.$toolbar.find('button[name="refresh"]');
1411
1412 var $toggle = _this.$toolbar.find('button[name="toggle"]');
1413
1414 var $paginationSwitch = _this.$toolbar.find('button[name="paginationSwitch"]');
1415
1416 if (document.activeElement === $search.get(0) || !$__default['default'].contains(document.activeElement, _this.$toolbar.get(0))) {
1417 return true;
1418 }
1419
1420 switch (e.keyCode) {
1421 case 83:
1422 // s
1423 if (!_this.options.search) {
1424 return;
1425 }
1426
1427 $search.focus();
1428 return false;
1429
1430 case 82:
1431 // r
1432 if (!_this.options.showRefresh) {
1433 return;
1434 }
1435
1436 $refresh.click();
1437 return false;
1438
1439 case 84:
1440 // t
1441 if (!_this.options.showToggle) {
1442 return;
1443 }
1444
1445 $toggle.click();
1446 return false;
1447
1448 case 80:
1449 // p
1450 if (!_this.options.showPaginationSwitch) {
1451 return;
1452 }
1453
1454 $paginationSwitch.click();
1455 return false;
1456
1457 case 37:
1458 // left
1459 if (!_this.options.pagination) {
1460 return;
1461 }
1462
1463 _this.prevPage();
1464
1465 return false;
1466
1467 case 39:
1468 // right
1469 if (!_this.options.pagination) {
1470 return;
1471 }
1472
1473 _this.nextPage();
1474
1475 return;
1476 }
1477 });
1478 }
1479 }]);
1480
1481 return _class;
1482 }($__default['default'].BootstrapTable);
1483
1484})));