bootstrap-table-rails 1.18.2 → 1.18.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/lib/bootstrap-table-rails/version.rb +1 -1
  3. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-locale-all.js +151 -144
  4. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.esm.js +453 -552
  5. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.js +1378 -1479
  6. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.css +3 -2
  7. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.js +7404 -7422
  8. data/vendor/assets/javascripts/bootstrap-table/extensions/addrbar/bootstrap-table-addrbar.js +1774 -1758
  9. data/vendor/assets/javascripts/bootstrap-table/extensions/auto-refresh/bootstrap-table-auto-refresh.js +1206 -1213
  10. data/vendor/assets/javascripts/bootstrap-table/extensions/cookie/bootstrap-table-cookie.js +2541 -2567
  11. data/vendor/assets/javascripts/bootstrap-table/extensions/copy-rows/bootstrap-table-copy-rows.js +1232 -1252
  12. data/vendor/assets/javascripts/bootstrap-table/extensions/custom-view/bootstrap-table-custom-view.js +1251 -1272
  13. data/vendor/assets/javascripts/bootstrap-table/extensions/defer-url/bootstrap-table-defer-url.js +864 -857
  14. data/vendor/assets/javascripts/bootstrap-table/extensions/editable/bootstrap-table-editable.js +1899 -1915
  15. data/vendor/assets/javascripts/bootstrap-table/extensions/export/bootstrap-table-export.js +2227 -2251
  16. data/vendor/assets/javascripts/bootstrap-table/extensions/filter-control/bootstrap-table-filter-control.js +3135 -3163
  17. data/vendor/assets/javascripts/bootstrap-table/extensions/filter-control/utils.js +2429 -2457
  18. data/vendor/assets/javascripts/bootstrap-table/extensions/fixed-columns/bootstrap-table-fixed-columns.js +1605 -1627
  19. data/vendor/assets/javascripts/bootstrap-table/extensions/group-by-v2/bootstrap-table-group-by.js +1599 -1631
  20. data/vendor/assets/javascripts/bootstrap-table/extensions/i18n-enhance/bootstrap-table-i18n-enhance.js +1 -1
  21. data/vendor/assets/javascripts/bootstrap-table/extensions/key-events/bootstrap-table-key-events.js +1461 -1477
  22. data/vendor/assets/javascripts/bootstrap-table/extensions/mobile/bootstrap-table-mobile.js +1290 -1318
  23. data/vendor/assets/javascripts/bootstrap-table/extensions/multiple-sort/bootstrap-table-multiple-sort.js +1787 -1814
  24. data/vendor/assets/javascripts/bootstrap-table/extensions/page-jump-to/bootstrap-table-page-jump-to.js +1118 -1137
  25. data/vendor/assets/javascripts/bootstrap-table/extensions/pipeline/bootstrap-table-pipeline.js +283 -307
  26. data/vendor/assets/javascripts/bootstrap-table/extensions/print/bootstrap-table-print.js +1641 -1679
  27. data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-columns/bootstrap-table-reorder-columns.js +1472 -1495
  28. data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-rows/bootstrap-table-reorder-rows.js +1035 -1055
  29. data/vendor/assets/javascripts/bootstrap-table/extensions/resizable/bootstrap-table-resizable.js +914 -907
  30. data/vendor/assets/javascripts/bootstrap-table/extensions/sticky-header/bootstrap-table-sticky-header.js +1246 -1236
  31. data/vendor/assets/javascripts/bootstrap-table/extensions/toolbar/bootstrap-table-toolbar.js +2032 -2056
  32. data/vendor/assets/javascripts/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js +1186 -1206
  33. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-af-ZA.js +109 -102
  34. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ar-SA.js +109 -102
  35. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-bg-BG.js +109 -102
  36. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ca-ES.js +109 -102
  37. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-cs-CZ.js +109 -102
  38. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-da-DK.js +109 -102
  39. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-de-DE.js +109 -102
  40. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-el-GR.js +109 -102
  41. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-en-US.js +109 -102
  42. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-AR.js +109 -102
  43. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CL.js +109 -102
  44. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CR.js +109 -102
  45. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-ES.js +109 -102
  46. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-MX.js +109 -102
  47. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-NI.js +109 -102
  48. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-SP.js +109 -102
  49. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-et-EE.js +109 -102
  50. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-eu-EU.js +109 -102
  51. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fa-IR.js +128 -121
  52. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fi-FI.js +109 -102
  53. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-BE.js +109 -102
  54. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-CH.js +109 -102
  55. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-FR.js +109 -102
  56. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-LU.js +109 -102
  57. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-he-IL.js +109 -102
  58. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hr-HR.js +109 -102
  59. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hu-HU.js +109 -102
  60. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-id-ID.js +109 -102
  61. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-it-IT.js +109 -102
  62. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ja-JP.js +109 -102
  63. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ka-GE.js +109 -102
  64. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ko-KR.js +109 -102
  65. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ms-MY.js +109 -102
  66. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nb-NO.js +109 -102
  67. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-BE.js +109 -102
  68. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-NL.js +109 -102
  69. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pl-PL.js +109 -102
  70. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-BR.js +109 -102
  71. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-PT.js +132 -125
  72. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ro-RO.js +109 -102
  73. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ru-RU.js +109 -102
  74. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sk-SK.js +109 -102
  75. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Cyrl-RS.js +109 -102
  76. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Latn-RS.js +109 -102
  77. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sv-SE.js +109 -102
  78. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-th-TH.js +109 -102
  79. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-tr-TR.js +109 -102
  80. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uk-UA.js +109 -102
  81. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ur-PK.js +109 -102
  82. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uz-Latn-UZ.js +109 -102
  83. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-vi-VN.js +109 -102
  84. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-CN.js +109 -102
  85. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-TW.js +109 -102
  86. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/bootstrap-table.css +2 -1
  87. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/bootstrap-table.js +1119 -1123
  88. data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.css +2 -1
  89. data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.js +1111 -1115
  90. data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.css +6 -1
  91. data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.js +1127 -1131
  92. data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.css +6 -1
  93. data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.js +1120 -1124
  94. data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.css +2 -1
  95. data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.js +1088 -1092
  96. metadata +1 -1
