bootstrap-table-rails 1.15.5 → 1.16.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -4
  3. data/lib/bootstrap-table-rails/version.rb +1 -1
  4. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-locale-all.js +106 -64
  5. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.esm.js +678 -208
  6. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.js +680 -210
  7. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.css +66 -10
  8. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.js +742 -489
  9. data/vendor/assets/javascripts/bootstrap-table/extensions/accent-neutralise/bootstrap-table-accent-neutralise.js +1103 -213
  10. data/vendor/assets/javascripts/bootstrap-table/extensions/addrbar/bootstrap-table-addrbar.js +226 -80
  11. data/vendor/assets/javascripts/bootstrap-table/extensions/auto-refresh/bootstrap-table-auto-refresh.js +136 -64
  12. data/vendor/assets/javascripts/bootstrap-table/extensions/cell-input/bootstrap-table-cell-input.js +338 -177
  13. data/vendor/assets/javascripts/bootstrap-table/extensions/cookie/bootstrap-table-cookie.js +402 -110
  14. data/vendor/assets/javascripts/bootstrap-table/extensions/copy-rows/bootstrap-table-copy-rows.js +133 -61
  15. data/vendor/assets/javascripts/bootstrap-table/extensions/defer-url/bootstrap-table-defer-url.js +82 -41
  16. data/vendor/assets/javascripts/bootstrap-table/extensions/editable/bootstrap-table-editable.js +243 -75
  17. data/vendor/assets/javascripts/bootstrap-table/extensions/export/bootstrap-table-export.js +347 -179
  18. data/vendor/assets/javascripts/bootstrap-table/extensions/filter-control/bootstrap-table-filter-control.css +1 -1
  19. data/vendor/assets/javascripts/bootstrap-table/extensions/filter-control/bootstrap-table-filter-control.js +687 -358
  20. data/vendor/assets/javascripts/bootstrap-table/extensions/fixed-columns/bootstrap-table-fixed-columns.css +12 -14
  21. data/vendor/assets/javascripts/bootstrap-table/extensions/fixed-columns/bootstrap-table-fixed-columns.js +545 -422
  22. data/vendor/assets/javascripts/bootstrap-table/extensions/group-by-v2/bootstrap-table-group-by.js +488 -92
  23. data/vendor/assets/javascripts/bootstrap-table/extensions/i18n-enhance/bootstrap-table-i18n-enhance.js +2 -2
  24. data/vendor/assets/javascripts/bootstrap-table/extensions/key-events/bootstrap-table-key-events.js +216 -72
  25. data/vendor/assets/javascripts/bootstrap-table/extensions/mobile/bootstrap-table-mobile.js +142 -65
  26. data/vendor/assets/javascripts/bootstrap-table/extensions/multiple-sort/bootstrap-table-multiple-sort.js +345 -137
  27. data/vendor/assets/javascripts/bootstrap-table/extensions/page-jump-to/bootstrap-table-page-jump-to.js +136 -64
  28. data/vendor/assets/javascripts/bootstrap-table/extensions/pipeline/bootstrap-table-pipeline.js +86 -41
  29. data/vendor/assets/javascripts/bootstrap-table/extensions/print/bootstrap-table-print.js +218 -123
  30. data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-columns/bootstrap-table-reorder-columns.js +640 -254
  31. data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-rows/bootstrap-table-reorder-rows.js +347 -135
  32. data/vendor/assets/javascripts/bootstrap-table/extensions/resizable/bootstrap-table-resizable.js +83 -43
  33. data/vendor/assets/javascripts/bootstrap-table/extensions/sticky-header/bootstrap-table-sticky-header.css +0 -1
  34. data/vendor/assets/javascripts/bootstrap-table/extensions/sticky-header/bootstrap-table-sticky-header.js +203 -75
  35. data/vendor/assets/javascripts/bootstrap-table/extensions/toolbar/bootstrap-table-toolbar.js +449 -199
  36. data/vendor/assets/javascripts/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js +207 -114
  37. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-af-ZA.js +82 -41
  38. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ar-SA.js +82 -41
  39. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ca-ES.js +82 -41
  40. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-cs-CZ.js +82 -41
  41. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-da-DK.js +82 -41
  42. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-de-DE.js +82 -41
  43. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-el-GR.js +82 -41
  44. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-en-US.js +82 -41
  45. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-AR.js +104 -62
  46. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CL.js +82 -41
  47. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CR.js +82 -41
  48. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-ES.js +82 -41
  49. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-MX.js +82 -41
  50. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-NI.js +82 -41
  51. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-SP.js +82 -41
  52. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-et-EE.js +82 -41
  53. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-eu-EU.js +82 -41
  54. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fa-IR.js +82 -41
  55. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fi-FI.js +82 -41
  56. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-BE.js +82 -41
  57. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-CH.js +82 -41
  58. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-FR.js +83 -42
  59. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-LU.js +82 -41
  60. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-he-IL.js +82 -41
  61. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hr-HR.js +82 -41
  62. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hu-HU.js +82 -41
  63. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-id-ID.js +82 -41
  64. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-it-IT.js +82 -41
  65. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ja-JP.js +82 -41
  66. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ka-GE.js +82 -41
  67. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ko-KR.js +82 -41
  68. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ms-MY.js +82 -41
  69. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nb-NO.js +82 -41
  70. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-BE.js +82 -41
  71. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-NL.js +82 -41
  72. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pl-PL.js +82 -41
  73. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-BR.js +83 -42
  74. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-PT.js +82 -41
  75. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ro-RO.js +82 -41
  76. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ru-RU.js +82 -41
  77. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sk-SK.js +82 -41
  78. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Cyrl-RS.js +82 -41
  79. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Latn-RS.js +82 -41
  80. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sv-SE.js +82 -41
  81. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-th-TH.js +82 -41
  82. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-tr-TR.js +82 -41
  83. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uk-UA.js +82 -41
  84. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ur-PK.js +82 -41
  85. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uz-Latn-UZ.js +82 -41
  86. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-vi-VN.js +82 -41
  87. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-CN.js +82 -41
  88. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-TW.js +82 -41
  89. data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.css +80 -11
  90. data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.js +106 -60
  91. data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.css +79 -13
  92. data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.js +111 -62
  93. data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.css +74 -9
  94. data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.js +109 -63
  95. data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.css +80 -13
  96. data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.js +110 -64
  97. metadata +1 -2
  98. data/vendor/assets/javascripts/bootstrap-table/extensions/natural-sorting/bootstrap-table-natural-sorting.js +0 -1265
@@ -2,7 +2,7 @@
2
2
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('jquery')) :
3
3
  typeof define === 'function' && define.amd ? define(['jquery'], factory) :
4
4
  (global = global || self, factory(global.jQuery));
5
- }(this, function ($) { 'use strict';
5
+ }(this, (function ($) { 'use strict';
6
6
 
7
7
  $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
8
8
 
@@ -12,7 +12,6 @@
12
12
  return module = { exports: {} }, fn(module, module.exports), module.exports;
13
13
  }
14
14
 
15
- var O = 'object';
16
15
  var check = function (it) {
17
16
  return it && it.Math == Math && it;
18
17
  };
@@ -20,10 +19,10 @@
20
19
  // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
21
20
  var global_1 =
22
21
  // eslint-disable-next-line no-undef
23
- check(typeof globalThis == O && globalThis) ||
24
- check(typeof window == O && window) ||
25
- check(typeof self == O && self) ||
26
- check(typeof commonjsGlobal == O && commonjsGlobal) ||
22
+ check(typeof globalThis == 'object' && globalThis) ||
23
+ check(typeof window == 'object' && window) ||
24
+ check(typeof self == 'object' && self) ||
25
+ check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
27
26
  // eslint-disable-next-line no-new-func
28
27
  Function('return this')();
29
28
 
@@ -121,12 +120,12 @@
121
120
  return hasOwnProperty.call(it, key);
122
121
  };
123
122
 
124
- var document = global_1.document;
123
+ var document$1 = global_1.document;
125
124
  // typeof document.createElement is 'object' in old IE
126
- var EXISTS = isObject(document) && isObject(document.createElement);
125
+ var EXISTS = isObject(document$1) && isObject(document$1.createElement);
127
126
 
128
127
  var documentCreateElement = function (it) {
129
- return EXISTS ? document.createElement(it) : {};
128
+ return EXISTS ? document$1.createElement(it) : {};
130
129
  };
131
130
 
132
131
  // Thank's IE8 for his funny defineProperty
@@ -179,7 +178,7 @@
179
178
  f: f$2
180
179
  };
181
180
 
182
- var hide = descriptors ? function (object, key, value) {
181
+ var createNonEnumerableProperty = descriptors ? function (object, key, value) {
183
182
  return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value));
184
183
  } : function (object, key, value) {
185
184
  object[key] = value;
@@ -188,31 +187,42 @@
188
187
 
189
188
  var setGlobal = function (key, value) {
190
189
  try {
191
- hide(global_1, key, value);
190
+ createNonEnumerableProperty(global_1, key, value);
192
191
  } catch (error) {
193
192
  global_1[key] = value;
194
193
  } return value;
195
194
  };
196
195
 
197
- var shared = createCommonjsModule(function (module) {
198
196
  var SHARED = '__core-js_shared__';
199
197
  var store = global_1[SHARED] || setGlobal(SHARED, {});
200
198
 
199
+ var sharedStore = store;
200
+
201
+ var functionToString = Function.toString;
202
+
203
+ // this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
204
+ if (typeof sharedStore.inspectSource != 'function') {
205
+ sharedStore.inspectSource = function (it) {
206
+ return functionToString.call(it);
207
+ };
208
+ }
209
+
210
+ var inspectSource = sharedStore.inspectSource;
211
+
212
+ var WeakMap = global_1.WeakMap;
213
+
214
+ var nativeWeakMap = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));
215
+
216
+ var shared = createCommonjsModule(function (module) {
201
217
  (module.exports = function (key, value) {
202
- return store[key] || (store[key] = value !== undefined ? value : {});
218
+ return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {});
203
219
  })('versions', []).push({
204
- version: '3.1.3',
220
+ version: '3.6.0',
205
221
  mode: 'global',
206
222
  copyright: '© 2019 Denis Pushkarev (zloirock.ru)'
207
223
  });
208
224
  });
