bootstrap-table-rails 1.16.0 → 1.17.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +142 -33
  3. data/lib/bootstrap-table-rails/version.rb +1 -1
  4. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-locale-all.js +588 -19
  5. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.esm.js +3 -1
  6. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table-vue.js +3 -1
  7. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.css +1 -2
  8. data/vendor/assets/javascripts/bootstrap-table/bootstrap-table.js +399 -181
  9. data/vendor/assets/javascripts/bootstrap-table/extensions/accent-neutralise/bootstrap-table-accent-neutralise.js +23 -2
  10. data/vendor/assets/javascripts/bootstrap-table/extensions/addrbar/bootstrap-table-addrbar.js +28 -8
  11. data/vendor/assets/javascripts/bootstrap-table/extensions/auto-refresh/bootstrap-table-auto-refresh.js +3 -2
  12. data/vendor/assets/javascripts/bootstrap-table/extensions/cookie/bootstrap-table-cookie.js +999 -240
  13. data/vendor/assets/javascripts/bootstrap-table/extensions/copy-rows/bootstrap-table-copy-rows.js +3 -2
  14. data/vendor/assets/javascripts/bootstrap-table/extensions/custom-view/bootstrap-table-custom-view.js +1587 -0
  15. data/vendor/assets/javascripts/bootstrap-table/extensions/defer-url/bootstrap-table-defer-url.js +1 -1
  16. data/vendor/assets/javascripts/bootstrap-table/extensions/editable/bootstrap-table-editable.js +1054 -211
  17. data/vendor/assets/javascripts/bootstrap-table/extensions/export/bootstrap-table-export.js +28 -3
  18. data/vendor/assets/javascripts/bootstrap-table/extensions/filter-control/bootstrap-table-filter-control.js +846 -720
  19. data/vendor/assets/javascripts/bootstrap-table/extensions/{cell-input/bootstrap-table-cell-input.js → filter-control/utils.js} +1136 -1023
  20. data/vendor/assets/javascripts/bootstrap-table/extensions/fixed-columns/bootstrap-table-fixed-columns.js +44 -1
  21. data/vendor/assets/javascripts/bootstrap-table/extensions/group-by-v2/bootstrap-table-group-by.js +6 -15
  22. data/vendor/assets/javascripts/bootstrap-table/extensions/i18n-enhance/bootstrap-table-i18n-enhance.js +1 -1
  23. data/vendor/assets/javascripts/bootstrap-table/extensions/key-events/bootstrap-table-key-events.js +1 -1
  24. data/vendor/assets/javascripts/bootstrap-table/extensions/mobile/bootstrap-table-mobile.js +1 -1
  25. data/vendor/assets/javascripts/bootstrap-table/extensions/multiple-sort/bootstrap-table-multiple-sort.js +31 -3
  26. data/vendor/assets/javascripts/bootstrap-table/extensions/page-jump-to/bootstrap-table-page-jump-to.js +1 -1
  27. data/vendor/assets/javascripts/bootstrap-table/extensions/pipeline/bootstrap-table-pipeline.js +1 -1
  28. data/vendor/assets/javascripts/bootstrap-table/extensions/print/bootstrap-table-print.js +170 -25
  29. data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-columns/bootstrap-table-reorder-columns.js +4 -2
  30. data/vendor/assets/javascripts/bootstrap-table/extensions/reorder-rows/bootstrap-table-reorder-rows.js +3 -3
  31. data/vendor/assets/javascripts/bootstrap-table/extensions/resizable/bootstrap-table-resizable.js +1 -1
  32. data/vendor/assets/javascripts/bootstrap-table/extensions/sticky-header/bootstrap-table-sticky-header.js +2 -1
  33. data/vendor/assets/javascripts/bootstrap-table/extensions/toolbar/bootstrap-table-toolbar.js +45 -7
  34. data/vendor/assets/javascripts/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js +14 -1
  35. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-af-ZA.js +10 -1
  36. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ar-SA.js +10 -1
  37. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-bg-BG.js +771 -0
  38. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ca-ES.js +10 -1
  39. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-cs-CZ.js +10 -1
  40. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-da-DK.js +10 -1
  41. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-de-DE.js +10 -1
  42. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-el-GR.js +10 -1
  43. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-en-US.js +10 -1
  44. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-AR.js +10 -1
  45. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CL.js +10 -1
  46. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-CR.js +10 -1
  47. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-ES.js +10 -1
  48. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-MX.js +10 -1
  49. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-NI.js +10 -1
  50. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-es-SP.js +10 -1
  51. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-et-EE.js +10 -1
  52. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-eu-EU.js +10 -1
  53. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fa-IR.js +10 -1
  54. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fi-FI.js +10 -1
  55. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-BE.js +10 -1
  56. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-CH.js +10 -1
  57. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-FR.js +10 -1
  58. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-fr-LU.js +10 -1
  59. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-he-IL.js +10 -1
  60. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hr-HR.js +10 -1
  61. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-hu-HU.js +10 -1
  62. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-id-ID.js +10 -1
  63. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-it-IT.js +25 -16
  64. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ja-JP.js +10 -1
  65. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ka-GE.js +10 -1
  66. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ko-KR.js +10 -1
  67. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ms-MY.js +10 -1
  68. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nb-NO.js +10 -1
  69. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-BE.js +11 -2
  70. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-nl-NL.js +10 -1
  71. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pl-PL.js +10 -1
  72. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-BR.js +13 -3
  73. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-pt-PT.js +10 -1
  74. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ro-RO.js +10 -1
  75. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ru-RU.js +10 -1
  76. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sk-SK.js +10 -1
  77. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Cyrl-RS.js +10 -1
  78. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sr-Latn-RS.js +10 -1
  79. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-sv-SE.js +10 -1
  80. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-th-TH.js +10 -1
  81. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-tr-TR.js +10 -1
  82. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uk-UA.js +10 -1
  83. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-ur-PK.js +10 -1
  84. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-uz-Latn-UZ.js +10 -1
  85. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-vi-VN.js +10 -1
  86. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-CN.js +10 -1
  87. data/vendor/assets/javascripts/bootstrap-table/locale/bootstrap-table-zh-TW.js +10 -1
  88. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/bootstrap-table.css +768 -0
  89. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/bootstrap-table.js +1049 -0
  90. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/fonts/bootstrap-table.eot +0 -0
  91. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/fonts/bootstrap-table.svg +28 -0
  92. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/fonts/bootstrap-table.ttf +0 -0
  93. data/vendor/assets/javascripts/bootstrap-table/themes/bootstrap-table/fonts/bootstrap-table.woff +0 -0
  94. data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.css +0 -1
  95. data/vendor/assets/javascripts/bootstrap-table/themes/bulma/bootstrap-table-bulma.js +54 -2
  96. data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.css +0 -1
  97. data/vendor/assets/javascripts/bootstrap-table/themes/foundation/bootstrap-table-foundation.js +54 -2
  98. data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.css +0 -1
  99. data/vendor/assets/javascripts/bootstrap-table/themes/materialize/bootstrap-table-materialize.js +55 -3
  100. data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.css +0 -1
  101. data/vendor/assets/javascripts/bootstrap-table/themes/semantic/bootstrap-table-semantic.js +54 -2
  102. metadata +10 -3
  103. data/vendor/assets/javascripts/bootstrap-table/extensions/cell-input/bootstrap-table-cell-input.css +0 -12
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -1306,6 +1306,19 @@
1306
1306
  }
