bootstrap-table-rails 1.18.3 → 1.19.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (97) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/bootstrap-table-rails/version.rb +1 -1
  4. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-locale-all.js +43 -30
  5. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.esm.js +147 -26
  6. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.js +151 -28
  7. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.css +2 -1
  8. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.js +367 -237
  9. data/vendor/assets/javascripts/bootstrap-table/extensions/addrbar/bootstrap-table-addrbar.js +32 -19
  10. data/vendor/assets/javascripts/bootstrap-table/extensions/auto-refresh/bootstrap-table-auto-refresh.js +37 -19
  11. data/vendor/assets/javascripts/bootstrap-table/extensions/cookie/bootstrap-table-cookie.js +141 -72
  12. data/vendor/assets/javascripts/bootstrap-table/extensions/copy-rows/bootstrap-table-copy-rows.js +44 -21
  13. data/vendor/assets/javascripts/bootstrap-table/extensions/custom-view/bootstrap-table-custom-view.js +37 -19
  14. data/vendor/assets/javascripts/bootstrap-table/extensions/defer-url/bootstrap-table-defer-url.js +25 -13
  15. data/vendor/assets/javascripts/bootstrap-table/extensions/editable/bootstrap-table-editable.js +32 -19
  16. data/vendor/assets/javascripts/bootstrap-table/extensions/export/bootstrap-table-export.js +86 -75
  17. data/vendor/assets/javascripts/bootstrap-table/extensions/filter-control/bootstrap-table-filter-control.js +81 -53
  18. data/vendor/assets/javascripts/bootstrap-table/extensions/filter-control/utils.js +49 -36
  19. data/vendor/assets/javascripts/bootstrap-table/extensions/fixed-columns/bootstrap-table-fixed-columns.js +30 -13
  20. data/vendor/assets/javascripts/bootstrap-table/extensions/group-by-v2/bootstrap-table-group-by.js +40 -20
  21. data/vendor/assets/javascripts/bootstrap-table/extensions/key-events/bootstrap-table-key-events.js +31 -19
  22. data/vendor/assets/javascripts/bootstrap-table/extensions/mobile/bootstrap-table-mobile.js +28 -13
  23. data/vendor/assets/javascripts/bootstrap-table/extensions/multiple-sort/bootstrap-table-multiple-sort.js +48 -26
  24. data/vendor/assets/javascripts/bootstrap-table/extensions/page-jump-to/bootstrap-table-page-jump-to.css +5 -2
  25. data/vendor/assets/javascripts/bootstrap-table/extensions/page-jump-to/bootstrap-table-page-jump-to.js +27 -13
  26. data/vendor/assets/javascripts/bootstrap-table/extensions/pipeline/bootstrap-table-pipeline.js +28 -14
  27. data/vendor/assets/javascripts/bootstrap-table/extensions/print/bootstrap-table-print.js +39 -20
  28. data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-columns/bootstrap-table-reorder-columns.js +27 -13
  29. data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-rows/bootstrap-table-reorder-rows.js +47 -15
  30. data/vendor/assets/javascripts/bootstrap-table/extensions/resizable/bootstrap-table-resizable.js +26 -13
  31. data/vendor/assets/javascripts/bootstrap-table/extensions/sticky-header/bootstrap-table-sticky-header.js +32 -15
  32. data/vendor/assets/javascripts/bootstrap-table/extensions/toolbar/bootstrap-table-toolbar.js +43 -26
  33. data/vendor/assets/javascripts/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js +92 -28
  34. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-af-ZA.js +25 -13
  35. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ar-SA.js +25 -13
  36. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-bg-BG.js +25 -13
  37. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ca-ES.js +25 -13
  38. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-cs-CZ.js +25 -13
  39. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-da-DK.js +25 -13
  40. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-de-DE.js +25 -13
  41. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-el-GR.js +25 -13
  42. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-en-US.js +25 -13
  43. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-AR.js +25 -13
  44. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CL.js +25 -13
  45. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CR.js +25 -13
  46. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-ES.js +25 -13
  47. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-MX.js +43 -30
  48. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-NI.js +25 -13
  49. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-SP.js +25 -13
  50. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-et-EE.js +25 -13
  51. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-eu-EU.js +25 -13
  52. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fa-IR.js +25 -13
  53. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fi-FI.js +25 -13
  54. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-BE.js +25 -13
  55. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-CH.js +25 -13
  56. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-FR.js +25 -13
  57. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-LU.js +25 -13
  58. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-he-IL.js +25 -13
  59. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hr-HR.js +25 -13
  60. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hu-HU.js +25 -13
  61. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-id-ID.js +25 -13
  62. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-it-IT.js +25 -13
  63. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ja-JP.js +25 -13
  64. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ka-GE.js +25 -13
  65. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ko-KR.js +25 -13
  66. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ms-MY.js +25 -13
  67. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nb-NO.js +25 -13
  68. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-BE.js +25 -13
  69. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-NL.js +25 -13
  70. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pl-PL.js +25 -13
  71. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-BR.js +25 -13
  72. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-PT.js +25 -13
  73. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ro-RO.js +25 -13
  74. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ru-RU.js +25 -13
  75. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sk-SK.js +25 -13
  76. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Cyrl-RS.js +25 -13
  77. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Latn-RS.js +25 -13
  78. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sv-SE.js +25 -13
  79. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-th-TH.js +25 -13
  80. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-tr-TR.js +25 -13
  81. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uk-UA.js +25 -13
  82. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ur-PK.js +25 -13
  83. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uz-Latn-UZ.js +25 -13
  84. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-vi-VN.js +25 -13
  85. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-CN.js +25 -13
  86. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-TW.js +25 -13
  87. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/bootstrap-table.css +1 -0
  88. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/bootstrap-table.js +27 -13
  89. data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.css +1 -0
  90. data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.js +27 -13
  91. data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.css +1 -0
  92. data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.js +27 -13
  93. data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.css +1 -0
  94. data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.js +27 -13
  95. data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.css +1 -0
  96. data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.js +27 -13
  97. metadata +3 -3
@@ -187,9 +187,10 @@
187
187
 
188
188
  // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
189
189
  var global_1 =
190
- /* global globalThis -- safe */
190
+ // eslint-disable-next-line es/no-global-this -- safe
191
191
  check(typeof globalThis == 'object' && globalThis) ||
192
192
  check(typeof window == 'object' && window) ||
193
+ // eslint-disable-next-line no-restricted-globals -- safe
193
194
  check(typeof self == 'object' && self) ||
194
195
  check(typeof commonjsGlobal == 'object' && commonjsGlobal) ||
195
196
  // eslint-disable-next-line no-new-func -- fallback
@@ -205,21 +206,23 @@
205
206
 
206
207
  // Detect IE8's incomplete defineProperty implementation
207
208
  var descriptors = !fails(function () {
209
+ // eslint-disable-next-line es/no-object-defineproperty -- required for testing
208
210
  return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
209
211
  });
210
212
 
211
- var nativePropertyIsEnumerable = {}.propertyIsEnumerable;
213
+ var $propertyIsEnumerable = {}.propertyIsEnumerable;
214
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
212
215
  var getOwnPropertyDescriptor$4 = Object.getOwnPropertyDescriptor;
213
216
 
214
217
  // Nashorn ~ JDK8 bug
215
- var NASHORN_BUG = getOwnPropertyDescriptor$4 && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);
218
+ var NASHORN_BUG = getOwnPropertyDescriptor$4 && !$propertyIsEnumerable.call({ 1: 2 }, 1);
216
219
 
217
220
  // `Object.prototype.propertyIsEnumerable` method implementation
218
221
  // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
219
222
  var f$4 = NASHORN_BUG ? function propertyIsEnumerable(V) {
220
223
  var descriptor = getOwnPropertyDescriptor$4(this, V);
221
224
  return !!descriptor && descriptor.enumerable;
222
- } : nativePropertyIsEnumerable;
225
+ } : $propertyIsEnumerable;
223
226
 
224
227
  var objectPropertyIsEnumerable = {
225
228
  f: f$4
@@ -299,20 +302,22 @@
299
302
 
300
303
  // Thank's IE8 for his funny defineProperty
301
304
  var ie8DomDefine = !descriptors && !fails(function () {
305
+ // eslint-disable-next-line es/no-object-defineproperty -- requied for testing
302
306
  return Object.defineProperty(documentCreateElement('div'), 'a', {
303
307
  get: function () { return 7; }
304
308
  }).a != 7;
305
309
  });
306
310
 
307
- var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
311
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
312
+ var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
308
313
 
309
314
  // `Object.getOwnPropertyDescriptor` method
310
315
  // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
311
- var f$3 = descriptors ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
316
+ var f$3 = descriptors ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
312
317
  O = toIndexedObject(O);
313
318
  P = toPrimitive(P, true);
314
319
  if (ie8DomDefine) try {
315
- return nativeGetOwnPropertyDescriptor(O, P);
320
+ return $getOwnPropertyDescriptor(O, P);
316
321
  } catch (error) { /* empty */ }
317
322
  if (has$1(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]);
318
323
  };