209
225
 
210
- var functionToString = shared('native-function-to-string', Function.toString);
211
-
212
- var WeakMap = global_1.WeakMap;
213
-
214
- var nativeWeakMap = typeof WeakMap === 'function' && /native code/.test(functionToString.call(WeakMap));
215
-
216
226
  var id = 0;
217
227
  var postfix = Math.random();
218
228
 
@@ -245,25 +255,25 @@
245
255
  };
246
256
 
247
257
  if (nativeWeakMap) {
248
- var store = new WeakMap$1();
249
- var wmget = store.get;
250
- var wmhas = store.has;
251
- var wmset = store.set;
258
+ var store$1 = new WeakMap$1();
259
+ var wmget = store$1.get;
260
+ var wmhas = store$1.has;
261
+ var wmset = store$1.set;
252
262
  set = function (it, metadata) {
253
- wmset.call(store, it, metadata);
263
+ wmset.call(store$1, it, metadata);
254
264
  return metadata;
255
265
  };
256
266
  get = function (it) {
257
- return wmget.call(store, it) || {};
267
+ return wmget.call(store$1, it) || {};
258
268
  };
259
269
  has$1 = function (it) {
260
- return wmhas.call(store, it);
270
+ return wmhas.call(store$1, it);
261
271
  };
262
272
  } else {
263
273
  var STATE = sharedKey('state');
264
274
  hiddenKeys[STATE] = true;
265
275
  set = function (it, metadata) {
266
- hide(it, STATE, metadata);
276
+ createNonEnumerableProperty(it, STATE, metadata);
267
277
  return metadata;
268
278
  };
269
279
  get = function (it) {
@@ -285,18 +295,14 @@
285
295
  var redefine = createCommonjsModule(function (module) {
286
296
  var getInternalState = internalState.get;
287
297
  var enforceInternalState = internalState.enforce;
288
- var TEMPLATE = String(functionToString).split('toString');
289
-
290
- shared('inspectSource', function (it) {
291
- return functionToString.call(it);
292
- });
298
+ var TEMPLATE = String(String).split('String');
293
299
 
294
300
  (module.exports = function (O, key, value, options) {
295
301
  var unsafe = options ? !!options.unsafe : false;
296
302
  var simple = options ? !!options.enumerable : false;
297
303
  var noTargetGet = options ? !!options.noTargetGet : false;
298
304
  if (typeof value == 'function') {
299
- if (typeof key == 'string' && !has(value, 'name')) hide(value, 'name', key);
305
+ if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);
300
306
  enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');
301
307
  }
302
308
  if (O === global_1) {
@@ -309,10 +315,10 @@
309
315
  simple = true;
310
316
  }
311
317
  if (simple) O[key] = value;
312
- else hide(O, key, value);
318
+ else createNonEnumerableProperty(O, key, value);
313
319
  // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
314
320
  })(Function.prototype, 'toString', function toString() {
315
- return typeof this == 'function' && getInternalState(this).source || functionToString.call(this);
321
+ return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
316
322
  });
317
323
  });
318
324
 
@@ -349,7 +355,7 @@
349
355
 
350
356
  // Helper for a popular repeating case of the spec:
351
357
  // Let integer be ? ToInteger(index).
352
- // If integer < 0, let result be max((length + integer), 0); else let result be min(length, length).
358
+ // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
353
359
  var toAbsoluteIndex = function (index, length) {
354
360
  var integer = toInteger(index);
355
361
  return integer < 0 ? max(integer + length, 0) : min$1(integer, length);
@@ -513,13 +519,192 @@
513
519
  }
514
520
  // add a flag to not completely full polyfills
515
521
  if (options.sham || (targetProperty && targetProperty.sham)) {
516
- hide(sourceProperty, 'sham', true);
522
+ createNonEnumerableProperty(sourceProperty, 'sham', true);
517
523
  }
518
524
  // extend global
519
525
  redefine(target, key, sourceProperty, options);
520
526
  }
521
527
  };
522
528
 
529
+ var nativeSymbol = !!Object.getOwnPropertySymbols && !fails(function () {
530
+ // Chrome 38 Symbol has incorrect toString conversion
531
+ // eslint-disable-next-line no-undef
532
+ return !String(Symbol());
533
+ });
534
+
535
+ var useSymbolAsUid = nativeSymbol
536
+ // eslint-disable-next-line no-undef
537
+ && !Symbol.sham
538
+ // eslint-disable-next-line no-undef
539
+ && typeof Symbol() == 'symbol';
540
+
541
+ // `IsArray` abstract operation
542
+ // https://tc39.github.io/ecma262/#sec-isarray
543
+ var isArray = Array.isArray || function isArray(arg) {
544
+ return classofRaw(arg) == 'Array';
545
+ };
546
+
547
+ // `ToObject` abstract operation
548
+ // https://tc39.github.io/ecma262/#sec-toobject
549
+ var toObject = function (argument) {
550
+ return Object(requireObjectCoercible(argument));
551
+ };
552
+
553
+ // `Object.keys` method
554
+ // https://tc39.github.io/ecma262/#sec-object.keys
555
+ var objectKeys = Object.keys || function keys(O) {
556
+ return objectKeysInternal(O, enumBugKeys);
557
+ };
558
+
559
+ // `Object.defineProperties` method
560
+ // https://tc39.github.io/ecma262/#sec-object.defineproperties
561
+ var objectDefineProperties = descriptors ? Object.defineProperties : function defineProperties(O, Properties) {
562
+ anObject(O);
563
+ var keys = objectKeys(Properties);
564
+ var length = keys.length;
565
+ var index = 0;
566
+ var key;
567
+ while (length > index) objectDefineProperty.f(O, key = keys[index++], Properties[key]);
568
+ return O;
569
+ };
570
+
571
+ var html = getBuiltIn('document', 'documentElement');
572
+
573
+ var GT = '>';
574
+ var LT = '<';
575
+ var PROTOTYPE = 'prototype';
576
+ var SCRIPT = 'script';
577
+ var IE_PROTO = sharedKey('IE_PROTO');
578
+
579
+ var EmptyConstructor = function () { /* empty */ };
580
+
581
+ var scriptTag = function (content) {
582
+ return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
583
+ };
584
+
585
+ // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
586
+ var NullProtoObjectViaActiveX = function (activeXDocument) {
587
+ activeXDocument.write(scriptTag(''));
588
+ activeXDocument.close();
589
+ var temp = activeXDocument.parentWindow.Object;
590
+ activeXDocument = null; // avoid memory leak
591
+ return temp;
592
+ };
593
+
594
+ // Create object with fake `null` prototype: use iframe Object with cleared prototype
595
+ var NullProtoObjectViaIFrame = function () {
596
+ // Thrash, waste and sodomy: IE GC bug
597
+ var iframe = documentCreateElement('iframe');
598
+ var JS = 'java' + SCRIPT + ':';
599
+ var iframeDocument;
600
+ iframe.style.display = 'none';
601
+ html.appendChild(iframe);
602
+ // https://github.com/zloirock/core-js/issues/475
603
+ iframe.src = String(JS);
604
+ iframeDocument = iframe.contentWindow.document;
605
+ iframeDocument.open();
606
+ iframeDocument.write(scriptTag('document.F=Object'));
607
+ iframeDocument.close();
608
+ return iframeDocument.F;
609
+ };
610
+
611
+ // Check for document.domain and active x support
612
+ // No need to use active x approach when document.domain is not set
613
+ // see https://github.com/es-shims/es5-shim/issues/150
614
+ // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
615
+ // avoid IE GC bug
616
+ var activeXDocument;
617
+ var NullProtoObject = function () {
618
+ try {
619
+ /* global ActiveXObject */
620
+ activeXDocument = document.domain && new ActiveXObject('htmlfile');
621
+ } catch (error) { /* ignore */ }
622
+ NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
623
+ var length = enumBugKeys.length;
624
+ while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
625
+ return NullProtoObject();
626
+ };
627
+
628
+ hiddenKeys[IE_PROTO] = true;
629
+
630
+ // `Object.create` method
631
+ // https://tc39.github.io/ecma262/#sec-object.create
632
+ var objectCreate = Object.create || function create(O, Properties) {
633
+ var result;
634
+ if (O !== null) {
635
+ EmptyConstructor[PROTOTYPE] = anObject(O);
636
+ result = new EmptyConstructor();
637
+ EmptyConstructor[PROTOTYPE] = null;
638
+ // add "__proto__" for Object.getPrototypeOf polyfill
639
+ result[IE_PROTO] = O;
640
+ } else result = NullProtoObject();
641
+ return Properties === undefined ? result : objectDefineProperties(result, Properties);
642
+ };
643
+
644
+ var nativeGetOwnPropertyNames = objectGetOwnPropertyNames.f;
645
+
646
+ var toString$1 = {}.toString;
647
+
648
+ var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
649
+ ? Object.getOwnPropertyNames(window) : [];
650
+
651
+ var getWindowNames = function (it) {
652
+ try {
653
+ return nativeGetOwnPropertyNames(it);
654
+ } catch (error) {
655
+ return windowNames.slice();
656
+ }
657
+ };
658
+
659
+ // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
660
+ var f$5 = function getOwnPropertyNames(it) {
661
+ return windowNames && toString$1.call(it) == '[object Window]'
662
+ ? getWindowNames(it)
663
+ : nativeGetOwnPropertyNames(toIndexedObject(it));
664
+ };
665
+
666
+ var objectGetOwnPropertyNamesExternal = {
667
+ f: f$5
668
+ };
669
+
670
+ var WellKnownSymbolsStore = shared('wks');
671
+ var Symbol$1 = global_1.Symbol;
672
+ var createWellKnownSymbol = useSymbolAsUid ? Symbol$1 : uid;
673
+
674
+ var wellKnownSymbol = function (name) {
675
+ if (!has(WellKnownSymbolsStore, name)) {
676
+ if (nativeSymbol && has(Symbol$1, name)) WellKnownSymbolsStore[name] = Symbol$1[name];
677
+ else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
678
+ } return WellKnownSymbolsStore[name];
679
+ };
680
+
681
+ var f$6 = wellKnownSymbol;
682
+
683
+ var wrappedWellKnownSymbol = {
684
+ f: f$6
685
+ };
686
+
687
+ var defineProperty = objectDefineProperty.f;
688
+
689
+ var defineWellKnownSymbol = function (NAME) {
690
+ var Symbol = path.Symbol || (path.Symbol = {});
691
+ if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {
692
+ value: wrappedWellKnownSymbol.f(NAME)
693
+ });
694
+ };
695
+
696
+ var defineProperty$1 = objectDefineProperty.f;
697
+
698
+
699
+
700
+ var TO_STRING_TAG = wellKnownSymbol('toStringTag');
701
+
702
+ var setToStringTag = function (it, TAG, STATIC) {
703
+ if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {
704
+ defineProperty$1(it, TO_STRING_TAG, { configurable: true, value: TAG });
705
+ }
706
+ };
707
+
523
708
  var aFunction$1 = function (it) {
524
709
  if (typeof it != 'function') {
525
710
  throw TypeError(String(it) + ' is not a function');
@@ -549,32 +734,6 @@
549
734
  };
550
735
  };