1307
1307
  });
1308
1308
  }
1309
+ }, {
1310
+ key: "hideLoading",
1311
+ value: function hideLoading() {
1312
+ _get(_getPrototypeOf(_class.prototype), "hideLoading", this).call(this);
1313
+
1314
+ if (this.needFixedColumns && this.options.fixedNumber) {
1315
+ this.$fixedColumns.find('.fixed-table-loading').hide();
1316
+ }
1317
+
1318
+ if (this.needFixedColumns && this.options.fixedRightNumber) {
1319
+ this.$fixedColumnsRight.find('.fixed-table-loading').hide();
1320
+ }
1321
+ }
1309
1322
  }, {
1310
1323
  key: "initFixedColumnsHeader",
1311
1324
  value: function initFixedColumnsHeader() {
@@ -1493,6 +1506,36 @@
1493
1506
  });
1494
1507
  }
1495
1508
  }
1509
+ }, {
1510
+ key: "renderStickyHeader",
1511
+ value: function renderStickyHeader() {
1512
+ if (!this.options.stickyHeader) {
1513
+ return;
1514
+ }
1515
+
1516
+ this.$stickyContainer = this.$container.find('.sticky-header-container');
1517
+
1518
+ _get(_getPrototypeOf(_class.prototype), "renderStickyHeader", this).call(this);
1519
+
1520
+ if (this.needFixedColumns && this.options.fixedNumber) {
1521
+ this.$fixedColumns.css('z-index', 101).find('.sticky-header-container').css('right', '').width(this.$fixedColumns.outerWidth());
1522
+ }
1523
+
1524
+ if (this.needFixedColumns && this.options.fixedRightNumber) {
1525
+ var $stickyHeaderContainerRight = this.$fixedColumnsRight.find('.sticky-header-container');
1526
+ this.$fixedColumnsRight.css('z-index', 101);
1527
+ $stickyHeaderContainerRight.css('left', '').scrollLeft($stickyHeaderContainerRight.find('.table').outerWidth()).width(this.$fixedColumnsRight.outerWidth());
1528
+ }
1529
+ }
1530
+ }, {
1531
+ key: "matchPositionX",
1532
+ value: function matchPositionX() {
1533
+ if (!this.options.stickyHeader) {
1534
+ return;
1535
+ }
1536
+
1537
+ this.$stickyContainer.eq(0).scrollLeft(this.$tableBody.scrollLeft());
1538
+ }
1496
1539
  }]);