@@ -327,16 +332,17 @@
327
332
  } return it;
328
333
  };
329
334
 
330
- var nativeDefineProperty = Object.defineProperty;
335
+ // eslint-disable-next-line es/no-object-defineproperty -- safe
336
+ var $defineProperty = Object.defineProperty;
331
337
 
332
338
  // `Object.defineProperty` method
333
339
  // https://tc39.es/ecma262/#sec-object.defineproperty
334
- var f$2 = descriptors ? nativeDefineProperty : function defineProperty(O, P, Attributes) {
340
+ var f$2 = descriptors ? $defineProperty : function defineProperty(O, P, Attributes) {
335
341
  anObject(O);
336
342
  P = toPrimitive(P, true);
337
343
  anObject(Attributes);
338
344
  if (ie8DomDefine) try {
339
- return nativeDefineProperty(O, P, Attributes);
345
+ return $defineProperty(O, P, Attributes);
340
346
  } catch (error) { /* empty */ }
341
347
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
342
348
  if ('value' in Attributes) O[P] = Attributes.value;
@@ -386,7 +392,7 @@
386
392
  (module.exports = function (key, value) {
387
393
  return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {});
388
394
  })('versions', []).push({
389
- version: '3.9.1',
395
+ version: '3.10.1',
390
396
  mode: 'global',
391
397
  copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
392
398
  });
@@ -598,6 +604,7 @@
598
604
 
599
605
  // `Object.getOwnPropertyNames` method
600
606
  // https://tc39.es/ecma262/#sec-object.getownpropertynames
607
+ // eslint-disable-next-line es/no-object-getownpropertynames -- safe
601
608
  var f$1 = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
602
609
  return objectKeysInternal(O, hiddenKeys);
603
610
  };
@@ -606,6 +613,7 @@
606
613
  f: f$1
607
614
  };
608
615
 
616
+ // eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
609
617
  var f = Object.getOwnPropertySymbols;
610
618
 
611
619
  var objectGetOwnPropertySymbols = {
@@ -795,7 +803,7 @@
795
803
  return RegExp(s, f);
796
804
  }
797
805
 
798
- var UNSUPPORTED_Y$2 = fails(function () {
806
+ var UNSUPPORTED_Y$3 = fails(function () {
799
807
  // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
800
808
  var re = RE('a', 'y');
801
809
  re.lastIndex = 2;
@@ -810,15 +818,12 @@
810
818
  });
811
819
 
812
820
  var regexpStickyHelpers = {
813
- UNSUPPORTED_Y: UNSUPPORTED_Y$2,
821
+ UNSUPPORTED_Y: UNSUPPORTED_Y$3,
814
822
  BROKEN_CARET: BROKEN_CARET
815
823
  };
816
824
 
817
825
  var nativeExec = RegExp.prototype.exec;
818
- // This always refers to the native implementation, because the
819
- // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
820
- // which loads this file before patching the method.
821
- var nativeReplace = String.prototype.replace;
826
+ var nativeReplace = shared('native-string-replace', String.prototype.replace);
822
827
 
823
828
  var patchedExec = nativeExec;
824
829
 
@@ -830,19 +835,19 @@
830
835
  return re1.lastIndex !== 0 || re2.lastIndex !== 0;
831
836
  })();
832
837
 
833
- var UNSUPPORTED_Y$1 = regexpStickyHelpers.UNSUPPORTED_Y || regexpStickyHelpers.BROKEN_CARET;
838
+ var UNSUPPORTED_Y$2 = regexpStickyHelpers.UNSUPPORTED_Y || regexpStickyHelpers.BROKEN_CARET;
834
839
 
835
840
  // nonparticipating capturing group, copied from es5-shim's String#split patch.
836
841
  // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing
837
842
  var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
838
843
 
839
- var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$1;
844
+ var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$2;
840
845
 
841
846
  if (PATCH) {
842
847
  patchedExec = function exec(str) {
843
848
  var re = this;
844
849
  var lastIndex, reCopy, match, i;
845
- var sticky = UNSUPPORTED_Y$1 && re.sticky;
850
+ var sticky = UNSUPPORTED_Y$2 && re.sticky;
846
851
  var flags = regexpFlags.call(re);
847
852
  var source = re.source;
848
853
  var charsAdded = 0;
@@ -927,16 +932,19 @@
927
932
 
928
933
  var engineV8Version = version && +version;
929
934
 
935
+ // eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
930
936
  var nativeSymbol = !!Object.getOwnPropertySymbols && !fails(function () {
931
- /* global Symbol -- required for testing */
937
+ // eslint-disable-next-line es/no-symbol -- required for testing
932
938
  return !Symbol.sham &&
933
939
  // Chrome 38 Symbol has incorrect toString conversion
934
940
  // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
935
941
  (engineIsNode ? engineV8Version === 38 : engineV8Version > 37 && engineV8Version < 41);
936
942
  });
937
943
 
944
+ /* eslint-disable es/no-symbol -- required for testing */
945
+
946
+
938
947
  var useSymbolAsUid = nativeSymbol
939
- /* global Symbol -- safe */
940
948
  && !Symbol.sham
941
949
  && typeof Symbol.iterator == 'symbol';
942
950
 
@@ -961,7 +969,6 @@
961
969
 
962
970
 
963
971
 
964
-
965
972
  var SPECIES$5 = wellKnownSymbol('species');
966
973
 
967
974
  var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
@@ -980,6 +987,7 @@
980
987
  // IE <= 11 replaces $0 with the whole match, as if it was $&
981
988
  // https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
982
989
  var REPLACE_KEEPS_$0 = (function () {
990
+ // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing
983
991
  return 'a'.replace(/./, '$0') === '$0';
984
992
  })();
985
993
 
@@ -1049,7 +1057,7 @@
1049
1057
  ) {
1050
1058
  var nativeRegExpMethod = /./[SYMBOL];
1051
1059
  var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
1052
- if (regexp.exec === regexpExec) {
1060
+ if (regexp.exec === RegExp.prototype.exec) {
1053
1061
  if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
1054
1062
  // The native String method already delegates to @@method (this
1055
1063
  // polyfilled function), leasing to infinite recursion.
@@ -1157,13 +1165,11 @@
1157
1165
  return regexpExec.call(R, S);
1158
1166
  };
1159
1167
 
1168
+ var UNSUPPORTED_Y$1 = regexpStickyHelpers.UNSUPPORTED_Y;
1160
1169
  var arrayPush = [].push;
1161
1170
  var min$4 = Math.min;
1162
1171
  var MAX_UINT32 = 0xFFFFFFFF;
1163
1172
 
1164
- // babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
1165
- var SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });
1166
-
1167
1173
  // @@split logic
1168
1174
  fixRegexpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {
1169
1175
  var internalSplit;
@@ -1246,11 +1252,11 @@
1246
1252
  var flags = (rx.ignoreCase ? 'i' : '') +
1247
1253
  (rx.multiline ? 'm' : '') +
1248
1254
  (rx.unicode ? 'u' : '') +
1249
- (SUPPORTS_Y ? 'y' : 'g');
1255
+ (UNSUPPORTED_Y$1 ? 'g' : 'y');
1250
1256
 
1251
1257
  // ^(? + rx + ) is needed, in combination with some S slicing, to
1252
1258
  // simulate the 'y' flag.
1253
- var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
1259
+ var splitter = new C(UNSUPPORTED_Y$1 ? '^(?:' + rx.source + ')' : rx, flags);
1254
1260
  var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
1255
1261
  if (lim === 0) return [];
1256
1262
  if (S.length === 0) return regexpExecAbstract(splitter, S) === null ? [S] : [];
@@ -1258,12 +1264,12 @@
1258
1264
  var q = 0;
1259
1265
  var A = [];
1260
1266
  while (q < S.length) {
1261
- splitter.lastIndex = SUPPORTS_Y ? q : 0;
1262
- var z = regexpExecAbstract(splitter, SUPPORTS_Y ? S : S.slice(q));
1267
+ splitter.lastIndex = UNSUPPORTED_Y$1 ? 0 : q;
1268
+ var z = regexpExecAbstract(splitter, UNSUPPORTED_Y$1 ? S.slice(q) : S);
1263
1269
  var e;
1264
1270
  if (
1265
1271
  z === null ||
1266
- (e = min$4(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
1272
+ (e = min$4(toLength(splitter.lastIndex + (UNSUPPORTED_Y$1 ? q : 0)), S.length)) === p
1267
1273
  ) {
1268
1274
  q = advanceStringIndex(S, q, unicodeMatching);
1269
1275
  } else {
@@ -1280,16 +1286,58 @@
1280
1286
  return A;
1281
1287
  }
1282
1288
  ];
1283
- }, !SUPPORTS_Y);
1289
+ }, UNSUPPORTED_Y$1);
1284
1290
 
1285
1291
  // `Object.keys` method
1286
1292
  // https://tc39.es/ecma262/#sec-object.keys