551
736
 
552
- // `ToObject` abstract operation
553
- // https://tc39.github.io/ecma262/#sec-toobject
554
- var toObject = function (argument) {
555
- return Object(requireObjectCoercible(argument));
556
- };
557
-
558
- // `IsArray` abstract operation
559
- // https://tc39.github.io/ecma262/#sec-isarray
560
- var isArray = Array.isArray || function isArray(arg) {
561
- return classofRaw(arg) == 'Array';
562
- };
563
-
564
- var nativeSymbol = !!Object.getOwnPropertySymbols && !fails(function () {
565
- // Chrome 38 Symbol has incorrect toString conversion
566
- // eslint-disable-next-line no-undef
567
- return !String(Symbol());
568
- });
569
-
570
- var Symbol$1 = global_1.Symbol;
571
- var store$1 = shared('wks');
572
-
573
- var wellKnownSymbol = function (name) {
574
- return store$1[name] || (store$1[name] = nativeSymbol && Symbol$1[name]
575
- || (nativeSymbol ? Symbol$1 : uid)('Symbol.' + name));
576
- };
577
-
578
737
  var SPECIES = wellKnownSymbol('species');
579
738
 
580
739
  // `ArraySpeciesCreate` abstract operation
@@ -652,10 +811,354 @@
652
811
  findIndex: createMethod$1(6)
653
812
  };
654
813
 