1497
1540
 
1498
1541
  return _class;
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -1779,13 +1779,6 @@
1779
1779
  }
1780
1780
  };
1781
1781
 
1782
- BootstrapTable.prototype.getGroupSelections = function (index) {
1783
- var that = this;
1784
- return this.data.filter(function (row) {
1785
- return row[that.header.stateField] && row._data['parent-index'] === index;
1786
- });
1787
- };
1788
-
1789
1782
  BootstrapTable.prototype.checkGroup = function (index) {
1790
1783
  this.checkGroup_(index, true);
1791
1784
  };
@@ -1795,25 +1788,23 @@
1795
1788
  };
1796
1789
 
1797
1790
  BootstrapTable.prototype.checkGroup_ = function (index, checked) {
1798
- var rows;
1791
+ var rowsBefore = this.getSelections();
1799
1792
 
1800
1793
  var filter = function filter() {
1801
1794
  return $(this).closest('tr').data('parent-index') === index;
1802
1795
  };
1803
1796
 
1804
- if (!checked) {
1805
- rows = this.getGroupSelections(index);
1806
- }
1807
-
1808
1797
  this.$selectItem.filter(filter).prop('checked', checked);
1809
1798
  this.updateRows();
1810
1799
  this.updateSelected();
1800
+ var rowsAfter = this.getSelections();
1811
1801
 
1812
1802
  if (checked) {
1813
- rows = this.getGroupSelections(index);
1803
+ this.trigger('check-all', rowsAfter, rowsBefore);
1804
+ return;
1814
1805
  }
1815
1806
 
1816
- this.trigger(checked ? 'check-all' : 'uncheck-all', rows);
1807
+ this.trigger('uncheck-all', rowsAfter, rowsBefore);
1817
1808
  };
1818
1809
 