1293
+ // eslint-disable-next-line es/no-object-keys -- safe
1287
1294
  var objectKeys = Object.keys || function keys(O) {
1288
1295
  return objectKeysInternal(O, enumBugKeys);
1289
1296
  };
1290
1297
 
1298
+ var propertyIsEnumerable = objectPropertyIsEnumerable.f;
1299
+
1300
+ // `Object.{ entries, values }` methods implementation
1301
+ var createMethod$1 = function (TO_ENTRIES) {
1302
+ return function (it) {
1303
+ var O = toIndexedObject(it);
1304
+ var keys = objectKeys(O);
1305
+ var length = keys.length;
1306
+ var i = 0;
1307
+ var result = [];
1308
+ var key;
1309
+ while (length > i) {
1310
+ key = keys[i++];
1311
+ if (!descriptors || propertyIsEnumerable.call(O, key)) {
1312
+ result.push(TO_ENTRIES ? [key, O[key]] : O[key]);
1313
+ }
1314
+ }
1315
+ return result;
1316
+ };
1317
+ };
1318
+
1319
+ var objectToArray = {
1320
+ // `Object.entries` method
1321
+ // https://tc39.es/ecma262/#sec-object.entries
1322
+ entries: createMethod$1(true),
1323
+ // `Object.values` method
1324
+ // https://tc39.es/ecma262/#sec-object.values
1325
+ values: createMethod$1(false)
1326
+ };
1327
+
1328
+ var $entries = objectToArray.entries;
1329
+
1330
+ // `Object.entries` method
1331
+ // https://tc39.es/ecma262/#sec-object.entries
1332
+ _export({ target: 'Object', stat: true }, {
1333
+ entries: function entries(O) {
1334
+ return $entries(O);
1335
+ }
1336
+ });
1337
+
1291
1338
  // `Object.defineProperties` method
1292
1339
  // https://tc39.es/ecma262/#sec-object.defineproperties
1340
+ // eslint-disable-next-line es/no-object-defineproperties -- safe
1293
1341
  var objectDefineProperties = descriptors ? Object.defineProperties : function defineProperties(O, Properties) {
1294
1342
  anObject(O);
1295
1343
  var keys = objectKeys(Properties);
@@ -1406,6 +1454,7 @@
1406
1454
 
1407
1455
  // `IsArray` abstract operation
1408
1456
  // https://tc39.es/ecma262/#sec-isarray
1457
+ // eslint-disable-next-line es/no-array-isarray -- safe
1409
1458
  var isArray = Array.isArray || function isArray(arg) {
1410
1459
  return classofRaw(arg) == 'Array';
1411
1460
  };
@@ -1530,7 +1579,7 @@
1530
1579
  var push = [].push;
1531
1580
 
1532
1581
  // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
1533
- var createMethod$1 = function (TYPE) {
1582
+ var createMethod = function (TYPE) {
1534
1583
  var IS_MAP = TYPE == 1;
1535
1584
  var IS_FILTER = TYPE == 2;
1536
1585
  var IS_SOME = TYPE == 3;
@@ -1570,28 +1619,28 @@
1570
1619
  var arrayIteration = {
1571
1620
  // `Array.prototype.forEach` method
1572
1621
  // https://tc39.es/ecma262/#sec-array.prototype.foreach
1573
- forEach: createMethod$1(0),
1622
+ forEach: createMethod(0),
1574
1623
  // `Array.prototype.map` method
1575
1624
  // https://tc39.es/ecma262/#sec-array.prototype.map
1576
- map: createMethod$1(1),
1625
+ map: createMethod(1),
1577
1626
  // `Array.prototype.filter` method
1578
1627
  // https://tc39.es/ecma262/#sec-array.prototype.filter
1579
- filter: createMethod$1(2),
1628
+ filter: createMethod(2),
1580
1629
  // `Array.prototype.some` method
1581
1630
  // https://tc39.es/ecma262/#sec-array.prototype.some
1582
- some: createMethod$1(3),
1631
+ some: createMethod(3),
1583
1632
  // `Array.prototype.every` method
1584
1633
  // https://tc39.es/ecma262/#sec-array.prototype.every
1585
- every: createMethod$1(4),
1634
+ every: createMethod(4),
1586
1635
  // `Array.prototype.find` method
1587
1636
  // https://tc39.es/ecma262/#sec-array.prototype.find
1588
- find: createMethod$1(5),
1637
+ find: createMethod(5),
1589
1638
  // `Array.prototype.findIndex` method
1590
1639
  // https://tc39.es/ecma262/#sec-array.prototype.findIndex
1591
- findIndex: createMethod$1(6),
1640
+ findIndex: createMethod(6),
1592
1641
  // `Array.prototype.filterOut` method
1593
1642
  // https://github.com/tc39/proposal-array-filtering
1594
- filterOut: createMethod$1(7)
1643
+ filterOut: createMethod(7)
1595
1644
  };
1596
1645
 
1597
1646
  var $find = arrayIteration.find;
@@ -1688,6 +1737,7 @@
1688
1737
  // https://tc39.es/ecma262/#sec-array.prototype.foreach
1689
1738
  var arrayForEach = !STRICT_METHOD$2 ? function forEach(callbackfn /* , thisArg */) {
1690
1739
  return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
1740
+ // eslint-disable-next-line es/no-array-prototype-foreach -- safe
1691
1741
  } : [].forEach;
1692
1742
 
1693
1743
  for (var COLLECTION_NAME$1 in domIterables) {
@@ -1721,45 +1771,7 @@
1721
1771
  parseFloat: numberParseFloat
1722
1772
  });
1723
1773
 
1724
- var propertyIsEnumerable = objectPropertyIsEnumerable.f;
1725
-
1726
- // `Object.{ entries, values }` methods implementation
1727
- var createMethod = function (TO_ENTRIES) {
1728
- return function (it) {
1729
- var O = toIndexedObject(it);
1730
- var keys = objectKeys(O);
1731
- var length = keys.length;
1732
- var i = 0;
1733
- var result = [];
1734
- var key;
1735
- while (length > i) {
1736
- key = keys[i++];
1737
- if (!descriptors || propertyIsEnumerable.call(O, key)) {
1738
- result.push(TO_ENTRIES ? [key, O[key]] : O[key]);
1739
- }
1740
- }
1741
- return result;
1742
- };
1743
- };
1744
-
1745
- var objectToArray = {
1746
- // `Object.entries` method
1747
- // https://tc39.es/ecma262/#sec-object.entries
1748
- entries: createMethod(true),
1749
- // `Object.values` method
1750
- // https://tc39.es/ecma262/#sec-object.values
1751
- values: createMethod(false)
1752
- };
1753
-
1754
- var $entries = objectToArray.entries;
1755
-
1756
- // `Object.entries` method
1757
- // https://tc39.es/ecma262/#sec-object.entries
1758
- _export({ target: 'Object', stat: true }, {
1759
- entries: function entries(O) {
1760
- return $entries(O);
1761
- }
1762
- });
1774
+ /* eslint-disable es/no-array-prototype-indexof -- required for testing */
1763
1775
 
1764
1776
  var $indexOf = arrayIncludes.indexOf;
1765
1777
 
@@ -1934,14 +1946,16 @@
1934
1946
  ];
1935
1947
  });
1936
1948
 
1937
- var nativeAssign = Object.assign;
1949
+ // eslint-disable-next-line es/no-object-assign -- safe
1950
+ var $assign = Object.assign;
1951
+ // eslint-disable-next-line es/no-object-defineproperty -- required for testing
1938
1952
  var defineProperty$3 = Object.defineProperty;
1939
1953
 
1940
1954
  // `Object.assign` method
1941
1955
  // https://tc39.es/ecma262/#sec-object.assign