814
+ var $forEach = arrayIteration.forEach;
815
+
816
+ var HIDDEN = sharedKey('hidden');
817
+ var SYMBOL = 'Symbol';
818
+ var PROTOTYPE$1 = 'prototype';
819
+ var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
820
+ var setInternalState = internalState.set;
821
+ var getInternalState = internalState.getterFor(SYMBOL);
822
+ var ObjectPrototype = Object[PROTOTYPE$1];
823
+ var $Symbol = global_1.Symbol;
824
+ var $stringify = getBuiltIn('JSON', 'stringify');
825
+ var nativeGetOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f;
826
+ var nativeDefineProperty$1 = objectDefineProperty.f;
827
+ var nativeGetOwnPropertyNames$1 = objectGetOwnPropertyNamesExternal.f;
828
+ var nativePropertyIsEnumerable$1 = objectPropertyIsEnumerable.f;
829
+ var AllSymbols = shared('symbols');
830
+ var ObjectPrototypeSymbols = shared('op-symbols');
831
+ var StringToSymbolRegistry = shared('string-to-symbol-registry');
832
+ var SymbolToStringRegistry = shared('symbol-to-string-registry');
833
+ var WellKnownSymbolsStore$1 = shared('wks');
834
+ var QObject = global_1.QObject;
835
+ // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
836
+ var USE_SETTER = !QObject || !QObject[PROTOTYPE$1] || !QObject[PROTOTYPE$1].findChild;
837
+
838
+ // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
839
+ var setSymbolDescriptor = descriptors && fails(function () {
840
+ return objectCreate(nativeDefineProperty$1({}, 'a', {
841
+ get: function () { return nativeDefineProperty$1(this, 'a', { value: 7 }).a; }
842
+ })).a != 7;
843
+ }) ? function (O, P, Attributes) {
844
+ var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor$1(ObjectPrototype, P);
845
+ if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];
846
+ nativeDefineProperty$1(O, P, Attributes);
847
+ if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {
848
+ nativeDefineProperty$1(ObjectPrototype, P, ObjectPrototypeDescriptor);
849
+ }
850
+ } : nativeDefineProperty$1;
851
+
852
+ var wrap = function (tag, description) {
853
+ var symbol = AllSymbols[tag] = objectCreate($Symbol[PROTOTYPE$1]);
854
+ setInternalState(symbol, {
855
+ type: SYMBOL,
856
+ tag: tag,
857
+ description: description
858
+ });
859
+ if (!descriptors) symbol.description = description;
860
+ return symbol;
861
+ };
862
+
863
+ var isSymbol = nativeSymbol && typeof $Symbol.iterator == 'symbol' ? function (it) {
864
+ return typeof it == 'symbol';
865
+ } : function (it) {
866
+ return Object(it) instanceof $Symbol;
867
+ };
868
+
869
+ var $defineProperty = function defineProperty(O, P, Attributes) {
870
+ if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);
871
+ anObject(O);
872
+ var key = toPrimitive(P, true);
873
+ anObject(Attributes);
874
+ if (has(AllSymbols, key)) {
875
+ if (!Attributes.enumerable) {
876
+ if (!has(O, HIDDEN)) nativeDefineProperty$1(O, HIDDEN, createPropertyDescriptor(1, {}));
877
+ O[HIDDEN][key] = true;
878
+ } else {
879
+ if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;
880
+ Attributes = objectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });
881
+ } return setSymbolDescriptor(O, key, Attributes);
882
+ } return nativeDefineProperty$1(O, key, Attributes);
883
+ };
884
+
885
+ var $defineProperties = function defineProperties(O, Properties) {
886
+ anObject(O);
887
+ var properties = toIndexedObject(Properties);
888
+ var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));
889
+ $forEach(keys, function (key) {
890
+ if (!descriptors || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);
891
+ });
892
+ return O;
893
+ };
894
+
895
+ var $create = function create(O, Properties) {
896
+ return Properties === undefined ? objectCreate(O) : $defineProperties(objectCreate(O), Properties);
897
+ };
898
+
899
+ var $propertyIsEnumerable = function propertyIsEnumerable(V) {
900
+ var P = toPrimitive(V, true);
901
+ var enumerable = nativePropertyIsEnumerable$1.call(this, P);
902
+ if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;
903
+ return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;
904
+ };
905
+
906
+ var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {
907
+ var it = toIndexedObject(O);
908
+ var key = toPrimitive(P, true);
909
+ if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;
910
+ var descriptor = nativeGetOwnPropertyDescriptor$1(it, key);
911
+ if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {
912
+ descriptor.enumerable = true;
913
+ }
914
+ return descriptor;
915
+ };
916
+
917
+ var $getOwnPropertyNames = function getOwnPropertyNames(O) {
918
+ var names = nativeGetOwnPropertyNames$1(toIndexedObject(O));
919
+ var result = [];
920
+ $forEach(names, function (key) {
921
+ if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);
922
+ });
923
+ return result;
924
+ };
925
+
926
+ var $getOwnPropertySymbols = function getOwnPropertySymbols(O) {
927
+ var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;
928
+ var names = nativeGetOwnPropertyNames$1(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));
929
+ var result = [];
930
+ $forEach(names, function (key) {
931
+ if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {
932
+ result.push(AllSymbols[key]);
933
+ }
934
+ });
935
+ return result;
936
+ };
937
+
938
+ // `Symbol` constructor
939
+ // https://tc39.github.io/ecma262/#sec-symbol-constructor
940
+ if (!nativeSymbol) {
941
+ $Symbol = function Symbol() {
942
+ if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');
943
+ var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);
944
+ var tag = uid(description);
945
+ var setter = function (value) {
946
+ if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);
947
+ if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
948
+ setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));
949
+ };
950
+ if (descriptors && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });
951
+ return wrap(tag, description);
952
+ };
953
+
954
+ redefine($Symbol[PROTOTYPE$1], 'toString', function toString() {
955
+ return getInternalState(this).tag;
956
+ });
957
+
958
+ objectPropertyIsEnumerable.f = $propertyIsEnumerable;
959
+ objectDefineProperty.f = $defineProperty;
960
+ objectGetOwnPropertyDescriptor.f = $getOwnPropertyDescriptor;
961
+ objectGetOwnPropertyNames.f = objectGetOwnPropertyNamesExternal.f = $getOwnPropertyNames;
962
+ objectGetOwnPropertySymbols.f = $getOwnPropertySymbols;
963
+
964
+ if (descriptors) {
965
+ // https://github.com/tc39/proposal-Symbol-description
966
+ nativeDefineProperty$1($Symbol[PROTOTYPE$1], 'description', {
967
+ configurable: true,
968
+ get: function description() {
969
+ return getInternalState(this).description;
970
+ }
971
+ });
972
+ {
973
+ redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });
974
+ }
975
+ }
976
+ }
977
+
978
+ if (!useSymbolAsUid) {
979
+ wrappedWellKnownSymbol.f = function (name) {
980
+ return wrap(wellKnownSymbol(name), name);
981
+ };
982
+ }
983
+
984
+ _export({ global: true, wrap: true, forced: !nativeSymbol, sham: !nativeSymbol }, {
985
+ Symbol: $Symbol
986
+ });
987
+
988
+ $forEach(objectKeys(WellKnownSymbolsStore$1), function (name) {
989
+ defineWellKnownSymbol(name);
990
+ });
991
+
992
+ _export({ target: SYMBOL, stat: true, forced: !nativeSymbol }, {
993
+ // `Symbol.for` method
994
+ // https://tc39.github.io/ecma262/#sec-symbol.for
995
+ 'for': function (key) {
996
+ var string = String(key);
997
+ if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];
998
+ var symbol = $Symbol(string);
999
+ StringToSymbolRegistry[string] = symbol;
1000
+ SymbolToStringRegistry[symbol] = string;
1001
+ return symbol;
1002
+ },
1003
+ // `Symbol.keyFor` method
1004
+ // https://tc39.github.io/ecma262/#sec-symbol.keyfor
1005
+ keyFor: function keyFor(sym) {
1006
+ if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');
1007
+ if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];
1008
+ },
1009
+ useSetter: function () { USE_SETTER = true; },
1010
+ useSimple: function () { USE_SETTER = false; }
1011
+ });
1012
+
1013
+ _export({ target: 'Object', stat: true, forced: !nativeSymbol, sham: !descriptors }, {
1014
+ // `Object.create` method
1015
+ // https://tc39.github.io/ecma262/#sec-object.create
1016
+ create: $create,
1017
+ // `Object.defineProperty` method
1018
+ // https://tc39.github.io/ecma262/#sec-object.defineproperty
1019
+ defineProperty: $defineProperty,
1020
+ // `Object.defineProperties` method
1021
+ // https://tc39.github.io/ecma262/#sec-object.defineproperties
1022
+ defineProperties: $defineProperties,
1023
+ // `Object.getOwnPropertyDescriptor` method
1024
+ // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors
1025
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor
1026
+ });
1027
+
1028
+ _export({ target: 'Object', stat: true, forced: !nativeSymbol }, {
1029
+ // `Object.getOwnPropertyNames` method
1030
+ // https://tc39.github.io/ecma262/#sec-object.getownpropertynames
1031
+ getOwnPropertyNames: $getOwnPropertyNames,
1032
+ // `Object.getOwnPropertySymbols` method
1033
+ // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols
1034
+ getOwnPropertySymbols: $getOwnPropertySymbols
1035
+ });
1036
+
1037
+ // Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
1038
+ // https://bugs.chromium.org/p/v8/issues/detail?id=3443
1039
+ _export({ target: 'Object', stat: true, forced: fails(function () { objectGetOwnPropertySymbols.f(1); }) }, {
1040
+ getOwnPropertySymbols: function getOwnPropertySymbols(it) {
1041
+ return objectGetOwnPropertySymbols.f(toObject(it));
1042
+ }
1043
+ });
1044
+
1045
+ // `JSON.stringify` method behavior with symbols
1046
+ // https://tc39.github.io/ecma262/#sec-json.stringify
1047
+ if ($stringify) {
1048
+ var FORCED_JSON_STRINGIFY = !nativeSymbol || fails(function () {
1049
+ var symbol = $Symbol();
1050
+ // MS Edge converts symbol values to JSON as {}
1051
+ return $stringify([symbol]) != '[null]'
1052
+ // WebKit converts symbol values to JSON as null
1053
+ || $stringify({ a: symbol }) != '{}'
1054
+ // V8 throws on boxed symbols
1055
+ || $stringify(Object(symbol)) != '{}';
1056
+ });
1057
+
1058
+ _export({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {
1059
+ // eslint-disable-next-line no-unused-vars
1060
+ stringify: function stringify(it, replacer, space) {
1061
+ var args = [it];
1062
+ var index = 1;
1063
+ var $replacer;
1064
+ while (arguments.length > index) args.push(arguments[index++]);
1065
+ $replacer = replacer;
1066
+ if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
1067
+ if (!isArray(replacer)) replacer = function (key, value) {
1068
+ if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
1069
+ if (!isSymbol(value)) return value;
1070
+ };
1071
+ args[1] = replacer;
1072
+ return $stringify.apply(null, args);
1073
+ }
1074
+ });
1075
+ }
1076
+
1077
+ // `Symbol.prototype[@@toPrimitive]` method
1078
+ // https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive
1079
+ if (!$Symbol[PROTOTYPE$1][TO_PRIMITIVE]) {
1080
+ createNonEnumerableProperty($Symbol[PROTOTYPE$1], TO_PRIMITIVE, $Symbol[PROTOTYPE$1].valueOf);
1081
+ }
1082
+ // `Symbol.prototype[@@toStringTag]` property
1083
+ // https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag
1084
+ setToStringTag($Symbol, SYMBOL);
1085
+
1086
+ hiddenKeys[HIDDEN] = true;
1087
+
1088
+ var defineProperty$2 = objectDefineProperty.f;
1089
+
1090
+
1091
+ var NativeSymbol = global_1.Symbol;
1092
+
1093
+ if (descriptors && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||
1094
+ // Safari 12 bug
1095
+ NativeSymbol().description !== undefined
1096
+ )) {
1097
+ var EmptyStringDescriptionStore = {};
1098
+ // wrap Symbol constructor for correct work with undefined description
1099
+ var SymbolWrapper = function Symbol() {
1100
+ var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);
1101
+ var result = this instanceof SymbolWrapper
1102
+ ? new NativeSymbol(description)
1103
+ // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'
1104
+ : description === undefined ? NativeSymbol() : NativeSymbol(description);
1105
+ if (description === '') EmptyStringDescriptionStore[result] = true;
1106
+ return result;
1107
+ };
1108
+ copyConstructorProperties(SymbolWrapper, NativeSymbol);
1109
+ var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;
1110
+ symbolPrototype.constructor = SymbolWrapper;
1111
+
1112
+ var symbolToString = symbolPrototype.toString;
1113
+ var native = String(NativeSymbol('test')) == 'Symbol(test)';
1114
+ var regexp = /^Symbol\((.*)\)[^)]+$/;
1115
+ defineProperty$2(symbolPrototype, 'description', {
1116
+ configurable: true,
1117
+ get: function description() {
1118
+ var symbol = isObject(this) ? this.valueOf() : this;
1119
+ var string = symbolToString.call(symbol);
1120
+ if (has(EmptyStringDescriptionStore, symbol)) return '';
1121
+ var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');
1122
+ return desc === '' ? undefined : desc;
1123
+ }
1124
+ });
1125
+
1126
+ _export({ global: true, forced: true }, {
1127
+ Symbol: SymbolWrapper
1128
+ });
1129
+ }
1130
+
1131
+ // `Symbol.iterator` well-known symbol
1132
+ // https://tc39.github.io/ecma262/#sec-symbol.iterator
1133
+ defineWellKnownSymbol('iterator');
1134
+
1135
+ var userAgent = getBuiltIn('navigator', 'userAgent') || '';
1136
+
1137
+ var process = global_1.process;
1138
+ var versions = process && process.versions;
1139
+ var v8 = versions && versions.v8;
1140
+ var match, version;
1141
+
1142
+ if (v8) {
1143
+ match = v8.split('.');
1144
+ version = match[0] + match[1];
1145
+ } else if (userAgent) {
1146
+ match = userAgent.match(/Edge\/(\d+)/);
1147
+ if (!match || match[1] >= 74) {
1148
+ match = userAgent.match(/Chrome\/(\d+)/);
1149
+ if (match) version = match[1];
1150
+ }
1151
+ }
1152
+
1153
+ var v8Version = version && +version;
1154
+
655
1155
  var SPECIES$1 = wellKnownSymbol('species');