1819
1810
  BootstrapTable.prototype.getGroupByFields = function () {
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  function _classCallCheck(instance, Constructor) {
10
10
  if (!(instance instanceof Constructor)) {
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -1644,6 +1644,18 @@
1644
1644
  multipleSortSelect: '<select class="%s %s form-control">'
1645
1645
  }
1646
1646
  },
1647
+ bootstrap5: {
1648
+ icons: {
1649
+ 'plus': 'fa-plus',
1650
+ 'minus': 'fa-minus',
1651
+ 'sort': 'fa-sort'
1652
+ },
1653
+ html: {
1654
+ 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 ",
1655
+ multipleSortButton: '<button class="multi-sort btn btn-secondary" type="button" data-toggle="modal" data-target="#%s" title="%s">%s</button>',
1656
+ multipleSortSelect: '<select class="%s %s form-control">'
1657
+ }
1658
+ },
1647
1659
  semantic: {
1648
1660
  icons: {
1649
1661
  'plus': 'fa-plus',
@@ -1691,6 +1703,18 @@
1691
1703
  multipleSortButton: '<button class="button multi-sort" data-target="%s" title="%s">%s</button>',
1692
1704
  multipleSortSelect: '<select class="%s %s browser-default">'
1693
1705
  }
1706
+ },
1707
+ 'bootstrap-table': {
1708
+ icons: {
1709
+ 'plus': 'icon-plus',
1710
+ 'minus': 'icon-minus',
1711
+ 'sort': 'icon-sort-amount-asc'
1712
+ },
1713
+ html: {
1714
+ 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 ",
1715
+ multipleSortButton: '<button class="btn multi-sort" data-target="%s" title="%s">%s</button>',
1716
+ multipleSortSelect: '<select class="%s %s browser-default">'
1717
+ }
1694
1718
  }
1695
1719
  }[$.fn.bootstrapTable.theme];
1696
1720
  $.extend($.fn.bootstrapTable.defaults.icons, bootstrap.icons);
@@ -1898,6 +1922,10 @@
1898
1922
  this.$toolbar.find('.multi-sort').on('click', function () {
1899
1923
  $(sortModalId).modal();
1900
1924
  });