1942
- var objectAssign = !nativeAssign || fails(function () {
1956
+ var objectAssign = !$assign || fails(function () {
1943
1957
  // should have correct order of operations (Edge bug)
1944
- if (descriptors && nativeAssign({ b: 1 }, nativeAssign(defineProperty$3({}, 'a', {
1958
+ if (descriptors && $assign({ b: 1 }, $assign(defineProperty$3({}, 'a', {
1945
1959
  enumerable: true,
1946
1960
  get: function () {
1947
1961
  defineProperty$3(this, 'b', {
@@ -1953,12 +1967,12 @@
1953
1967
  // should work with symbols and should have deterministic property order (V8 bug)
1954
1968
  var A = {};
1955
1969
  var B = {};
1956
- /* global Symbol -- required for testing */
1970
+ // eslint-disable-next-line es/no-symbol -- safe
1957
1971
  var symbol = Symbol();
1958
1972
  var alphabet = 'abcdefghijklmnopqrst';
1959
1973
  A[symbol] = 7;
1960
1974
  alphabet.split('').forEach(function (chr) { B[chr] = chr; });
1961
- return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;
1975
+ return $assign({}, A)[symbol] != 7 || objectKeys($assign({}, B)).join('') != alphabet;
1962
1976
  }) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`
1963
1977
  var T = toObject(target);
1964
1978
  var argumentsLength = arguments.length;
@@ -1976,10 +1990,11 @@
1976
1990
  if (!descriptors || propertyIsEnumerable.call(S, key)) T[key] = S[key];
1977
1991
  }
1978
1992
  } return T;
1979
- } : nativeAssign;
1993
+ } : $assign;
1980
1994
 
1981
1995
  // `Object.assign` method
1982
1996
  // https://tc39.es/ecma262/#sec-object.assign
1997
+ // eslint-disable-next-line es/no-object-assign -- required for testing
1983
1998
  _export({ target: 'Object', stat: true, forced: Object.assign !== objectAssign }, {
1984
1999
  assign: objectAssign
1985
2000
  });
@@ -2000,6 +2015,7 @@
2000
2015
 
2001
2016
  // `SameValue` abstract operation
2002
2017
  // https://tc39.es/ecma262/#sec-samevalue
2018
+ // eslint-disable-next-line es/no-object-is -- safe
2003
2019
  var sameValue = Object.is || function is(x, y) {
2004
2020
  // eslint-disable-next-line no-self-compare -- NaN check
2005
2021
  return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
@@ -2100,11 +2116,13 @@
2100
2116
  // `Object.setPrototypeOf` method
2101
2117
  // https://tc39.es/ecma262/#sec-object.setprototypeof
2102
2118
  // Works with __proto__ only. Old v8 can't work with null proto objects.
2119
+ // eslint-disable-next-line es/no-object-setprototypeof -- safe
2103
2120
  var objectSetPrototypeOf = Object.setPrototypeOf || ('__proto__' in {} ? function () {
2104
2121
  var CORRECT_SETTER = false;
2105
2122
  var test = {};
2106
2123
  var setter;
2107
2124
  try {
2125
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
2108
2126
  setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;
2109
2127
  setter.call(test, []);
2110
2128
  CORRECT_SETTER = test instanceof Array;
@@ -2330,6 +2348,7 @@
2330
2348
  var correctPrototypeGetter = !fails(function () {
2331
2349
  function F() { /* empty */ }
2332
2350
  F.prototype.constructor = null;
2351
+ // eslint-disable-next-line es/no-object-getprototypeof -- required for testing
2333
2352
  return Object.getPrototypeOf(new F()) !== F.prototype;
2334
2353
  });
2335
2354
 
@@ -2338,6 +2357,7 @@
2338
2357
 
2339
2358
  // `Object.getPrototypeOf` method
2340
2359
  // https://tc39.es/ecma262/#sec-object.getprototypeof
2360
+ // eslint-disable-next-line es/no-object-getprototypeof -- safe
2341
2361
  var objectGetPrototypeOf = correctPrototypeGetter ? Object.getPrototypeOf : function (O) {
2342
2362
  O = toObject(O);
2343
2363
  if (has$1(O, IE_PROTO)) return O[IE_PROTO];
@@ -2355,6 +2375,7 @@
2355
2375
  // https://tc39.es/ecma262/#sec-%iteratorprototype%-object
2356
2376
  var IteratorPrototype$2, PrototypeOfArrayIteratorPrototype, arrayIterator;
2357
2377
 
2378
+ /* eslint-disable es/no-array-prototype-keys -- safe */
2358
2379
  if ([].keys) {
2359
2380
  arrayIterator = [].keys();
2360
2381
  // Safari 8 has buggy iterators w/o `next`
@@ -2696,7 +2717,7 @@
2696
2717
 
2697
2718
  /* eslint-disable no-unused-vars */
2698
2719
 
2699
- var VERSION = '1.18.3';
2720
+ var VERSION = '1.19.0';
2700
2721
  var bootstrapVersion = 4;
2701
2722
 
2702
2723
  try {
@@ -2813,19 +2834,19 @@
2813
2834
  }
2814
2835
  },
2815
2836
  5: {
2816
- iconsPrefix: 'fa',
2837
+ iconsPrefix: 'bi',
2817
2838
  icons: {
2818
- paginationSwitchDown: 'fa-caret-square-down',
2819
- paginationSwitchUp: 'fa-caret-square-up',
2820
- refresh: 'fa-sync',
2821
- toggleOff: 'fa-toggle-off',
2822
- toggleOn: 'fa-toggle-on',
2823
- columns: 'fa-th-list',
2824
- detailOpen: 'fa-plus',
2825
- detailClose: 'fa-minus',
2826
- fullscreen: 'fa-arrows-alt',
2827
- search: 'fa-search',
2828
- clearSearch: 'fa-trash'
2839
+ paginationSwitchDown: 'bi-caret-down-square',
2840
+ paginationSwitchUp: 'bi-caret-up-square',
2841
+ refresh: 'bi-arrow-clockwise',
2842
+ toggleOff: 'bi-toggle-off',
2843
+ toggleOn: 'bi-toggle-on',
2844
+ columns: 'bi-list-ul',
2845
+ detailOpen: 'bi-plus',
2846
+ detailClose: 'bi-dash',
2847
+ fullscreen: 'bi-arrows-move',
2848
+ search: 'bi-search',
2849
+ clearSearch: 'bi-trash'
2829
2850
  },
2830
2851
  classes: {
2831
2852
  buttonsPrefix: 'btn',
@@ -2853,7 +2874,7 @@
2853
2874
  pagination: ['<ul class="pagination%s">', '</ul>'],
2854
2875
  paginationItem: '<li class="page-item%s"><a class="page-link" aria-label="%s" href="javascript:void(0)">%s</a></li>',
2855
2876
  icon: '<i class="%s %s"></i>',
2856
- inputGroup: '<div class="input-group">%s<div class="input-group-append">%s</div></div>',
2877
+ inputGroup: '<div class="input-group">%s%s</div>',
2857
2878
  searchInput: '<input class="%s%s" type="text" placeholder="%s">',
2858
2879
  searchButton: '<button class="%s" type="button" name="search" title="%s">%s %s</button>',
2859
2880
  searchClearButton: '<button class="%s" type="button" name="clearSearch" title="%s">%s %s</button>'
@@ -2938,6 +2959,7 @@
2938
2959
  searchHighlight: false,
2939
2960
  searchOnEnterKey: false,
2940
2961
  strictSearch: false,
2962
+ regexSearch: false,
2941
2963
  searchSelector: false,
2942
2964
  visibleSearch: false,
2943
2965
  showButtonIcons: true,
@@ -3089,6 +3111,9 @@
3089
3111
  },
3090
3112
  onScrollBody: function onScrollBody() {
3091
3113
  return false;
3114
+ },
3115
+ onTogglePagination: function onTogglePagination(newState) {
3116
+ return false;
3092
3117
  }
3093
3118
  };
3094
3119
  var EN = {
@@ -3229,7 +3254,9 @@
3229
3254
  'refresh-options.bs.table': 'onRefreshOptions',
3230
3255
  'reset-view.bs.table': 'onResetView',
3231
3256
  'refresh.bs.table': 'onRefresh',
3232
- 'scroll-body.bs.table': 'onScrollBody'
3257
+ 'scroll-body.bs.table': 'onScrollBody',
3258
+ 'toggle-pagination.bs.table': 'onTogglePagination',
3259
+ 'virtual-scroll.bs.table': 'onVirtualScroll'
3233
3260
  };
3234
3261
  Object.assign(DEFAULTS, EN);
3235
3262
  var Constants = {
@@ -3256,6 +3283,43 @@
3256
3283
  }
3257
3284
  });
3258
3285
 
3286
+ // @@match logic
3287
+ fixRegexpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {
3288
+ return [
3289
+ // `String.prototype.match` method
3290
+ // https://tc39.es/ecma262/#sec-string.prototype.match
3291
+ function match(regexp) {
3292
+ var O = requireObjectCoercible(this);
3293
+ var matcher = regexp == undefined ? undefined : regexp[MATCH];
3294
+ return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
3295
+ },
3296
+ // `RegExp.prototype[@@match]` method
3297
+ // https://tc39.es/ecma262/#sec-regexp.prototype-@@match
3298
+ function (regexp) {
3299
+ var res = maybeCallNative(nativeMatch, regexp, this);
3300
+ if (res.done) return res.value;
3301
+
3302
+ var rx = anObject(regexp);
3303
+ var S = String(this);
3304
+
3305
+ if (!rx.global) return regexpExecAbstract(rx, S);
3306
+
3307
+ var fullUnicode = rx.unicode;
3308
+ rx.lastIndex = 0;
3309
+ var A = [];
3310
+ var n = 0;
3311
+ var result;
3312
+ while ((result = regexpExecAbstract(rx, S)) !== null) {
3313
+ var matchStr = String(result[0]);
3314
+ A[n] = matchStr;
3315
+ if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
3316
+ n++;
3317
+ }
3318
+ return n === 0 ? null : A;
3319
+ }
3320
+ ];
3321
+ });
3322
+
3259
3323
  var getOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f;
3260
3324
 
3261
3325
 
@@ -3263,7 +3327,8 @@
3263
3327
 
3264
3328
 
3265
3329
 
3266
- var nativeStartsWith = ''.startsWith;
3330
+ // eslint-disable-next-line es/no-string-prototype-startswith -- safe
3331
+ var $startsWith = ''.startsWith;
3267
3332
  var min$1 = Math.min;
3268
3333
 
3269
3334
  var CORRECT_IS_REGEXP_LOGIC$1 = correctIsRegexpLogic('startsWith');
@@ -3281,8 +3346,8 @@
3281
3346
  notARegexp(searchString);
3282
3347
  var index = toLength(min$1(arguments.length > 1 ? arguments[1] : undefined, that.length));
3283
3348
  var search = String(searchString);
3284
- return nativeStartsWith
3285
- ? nativeStartsWith.call(that, search, index)
3349
+ return $startsWith
3350
+ ? $startsWith.call(that, search, index)
3286
3351
  : that.slice(index, index + search.length) === search;
3287
3352
  }
3288
3353
  });
@@ -3294,7 +3359,8 @@
3294
3359
 
3295
3360
 
3296
3361
 
3297
- var nativeEndsWith = ''.endsWith;
3362
+ // eslint-disable-next-line es/no-string-prototype-endswith -- safe
3363
+ var $endsWith = ''.endsWith;
3298
3364
  var min = Math.min;
3299
3365
 
3300
3366
  var CORRECT_IS_REGEXP_LOGIC = correctIsRegexpLogic('endsWith');
@@ -3314,8 +3380,8 @@
3314
3380
  var len = toLength(that.length);
3315
3381
  var end = endPosition === undefined ? len : min(toLength(endPosition), len);
3316
3382
  var search = String(searchString);
3317
- return nativeEndsWith
3318
- ? nativeEndsWith.call(that, search, end)
3383
+ return $endsWith
3384
+ ? $endsWith.call(that, search, end)
3319
3385
  : that.slice(end - search.length, end) === search;
3320
3386
  }
3321
3387
  });
@@ -3582,6 +3648,17 @@
3582
3648
 
3583
3649
  return true;
3584
3650
  },
3651
+ regexCompare: function regexCompare(value, search) {
3652
+ try {
3653
+ var regexpParts = search.match(/^\/(.*?)\/([gim]*)$/);
3654
+
3655
+ if (value.toString().search(regexpParts ? new RegExp(regexpParts[1], regexpParts[2]) : new RegExp(search, 'gim')) !== -1) {
3656
+ return true;
3657
+ }
3658
+ } catch (e) {
3659
+ return false;
3660
+ }
3661
+ },
3585
3662
  escapeHTML: function escapeHTML(text) {
3586
3663
  if (typeof text === 'string') {
3587
3664
  return text.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#039;').replace(/`/g, '&#x60;');
@@ -3823,7 +3900,7 @@
3823
3900
  if (_this.lastCluster !== (_this.lastCluster = _this.getNum())) {
3824
3901
  _this.initDOM(_this.rows);
3825
3902
 
3826
- _this.callback();
3903
+ _this.callback(_this.startIndex, _this.endIndex);
3827
3904
  }
3828
3905
  };
3829
3906
 
@@ -3863,6 +3940,8 @@
3863
3940
  html.push(this.getExtra('bottom', data.bottomOffset));
3864
3941
  }
3865
3942
 
3943
+ this.startIndex = data.start;
3944
+ this.endIndex = data.end;
3866
3945
  this.contentEl.innerHTML = html.join('');
3867
3946
 
3868
3947
  if (fixedScroll) {
@@ -3919,6 +3998,8 @@
3919
3998
  }
3920
3999
 
3921
4000
  return {
4001
+ start: start,
4002
+ end: end,
3922
4003
  topOffset: topOffset,
3923
4004
  bottomOffset: bottomOffset,
3924
4005
  rowsAbove: rowsAbove,
@@ -4007,12 +4088,26 @@
4007
4088
  parts[1] = parts[1].toUpperCase();
4008
4089
  }
4009
4090
 
4091
+ var localesToExtend = {};
4092
+
4010
4093
  if (locales[this.options.locale]) {
4011
- $__default['default'].extend(this.options, locales[this.options.locale]);
4094
+ localesToExtend = locales[this.options.locale];
4012
4095
  } else if (locales[parts.join('-')]) {
4013
- $__default['default'].extend(this.options, locales[parts.join('-')]);
4096
+ localesToExtend = locales[parts.join('-')];
4014
4097
  } else if (locales[parts[0]]) {
4015
- $__default['default'].extend(this.options, locales[parts[0]]);
4098
+ localesToExtend = locales[parts[0]];
4099
+ }
4100
+
4101
+ for (var _i = 0, _Object$entries = Object.entries(localesToExtend); _i < _Object$entries.length; _i++) {
4102
+ var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
4103
+ formatName = _Object$entries$_i[0],
4104
+ func = _Object$entries$_i[1];
4105
+
4106
+ if (this.options[formatName] !== BootstrapTable.DEFAULTS[formatName]) {
4107
+ continue;
4108
+ }
4109
+
4110
+ this.options[formatName] = func;
4016
4111
  }
4017
4112
  }
4018
4113
  }
@@ -4199,10 +4294,10 @@
4199
4294
  var classes = '';
4200
4295
 
4201
4296
  if (headerStyle && headerStyle.css) {
4202
- for (var _i = 0, _Object$entries = Object.entries(headerStyle.css); _i < _Object$entries.length; _i++) {
4203
- var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
4204
- key = _Object$entries$_i[0],
4205
- value = _Object$entries$_i[1];
4297
+ for (var _i2 = 0, _Object$entries2 = Object.entries(headerStyle.css); _i2 < _Object$entries2.length; _i2++) {
4298
+ var _Object$entries2$_i = _slicedToArray(_Object$entries2[_i2], 2),
4299
+ key = _Object$entries2$_i[0],
4300
+ value = _Object$entries2$_i[1];
4206
4301
 
4207
4302
  csses.push("".concat(key, ": ").concat(value));
4208
4303
  }
@@ -4294,16 +4389,6 @@
4294
4389
  _this2.onSort(e);
4295
4390
  }
4296
4391
  });
4297
- this.$header.children().children().off('keypress').on('keypress', function (e) {
4298
- if (_this2.options.sortable && $__default['default'](e.currentTarget).data().sortable) {
4299
- var code = e.keyCode || e.which;
4300
-
4301
- if (code === 13) {
4302
- // Enter keycode
4303
- _this2.onSort(e);
4304
- }
4305
- }
4306
- });
4307
4392
  var resizeEvent = Utils.getEventName('resize.bootstrap-table', this.$el.attr('id'));
4308
4393
  $__default['default'](window).off(resizeEvent);
4309
4394
 
@@ -4582,10 +4667,10 @@
4582
4667
  });
4583
4668
  var buttonsHtml = {};
4584
4669
 
4585
- for (var _i2 = 0, _Object$entries2 = Object.entries(this.buttons); _i2 < _Object$entries2.length; _i2++) {
4586
- var _Object$entries2$_i = _slicedToArray(_Object$entries2[_i2], 2),
4587
- buttonName = _Object$entries2$_i[0],
4588
- buttonConfig = _Object$entries2$_i[1];
4670
+ for (var _i3 = 0, _Object$entries3 = Object.entries(this.buttons); _i3 < _Object$entries3.length; _i3++) {
4671
+ var _Object$entries3$_i = _slicedToArray(_Object$entries3[_i3], 2),
4672
+ buttonName = _Object$entries3$_i[0],
4673
+ buttonConfig = _Object$entries3$_i[1];
4589
4674
 
4590
4675
  var buttonHtml = void 0;
4591
4676
 
@@ -4599,10 +4684,10 @@
4599
4684
  buttonHtml = "<button class=\"".concat(this.constants.buttonsClass, "\" type=\"button\" name=\"").concat(buttonName, "\"");
4600
4685
 
4601
4686
  if (buttonConfig.hasOwnProperty('attributes')) {
4602
- for (var _i3 = 0, _Object$entries3 = Object.entries(buttonConfig.attributes); _i3 < _Object$entries3.length; _i3++) {
4603
- var _Object$entries3$_i = _slicedToArray(_Object$entries3[_i3], 2),
4604
- attributeName = _Object$entries3$_i[0],
4605
- value = _Object$entries3$_i[1];
4687
+ for (var _i4 = 0, _Object$entries4 = Object.entries(buttonConfig.attributes); _i4 < _Object$entries4.length; _i4++) {
4688
+ var _Object$entries4$_i = _slicedToArray(_Object$entries4[_i4], 2),
4689
+ attributeName = _Object$entries4$_i[0],
4690
+ value = _Object$entries4$_i[1];
4606
4691
 
4607
4692
  buttonHtml += " ".concat(attributeName, "=\"").concat(value, "\"");
4608
4693
  }
@@ -4659,10 +4744,10 @@
4659
4744
  this.$toolbar.append(html.join(''));
4660
4745
  }
4661
4746
 
4662
- for (var _i4 = 0, _Object$entries4 = Object.entries(this.buttons); _i4 < _Object$entries4.length; _i4++) {
4663
- var _Object$entries4$_i = _slicedToArray(_Object$entries4[_i4], 2),
4664
- _buttonName = _Object$entries4$_i[0],
4665
- _buttonConfig = _Object$entries4$_i[1];
4747
+ for (var _i5 = 0, _Object$entries5 = Object.entries(this.buttons); _i5 < _Object$entries5.length; _i5++) {
4748
+ var _Object$entries5$_i = _slicedToArray(_Object$entries5[_i5], 2),
4749
+ _buttonName = _Object$entries5$_i[0],
4750
+ _buttonConfig = _Object$entries5$_i[1];
4666
4751
 
4667
4752
  if (_buttonConfig.hasOwnProperty('event')) {
4668
4753
  if (typeof _buttonConfig.event === 'function' || typeof _buttonConfig.event === 'string') {
@@ -4680,9 +4765,9 @@
4680
4765
  }
4681
4766
 
4682
4767
  var _loop = function _loop() {
4683
- var _Object$entries5$_i = _slicedToArray(_Object$entries5[_i5], 2),
4684
- eventType = _Object$entries5$_i[0],
4685
- eventFunction = _Object$entries5$_i[1];
4768
+ var _Object$entries6$_i = _slicedToArray(_Object$entries6[_i6], 2),
4769
+ eventType = _Object$entries6$_i[0],
4770
+ eventFunction = _Object$entries6$_i[1];
4686
4771
 
4687
4772
  var event = typeof eventFunction === 'string' ? window[eventFunction] : eventFunction;
4688
4773
 
@@ -4691,7 +4776,7 @@
4691
4776
  });
4692
4777
  };
4693
4778
 
4694
- for (var _i5 = 0, _Object$entries5 = Object.entries(_buttonConfig.event); _i5 < _Object$entries5.length; _i5++) {
4779
+ for (var _i6 = 0, _Object$entries6 = Object.entries(_buttonConfig.event); _i6 < _Object$entries6.length; _i6++) {
4695
4780
  _loop();
4696
4781
  }
4697
4782
  }
@@ -4836,7 +4921,10 @@
4836
4921
  return;
4837
4922
  }
4838
4923
 
4839
- if (currentTarget === Utils.getSearchInput(this)[0] || $__default['default'](currentTarget).hasClass('search-input')) {
4924
+ var $searchInput = Utils.getSearchInput(this);
4925
+ var $currentTarget = currentTarget instanceof jQuery ? currentTarget : $__default['default'](currentTarget);
4926
+
4927
+ if ($currentTarget.is($searchInput) || $currentTarget.hasClass('search-input')) {
4840
4928
  this.searchText = text;
4841
4929
  this.options.searchText = text;
4842
4930
  }
@@ -4876,11 +4964,12 @@
4876
4964
  return;
4877
4965
  }
4878
4966
 
4879
- var s = this.searchText && (this.fromHtml ? Utils.escapeHTML(this.searchText) : this.searchText).toLowerCase();
4967
+ var rawSearchText = this.searchText && (this.fromHtml ? Utils.escapeHTML(this.searchText) : this.searchText);
4968
+ var searchText = rawSearchText ? rawSearchText.toLowerCase() : '';
4880
4969
  var f = Utils.isEmptyObject(this.filterColumns) ? null : this.filterColumns;
4881
4970
 
4882
4971
  if (this.options.searchAccentNeutralise) {
4883
- s = Utils.normalizeAccent(s);
4972
+ searchText = Utils.normalizeAccent(searchText);
4884
4973
  } // Check filter
4885
4974
 
4886
4975
 
@@ -4915,7 +5004,7 @@
4915
5004
  }
4916
5005
 
4917
5006
  var visibleFields = this.getVisibleFields();
4918
- this.data = s ? this.data.filter(function (item, i) {
5007
+ this.data = searchText ? this.data.filter(function (item, i) {
4919
5008
  for (var j = 0; j < _this5.header.fields.length; j++) {
4920
5009
  if (!_this5.header.searchables[j] || _this5.options.visibleSearch && visibleFields.indexOf(_this5.header.fields[j]) === -1) {
4921
5010
  continue;
@@ -4929,9 +5018,9 @@
4929
5018
  value = item;
4930
5019
  var props = key.split('.');
4931
5020
 
4932
- for (var _i6 = 0; _i6 < props.length; _i6++) {
4933
- if (value[props[_i6]] !== null) {
4934
- value = value[props[_i6]];
5021
+ for (var _i7 = 0; _i7 < props.length; _i7++) {
5022
+ if (value[props[_i7]] !== null) {
5023
+ value = value[props[_i7]];
4935
5024
  }
4936
5025
  }
4937
5026
  } else {
@@ -4948,52 +5037,50 @@
4948
5037
  }
4949
5038
 
4950
5039
  if (typeof value === 'string' || typeof value === 'number') {
4951
- if (_this5.options.strictSearch) {
4952
- if ("".concat(value).toLowerCase() === s) {
4953
- return true;
4954
- }
4955
- } else {
4956
- var largerSmallerEqualsRegex = /(?:(<=|=>|=<|>=|>|<)(?:\s+)?(-?\d+)?|(-?\d+)?(\s+)?(<=|=>|=<|>=|>|<))/gm;
4957
- var matches = largerSmallerEqualsRegex.exec(_this5.searchText);
4958
- var comparisonCheck = false;
4959
-
4960
- if (matches) {
4961
- var operator = matches[1] || "".concat(matches[5], "l");
4962
- var comparisonValue = matches[2] || matches[3];
4963
- var int = parseInt(value, 10);
4964
- var comparisonInt = parseInt(comparisonValue, 10);
4965
-
4966
- switch (operator) {
4967
- case '>':
4968
- case '<l':
4969
- comparisonCheck = int > comparisonInt;
4970
- break;
4971
-
4972
- case '<':
4973
- case '>l':
4974
- comparisonCheck = int < comparisonInt;
4975
- break;
4976
-
4977
- case '<=':
4978
- case '=<':
4979
- case '>=l':
4980
- case '=>l':
4981
- comparisonCheck = int <= comparisonInt;
4982
- break;
4983
-
4984
- case '>=':
4985
- case '=>':
4986
- case '<=l':
4987
- case '=<l':
4988
- comparisonCheck = int >= comparisonInt;
4989
- break;
4990
- }
4991
- }
5040
+ if (_this5.options.strictSearch && "".concat(value).toLowerCase() === searchText || _this5.options.regexSearch && Utils.regexCompare(value, rawSearchText)) {
5041
+ return true;
5042
+ }
4992
5043
 
4993
- if (comparisonCheck || "".concat(value).toLowerCase().includes(s)) {
4994
- return true;
5044
+ var largerSmallerEqualsRegex = /(?:(<=|=>|=<|>=|>|<)(?:\s+)?(-?\d+)?|(-?\d+)?(\s+)?(<=|=>|=<|>=|>|<))/gm;
5045
+ var matches = largerSmallerEqualsRegex.exec(_this5.searchText);
5046
+ var comparisonCheck = false;
5047
+
5048
+ if (matches) {
5049
+ var operator = matches[1] || "".concat(matches[5], "l");
5050
+ var comparisonValue = matches[2] || matches[3];
5051
+ var int = parseInt(value, 10);
5052
+ var comparisonInt = parseInt(comparisonValue, 10);
5053
+
5054
+ switch (operator) {
5055
+ case '>':
5056
+ case '<l':
5057
+ comparisonCheck = int > comparisonInt;
5058
+ break;
5059
+
5060
+ case '<':
5061
+ case '>l':
5062
+ comparisonCheck = int < comparisonInt;
5063
+ break;
5064
+
5065
+ case '<=':
5066
+ case '=<':
5067
+ case '>=l':
5068
+ case '=>l':
5069
+ comparisonCheck = int <= comparisonInt;
5070
+ break;
5071
+
5072
+ case '>=':
5073
+ case '=>':
5074
+ case '<=l':
5075
+ case '=<l':
5076
+ comparisonCheck = int >= comparisonInt;
5077
+ break;
4995
5078
  }
4996
5079
  }
5080
+
5081
+ if (comparisonCheck || "".concat(value).toLowerCase().includes(searchText)) {
5082
+ return true;
5083
+ }
4997
5084
  }
4998
5085
  }
4999
5086
 
@@ -5219,7 +5306,7 @@
5219
5306
 
5220
5307
  if (opts.smartDisplay) {
5221
5308
  if (pageList.length < 2 || opts.totalRows <= pageList[0]) {
5222
- this.$pagination.find('span.page-list').hide();
5309
+ this.$pagination.find('div.page-list').hide();
5223
5310
  }
5224
5311
  } // when data is empty, hide the pagination
5225
5312
 
@@ -5290,6 +5377,10 @@
5290
5377
  }, {
5291
5378
  key: "onPagePre",
5292
5379
  value: function onPagePre(event) {
5380
+ if ($__default['default'](event.target).hasClass('disabled')) {
5381
+ return;
5382
+ }
5383
+
5293
5384
  event.preventDefault();
5294
5385
 
5295
5386
  if (this.options.pageNumber - 1 === 0) {
@@ -5304,6 +5395,10 @@
5304
5395
  }, {
5305
5396
  key: "onPageNext",
5306
5397
  value: function onPageNext(event) {
5398
+ if ($__default['default'](event.target).hasClass('disabled')) {
5399
+ return;
5400
+ }
5401
+
5307
5402
  event.preventDefault();
5308
5403
 
5309
5404
  if (this.options.pageNumber + 1 > this.options.totalPages) {
@@ -5348,10 +5443,10 @@
5348
5443
  style = Utils.calculateObjectValue(this.options, this.options.rowStyle, [item, i], style);
5349
5444
 
5350
5445
  if (style && style.css) {
5351
- for (var _i7 = 0, _Object$entries6 = Object.entries(style.css); _i7 < _Object$entries6.length; _i7++) {
5352
- var _Object$entries6$_i = _slicedToArray(_Object$entries6[_i7], 2),
5353
- key = _Object$entries6$_i[0],
5354
- value = _Object$entries6$_i[1];
5446
+ for (var _i8 = 0, _Object$entries7 = Object.entries(style.css); _i8 < _Object$entries7.length; _i8++) {
5447
+ var _Object$entries7$_i = _slicedToArray(_Object$entries7[_i8], 2),
5448
+ key = _Object$entries7$_i[0],
5449
+ value = _Object$entries7$_i[1];
5355
5450
 
5356
5451
  csses.push("".concat(key, ": ").concat(value));
5357
5452
  }
@@ -5360,20 +5455,20 @@
5360
5455
  attributes = Utils.calculateObjectValue(this.options, this.options.rowAttributes, [item, i], attributes);
5361
5456
 
5362
5457
  if (attributes) {
5363
- for (var _i8 = 0, _Object$entries7 = Object.entries(attributes); _i8 < _Object$entries7.length; _i8++) {
5364
- var _Object$entries7$_i = _slicedToArray(_Object$entries7[_i8], 2),
5365
- _key2 = _Object$entries7$_i[0],
5366
- _value = _Object$entries7$_i[1];
5458
+ for (var _i9 = 0, _Object$entries8 = Object.entries(attributes); _i9 < _Object$entries8.length; _i9++) {
5459
+ var _Object$entries8$_i = _slicedToArray(_Object$entries8[_i9], 2),
5460
+ _key2 = _Object$entries8$_i[0],
5461
+ _value = _Object$entries8$_i[1];
5367
5462
 
5368
5463
  htmlAttributes.push("".concat(_key2, "=\"").concat(Utils.escapeHTML(_value), "\""));
5369
5464
  }
5370
5465
  }
5371
5466
 
5372
5467
  if (item._data && !Utils.isEmptyObject(item._data)) {
5373
- for (var _i9 = 0, _Object$entries8 = Object.entries(item._data); _i9 < _Object$entries8.length; _i9++) {
5374
- var _Object$entries8$_i = _slicedToArray(_Object$entries8[_i9], 2),
5375
- k = _Object$entries8$_i[0],
5376
- v = _Object$entries8$_i[1];
5468
+ for (var _i10 = 0, _Object$entries9 = Object.entries(item._data); _i10 < _Object$entries9.length; _i10++) {
5469
+ var _Object$entries9$_i = _slicedToArray(_Object$entries9[_i10], 2),
5470
+ k = _Object$entries9$_i[0],
5471
+ v = _Object$entries9$_i[1];
5377
5472
 
5378
5473
  // ignore data-index
5379
5474
  if (k === 'index') {
@@ -5484,10 +5579,10 @@
5484
5579
  if (cellStyle.css) {
5485
5580
  var csses_ = [];
5486
5581
 
5487
- for (var _i10 = 0, _Object$entries9 = Object.entries(cellStyle.css); _i10 < _Object$entries9.length; _i10++) {
5488
- var _Object$entries9$_i = _slicedToArray(_Object$entries9[_i10], 2),
5489
- _key3 = _Object$entries9$_i[0],
5490
- _value2 = _Object$entries9$_i[1];
5582
+ for (var _i11 = 0, _Object$entries10 = Object.entries(cellStyle.css); _i11 < _Object$entries10.length; _i11++) {
5583
+ var _Object$entries10$_i = _slicedToArray(_Object$entries10[_i11], 2),
5584
+ _key3 = _Object$entries10$_i[0],
5585
+ _value2 = _Object$entries10$_i[1];
5491
5586
 
5492
5587
  csses_.push("".concat(_key3, ": ").concat(_value2));
5493
5588
  }
@@ -5501,7 +5596,7 @@
5501
5596
  value = typeof value === 'undefined' || value === null ? _this7.options.undefinedText : value;
5502
5597
  }
5503
5598
 
5504
- if (column.searchable && _this7.searchText && _this7.options.searchHighlight) {
5599
+ if (column.searchable && _this7.searchText && _this7.options.searchHighlight && !(column.checkbox || column.radio)) {
5505
5600
  var defValue = '';
5506
5601
  var regExp = new RegExp("(".concat(_this7.searchText.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), ")"), 'gim');
5507
5602
  var marker = '<mark>$1</mark>';
@@ -5521,10 +5616,10 @@
5521
5616
  }
5522
5617
 
5523
5618
  if (item["_".concat(field, "_data")] && !Utils.isEmptyObject(item["_".concat(field, "_data")])) {
5524
- for (var _i11 = 0, _Object$entries10 = Object.entries(item["_".concat(field, "_data")]); _i11 < _Object$entries10.length; _i11++) {
5525
- var _Object$entries10$_i = _slicedToArray(_Object$entries10[_i11], 2),
5526
- _k = _Object$entries10$_i[0],
5527
- _v = _Object$entries10$_i[1];
5619
+ for (var _i12 = 0, _Object$entries11 = Object.entries(item["_".concat(field, "_data")]); _i12 < _Object$entries11.length; _i12++) {
5620
+ var _Object$entries11$_i = _slicedToArray(_Object$entries11[_i12], 2),
5621
+ _k = _Object$entries11$_i[0],
5622
+ _v = _Object$entries11$_i[1];
5528
5623
 
5529
5624
  // ignore data-index
5530
5625
  if (_k === 'index') {
@@ -5570,7 +5665,7 @@
5570
5665
  }
5571
5666
  }, {
5572
5667
  key: "initBody",
5573
- value: function initBody(fixedScroll) {
5668
+ value: function initBody(fixedScroll, updatedUid) {
5574
5669
  var _this8 = this;
5575
5670
 
5576
5671
  var data = this.getData();
@@ -5590,6 +5685,7 @@
5590
5685
  var rows = [];
5591
5686
  var trFragments = $__default['default'](document.createDocumentFragment());
5592
5687
  var hasTr = false;
5688
+ var toExpand = [];
5593
5689
  this.autoMergeCells = Utils.checkAutoMergeCells(data.slice(this.pageFrom - 1, this.pageTo));
5594
5690
 
5595
5691
  for (var i = this.pageFrom - 1; i < this.pageTo; i++) {
@@ -5598,6 +5694,22 @@
5598
5694
  hasTr = hasTr || !!tr;
5599
5695
 
5600
5696
  if (tr && typeof tr === 'string') {
5697
+ var uniqueId = this.options.uniqueId;
5698
+
5699
+ if (uniqueId && item.hasOwnProperty(uniqueId)) {
5700
+ var itemUniqueId = item[uniqueId];
5701
+ var oldTr = this.$body.find(Utils.sprintf('> tr[data-uniqueid="%s"][data-has-detail-view]', itemUniqueId));
5702
+ var oldTrNext = oldTr.next();
5703
+
5704
+ if (oldTrNext.is('tr.detail-view')) {
5705
+ toExpand.push(i);
5706
+
5707
+ if (!updatedUid || itemUniqueId !== updatedUid) {
5708
+ tr += oldTrNext[0].outerHTML;
5709
+ }
5710
+ }
5711
+ }
5712
+
5601
5713
  if (!this.options.virtualScroll) {
5602
5714
  trFragments.append(tr);
5603
5715
  } else {
@@ -5622,22 +5734,28 @@
5622
5734
  scrollEl: this.$tableBody[0],
5623
5735
  contentEl: this.$body[0],
5624
5736
  itemHeight: this.options.virtualScrollItemHeight,
5625
- callback: function callback() {
5737
+ callback: function callback(startIndex, endIndex) {
5626
5738
  _this8.fitHeader();
5627
5739
 
5628
5740
  _this8.initBodyEvent();
5741
+
5742
+ _this8.trigger('virtual-scroll', startIndex, endIndex);
5629
5743
  }
5630
5744
  });
5631
5745
  }
5632
5746
 
5747
+ toExpand.forEach(function (index) {
5748
+ _this8.expandRow(index);
5749
+ });
5750
+
5633
5751
  if (!fixedScroll) {
5634
5752
  this.scrollTo(0);
5635
5753
  }
5636
5754
 
5637
5755
  this.initBodyEvent();
5638
- this.updateSelected();
5639
5756
  this.initFooter();
5640
5757
  this.resetView();
5758
+ this.updateSelected();
5641
5759
 
5642
5760
  if (this.options.sidePagination !== 'server') {
5643
5761
  this.options.totalRows = data.length;
@@ -5791,9 +5909,9 @@
5791
5909
 
5792
5910
  if (this.options.pagination && this.options.sidePagination === 'server') {
5793
5911
  params.offset = this.options.pageSize === this.options.formatAllRows() ? 0 : this.options.pageSize * (this.options.pageNumber - 1);
5794
- params.limit = this.options.pageSize === this.options.formatAllRows() ? this.options.totalRows : this.options.pageSize;
5912
+ params.limit = this.options.pageSize;
5795
5913
 
5796
- if (params.limit === 0) {
5914
+ if (params.limit === 0 || this.options.pageSize === this.options.formatAllRows()) {
5797
5915
  delete params.limit;
5798
5916
  }
5799
5917
  }
@@ -5855,11 +5973,17 @@
5855
5973
  _this10.hideLoading();
5856
5974
  }
5857
5975
 
5858
- if (_this10.options.sidePagination === 'server' && res[_this10.options.totalField] > 0 && !res[_this10.options.dataField].length) {
5976
+ if (_this10.options.sidePagination === 'server' && _this10.options.pageNumber > 1 && res[_this10.options.totalField] > 0 && !res[_this10.options.dataField].length) {
5859
5977
  _this10.updatePagination();
5860
5978
  }
5861
5979
  },
5862
5980
  error: function error(jqXHR) {
5981
+ // abort ajax by multiple request
5982
+ if (jqXHR && jqXHR.status === 0 && _this10._xhrAbort) {
5983
+ _this10._xhrAbort = false;
5984
+ return;
5985
+ }
5986
+
5863
5987
  var data = [];
5864
5988
 
5865
5989
  if (_this10.options.sidePagination === 'server') {
@@ -5880,6 +6004,8 @@
5880
6004
  Utils.calculateObjectValue(this, this.options.ajax, [request], null);
5881
6005
  } else {
5882
6006
  if (this._xhr && this._xhr.readyState !== 4) {
6007
+ this._xhrAbort = true;
6008
+
5883
6009
  this._xhr.abort();
5884
6010
  }
5885
6011
 
@@ -6120,10 +6246,10 @@
6120
6246
  style = Utils.calculateObjectValue(null, this.options.footerStyle, [column]);
6121
6247
 
6122
6248
  if (style && style.css) {
6123
- for (var _i12 = 0, _Object$entries11 = Object.entries(style.css); _i12 < _Object$entries11.length; _i12++) {
6124
- var _Object$entries11$_i = _slicedToArray(_Object$entries11[_i12], 2),
6125
- key = _Object$entries11$_i[0],
6126
- _value3 = _Object$entries11$_i[1];
6249
+ for (var _i13 = 0, _Object$entries12 = Object.entries(style.css); _i13 < _Object$entries12.length; _i13++) {
6250
+ var _Object$entries12$_i = _slicedToArray(_Object$entries12[_i13], 2),
6251
+ key = _Object$entries12$_i[0],
6252
+ _value3 = _Object$entries12$_i[1];
6127
6253
 
6128
6254
  csses.push("".concat(key, ": ").concat(_value3));
6129
6255
  }
@@ -6325,10 +6451,10 @@
6325
6451
 
6326
6452
  if (params && params.formatted) {
6327
6453
  data.forEach(function (row) {
6328
- for (var _i13 = 0, _Object$entries12 = Object.entries(row); _i13 < _Object$entries12.length; _i13++) {
6329
- var _Object$entries12$_i = _slicedToArray(_Object$entries12[_i13], 2),
6330
- key = _Object$entries12$_i[0],
6331
- value = _Object$entries12$_i[1];
6454
+ for (var _i14 = 0, _Object$entries13 = Object.entries(row); _i14 < _Object$entries13.length; _i14++) {
6455
+ var _Object$entries13$_i = _slicedToArray(_Object$entries13[_i14], 2),
6456
+ key = _Object$entries13$_i[0],
6457
+ value = _Object$entries13$_i[1];
6332
6458
 
6333
6459
  var column = _this17.columns[_this17.fieldsColumnsIndex[key]];
6334
6460
 
@@ -6505,7 +6631,7 @@
6505
6631
  id = id.toString();
6506
6632
  } else if (typeof rowUniqueId === 'number') {
6507
6633
  if (Number(rowUniqueId) === rowUniqueId && rowUniqueId % 1 === 0) {
6508
- id = parseInt(id);
6634
+ id = parseInt(id, 10);
6509
6635
  } else if (rowUniqueId === Number(rowUniqueId) && rowUniqueId !== 0) {
6510
6636
  id = parseFloat(id);
6511
6637
  }
@@ -6523,6 +6649,7 @@
6523
6649
  key: "updateByUniqueId",
6524
6650
  value: function updateByUniqueId(params) {
6525
6651
  var allParams = Array.isArray(params) ? params : [params];
6652
+ var updatedUid = null;
6526
6653
 
6527
6654
  var _iterator7 = _createForOfIteratorHelper(allParams),
6528
6655
  _step7;
@@ -6546,6 +6673,8 @@
6546
6673
  } else {
6547
6674
  $__default['default'].extend(this.options.data[rowId], _params2.row);
6548
6675
  }
6676
+
6677
+ updatedUid = _params2.id;
6549
6678
  }
6550
6679
  } catch (err) {
6551
6680
  _iterator7.e(err);
@@ -6556,7 +6685,7 @@
6556
6685
  this.initSearch();
6557
6686
  this.initPagination();
6558
6687
  this.initSort();
6559
- this.initBody(true);
6688
+ this.initBody(true, updatedUid);
6560
6689
  }
6561
6690
  }, {
6562
6691
  key: "removeByUniqueId",
@@ -6828,7 +6957,7 @@
6828
6957
  var colspan = options.colspan || 1;
6829
6958
  var i;
6830
6959
  var j;
6831
- var $tr = this.$body.find('>tr');
6960
+ var $tr = this.$body.find('>tr[data-index]');
6832
6961
  col += Utils.getDetailViewIndexOffset(this.options);
6833
6962
  var $td = $tr.eq(row).find('>td').eq(col);
6834
6963
 
@@ -6971,9 +7100,10 @@
6971
7100
  if (obj.values.includes(row[obj.field])) {
6972
7101
  var $el = _this24.$selectItem.filter(':enabled').filter(Utils.sprintf('[data-index="%s"]', i));
6973
7102
 
7103
+ var onlyCurrentPage = obj.hasOwnProperty('onlyCurrentPage') ? obj.onlyCurrentPage : false;
6974
7104
  $el = checked ? $el.not(':checked') : $el.filter(':checked');
6975
7105
 
6976
- if (!$el.length) {
7106
+ if (!$el.length && onlyCurrentPage) {
6977
7107
  return;
6978
7108
  }
6979
7109
 
@@ -7022,7 +7152,6 @@
7022
7152
  this.options.height = params.height;
7023
7153
  }
7024
7154
 
7025
- this.$selectAll.prop('checked', this.$selectItem.length > 0 && this.$selectItem.length === this.$selectItem.filter(':checked').length);
7026
7155
  this.$tableContainer.toggleClass('has-card-view', this.options.cardView);
7027
7156
 
7028
7157
  if (!this.options.cardView && this.options.showHeader && this.options.height) {
@@ -7112,6 +7241,7 @@
7112
7241
  var text = this.options.showButtonText ? this.options.pagination ? this.options.formatPaginationSwitchUp() : this.options.formatPaginationSwitchDown() : '';
7113
7242
  this.$toolbar.find('button[name="paginationSwitch"]').html("".concat(Utils.sprintf(this.constants.html.icon, this.options.iconsPrefix, icon), " ").concat(text));
7114
7243
  this.updatePagination();
7244
+ this.trigger('toggle-pagination', this.options.pagination);
7115
7245
  }
7116
7246
  }, {
7117
7247
  key: "toggleFullscreen",
@@ -7223,14 +7353,14 @@
7223
7353
  var row = this.data[index];
7224
7354
  var $tr = this.$body.find(Utils.sprintf('> tr[data-index="%s"][data-has-detail-view]', index));
7225
7355
 
7226
- if ($tr.next().is('tr.detail-view')) {
7227
- return;
7228
- }
7229
-
7230
7356
  if (this.options.detailViewIcon) {
7231
7357
  $tr.find('a.detail-icon').html(Utils.sprintf(this.constants.html.icon, this.options.iconsPrefix, this.options.icons.detailClose));
7232
7358
  }
7233
7359
 
7360
+ if ($tr.next().is('tr.detail-view')) {
7361
+ return;
7362
+ }
7363
+
7234
7364
  $tr.after(Utils.sprintf('<tr class="detail-view"><td colspan="%s"></td></tr>', $tr.children('td').length));
7235
7365
  var $element = $tr.next().find('td');
7236
7366
  var detailFormatter = _columnDetailFormatter || this.options.detailFormatter;