656
1156
 
657
1157
  var arrayMethodHasSpeciesSupport = function (METHOD_NAME) {
658
- return !fails(function () {
1158
+ // We can't use this feature detection in V8 since it causes
1159
+ // deoptimization and serious performance degradation
1160
+ // https://github.com/zloirock/core-js/issues/677
1161
+ return v8Version >= 51 || !fails(function () {
659
1162
  var array = [];
660
1163
  var constructor = array.constructor = {};
661
1164
  constructor[SPECIES$1] = function () {
@@ -668,85 +1171,32 @@
668
1171
  var $filter = arrayIteration.filter;
669
1172
 
670
1173
 
1174
+
1175
+ var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');
1176
+ // Edge 14- issue
1177
+ var USES_TO_LENGTH = HAS_SPECIES_SUPPORT && !fails(function () {
1178
+ [].filter.call({ length: -1, 0: 1 }, function (it) { throw it; });
1179
+ });
1180
+
671
1181
  // `Array.prototype.filter` method
672
1182
  // https://tc39.github.io/ecma262/#sec-array.prototype.filter
673
1183
  // with adding support of @@species
674
- _export({ target: 'Array', proto: true, forced: !arrayMethodHasSpeciesSupport('filter') }, {
1184
+ _export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {
675
1185
  filter: function filter(callbackfn /* , thisArg */) {
676
1186
  return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
677
1187
  }
678
1188
  });
679
1189
 
680
- // `Object.keys` method
681
- // https://tc39.github.io/ecma262/#sec-object.keys
682
- var objectKeys = Object.keys || function keys(O) {
683
- return objectKeysInternal(O, enumBugKeys);
684
- };
685
-
686
- // `Object.defineProperties` method
687
- // https://tc39.github.io/ecma262/#sec-object.defineproperties
688
- var objectDefineProperties = descriptors ? Object.defineProperties : function defineProperties(O, Properties) {
689
- anObject(O);
690
- var keys = objectKeys(Properties);
691
- var length = keys.length;
692
- var index = 0;
693
- var key;
694
- while (length > index) objectDefineProperty.f(O, key = keys[index++], Properties[key]);
695
- return O;
696
- };
697
-
698
- var html = getBuiltIn('document', 'documentElement');
699
-
700
- var IE_PROTO = sharedKey('IE_PROTO');
701
-
702
- var PROTOTYPE = 'prototype';
703
- var Empty = function () { /* empty */ };
704
-
705
- // Create object with fake `null` prototype: use iframe Object with cleared prototype
706
- var createDict = function () {
707
- // Thrash, waste and sodomy: IE GC bug
708
- var iframe = documentCreateElement('iframe');
709
- var length = enumBugKeys.length;
710
- var lt = '<';
711
- var script = 'script';
712
- var gt = '>';
713
- var js = 'java' + script + ':';
714
- var iframeDocument;
715
- iframe.style.display = 'none';
716
- html.appendChild(iframe);
717
- iframe.src = String(js);
718
- iframeDocument = iframe.contentWindow.document;
719
- iframeDocument.open();
720
- iframeDocument.write(lt + script + gt + 'document.F=Object' + lt + '/' + script + gt);
721
- iframeDocument.close();
722
- createDict = iframeDocument.F;
723
- while (length--) delete createDict[PROTOTYPE][enumBugKeys[length]];
724
- return createDict();
725
- };
726
-
727
- // `Object.create` method
728
- // https://tc39.github.io/ecma262/#sec-object.create
729
- var objectCreate = Object.create || function create(O, Properties) {
730
- var result;
731
- if (O !== null) {
732
- Empty[PROTOTYPE] = anObject(O);
733
- result = new Empty();
734
- Empty[PROTOTYPE] = null;
735
- // add "__proto__" for Object.getPrototypeOf polyfill
736
- result[IE_PROTO] = O;
737
- } else result = createDict();
738
- return Properties === undefined ? result : objectDefineProperties(result, Properties);
739
- };
740
-
741
- hiddenKeys[IE_PROTO] = true;
742
-
743
1190
  var UNSCOPABLES = wellKnownSymbol('unscopables');
744
1191
  var ArrayPrototype = Array.prototype;
745
1192
 
746
1193
  // Array.prototype[@@unscopables]
747
1194
  // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
748
1195
  if (ArrayPrototype[UNSCOPABLES] == undefined) {
749
- hide(ArrayPrototype, UNSCOPABLES, objectCreate(null));
1196
+ objectDefineProperty.f(ArrayPrototype, UNSCOPABLES, {
1197
+ configurable: true,
1198
+ value: objectCreate(null)
1199
+ });
750
1200
  }
751
1201
 
752
1202
  // add a key to Array.prototype[@@unscopables]
@@ -795,6 +1245,211 @@
795
1245
  }
796
1246
  });
797
1247
 
1248
+ var correctPrototypeGetter = !fails(function () {
1249
+ function F() { /* empty */ }
1250
+ F.prototype.constructor = null;
1251
+ return Object.getPrototypeOf(new F()) !== F.prototype;
1252
+ });
1253
+
1254
+ var IE_PROTO$1 = sharedKey('IE_PROTO');
1255
+ var ObjectPrototype$1 = Object.prototype;
1256
+
1257
+ // `Object.getPrototypeOf` method
1258
+ // https://tc39.github.io/ecma262/#sec-object.getprototypeof
1259
+ var objectGetPrototypeOf = correctPrototypeGetter ? Object.getPrototypeOf : function (O) {
1260
+ O = toObject(O);
1261
+ if (has(O, IE_PROTO$1)) return O[IE_PROTO$1];
1262
+ if (typeof O.constructor == 'function' && O instanceof O.constructor) {
1263
+ return O.constructor.prototype;
1264
+ } return O instanceof Object ? ObjectPrototype$1 : null;
1265
+ };
1266
+
1267
+ var ITERATOR = wellKnownSymbol('iterator');
1268
+ var BUGGY_SAFARI_ITERATORS = false;
1269
+
1270
+ var returnThis = function () { return this; };
1271
+
1272
+ // `%IteratorPrototype%` object
1273
+ // https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object
1274
+ var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;
1275
+
1276
+ if ([].keys) {
1277
+ arrayIterator = [].keys();
1278
+ // Safari 8 has buggy iterators w/o `next`
1279
+ if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
1280
+ else {
1281
+ PrototypeOfArrayIteratorPrototype = objectGetPrototypeOf(objectGetPrototypeOf(arrayIterator));
1282
+ if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
1283
+ }
1284
+ }
1285
+
1286
+ if (IteratorPrototype == undefined) IteratorPrototype = {};
1287
+
1288
+ // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
1289
+ if ( !has(IteratorPrototype, ITERATOR)) {
1290
+ createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);
1291
+ }
1292
+
1293
+ var iteratorsCore = {
1294
+ IteratorPrototype: IteratorPrototype,
1295
+ BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
1296
+ };
1297
+
1298
+ var IteratorPrototype$1 = iteratorsCore.IteratorPrototype;
1299
+
1300
+ var createIteratorConstructor = function (IteratorConstructor, NAME, next) {
1301
+ var TO_STRING_TAG = NAME + ' Iterator';
1302
+ IteratorConstructor.prototype = objectCreate(IteratorPrototype$1, { next: createPropertyDescriptor(1, next) });
1303
+ setToStringTag(IteratorConstructor, TO_STRING_TAG, false);
1304
+ return IteratorConstructor;
1305
+ };
1306
+
1307
+ var aPossiblePrototype = function (it) {
1308
+ if (!isObject(it) && it !== null) {
1309
+ throw TypeError("Can't set " + String(it) + ' as a prototype');
1310
+ } return it;
1311
+ };
1312
+
1313
+ // `Object.setPrototypeOf` method
1314
+ // https://tc39.github.io/ecma262/#sec-object.setprototypeof
1315
+ // Works with __proto__ only. Old v8 can't work with null proto objects.
1316
+ /* eslint-disable no-proto */
1317
+ var objectSetPrototypeOf = Object.setPrototypeOf || ('__proto__' in {} ? function () {
1318
+ var CORRECT_SETTER = false;
1319
+ var test = {};
1320
+ var setter;
1321
+ try {
1322
+ setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;
1323
+ setter.call(test, []);
1324
+ CORRECT_SETTER = test instanceof Array;
1325
+ } catch (error) { /* empty */ }
1326
+ return function setPrototypeOf(O, proto) {
1327
+ anObject(O);
1328
+ aPossiblePrototype(proto);
1329
+ if (CORRECT_SETTER) setter.call(O, proto);
1330
+ else O.__proto__ = proto;
1331
+ return O;
1332
+ };
1333
+ }() : undefined);
1334
+
1335
+ var IteratorPrototype$2 = iteratorsCore.IteratorPrototype;
1336
+ var BUGGY_SAFARI_ITERATORS$1 = iteratorsCore.BUGGY_SAFARI_ITERATORS;
1337
+ var ITERATOR$1 = wellKnownSymbol('iterator');
1338
+ var KEYS = 'keys';
1339
+ var VALUES = 'values';
1340
+ var ENTRIES = 'entries';
1341
+
1342
+ var returnThis$1 = function () { return this; };
1343
+
1344
+ var defineIterator = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
1345
+ createIteratorConstructor(IteratorConstructor, NAME, next);
1346
+
1347
+ var getIterationMethod = function (KIND) {
1348
+ if (KIND === DEFAULT && defaultIterator) return defaultIterator;
1349
+ if (!BUGGY_SAFARI_ITERATORS$1 && KIND in IterablePrototype) return IterablePrototype[KIND];
1350
+ switch (KIND) {
1351
+ case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
1352
+ case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
1353
+ case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
1354
+ } return function () { return new IteratorConstructor(this); };
1355
+ };
1356
+
1357
+ var TO_STRING_TAG = NAME + ' Iterator';
1358
+ var INCORRECT_VALUES_NAME = false;
1359
+ var IterablePrototype = Iterable.prototype;
1360
+ var nativeIterator = IterablePrototype[ITERATOR$1]
1361
+ || IterablePrototype['@@iterator']
1362
+ || DEFAULT && IterablePrototype[DEFAULT];
1363
+ var defaultIterator = !BUGGY_SAFARI_ITERATORS$1 && nativeIterator || getIterationMethod(DEFAULT);
1364
+ var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
1365
+ var CurrentIteratorPrototype, methods, KEY;
1366
+
1367
+ // fix native
1368
+ if (anyNativeIterator) {
1369
+ CurrentIteratorPrototype = objectGetPrototypeOf(anyNativeIterator.call(new Iterable()));
1370
+ if (IteratorPrototype$2 !== Object.prototype && CurrentIteratorPrototype.next) {
1371
+ if ( objectGetPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype$2) {
1372
+ if (objectSetPrototypeOf) {
1373
+ objectSetPrototypeOf(CurrentIteratorPrototype, IteratorPrototype$2);
1374
+ } else if (typeof CurrentIteratorPrototype[ITERATOR$1] != 'function') {
1375
+ createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR$1, returnThis$1);
1376
+ }
1377
+ }
1378
+ // Set @@toStringTag to native iterators
1379
+ setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true);
1380
+ }
1381
+ }
1382
+
1383
+ // fix Array#{values, @@iterator}.name in V8 / FF
1384
+ if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
1385
+ INCORRECT_VALUES_NAME = true;
1386
+ defaultIterator = function values() { return nativeIterator.call(this); };
1387
+ }
1388
+
1389
+ // define iterator
1390
+ if ( IterablePrototype[ITERATOR$1] !== defaultIterator) {
1391
+ createNonEnumerableProperty(IterablePrototype, ITERATOR$1, defaultIterator);
1392
+ }
1393
+
1394
+ // export additional methods
1395
+ if (DEFAULT) {
1396
+ methods = {
1397
+ values: getIterationMethod(VALUES),
1398
+ keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
1399
+ entries: getIterationMethod(ENTRIES)
1400
+ };
1401
+ if (FORCED) for (KEY in methods) {
1402
+ if (BUGGY_SAFARI_ITERATORS$1 || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
1403
+ redefine(IterablePrototype, KEY, methods[KEY]);
1404
+ }
1405
+ } else _export({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS$1 || INCORRECT_VALUES_NAME }, methods);
1406
+ }
1407
+
1408
+ return methods;
1409
+ };
1410
+
1411
+ var ARRAY_ITERATOR = 'Array Iterator';
1412
+ var setInternalState$1 = internalState.set;
1413
+ var getInternalState$1 = internalState.getterFor(ARRAY_ITERATOR);
1414
+
1415
+ // `Array.prototype.entries` method
1416
+ // https://tc39.github.io/ecma262/#sec-array.prototype.entries
1417
+ // `Array.prototype.keys` method
1418
+ // https://tc39.github.io/ecma262/#sec-array.prototype.keys
1419
+ // `Array.prototype.values` method
1420
+ // https://tc39.github.io/ecma262/#sec-array.prototype.values
1421
+ // `Array.prototype[@@iterator]` method
1422
+ // https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator
1423
+ // `CreateArrayIterator` internal method
1424
+ // https://tc39.github.io/ecma262/#sec-createarrayiterator
1425
+ var es_array_iterator = defineIterator(Array, 'Array', function (iterated, kind) {
1426
+ setInternalState$1(this, {
1427
+ type: ARRAY_ITERATOR,
1428
+ target: toIndexedObject(iterated), // target
1429
+ index: 0, // next index
1430
+ kind: kind // kind
1431
+ });
1432
+ // `%ArrayIteratorPrototype%.next` method
1433
+ // https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next
1434
+ }, function () {
1435
+ var state = getInternalState$1(this);
1436
+ var target = state.target;
1437
+ var kind = state.kind;
1438
+ var index = state.index++;
1439
+ if (!target || index >= target.length) {
1440
+ state.target = undefined;
1441
+ return { value: undefined, done: true };
1442
+ }
1443
+ if (kind == 'keys') return { value: index, done: false };
1444
+ if (kind == 'values') return { value: target[index], done: false };
1445
+ return { value: [index, target[index]], done: false };
1446
+ }, 'values');
1447
+
1448
+ // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
1449
+ addToUnscopables('keys');
1450
+ addToUnscopables('values');
1451
+ addToUnscopables('entries');
1452
+
798
1453
  var propertyIsEnumerable = objectPropertyIsEnumerable.f;