1925
+ } else if ($.fn.bootstrapTable.theme === 'bootstrap-table') {
1926
+ this.$toolbar.find('.multi-sort').on('click', function () {
1927
+ $(sortModalId).addClass('show');
1928
+ });
1901
1929
  } else if ($.fn.bootstrapTable.theme === 'foundation') {
1902
1930
  this.$toolbar.find('.multi-sort').on('click', function () {
1903
1931
  if (!_this.foundationModal) {
@@ -1992,8 +2020,8 @@
1992
2020
  }
1993
2021
 
1994
2022
  var order = that.options.sortPriority[i].sortOrder === 'desc' ? -1 : 1;
1995
- var aa = a[fieldName];
1996
- var bb = b[fieldName];
2023
+ var aa = Utils.getItemField(a, fieldName);
2024
+ var bb = Utils.getItemField(b, fieldName);
1997
2025
  var value1 = $.fn.bootstrapTable.utils.calculateObjectValue(that.header, sorterName, [aa, bb]);
1998
2026
  var value2 = $.fn.bootstrapTable.utils.calculateObjectValue(that.header, sorterName, [bb, aa]);
1999
2027
 
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -1278,6 +1278,47 @@
1278
1278
  // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
1279
1279
  addToUnscopables(FIND);
1280
1280
 
1281
+ var $includes = arrayIncludes.includes;
1282
+
1283
+
1284
+ // `Array.prototype.includes` method
1285
+ // https://tc39.github.io/ecma262/#sec-array.prototype.includes
1286
+ _export({ target: 'Array', proto: true }, {
1287
+ includes: function includes(el /* , fromIndex = 0 */) {
1288
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
1289
+ }
1290
+ });
1291
+
1292
+ // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables
1293
+ addToUnscopables('includes');
1294
+
1295
+ var sloppyArrayMethod = function (METHOD_NAME, argument) {
1296
+ var method = [][METHOD_NAME];
1297
+ return !method || !fails(function () {
1298
+ // eslint-disable-next-line no-useless-call,no-throw-literal
1299
+ method.call(null, argument || function () { throw 1; }, 1);
1300
+ });
1301
+ };
1302
+
1303
+ var $indexOf = arrayIncludes.indexOf;
1304
+
1305
+
1306
+ var nativeIndexOf = [].indexOf;
1307
+
1308
+ var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;
1309
+ var SLOPPY_METHOD = sloppyArrayMethod('indexOf');
1310
+
1311
+ // `Array.prototype.indexOf` method
1312
+ // https://tc39.github.io/ecma262/#sec-array.prototype.indexof
1313
+ _export({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || SLOPPY_METHOD }, {
1314
+ indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {
1315
+ return NEGATIVE_ZERO
1316
+ // convert -0 to +0
1317
+ ? nativeIndexOf.apply(this, arguments) || 0
1318
+ : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined);
1319
+ }
1320
+ });
1321
+
1281
1322
  var correctPrototypeGetter = !fails(function () {
1282
1323
  function F() { /* empty */ }
1283
1324
  F.prototype.constructor = null;
@@ -1483,22 +1524,14 @@
1483
1524
  addToUnscopables('values');
1484
1525
  addToUnscopables('entries');
1485
1526
 
1486
- var sloppyArrayMethod = function (METHOD_NAME, argument) {
1487
- var method = [][METHOD_NAME];
1488
- return !method || !fails(function () {
1489
- // eslint-disable-next-line no-useless-call,no-throw-literal
1490
- method.call(null, argument || function () { throw 1; }, 1);
1491
- });
1492
- };
1493
-
1494
1527
  var nativeJoin = [].join;
1495
1528
 
1496
1529
  var ES3_STRINGS = indexedObject != Object;
1497
- var SLOPPY_METHOD = sloppyArrayMethod('join', ',');
1530
+ var SLOPPY_METHOD$1 = sloppyArrayMethod('join', ',');
1498
1531
 
1499
1532
  // `Array.prototype.join` method
1500
1533
  // https://tc39.github.io/ecma262/#sec-array.prototype.join
1501
- _export({ target: 'Array', proto: true, forced: ES3_STRINGS || SLOPPY_METHOD }, {
1534
+ _export({ target: 'Array', proto: true, forced: ES3_STRINGS || SLOPPY_METHOD$1 }, {
1502
1535
  join: function join(separator) {
1503
1536
  return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);
1504
1537
  }
@@ -1570,9 +1603,9 @@
1570
1603
  test.sort(null);
1571
1604
  });
1572
1605
  // Old WebKit
1573
- var SLOPPY_METHOD$1 = sloppyArrayMethod('sort');
1606
+ var SLOPPY_METHOD$2 = sloppyArrayMethod('sort');
1574
1607
 
1575
- var FORCED$1 = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || SLOPPY_METHOD$1;
1608
+ var FORCED$1 = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || SLOPPY_METHOD$2;
1576
1609
 
1577
1610
  // `Array.prototype.sort` method
1578
1611
  // https://tc39.github.io/ecma262/#sec-array.prototype.sort
@@ -1869,7 +1902,8 @@
1869
1902
  });
1870
1903
  $.extend($.fn.bootstrapTable.defaults.icons, {
1871
1904
  print: {
1872
- bootstrap3: 'glyphicon-print icon-share'
1905
+ bootstrap3: 'glyphicon-print icon-share',
1906
+ 'bootstrap-table': 'icon-printer'
1873
1907
  }[$.fn.bootstrapTable.theme] || 'fa-print'
1874
1908
  });
1875
1909
 
@@ -1885,18 +1919,35 @@
1885
1919
  }
1886
1920
 
1887
1921
  _createClass(_class, [{
1922
+ key: "init",
1923
+ value: function init() {
1924
+ var _get2;
1925
+
1926
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1927
+ args[_key] = arguments[_key];
1928
+ }
1929
+
1930
+ (_get2 = _get(_getPrototypeOf(_class.prototype), "init", this)).call.apply(_get2, [this].concat(args));
1931
+
1932
+ if (!this.options.showPrint) {
1933
+ return;
1934
+ }
1935
+
1936
+ this.mergedCells = [];
1937
+ }
1938
+ }, {
1888
1939
  key: "initToolbar",
1889
1940
  value: function initToolbar() {
1890
- var _get2,
1941
+ var _get3,
1891
1942
  _this = this;
1892
1943
 
1893
1944
  this.showToolbar = this.showToolbar || this.options.showPrint;
1894
1945
 
1895
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1896
- args[_key] = arguments[_key];
1946
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
1947
+ args[_key2] = arguments[_key2];
1897
1948
  }
1898
1949
 
1899
- (_get2 = _get(_getPrototypeOf(_class.prototype), "initToolbar", this)).call.apply(_get2, [this].concat(args));
1950
+ (_get3 = _get(_getPrototypeOf(_class.prototype), "initToolbar", this)).call.apply(_get3, [this].concat(args));
1900
1951
 
1901
1952
  if (!this.options.showPrint) {
1902
1953
  return;
@@ -1913,6 +1964,28 @@
1913
1964
  _this.doPrint(_this.options.printAsFilteredAndSortedOnUI ? _this.getData() : _this.options.data.slice(0));
1914
1965
  });
1915
1966
  }
1967
+ }, {
1968
+ key: "mergeCells",
1969
+ value: function mergeCells(options) {
1970
+ _get(_getPrototypeOf(_class.prototype), "mergeCells", this).call(this, options);
1971
+
1972
+ if (!this.options.showPrint) {
1973
+ return;
1974
+ }
1975
+
1976
+ var col = this.getVisibleFields().indexOf(options.field);
1977
+
1978
+ if (Utils.hasDetailViewIcon(this.options)) {
1979
+ col += 1;
1980
+ }
1981
+
1982
+ this.mergedCells.push({
1983
+ row: options.index,
1984
+ col: col,
1985
+ rowspan: options.rowspan || 1,
1986
+ colspan: options.colspan || 1
1987
+ });
1988
+ }
1916
1989
  }, {
1917
1990
  key: "doPrint",
1918
1991
  value: function doPrint(data) {
@@ -1932,12 +2005,12 @@
1932
2005
 
1933
2006
  try {
1934
2007
  for (var _iterator = columnsArray[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
1935
- var _columns = _step.value;
2008
+ var _columns2 = _step.value;
1936
2009
  html.push('<tr>');
1937
2010
 
1938
- for (var h = 0; h < _columns.length; h++) {
1939
- if (!_columns[h].printIgnore) {
1940
- html.push("<th\n ".concat(Utils.sprintf(' rowspan="%s"', _columns[h].rowspan), "\n ").concat(Utils.sprintf(' colspan="%s"', _columns[h].colspan), "\n >").concat(_columns[h].title, "</th>"));
2011
+ for (var _h = 0; _h < _columns2.length; _h++) {
2012
+ if (!_columns2[_h].printIgnore) {
2013
+ html.push("<th\n ".concat(Utils.sprintf(' rowspan="%s"', _columns2[_h].rowspan), "\n ").concat(Utils.sprintf(' colspan="%s"', _columns2[_h].colspan), "\n >").concat(_columns2[_h].title, "</th>"));
1941
2014
  }
1942
2015
  }
1943
2016
 
@@ -1959,6 +2032,22 @@
1959
2032
  }
1960
2033
 
1961
2034
  html.push('</thead><tbody>');
2035
+ var dontRender = [];
2036
+
2037
+ if (_this2.mergedCells) {
2038
+ for (var mc = 0; mc < _this2.mergedCells.length; mc++) {
2039
+ var currentMergedCell = _this2.mergedCells[mc];
2040
+
2041
+ for (var rs = 0; rs < currentMergedCell.rowspan; rs++) {
2042
+ var row = currentMergedCell.row + rs;
2043
+
2044
+ for (var cs = 0; cs < currentMergedCell.colspan; cs++) {
2045
+ var col = currentMergedCell.col + cs;
2046
+ dontRender.push(row + ',' + col);
2047
+ }
2048
+ }
2049
+ }
2050
+ }
1962
2051
 
1963
2052
  for (var i = 0; i < data.length; i++) {
1964
2053
  html.push('<tr>');
@@ -1971,8 +2060,26 @@
1971
2060
  var columns = _step2.value;
1972
2061
 
1973
2062
  for (var j = 0; j < columns.length; j++) {
1974
- if (!columns[j].printIgnore && columns[j].field) {
1975
- html.push('<td>', formatValue(data[i], i, columns[j]), '</td>');
2063
+ var rowspan = 0;
2064
+ var colspan = 0;
2065
+
2066
+ if (_this2.mergedCells) {
2067
+ for (var _mc = 0; _mc < _this2.mergedCells.length; _mc++) {
2068
+ var _currentMergedCell = _this2.mergedCells[_mc];
2069
+
2070
+ if (_currentMergedCell.col === j && _currentMergedCell.row === i) {
2071
+ rowspan = _currentMergedCell.rowspan;
2072
+ colspan = _currentMergedCell.colspan;
2073
+ }
2074
+ }
2075
+ }
2076
+
2077
+ if (!columns[j].printIgnore && columns[j].field && (!dontRender.includes(i + ',' + j) || rowspan > 0 && colspan > 0)) {
2078
+ if (rowspan > 0 && colspan > 0) {
2079
+ html.push("<td ".concat(Utils.sprintf(' rowspan="%s"', rowspan), " ").concat(Utils.sprintf(' colspan="%s"', colspan), ">"), formatValue(data[i], i, columns[j]), '</td>');
2080
+ } else {
2081
+ html.push('<td>', formatValue(data[i], i, columns[j]), '</td>');
2082
+ }
1976
2083
  }
1977
2084
  }
1978
2085
  }
@@ -1994,7 +2101,45 @@
1994
2101
  html.push('</tr>');
1995
2102
  }
1996
2103
 
1997
- html.push('</tbody></table>');
2104
+ html.push('</tbody>');
2105
+
2106
+ if (_this2.options.showFooter) {
2107
+ html.push('<footer><tr>');
2108
+ var _iteratorNormalCompletion3 = true;
2109
+ var _didIteratorError3 = false;
2110
+ var _iteratorError3 = undefined;
2111
+
2112
+ try {
2113
+ for (var _iterator3 = columnsArray[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
2114
+ var _columns = _step3.value;
2115
+
2116
+ for (var h = 0; h < _columns.length; h++) {
2117
+ if (!_columns[h].printIgnore) {
2118
+ var footerData = Utils.trToData(_columns, _this2.$el.find('>tfoot>tr'));
2119
+ var footerValue = Utils.calculateObjectValue(_columns[h], _columns[h].footerFormatter, [data], footerData[0] && footerData[0][_columns[h].field] || '');
2120
+ html.push("<th>".concat(footerValue, "</th>"));
2121
+ }
2122
+ }
2123
+ }
2124
+ } catch (err) {
2125
+ _didIteratorError3 = true;
2126
+ _iteratorError3 = err;
2127
+ } finally {
2128
+ try {
2129
+ if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
2130
+ _iterator3.return();
2131
+ }
2132
+ } finally {
2133
+ if (_didIteratorError3) {
2134
+ throw _iteratorError3;
2135
+ }
2136
+ }
2137
+ }
2138
+
2139
+ html.push('</tr></footer>');
2140
+ }
2141
+
2142
+ html.push('</table>');
1998
2143
  return html.join('');
1999
2144
  };
2000
2145
 
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -1316,7 +1316,9 @@
1316
1316
  });
1317
1317
  _this.columnsSortOrder = sortOrder;
1318
1318
 
1319
- _this.persistReorderColumnsState(_this);
1319
+ if (_this.options.cookie) {
1320
+ _this.persistReorderColumnsState(_this);
1321
+ }
1320
1322
 
1321
1323
  var ths = [];
1322
1324
  var formatters = [];
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -923,7 +923,7 @@
923
923
  setTimeout(function () {
924
924
  _this.makeRowsReorderable();
925
925
 
926
- onPostBody.apply();
926
+ onPostBody.call(_this.options, _this.options.data);
927
927
  }, 1);
928
928
  };
929
929
 
@@ -976,7 +976,7 @@
976
976
 
977
977
  this.options.onReorderRowsDrop(droppedRow); // Call the event reorder-row
978
978
 
979
- this.trigger('reorder-row', newData);
979
+ this.trigger('reorder-row', newData, draggingRow, droppedRow);
980
980
  }
981
981
  }]);
982
982
 
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -4,7 +4,7 @@
4
4
  (global = global || self, factory(global.jQuery));
5
5
  }(this, (function ($) { 'use strict';
6
6
 
7
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
7
+ $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
8
8
 
9
9
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
10
10
 
@@ -1025,6 +1025,7 @@
1025
1025
  return;
1026
1026
  }
1027
1027
 
1028
+ this.$tableBody.find('.sticky-header-container,.sticky_anchor_begin,.sticky_anchor_end').remove();
1028
1029
  this.$el.before('<div class="sticky-header-container"></div>');
1029
1030
  this.$el.before('<div class="sticky_anchor_begin"></div>');
1030
1031
  this.$el.after('<div class="sticky_anchor_end"></div>');