@@ -1,1819 +1,1792 @@
1
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));
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
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
-
9
- var $__default = /*#__PURE__*/_interopDefaultLegacy($);
10
-
11
- var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
12
-
13
- function createCommonjsModule(fn, module) {
14
- return module = { exports: {} }, fn(module, module.exports), module.exports;
15
- }
16
-
17
- var check = function (it) {
18
- return it && it.Math == Math && it;
19
- };
20
-
21
- // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
22
- var global_1 =
23
- // eslint-disable-next-line no-undef
24
- check(typeof globalThis == 'object' && globalThis) ||
25
- check(typeof window == 'object' && window) ||
26
- check(typeof self == 'object' && self) ||
27
- check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
28
- // eslint-disable-next-line no-new-func
29
- (function () { return this; })() || Function('return this')();
30
-
31
- var fails = function (exec) {
32
- try {
33
- return !!exec();
34
- } catch (error) {
35
- return true;
36
- }
37
- };
38
-
39
- // Thank's IE8 for his funny defineProperty
40
- var descriptors = !fails(function () {
41
- return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
42
- });
43
-
44
- var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
45
- var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
46
-
47
- // Nashorn ~ JDK8 bug
48
- var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
49
-
50
- // `Object.prototype.propertyIsEnumerable` method implementation
51
- // https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable
52
- var f = NASHORN_BUG ? function propertyIsEnumerable(V) {
53
- var descriptor = getOwnPropertyDescriptor(this, V);
54
- return !!descriptor && descriptor.enumerable;
55
- } : nativePropertyIsEnumerable;
56
-
57
- var objectPropertyIsEnumerable = {
58
- f: f
59
- };
60
-
61
- var createPropertyDescriptor = function (bitmap, value) {
62
- return {
63
- enumerable: !(bitmap & 1),
64
- configurable: !(bitmap & 2),
65
- writable: !(bitmap & 4),
66
- value: value
67
- };
68
- };
69
-
70
- var toString = {}.toString;
71
-
72
- var classofRaw = function (it) {
73
- return toString.call(it).slice(8, -1);
74
- };
75
-
76
- var split = ''.split;
77
-
78
- // fallback for non-array-like ES3 and non-enumerable old V8 strings
79
- var indexedObject = fails(function () {
80
- // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
81
- // eslint-disable-next-line no-prototype-builtins
82
- return !Object('z').propertyIsEnumerable(0);
83
- }) ? function (it) {
84
- return classofRaw(it) == 'String' ? split.call(it, '') : Object(it);
85
- } : Object;
86
-
87
- // `RequireObjectCoercible` abstract operation
88
- // https://tc39.github.io/ecma262/#sec-requireobjectcoercible
89
- var requireObjectCoercible = function (it) {
90
- if (it == undefined) throw TypeError("Can't call method on " + it);
91
- return it;
92
- };
93
-
94
- // toObject with fallback for non-array-like ES3 strings
95
-
96
-
97
-
98
- var toIndexedObject = function (it) {
99
- return indexedObject(requireObjectCoercible(it));
100
- };
101
-
102
- var isObject = function (it) {
103
- return typeof it === 'object' ? it !== null : typeof it === 'function';
104
- };
105
-
106
- // `ToPrimitive` abstract operation
107
- // https://tc39.github.io/ecma262/#sec-toprimitive
108
- // instead of the ES6 spec version, we didn't implement @@toPrimitive case
109
- // and the second argument - flag - preferred type is a string
110
- var toPrimitive = function (input, PREFERRED_STRING) {
111
- if (!isObject(input)) return input;
112
- var fn, val;
113
- if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
114
- if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
115
- if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
116
- throw TypeError("Can't convert object to primitive value");
117
- };
118
-
119
- var hasOwnProperty = {}.hasOwnProperty;
120
-
121
- var has = function (it, key) {
122
- return hasOwnProperty.call(it, key);
123
- };
124
-
125
- var document$1 = global_1.document;
126
- // typeof document.createElement is 'object' in old IE
127
- var EXISTS = isObject(document$1) && isObject(document$1.createElement);
128
-
129
- var documentCreateElement = function (it) {
130
- return EXISTS ? document$1.createElement(it) : {};
131
- };
132
-
133
- // Thank's IE8 for his funny defineProperty
134
- var ie8DomDefine = !descriptors && !fails(function () {
135
- return Object.defineProperty(documentCreateElement('div'), 'a', {
136
- get: function () { return 7; }
137
- }).a != 7;
138
- });
139
-
140
- var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
141
-
142
- // `Object.getOwnPropertyDescriptor` method
143
- // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor
144
- var f$1 = descriptors ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
145
- O = toIndexedObject(O);
146
- P = toPrimitive(P, true);
147
- if (ie8DomDefine) try {
148
- return nativeGetOwnPropertyDescriptor(O, P);
149
- } catch (error) { /* empty */ }
150
- if (has(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]);
151
- };
152
-
153
- var objectGetOwnPropertyDescriptor = {
154
- f: f$1
155
- };
156
-
157
- var anObject = function (it) {
158
- if (!isObject(it)) {
159
- throw TypeError(String(it) + ' is not an object');
160
- } return it;
161
- };
162
-
163
- var nativeDefineProperty = Object.defineProperty;
164
-
165
- // `Object.defineProperty` method
166
- // https://tc39.github.io/ecma262/#sec-object.defineproperty
167
- var f$2 = descriptors ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
168
- anObject(O);
169
- P = toPrimitive(P, true);
170
- anObject(Attributes);
171
- if (ie8DomDefine) try {
172
- return nativeDefineProperty(O, P, Attributes);
173
- } catch (error) { /* empty */ }
174
- if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
175
- if ('value' in Attributes) O[P] = Attributes.value;
176
- return O;
177
- };
178
-
179
- var objectDefineProperty = {
180
- f: f$2
181
- };
182
-
183
- var createNonEnumerableProperty = descriptors ? function (object, key, value) {
184
- return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value));
185
- } : function (object, key, value) {
186
- object[key] = value;
187
- return object;
188
- };
189
-
190
- var setGlobal = function (key, value) {
191
- try {
192
- createNonEnumerableProperty(global_1, key, value);
193
- } catch (error) {
194
- global_1[key] = value;
195
- } return value;
196
- };
197
-
198
- var SHARED = '__core-js_shared__';
199
- var store = global_1[SHARED] || setGlobal(SHARED, {});
200
-
201
- var sharedStore = store;
202
-
203
- var functionToString = Function.toString;
204
-
205
- // this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
206
- if (typeof sharedStore.inspectSource != 'function') {
207
- sharedStore.inspectSource = function (it) {
208
- return functionToString.call(it);
209
- };
210
- }
211
-
212
- var inspectSource = sharedStore.inspectSource;
213
-
214
- var WeakMap = global_1.WeakMap;
215
-
216
- var nativeWeakMap = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));
217
-
218
- var shared = createCommonjsModule(function (module) {
219
- (module.exports = function (key, value) {
220
- return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {});
221
- })('versions', []).push({
222
- version: '3.8.1',
223
- mode: 'global',
224
- copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
225
- });
226
- });
227
-
228
- var id = 0;
229
- var postfix = Math.random();
230
-
231
- var uid = function (key) {
232
- return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
233
- };
234
-
235
- var keys = shared('keys');
236
-
237
- var sharedKey = function (key) {
238
- return keys[key] || (keys[key] = uid(key));
239
- };
240
-
241
- var hiddenKeys = {};
242
-
243
- var WeakMap$1 = global_1.WeakMap;
244
- var set, get, has$1;
245
-
246
- var enforce = function (it) {
247
- return has$1(it) ? get(it) : set(it, {});
248
- };
249
-
250
- var getterFor = function (TYPE) {
251
- return function (it) {
252
- var state;
253
- if (!isObject(it) || (state = get(it)).type !== TYPE) {
254
- throw TypeError('Incompatible receiver, ' + TYPE + ' required');
255
- } return state;
256
- };
257
- };
258
-
259
- if (nativeWeakMap) {
260
- var store$1 = sharedStore.state || (sharedStore.state = new WeakMap$1());
261
- var wmget = store$1.get;
262
- var wmhas = store$1.has;
263
- var wmset = store$1.set;
264
- set = function (it, metadata) {
265
- metadata.facade = it;
266
- wmset.call(store$1, it, metadata);
267
- return metadata;
268
- };
269
- get = function (it) {
270
- return wmget.call(store$1, it) || {};
271
- };
272
- has$1 = function (it) {
273
- return wmhas.call(store$1, it);
274
- };
275
- } else {
276
- var STATE = sharedKey('state');
277
- hiddenKeys[STATE] = true;
278
- set = function (it, metadata) {
279
- metadata.facade = it;
280
- createNonEnumerableProperty(it, STATE, metadata);
281
- return metadata;
282
- };
283
- get = function (it) {
284
- return has(it, STATE) ? it[STATE] : {};
285
- };
286
- has$1 = function (it) {
287
- return has(it, STATE);
288
- };
289
- }
290
-
291
- var internalState = {
292
- set: set,
293
- get: get,
294
- has: has$1,
295
- enforce: enforce,
296
- getterFor: getterFor
297
- };
298
-
299
- var redefine = createCommonjsModule(function (module) {
300
- var getInternalState = internalState.get;
301
- var enforceInternalState = internalState.enforce;
302
- var TEMPLATE = String(String).split('String');
303
-
304
- (module.exports = function (O, key, value, options) {
305
- var unsafe = options ? !!options.unsafe : false;
306
- var simple = options ? !!options.enumerable : false;
307
- var noTargetGet = options ? !!options.noTargetGet : false;
308
- var state;
309
- if (typeof value == 'function') {
310
- if (typeof key == 'string' && !has(value, 'name')) {
311
- createNonEnumerableProperty(value, 'name', key);
312
- }
313
- state = enforceInternalState(value);
314
- if (!state.source) {
315
- state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
316
- }
317
- }
318
- if (O === global_1) {
319
- if (simple) O[key] = value;
320
- else setGlobal(key, value);
321
- return;
322
- } else if (!unsafe) {
323
- delete O[key];
324
- } else if (!noTargetGet && O[key]) {
325
- simple = true;
326
- }
327
- if (simple) O[key] = value;
328
- else createNonEnumerableProperty(O, key, value);
329
- // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
330
- })(Function.prototype, 'toString', function toString() {
331
- return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
332
- });
333
- });
334
-
335
- var path = global_1;
336
-
337
- var aFunction = function (variable) {
338
- return typeof variable == 'function' ? variable : undefined;
339
- };
340
-
341
- var getBuiltIn = function (namespace, method) {
342
- return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global_1[namespace])
343
- : path[namespace] && path[namespace][method] || global_1[namespace] && global_1[namespace][method];
344
- };
345
-
346
- var ceil = Math.ceil;
347
- var floor = Math.floor;
348
-
349
- // `ToInteger` abstract operation
350
- // https://tc39.github.io/ecma262/#sec-tointeger
351
- var toInteger = function (argument) {
352
- return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
353
- };
354
-
355
- var min = Math.min;
356
-
357
- // `ToLength` abstract operation
358
- // https://tc39.github.io/ecma262/#sec-tolength
359
- var toLength = function (argument) {
360
- return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
361
- };
362
-
363
- var max = Math.max;
364
- var min$1 = Math.min;
365
-
366
- // Helper for a popular repeating case of the spec:
367
- // Let integer be ? ToInteger(index).
368
- // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
369
- var toAbsoluteIndex = function (index, length) {
370
- var integer = toInteger(index);
371
- return integer < 0 ? max(integer + length, 0) : min$1(integer, length);
372
- };
373
-
374
- // `Array.prototype.{ indexOf, includes }` methods implementation
375
- var createMethod = function (IS_INCLUDES) {
376
- return function ($this, el, fromIndex) {
377
- var O = toIndexedObject($this);
378
- var length = toLength(O.length);
379
- var index = toAbsoluteIndex(fromIndex, length);
380
- var value;
381
- // Array#includes uses SameValueZero equality algorithm
382
- // eslint-disable-next-line no-self-compare
383
- if (IS_INCLUDES && el != el) while (length > index) {
384
- value = O[index++];
385
- // eslint-disable-next-line no-self-compare
386
- if (value != value) return true;
387
- // Array#indexOf ignores holes, Array#includes - not
388
- } else for (;length > index; index++) {
389
- if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
390
- } return !IS_INCLUDES && -1;
391
- };
392
- };
393
-
394
- var arrayIncludes = {
395
- // `Array.prototype.includes` method
396
- // https://tc39.github.io/ecma262/#sec-array.prototype.includes
397
- includes: createMethod(true),
398
- // `Array.prototype.indexOf` method
399
- // https://tc39.github.io/ecma262/#sec-array.prototype.indexof
400
- indexOf: createMethod(false)
401
- };
402
-
403
- var indexOf = arrayIncludes.indexOf;
404
-
405
-
406
- var objectKeysInternal = function (object, names) {
407
- var O = toIndexedObject(object);
408
- var i = 0;
409
- var result = [];
410
- var key;
411
- for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);
412
- // Don't enum bug & hidden keys
413
- while (names.length > i) if (has(O, key = names[i++])) {
414
- ~indexOf(result, key) || result.push(key);
415
- }
416
- return result;
417
- };
418
-
419
- // IE8- don't enum bug keys
420
- var enumBugKeys = [
421
- 'constructor',
422
- 'hasOwnProperty',
423
- 'isPrototypeOf',
424
- 'propertyIsEnumerable',
425
- 'toLocaleString',
426
- 'toString',
427
- 'valueOf'
428
- ];
429
-
430
- var hiddenKeys$1 = enumBugKeys.concat('length', 'prototype');
431
-
432
- // `Object.getOwnPropertyNames` method
433
- // https://tc39.github.io/ecma262/#sec-object.getownpropertynames
434
- var f$3 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
435
- return objectKeysInternal(O, hiddenKeys$1);
436
- };
437
-
438
- var objectGetOwnPropertyNames = {
439
- f: f$3
440
- };
441
-
442
- var f$4 = Object.getOwnPropertySymbols;
443
-
444
- var objectGetOwnPropertySymbols = {
445
- f: f$4
446
- };
447
-
448
- // all object keys, includes non-enumerable and symbols
449
- var ownKeys = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
450
- var keys = objectGetOwnPropertyNames.f(anObject(it));
451
- var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
452
- return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
453
- };
454
-
455
- var copyConstructorProperties = function (target, source) {
456
- var keys = ownKeys(source);
457
- var defineProperty = objectDefineProperty.f;
458
- var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
459
- for (var i = 0; i < keys.length; i++) {
460
- var key = keys[i];
461
- if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
462
- }
463
- };
464
-
465
- var replacement = /#|\.prototype\./;
466
-
467
- var isForced = function (feature, detection) {
468
- var value = data[normalize(feature)];
469
- return value == POLYFILL ? true
470
- : value == NATIVE ? false
471
- : typeof detection == 'function' ? fails(detection)
472
- : !!detection;
473
- };
474
-
475
- var normalize = isForced.normalize = function (string) {
476
- return String(string).replace(replacement, '.').toLowerCase();
477
- };
478
-
479
- var data = isForced.data = {};
480
- var NATIVE = isForced.NATIVE = 'N';
481
- var POLYFILL = isForced.POLYFILL = 'P';
482
-
483
- var isForced_1 = isForced;
484
-
485
- var getOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f;
486
-
487
-
488
-
489
-
490
-
491
-
492
- /*
493
- options.target - name of the target object
494
- options.global - target is the global object
495
- options.stat - export as static methods of target
496
- options.proto - export as prototype methods of target
497
- options.real - real prototype method for the `pure` version
498
- options.forced - export even if the native feature is available
499
- options.bind - bind methods to the target, required for the `pure` version
500
- options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
501
- options.unsafe - use the simple assignment of property instead of delete + defineProperty
502
- options.sham - add a flag to not completely full polyfills
503
- options.enumerable - export as enumerable property
504
- options.noTargetGet - prevent calling a getter on target
505
- */
506
- var _export = function (options, source) {
507
- var TARGET = options.target;
508
- var GLOBAL = options.global;
509
- var STATIC = options.stat;
510
- var FORCED, target, key, targetProperty, sourceProperty, descriptor;
511
- if (GLOBAL) {
512
- target = global_1;
513
- } else if (STATIC) {
514
- target = global_1[TARGET] || setGlobal(TARGET, {});
515
- } else {
516
- target = (global_1[TARGET] || {}).prototype;
517
- }
518
- if (target) for (key in source) {
519
- sourceProperty = source[key];
520
- if (options.noTargetGet) {
521
- descriptor = getOwnPropertyDescriptor$1(target, key);
522
- targetProperty = descriptor && descriptor.value;
523
- } else targetProperty = target[key];
524
- FORCED = isForced_1(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
525
- // contained in target
526
- if (!FORCED && targetProperty !== undefined) {
527
- if (typeof sourceProperty === typeof targetProperty) continue;
528
- copyConstructorProperties(sourceProperty, targetProperty);
529
- }
530
- // add a flag to not completely full polyfills
531
- if (options.sham || (targetProperty && targetProperty.sham)) {
532
- createNonEnumerableProperty(sourceProperty, 'sham', true);
533
- }
534
- // extend global
535
- redefine(target, key, sourceProperty, options);
536
- }
537
- };
538
-
539
- // `IsArray` abstract operation
540
- // https://tc39.github.io/ecma262/#sec-isarray
541
- var isArray = Array.isArray || function isArray(arg) {
542
- return classofRaw(arg) == 'Array';
543
- };
544
-
545
- // `ToObject` abstract operation
546
- // https://tc39.github.io/ecma262/#sec-toobject
547
- var toObject = function (argument) {
548
- return Object(requireObjectCoercible(argument));
549
- };
550
-
551
- var createProperty = function (object, key, value) {
552
- var propertyKey = toPrimitive(key);
553
- if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value));
554
- else object[propertyKey] = value;
555
- };
556
-
557
- var nativeSymbol = !!Object.getOwnPropertySymbols && !fails(function () {
558
- // Chrome 38 Symbol has incorrect toString conversion
559
- // eslint-disable-next-line no-undef
560
- return !String(Symbol());
561
- });
562
-
563
- var useSymbolAsUid = nativeSymbol
564
- // eslint-disable-next-line no-undef
565
- && !Symbol.sham
566
- // eslint-disable-next-line no-undef
567
- && typeof Symbol.iterator == 'symbol';
568
-
569
- var WellKnownSymbolsStore = shared('wks');
570
- var Symbol$1 = global_1.Symbol;
571
- var createWellKnownSymbol = useSymbolAsUid ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid;
572
-
573
- var wellKnownSymbol = function (name) {
574
- if (!has(WellKnownSymbolsStore, name)) {
575
- if (nativeSymbol && has(Symbol$1, name)) WellKnownSymbolsStore[name] = Symbol$1[name];
576
- else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
577
- } return WellKnownSymbolsStore[name];
578
- };
579
-
580
- var SPECIES = wellKnownSymbol('species');
581
-
582
- // `ArraySpeciesCreate` abstract operation
583
- // https://tc39.github.io/ecma262/#sec-arrayspeciescreate
584
- var arraySpeciesCreate = function (originalArray, length) {
585
- var C;
586
- if (isArray(originalArray)) {
587
- C = originalArray.constructor;
588
- // cross-realm fallback
589
- if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
590
- else if (isObject(C)) {
591
- C = C[SPECIES];
592
- if (C === null) C = undefined;
593
- }
594
- } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
595
- };
596
-
597
- var engineUserAgent = getBuiltIn('navigator', 'userAgent') || '';
598
-
599
- var process = global_1.process;
600
- var versions = process && process.versions;
601
- var v8 = versions && versions.v8;
602
- var match, version;
603
-
604
- if (v8) {
605
- match = v8.split('.');
606
- version = match[0] + match[1];
607
- } else if (engineUserAgent) {
608
- match = engineUserAgent.match(/Edge\/(\d+)/);
609
- if (!match || match[1] >= 74) {
610
- match = engineUserAgent.match(/Chrome\/(\d+)/);
611
- if (match) version = match[1];
612
- }
613
- }
614
-
615
- var engineV8Version = version && +version;
616
-
617
- var SPECIES$1 = wellKnownSymbol('species');
618
-
619
- var arrayMethodHasSpeciesSupport = function (METHOD_NAME) {
620
- // We can't use this feature detection in V8 since it causes
621
- // deoptimization and serious performance degradation
622
- // https://github.com/zloirock/core-js/issues/677
623
- return engineV8Version >= 51 || !fails(function () {
624
- var array = [];
625
- var constructor = array.constructor = {};
626
- constructor[SPECIES$1] = function () {
627
- return { foo: 1 };
628
- };
629
- return array[METHOD_NAME](Boolean).foo !== 1;
630
- });
631
- };
632
-
633
- var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
634
- var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
635
- var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
636
-
637
- // We can't use this feature detection in V8 since it causes
638
- // deoptimization and serious performance degradation
639
- // https://github.com/zloirock/core-js/issues/679
640
- var IS_CONCAT_SPREADABLE_SUPPORT = engineV8Version >= 51 || !fails(function () {
641
- var array = [];
642
- array[IS_CONCAT_SPREADABLE] = false;
643
- return array.concat()[0] !== array;
644
- });
645
-
646
- var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
647
-
648
- var isConcatSpreadable = function (O) {
649
- if (!isObject(O)) return false;
650
- var spreadable = O[IS_CONCAT_SPREADABLE];
651
- return spreadable !== undefined ? !!spreadable : isArray(O);
652
- };
653
-
654
- var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
655
-
656
- // `Array.prototype.concat` method
657
- // https://tc39.github.io/ecma262/#sec-array.prototype.concat
658
- // with adding support of @@isConcatSpreadable and @@species
659
- _export({ target: 'Array', proto: true, forced: FORCED }, {
660
- concat: function concat(arg) { // eslint-disable-line no-unused-vars
661
- var O = toObject(this);
662
- var A = arraySpeciesCreate(O, 0);
663
- var n = 0;
664
- var i, k, length, len, E;
665
- for (i = -1, length = arguments.length; i < length; i++) {
666
- E = i === -1 ? O : arguments[i];
667
- if (isConcatSpreadable(E)) {
668
- len = toLength(E.length);
669
- if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
670
- for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
671
- } else {
672
- if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
673
- createProperty(A, n++, E);
674
- }
675
- }
676
- A.length = n;
677
- return A;
678
- }
679
- });
680
-
681
- var aFunction$1 = function (it) {
682
- if (typeof it != 'function') {
683
- throw TypeError(String(it) + ' is not a function');
684
- } return it;
685
- };
686
-
687
- // optional / simple context binding
688
- var functionBindContext = function (fn, that, length) {
689
- aFunction$1(fn);
690
- if (that === undefined) return fn;
691
- switch (length) {
692
- case 0: return function () {
693
- return fn.call(that);
694
- };
695
- case 1: return function (a) {
696
- return fn.call(that, a);
697
- };
698
- case 2: return function (a, b) {
699
- return fn.call(that, a, b);
700
- };
701
- case 3: return function (a, b, c) {
702
- return fn.call(that, a, b, c);
703
- };
704
- }
705
- return function (/* ...args */) {
706
- return fn.apply(that, arguments);
707
- };
708
- };
709
-
710
- var push = [].push;
711
-
712
- // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
713
- var createMethod$1 = function (TYPE) {
714
- var IS_MAP = TYPE == 1;
715
- var IS_FILTER = TYPE == 2;
716
- var IS_SOME = TYPE == 3;
717
- var IS_EVERY = TYPE == 4;
718
- var IS_FIND_INDEX = TYPE == 6;
719
- var IS_FILTER_OUT = TYPE == 7;
720
- var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
721
- return function ($this, callbackfn, that, specificCreate) {
722
- var O = toObject($this);
723
- var self = indexedObject(O);
724
- var boundFunction = functionBindContext(callbackfn, that, 3);
725
- var length = toLength(self.length);
726
- var index = 0;
727
- var create = specificCreate || arraySpeciesCreate;
728
- var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
729
- var value, result;
730
- for (;length > index; index++) if (NO_HOLES || index in self) {
731
- value = self[index];
732
- result = boundFunction(value, index, O);
733
- if (TYPE) {
734
- if (IS_MAP) target[index] = result; // map
735
- else if (result) switch (TYPE) {
736
- case 3: return true; // some
737
- case 5: return value; // find
738
- case 6: return index; // findIndex
739
- case 2: push.call(target, value); // filter
740
- } else switch (TYPE) {
741
- case 4: return false; // every
742
- case 7: push.call(target, value); // filterOut
743
- }
744
- }
745
- }
746
- return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
747
- };
748
- };
749
-
750
- var arrayIteration = {
751
- // `Array.prototype.forEach` method
752
- // https://tc39.github.io/ecma262/#sec-array.prototype.foreach
753
- forEach: createMethod$1(0),
754
- // `Array.prototype.map` method
755
- // https://tc39.github.io/ecma262/#sec-array.prototype.map
756
- map: createMethod$1(1),
757
- // `Array.prototype.filter` method
758
- // https://tc39.github.io/ecma262/#sec-array.prototype.filter
759
- filter: createMethod$1(2),
760
- // `Array.prototype.some` method
761
- // https://tc39.github.io/ecma262/#sec-array.prototype.some
762
- some: createMethod$1(3),
763
- // `Array.prototype.every` method
764
- // https://tc39.github.io/ecma262/#sec-array.prototype.every
765
- every: createMethod$1(4),
766
- // `Array.prototype.find` method
767
- // https://tc39.github.io/ecma262/#sec-array.prototype.find
768
- find: createMethod$1(5),
769
- // `Array.prototype.findIndex` method
770
- // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex
771
- findIndex: createMethod$1(6),
772
- // `Array.prototype.filterOut` method
773
- // https://github.com/tc39/proposal-array-filtering
774
- filterOut: createMethod$1(7)
775
- };
776
-
777
- // `Object.keys` method
778
- // https://tc39.github.io/ecma262/#sec-object.keys
779
- var objectKeys = Object.keys || function keys(O) {
780
- return objectKeysInternal(O, enumBugKeys);
781
- };
782
-
783
- // `Object.defineProperties` method
784
- // https://tc39.github.io/ecma262/#sec-object.defineproperties
785
- var objectDefineProperties = descriptors ? Object.defineProperties : function defineProperties(O, Properties) {
786
- anObject(O);
787
- var keys = objectKeys(Properties);
788
- var length = keys.length;
789
- var index = 0;
790
- var key;
791
- while (length > index) objectDefineProperty.f(O, key = keys[index++], Properties[key]);
792
- return O;
793
- };
794
-
795
- var html = getBuiltIn('document', 'documentElement');
796
-
797
- var GT = '>';
798
- var LT = '<';
799
- var PROTOTYPE = 'prototype';
800
- var SCRIPT = 'script';
801
- var IE_PROTO = sharedKey('IE_PROTO');
802
-
803
- var EmptyConstructor = function () { /* empty */ };
804
-
805
- var scriptTag = function (content) {
806
- return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
807
- };
808
-
809
- // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
810
- var NullProtoObjectViaActiveX = function (activeXDocument) {
811
- activeXDocument.write(scriptTag(''));
812
- activeXDocument.close();
813
- var temp = activeXDocument.parentWindow.Object;
814
- activeXDocument = null; // avoid memory leak
815
- return temp;
816
- };
817
-
818
- // Create object with fake `null` prototype: use iframe Object with cleared prototype
819
- var NullProtoObjectViaIFrame = function () {
820
- // Thrash, waste and sodomy: IE GC bug
821
- var iframe = documentCreateElement('iframe');
822
- var JS = 'java' + SCRIPT + ':';
823
- var iframeDocument;
824
- iframe.style.display = 'none';
825
- html.appendChild(iframe);
826
- // https://github.com/zloirock/core-js/issues/475
827
- iframe.src = String(JS);
828
- iframeDocument = iframe.contentWindow.document;
829
- iframeDocument.open();
830
- iframeDocument.write(scriptTag('document.F=Object'));
831
- iframeDocument.close();
832
- return iframeDocument.F;
833
- };
834
-
835
- // Check for document.domain and active x support
836
- // No need to use active x approach when document.domain is not set
837
- // see https://github.com/es-shims/es5-shim/issues/150
838
- // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
839
- // avoid IE GC bug
840
- var activeXDocument;
841
- var NullProtoObject = function () {
842
- try {
843
- /* global ActiveXObject */
844
- activeXDocument = document.domain && new ActiveXObject('htmlfile');
845
- } catch (error) { /* ignore */ }
846
- NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
847
- var length = enumBugKeys.length;
848
- while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
849
- return NullProtoObject();
850
- };
851
-
852
- hiddenKeys[IE_PROTO] = true;
853
-
854
- // `Object.create` method
855
- // https://tc39.github.io/ecma262/#sec-object.create
856
- var objectCreate = Object.create || function create(O, Properties) {
857
- var result;
858
- if (O !== null) {
859
- EmptyConstructor[PROTOTYPE] = anObject(O);
860
- result = new EmptyConstructor();
861
- EmptyConstructor[PROTOTYPE] = null;
862
- // add "__proto__" for Object.getPrototypeOf polyfill
863
- result[IE_PROTO] = O;
864
- } else result = NullProtoObject();
865
- return Properties === undefined ? result : objectDefineProperties(result, Properties);
866
- };
867
-
868
- var UNSCOPABLES = wellKnownSymbol('unscopables');
869
- var ArrayPrototype = Array.prototype;
870
-
871
- // Array.prototype[@@unscopables]
872
- // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
873
- if (ArrayPrototype[UNSCOPABLES] == undefined) {
874
- objectDefineProperty.f(ArrayPrototype, UNSCOPABLES, {
875
- configurable: true,
876
- value: objectCreate(null)
877
- });
878
- }
879
-
880
- // add a key to Array.prototype[@@unscopables]
881
- var addToUnscopables = function (key) {
882
- ArrayPrototype[UNSCOPABLES][key] = true;
883
- };
884
-
885
- var defineProperty = Object.defineProperty;
886
- var cache = {};
887
-
888
- var thrower = function (it) { throw it; };
889
-
890
- var arrayMethodUsesToLength = function (METHOD_NAME, options) {
891
- if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];
892
- if (!options) options = {};
893
- var method = [][METHOD_NAME];
894
- var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;
895
- var argument0 = has(options, 0) ? options[0] : thrower;
896
- var argument1 = has(options, 1) ? options[1] : undefined;
897
-
898
- return cache[METHOD_NAME] = !!method && !fails(function () {
899
- if (ACCESSORS && !descriptors) return true;
900
- var O = { length: -1 };
901
-
902
- if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });
903
- else O[1] = 1;
904
-
905
- method.call(O, argument0, argument1);
906
- });
907
- };
908
-
909
- var $find = arrayIteration.find;
910
-
911
-
912
-
913
- var FIND = 'find';
914
- var SKIPS_HOLES = true;
915
-
916
- var USES_TO_LENGTH = arrayMethodUsesToLength(FIND);
917
-
918
- // Shouldn't skip holes
919
- if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });
920
-
921
- // `Array.prototype.find` method
922
- // https://tc39.github.io/ecma262/#sec-array.prototype.find
923
- _export({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, {
924
- find: function find(callbackfn /* , that = undefined */) {
925
- return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
926
- }
927
- });
928
-
929
- // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
930
- addToUnscopables(FIND);
931
-
932
- var arrayMethodIsStrict = function (METHOD_NAME, argument) {
933
- var method = [][METHOD_NAME];
934
- return !!method && fails(function () {
935
- // eslint-disable-next-line no-useless-call,no-throw-literal
936
- method.call(null, argument || function () { throw 1; }, 1);
937
- });
938
- };
939
-
940
- var $indexOf = arrayIncludes.indexOf;
941
-
942
-
943
-
944
- var nativeIndexOf = [].indexOf;
945
-
946
- var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;
947
- var STRICT_METHOD = arrayMethodIsStrict('indexOf');
948
- var USES_TO_LENGTH$1 = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });
949
-
950
- // `Array.prototype.indexOf` method
951
- // https://tc39.github.io/ecma262/#sec-array.prototype.indexof
952
- _export({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD || !USES_TO_LENGTH$1 }, {
953
- indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {
954
- return NEGATIVE_ZERO
955
- // convert -0 to +0
956
- ? nativeIndexOf.apply(this, arguments) || 0
957
- : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);
958
- }
959
- });
960
-
961
- var $map = arrayIteration.map;
962
-
963
-
964
-
965
- var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');
966
- // FF49- issue
967
- var USES_TO_LENGTH$2 = arrayMethodUsesToLength('map');
968
-
969
- // `Array.prototype.map` method
970
- // https://tc39.github.io/ecma262/#sec-array.prototype.map
971
- // with adding support of @@species
972
- _export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH$2 }, {
973
- map: function map(callbackfn /* , thisArg */) {
974
- return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
975
- }
976
- });
977
-
978
- var HAS_SPECIES_SUPPORT$1 = arrayMethodHasSpeciesSupport('slice');
979
- var USES_TO_LENGTH$3 = arrayMethodUsesToLength('slice', { ACCESSORS: true, 0: 0, 1: 2 });
980
-
981
- var SPECIES$2 = wellKnownSymbol('species');
982
- var nativeSlice = [].slice;
983
- var max$1 = Math.max;
984
-
985
- // `Array.prototype.slice` method
986
- // https://tc39.github.io/ecma262/#sec-array.prototype.slice
987
- // fallback for not array-like ES3 strings and DOM objects
988
- _export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT$1 || !USES_TO_LENGTH$3 }, {
989
- slice: function slice(start, end) {
990
- var O = toIndexedObject(this);
991
- var length = toLength(O.length);
992
- var k = toAbsoluteIndex(start, length);
993
- var fin = toAbsoluteIndex(end === undefined ? length : end, length);
994
- // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible
995
- var Constructor, result, n;
996
- if (isArray(O)) {
997
- Constructor = O.constructor;
998
- // cross-realm fallback
999
- if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {
1000
- Constructor = undefined;
1001
- } else if (isObject(Constructor)) {
1002
- Constructor = Constructor[SPECIES$2];
1003
- if (Constructor === null) Constructor = undefined;
1004
- }
1005
- if (Constructor === Array || Constructor === undefined) {
1006
- return nativeSlice.call(O, k, fin);
1007
- }
1008
- }
1009
- result = new (Constructor === undefined ? Array : Constructor)(max$1(fin - k, 0));
1010
- for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);
1011
- result.length = n;
1012
- return result;
1013
- }
1014
- });
1015
-
1016
- var test = [];
1017
- var nativeSort = test.sort;
1018
-
1019
- // IE8-
1020
- var FAILS_ON_UNDEFINED = fails(function () {
1021
- test.sort(undefined);
1022
- });
1023
- // V8 bug
1024
- var FAILS_ON_NULL = fails(function () {
1025
- test.sort(null);
1026
- });
1027
- // Old WebKit
1028
- var STRICT_METHOD$1 = arrayMethodIsStrict('sort');
1029
-
1030
- var FORCED$1 = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD$1;
1031
-
1032
- // `Array.prototype.sort` method
1033
- // https://tc39.github.io/ecma262/#sec-array.prototype.sort
1034
- _export({ target: 'Array', proto: true, forced: FORCED$1 }, {
1035
- sort: function sort(comparefn) {
1036
- return comparefn === undefined
1037
- ? nativeSort.call(toObject(this))
1038
- : nativeSort.call(toObject(this), aFunction$1(comparefn));
1039
- }
1040
- });
1041
-
1042
- var HAS_SPECIES_SUPPORT$2 = arrayMethodHasSpeciesSupport('splice');
1043
- var USES_TO_LENGTH$4 = arrayMethodUsesToLength('splice', { ACCESSORS: true, 0: 0, 1: 2 });
1044
-
1045
- var max$2 = Math.max;
1046
- var min$2 = Math.min;
1047
- var MAX_SAFE_INTEGER$1 = 0x1FFFFFFFFFFFFF;
1048
- var MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';
1049
-
1050
- // `Array.prototype.splice` method
1051
- // https://tc39.github.io/ecma262/#sec-array.prototype.splice
1052
- // with adding support of @@species
1053
- _export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT$2 || !USES_TO_LENGTH$4 }, {
1054
- splice: function splice(start, deleteCount /* , ...items */) {
1055
- var O = toObject(this);
1056
- var len = toLength(O.length);
1057
- var actualStart = toAbsoluteIndex(start, len);
1058
- var argumentsLength = arguments.length;
1059
- var insertCount, actualDeleteCount, A, k, from, to;
1060
- if (argumentsLength === 0) {
1061
- insertCount = actualDeleteCount = 0;
1062
- } else if (argumentsLength === 1) {
1063
- insertCount = 0;
1064
- actualDeleteCount = len - actualStart;
1065
- } else {
1066
- insertCount = argumentsLength - 2;
1067
- actualDeleteCount = min$2(max$2(toInteger(deleteCount), 0), len - actualStart);
1068
- }
1069
- if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER$1) {
1070
- throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);
1071
- }
1072
- A = arraySpeciesCreate(O, actualDeleteCount);
1073
- for (k = 0; k < actualDeleteCount; k++) {
1074
- from = actualStart + k;
1075
- if (from in O) createProperty(A, k, O[from]);
1076
- }
1077
- A.length = actualDeleteCount;
1078
- if (insertCount < actualDeleteCount) {
1079
- for (k = actualStart; k < len - actualDeleteCount; k++) {
1080
- from = k + actualDeleteCount;
1081
- to = k + insertCount;
1082
- if (from in O) O[to] = O[from];
1083
- else delete O[to];
1084
- }
1085
- for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];
1086
- } else if (insertCount > actualDeleteCount) {
1087
- for (k = len - actualDeleteCount; k > actualStart; k--) {
1088
- from = k + actualDeleteCount - 1;
1089
- to = k + insertCount - 1;
1090
- if (from in O) O[to] = O[from];
1091
- else delete O[to];
1092
- }
1093
- }
1094
- for (k = 0; k < insertCount; k++) {
1095
- O[k + actualStart] = arguments[k + 2];
1096
- }
1097
- O.length = len - actualDeleteCount + insertCount;
1098
- return A;
1099
- }
1100
- });
1101
-
1102
- var nativeAssign = Object.assign;
1103
- var defineProperty$1 = Object.defineProperty;
1104
-
1105
- // `Object.assign` method
1106
- // https://tc39.github.io/ecma262/#sec-object.assign
1107
- var objectAssign = !nativeAssign || fails(function () {
1108
- // should have correct order of operations (Edge bug)
1109
- if (descriptors && nativeAssign({ b: 1 }, nativeAssign(defineProperty$1({}, 'a', {
1110
- enumerable: true,
1111
- get: function () {
1112
- defineProperty$1(this, 'b', {
1113
- value: 3,
1114
- enumerable: false
1115
- });
1116
- }
1117
- }), { b: 2 })).b !== 1) return true;
1118
- // should work with symbols and should have deterministic property order (V8 bug)
1119
- var A = {};
1120
- var B = {};
1121
- // eslint-disable-next-line no-undef
1122
- var symbol = Symbol();
1123
- var alphabet = 'abcdefghijklmnopqrst';
1124
- A[symbol] = 7;
1125
- alphabet.split('').forEach(function (chr) { B[chr] = chr; });
1126
- return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;
1127
- }) ? function assign(target, source) { // eslint-disable-line no-unused-vars
1128
- var T = toObject(target);
1129
- var argumentsLength = arguments.length;
1130
- var index = 1;
1131
- var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
1132
- var propertyIsEnumerable = objectPropertyIsEnumerable.f;
1133
- while (argumentsLength > index) {
1134
- var S = indexedObject(arguments[index++]);
1135
- var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);
1136
- var length = keys.length;
1137
- var j = 0;
1138
- var key;
1139
- while (length > j) {
1140
- key = keys[j++];
1141
- if (!descriptors || propertyIsEnumerable.call(S, key)) T[key] = S[key];
1142
- }
1143
- } return T;
1144
- } : nativeAssign;
1145
-
1146
- // `Object.assign` method
1147
- // https://tc39.github.io/ecma262/#sec-object.assign
1148
- _export({ target: 'Object', stat: true, forced: Object.assign !== objectAssign }, {
1149
- assign: objectAssign
1150
- });
1151
-
1152
- var TO_STRING_TAG = wellKnownSymbol('toStringTag');
1153
- var test$1 = {};
1154
-
1155
- test$1[TO_STRING_TAG] = 'z';
1156
-
1157
- var toStringTagSupport = String(test$1) === '[object z]';
1158
-
1159
- var TO_STRING_TAG$1 = wellKnownSymbol('toStringTag');
1160
- // ES3 wrong here
1161
- var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
1162
-
1163
- // fallback for IE11 Script Access Denied error
1164
- var tryGet = function (it, key) {
1165
- try {
1166
- return it[key];
1167
- } catch (error) { /* empty */ }
1168
- };
1169
-
1170
- // getting tag from ES6+ `Object.prototype.toString`
1171
- var classof = toStringTagSupport ? classofRaw : function (it) {
1172
- var O, tag, result;
1173
- return it === undefined ? 'Undefined' : it === null ? 'Null'
1174
- // @@toStringTag case
1175
- : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG$1)) == 'string' ? tag
1176
- // builtinTag case
1177
- : CORRECT_ARGUMENTS ? classofRaw(O)
1178
- // ES3 arguments fallback
1179
- : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
1180
- };
1181
-
1182
- // `Object.prototype.toString` method implementation
1183
- // https://tc39.github.io/ecma262/#sec-object.prototype.tostring
1184
- var objectToString = toStringTagSupport ? {}.toString : function toString() {
1185
- return '[object ' + classof(this) + ']';
1186
- };
1187
-
1188
- // `Object.prototype.toString` method
1189
- // https://tc39.github.io/ecma262/#sec-object.prototype.tostring
1190
- if (!toStringTagSupport) {
1191
- redefine(Object.prototype, 'toString', objectToString, { unsafe: true });
1192
- }
1193
-
1194
- // a string of all valid unicode whitespaces
1195
- // eslint-disable-next-line max-len
1196
- 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';
1197
-
1198
- var whitespace = '[' + whitespaces + ']';
1199
- var ltrim = RegExp('^' + whitespace + whitespace + '*');
1200
- var rtrim = RegExp(whitespace + whitespace + '*$');
1201
-
1202
- // `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
1203
- var createMethod$2 = function (TYPE) {
1204
- return function ($this) {
1205
- var string = String(requireObjectCoercible($this));
1206
- if (TYPE & 1) string = string.replace(ltrim, '');
1207
- if (TYPE & 2) string = string.replace(rtrim, '');
1208
- return string;
1209
- };
1210
- };
1211
-
1212
- var stringTrim = {
1213
- // `String.prototype.{ trimLeft, trimStart }` methods
1214
- // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart
1215
- start: createMethod$2(1),
1216
- // `String.prototype.{ trimRight, trimEnd }` methods
1217
- // https://tc39.github.io/ecma262/#sec-string.prototype.trimend
1218
- end: createMethod$2(2),
1219
- // `String.prototype.trim` method
1220
- // https://tc39.github.io/ecma262/#sec-string.prototype.trim
1221
- trim: createMethod$2(3)
1222
- };
1223
-
1224
- var trim = stringTrim.trim;
1225
-
1226
-
1227
- var $parseFloat = global_1.parseFloat;
1228
- var FORCED$2 = 1 / $parseFloat(whitespaces + '-0') !== -Infinity;
1229
-
1230
- // `parseFloat` method
1231
- // https://tc39.github.io/ecma262/#sec-parsefloat-string
1232
- var numberParseFloat = FORCED$2 ? function parseFloat(string) {
1233
- var trimmedString = trim(String(string));
1234
- var result = $parseFloat(trimmedString);
1235
- return result === 0 && trimmedString.charAt(0) == '-' ? -0 : result;
1236
- } : $parseFloat;
1237
-
1238
- // `parseFloat` method
1239
- // https://tc39.github.io/ecma262/#sec-parsefloat-string
1240
- _export({ global: true, forced: parseFloat != numberParseFloat }, {
1241
- parseFloat: numberParseFloat
1242
- });
1243
-
1244
- // `RegExp.prototype.flags` getter implementation
1245
- // https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags
1246
- var regexpFlags = function () {
1247
- var that = anObject(this);
1248
- var result = '';
1249
- if (that.global) result += 'g';
1250
- if (that.ignoreCase) result += 'i';
1251
- if (that.multiline) result += 'm';
1252
- if (that.dotAll) result += 's';
1253
- if (that.unicode) result += 'u';
1254
- if (that.sticky) result += 'y';
1255
- return result;
1256
- };
1257
-
1258
- var TO_STRING = 'toString';
1259
- var RegExpPrototype = RegExp.prototype;
1260
- var nativeToString = RegExpPrototype[TO_STRING];
1261
-
1262
- var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });
1263
- // FF44- RegExp#toString has a wrong name
1264
- var INCORRECT_NAME = nativeToString.name != TO_STRING;
1265
-
1266
- // `RegExp.prototype.toString` method
1267
- // https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring
1268
- if (NOT_GENERIC || INCORRECT_NAME) {
1269
- redefine(RegExp.prototype, TO_STRING, function toString() {
1270
- var R = anObject(this);
1271
- var p = String(R.source);
1272
- var rf = R.flags;
1273
- var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? regexpFlags.call(R) : rf);
1274
- return '/' + p + '/' + f;
1275
- }, { unsafe: true });
1276
- }
1277
-
1278
- function _typeof(obj) {
1279
- "@babel/helpers - typeof";
1280
-
1281
- if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
1282
- _typeof = function (obj) {
1283
- return typeof obj;
1284
- };
1285
- } else {
1286
- _typeof = function (obj) {
1287
- return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
1288
- };
1289
- }
1290
-
1291
- return _typeof(obj);
1292
- }
1293
-
1294
- /**
1295
- * @author Nadim Basalamah <dimbslmh@gmail.com>
1296
- * @version: v1.1.0
1297
- * https://github.com/dimbslmh/bootstrap-table/tree/master/src/extensions/multiple-sort/bootstrap-table-multiple-sort.js
1298
- * Modification: ErwannNevou <https://github.com/ErwannNevou>
1299
- */
1300
-
1301
- var isSingleSort = false;
1302
- var Utils = $__default['default'].fn.bootstrapTable.utils;
1303
- $__default['default'].extend($__default['default'].fn.bootstrapTable.defaults.icons, {
1304
- plus: {
1305
- bootstrap3: 'glyphicon-plus',
1306
- bootstrap4: 'fa-plus',
1307
- bootstrap5: 'fa-plus',
1308
- semantic: 'fa-plus',
1309
- materialize: 'plus',
1310
- foundation: 'fa-plus',
1311
- bulma: 'fa-plus',
1312
- 'bootstrap-table': 'icon-plus'
1313
- }[$__default['default'].fn.bootstrapTable.theme] || 'fa-clock',
1314
- minus: {
1315
- bootstrap3: 'glyphicon-minus',
1316
- bootstrap4: 'fa-minus',
1317
- bootstrap5: 'fa-minus',
1318
- semantic: 'fa-minus',
1319
- materialize: 'minus',
1320
- foundation: 'fa-minus',
1321
- bulma: 'fa-minus',
1322
- 'bootstrap-table': 'icon-minus'
1323
- }[$__default['default'].fn.bootstrapTable.theme] || 'fa-clock',
1324
- sort: {
1325
- bootstrap3: 'glyphicon-sort',
1326
- bootstrap4: 'fa-sort',
1327
- bootstrap5: 'fa-sort',
1328
- semantic: 'fa-sort',
1329
- materialize: 'sort',
1330
- foundation: 'fa-sort',
1331
- bulma: 'fa-sort',
1332
- 'bootstrap-table': 'icon-sort-amount-asc'
1333
- }[$__default['default'].fn.bootstrapTable.theme] || 'fa-clock'
1334
- });
1335
- var theme = {
1336
- bootstrap3: {
1337
- html: {
1338
- multipleSortModal: "\n <div class=\"modal fade\" id=\"%s\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\"><span aria-hidden=\"true\">&times;</span></button>\n <h4 class=\"modal-title\" id=\"%sLabel\">%s</h4>\n </div>\n <div class=\"modal-body\">\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\">\n <button id=\"add\" type=\"button\" class=\"btn btn-default\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"btn btn-default\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">%s</button>\n <button type=\"button\" class=\"btn btn-primary multi-sort-order-button\">%s</button>\n </div>\n </div>\n </div>\n </div>\n ",
1339
- multipleSortButton: '<button class="multi-sort btn btn-default" type="button" data-toggle="modal" data-target="#%s" title="%s">%s</button>',
1340
- multipleSortSelect: '<select class="%s %s form-control">'
1341
- }
1342
- },
1343
- bootstrap4: {
1344
- html: {
1345
- multipleSortModal: "\n <div class=\"modal fade\" id=\"%s\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"%sLabel\">%s</h5>\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"pb-3\">\n <button id=\"add\" type=\"button\" class=\"btn btn-secondary\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"btn btn-secondary\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\">%s</button>\n <button type=\"button\" class=\"btn btn-primary multi-sort-order-button\">%s</button>\n </div>\n </div>\n </div>\n </div>\n ",
1346
- multipleSortButton: '<button class="multi-sort btn btn-secondary" type="button" data-toggle="modal" data-target="#%s" title="%s">%s</button>',
1347
- multipleSortSelect: '<select class="%s %s form-control">'
1348
- }
1349
- },
1350
- bootstrap5: {
1351
- html: {
1352
- multipleSortModal: "\n <div class=\"modal fade\" id=\"%s\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"%sLabel\">%s</h5>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n </div>\n <div class=\"modal-body\">\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"pb-3\">\n <button id=\"add\" type=\"button\" class=\"btn btn-secondary\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"btn btn-secondary\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-bs-dismiss=\"modal\">%s</button>\n <button type=\"button\" class=\"btn btn-primary multi-sort-order-button\">%s</button>\n </div>\n </div>\n </div>\n </div>\n ",
1353
- multipleSortButton: '<button class="multi-sort btn btn-secondary" type="button" data-bs-toggle="modal" data-target="#%s" title="%s">%s</button>',
1354
- multipleSortSelect: '<select class="%s %s form-control">'
1355
- }
1356
- },
1357
- semantic: {
1358
- html: {
1359
- multipleSortModal: "\n <div class=\"ui modal tiny\" id=\"%s\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <i class=\"close icon\"></i>\n <div class=\"header\" id=\"%sLabel\">\n %s\n </div>\n <div class=\"image content\">\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"pb-3\">\n <button id=\"add\" type=\"button\" class=\"ui button\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"ui button\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n </div>\n <div class=\"actions\">\n <div class=\"ui button deny\">%s</div>\n <div class=\"ui button approve multi-sort-order-button\">%s</div>\n </div>\n </div>\n ",
1360
- multipleSortButton: '<button class="multi-sort ui button" type="button" data-toggle="modal" data-target="#%s" title="%s">%s</button>',
1361
- multipleSortSelect: '<select class="%s %s">'
1362
- }
1363
- },
1364
- materialize: {
1365
- html: {
1366
- multipleSortModal: "\n <div id=\"%s\" class=\"modal\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-content\" id=\"%sLabel\">\n <h4>%s</h4>\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"pb-3\">\n <button id=\"add\" type=\"button\" class=\"waves-effect waves-light btn\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"waves-effect waves-light btn\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n <div class=\"modal-footer\">\n <a href=\"javascript:void(0)\" class=\"modal-close waves-effect waves-light btn\">%s</a>\n <a href=\"javascript:void(0)\" class=\"modal-close waves-effect waves-light btn multi-sort-order-button\">%s</a>\n </div>\n </div>\n </div>\n ",
1367
- multipleSortButton: '<a href="#%s" class="multi-sort waves-effect waves-light btn modal-trigger" type="button" data-toggle="modal" title="%s">%s</a>',
1368
- multipleSortSelect: '<select class="%s %s browser-default">'
1369
- }
1370
- },
1371
- foundation: {
1372
- html: {
1373
- multipleSortModal: "\n <div class=\"reveal\" id=\"%s\" data-reveal aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div id=\"%sLabel\">\n <h1>%s</h1>\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"padding-bottom-2\">\n <button id=\"add\" type=\"button\" class=\"waves-effect waves-light button\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"waves-effect waves-light button\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n\n <button class=\"waves-effect waves-light button\" data-close aria-label=\"Close modal\" type=\"button\">\n <span aria-hidden=\"true\">%s</span>\n </button>\n <button class=\"waves-effect waves-light button multi-sort-order-button\" data-close aria-label=\"Order\" type=\"button\">\n <span aria-hidden=\"true\">%s</span>\n </button>\n </div>\n </div>\n ",
1374
- multipleSortButton: '<button class="button multi-sort" data-open="%s" title="%s">%s</button>',
1375
- multipleSortSelect: '<select class="%s %s browser-default">'
1376
- }
1377
- },
1378
- bulma: {
1379
- html: {
1380
- multipleSortModal: "\n <div class=\"modal\" id=\"%s\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-content\" id=\"%sLabel\">\n <div class=\"box\">\n <h2>%s</h2>\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"padding-bottom-2\">\n <button id=\"add\" type=\"button\" class=\"waves-effect waves-light button\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"waves-effect waves-light button\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n <button type=\"button\" class=\"waves-effect waves-light button\" data-close>%s</button>\n <button type=\"button\" class=\"waves-effect waves-light button multi-sort-order-button\" data-close>%s</button>\n </div>\n </div>\n </div>\n ",
1381
- multipleSortButton: '<button class="button multi-sort" data-target="%s" title="%s">%s</button>',
1382
- multipleSortSelect: '<select class="%s %s browser-default">'
1383
- }
1384
- },
1385
- 'bootstrap-table': {
1386
- html: {
1387
- multipleSortModal: "\n <div class=\"modal\" id=\"%s\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-content\" id=\"%sLabel\">\n <div class=\"box\">\n <h2>%s</h2>\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"padding-bottom-2\">\n <button id=\"add\" type=\"button\" class=\"btn\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"btn\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n <div class=\"mt-30\">\n <button type=\"button\" class=\"btn\" data-close>%s</button>\n <button type=\"button\" class=\"btn multi-sort-order-button\" data-close>%s</button>\n </div>\n </div>\n </div>\n </div>\n ",
1388
- multipleSortButton: '<button class="btn multi-sort" data-target="%s" title="%s">%s</button>',
1389
- multipleSortSelect: '<select class="%s %s browser-default">'
1390
- }
1391
- }
1392
- }[$__default['default'].fn.bootstrapTable.theme];
1393
-
1394
- var showSortModal = function showSortModal(that) {
1395
- var _selector = that.sortModalSelector;
1396
-
1397
- var _id = "#".concat(_selector);
1398
-
1399
- var o = that.options;
1400
-
1401
- if (!$__default['default'](_id).hasClass('modal')) {
1402
- var sModal = Utils.sprintf(theme.html.multipleSortModal, _selector, _selector, _selector, that.options.formatMultipleSort(), Utils.sprintf(that.constants.html.icon, o.iconsPrefix, o.icons.plus), that.options.formatAddLevel(), Utils.sprintf(that.constants.html.icon, o.iconsPrefix, o.icons.minus), that.options.formatDeleteLevel(), that.options.formatColumn(), that.options.formatOrder(), that.options.formatCancel(), that.options.formatSort());
1403
- $__default['default']('body').append($__default['default'](sModal));
1404
- that.$sortModal = $__default['default'](_id);
1405
- var $rows = that.$sortModal.find('tbody > tr');
1406
- that.$sortModal.off('click', '#add').on('click', '#add', function () {
1407
- var total = that.$sortModal.find('.multi-sort-name:first option').length;
1408
- var current = that.$sortModal.find('tbody tr').length;
1409
-
1410
- if (current < total) {
1411
- current++;
1412
- that.addLevel();
1413
- that.setButtonStates();
1414
- }
1415
- });
1416
- that.$sortModal.off('click', '#delete').on('click', '#delete', function () {
1417
- var total = that.$sortModal.find('.multi-sort-name:first option').length;
1418
- var current = that.$sortModal.find('tbody tr').length;
1419
-
1420
- if (current > 1 && current <= total) {
1421
- current--;
1422
- that.$sortModal.find('tbody tr:last').remove();
1423
- that.setButtonStates();
1424
- }
1425
- });
1426
- that.$sortModal.off('click', '.multi-sort-order-button').on('click', '.multi-sort-order-button', function () {
1427
- var $rows = that.$sortModal.find('tbody > tr');
1428
- var $alert = that.$sortModal.find('div.alert');
1429
- var fields = [];
1430
- var results = [];
1431
- var sortPriority = $__default['default'].map($rows, function (row) {
1432
- var $row = $__default['default'](row);
1433
- var name = $row.find('.multi-sort-name').val();
1434
- var order = $row.find('.multi-sort-order').val();
1435
- fields.push(name);
1436
- return {
1437
- sortName: name,
1438
- sortOrder: order
1439
- };
1440
- });
1441
- var sorted_fields = fields.sort();
1442
-
1443
- for (var i = 0; i < fields.length - 1; i++) {
1444
- if (sorted_fields[i + 1] === sorted_fields[i]) {
1445
- results.push(sorted_fields[i]);
1446
- }
1447
- }
1448
-
1449
- if (results.length > 0) {
1450
- if ($alert.length === 0) {
1451
- $alert = "<div class=\"alert alert-danger\" role=\"alert\"><strong>".concat(that.options.formatDuplicateAlertTitle(), "</strong> ").concat(that.options.formatDuplicateAlertDescription(), "</div>");
1452
- $__default['default']($alert).insertBefore(that.$sortModal.find('.bars'));
1453
- }
1454
- } else {
1455
- if ($alert.length === 1) {
1456
- $__default['default']($alert).remove();
1457
- }
1458
-
1459
- if ($__default['default'].inArray($__default['default'].fn.bootstrapTable.theme, ['bootstrap3', 'bootstrap4']) !== -1) {
1460
- that.$sortModal.modal('hide');
1461
- }
1462
-
1463
- that.multiSort(sortPriority);
1464
- }
1465
- });
1466
-
1467
- if (that.options.sortPriority === null || that.options.sortPriority.length === 0) {
1468
- if (that.options.sortName) {
1469
- that.options.sortPriority = [{
1470
- sortName: that.options.sortName,
1471
- sortOrder: that.options.sortOrder
1472
- }];
1473
- }
1474
- }
1475
-
1476
- if (that.options.sortPriority !== null && that.options.sortPriority.length > 0) {
1477
- if ($rows.length < that.options.sortPriority.length && _typeof(that.options.sortPriority) === 'object') {
1478
- for (var i = 0; i < that.options.sortPriority.length; i++) {
1479
- that.addLevel(i, that.options.sortPriority[i]);
1480
- }
1481
- }
1482
- } else {
1483
- that.addLevel(0);
1484
- }
1485
-
1486
- that.setButtonStates();
1487
- }
1488
- };
1489
-
1490
- $__default['default'].fn.bootstrapTable.methods.push('multipleSort');
1491
- $__default['default'].fn.bootstrapTable.methods.push('multiSort');
1492
- $__default['default'].extend($__default['default'].fn.bootstrapTable.defaults, {
1493
- showMultiSort: false,
1494
- showMultiSortButton: true,
1495
- multiSortStrictSort: false,
1496
- sortPriority: null,
1497
- onMultipleSort: function onMultipleSort() {
1498
- return false;
1499
- }
1500
- });
1501
- $__default['default'].extend($__default['default'].fn.bootstrapTable.Constructor.EVENTS, {
1502
- 'multiple-sort.bs.table': 'onMultipleSort'
1503
- });
1504
- $__default['default'].extend($__default['default'].fn.bootstrapTable.locales, {
1505
- formatMultipleSort: function formatMultipleSort() {
1506
- return 'Multiple Sort';
1507
- },
1508
- formatAddLevel: function formatAddLevel() {
1509
- return 'Add Level';
1510
- },
1511
- formatDeleteLevel: function formatDeleteLevel() {
1512
- return 'Delete Level';
1513
- },
1514
- formatColumn: function formatColumn() {
1515
- return 'Column';
1516
- },
1517
- formatOrder: function formatOrder() {
1518
- return 'Order';
1519
- },
1520
- formatSortBy: function formatSortBy() {
1521
- return 'Sort by';
1522
- },
1523
- formatThenBy: function formatThenBy() {
1524
- return 'Then by';
1525
- },
1526
- formatSort: function formatSort() {
1527
- return 'Sort';
1528
- },
1529
- formatCancel: function formatCancel() {
1530
- return 'Cancel';
1531
- },
1532
- formatDuplicateAlertTitle: function formatDuplicateAlertTitle() {
1533
- return 'Duplicate(s) detected!';
1534
- },
1535
- formatDuplicateAlertDescription: function formatDuplicateAlertDescription() {
1536
- return 'Please remove or change any duplicate column.';
1537
- },
1538
- formatSortOrders: function formatSortOrders() {
1539
- return {
1540
- asc: 'Ascending',
1541
- desc: 'Descending'
1542
- };
1543
- }
1544
- });
1545
- $__default['default'].extend($__default['default'].fn.bootstrapTable.defaults, $__default['default'].fn.bootstrapTable.locales);
1546
- var BootstrapTable = $__default['default'].fn.bootstrapTable.Constructor;
1547
- var _initToolbar = BootstrapTable.prototype.initToolbar;
1548
- var _destroy = BootstrapTable.prototype.destroy;
1549
-
1550
- BootstrapTable.prototype.initToolbar = function () {
1551
- var _this = this;
1552
-
1553
- this.showToolbar = this.showToolbar || this.options.showMultiSort;
1554
- var that = this;
1555
- var sortModalSelector = "sortModal_".concat(this.$el.attr('id'));
1556
- var sortModalId = "#".concat(sortModalSelector);
1557
- var $multiSortBtn = this.$toolbar.find('div.multi-sort');
1558
- var o = this.options;
1559
- this.$sortModal = $__default['default'](sortModalId);
1560
- this.sortModalSelector = sortModalSelector;
1561
-
1562
- if (that.options.sortPriority !== null) {
1563
- that.onMultipleSort();
1564
- }
1565
-
1566
- if (this.options.showMultiSortButton) {
1567
- this.buttons = Object.assign(this.buttons, {
1568
- multipleSort: {
1569
- html: Utils.sprintf(theme.html.multipleSortButton, that.sortModalSelector, this.options.formatMultipleSort(), Utils.sprintf(that.constants.html.icon, o.iconsPrefix, o.icons.sort))
1570
- }
1571
- });
1572
- }
1573
-
1574
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1575
- args[_key] = arguments[_key];
1576
- }
1577
-
1578
- _initToolbar.apply(this, Array.prototype.slice.apply(args));
1579
-
1580
- if (that.options.sidePagination === 'server' && !isSingleSort && that.options.sortPriority !== null) {
1581
- var t = that.options.queryParams;
1582
-
1583
- that.options.queryParams = function (params) {
1584
- params.multiSort = that.options.sortPriority;
1585
- return t(params);
1586
- };
1587
- }
1588
-
1589
- if (this.options.showMultiSort) {
1590
- if (!$multiSortBtn.length && this.options.showMultiSortButton) {
1591
- if ($__default['default'].fn.bootstrapTable.theme === 'semantic') {
1592
- this.$toolbar.find('.multi-sort').on('click', function () {
1593
- $__default['default'](sortModalId).modal('show');
1594
- });
1595
- } else if ($__default['default'].fn.bootstrapTable.theme === 'materialize') {
1596
- this.$toolbar.find('.multi-sort').on('click', function () {
1597
- $__default['default'](sortModalId).modal();
1598
- });
1599
- } else if ($__default['default'].fn.bootstrapTable.theme === 'bootstrap-table') {
1600
- this.$toolbar.find('.multi-sort').on('click', function () {
1601
- $__default['default'](sortModalId).addClass('show');
1602
- });
1603
- } else if ($__default['default'].fn.bootstrapTable.theme === 'foundation') {
1604
- this.$toolbar.find('.multi-sort').on('click', function () {
1605
- if (!_this.foundationModal) {
1606
- // eslint-disable-next-line no-undef
1607
- _this.foundationModal = new Foundation.Reveal($__default['default'](sortModalId));
1608
- }
1609
-
1610
- _this.foundationModal.open();
1611
- });
1612
- } else if ($__default['default'].fn.bootstrapTable.theme === 'bulma') {
1613
- this.$toolbar.find('.multi-sort').on('click', function () {
1614
- $__default['default']('html').toggleClass('is-clipped');
1615
- $__default['default'](sortModalId).toggleClass('is-active');
1616
- $__default['default']('button[data-close]').one('click', function () {
1617
- $__default['default']('html').toggleClass('is-clipped');
1618
- $__default['default'](sortModalId).toggleClass('is-active');
1619
- });
1620
- });
1621
- }
1622
-
1623
- showSortModal(that);
1624
- }
1625
-
1626
- this.$el.on('sort.bs.table', function () {
1627
- isSingleSort = true;
1628
- });
1629
- this.$el.on('multiple-sort.bs.table', function () {
1630
- isSingleSort = false;
1631
- });
1632
- this.$el.on('load-success.bs.table', function () {
1633
- if (!isSingleSort && that.options.sortPriority !== null && _typeof(that.options.sortPriority) === 'object' && that.options.sidePagination !== 'server') {
1634
- that.onMultipleSort();
1635
- }
1636
- });
1637
- this.$el.on('column-switch.bs.table', function (field, checked) {
1638
- for (var i = 0; i < that.options.sortPriority.length; i++) {
1639
- if (that.options.sortPriority[i].sortName === checked) {
1640
- that.options.sortPriority.splice(i, 1);
1641
- }
1642
- }
1643
-
1644
- that.assignSortableArrows();
1645
- that.$sortModal.remove();
1646
- showSortModal(that);
1647
- });
1648
- this.$el.on('reset-view.bs.table', function () {
1649
- if (!isSingleSort && that.options.sortPriority !== null && _typeof(that.options.sortPriority) === 'object') {
1650
- that.assignSortableArrows();
1651
- }
1652
- });
1653
- }
1654
- };
1655
-
1656
- BootstrapTable.prototype.destroy = function () {
1657
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
1658
- args[_key2] = arguments[_key2];
1659
- }
1660
-
1661
- _destroy.apply(this, Array.prototype.slice.apply(args));
1662
-
1663
- if (this.options.showMultiSort) {
1664
- this.enableCustomSort = false;
1665
- this.$sortModal.remove();
1666
- }
1667
- };
1668
-
1669
- BootstrapTable.prototype.multipleSort = function () {
1670
- var that = this;
1671
-
1672
- if (!isSingleSort && that.options.sortPriority !== null && _typeof(that.options.sortPriority) === 'object' && that.options.sidePagination !== 'server') {
1673
- that.onMultipleSort();
1674
- }
1675
- };
1676
-
1677
- BootstrapTable.prototype.onMultipleSort = function () {
1678
- var that = this;
1679
-
1680
- var cmp = function cmp(x, y) {
1681
- return x > y ? 1 : x < y ? -1 : 0;
1682
- };
1683
-
1684
- var arrayCmp = function arrayCmp(a, b) {
1685
- var arr1 = [];
1686
- var arr2 = [];
1687
-
1688
- for (var i = 0; i < that.options.sortPriority.length; i++) {
1689
- var fieldName = that.options.sortPriority[i].sortName;
1690
- var fieldIndex = that.header.fields.indexOf(fieldName);
1691
- var sorterName = that.header.sorters[that.header.fields.indexOf(fieldName)];
1692
-
1693
- if (that.header.sortNames[fieldIndex]) {
1694
- fieldName = that.header.sortNames[fieldIndex];
1695
- }
1696
-
1697
- var order = that.options.sortPriority[i].sortOrder === 'desc' ? -1 : 1;
1698
- var aa = Utils.getItemField(a, fieldName);
1699
- var bb = Utils.getItemField(b, fieldName);
1700
- var value1 = $__default['default'].fn.bootstrapTable.utils.calculateObjectValue(that.header, sorterName, [aa, bb]);
1701
- var value2 = $__default['default'].fn.bootstrapTable.utils.calculateObjectValue(that.header, sorterName, [bb, aa]);
1702
-
1703
- if (value1 !== undefined && value2 !== undefined) {
1704
- arr1.push(order * value1);
1705
- arr2.push(order * value2);
1706
- continue;
1707
- }
1708
-
1709
- if (aa === undefined || aa === null) aa = '';
1710
- if (bb === undefined || bb === null) bb = '';
1711
-
1712
- if ($__default['default'].isNumeric(aa) && $__default['default'].isNumeric(bb)) {
1713
- aa = parseFloat(aa);
1714
- bb = parseFloat(bb);
1715
- } else {
1716
- aa = aa.toString();
1717
- bb = bb.toString();
1718
-
1719
- if (that.options.multiSortStrictSort) {
1720
- aa = aa.toLowerCase();
1721
- bb = bb.toLowerCase();
1722
- }
1723
- }
1724
-
1725
- arr1.push(order * cmp(aa, bb));
1726
- arr2.push(order * cmp(bb, aa));
1727
- }
1728
-
1729
- return cmp(arr1, arr2);
1730
- };
1731
-
1732
- this.enableCustomSort = true;
1733
- this.data.sort(function (a, b) {
1734
- return arrayCmp(a, b);
1735
- });
1736
- this.initBody();
1737
- this.assignSortableArrows();
1738
- this.trigger('multiple-sort');
1739
- };
1740
-
1741
- BootstrapTable.prototype.addLevel = function (index, sortPriority) {
1742
- var text = index === 0 ? this.options.formatSortBy() : this.options.formatThenBy();
1743
- this.$sortModal.find('tbody').append($__default['default']('<tr>').append($__default['default']('<td>').text(text)).append($__default['default']('<td>').append($__default['default'](Utils.sprintf(theme.html.multipleSortSelect, this.constants.classes.paginationDropdown, 'multi-sort-name')))).append($__default['default']('<td>').append($__default['default'](Utils.sprintf(theme.html.multipleSortSelect, this.constants.classes.paginationDropdown, 'multi-sort-order')))));
1744
- var $multiSortName = this.$sortModal.find('.multi-sort-name').last();
1745
- var $multiSortOrder = this.$sortModal.find('.multi-sort-order').last();
1746
- $__default['default'].each(this.columns, function (i, column) {
1747
- if (column.sortable === false || column.visible === false) {
1748
- return true;
1749
- }
1750
-
1751
- $multiSortName.append("<option value=\"".concat(column.field, "\">").concat(column.title, "</option>"));
1752
- });
1753
- $__default['default'].each(this.options.formatSortOrders(), function (value, order) {
1754
- $multiSortOrder.append("<option value=\"".concat(value, "\">").concat(order, "</option>"));
1755
- });
1756
-
1757
- if (sortPriority !== undefined) {
1758
- $multiSortName.find("option[value=\"".concat(sortPriority.sortName, "\"]")).attr('selected', true);
1759
- $multiSortOrder.find("option[value=\"".concat(sortPriority.sortOrder, "\"]")).attr('selected', true);
1760
- }
1761
- };
1762
-
1763
- BootstrapTable.prototype.assignSortableArrows = function () {
1764
- var that = this;
1765
- var headers = that.$header.find('th');
1766
-
1767
- for (var i = 0; i < headers.length; i++) {
1768
- for (var c = 0; c < that.options.sortPriority.length; c++) {
1769
- if ($__default['default'](headers[i]).data('field') === that.options.sortPriority[c].sortName) {
1770
- $__default['default'](headers[i]).find('.sortable').removeClass('desc asc').addClass(that.options.sortPriority[c].sortOrder);
1771
- }
1772
- }
1773
- }
1774
- };
1775
-
1776
- BootstrapTable.prototype.setButtonStates = function () {
1777
- var total = this.$sortModal.find('.multi-sort-name:first option').length;
1778
- var current = this.$sortModal.find('tbody tr').length;
1779
-
1780
- if (current === total) {
1781
- this.$sortModal.find('#add').attr('disabled', 'disabled');
1782
- }
1783
-
1784
- if (current > 1) {
1785
- this.$sortModal.find('#delete').removeAttr('disabled');
1786
- }
1787
-
1788
- if (current < total) {
1789
- this.$sortModal.find('#add').removeAttr('disabled');
1790
- }
1791
-
1792
- if (current === 1) {
1793
- this.$sortModal.find('#delete').attr('disabled', 'disabled');
1794
- }
1795
- };
1796
-
1797
- BootstrapTable.prototype.multiSort = function (sortPriority) {
1798
- var _this2 = this;
1799
-
1800
- this.options.sortPriority = sortPriority;
1801
- this.options.sortName = undefined;
1802
-
1803
- if (this.options.sidePagination === 'server') {
1804
- var queryParams = this.options.queryParams;
1805
-
1806
- this.options.queryParams = function (params) {
1807
- params.multiSort = _this2.options.sortPriority;
1808
- return $__default['default'].fn.bootstrapTable.utils.calculateObjectValue(_this2.options, queryParams, [params]);
1809
- };
1810
-
1811
- isSingleSort = false;
1812
- this.initServer(this.options.silentSort);
1813
- return;
1814
- }
1815
-
1816
- this.onMultipleSort();
1817
- };
7
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
+
9
+ var $__default = /*#__PURE__*/_interopDefaultLegacy($);
10
+
11
+ function _typeof(obj) {
12
+ "@babel/helpers - typeof";
13
+
14
+ if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
15
+ _typeof = function (obj) {
16
+ return typeof obj;
17
+ };
18
+ } else {
19
+ _typeof = function (obj) {
20
+ return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
21
+ };
22
+ }
23
+
24
+ return _typeof(obj);
25
+ }
26
+
27
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
28
+
29
+ function createCommonjsModule(fn, module) {
30
+ return module = { exports: {} }, fn(module, module.exports), module.exports;
31
+ }
32
+
33
+ var check = function (it) {
34
+ return it && it.Math == Math && it;
35
+ };
36
+
37
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
38
+ var global_1 =
39
+ /* global globalThis -- safe */
40
+ check(typeof globalThis == 'object' && globalThis) ||
41
+ check(typeof window == 'object' && window) ||
42
+ check(typeof self == 'object' && self) ||
43
+ check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
44
+ // eslint-disable-next-line no-new-func -- fallback
45
+ (function () { return this; })() || Function('return this')();
46
+
47
+ var fails = function (exec) {
48
+ try {
49
+ return !!exec();
50
+ } catch (error) {
51
+ return true;
52
+ }
53
+ };
54
+
55
+ // Detect IE8's incomplete defineProperty implementation
56
+ var descriptors = !fails(function () {
57
+ return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
58
+ });
59
+
60
+ var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
61
+ var getOwnPropertyDescriptor$1 = Object.getOwnPropertyDescriptor;
62
+
63
+ // Nashorn ~ JDK8 bug
64
+ var NASHORN_BUG = getOwnPropertyDescriptor$1 && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
65
+
66
+ // `Object.prototype.propertyIsEnumerable` method implementation
67
+ // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
68
+ var f$4 = NASHORN_BUG ? function propertyIsEnumerable(V) {
69
+ var descriptor = getOwnPropertyDescriptor$1(this, V);
70
+ return !!descriptor && descriptor.enumerable;
71
+ } : nativePropertyIsEnumerable;
72
+
73
+ var objectPropertyIsEnumerable = {
74
+ f: f$4
75
+ };
76
+
77
+ var createPropertyDescriptor = function (bitmap, value) {
78
+ return {
79
+ enumerable: !(bitmap & 1),
80
+ configurable: !(bitmap & 2),
81
+ writable: !(bitmap & 4),
82
+ value: value
83
+ };
84
+ };
85
+
86
+ var toString = {}.toString;
87
+
88
+ var classofRaw = function (it) {
89
+ return toString.call(it).slice(8, -1);
90
+ };
91
+
92
+ var split = ''.split;
93
+
94
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
95
+ var indexedObject = fails(function () {
96
+ // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
97
+ // eslint-disable-next-line no-prototype-builtins -- safe
98
+ return !Object('z').propertyIsEnumerable(0);
99
+ }) ? function (it) {
100
+ return classofRaw(it) == 'String' ? split.call(it, '') : Object(it);
101
+ } : Object;
102
+
103
+ // `RequireObjectCoercible` abstract operation
104
+ // https://tc39.es/ecma262/#sec-requireobjectcoercible
105
+ var requireObjectCoercible = function (it) {
106
+ if (it == undefined) throw TypeError("Can't call method on " + it);
107
+ return it;
108
+ };
109
+
110
+ // toObject with fallback for non-array-like ES3 strings
111
+
112
+
113
+
114
+ var toIndexedObject = function (it) {
115
+ return indexedObject(requireObjectCoercible(it));
116
+ };
117
+
118
+ var isObject = function (it) {
119
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
120
+ };
121
+
122
+ // `ToPrimitive` abstract operation
123
+ // https://tc39.es/ecma262/#sec-toprimitive
124
+ // instead of the ES6 spec version, we didn't implement @@toPrimitive case
125
+ // and the second argument - flag - preferred type is a string
126
+ var toPrimitive = function (input, PREFERRED_STRING) {
127
+ if (!isObject(input)) return input;
128
+ var fn, val;
129
+ if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
130
+ if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
131
+ if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
132
+ throw TypeError("Can't convert object to primitive value");
133
+ };
134
+
135
+ var hasOwnProperty = {}.hasOwnProperty;
136
+
137
+ var has$1 = function (it, key) {
138
+ return hasOwnProperty.call(it, key);
139
+ };
140
+
141
+ var document$1 = global_1.document;
142
+ // typeof document.createElement is 'object' in old IE
143
+ var EXISTS = isObject(document$1) && isObject(document$1.createElement);
144
+
145
+ var documentCreateElement = function (it) {
146
+ return EXISTS ? document$1.createElement(it) : {};
147
+ };
148
+
149
+ // Thank's IE8 for his funny defineProperty
150
+ var ie8DomDefine = !descriptors && !fails(function () {
151
+ return Object.defineProperty(documentCreateElement('div'), 'a', {
152
+ get: function () { return 7; }
153
+ }).a != 7;
154
+ });
155
+
156
+ var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
157
+
158
+ // `Object.getOwnPropertyDescriptor` method
159
+ // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
160
+ var f$3 = descriptors ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
161
+ O = toIndexedObject(O);
162
+ P = toPrimitive(P, true);
163
+ if (ie8DomDefine) try {
164
+ return nativeGetOwnPropertyDescriptor(O, P);
165
+ } catch (error) { /* empty */ }
166
+ if (has$1(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]);
167
+ };
168
+
169
+ var objectGetOwnPropertyDescriptor = {
170
+ f: f$3
171
+ };
172
+
173
+ var anObject = function (it) {
174
+ if (!isObject(it)) {
175
+ throw TypeError(String(it) + ' is not an object');
176
+ } return it;
177
+ };
178
+
179
+ var nativeDefineProperty = Object.defineProperty;
180
+
181
+ // `Object.defineProperty` method
182
+ // https://tc39.es/ecma262/#sec-object.defineproperty
183
+ var f$2 = descriptors ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
184
+ anObject(O);
185
+ P = toPrimitive(P, true);
186
+ anObject(Attributes);
187
+ if (ie8DomDefine) try {
188
+ return nativeDefineProperty(O, P, Attributes);
189
+ } catch (error) { /* empty */ }
190
+ if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
191
+ if ('value' in Attributes) O[P] = Attributes.value;
192
+ return O;
193
+ };
194
+
195
+ var objectDefineProperty = {
196
+ f: f$2
197
+ };
198
+
199
+ var createNonEnumerableProperty = descriptors ? function (object, key, value) {
200
+ return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value));
201
+ } : function (object, key, value) {
202
+ object[key] = value;
203
+ return object;
204
+ };
205
+
206
+ var setGlobal = function (key, value) {
207
+ try {
208
+ createNonEnumerableProperty(global_1, key, value);
209
+ } catch (error) {
210
+ global_1[key] = value;
211
+ } return value;
212
+ };
213
+
214
+ var SHARED = '__core-js_shared__';
215
+ var store$1 = global_1[SHARED] || setGlobal(SHARED, {});
216
+
217
+ var sharedStore = store$1;
218
+
219
+ var functionToString = Function.toString;
220
+
221
+ // this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper
222
+ if (typeof sharedStore.inspectSource != 'function') {
223
+ sharedStore.inspectSource = function (it) {
224
+ return functionToString.call(it);
225
+ };
226
+ }
227
+
228
+ var inspectSource = sharedStore.inspectSource;
229
+
230
+ var WeakMap$1 = global_1.WeakMap;
231
+
232
+ var nativeWeakMap = typeof WeakMap$1 === 'function' && /native code/.test(inspectSource(WeakMap$1));
233
+
234
+ var shared = createCommonjsModule(function (module) {
235
+ (module.exports = function (key, value) {
236
+ return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {});
237
+ })('versions', []).push({
238
+ version: '3.9.1',
239
+ mode: 'global',
240
+ copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
241
+ });
242
+ });
243
+
244
+ var id = 0;
245
+ var postfix = Math.random();
246
+
247
+ var uid = function (key) {
248
+ return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
249
+ };
250
+
251
+ var keys = shared('keys');
252
+
253
+ var sharedKey = function (key) {
254
+ return keys[key] || (keys[key] = uid(key));
255
+ };
256
+
257
+ var hiddenKeys$1 = {};
258
+
259
+ var WeakMap = global_1.WeakMap;
260
+ var set, get, has;
261
+
262
+ var enforce = function (it) {
263
+ return has(it) ? get(it) : set(it, {});
264
+ };
265
+
266
+ var getterFor = function (TYPE) {
267
+ return function (it) {
268
+ var state;
269
+ if (!isObject(it) || (state = get(it)).type !== TYPE) {
270
+ throw TypeError('Incompatible receiver, ' + TYPE + ' required');
271
+ } return state;
272
+ };
273
+ };
274
+
275
+ if (nativeWeakMap) {
276
+ var store = sharedStore.state || (sharedStore.state = new WeakMap());
277
+ var wmget = store.get;
278
+ var wmhas = store.has;
279
+ var wmset = store.set;
280
+ set = function (it, metadata) {
281
+ metadata.facade = it;
282
+ wmset.call(store, it, metadata);
283
+ return metadata;
284
+ };
285
+ get = function (it) {
286
+ return wmget.call(store, it) || {};
287
+ };
288
+ has = function (it) {
289
+ return wmhas.call(store, it);
290
+ };
291
+ } else {
292
+ var STATE = sharedKey('state');
293
+ hiddenKeys$1[STATE] = true;
294
+ set = function (it, metadata) {
295
+ metadata.facade = it;
296
+ createNonEnumerableProperty(it, STATE, metadata);
297
+ return metadata;
298
+ };
299
+ get = function (it) {
300
+ return has$1(it, STATE) ? it[STATE] : {};
301
+ };
302
+ has = function (it) {
303
+ return has$1(it, STATE);
304
+ };
305
+ }
306
+
307
+ var internalState = {
308
+ set: set,
309
+ get: get,
310
+ has: has,
311
+ enforce: enforce,
312
+ getterFor: getterFor
313
+ };
314
+
315
+ var redefine = createCommonjsModule(function (module) {
316
+ var getInternalState = internalState.get;
317
+ var enforceInternalState = internalState.enforce;
318
+ var TEMPLATE = String(String).split('String');
319
+
320
+ (module.exports = function (O, key, value, options) {
321
+ var unsafe = options ? !!options.unsafe : false;
322
+ var simple = options ? !!options.enumerable : false;
323
+ var noTargetGet = options ? !!options.noTargetGet : false;
324
+ var state;
325
+ if (typeof value == 'function') {
326
+ if (typeof key == 'string' && !has$1(value, 'name')) {
327
+ createNonEnumerableProperty(value, 'name', key);
328
+ }
329
+ state = enforceInternalState(value);
330
+ if (!state.source) {
331
+ state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
332
+ }
333
+ }
334
+ if (O === global_1) {
335
+ if (simple) O[key] = value;
336
+ else setGlobal(key, value);
337
+ return;
338
+ } else if (!unsafe) {
339
+ delete O[key];
340
+ } else if (!noTargetGet && O[key]) {
341
+ simple = true;
342
+ }
343
+ if (simple) O[key] = value;
344
+ else createNonEnumerableProperty(O, key, value);
345
+ // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
346
+ })(Function.prototype, 'toString', function toString() {
347
+ return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
348
+ });
349
+ });
350
+
351
+ var path = global_1;
352
+
353
+ var aFunction$1 = function (variable) {
354
+ return typeof variable == 'function' ? variable : undefined;
355
+ };
356
+
357
+ var getBuiltIn = function (namespace, method) {
358
+ return arguments.length < 2 ? aFunction$1(path[namespace]) || aFunction$1(global_1[namespace])
359
+ : path[namespace] && path[namespace][method] || global_1[namespace] && global_1[namespace][method];
360
+ };
361
+
362
+ var ceil = Math.ceil;
363
+ var floor = Math.floor;
364
+
365
+ // `ToInteger` abstract operation
366
+ // https://tc39.es/ecma262/#sec-tointeger
367
+ var toInteger = function (argument) {
368
+ return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
369
+ };
370
+
371
+ var min$2 = Math.min;
372
+
373
+ // `ToLength` abstract operation
374
+ // https://tc39.es/ecma262/#sec-tolength
375
+ var toLength = function (argument) {
376
+ return argument > 0 ? min$2(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
377
+ };
378
+
379
+ var max$2 = Math.max;
380
+ var min$1 = Math.min;
381
+
382
+ // Helper for a popular repeating case of the spec:
383
+ // Let integer be ? ToInteger(index).
384
+ // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
385
+ var toAbsoluteIndex = function (index, length) {
386
+ var integer = toInteger(index);
387
+ return integer < 0 ? max$2(integer + length, 0) : min$1(integer, length);
388
+ };
389
+
390
+ // `Array.prototype.{ indexOf, includes }` methods implementation
391
+ var createMethod$2 = function (IS_INCLUDES) {
392
+ return function ($this, el, fromIndex) {
393
+ var O = toIndexedObject($this);
394
+ var length = toLength(O.length);
395
+ var index = toAbsoluteIndex(fromIndex, length);
396
+ var value;
397
+ // Array#includes uses SameValueZero equality algorithm
398
+ // eslint-disable-next-line no-self-compare -- NaN check
399
+ if (IS_INCLUDES && el != el) while (length > index) {
400
+ value = O[index++];
401
+ // eslint-disable-next-line no-self-compare -- NaN check
402
+ if (value != value) return true;
403
+ // Array#indexOf ignores holes, Array#includes - not
404
+ } else for (;length > index; index++) {
405
+ if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
406
+ } return !IS_INCLUDES && -1;
407
+ };
408
+ };
409
+
410
+ var arrayIncludes = {
411
+ // `Array.prototype.includes` method
412
+ // https://tc39.es/ecma262/#sec-array.prototype.includes
413
+ includes: createMethod$2(true),
414
+ // `Array.prototype.indexOf` method
415
+ // https://tc39.es/ecma262/#sec-array.prototype.indexof
416
+ indexOf: createMethod$2(false)
417
+ };
418
+
419
+ var indexOf = arrayIncludes.indexOf;
420
+
421
+
422
+ var objectKeysInternal = function (object, names) {
423
+ var O = toIndexedObject(object);
424
+ var i = 0;
425
+ var result = [];
426
+ var key;
427
+ for (key in O) !has$1(hiddenKeys$1, key) && has$1(O, key) && result.push(key);
428
+ // Don't enum bug & hidden keys
429
+ while (names.length > i) if (has$1(O, key = names[i++])) {
430
+ ~indexOf(result, key) || result.push(key);
431
+ }
432
+ return result;
433
+ };
434
+
435
+ // IE8- don't enum bug keys
436
+ var enumBugKeys = [
437
+ 'constructor',
438
+ 'hasOwnProperty',
439
+ 'isPrototypeOf',
440
+ 'propertyIsEnumerable',
441
+ 'toLocaleString',
442
+ 'toString',
443
+ 'valueOf'
444
+ ];
445
+
446
+ var hiddenKeys = enumBugKeys.concat('length', 'prototype');
447
+
448
+ // `Object.getOwnPropertyNames` method
449
+ // https://tc39.es/ecma262/#sec-object.getownpropertynames
450
+ var f$1 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
451
+ return objectKeysInternal(O, hiddenKeys);
452
+ };
453
+
454
+ var objectGetOwnPropertyNames = {
455
+ f: f$1
456
+ };
457
+
458
+ var f = Object.getOwnPropertySymbols;
459
+
460
+ var objectGetOwnPropertySymbols = {
461
+ f: f
462
+ };
463
+
464
+ // all object keys, includes non-enumerable and symbols
465
+ var ownKeys = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
466
+ var keys = objectGetOwnPropertyNames.f(anObject(it));
467
+ var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
468
+ return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
469
+ };
470
+
471
+ var copyConstructorProperties = function (target, source) {
472
+ var keys = ownKeys(source);
473
+ var defineProperty = objectDefineProperty.f;
474
+ var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
475
+ for (var i = 0; i < keys.length; i++) {
476
+ var key = keys[i];
477
+ if (!has$1(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
478
+ }
479
+ };
480
+
481
+ var replacement = /#|\.prototype\./;
482
+
483
+ var isForced = function (feature, detection) {
484
+ var value = data[normalize(feature)];
485
+ return value == POLYFILL ? true
486
+ : value == NATIVE ? false
487
+ : typeof detection == 'function' ? fails(detection)
488
+ : !!detection;
489
+ };
490
+
491
+ var normalize = isForced.normalize = function (string) {
492
+ return String(string).replace(replacement, '.').toLowerCase();
493
+ };
494
+
495
+ var data = isForced.data = {};
496
+ var NATIVE = isForced.NATIVE = 'N';
497
+ var POLYFILL = isForced.POLYFILL = 'P';
498
+
499
+ var isForced_1 = isForced;
500
+
501
+ var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f;
502
+
503
+
504
+
505
+
506
+
507
+
508
+ /*
509
+ options.target - name of the target object
510
+ options.global - target is the global object
511
+ options.stat - export as static methods of target
512
+ options.proto - export as prototype methods of target
513
+ options.real - real prototype method for the `pure` version
514
+ options.forced - export even if the native feature is available
515
+ options.bind - bind methods to the target, required for the `pure` version
516
+ options.wrap - wrap constructors to preventing global pollution, required for the `pure` version
517
+ options.unsafe - use the simple assignment of property instead of delete + defineProperty
518
+ options.sham - add a flag to not completely full polyfills
519
+ options.enumerable - export as enumerable property
520
+ options.noTargetGet - prevent calling a getter on target
521
+ */
522
+ var _export = function (options, source) {
523
+ var TARGET = options.target;
524
+ var GLOBAL = options.global;
525
+ var STATIC = options.stat;
526
+ var FORCED, target, key, targetProperty, sourceProperty, descriptor;
527
+ if (GLOBAL) {
528
+ target = global_1;
529
+ } else if (STATIC) {
530
+ target = global_1[TARGET] || setGlobal(TARGET, {});
531
+ } else {
532
+ target = (global_1[TARGET] || {}).prototype;
533
+ }
534
+ if (target) for (key in source) {
535
+ sourceProperty = source[key];
536
+ if (options.noTargetGet) {
537
+ descriptor = getOwnPropertyDescriptor(target, key);
538
+ targetProperty = descriptor && descriptor.value;
539
+ } else targetProperty = target[key];
540
+ FORCED = isForced_1(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
541
+ // contained in target
542
+ if (!FORCED && targetProperty !== undefined) {
543
+ if (typeof sourceProperty === typeof targetProperty) continue;
544
+ copyConstructorProperties(sourceProperty, targetProperty);
545
+ }
546
+ // add a flag to not completely full polyfills
547
+ if (options.sham || (targetProperty && targetProperty.sham)) {
548
+ createNonEnumerableProperty(sourceProperty, 'sham', true);
549
+ }
550
+ // extend global
551
+ redefine(target, key, sourceProperty, options);
552
+ }
553
+ };
554
+
555
+ var aFunction = function (it) {
556
+ if (typeof it != 'function') {
557
+ throw TypeError(String(it) + ' is not a function');
558
+ } return it;
559
+ };
560
+
561
+ // optional / simple context binding
562
+ var functionBindContext = function (fn, that, length) {
563
+ aFunction(fn);
564
+ if (that === undefined) return fn;
565
+ switch (length) {
566
+ case 0: return function () {
567
+ return fn.call(that);
568
+ };
569
+ case 1: return function (a) {
570
+ return fn.call(that, a);
571
+ };
572
+ case 2: return function (a, b) {
573
+ return fn.call(that, a, b);
574
+ };
575
+ case 3: return function (a, b, c) {
576
+ return fn.call(that, a, b, c);
577
+ };
578
+ }
579
+ return function (/* ...args */) {
580
+ return fn.apply(that, arguments);
581
+ };
582
+ };
583
+
584
+ // `ToObject` abstract operation
585
+ // https://tc39.es/ecma262/#sec-toobject
586
+ var toObject = function (argument) {
587
+ return Object(requireObjectCoercible(argument));
588
+ };
589
+
590
+ // `IsArray` abstract operation
591
+ // https://tc39.es/ecma262/#sec-isarray
592
+ var isArray = Array.isArray || function isArray(arg) {
593
+ return classofRaw(arg) == 'Array';
594
+ };
595
+
596
+ var engineIsNode = classofRaw(global_1.process) == 'process';
597
+
598
+ var engineUserAgent = getBuiltIn('navigator', 'userAgent') || '';
599
+
600
+ var process = global_1.process;
601
+ var versions = process && process.versions;
602
+ var v8 = versions && versions.v8;
603
+ var match, version;
604
+
605
+ if (v8) {
606
+ match = v8.split('.');
607
+ version = match[0] + match[1];
608
+ } else if (engineUserAgent) {
609
+ match = engineUserAgent.match(/Edge\/(\d+)/);
610
+ if (!match || match[1] >= 74) {
611
+ match = engineUserAgent.match(/Chrome\/(\d+)/);
612
+ if (match) version = match[1];
613
+ }
614
+ }
615
+
616
+ var engineV8Version = version && +version;
617
+
618
+ var nativeSymbol = !!Object.getOwnPropertySymbols && !fails(function () {
619
+ /* global Symbol -- required for testing */
620
+ return !Symbol.sham &&
621
+ // Chrome 38 Symbol has incorrect toString conversion
622
+ // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
623
+ (engineIsNode ? engineV8Version === 38 : engineV8Version > 37 && engineV8Version < 41);
624
+ });
625
+
626
+ var useSymbolAsUid = nativeSymbol
627
+ /* global Symbol -- safe */
628
+ && !Symbol.sham
629
+ && typeof Symbol.iterator == 'symbol';
630
+
631
+ var WellKnownSymbolsStore = shared('wks');
632
+ var Symbol$1 = global_1.Symbol;
633
+ var createWellKnownSymbol = useSymbolAsUid ? Symbol$1 : Symbol$1 && Symbol$1.withoutSetter || uid;
634
+
635
+ var wellKnownSymbol = function (name) {
636
+ if (!has$1(WellKnownSymbolsStore, name) || !(nativeSymbol || typeof WellKnownSymbolsStore[name] == 'string')) {
637
+ if (nativeSymbol && has$1(Symbol$1, name)) {
638
+ WellKnownSymbolsStore[name] = Symbol$1[name];
639
+ } else {
640
+ WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
641
+ }
642
+ } return WellKnownSymbolsStore[name];
643
+ };
644
+
645
+ var SPECIES$2 = wellKnownSymbol('species');
646
+
647
+ // `ArraySpeciesCreate` abstract operation
648
+ // https://tc39.es/ecma262/#sec-arrayspeciescreate
649
+ var arraySpeciesCreate = function (originalArray, length) {
650
+ var C;
651
+ if (isArray(originalArray)) {
652
+ C = originalArray.constructor;
653
+ // cross-realm fallback
654
+ if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
655
+ else if (isObject(C)) {
656
+ C = C[SPECIES$2];
657
+ if (C === null) C = undefined;
658
+ }
659
+ } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
660
+ };
661
+
662
+ var push = [].push;
663
+
664
+ // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
665
+ var createMethod$1 = function (TYPE) {
666
+ var IS_MAP = TYPE == 1;
667
+ var IS_FILTER = TYPE == 2;
668
+ var IS_SOME = TYPE == 3;
669
+ var IS_EVERY = TYPE == 4;
670
+ var IS_FIND_INDEX = TYPE == 6;
671
+ var IS_FILTER_OUT = TYPE == 7;
672
+ var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
673
+ return function ($this, callbackfn, that, specificCreate) {
674
+ var O = toObject($this);
675
+ var self = indexedObject(O);
676
+ var boundFunction = functionBindContext(callbackfn, that, 3);
677
+ var length = toLength(self.length);
678
+ var index = 0;
679
+ var create = specificCreate || arraySpeciesCreate;
680
+ var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
681
+ var value, result;
682
+ for (;length > index; index++) if (NO_HOLES || index in self) {
683
+ value = self[index];
684
+ result = boundFunction(value, index, O);
685
+ if (TYPE) {
686
+ if (IS_MAP) target[index] = result; // map
687
+ else if (result) switch (TYPE) {
688
+ case 3: return true; // some
689
+ case 5: return value; // find
690
+ case 6: return index; // findIndex
691
+ case 2: push.call(target, value); // filter
692
+ } else switch (TYPE) {
693
+ case 4: return false; // every
694
+ case 7: push.call(target, value); // filterOut
695
+ }
696
+ }
697
+ }
698
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
699
+ };
700
+ };
701
+
702
+ var arrayIteration = {
703
+ // `Array.prototype.forEach` method
704
+ // https://tc39.es/ecma262/#sec-array.prototype.foreach
705
+ forEach: createMethod$1(0),
706
+ // `Array.prototype.map` method
707
+ // https://tc39.es/ecma262/#sec-array.prototype.map
708
+ map: createMethod$1(1),
709
+ // `Array.prototype.filter` method
710
+ // https://tc39.es/ecma262/#sec-array.prototype.filter
711
+ filter: createMethod$1(2),
712
+ // `Array.prototype.some` method
713
+ // https://tc39.es/ecma262/#sec-array.prototype.some
714
+ some: createMethod$1(3),
715
+ // `Array.prototype.every` method
716
+ // https://tc39.es/ecma262/#sec-array.prototype.every
717
+ every: createMethod$1(4),
718
+ // `Array.prototype.find` method
719
+ // https://tc39.es/ecma262/#sec-array.prototype.find
720
+ find: createMethod$1(5),
721
+ // `Array.prototype.findIndex` method
722
+ // https://tc39.es/ecma262/#sec-array.prototype.findIndex
723
+ findIndex: createMethod$1(6),
724
+ // `Array.prototype.filterOut` method
725
+ // https://github.com/tc39/proposal-array-filtering
726
+ filterOut: createMethod$1(7)
727
+ };
728
+
729
+ // `Object.keys` method
730
+ // https://tc39.es/ecma262/#sec-object.keys
731
+ var objectKeys = Object.keys || function keys(O) {
732
+ return objectKeysInternal(O, enumBugKeys);
733
+ };
734
+
735
+ // `Object.defineProperties` method
736
+ // https://tc39.es/ecma262/#sec-object.defineproperties
737
+ var objectDefineProperties = descriptors ? Object.defineProperties : function defineProperties(O, Properties) {
738
+ anObject(O);
739
+ var keys = objectKeys(Properties);
740
+ var length = keys.length;
741
+ var index = 0;
742
+ var key;
743
+ while (length > index) objectDefineProperty.f(O, key = keys[index++], Properties[key]);
744
+ return O;
745
+ };
746
+
747
+ var html = getBuiltIn('document', 'documentElement');
748
+
749
+ var GT = '>';
750
+ var LT = '<';
751
+ var PROTOTYPE = 'prototype';
752
+ var SCRIPT = 'script';
753
+ var IE_PROTO = sharedKey('IE_PROTO');
754
+
755
+ var EmptyConstructor = function () { /* empty */ };
756
+
757
+ var scriptTag = function (content) {
758
+ return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
759
+ };
760
+
761
+ // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
762
+ var NullProtoObjectViaActiveX = function (activeXDocument) {
763
+ activeXDocument.write(scriptTag(''));
764
+ activeXDocument.close();
765
+ var temp = activeXDocument.parentWindow.Object;
766
+ activeXDocument = null; // avoid memory leak
767
+ return temp;
768
+ };
769
+
770
+ // Create object with fake `null` prototype: use iframe Object with cleared prototype
771
+ var NullProtoObjectViaIFrame = function () {
772
+ // Thrash, waste and sodomy: IE GC bug
773
+ var iframe = documentCreateElement('iframe');
774
+ var JS = 'java' + SCRIPT + ':';
775
+ var iframeDocument;
776
+ iframe.style.display = 'none';
777
+ html.appendChild(iframe);
778
+ // https://github.com/zloirock/core-js/issues/475
779
+ iframe.src = String(JS);
780
+ iframeDocument = iframe.contentWindow.document;
781
+ iframeDocument.open();
782
+ iframeDocument.write(scriptTag('document.F=Object'));
783
+ iframeDocument.close();
784
+ return iframeDocument.F;
785
+ };
786
+
787
+ // Check for document.domain and active x support
788
+ // No need to use active x approach when document.domain is not set
789
+ // see https://github.com/es-shims/es5-shim/issues/150
790
+ // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
791
+ // avoid IE GC bug
792
+ var activeXDocument;
793
+ var NullProtoObject = function () {
794
+ try {
795
+ /* global ActiveXObject -- old IE */
796
+ activeXDocument = document.domain && new ActiveXObject('htmlfile');
797
+ } catch (error) { /* ignore */ }
798
+ NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
799
+ var length = enumBugKeys.length;
800
+ while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
801
+ return NullProtoObject();
802
+ };
803
+
804
+ hiddenKeys$1[IE_PROTO] = true;
805
+
806
+ // `Object.create` method
807
+ // https://tc39.es/ecma262/#sec-object.create
808
+ var objectCreate = Object.create || function create(O, Properties) {
809
+ var result;
810
+ if (O !== null) {
811
+ EmptyConstructor[PROTOTYPE] = anObject(O);
812
+ result = new EmptyConstructor();
813
+ EmptyConstructor[PROTOTYPE] = null;
814
+ // add "__proto__" for Object.getPrototypeOf polyfill
815
+ result[IE_PROTO] = O;
816
+ } else result = NullProtoObject();
817
+ return Properties === undefined ? result : objectDefineProperties(result, Properties);
818
+ };
819
+
820
+ var UNSCOPABLES = wellKnownSymbol('unscopables');
821
+ var ArrayPrototype = Array.prototype;
822
+
823
+ // Array.prototype[@@unscopables]
824
+ // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
825
+ if (ArrayPrototype[UNSCOPABLES] == undefined) {
826
+ objectDefineProperty.f(ArrayPrototype, UNSCOPABLES, {
827
+ configurable: true,
828
+ value: objectCreate(null)
829
+ });
830
+ }
831
+
832
+ // add a key to Array.prototype[@@unscopables]
833
+ var addToUnscopables = function (key) {
834
+ ArrayPrototype[UNSCOPABLES][key] = true;
835
+ };
836
+
837
+ var $find = arrayIteration.find;
838
+
839
+
840
+ var FIND = 'find';
841
+ var SKIPS_HOLES = true;
842
+
843
+ // Shouldn't skip holes
844
+ if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });
845
+
846
+ // `Array.prototype.find` method
847
+ // https://tc39.es/ecma262/#sec-array.prototype.find
848
+ _export({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {
849
+ find: function find(callbackfn /* , that = undefined */) {
850
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
851
+ }
852
+ });
853
+
854
+ // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
855
+ addToUnscopables(FIND);
856
+
857
+ var SPECIES$1 = wellKnownSymbol('species');
858
+
859
+ var arrayMethodHasSpeciesSupport = function (METHOD_NAME) {
860
+ // We can't use this feature detection in V8 since it causes
861
+ // deoptimization and serious performance degradation
862
+ // https://github.com/zloirock/core-js/issues/677
863
+ return engineV8Version >= 51 || !fails(function () {
864
+ var array = [];
865
+ var constructor = array.constructor = {};
866
+ constructor[SPECIES$1] = function () {
867
+ return { foo: 1 };
868
+ };
869
+ return array[METHOD_NAME](Boolean).foo !== 1;
870
+ });
871
+ };
872
+
873
+ var $map = arrayIteration.map;
874
+
875
+
876
+ var HAS_SPECIES_SUPPORT$2 = arrayMethodHasSpeciesSupport('map');
877
+
878
+ // `Array.prototype.map` method
879
+ // https://tc39.es/ecma262/#sec-array.prototype.map
880
+ // with adding support of @@species
881
+ _export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT$2 }, {
882
+ map: function map(callbackfn /* , thisArg */) {
883
+ return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
884
+ }
885
+ });
886
+
887
+ var arrayMethodIsStrict = function (METHOD_NAME, argument) {
888
+ var method = [][METHOD_NAME];
889
+ return !!method && fails(function () {
890
+ // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing
891
+ method.call(null, argument || function () { throw 1; }, 1);
892
+ });
893
+ };
894
+
895
+ var test$1 = [];
896
+ var nativeSort = test$1.sort;
897
+
898
+ // IE8-
899
+ var FAILS_ON_UNDEFINED = fails(function () {
900
+ test$1.sort(undefined);
901
+ });
902
+ // V8 bug
903
+ var FAILS_ON_NULL = fails(function () {
904
+ test$1.sort(null);
905
+ });
906
+ // Old WebKit
907
+ var STRICT_METHOD$1 = arrayMethodIsStrict('sort');
908
+
909
+ var FORCED$2 = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD$1;
910
+
911
+ // `Array.prototype.sort` method
912
+ // https://tc39.es/ecma262/#sec-array.prototype.sort
913
+ _export({ target: 'Array', proto: true, forced: FORCED$2 }, {
914
+ sort: function sort(comparefn) {
915
+ return comparefn === undefined
916
+ ? nativeSort.call(toObject(this))
917
+ : nativeSort.call(toObject(this), aFunction(comparefn));
918
+ }
919
+ });
920
+
921
+ var createProperty = function (object, key, value) {
922
+ var propertyKey = toPrimitive(key);
923
+ if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value));
924
+ else object[propertyKey] = value;
925
+ };
926
+
927
+ var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
928
+ var MAX_SAFE_INTEGER$1 = 0x1FFFFFFFFFFFFF;
929
+ var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
930
+
931
+ // We can't use this feature detection in V8 since it causes
932
+ // deoptimization and serious performance degradation
933
+ // https://github.com/zloirock/core-js/issues/679
934
+ var IS_CONCAT_SPREADABLE_SUPPORT = engineV8Version >= 51 || !fails(function () {
935
+ var array = [];
936
+ array[IS_CONCAT_SPREADABLE] = false;
937
+ return array.concat()[0] !== array;
938
+ });
939
+
940
+ var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
941
+
942
+ var isConcatSpreadable = function (O) {
943
+ if (!isObject(O)) return false;
944
+ var spreadable = O[IS_CONCAT_SPREADABLE];
945
+ return spreadable !== undefined ? !!spreadable : isArray(O);
946
+ };
947
+
948
+ var FORCED$1 = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
949
+
950
+ // `Array.prototype.concat` method
951
+ // https://tc39.es/ecma262/#sec-array.prototype.concat
952
+ // with adding support of @@isConcatSpreadable and @@species
953
+ _export({ target: 'Array', proto: true, forced: FORCED$1 }, {
954
+ // eslint-disable-next-line no-unused-vars -- required for `.length`
955
+ concat: function concat(arg) {
956
+ var O = toObject(this);
957
+ var A = arraySpeciesCreate(O, 0);
958
+ var n = 0;
959
+ var i, k, length, len, E;
960
+ for (i = -1, length = arguments.length; i < length; i++) {
961
+ E = i === -1 ? O : arguments[i];
962
+ if (isConcatSpreadable(E)) {
963
+ len = toLength(E.length);
964
+ if (n + len > MAX_SAFE_INTEGER$1) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
965
+ for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
966
+ } else {
967
+ if (n >= MAX_SAFE_INTEGER$1) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
968
+ createProperty(A, n++, E);
969
+ }
970
+ }
971
+ A.length = n;
972
+ return A;
973
+ }
974
+ });
975
+
976
+ var nativeAssign = Object.assign;
977
+ var defineProperty = Object.defineProperty;
978
+
979
+ // `Object.assign` method
980
+ // https://tc39.es/ecma262/#sec-object.assign
981
+ var objectAssign = !nativeAssign || fails(function () {
982
+ // should have correct order of operations (Edge bug)
983
+ if (descriptors && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {
984
+ enumerable: true,
985
+ get: function () {
986
+ defineProperty(this, 'b', {
987
+ value: 3,
988
+ enumerable: false
989
+ });
990
+ }
991
+ }), { b: 2 })).b !== 1) return true;
992
+ // should work with symbols and should have deterministic property order (V8 bug)
993
+ var A = {};
994
+ var B = {};
995
+ /* global Symbol -- required for testing */
996
+ var symbol = Symbol();
997
+ var alphabet = 'abcdefghijklmnopqrst';
998
+ A[symbol] = 7;
999
+ alphabet.split('').forEach(function (chr) { B[chr] = chr; });
1000
+ return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;
1001
+ }) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`
1002
+ var T = toObject(target);
1003
+ var argumentsLength = arguments.length;
1004
+ var index = 1;
1005
+ var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
1006
+ var propertyIsEnumerable = objectPropertyIsEnumerable.f;
1007
+ while (argumentsLength > index) {
1008
+ var S = indexedObject(arguments[index++]);
1009
+ var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);
1010
+ var length = keys.length;
1011
+ var j = 0;
1012
+ var key;
1013
+ while (length > j) {
1014
+ key = keys[j++];
1015
+ if (!descriptors || propertyIsEnumerable.call(S, key)) T[key] = S[key];
1016
+ }
1017
+ } return T;
1018
+ } : nativeAssign;
1019
+
1020
+ // `Object.assign` method
1021
+ // https://tc39.es/ecma262/#sec-object.assign
1022
+ _export({ target: 'Object', stat: true, forced: Object.assign !== objectAssign }, {
1023
+ assign: objectAssign
1024
+ });
1025
+
1026
+ var HAS_SPECIES_SUPPORT$1 = arrayMethodHasSpeciesSupport('slice');
1027
+
1028
+ var SPECIES = wellKnownSymbol('species');
1029
+ var nativeSlice = [].slice;
1030
+ var max$1 = Math.max;
1031
+
1032
+ // `Array.prototype.slice` method
1033
+ // https://tc39.es/ecma262/#sec-array.prototype.slice
1034
+ // fallback for not array-like ES3 strings and DOM objects
1035
+ _export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT$1 }, {
1036
+ slice: function slice(start, end) {
1037
+ var O = toIndexedObject(this);
1038
+ var length = toLength(O.length);
1039
+ var k = toAbsoluteIndex(start, length);
1040
+ var fin = toAbsoluteIndex(end === undefined ? length : end, length);
1041
+ // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible
1042
+ var Constructor, result, n;
1043
+ if (isArray(O)) {
1044
+ Constructor = O.constructor;
1045
+ // cross-realm fallback
1046
+ if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {
1047
+ Constructor = undefined;
1048
+ } else if (isObject(Constructor)) {
1049
+ Constructor = Constructor[SPECIES];
1050
+ if (Constructor === null) Constructor = undefined;
1051
+ }
1052
+ if (Constructor === Array || Constructor === undefined) {
1053
+ return nativeSlice.call(O, k, fin);
1054
+ }
1055
+ }
1056
+ result = new (Constructor === undefined ? Array : Constructor)(max$1(fin - k, 0));
1057
+ for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);
1058
+ result.length = n;
1059
+ return result;
1060
+ }
1061
+ });
1062
+
1063
+ var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');
1064
+
1065
+ var max = Math.max;
1066
+ var min = Math.min;
1067
+ var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
1068
+ var MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';
1069
+
1070
+ // `Array.prototype.splice` method
1071
+ // https://tc39.es/ecma262/#sec-array.prototype.splice
1072
+ // with adding support of @@species
1073
+ _export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
1074
+ splice: function splice(start, deleteCount /* , ...items */) {
1075
+ var O = toObject(this);
1076
+ var len = toLength(O.length);
1077
+ var actualStart = toAbsoluteIndex(start, len);
1078
+ var argumentsLength = arguments.length;
1079
+ var insertCount, actualDeleteCount, A, k, from, to;
1080
+ if (argumentsLength === 0) {
1081
+ insertCount = actualDeleteCount = 0;
1082
+ } else if (argumentsLength === 1) {
1083
+ insertCount = 0;
1084
+ actualDeleteCount = len - actualStart;
1085
+ } else {
1086
+ insertCount = argumentsLength - 2;
1087
+ actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart);
1088
+ }
1089
+ if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {
1090
+ throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);
1091
+ }
1092
+ A = arraySpeciesCreate(O, actualDeleteCount);
1093
+ for (k = 0; k < actualDeleteCount; k++) {
1094
+ from = actualStart + k;
1095
+ if (from in O) createProperty(A, k, O[from]);
1096
+ }
1097
+ A.length = actualDeleteCount;
1098
+ if (insertCount < actualDeleteCount) {
1099
+ for (k = actualStart; k < len - actualDeleteCount; k++) {
1100
+ from = k + actualDeleteCount;
1101
+ to = k + insertCount;
1102
+ if (from in O) O[to] = O[from];
1103
+ else delete O[to];
1104
+ }
1105
+ for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];
1106
+ } else if (insertCount > actualDeleteCount) {
1107
+ for (k = len - actualDeleteCount; k > actualStart; k--) {
1108
+ from = k + actualDeleteCount - 1;
1109
+ to = k + insertCount - 1;
1110
+ if (from in O) O[to] = O[from];
1111
+ else delete O[to];
1112
+ }
1113
+ }
1114
+ for (k = 0; k < insertCount; k++) {
1115
+ O[k + actualStart] = arguments[k + 2];
1116
+ }
1117
+ O.length = len - actualDeleteCount + insertCount;
1118
+ return A;
1119
+ }
1120
+ });
1121
+
1122
+ var $indexOf = arrayIncludes.indexOf;
1123
+
1124
+
1125
+ var nativeIndexOf = [].indexOf;
1126
+
1127
+ var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;
1128
+ var STRICT_METHOD = arrayMethodIsStrict('indexOf');
1129
+
1130
+ // `Array.prototype.indexOf` method
1131
+ // https://tc39.es/ecma262/#sec-array.prototype.indexof
1132
+ _export({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD }, {
1133
+ indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {
1134
+ return NEGATIVE_ZERO
1135
+ // convert -0 to +0
1136
+ ? nativeIndexOf.apply(this, arguments) || 0
1137
+ : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);
1138
+ }
1139
+ });
1140
+
1141
+ // a string of all valid unicode whitespaces
1142
+ var whitespaces = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' +
1143
+ '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
1144
+
1145
+ var whitespace = '[' + whitespaces + ']';
1146
+ var ltrim = RegExp('^' + whitespace + whitespace + '*');
1147
+ var rtrim = RegExp(whitespace + whitespace + '*$');
1148
+
1149
+ // `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
1150
+ var createMethod = function (TYPE) {
1151
+ return function ($this) {
1152
+ var string = String(requireObjectCoercible($this));
1153
+ if (TYPE & 1) string = string.replace(ltrim, '');
1154
+ if (TYPE & 2) string = string.replace(rtrim, '');
1155
+ return string;
1156
+ };
1157
+ };
1158
+
1159
+ var stringTrim = {
1160
+ // `String.prototype.{ trimLeft, trimStart }` methods
1161
+ // https://tc39.es/ecma262/#sec-string.prototype.trimstart
1162
+ start: createMethod(1),
1163
+ // `String.prototype.{ trimRight, trimEnd }` methods
1164
+ // https://tc39.es/ecma262/#sec-string.prototype.trimend
1165
+ end: createMethod(2),
1166
+ // `String.prototype.trim` method
1167
+ // https://tc39.es/ecma262/#sec-string.prototype.trim
1168
+ trim: createMethod(3)
1169
+ };
1170
+
1171
+ var trim = stringTrim.trim;
1172
+
1173
+
1174
+ var $parseFloat = global_1.parseFloat;
1175
+ var FORCED = 1 / $parseFloat(whitespaces + '-0') !== -Infinity;
1176
+
1177
+ // `parseFloat` method
1178
+ // https://tc39.es/ecma262/#sec-parsefloat-string
1179
+ var numberParseFloat = FORCED ? function parseFloat(string) {
1180
+ var trimmedString = trim(String(string));
1181
+ var result = $parseFloat(trimmedString);
1182
+ return result === 0 && trimmedString.charAt(0) == '-' ? -0 : result;
1183
+ } : $parseFloat;
1184
+
1185
+ // `parseFloat` method
1186
+ // https://tc39.es/ecma262/#sec-parsefloat-string
1187
+ _export({ global: true, forced: parseFloat != numberParseFloat }, {
1188
+ parseFloat: numberParseFloat
1189
+ });
1190
+
1191
+ var TO_STRING_TAG$1 = wellKnownSymbol('toStringTag');
1192
+ var test = {};
1193
+
1194
+ test[TO_STRING_TAG$1] = 'z';
1195
+
1196
+ var toStringTagSupport = String(test) === '[object z]';
1197
+
1198
+ var TO_STRING_TAG = wellKnownSymbol('toStringTag');
1199
+ // ES3 wrong here
1200
+ var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
1201
+
1202
+ // fallback for IE11 Script Access Denied error
1203
+ var tryGet = function (it, key) {
1204
+ try {
1205
+ return it[key];
1206
+ } catch (error) { /* empty */ }
1207
+ };
1208
+
1209
+ // getting tag from ES6+ `Object.prototype.toString`
1210
+ var classof = toStringTagSupport ? classofRaw : function (it) {
1211
+ var O, tag, result;
1212
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
1213
+ // @@toStringTag case
1214
+ : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag
1215
+ // builtinTag case
1216
+ : CORRECT_ARGUMENTS ? classofRaw(O)
1217
+ // ES3 arguments fallback
1218
+ : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
1219
+ };
1220
+
1221
+ // `Object.prototype.toString` method implementation
1222
+ // https://tc39.es/ecma262/#sec-object.prototype.tostring
1223
+ var objectToString = toStringTagSupport ? {}.toString : function toString() {
1224
+ return '[object ' + classof(this) + ']';
1225
+ };
1226
+
1227
+ // `Object.prototype.toString` method
1228
+ // https://tc39.es/ecma262/#sec-object.prototype.tostring
1229
+ if (!toStringTagSupport) {
1230
+ redefine(Object.prototype, 'toString', objectToString, { unsafe: true });
1231
+ }
1232
+
1233
+ // `RegExp.prototype.flags` getter implementation
1234
+ // https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
1235
+ var regexpFlags = function () {
1236
+ var that = anObject(this);
1237
+ var result = '';
1238
+ if (that.global) result += 'g';
1239
+ if (that.ignoreCase) result += 'i';
1240
+ if (that.multiline) result += 'm';
1241
+ if (that.dotAll) result += 's';
1242
+ if (that.unicode) result += 'u';
1243
+ if (that.sticky) result += 'y';
1244
+ return result;
1245
+ };
1246
+
1247
+ var TO_STRING = 'toString';
1248
+ var RegExpPrototype = RegExp.prototype;
1249
+ var nativeToString = RegExpPrototype[TO_STRING];
1250
+
1251
+ var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });
1252
+ // FF44- RegExp#toString has a wrong name
1253
+ var INCORRECT_NAME = nativeToString.name != TO_STRING;
1254
+
1255
+ // `RegExp.prototype.toString` method
1256
+ // https://tc39.es/ecma262/#sec-regexp.prototype.tostring
1257
+ if (NOT_GENERIC || INCORRECT_NAME) {
1258
+ redefine(RegExp.prototype, TO_STRING, function toString() {
1259
+ var R = anObject(this);
1260
+ var p = String(R.source);
1261
+ var rf = R.flags;
1262
+ var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? regexpFlags.call(R) : rf);
1263
+ return '/' + p + '/' + f;
1264
+ }, { unsafe: true });
1265
+ }
1266
+
1267
+ /**
1268
+ * @author Nadim Basalamah <dimbslmh@gmail.com>
1269
+ * @version: v1.1.0
1270
+ * https://github.com/dimbslmh/bootstrap-table/tree/master/src/extensions/multiple-sort/bootstrap-table-multiple-sort.js
1271
+ * Modification: ErwannNevou <https://github.com/ErwannNevou>
1272
+ */
1273
+
1274
+ var isSingleSort = false;
1275
+ var Utils = $__default['default'].fn.bootstrapTable.utils;
1276
+ $__default['default'].extend($__default['default'].fn.bootstrapTable.defaults.icons, {
1277
+ plus: {
1278
+ bootstrap3: 'glyphicon-plus',
1279
+ bootstrap4: 'fa-plus',
1280
+ bootstrap5: 'fa-plus',
1281
+ semantic: 'fa-plus',
1282
+ materialize: 'plus',
1283
+ foundation: 'fa-plus',
1284
+ bulma: 'fa-plus',
1285
+ 'bootstrap-table': 'icon-plus'
1286
+ }[$__default['default'].fn.bootstrapTable.theme] || 'fa-clock',
1287
+ minus: {
1288
+ bootstrap3: 'glyphicon-minus',
1289
+ bootstrap4: 'fa-minus',
1290
+ bootstrap5: 'fa-minus',
1291
+ semantic: 'fa-minus',
1292
+ materialize: 'minus',
1293
+ foundation: 'fa-minus',
1294
+ bulma: 'fa-minus',
1295
+ 'bootstrap-table': 'icon-minus'
1296
+ }[$__default['default'].fn.bootstrapTable.theme] || 'fa-clock',
1297
+ sort: {
1298
+ bootstrap3: 'glyphicon-sort',
1299
+ bootstrap4: 'fa-sort',
1300
+ bootstrap5: 'fa-sort',
1301
+ semantic: 'fa-sort',
1302
+ materialize: 'sort',
1303
+ foundation: 'fa-sort',
1304
+ bulma: 'fa-sort',
1305
+ 'bootstrap-table': 'icon-sort-amount-asc'
1306
+ }[$__default['default'].fn.bootstrapTable.theme] || 'fa-clock'
1307
+ });
1308
+ var theme = {
1309
+ bootstrap3: {
1310
+ html: {
1311
+ multipleSortModal: "\n <div class=\"modal fade\" id=\"%s\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\"><span aria-hidden=\"true\">&times;</span></button>\n <h4 class=\"modal-title\" id=\"%sLabel\">%s</h4>\n </div>\n <div class=\"modal-body\">\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\">\n <button id=\"add\" type=\"button\" class=\"btn btn-default\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"btn btn-default\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">%s</button>\n <button type=\"button\" class=\"btn btn-primary multi-sort-order-button\">%s</button>\n </div>\n </div>\n </div>\n </div>\n ",
1312
+ multipleSortButton: '<button class="multi-sort %s" type="button" data-toggle="modal" data-target="#%s" title="%s">%s</button>',
1313
+ multipleSortSelect: '<select class="%s %s form-control">'
1314
+ }
1315
+ },
1316
+ bootstrap4: {
1317
+ html: {
1318
+ multipleSortModal: "\n <div class=\"modal fade\" id=\"%s\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"%sLabel\">%s</h5>\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"pb-3\">\n <button id=\"add\" type=\"button\" class=\"btn btn-secondary\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"btn btn-secondary\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\">%s</button>\n <button type=\"button\" class=\"btn btn-primary multi-sort-order-button\">%s</button>\n </div>\n </div>\n </div>\n </div>\n ",
1319
+ multipleSortButton: '<button class="multi-sort %s" type="button" data-toggle="modal" data-target="#%s" title="%s">%s</button>',
1320
+ multipleSortSelect: '<select class="%s %s form-control">'
1321
+ }
1322
+ },
1323
+ bootstrap5: {
1324
+ html: {
1325
+ multipleSortModal: "\n <div class=\"modal fade\" id=\"%s\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"%sLabel\">%s</h5>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n </div>\n <div class=\"modal-body\">\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"pb-3\">\n <button id=\"add\" type=\"button\" class=\"btn btn-secondary\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"btn btn-secondary\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-bs-dismiss=\"modal\">%s</button>\n <button type=\"button\" class=\"btn btn-primary multi-sort-order-button\">%s</button>\n </div>\n </div>\n </div>\n </div>\n ",
1326
+ multipleSortButton: '<button class="multi-sort %s" type="button" data-bs-toggle="modal" data-bs-target="#%s" title="%s">%s</button>',
1327
+ multipleSortSelect: '<select class="%s %s form-control">'
1328
+ }
1329
+ },
1330
+ semantic: {
1331
+ html: {
1332
+ multipleSortModal: "\n <div class=\"ui modal tiny\" id=\"%s\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <i class=\"close icon\"></i>\n <div class=\"header\" id=\"%sLabel\">\n %s\n </div>\n <div class=\"image content\">\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"pb-3\">\n <button id=\"add\" type=\"button\" class=\"ui button\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"ui button\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n </div>\n <div class=\"actions\">\n <div class=\"ui button deny\">%s</div>\n <div class=\"ui button approve multi-sort-order-button\">%s</div>\n </div>\n </div>\n ",
1333
+ multipleSortButton: '<button class="multi-sort %s" type="button" data-toggle="modal" data-target="#%s" title="%s">%s</button>',
1334
+ multipleSortSelect: '<select class="%s %s">'
1335
+ }
1336
+ },
1337
+ materialize: {
1338
+ html: {
1339
+ multipleSortModal: "\n <div id=\"%s\" class=\"modal\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-content\" id=\"%sLabel\">\n <h4>%s</h4>\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"pb-3\">\n <button id=\"add\" type=\"button\" class=\"waves-effect waves-light btn\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"waves-effect waves-light btn\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n <div class=\"modal-footer\">\n <a href=\"javascript:void(0)\" class=\"modal-close waves-effect waves-light btn\">%s</a>\n <a href=\"javascript:void(0)\" class=\"modal-close waves-effect waves-light btn multi-sort-order-button\">%s</a>\n </div>\n </div>\n </div>\n ",
1340
+ multipleSortButton: '<a class="multi-sort %s modal-trigger" href="#%s" type="button" data-toggle="modal" title="%s">%s</a>',
1341
+ multipleSortSelect: '<select class="%s %s browser-default">'
1342
+ }
1343
+ },
1344
+ foundation: {
1345
+ html: {
1346
+ multipleSortModal: "\n <div class=\"reveal\" id=\"%s\" data-reveal aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div id=\"%sLabel\">\n <h1>%s</h1>\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"padding-bottom-2\">\n <button id=\"add\" type=\"button\" class=\"waves-effect waves-light button\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"waves-effect waves-light button\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n\n <button class=\"waves-effect waves-light button\" data-close aria-label=\"Close modal\" type=\"button\">\n <span aria-hidden=\"true\">%s</span>\n </button>\n <button class=\"waves-effect waves-light button multi-sort-order-button\" data-close aria-label=\"Order\" type=\"button\">\n <span aria-hidden=\"true\">%s</span>\n </button>\n </div>\n </div>\n ",
1347
+ multipleSortButton: '<button class="multi-sort %s" data-open="%s" title="%s">%s</button>',
1348
+ multipleSortSelect: '<select class="%s %s browser-default">'
1349
+ }
1350
+ },
1351
+ bulma: {
1352
+ html: {
1353
+ multipleSortModal: "\n <div class=\"modal\" id=\"%s\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-content\" id=\"%sLabel\">\n <div class=\"box\">\n <h2>%s</h2>\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"padding-bottom-2\">\n <button id=\"add\" type=\"button\" class=\"waves-effect waves-light button\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"waves-effect waves-light button\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n <button type=\"button\" class=\"waves-effect waves-light button\" data-close>%s</button>\n <button type=\"button\" class=\"waves-effect waves-light button multi-sort-order-button\" data-close>%s</button>\n </div>\n </div>\n </div>\n ",
1354
+ multipleSortButton: '<button class="multi-sort %s" data-target="%s" title="%s">%s</button>',
1355
+ multipleSortSelect: '<select class="%s %s browser-default">'
1356
+ }
1357
+ },
1358
+ 'bootstrap-table': {
1359
+ html: {
1360
+ multipleSortModal: "\n <div class=\"modal\" id=\"%s\" aria-labelledby=\"%sLabel\" aria-hidden=\"true\">\n <div class=\"modal-background\"></div>\n <div class=\"modal-content\" id=\"%sLabel\">\n <div class=\"box\">\n <h2>%s</h2>\n <div class=\"bootstrap-table\">\n <div class=\"fixed-table-toolbar\">\n <div class=\"bars\">\n <div id=\"toolbar\" class=\"padding-bottom-2\">\n <button id=\"add\" type=\"button\" class=\"btn\">%s %s</button>\n <button id=\"delete\" type=\"button\" class=\"btn\" disabled>%s %s</button>\n </div>\n </div>\n </div>\n <div class=\"fixed-table-container\">\n <table id=\"multi-sort\" class=\"table\">\n <thead>\n <tr>\n <th></th>\n <th><div class=\"th-inner\">%s</div></th>\n <th><div class=\"th-inner\">%s</div></th>\n </tr>\n </thead>\n <tbody></tbody>\n </table>\n </div>\n </div>\n <div class=\"mt-30\">\n <button type=\"button\" class=\"btn\" data-close>%s</button>\n <button type=\"button\" class=\"btn multi-sort-order-button\" data-close>%s</button>\n </div>\n </div>\n </div>\n </div>\n ",
1361
+ multipleSortButton: '<button class="multi-sort %s" data-target="%s" title="%s">%s</button>',
1362
+ multipleSortSelect: '<select class="%s %s browser-default">'
1363
+ }
1364
+ }
1365
+ }[$__default['default'].fn.bootstrapTable.theme];
1366
+
1367
+ var showSortModal = function showSortModal(that) {
1368
+ var _selector = that.sortModalSelector;
1369
+
1370
+ var _id = "#".concat(_selector);
1371
+
1372
+ var o = that.options;
1373
+
1374
+ if (!$__default['default'](_id).hasClass('modal')) {
1375
+ var sModal = Utils.sprintf(theme.html.multipleSortModal, _selector, _selector, _selector, that.options.formatMultipleSort(), Utils.sprintf(that.constants.html.icon, o.iconsPrefix, o.icons.plus), that.options.formatAddLevel(), Utils.sprintf(that.constants.html.icon, o.iconsPrefix, o.icons.minus), that.options.formatDeleteLevel(), that.options.formatColumn(), that.options.formatOrder(), that.options.formatCancel(), that.options.formatSort());
1376
+ $__default['default']('body').append($__default['default'](sModal));
1377
+ that.$sortModal = $__default['default'](_id);
1378
+ var $rows = that.$sortModal.find('tbody > tr');
1379
+ that.$sortModal.off('click', '#add').on('click', '#add', function () {
1380
+ var total = that.$sortModal.find('.multi-sort-name:first option').length;
1381
+ var current = that.$sortModal.find('tbody tr').length;
1382
+
1383
+ if (current < total) {
1384
+ current++;
1385
+ that.addLevel();
1386
+ that.setButtonStates();
1387
+ }
1388
+ });
1389
+ that.$sortModal.off('click', '#delete').on('click', '#delete', function () {
1390
+ var total = that.$sortModal.find('.multi-sort-name:first option').length;
1391
+ var current = that.$sortModal.find('tbody tr').length;
1392
+
1393
+ if (current > 1 && current <= total) {
1394
+ current--;
1395
+ that.$sortModal.find('tbody tr:last').remove();
1396
+ that.setButtonStates();
1397
+ }
1398
+ });
1399
+ that.$sortModal.off('click', '.multi-sort-order-button').on('click', '.multi-sort-order-button', function () {
1400
+ var $rows = that.$sortModal.find('tbody > tr');
1401
+ var $alert = that.$sortModal.find('div.alert');
1402
+ var fields = [];
1403
+ var results = [];
1404
+ var sortPriority = $__default['default'].map($rows, function (row) {
1405
+ var $row = $__default['default'](row);
1406
+ var name = $row.find('.multi-sort-name').val();
1407
+ var order = $row.find('.multi-sort-order').val();
1408
+ fields.push(name);
1409
+ return {
1410
+ sortName: name,
1411
+ sortOrder: order
1412
+ };
1413
+ });
1414
+ var sorted_fields = fields.sort();
1415
+
1416
+ for (var i = 0; i < fields.length - 1; i++) {
1417
+ if (sorted_fields[i + 1] === sorted_fields[i]) {
1418
+ results.push(sorted_fields[i]);
1419
+ }
1420
+ }
1421
+
1422
+ if (results.length > 0) {
1423
+ if ($alert.length === 0) {
1424
+ $alert = "<div class=\"alert alert-danger\" role=\"alert\"><strong>".concat(that.options.formatDuplicateAlertTitle(), "</strong> ").concat(that.options.formatDuplicateAlertDescription(), "</div>");
1425
+ $__default['default']($alert).insertBefore(that.$sortModal.find('.bars'));
1426
+ }
1427
+ } else {
1428
+ if ($alert.length === 1) {
1429
+ $__default['default']($alert).remove();
1430
+ }
1431
+
1432
+ if ($__default['default'].inArray($__default['default'].fn.bootstrapTable.theme, ['bootstrap3', 'bootstrap4']) !== -1) {
1433
+ that.$sortModal.modal('hide');
1434
+ }
1435
+
1436
+ that.multiSort(sortPriority);
1437
+ }
1438
+ });
1439
+
1440
+ if (that.options.sortPriority === null || that.options.sortPriority.length === 0) {
1441
+ if (that.options.sortName) {
1442
+ that.options.sortPriority = [{
1443
+ sortName: that.options.sortName,
1444
+ sortOrder: that.options.sortOrder
1445
+ }];
1446
+ }
1447
+ }
1448
+
1449
+ if (that.options.sortPriority !== null && that.options.sortPriority.length > 0) {
1450
+ if ($rows.length < that.options.sortPriority.length && _typeof(that.options.sortPriority) === 'object') {
1451
+ for (var i = 0; i < that.options.sortPriority.length; i++) {
1452
+ that.addLevel(i, that.options.sortPriority[i]);
1453
+ }
1454
+ }
1455
+ } else {
1456
+ that.addLevel(0);
1457
+ }
1458
+
1459
+ that.setButtonStates();
1460
+ }
1461
+ };
1462
+
1463
+ $__default['default'].fn.bootstrapTable.methods.push('multipleSort');
1464
+ $__default['default'].fn.bootstrapTable.methods.push('multiSort');
1465
+ $__default['default'].extend($__default['default'].fn.bootstrapTable.defaults, {
1466
+ showMultiSort: false,
1467
+ showMultiSortButton: true,
1468
+ multiSortStrictSort: false,
1469
+ sortPriority: null,
1470
+ onMultipleSort: function onMultipleSort() {
1471
+ return false;
1472
+ }
1473
+ });
1474
+ $__default['default'].extend($__default['default'].fn.bootstrapTable.Constructor.EVENTS, {
1475
+ 'multiple-sort.bs.table': 'onMultipleSort'
1476
+ });
1477
+ $__default['default'].extend($__default['default'].fn.bootstrapTable.locales, {
1478
+ formatMultipleSort: function formatMultipleSort() {
1479
+ return 'Multiple Sort';
1480
+ },
1481
+ formatAddLevel: function formatAddLevel() {
1482
+ return 'Add Level';
1483
+ },
1484
+ formatDeleteLevel: function formatDeleteLevel() {
1485
+ return 'Delete Level';
1486
+ },
1487
+ formatColumn: function formatColumn() {
1488
+ return 'Column';
1489
+ },
1490
+ formatOrder: function formatOrder() {
1491
+ return 'Order';
1492
+ },
1493
+ formatSortBy: function formatSortBy() {
1494
+ return 'Sort by';
1495
+ },
1496
+ formatThenBy: function formatThenBy() {
1497
+ return 'Then by';
1498
+ },
1499
+ formatSort: function formatSort() {
1500
+ return 'Sort';
1501
+ },
1502
+ formatCancel: function formatCancel() {
1503
+ return 'Cancel';
1504
+ },
1505
+ formatDuplicateAlertTitle: function formatDuplicateAlertTitle() {
1506
+ return 'Duplicate(s) detected!';
1507
+ },
1508
+ formatDuplicateAlertDescription: function formatDuplicateAlertDescription() {
1509
+ return 'Please remove or change any duplicate column.';
1510
+ },
1511
+ formatSortOrders: function formatSortOrders() {
1512
+ return {
1513
+ asc: 'Ascending',
1514
+ desc: 'Descending'
1515
+ };
1516
+ }
1517
+ });
1518
+ $__default['default'].extend($__default['default'].fn.bootstrapTable.defaults, $__default['default'].fn.bootstrapTable.locales);
1519
+ var BootstrapTable = $__default['default'].fn.bootstrapTable.Constructor;
1520
+ var _initToolbar = BootstrapTable.prototype.initToolbar;
1521
+ var _destroy = BootstrapTable.prototype.destroy;
1522
+
1523
+ BootstrapTable.prototype.initToolbar = function () {
1524
+ var _this = this;
1525
+
1526
+ this.showToolbar = this.showToolbar || this.options.showMultiSort;
1527
+ var that = this;
1528
+ var sortModalSelector = "sortModal_".concat(this.$el.attr('id'));
1529
+ var sortModalId = "#".concat(sortModalSelector);
1530
+ var $multiSortBtn = this.$toolbar.find('div.multi-sort');
1531
+ var o = this.options;
1532
+ this.$sortModal = $__default['default'](sortModalId);
1533
+ this.sortModalSelector = sortModalSelector;
1534
+
1535
+ if (that.options.sortPriority !== null) {
1536
+ that.onMultipleSort();
1537
+ }
1538
+
1539
+ if (this.options.showMultiSortButton) {
1540
+ this.buttons = Object.assign(this.buttons, {
1541
+ multipleSort: {
1542
+ html: Utils.sprintf(theme.html.multipleSortButton, that.constants.buttonsClass, that.sortModalSelector, this.options.formatMultipleSort(), Utils.sprintf(that.constants.html.icon, o.iconsPrefix, o.icons.sort))
1543
+ }
1544
+ });
1545
+ }
1546
+
1547
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1548
+ args[_key] = arguments[_key];
1549
+ }
1550
+
1551
+ _initToolbar.apply(this, Array.prototype.slice.apply(args));
1552
+
1553
+ if (that.options.sidePagination === 'server' && !isSingleSort && that.options.sortPriority !== null) {
1554
+ var t = that.options.queryParams;
1555
+
1556
+ that.options.queryParams = function (params) {
1557
+ params.multiSort = that.options.sortPriority;
1558
+ return t(params);
1559
+ };
1560
+ }
1561
+
1562
+ if (this.options.showMultiSort) {
1563
+ if (!$multiSortBtn.length && this.options.showMultiSortButton) {
1564
+ if ($__default['default'].fn.bootstrapTable.theme === 'semantic') {
1565
+ this.$toolbar.find('.multi-sort').on('click', function () {
1566
+ $__default['default'](sortModalId).modal('show');
1567
+ });
1568
+ } else if ($__default['default'].fn.bootstrapTable.theme === 'materialize') {
1569
+ this.$toolbar.find('.multi-sort').on('click', function () {
1570
+ $__default['default'](sortModalId).modal();
1571
+ });
1572
+ } else if ($__default['default'].fn.bootstrapTable.theme === 'bootstrap-table') {
1573
+ this.$toolbar.find('.multi-sort').on('click', function () {
1574
+ $__default['default'](sortModalId).addClass('show');
1575
+ });
1576
+ } else if ($__default['default'].fn.bootstrapTable.theme === 'foundation') {
1577
+ this.$toolbar.find('.multi-sort').on('click', function () {
1578
+ if (!_this.foundationModal) {
1579
+ // eslint-disable-next-line no-undef
1580
+ _this.foundationModal = new Foundation.Reveal($__default['default'](sortModalId));
1581
+ }
1582
+
1583
+ _this.foundationModal.open();
1584
+ });
1585
+ } else if ($__default['default'].fn.bootstrapTable.theme === 'bulma') {
1586
+ this.$toolbar.find('.multi-sort').on('click', function () {
1587
+ $__default['default']('html').toggleClass('is-clipped');
1588
+ $__default['default'](sortModalId).toggleClass('is-active');
1589
+ $__default['default']('button[data-close]').one('click', function () {
1590
+ $__default['default']('html').toggleClass('is-clipped');
1591
+ $__default['default'](sortModalId).toggleClass('is-active');
1592
+ });
1593
+ });
1594
+ }
1595
+
1596
+ showSortModal(that);
1597
+ }
1598
+
1599
+ this.$el.on('sort.bs.table', function () {
1600
+ isSingleSort = true;
1601
+ });
1602
+ this.$el.on('multiple-sort.bs.table', function () {
1603
+ isSingleSort = false;
1604
+ });
1605
+ this.$el.on('load-success.bs.table', function () {
1606
+ if (!isSingleSort && that.options.sortPriority !== null && _typeof(that.options.sortPriority) === 'object' && that.options.sidePagination !== 'server') {
1607
+ that.onMultipleSort();
1608
+ }
1609
+ });
1610
+ this.$el.on('column-switch.bs.table', function (field, checked) {
1611
+ for (var i = 0; i < that.options.sortPriority.length; i++) {
1612
+ if (that.options.sortPriority[i].sortName === checked) {
1613
+ that.options.sortPriority.splice(i, 1);
1614
+ }
1615
+ }
1616
+
1617
+ that.assignSortableArrows();
1618
+ that.$sortModal.remove();
1619
+ showSortModal(that);
1620
+ });
1621
+ this.$el.on('reset-view.bs.table', function () {
1622
+ if (!isSingleSort && that.options.sortPriority !== null && _typeof(that.options.sortPriority) === 'object') {
1623
+ that.assignSortableArrows();
1624
+ }
1625
+ });
1626
+ }
1627
+ };
1628
+
1629
+ BootstrapTable.prototype.destroy = function () {
1630
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
1631
+ args[_key2] = arguments[_key2];
1632
+ }
1633
+
1634
+ _destroy.apply(this, Array.prototype.slice.apply(args));
1635
+
1636
+ if (this.options.showMultiSort) {
1637
+ this.enableCustomSort = false;
1638
+ this.$sortModal.remove();
1639
+ }
1640
+ };
1641
+
1642
+ BootstrapTable.prototype.multipleSort = function () {
1643
+ var that = this;
1644
+
1645
+ if (!isSingleSort && that.options.sortPriority !== null && _typeof(that.options.sortPriority) === 'object' && that.options.sidePagination !== 'server') {
1646
+ that.onMultipleSort();
1647
+ }
1648
+ };
1649
+
1650
+ BootstrapTable.prototype.onMultipleSort = function () {
1651
+ var that = this;
1652
+
1653
+ var cmp = function cmp(x, y) {
1654
+ return x > y ? 1 : x < y ? -1 : 0;
1655
+ };
1656
+
1657
+ var arrayCmp = function arrayCmp(a, b) {
1658
+ var arr1 = [];
1659
+ var arr2 = [];
1660
+
1661
+ for (var i = 0; i < that.options.sortPriority.length; i++) {
1662
+ var fieldName = that.options.sortPriority[i].sortName;
1663
+ var fieldIndex = that.header.fields.indexOf(fieldName);
1664
+ var sorterName = that.header.sorters[that.header.fields.indexOf(fieldName)];
1665
+
1666
+ if (that.header.sortNames[fieldIndex]) {
1667
+ fieldName = that.header.sortNames[fieldIndex];
1668
+ }
1669
+
1670
+ var order = that.options.sortPriority[i].sortOrder === 'desc' ? -1 : 1;
1671
+ var aa = Utils.getItemField(a, fieldName);
1672
+ var bb = Utils.getItemField(b, fieldName);
1673
+ var value1 = $__default['default'].fn.bootstrapTable.utils.calculateObjectValue(that.header, sorterName, [aa, bb]);
1674
+ var value2 = $__default['default'].fn.bootstrapTable.utils.calculateObjectValue(that.header, sorterName, [bb, aa]);
1675
+
1676
+ if (value1 !== undefined && value2 !== undefined) {
1677
+ arr1.push(order * value1);
1678
+ arr2.push(order * value2);
1679
+ continue;
1680
+ }
1681
+
1682
+ if (aa === undefined || aa === null) aa = '';
1683
+ if (bb === undefined || bb === null) bb = '';
1684
+
1685
+ if ($__default['default'].isNumeric(aa) && $__default['default'].isNumeric(bb)) {
1686
+ aa = parseFloat(aa);
1687
+ bb = parseFloat(bb);
1688
+ } else {
1689
+ aa = aa.toString();
1690
+ bb = bb.toString();
1691
+
1692
+ if (that.options.multiSortStrictSort) {
1693
+ aa = aa.toLowerCase();
1694
+ bb = bb.toLowerCase();
1695
+ }
1696
+ }
1697
+
1698
+ arr1.push(order * cmp(aa, bb));
1699
+ arr2.push(order * cmp(bb, aa));
1700
+ }
1701
+
1702
+ return cmp(arr1, arr2);
1703
+ };
1704
+
1705
+ this.enableCustomSort = true;
1706
+ this.data.sort(function (a, b) {
1707
+ return arrayCmp(a, b);
1708
+ });
1709
+ this.initBody();
1710
+ this.assignSortableArrows();
1711
+ this.trigger('multiple-sort');
1712
+ };
1713
+
1714
+ BootstrapTable.prototype.addLevel = function (index, sortPriority) {
1715
+ var text = index === 0 ? this.options.formatSortBy() : this.options.formatThenBy();
1716
+ this.$sortModal.find('tbody').append($__default['default']('<tr>').append($__default['default']('<td>').text(text)).append($__default['default']('<td>').append($__default['default'](Utils.sprintf(theme.html.multipleSortSelect, this.constants.classes.paginationDropdown, 'multi-sort-name')))).append($__default['default']('<td>').append($__default['default'](Utils.sprintf(theme.html.multipleSortSelect, this.constants.classes.paginationDropdown, 'multi-sort-order')))));
1717
+ var $multiSortName = this.$sortModal.find('.multi-sort-name').last();
1718
+ var $multiSortOrder = this.$sortModal.find('.multi-sort-order').last();
1719
+ $__default['default'].each(this.columns, function (i, column) {
1720
+ if (column.sortable === false || column.visible === false) {
1721
+ return true;
1722
+ }
1723
+
1724
+ $multiSortName.append("<option value=\"".concat(column.field, "\">").concat(column.title, "</option>"));
1725
+ });
1726
+ $__default['default'].each(this.options.formatSortOrders(), function (value, order) {
1727
+ $multiSortOrder.append("<option value=\"".concat(value, "\">").concat(order, "</option>"));
1728
+ });
1729
+
1730
+ if (sortPriority !== undefined) {
1731
+ $multiSortName.find("option[value=\"".concat(sortPriority.sortName, "\"]")).attr('selected', true);
1732
+ $multiSortOrder.find("option[value=\"".concat(sortPriority.sortOrder, "\"]")).attr('selected', true);
1733
+ }
1734
+ };
1735
+
1736
+ BootstrapTable.prototype.assignSortableArrows = function () {
1737
+ var that = this;
1738
+ var headers = that.$header.find('th');
1739
+
1740
+ for (var i = 0; i < headers.length; i++) {
1741
+ for (var c = 0; c < that.options.sortPriority.length; c++) {
1742
+ if ($__default['default'](headers[i]).data('field') === that.options.sortPriority[c].sortName) {
1743
+ $__default['default'](headers[i]).find('.sortable').removeClass('desc asc').addClass(that.options.sortPriority[c].sortOrder);
1744
+ }
1745
+ }
1746
+ }
1747
+ };
1748
+
1749
+ BootstrapTable.prototype.setButtonStates = function () {
1750
+ var total = this.$sortModal.find('.multi-sort-name:first option').length;
1751
+ var current = this.$sortModal.find('tbody tr').length;
1752
+
1753
+ if (current === total) {
1754
+ this.$sortModal.find('#add').attr('disabled', 'disabled');
1755
+ }
1756
+
1757
+ if (current > 1) {
1758
+ this.$sortModal.find('#delete').removeAttr('disabled');
1759
+ }
1760
+
1761
+ if (current < total) {
1762
+ this.$sortModal.find('#add').removeAttr('disabled');
1763
+ }
1764
+
1765
+ if (current === 1) {
1766
+ this.$sortModal.find('#delete').attr('disabled', 'disabled');
1767
+ }
1768
+ };
1769
+
1770
+ BootstrapTable.prototype.multiSort = function (sortPriority) {
1771
+ var _this2 = this;
1772
+
1773
+ this.options.sortPriority = sortPriority;
1774
+ this.options.sortName = undefined;
1775
+
1776
+ if (this.options.sidePagination === 'server') {
1777
+ var queryParams = this.options.queryParams;
1778
+
1779
+ this.options.queryParams = function (params) {
1780
+ params.multiSort = _this2.options.sortPriority;
1781
+ return $__default['default'].fn.bootstrapTable.utils.calculateObjectValue(_this2.options, queryParams, [params]);
1782
+ };
1783
+
1784
+ isSingleSort = false;
1785
+ this.initServer(this.options.silentSort);
1786
+ return;
1787
+ }
1788
+
1789
+ this.onMultipleSort();
1790
+ };
1818
1791
 
1819
1792
  })));