799
1454
 
800
1455
  // `Object.{ entries, values }` methods implementation
@@ -835,6 +1490,48 @@
835
1490
  }
836
1491
  });
837
1492
 
1493
+ var TO_STRING_TAG$1 = wellKnownSymbol('toStringTag');
1494
+ var test = {};
1495
+
1496
+ test[TO_STRING_TAG$1] = 'z';
1497
+
1498
+ var toStringTagSupport = String(test) === '[object z]';
1499
+
1500
+ var TO_STRING_TAG$2 = wellKnownSymbol('toStringTag');
1501
+ // ES3 wrong here
1502
+ var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
1503
+
1504
+ // fallback for IE11 Script Access Denied error
1505
+ var tryGet = function (it, key) {
1506
+ try {
1507
+ return it[key];
1508
+ } catch (error) { /* empty */ }
1509
+ };
1510
+
1511
+ // getting tag from ES6+ `Object.prototype.toString`
1512
+ var classof = toStringTagSupport ? classofRaw : function (it) {
1513
+ var O, tag, result;
1514
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
1515
+ // @@toStringTag case
1516
+ : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG$2)) == 'string' ? tag
1517
+ // builtinTag case
1518
+ : CORRECT_ARGUMENTS ? classofRaw(O)
1519
+ // ES3 arguments fallback
1520
+ : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
1521
+ };
1522
+
1523
+ // `Object.prototype.toString` method implementation
1524
+ // https://tc39.github.io/ecma262/#sec-object.prototype.tostring
1525
+ var objectToString = toStringTagSupport ? {}.toString : function toString() {
1526
+ return '[object ' + classof(this) + ']';
1527
+ };
1528
+
1529
+ // `Object.prototype.toString` method
1530
+ // https://tc39.github.io/ecma262/#sec-object.prototype.tostring
1531
+ if (!toStringTagSupport) {
1532
+ redefine(Object.prototype, 'toString', objectToString, { unsafe: true });
1533
+ }
1534
+
838
1535
  // a string of all valid unicode whitespaces
839
1536
  // eslint-disable-next-line max-len
840
1537
  var whitespaces = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
@@ -885,44 +1582,6 @@
885
1582
  parseInt: _parseInt
886
1583
  });
887
1584
 
888
- var MATCH = wellKnownSymbol('match');
889
-
890
- // `IsRegExp` abstract operation
891
- // https://tc39.github.io/ecma262/#sec-isregexp
892
- var isRegexp = function (it) {
893
- var isRegExp;
894
- return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classofRaw(it) == 'RegExp');
895
- };
896
-
897
- var notARegexp = function (it) {
898
- if (isRegexp(it)) {
899
- throw TypeError("The method doesn't accept regular expressions");
900
- } return it;
901
- };
902
-
903
- var MATCH$1 = wellKnownSymbol('match');
904
-
905
- var correctIsRegexpLogic = function (METHOD_NAME) {
906
- var regexp = /./;
907
- try {
908
- '/./'[METHOD_NAME](regexp);
909
- } catch (e) {
910
- try {
911
- regexp[MATCH$1] = false;
912
- return '/./'[METHOD_NAME](regexp);
913
- } catch (f) { /* empty */ }
914
- } return false;
915
- };
916
-
917
- // `String.prototype.includes` method
918
- // https://tc39.github.io/ecma262/#sec-string.prototype.includes
919
- _export({ target: 'String', proto: true, forced: !correctIsRegexpLogic('includes') }, {
920
- includes: function includes(searchString /* , position = 0 */) {
921
- return !!~String(requireObjectCoercible(this))
922
- .indexOf(notARegexp(searchString), arguments.length > 1 ? arguments[1] : undefined);
923
- }
924
- });
925
-
926
1585
  // `RegExp.prototype.flags` getter implementation
927
1586
  // https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags
928
1587
  var regexpFlags = function () {
@@ -937,6 +1596,31 @@
937
1596
  return result;
938
1597
  };
939
1598
 
1599
+ // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,
1600
+ // so we use an intermediate function.
1601
+ function RE(s, f) {
1602
+ return RegExp(s, f);
1603
+ }
1604
+
1605
+ var UNSUPPORTED_Y = fails(function () {
1606
+ // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
1607
+ var re = RE('a', 'y');
1608
+ re.lastIndex = 2;
1609
+ return re.exec('abcd') != null;
1610
+ });
1611
+
1612
+ var BROKEN_CARET = fails(function () {
1613
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
1614
+ var re = RE('^r', 'gy');
1615
+ re.lastIndex = 2;
1616
+ return re.exec('str') != null;
1617
+ });
1618
+
1619
+ var regexpStickyHelpers = {
1620
+ UNSUPPORTED_Y: UNSUPPORTED_Y,
1621
+ BROKEN_CARET: BROKEN_CARET
1622
+ };
1623
+
940
1624
  var nativeExec = RegExp.prototype.exec;
941
1625
  // This always refers to the native implementation, because the
942
1626
  // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
@@ -953,24 +1637,56 @@
953
1637
  return re1.lastIndex !== 0 || re2.lastIndex !== 0;
954
1638
  })();
955
1639
 
1640
+ var UNSUPPORTED_Y$1 = regexpStickyHelpers.UNSUPPORTED_Y || regexpStickyHelpers.BROKEN_CARET;
1641
+
956
1642
  // nonparticipating capturing group, copied from es5-shim's String#split patch.
957
1643
  var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
958
1644
 
959
- var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;
1645
+ var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$1;
960
1646
 
961
1647
  if (PATCH) {
962
1648
  patchedExec = function exec(str) {
963
1649
  var re = this;
964
1650
  var lastIndex, reCopy, match, i;
1651
+ var sticky = UNSUPPORTED_Y$1 && re.sticky;
1652
+ var flags = regexpFlags.call(re);
1653
+ var source = re.source;
1654
+ var charsAdded = 0;
1655
+ var strCopy = str;
1656
+
1657
+ if (sticky) {
1658
+ flags = flags.replace('y', '');
1659
+ if (flags.indexOf('g') === -1) {
1660
+ flags += 'g';
1661
+ }
1662
+
1663
+ strCopy = String(str).slice(re.lastIndex);
1664
+ // Support anchored sticky behavior.
1665
+ if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) {
1666
+ source = '(?: ' + source + ')';
1667
+ strCopy = ' ' + strCopy;
1668
+ charsAdded++;
1669
+ }
1670
+ // ^(? + rx + ) is needed, in combination with some str slicing, to
1671
+ // simulate the 'y' flag.
1672
+ reCopy = new RegExp('^(?:' + source + ')', flags);
1673
+ }
965
1674
 
966
1675
  if (NPCG_INCLUDED) {
967
- reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
1676
+ reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
968
1677
  }
969
1678
  if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
970
1679
 
971
- match = nativeExec.call(re, str);
1680
+ match = nativeExec.call(sticky ? reCopy : re, strCopy);
972
1681
 
973
- if (UPDATES_LAST_INDEX_WRONG && match) {
1682
+ if (sticky) {
1683
+ if (match) {
1684
+ match.input = match.input.slice(charsAdded);
1685
+ match[0] = match[0].slice(charsAdded);
1686
+ match.index = re.lastIndex;
1687
+ re.lastIndex += match[0].length;
1688
+ } else re.lastIndex = 0;
1689
+ } else if (UPDATES_LAST_INDEX_WRONG && match) {
974
1690
  re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
975
1691
  }
976
1692
  if (NPCG_INCLUDED && match && match.length > 1) {
@@ -989,6 +1705,102 @@
989
1705
 
990
1706
  var regexpExec = patchedExec;
991
1707
 
1708
+ _export({ target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, {
1709
+ exec: regexpExec
1710
+ });
1711
+
1712
+ var MATCH = wellKnownSymbol('match');
1713
+
1714
+ // `IsRegExp` abstract operation
1715
+ // https://tc39.github.io/ecma262/#sec-isregexp
1716
+ var isRegexp = function (it) {
1717
+ var isRegExp;
1718
+ return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classofRaw(it) == 'RegExp');
1719
+ };
1720
+
1721
+ var notARegexp = function (it) {
1722
+ if (isRegexp(it)) {
1723
+ throw TypeError("The method doesn't accept regular expressions");
1724
+ } return it;
1725
+ };
1726
+
1727
+ var MATCH$1 = wellKnownSymbol('match');
1728
+
1729
+ var correctIsRegexpLogic = function (METHOD_NAME) {
1730
+ var regexp = /./;
1731
+ try {
1732
+ '/./'[METHOD_NAME](regexp);
1733
+ } catch (e) {
1734
+ try {
1735
+ regexp[MATCH$1] = false;
1736
+ return '/./'[METHOD_NAME](regexp);
1737
+ } catch (f) { /* empty */ }
1738
+ } return false;
1739
+ };
1740
+
1741
+ // `String.prototype.includes` method
1742
+ // https://tc39.github.io/ecma262/#sec-string.prototype.includes
1743
+ _export({ target: 'String', proto: true, forced: !correctIsRegexpLogic('includes') }, {
1744
+ includes: function includes(searchString /* , position = 0 */) {
1745
+ return !!~String(requireObjectCoercible(this))
1746
+ .indexOf(notARegexp(searchString), arguments.length > 1 ? arguments[1] : undefined);
1747
+ }
1748
+ });
1749
+
1750
+ // `String.prototype.{ codePointAt, at }` methods implementation
1751
+ var createMethod$4 = function (CONVERT_TO_STRING) {
1752
+ return function ($this, pos) {
1753
+ var S = String(requireObjectCoercible($this));
1754
+ var position = toInteger(pos);
1755
+ var size = S.length;
1756
+ var first, second;
1757
+ if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
1758
+ first = S.charCodeAt(position);
1759
+ return first < 0xD800 || first > 0xDBFF || position + 1 === size
1760
+ || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
1761
+ ? CONVERT_TO_STRING ? S.charAt(position) : first
1762
+ : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
1763
+ };
1764
+ };
1765
+
1766
+ var stringMultibyte = {
1767
+ // `String.prototype.codePointAt` method
1768
+ // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat
1769
+ codeAt: createMethod$4(false),
1770
+ // `String.prototype.at` method
1771
+ // https://github.com/mathiasbynens/String.prototype.at
1772
+ charAt: createMethod$4(true)
1773
+ };
1774
+
1775
+ var charAt = stringMultibyte.charAt;
1776
+
1777
+
1778
+
1779
+ var STRING_ITERATOR = 'String Iterator';
1780
+ var setInternalState$2 = internalState.set;
1781
+ var getInternalState$2 = internalState.getterFor(STRING_ITERATOR);
1782
+
1783
+ // `String.prototype[@@iterator]` method
1784
+ // https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator
1785
+ defineIterator(String, 'String', function (iterated) {
1786
+ setInternalState$2(this, {
1787
+ type: STRING_ITERATOR,
1788
+ string: String(iterated),
1789
+ index: 0
1790
+ });
1791
+ // `%StringIteratorPrototype%.next` method
1792
+ // https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next
1793
+ }, function next() {
1794
+ var state = getInternalState$2(this);
1795
+ var string = state.string;
1796
+ var index = state.index;
1797
+ var point;
1798
+ if (index >= string.length) return { value: undefined, done: true };
1799
+ point = charAt(string, index);
1800
+ state.index += point.length;
1801
+ return { value: point, done: false };
1802
+ });
1803
+
992
1804
  var SPECIES$2 = wellKnownSymbol('species');
993
1805
 
994
1806
  var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
@@ -1004,6 +1816,12 @@
1004
1816
  return ''.replace(re, '$<a>') !== '7';
1005
1817
  });
1006
1818
 
1819
+ // IE <= 11 replaces $0 with the whole match, as if it was $&
1820
+ // https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
1821
+ var REPLACE_KEEPS_$0 = (function () {
1822
+ return 'a'.replace(/./, '$0') === '$0';
1823
+ })();
1824
+
1007
1825
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
1008
1826
  // Weex JS has frozen built-in prototypes, so use try / catch wrapper
1009
1827
  var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
@@ -1028,15 +1846,22 @@
1028
1846
  // Symbol-named RegExp methods call .exec
1029
1847
  var execCalled = false;
1030
1848
  var re = /a/;
1031
- re.exec = function () { execCalled = true; return null; };
1032
1849
 
1033
1850
  if (KEY === 'split') {
1851
+ // We can't use real regex here since it causes deoptimization
1852
+ // and serious performance degradation in V8
1853
+ // https://github.com/zloirock/core-js/issues/306
1854
+ re = {};
1034
1855
  // RegExp[@@split] doesn't call the regex's exec method, but first creates
1035
1856
  // a new one. We need to return the patched regex when creating the new one.
1036
1857
  re.constructor = {};
1037
1858
  re.constructor[SPECIES$2] = function () { return re; };
1859
+ re.flags = '';
1860
+ re[SYMBOL] = /./[SYMBOL];
1038
1861
  }
1039
1862
 
1863
+ re.exec = function () { execCalled = true; return null; };
1864
+
1040
1865
  re[SYMBOL]('');
1041
1866
  return !execCalled;
1042
1867
  });
@@ -1044,7 +1869,7 @@
1044
1869
  if (
1045
1870
  !DELEGATES_TO_SYMBOL ||
1046
1871
  !DELEGATES_TO_EXEC ||
1047
- (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
1872
+ (KEY === 'replace' && !(REPLACE_SUPPORTS_NAMED_GROUPS && REPLACE_KEEPS_$0)) ||
1048
1873
  (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
1049
1874
  ) {
1050
1875
  var nativeRegExpMethod = /./[SYMBOL];
@@ -1059,7 +1884,7 @@
1059
1884
  return { done: true, value: nativeMethod.call(str, regexp, arg2) };
1060
1885
  }
1061
1886
  return { done: false };
1062
- });
1887
+ }, { REPLACE_KEEPS_$0: REPLACE_KEEPS_$0 });
1063
1888
  var stringMethod = methods[0];
1064
1889
  var regexMethod = methods[1];
1065
1890
 
@@ -1072,41 +1897,17 @@
1072
1897
  // 21.2.5.9 RegExp.prototype[@@search](string)
1073
1898
  : function (string) { return regexMethod.call(string, this); }
1074
1899
  );
1075
- if (sham) hide(RegExp.prototype[SYMBOL], 'sham', true);
1076
1900
  }
1077
- };
1078
1901
 
1079
- // `String.prototype.{ codePointAt, at }` methods implementation
1080
- var createMethod$4 = function (CONVERT_TO_STRING) {
1081
- return function ($this, pos) {
1082
- var S = String(requireObjectCoercible($this));
1083
- var position = toInteger(pos);
1084
- var size = S.length;
1085
- var first, second;
1086
- if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
1087
- first = S.charCodeAt(position);
1088
- return first < 0xD800 || first > 0xDBFF || position + 1 === size
1089
- || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
1090
- ? CONVERT_TO_STRING ? S.charAt(position) : first
1091
- : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
1092
- };
1902
+ if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);
1093
1903
  };
1094
1904
 
1095
- var stringMultibyte = {
1096
- // `String.prototype.codePointAt` method
1097
- // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat
1098
- codeAt: createMethod$4(false),
1099
- // `String.prototype.at` method
1100
- // https://github.com/mathiasbynens/String.prototype.at
1101
- charAt: createMethod$4(true)
1102
- };
1103
-
1104
- var charAt = stringMultibyte.charAt;
1905
+ var charAt$1 = stringMultibyte.charAt;
1105
1906
 
1106
1907
  // `AdvanceStringIndex` abstract operation
1107
1908
  // https://tc39.github.io/ecma262/#sec-advancestringindex
1108
1909
  var advanceStringIndex = function (S, index, unicode) {
1109
- return index + (unicode ? charAt(S, index).length : 1);
1910
+ return index + (unicode ? charAt$1(S, index).length : 1);
1110
1911
  };
1111
1912
 
1112
1913
  // `RegExpExec` abstract operation
@@ -1139,7 +1940,7 @@
1139
1940
  };
1140
1941
 
1141
1942
  // @@replace logic
1142
- fixRegexpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative) {
1943
+ fixRegexpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {
1143
1944
  return [
1144
1945
  // `String.prototype.replace` method
1145
1946
  // https://tc39.github.io/ecma262/#sec-string.prototype.replace
@@ -1153,8 +1954,10 @@
1153
1954
  // `RegExp.prototype[@@replace]` method
1154
1955
  // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
1155
1956
  function (regexp, replaceValue) {
1156
- var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
1157
- if (res.done) return res.value;
1957
+ if (reason.REPLACE_KEEPS_$0 || (typeof replaceValue === 'string' && replaceValue.indexOf('$0') === -1)) {
1958
+ var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
1959
+ if (res.done) return res.value;
1960
+ }
1158
1961
 
1159
1962
  var rx = anObject(regexp);
1160
1963
  var S = String(this);
@@ -1245,6 +2048,70 @@
1245
2048
  }
1246
2049
  });
1247
2050
 
2051
+ // iterable DOM collections
2052
+ // flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
2053
+ var domIterables = {
2054
+ CSSRuleList: 0,
2055
+ CSSStyleDeclaration: 0,
2056
+ CSSValueList: 0,
2057
+ ClientRectList: 0,
2058
+ DOMRectList: 0,
2059
+ DOMStringList: 0,
2060
+ DOMTokenList: 1,
2061
+ DataTransferItemList: 0,
2062
+ FileList: 0,
2063
+ HTMLAllCollection: 0,
2064
+ HTMLCollection: 0,
2065
+ HTMLFormElement: 0,
2066
+ HTMLSelectElement: 0,
2067
+ MediaList: 0,
2068
+ MimeTypeArray: 0,
2069
+ NamedNodeMap: 0,
2070
+ NodeList: 1,
2071
+ PaintRequestList: 0,
2072
+ Plugin: 0,
2073
+ PluginArray: 0,
2074
+ SVGLengthList: 0,
2075
+ SVGNumberList: 0,
2076
+ SVGPathSegList: 0,
2077
+ SVGPointList: 0,
2078
+ SVGStringList: 0,
2079
+ SVGTransformList: 0,
2080
+ SourceBufferList: 0,
2081
+ StyleSheetList: 0,
2082
+ TextTrackCueList: 0,
2083
+ TextTrackList: 0,
2084
+ TouchList: 0
2085
+ };
2086
+
2087
+ var ITERATOR$2 = wellKnownSymbol('iterator');
2088
+ var TO_STRING_TAG$3 = wellKnownSymbol('toStringTag');
2089
+ var ArrayValues = es_array_iterator.values;
2090
+
2091
+ for (var COLLECTION_NAME in domIterables) {
2092
+ var Collection = global_1[COLLECTION_NAME];
2093
+ var CollectionPrototype = Collection && Collection.prototype;
2094
+ if (CollectionPrototype) {
2095
+ // some Chrome versions have non-configurable methods on DOMTokenList
2096
+ if (CollectionPrototype[ITERATOR$2] !== ArrayValues) try {
2097
+ createNonEnumerableProperty(CollectionPrototype, ITERATOR$2, ArrayValues);
2098
+ } catch (error) {
2099
+ CollectionPrototype[ITERATOR$2] = ArrayValues;
2100
+ }
2101
+ if (!CollectionPrototype[TO_STRING_TAG$3]) {
2102
+ createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG$3, COLLECTION_NAME);
2103
+ }
2104
+ if (domIterables[COLLECTION_NAME]) for (var METHOD_NAME in es_array_iterator) {
2105
+ // some Chrome versions have non-configurable methods on DOMTokenList
2106
+ if (CollectionPrototype[METHOD_NAME] !== es_array_iterator[METHOD_NAME]) try {
2107
+ createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, es_array_iterator[METHOD_NAME]);
2108
+ } catch (error) {
2109
+ CollectionPrototype[METHOD_NAME] = es_array_iterator[METHOD_NAME];
2110
+ }
2111
+ }
2112
+ }
2113
+ }
2114
+
1248
2115
  function _classCallCheck(instance, Constructor) {
1249
2116
  if (!(instance instanceof Constructor)) {
1250
2117
  throw new TypeError("Cannot call a class as a function");
@@ -1353,6 +2220,10 @@
1353
2220
  }
1354
2221
 
1355
2222
  function _iterableToArrayLimit(arr, i) {
2223
+ if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) {
2224
+ return;
2225
+ }
2226
+
1356
2227
  var _arr = [];
1357
2228
  var _n = true;
1358
2229
  var _d = false;
@@ -1650,12 +2521,31 @@
1650
2521
  }];
1651
2522
 
1652
2523
  var initNeutraliser = function initNeutraliser() {
1653
- for (var _i = 0, _defaultAccentsDiacri = defaultAccentsDiacritics; _i < _defaultAccentsDiacri.length; _i++) {
1654
- var diacritic = _defaultAccentsDiacri[_i];
1655
- var letters = diacritic.letters;
2524
+ var _iteratorNormalCompletion = true;
2525
+ var _didIteratorError = false;
2526
+ var _iteratorError = undefined;
2527
+
2528
+ try {
2529
+ for (var _iterator = defaultAccentsDiacritics[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
2530
+ var diacritic = _step.value;
2531
+ var letters = diacritic.letters;
1656
2532
 
1657
- for (var i = 0; i < letters.length; i++) {
1658
- diacriticsMap[letters[i]] = diacritic.base;
2533
+ for (var i = 0; i < letters.length; i++) {
2534
+ diacriticsMap[letters[i]] = diacritic.base;
2535
+ }
2536
+ }
2537
+ } catch (err) {
2538
+ _didIteratorError = true;
2539
+ _iteratorError = err;
2540
+ } finally {
2541
+ try {
2542
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
2543
+ _iterator.return();
2544
+ }
2545
+ } finally {
2546
+ if (_didIteratorError) {
2547
+ throw _iteratorError;
2548
+ }
1659
2549
  }
1660
2550
  }
1661
2551
  };
@@ -1711,8 +2601,8 @@
1711
2601
  return true;
1712
2602
  }) : this.options.data;
1713
2603
  this.data = s ? this.options.data.filter(function (item, i) {
1714
- for (var _i2 = 0, _Object$entries = Object.entries(item); _i2 < _Object$entries.length; _i2++) {
1715
- var _Object$entries$_i = _slicedToArray(_Object$entries[_i2], 2),
2604
+ for (var _i = 0, _Object$entries = Object.entries(item); _i < _Object$entries.length; _i++) {
2605
+ var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
1716
2606
  key = _Object$entries$_i[0],
1717
2607
  value = _Object$entries$_i[1];
1718
2608
 
@@ -1754,4 +2644,4 @@
1754
2644
  return _class;
1755
2645
  }($.BootstrapTable);
1756
2646
 
1757
- }));
2647
+ })));