Browse Source

Merge pull request #5309 from wenzhixin/develop

Update to 1.18.0
文翼 5 years ago
parent
commit
d7293916b0
100 changed files with 1923 additions and 1865 deletions
  1. 1 1
      _config.yml
  2. 1 1
      bootstrap-table.jquery.json
  3. 321 3
      dist/bootstrap-table-locale-all.js
  4. 2 2
      dist/bootstrap-table-locale-all.min.js
  5. 2 2
      dist/bootstrap-table-vue.esm.min.js
  6. 2 2
      dist/bootstrap-table-vue.min.js
  7. 10 2
      dist/bootstrap-table.css
  8. 517 248
      dist/bootstrap-table.js
  9. 2 2
      dist/bootstrap-table.min.css
  10. 2 2
      dist/bootstrap-table.min.js
  11. 26 5
      dist/extensions/addrbar/bootstrap-table-addrbar.js
  12. 2 2
      dist/extensions/addrbar/bootstrap-table-addrbar.min.js
  13. 61 12
      dist/extensions/auto-refresh/bootstrap-table-auto-refresh.js
  14. 2 2
      dist/extensions/auto-refresh/bootstrap-table-auto-refresh.min.js
  15. 45 5
      dist/extensions/cookie/bootstrap-table-cookie.js
  16. 2 2
      dist/extensions/cookie/bootstrap-table-cookie.min.js
  17. 78 14
      dist/extensions/copy-rows/bootstrap-table-copy-rows.js
  18. 2 2
      dist/extensions/copy-rows/bootstrap-table-copy-rows.min.js
  19. 59 448
      dist/extensions/custom-view/bootstrap-table-custom-view.js
  20. 2 2
      dist/extensions/custom-view/bootstrap-table-custom-view.min.js
  21. 2 2
      dist/extensions/defer-url/bootstrap-table-defer-url.min.js
  22. 2 2
      dist/extensions/editable/bootstrap-table-editable.min.js
  23. 83 22
      dist/extensions/export/bootstrap-table-export.js
  24. 2 2
      dist/extensions/export/bootstrap-table-export.min.js
  25. 65 11
      dist/extensions/filter-control/bootstrap-table-filter-control.js
  26. 1 1
      dist/extensions/filter-control/bootstrap-table-filter-control.min.css
  27. 2 2
      dist/extensions/filter-control/bootstrap-table-filter-control.min.js
  28. 2 2
      dist/extensions/filter-control/utils.min.js
  29. 1 1
      dist/extensions/fixed-columns/bootstrap-table-fixed-columns.min.css
  30. 2 2
      dist/extensions/fixed-columns/bootstrap-table-fixed-columns.min.js
  31. 3 2
      dist/extensions/group-by-v2/bootstrap-table-group-by.css
  32. 179 501
      dist/extensions/group-by-v2/bootstrap-table-group-by.js
  33. 2 2
      dist/extensions/group-by-v2/bootstrap-table-group-by.min.css
  34. 2 2
      dist/extensions/group-by-v2/bootstrap-table-group-by.min.js
  35. 1 1
      dist/extensions/i18n-enhance/bootstrap-table-i18n-enhance.min.js
  36. 2 1
      dist/extensions/key-events/bootstrap-table-key-events.js
  37. 2 2
      dist/extensions/key-events/bootstrap-table-key-events.min.js
  38. 2 2
      dist/extensions/mobile/bootstrap-table-mobile.min.js
  39. 65 437
      dist/extensions/multiple-sort/bootstrap-table-multiple-sort.js
  40. 2 2
      dist/extensions/multiple-sort/bootstrap-table-multiple-sort.min.js
  41. 1 1
      dist/extensions/page-jump-to/bootstrap-table-page-jump-to.min.css
  42. 2 2
      dist/extensions/page-jump-to/bootstrap-table-page-jump-to.min.js
  43. 2 2
      dist/extensions/pipeline/bootstrap-table-pipeline.min.js
  44. 74 17
      dist/extensions/print/bootstrap-table-print.js
  45. 2 2
      dist/extensions/print/bootstrap-table-print.min.js
  46. 2 2
      dist/extensions/reorder-columns/bootstrap-table-reorder-columns.min.js
  47. 1 1
      dist/extensions/reorder-rows/bootstrap-table-reorder-rows.min.css
  48. 2 2
      dist/extensions/reorder-rows/bootstrap-table-reorder-rows.min.js
  49. 2 2
      dist/extensions/resizable/bootstrap-table-resizable.min.js
  50. 17 4
      dist/extensions/sticky-header/bootstrap-table-sticky-header.js
  51. 1 1
      dist/extensions/sticky-header/bootstrap-table-sticky-header.min.css
  52. 2 2
      dist/extensions/sticky-header/bootstrap-table-sticky-header.min.js
  53. 71 18
      dist/extensions/toolbar/bootstrap-table-toolbar.js
  54. 2 2
      dist/extensions/toolbar/bootstrap-table-toolbar.min.js
  55. 2 2
      dist/extensions/treegrid/bootstrap-table-treegrid.min.js
  56. 6 0
      dist/locale/bootstrap-table-af-ZA.js
  57. 2 2
      dist/locale/bootstrap-table-af-ZA.min.js
  58. 6 0
      dist/locale/bootstrap-table-ar-SA.js
  59. 2 2
      dist/locale/bootstrap-table-ar-SA.min.js
  60. 6 0
      dist/locale/bootstrap-table-bg-BG.js
  61. 2 2
      dist/locale/bootstrap-table-bg-BG.min.js
  62. 6 0
      dist/locale/bootstrap-table-ca-ES.js
  63. 2 2
      dist/locale/bootstrap-table-ca-ES.min.js
  64. 6 0
      dist/locale/bootstrap-table-cs-CZ.js
  65. 2 2
      dist/locale/bootstrap-table-cs-CZ.min.js
  66. 6 0
      dist/locale/bootstrap-table-da-DK.js
  67. 2 2
      dist/locale/bootstrap-table-da-DK.min.js
  68. 9 3
      dist/locale/bootstrap-table-de-DE.js
  69. 2 2
      dist/locale/bootstrap-table-de-DE.min.js
  70. 6 0
      dist/locale/bootstrap-table-el-GR.js
  71. 2 2
      dist/locale/bootstrap-table-el-GR.min.js
  72. 6 0
      dist/locale/bootstrap-table-en-US.js
  73. 2 2
      dist/locale/bootstrap-table-en-US.min.js
  74. 6 0
      dist/locale/bootstrap-table-es-AR.js
  75. 2 2
      dist/locale/bootstrap-table-es-AR.min.js
  76. 6 0
      dist/locale/bootstrap-table-es-CL.js
  77. 2 2
      dist/locale/bootstrap-table-es-CL.min.js
  78. 6 0
      dist/locale/bootstrap-table-es-CR.js
  79. 2 2
      dist/locale/bootstrap-table-es-CR.min.js
  80. 6 0
      dist/locale/bootstrap-table-es-ES.js
  81. 2 2
      dist/locale/bootstrap-table-es-ES.min.js
  82. 6 0
      dist/locale/bootstrap-table-es-MX.js
  83. 2 2
      dist/locale/bootstrap-table-es-MX.min.js
  84. 6 0
      dist/locale/bootstrap-table-es-NI.js
  85. 2 2
      dist/locale/bootstrap-table-es-NI.min.js
  86. 6 0
      dist/locale/bootstrap-table-es-SP.js
  87. 2 2
      dist/locale/bootstrap-table-es-SP.min.js
  88. 6 0
      dist/locale/bootstrap-table-et-EE.js
  89. 2 2
      dist/locale/bootstrap-table-et-EE.min.js
  90. 6 0
      dist/locale/bootstrap-table-eu-EU.js
  91. 2 2
      dist/locale/bootstrap-table-eu-EU.min.js
  92. 6 0
      dist/locale/bootstrap-table-fa-IR.js
  93. 2 2
      dist/locale/bootstrap-table-fa-IR.min.js
  94. 6 0
      dist/locale/bootstrap-table-fi-FI.js
  95. 2 2
      dist/locale/bootstrap-table-fi-FI.min.js
  96. 6 0
      dist/locale/bootstrap-table-fr-BE.js
  97. 2 2
      dist/locale/bootstrap-table-fr-BE.min.js
  98. 6 0
      dist/locale/bootstrap-table-fr-CH.js
  99. 2 2
      dist/locale/bootstrap-table-fr-CH.min.js
  100. 0 0
      dist/locale/bootstrap-table-fr-FR.js

+ 1 - 1
_config.yml

@@ -27,7 +27,7 @@ algolia:
   index_name:     bootstrap-table
 
 # Custom variables
-current_version:  1.17.1
+current_version:  1.18.0
 title:            "Bootstrap Table"
 description:      "An extended table to the integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)"
 authors:          "Zhixin Wen, and Bootstrap Table contributors"

+ 1 - 1
bootstrap-table.jquery.json

@@ -1,6 +1,6 @@
 {
   "name": "bootstrap-table",
-  "version": "1.17.1",
+  "version": "1.18.0",
   "title": "Bootstrap Table",
   "description": "An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)",
   "author": {

+ 321 - 3
dist/bootstrap-table-locale-all.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['af-ZA'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Besig om te laai, wag asseblief';
 	  },
@@ -774,6 +780,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ar-SA'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'جاري التحميل, يرجى الإنتظار';
 	  },
@@ -875,6 +887,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['bg-BG'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Зареждане, моля изчакайте';
 	  },
@@ -976,6 +994,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ca-ES'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Espereu, si us plau';
 	  },
@@ -1077,6 +1101,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['cs-CZ'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Čekejte, prosím';
 	  },
@@ -1177,6 +1207,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['da-DK'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Indlæser, vent venligst';
 	  },
@@ -1277,6 +1313,12 @@
 	*/
 
 	$.fn.bootstrapTable.locales['de-DE'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Zeilen kopieren';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Drucken';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Lade, bitte warten';
 	  },
@@ -1360,13 +1402,13 @@
 	    return 'Schließen';
 	  },
 	  formatFilterControlSwitch: function formatFilterControlSwitch() {
-	    return 'Verstecke/Zeige controls';
+	    return 'Verstecke/Zeige Filter';
 	  },
 	  formatFilterControlSwitchHide: function formatFilterControlSwitchHide() {
-	    return 'Verstecke controls';
+	    return 'Verstecke Filter';
 	  },
 	  formatFilterControlSwitchShow: function formatFilterControlSwitchShow() {
-	    return 'Zeige controls';
+	    return 'Zeige Filter';
 	  }
 	};
 	$.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales['de-DE']);
@@ -1377,6 +1419,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['el-GR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Φορτώνει, παρακαλώ περιμένετε';
 	  },
@@ -1477,6 +1525,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['en-US'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Loading, please wait';
 	  },
@@ -1578,6 +1632,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-AR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, espere por favor';
 	  },
@@ -1679,6 +1739,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-CL'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, espere por favor';
 	  },
@@ -1779,6 +1845,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-CR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, por favor espere';
 	  },
@@ -1879,6 +1951,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-ES'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Por favor espere';
 	  },
@@ -1981,6 +2059,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-MX'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, espere por favor';
 	  },
@@ -2081,6 +2165,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-NI'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, por favor espere';
 	  },
@@ -2181,6 +2271,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-SP'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, por favor espera';
 	  },
@@ -2281,6 +2377,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['et-EE'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Päring käib, palun oota';
 	  },
@@ -2381,6 +2483,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['eu-EU'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Itxaron mesedez';
 	  },
@@ -2481,6 +2589,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fa-IR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'در حال بارگذاری, لطفا صبر کنید';
 	  },
@@ -2581,6 +2695,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fi-FI'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Ladataan, ole hyvä ja odota';
 	  },
@@ -2682,6 +2802,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fr-BE'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Chargement en cours';
 	  },
@@ -2782,6 +2908,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fr-CH'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Chargement en cours';
 	  },
@@ -2884,6 +3016,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fr-FR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Chargement en cours';
 	  },
@@ -2984,6 +3122,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fr-LU'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Chargement en cours';
 	  },
@@ -3084,6 +3228,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['he-IL'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'טוען, נא להמתין';
 	  },
@@ -3185,6 +3335,12 @@
 	*/
 
 	$.fn.bootstrapTable.locales['hr-HR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Molimo pričekajte';
 	  },
@@ -3285,6 +3441,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['hu-HU'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Betöltés, kérem várjon';
 	  },
@@ -3385,6 +3547,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['id-ID'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Memuat, mohon tunggu';
 	  },
@@ -3487,6 +3655,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['it-IT'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Caricamento in corso';
 	  },
@@ -3587,6 +3761,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ja-JP'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return '読み込み中です。少々お待ちください。';
 	  },
@@ -3687,6 +3867,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ka-GE'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'იტვირთება, გთხოვთ მოიცადოთ';
 	  },
@@ -3787,6 +3973,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ko-KR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return '데이터를 불러오는 중입니다';
 	  },
@@ -3887,6 +4079,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ms-MY'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Permintaan sedang dimuatkan. Sila tunggu sebentar';
 	  },
@@ -3987,6 +4185,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['nb-NO'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Oppdaterer, vennligst vent';
 	  },
@@ -4087,6 +4291,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['nl-BE'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Laden, even geduld';
 	  },
@@ -4188,6 +4398,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['nl-NL'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Laden, even geduld';
 	  },
@@ -4288,6 +4504,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['pl-PL'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Ładowanie, proszę czekać';
 	  },
@@ -4391,6 +4613,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['pt-BR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Carregando, aguarde';
 	  },
@@ -4491,6 +4719,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['pt-PT'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'A carregar, por favor aguarde';
 	  },
@@ -4591,6 +4825,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ro-RO'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Se incarca, va rugam asteptati';
 	  },
@@ -4691,6 +4931,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ru-RU'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Пожалуйста, подождите, идёт загрузка';
 	  },
@@ -4791,6 +5037,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['sk-SK'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Prosím čakajte';
 	  },
@@ -4891,6 +5143,12 @@
 	*/
 
 	$.fn.bootstrapTable.locales['sr-Cyrl-RS'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Молим сачекај';
 	  },
@@ -4991,6 +5249,12 @@
 	*/
 
 	$.fn.bootstrapTable.locales['sr-Latn-RS'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Molim sačekaj';
 	  },
@@ -5091,6 +5355,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['sv-SE'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Laddar, vänligen vänta';
 	  },
@@ -5191,6 +5461,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['th-TH'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'กำลังโหลดข้อมูล, กรุณารอสักครู่';
 	  },
@@ -5292,6 +5568,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['tr-TR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Yükleniyor, lütfen bekleyin';
 	  },
@@ -5392,6 +5674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['uk-UA'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Завантаження, будь ласка, зачекайте';
 	  },
@@ -5492,6 +5780,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ur-PK'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'براۓ مہربانی انتظار کیجئے';
 	  },
@@ -5592,6 +5886,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['uz-Latn-UZ'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Yuklanyapti, iltimos kuting';
 	  },
@@ -5692,6 +5992,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['vi-VN'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Đang tải';
 	  },
@@ -5792,6 +6098,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['zh-CN'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return '正在努力地加载数据中,请稍候';
 	  },
@@ -5892,6 +6204,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['zh-TW'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return '正在努力地載入資料,請稍候';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/bootstrap-table-locale-all.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/bootstrap-table-vue.esm.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/bootstrap-table-vue.min.js


+ 10 - 2
dist/bootstrap-table.css

@@ -1,6 +1,6 @@
 /**
  * @author zhixin wen <wenzhixin2010@gmail.com>
- * version: 1.17.1
+ * version: 1.18.0
  * https://github.com/wenzhixin/bootstrap-table/
  */
 .bootstrap-table .fixed-table-toolbar::after {
@@ -193,12 +193,20 @@
 .bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading {
   align-items: center;
   background: #fff;
-  display: none;
+  display: flex;
   justify-content: center;
   position: absolute;
   bottom: 0;
   width: 100%;
   z-index: 1000;
+  transition: visibility 0s, opacity 0.15s ease-in-out;
+  opacity: 0;
+  visibility: hidden;
+}
+
+.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading.open {
+  visibility: visible;
+  opacity: 1;
 }
 
 .bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap {

File diff suppressed because it is too large
+ 517 - 248
dist/bootstrap-table.js


File diff suppressed because it is too large
+ 2 - 2
dist/bootstrap-table.min.css


File diff suppressed because it is too large
+ 2 - 2
dist/bootstrap-table.min.js


+ 26 - 5
dist/extensions/addrbar/bootstrap-table-addrbar.js

@@ -1549,6 +1549,7 @@
 	    // 搜索name=general这种形式的字符串(&是分隔符)
 	    var pattern = "".concat(key, "=([^&]*)");
 	    var targetStr = "".concat(key, "=").concat(val);
+	    if (val === undefined) continue;
 	    /*
 	     * 如果目标url中包含了key键, 我们需要将它替换成我们自己的val
 	     * 不然就直接添加好了.
@@ -1569,6 +1570,20 @@
 
 	  return url;
 	}
+	/*
+	* function: _updateHistoryState
+	* var _prefix = this.options.addrPrefix || ''
+	* var table = this
+	* _updateHistoryState( table,_prefix)
+	* returns void
+	*/
+
+
+	function _updateHistoryState(table, _prefix) {
+	  var params = {};
+	  params["".concat(_prefix, "page")] = table.options.pageNumber, params["".concat(_prefix, "size")] = table.options.pageSize, params["".concat(_prefix, "order")] = table.options.sortOrder, params["".concat(_prefix, "sort")] = table.options.sortName, params["".concat(_prefix, "search")] = table.options.searchText;
+	  window.history.pushState({}, '', _buildUrl(params));
+	}
 
 	$.extend($.fn.bootstrapTable.defaults, {
 	  addrbar: false,
@@ -1592,7 +1607,7 @@
 	      var _this = this,
 	          _get2;
 
-	      if (this.options.pagination && this.options.sidePagination === 'server' && this.options.addrbar) {
+	      if (this.options.pagination && this.options.addrbar) {
 	        // 标志位, 初始加载后关闭
 	        this.addrbarInit = true;
 	        this.options.pageNumber = +this.getDefaultOptionValue('pageNumber', 'page');
@@ -1604,21 +1619,27 @@
 	        var _prefix = this.options.addrPrefix || '';
 
 	        var _onLoadSuccess = this.options.onLoadSuccess;
+	        var _onPageChange = this.options.onPageChange;
 
 	        this.options.onLoadSuccess = function (data) {
 	          if (_this.addrbarInit) {
 	            _this.addrbarInit = false;
 	          } else {
-	            var params = {};
-	            params["".concat(_prefix, "page")] = _this.options.pageNumber, params["".concat(_prefix, "size")] = _this.options.pageSize, params["".concat(_prefix, "order")] = _this.options.sortOrder, params["".concat(_prefix, "sort")] = _this.options.sortName, params["".concat(_prefix, "search")] = _this.options.searchText; // h5提供的修改浏览器地址栏的方法
-
-	            window.history.pushState({}, '', _buildUrl(params));
+	            _updateHistoryState(_this, _prefix);
 	          }
 
 	          if (_onLoadSuccess) {
 	            _onLoadSuccess.call(_this, data);
 	          }
 	        };
+
+	        this.options.onPageChange = function (number, size) {
+	          _updateHistoryState(_this, _prefix);
+
+	          if (_onPageChange) {
+	            _onPageChange.call(_this, number, size);
+	          }
+	        };
 	      }
 
 	      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/addrbar/bootstrap-table-addrbar.min.js


File diff suppressed because it is too large
+ 61 - 12
dist/extensions/auto-refresh/bootstrap-table-auto-refresh.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/auto-refresh/bootstrap-table-auto-refresh.min.js


+ 45 - 5
dist/extensions/cookie/bootstrap-table-cookie.js

@@ -1504,6 +1504,25 @@
 	  }
 	});
 
+	var $map = arrayIteration.map;
+
+
+
+	var HAS_SPECIES_SUPPORT$1 = arrayMethodHasSpeciesSupport('map');
+	// FF49- issue
+	var USES_TO_LENGTH$1 = HAS_SPECIES_SUPPORT$1 && !fails(function () {
+	  [].map.call({ length: -1, 0: 1 }, function (it) { throw it; });
+	});
+
+	// `Array.prototype.map` method
+	// https://tc39.github.io/ecma262/#sec-array.prototype.map
+	// with adding support of @@species
+	_export({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT$1 || !USES_TO_LENGTH$1 }, {
+	  map: function map(callbackfn /* , thisArg */) {
+	    return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+	  }
+	});
+
 	var TO_STRING_TAG$1 = wellKnownSymbol('toStringTag');
 	var test = {};
 
@@ -2419,7 +2438,7 @@
 
 	    switch (that.options.cookieStorage) {
 	      case 'cookieStorage':
-	        document.cookie = [cookieName, '=', encodeURIComponent(cookieValue), "; expires=".concat(UtilsCookie.calculateExpiration(that.options.cookieExpire)), that.options.cookiePath ? "; path=".concat(that.options.cookiePath) : '', that.options.cookieDomain ? "; domain=".concat(that.options.cookieDomain) : '', that.options.cookieSecure ? '; secure' : ''].join('');
+	        document.cookie = [cookieName, '=', encodeURIComponent(cookieValue), "; expires=".concat(UtilsCookie.calculateExpiration(that.options.cookieExpire)), that.options.cookiePath ? "; path=".concat(that.options.cookiePath) : '', that.options.cookieDomain ? "; domain=".concat(that.options.cookieDomain) : '', that.options.cookieSecure ? '; secure' : '', ';SameSite=' + that.options.cookieSameSite].join('');
 	        break;
 
 	      case 'localStorage':
@@ -2621,6 +2640,7 @@
 	  cookiePath: null,
 	  cookieDomain: null,
 	  cookieSecure: null,
+	  cookieSameSite: 'Lax',
 	  cookieIdTable: '',
 	  cookiesEnabled: ['bs.table.sortOrder', 'bs.table.sortName', 'bs.table.pageNumber', 'bs.table.pageList', 'bs.table.columns', 'bs.table.searchText', 'bs.table.filterControl', 'bs.table.filterBy', 'bs.table.reorderColumns'],
 	  cookieStorage: 'cookieStorage',
@@ -2812,7 +2832,9 @@
 
 	      (_get9 = _get(_getPrototypeOf(_class.prototype), "_toggleColumn", this)).call.apply(_get9, [this].concat(args));
 
-	      UtilsCookie.setCookie(this, UtilsCookie.cookieIds.columns, JSON.stringify(this.getVisibleColumns()));
+	      UtilsCookie.setCookie(this, UtilsCookie.cookieIds.columns, JSON.stringify(this.getVisibleColumns().map(function (column) {
+	        return column.field;
+	      })));
 	    }
 	  }, {
 	    key: "_toggleAllColumns",
@@ -2825,7 +2847,9 @@
 
 	      (_get10 = _get(_getPrototypeOf(_class.prototype), "_toggleAllColumns", this)).call.apply(_get10, [this].concat(args));
 
-	      UtilsCookie.setCookie(this, UtilsCookie.cookieIds.columns, JSON.stringify(this.getVisibleColumns()));
+	      UtilsCookie.setCookie(this, UtilsCookie.cookieIds.columns, JSON.stringify(this.getVisibleColumns().map(function (column) {
+	        return column.field;
+	      })));
 	    }
 	  }, {
 	    key: "selectPage",
@@ -2881,6 +2905,8 @@
 	  }, {
 	    key: "initCookie",
 	    value: function initCookie() {
+	      var _this = this;
+
 	      if (!this.options.cookie) {
 	        return;
 	      }
@@ -2930,8 +2956,22 @@
 	        try {
 	          var _loop = function _loop() {
 	            var column = _step.value;
-	            column.visible = columnsCookie.filter(function (c) {
-	              return c.field === column.field;
+	            column.visible = columnsCookie.filter(function (columnField) {
+	              if (_this.isSelectionColumn(column)) {
+	                return true;
+	              }
+	              /**
+	               * This is needed for the old saved cookies or the table will show no columns!
+	               * It can be removed in 2-3 Versions Later!!
+	               * TODO: Remove this part some versions later e.g. 1.17.3
+	               */
+
+
+	              if (columnField instanceof Object) {
+	                return columnField.field === column.field;
+	              }
+
+	              return columnField === column.field;
 	            }).length > 0 || !column.switchable;
 	          };
 

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/cookie/bootstrap-table-cookie.min.js


+ 78 - 14
dist/extensions/copy-rows/bootstrap-table-copy-rows.js

@@ -906,6 +906,56 @@
 	  }
 	});
 
+	var nativeAssign = Object.assign;
+	var defineProperty = Object.defineProperty;
+
+	// `Object.assign` method
+	// https://tc39.github.io/ecma262/#sec-object.assign
+	var objectAssign = !nativeAssign || fails(function () {
+	  // should have correct order of operations (Edge bug)
+	  if (descriptors && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {
+	    enumerable: true,
+	    get: function () {
+	      defineProperty(this, 'b', {
+	        value: 3,
+	        enumerable: false
+	      });
+	    }
+	  }), { b: 2 })).b !== 1) return true;
+	  // should work with symbols and should have deterministic property order (V8 bug)
+	  var A = {};
+	  var B = {};
+	  // eslint-disable-next-line no-undef
+	  var symbol = Symbol();
+	  var alphabet = 'abcdefghijklmnopqrst';
+	  A[symbol] = 7;
+	  alphabet.split('').forEach(function (chr) { B[chr] = chr; });
+	  return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;
+	}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
+	  var T = toObject(target);
+	  var argumentsLength = arguments.length;
+	  var index = 1;
+	  var getOwnPropertySymbols = objectGetOwnPropertySymbols.f;
+	  var propertyIsEnumerable = objectPropertyIsEnumerable.f;
+	  while (argumentsLength > index) {
+	    var S = indexedObject(arguments[index++]);
+	    var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);
+	    var length = keys.length;
+	    var j = 0;
+	    var key;
+	    while (length > j) {
+	      key = keys[j++];
+	      if (!descriptors || propertyIsEnumerable.call(S, key)) T[key] = S[key];
+	    }
+	  } return T;
+	} : nativeAssign;
+
+	// `Object.assign` method
+	// https://tc39.github.io/ecma262/#sec-object.assign
+	_export({ target: 'Object', stat: true, forced: Object.assign !== objectAssign }, {
+	  assign: objectAssign
+	});
+
 	function _classCallCheck(instance, Constructor) {
 	  if (!(instance instanceof Constructor)) {
 	    throw new TypeError("Cannot call a class as a function");
@@ -1011,6 +1061,12 @@
 	 */
 
 	var Utils = $.fn.bootstrapTable.utils;
+	$.extend($.fn.bootstrapTable.locales, {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  }
+	});
+	$.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales);
 	$.extend($.fn.bootstrapTable.defaults.icons, {
 	  copy: {
 	    bootstrap3: 'glyphicon-copy icon-pencil',
@@ -1056,8 +1112,21 @@
 	  _createClass(_class, [{
 	    key: "initToolbar",
 	    value: function initToolbar() {
-	      var _get2,
-	          _this = this;
+	      var _get2;
+
+	      if (this.options.showCopyRows && this.header.stateField) {
+	        this.buttons = Object.assign(this.buttons, {
+	          copyRows: {
+	            'text': this.options.formatCopyRows(),
+	            'icon': this.options.icons.copy,
+	            'event': this.copyColumnsToClipboard,
+	            'attributes': {
+	              'aria-label': this.options.formatCopyRows(),
+	              'title': this.options.formatCopyRows()
+	            }
+	          }
+	        });
+	      }
 
 	      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
 	        args[_key] = arguments[_key];
@@ -1065,33 +1134,28 @@
 
 	      (_get2 = _get(_getPrototypeOf(_class.prototype), "initToolbar", this)).call.apply(_get2, [this].concat(args));
 
-	      var $btnGroup = this.$toolbar.find('>.columns');
+	      this.$copyButton = this.$toolbar.find('>.columns [name="copyRows"]');
 
 	      if (this.options.showCopyRows && this.header.stateField) {
-	        this.$copyButton = $("\n        <button class=\"".concat(this.constants.buttonsClass, "\">\n        ").concat(Utils.sprintf(this.constants.html.icon, this.options.iconsPrefix, this.options.icons.copy), "\n        </button>\n      "));
-	        $btnGroup.append(this.$copyButton);
-	        this.$copyButton.click(function () {
-	          _this.copyColumnsToClipboard();
-	        });
 	        this.updateCopyButton();
 	      }
 	    }
 	  }, {
 	    key: "copyColumnsToClipboard",
 	    value: function copyColumnsToClipboard() {
-	      var _this2 = this;
+	      var _this = this;
 
 	      var rows = [];
 	      $.each(this.getSelections(), function (index, row) {
 	        var cols = [];
-	        $.each(_this2.options.columns[0], function (indy, column) {
-	          if (column.field !== _this2.header.stateField && (!_this2.options.copyWithHidden || _this2.options.copyWithHidden && column.visible)) {
+	        $.each(_this.options.columns[0], function (indy, column) {
+	          if (column.field !== _this.header.stateField && (!_this.options.copyWithHidden || _this.options.copyWithHidden && column.visible)) {
 	            if (row[column.field] !== null) {
-	              cols.push(Utils.calculateObjectValue(column, _this2.header.formatters[indy], [row[column.field], row, index], row[column.field]));
+	              cols.push(Utils.calculateObjectValue(column, _this.header.formatters[indy], [row[column.field], row, index], row[column.field]));
 	            }
 	          }
 	        });
-	        rows.push(cols.join(_this2.options.copyDelimiter));
+	        rows.push(cols.join(_this.options.copyDelimiter));
 	      });
 	      copyText(rows.join(this.options.copyNewline));
 	    }
@@ -1105,7 +1169,7 @@
 	  }, {
 	    key: "updateCopyButton",
 	    value: function updateCopyButton() {
-	      if (this.options.showCopyRows) {
+	      if (this.options.showCopyRows && this.header.stateField && this.$copyButton) {
 	        this.$copyButton.prop('disabled', !this.getSelections().length);
 	      }
 	    }

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/copy-rows/bootstrap-table-copy-rows.min.js


File diff suppressed because it is too large
+ 59 - 448
dist/extensions/custom-view/bootstrap-table-custom-view.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/custom-view/bootstrap-table-custom-view.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/defer-url/bootstrap-table-defer-url.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/editable/bootstrap-table-editable.min.js


File diff suppressed because it is too large
+ 83 - 22
dist/extensions/export/bootstrap-table-export.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/export/bootstrap-table-export.min.js


File diff suppressed because it is too large
+ 65 - 11
dist/extensions/filter-control/bootstrap-table-filter-control.js


+ 1 - 1
dist/extensions/filter-control/bootstrap-table-filter-control.min.css

@@ -1,7 +1,7 @@
 /**
   * bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
   *
-  * @version v1.17.1
+  * @version v1.18.0
   * @homepage https://bootstrap-table.com
   * @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
   * @license MIT

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/filter-control/bootstrap-table-filter-control.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/filter-control/utils.min.js


+ 1 - 1
dist/extensions/fixed-columns/bootstrap-table-fixed-columns.min.css

@@ -1,7 +1,7 @@
 /**
   * bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
   *
-  * @version v1.17.1
+  * @version v1.18.0
   * @homepage https://bootstrap-table.com
   * @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
   * @license MIT

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/fixed-columns/bootstrap-table-fixed-columns.min.js


+ 3 - 2
dist/extensions/group-by-v2/bootstrap-table-group-by.css

@@ -1,7 +1,8 @@
-.bootstrap-table .table > tbody > tr.groupBy {
+.bootstrap-table .table > tbody > tr.groupBy.expanded,
+.bootstrap-table .table > tbody > tr.groupBy.collapsed {
   cursor: pointer;
 }
 
-.bootstrap-table .table > tbody > tr.hidden + tr.detail-view {
+.bootstrap-table .table > tbody > tr.hidden {
   display: none;
 }

+ 179 - 501
dist/extensions/group-by-v2/bootstrap-table-group-by.js

@@ -526,33 +526,10 @@
 	  }
 	};
 
-	var aFunction$1 = function (it) {
-	  if (typeof it != 'function') {
-	    throw TypeError(String(it) + ' is not a function');
-	  } return it;
-	};
-
-	// optional / simple context binding
-	var bindContext = function (fn, that, length) {
-	  aFunction$1(fn);
-	  if (that === undefined) return fn;
-	  switch (length) {
-	    case 0: return function () {
-	      return fn.call(that);
-	    };
-	    case 1: return function (a) {
-	      return fn.call(that, a);
-	    };
-	    case 2: return function (a, b) {
-	      return fn.call(that, a, b);
-	    };
-	    case 3: return function (a, b, c) {
-	      return fn.call(that, a, b, c);
-	    };
-	  }
-	  return function (/* ...args */) {
-	    return fn.apply(that, arguments);
-	  };
+	// `IsArray` abstract operation
+	// https://tc39.github.io/ecma262/#sec-isarray
+	var isArray = Array.isArray || function isArray(arg) {
+	  return classofRaw(arg) == 'Array';
 	};
 
 	// `ToObject` abstract operation
@@ -561,10 +538,10 @@
 	  return Object(requireObjectCoercible(argument));
 	};
 
-	// `IsArray` abstract operation
-	// https://tc39.github.io/ecma262/#sec-isarray
-	var isArray = Array.isArray || function isArray(arg) {
-	  return classofRaw(arg) == 'Array';
+	var createProperty = function (object, key, value) {
+	  var propertyKey = toPrimitive(key);
+	  if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value));
+	  else object[propertyKey] = value;
 	};
 
 	var nativeSymbol = !!Object.getOwnPropertySymbols && !fails(function () {
@@ -607,6 +584,119 @@
 	  } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
 	};
 
+	var userAgent = getBuiltIn('navigator', 'userAgent') || '';
+
+	var process = global_1.process;
+	var versions = process && process.versions;
+	var v8 = versions && versions.v8;
+	var match, version;
+
+	if (v8) {
+	  match = v8.split('.');
+	  version = match[0] + match[1];
+	} else if (userAgent) {
+	  match = userAgent.match(/Edge\/(\d+)/);
+	  if (!match || match[1] >= 74) {
+	    match = userAgent.match(/Chrome\/(\d+)/);
+	    if (match) version = match[1];
+	  }
+	}
+
+	var v8Version = version && +version;
+
+	var SPECIES$1 = wellKnownSymbol('species');
+
+	var arrayMethodHasSpeciesSupport = function (METHOD_NAME) {
+	  // We can't use this feature detection in V8 since it causes
+	  // deoptimization and serious performance degradation
+	  // https://github.com/zloirock/core-js/issues/677
+	  return v8Version >= 51 || !fails(function () {
+	    var array = [];
+	    var constructor = array.constructor = {};
+	    constructor[SPECIES$1] = function () {
+	      return { foo: 1 };
+	    };
+	    return array[METHOD_NAME](Boolean).foo !== 1;
+	  });
+	};
+
+	var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
+	var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
+	var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
+
+	// We can't use this feature detection in V8 since it causes
+	// deoptimization and serious performance degradation
+	// https://github.com/zloirock/core-js/issues/679
+	var IS_CONCAT_SPREADABLE_SUPPORT = v8Version >= 51 || !fails(function () {
+	  var array = [];
+	  array[IS_CONCAT_SPREADABLE] = false;
+	  return array.concat()[0] !== array;
+	});
+
+	var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');
+
+	var isConcatSpreadable = function (O) {
+	  if (!isObject(O)) return false;
+	  var spreadable = O[IS_CONCAT_SPREADABLE];
+	  return spreadable !== undefined ? !!spreadable : isArray(O);
+	};
+
+	var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
+
+	// `Array.prototype.concat` method
+	// https://tc39.github.io/ecma262/#sec-array.prototype.concat
+	// with adding support of @@isConcatSpreadable and @@species
+	_export({ target: 'Array', proto: true, forced: FORCED }, {
+	  concat: function concat(arg) { // eslint-disable-line no-unused-vars
+	    var O = toObject(this);
+	    var A = arraySpeciesCreate(O, 0);
+	    var n = 0;
+	    var i, k, length, len, E;
+	    for (i = -1, length = arguments.length; i < length; i++) {
+	      E = i === -1 ? O : arguments[i];
+	      if (isConcatSpreadable(E)) {
+	        len = toLength(E.length);
+	        if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
+	        for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
+	      } else {
+	        if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
+	        createProperty(A, n++, E);
+	      }
+	    }
+	    A.length = n;
+	    return A;
+	  }
+	});
+
+	var aFunction$1 = function (it) {
+	  if (typeof it != 'function') {
+	    throw TypeError(String(it) + ' is not a function');
+	  } return it;
+	};
+
+	// optional / simple context binding
+	var bindContext = function (fn, that, length) {
+	  aFunction$1(fn);
+	  if (that === undefined) return fn;
+	  switch (length) {
+	    case 0: return function () {
+	      return fn.call(that);
+	    };
+	    case 1: return function (a) {
+	      return fn.call(that, a);
+	    };
+	    case 2: return function (a, b) {
+	      return fn.call(that, a, b);
+	    };
+	    case 3: return function (a, b, c) {
+	      return fn.call(that, a, b, c);
+	    };
+	  }
+	  return function (/* ...args */) {
+	    return fn.apply(that, arguments);
+	  };
+	};
+
 	var push = [].push;
 
 	// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation
@@ -667,42 +757,6 @@
 	  findIndex: createMethod$1(6)
 	};
 
-	var userAgent = getBuiltIn('navigator', 'userAgent') || '';
-
-	var process = global_1.process;
-	var versions = process && process.versions;
-	var v8 = versions && versions.v8;
-	var match, version;
-
-	if (v8) {
-	  match = v8.split('.');
-	  version = match[0] + match[1];
-	} else if (userAgent) {
-	  match = userAgent.match(/Edge\/(\d+)/);
-	  if (!match || match[1] >= 74) {
-	    match = userAgent.match(/Chrome\/(\d+)/);
-	    if (match) version = match[1];
-	  }
-	}
-
-	var v8Version = version && +version;
-
-	var SPECIES$1 = wellKnownSymbol('species');
-
-	var arrayMethodHasSpeciesSupport = function (METHOD_NAME) {
-	  // We can't use this feature detection in V8 since it causes
-	  // deoptimization and serious performance degradation
-	  // https://github.com/zloirock/core-js/issues/677
-	  return v8Version >= 51 || !fails(function () {
-	    var array = [];
-	    var constructor = array.constructor = {};
-	    constructor[SPECIES$1] = function () {
-	      return { foo: 1 };
-	    };
-	    return array[METHOD_NAME](Boolean).foo !== 1;
-	  });
-	};
-
 	var $filter = arrayIteration.filter;
 
 
@@ -871,12 +925,6 @@
 	  }
 	});
 
-	var createProperty = function (object, key, value) {
-	  var propertyKey = toPrimitive(key);
-	  if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value));
-	  else object[propertyKey] = value;
-	};
-
 	var SPECIES$2 = wellKnownSymbol('species');
 	var nativeSlice = [].slice;
 	var max$1 = Math.max;
@@ -926,11 +974,11 @@
 	// Old WebKit
 	var SLOPPY_METHOD$1 = sloppyArrayMethod('sort');
 
-	var FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || SLOPPY_METHOD$1;
+	var FORCED$1 = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || SLOPPY_METHOD$1;
 
 	// `Array.prototype.sort` method
 	// https://tc39.github.io/ecma262/#sec-array.prototype.sort
-	_export({ target: 'Array', proto: true, forced: FORCED }, {
+	_export({ target: 'Array', proto: true, forced: FORCED$1 }, {
 	  sort: function sort(comparefn) {
 	    return comparefn === undefined
 	      ? nativeSort.call(toObject(this))
@@ -1010,405 +1058,6 @@
 	  assign: objectAssign
 	});
 
-	// `RegExp.prototype.flags` getter implementation
-	// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags
-	var regexpFlags = function () {
-	  var that = anObject(this);
-	  var result = '';
-	  if (that.global) result += 'g';
-	  if (that.ignoreCase) result += 'i';
-	  if (that.multiline) result += 'm';
-	  if (that.dotAll) result += 's';
-	  if (that.unicode) result += 'u';
-	  if (that.sticky) result += 'y';
-	  return result;
-	};
-
-	// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,
-	// so we use an intermediate function.
-	function RE(s, f) {
-	  return RegExp(s, f);
-	}
-
-	var UNSUPPORTED_Y = fails(function () {
-	  // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
-	  var re = RE('a', 'y');
-	  re.lastIndex = 2;
-	  return re.exec('abcd') != null;
-	});
-
-	var BROKEN_CARET = fails(function () {
-	  // https://bugzilla.mozilla.org/show_bug.cgi?id=773687
-	  var re = RE('^r', 'gy');
-	  re.lastIndex = 2;
-	  return re.exec('str') != null;
-	});
-
-	var regexpStickyHelpers = {
-		UNSUPPORTED_Y: UNSUPPORTED_Y,
-		BROKEN_CARET: BROKEN_CARET
-	};
-
-	var nativeExec = RegExp.prototype.exec;
-	// This always refers to the native implementation, because the
-	// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
-	// which loads this file before patching the method.
-	var nativeReplace = String.prototype.replace;
-
-	var patchedExec = nativeExec;
-
-	var UPDATES_LAST_INDEX_WRONG = (function () {
-	  var re1 = /a/;
-	  var re2 = /b*/g;
-	  nativeExec.call(re1, 'a');
-	  nativeExec.call(re2, 'a');
-	  return re1.lastIndex !== 0 || re2.lastIndex !== 0;
-	})();
-
-	var UNSUPPORTED_Y$1 = regexpStickyHelpers.UNSUPPORTED_Y || regexpStickyHelpers.BROKEN_CARET;
-
-	// nonparticipating capturing group, copied from es5-shim's String#split patch.
-	var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
-
-	var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$1;
-
-	if (PATCH) {
-	  patchedExec = function exec(str) {
-	    var re = this;
-	    var lastIndex, reCopy, match, i;
-	    var sticky = UNSUPPORTED_Y$1 && re.sticky;
-	    var flags = regexpFlags.call(re);
-	    var source = re.source;
-	    var charsAdded = 0;
-	    var strCopy = str;
-
-	    if (sticky) {
-	      flags = flags.replace('y', '');
-	      if (flags.indexOf('g') === -1) {
-	        flags += 'g';
-	      }
-
-	      strCopy = String(str).slice(re.lastIndex);
-	      // Support anchored sticky behavior.
-	      if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) {
-	        source = '(?: ' + source + ')';
-	        strCopy = ' ' + strCopy;
-	        charsAdded++;
-	      }
-	      // ^(? + rx + ) is needed, in combination with some str slicing, to
-	      // simulate the 'y' flag.
-	      reCopy = new RegExp('^(?:' + source + ')', flags);
-	    }
-
-	    if (NPCG_INCLUDED) {
-	      reCopy = new RegExp('^' + source + '$(?!\\s)', flags);
-	    }
-	    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
-
-	    match = nativeExec.call(sticky ? reCopy : re, strCopy);
-
-	    if (sticky) {
-	      if (match) {
-	        match.input = match.input.slice(charsAdded);
-	        match[0] = match[0].slice(charsAdded);
-	        match.index = re.lastIndex;
-	        re.lastIndex += match[0].length;
-	      } else re.lastIndex = 0;
-	    } else if (UPDATES_LAST_INDEX_WRONG && match) {
-	      re.lastIndex = re.global ? match.index + match[0].length : lastIndex;
-	    }
-	    if (NPCG_INCLUDED && match && match.length > 1) {
-	      // Fix browsers whose `exec` methods don't consistently return `undefined`
-	      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
-	      nativeReplace.call(match[0], reCopy, function () {
-	        for (i = 1; i < arguments.length - 2; i++) {
-	          if (arguments[i] === undefined) match[i] = undefined;
-	        }
-	      });
-	    }
-
-	    return match;
-	  };
-	}
-
-	var regexpExec = patchedExec;
-
-	_export({ target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, {
-	  exec: regexpExec
-	});
-
-	var SPECIES$3 = wellKnownSymbol('species');
-
-	var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
-	  // #replace needs built-in support for named groups.
-	  // #match works fine because it just return the exec results, even if it has
-	  // a "grops" property.
-	  var re = /./;
-	  re.exec = function () {
-	    var result = [];
-	    result.groups = { a: '7' };
-	    return result;
-	  };
-	  return ''.replace(re, '$<a>') !== '7';
-	});
-
-	// IE <= 11 replaces $0 with the whole match, as if it was $&
-	// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0
-	var REPLACE_KEEPS_$0 = (function () {
-	  return 'a'.replace(/./, '$0') === '$0';
-	})();
-
-	// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
-	// Weex JS has frozen built-in prototypes, so use try / catch wrapper
-	var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {
-	  var re = /(?:)/;
-	  var originalExec = re.exec;
-	  re.exec = function () { return originalExec.apply(this, arguments); };
-	  var result = 'ab'.split(re);
-	  return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';
-	});
-
-	var fixRegexpWellKnownSymbolLogic = function (KEY, length, exec, sham) {
-	  var SYMBOL = wellKnownSymbol(KEY);
-
-	  var DELEGATES_TO_SYMBOL = !fails(function () {
-	    // String methods call symbol-named RegEp methods
-	    var O = {};
-	    O[SYMBOL] = function () { return 7; };
-	    return ''[KEY](O) != 7;
-	  });
-
-	  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {
-	    // Symbol-named RegExp methods call .exec
-	    var execCalled = false;
-	    var re = /a/;
-
-	    if (KEY === 'split') {
-	      // We can't use real regex here since it causes deoptimization
-	      // and serious performance degradation in V8
-	      // https://github.com/zloirock/core-js/issues/306
-	      re = {};
-	      // RegExp[@@split] doesn't call the regex's exec method, but first creates
-	      // a new one. We need to return the patched regex when creating the new one.
-	      re.constructor = {};
-	      re.constructor[SPECIES$3] = function () { return re; };
-	      re.flags = '';
-	      re[SYMBOL] = /./[SYMBOL];
-	    }
-
-	    re.exec = function () { execCalled = true; return null; };
-
-	    re[SYMBOL]('');
-	    return !execCalled;
-	  });
-
-	  if (
-	    !DELEGATES_TO_SYMBOL ||
-	    !DELEGATES_TO_EXEC ||
-	    (KEY === 'replace' && !(REPLACE_SUPPORTS_NAMED_GROUPS && REPLACE_KEEPS_$0)) ||
-	    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
-	  ) {
-	    var nativeRegExpMethod = /./[SYMBOL];
-	    var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {
-	      if (regexp.exec === regexpExec) {
-	        if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
-	          // The native String method already delegates to @@method (this
-	          // polyfilled function), leasing to infinite recursion.
-	          // We avoid it by directly calling the native @@method method.
-	          return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
-	        }
-	        return { done: true, value: nativeMethod.call(str, regexp, arg2) };
-	      }
-	      return { done: false };
-	    }, { REPLACE_KEEPS_$0: REPLACE_KEEPS_$0 });
-	    var stringMethod = methods[0];
-	    var regexMethod = methods[1];
-
-	    redefine(String.prototype, KEY, stringMethod);
-	    redefine(RegExp.prototype, SYMBOL, length == 2
-	      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
-	      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
-	      ? function (string, arg) { return regexMethod.call(string, this, arg); }
-	      // 21.2.5.6 RegExp.prototype[@@match](string)
-	      // 21.2.5.9 RegExp.prototype[@@search](string)
-	      : function (string) { return regexMethod.call(string, this); }
-	    );
-	  }
-
-	  if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);
-	};
-
-	// `String.prototype.{ codePointAt, at }` methods implementation
-	var createMethod$2 = function (CONVERT_TO_STRING) {
-	  return function ($this, pos) {
-	    var S = String(requireObjectCoercible($this));
-	    var position = toInteger(pos);
-	    var size = S.length;
-	    var first, second;
-	    if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
-	    first = S.charCodeAt(position);
-	    return first < 0xD800 || first > 0xDBFF || position + 1 === size
-	      || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
-	        ? CONVERT_TO_STRING ? S.charAt(position) : first
-	        : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
-	  };
-	};
-
-	var stringMultibyte = {
-	  // `String.prototype.codePointAt` method
-	  // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat
-	  codeAt: createMethod$2(false),
-	  // `String.prototype.at` method
-	  // https://github.com/mathiasbynens/String.prototype.at
-	  charAt: createMethod$2(true)
-	};
-
-	var charAt = stringMultibyte.charAt;
-
-	// `AdvanceStringIndex` abstract operation
-	// https://tc39.github.io/ecma262/#sec-advancestringindex
-	var advanceStringIndex = function (S, index, unicode) {
-	  return index + (unicode ? charAt(S, index).length : 1);
-	};
-
-	// `RegExpExec` abstract operation
-	// https://tc39.github.io/ecma262/#sec-regexpexec
-	var regexpExecAbstract = function (R, S) {
-	  var exec = R.exec;
-	  if (typeof exec === 'function') {
-	    var result = exec.call(R, S);
-	    if (typeof result !== 'object') {
-	      throw TypeError('RegExp exec method returned something other than an Object or null');
-	    }
-	    return result;
-	  }
-
-	  if (classofRaw(R) !== 'RegExp') {
-	    throw TypeError('RegExp#exec called on incompatible receiver');
-	  }
-
-	  return regexpExec.call(R, S);
-	};
-
-	var max$2 = Math.max;
-	var min$2 = Math.min;
-	var floor$1 = Math.floor;
-	var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d\d?|<[^>]*>)/g;
-	var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d\d?)/g;
-
-	var maybeToString = function (it) {
-	  return it === undefined ? it : String(it);
-	};
-
-	// @@replace logic
-	fixRegexpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {
-	  return [
-	    // `String.prototype.replace` method
-	    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
-	    function replace(searchValue, replaceValue) {
-	      var O = requireObjectCoercible(this);
-	      var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];
-	      return replacer !== undefined
-	        ? replacer.call(searchValue, O, replaceValue)
-	        : nativeReplace.call(String(O), searchValue, replaceValue);
-	    },
-	    // `RegExp.prototype[@@replace]` method
-	    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
-	    function (regexp, replaceValue) {
-	      if (reason.REPLACE_KEEPS_$0 || (typeof replaceValue === 'string' && replaceValue.indexOf('$0') === -1)) {
-	        var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);
-	        if (res.done) return res.value;
-	      }
-
-	      var rx = anObject(regexp);
-	      var S = String(this);
-
-	      var functionalReplace = typeof replaceValue === 'function';
-	      if (!functionalReplace) replaceValue = String(replaceValue);
-
-	      var global = rx.global;
-	      if (global) {
-	        var fullUnicode = rx.unicode;
-	        rx.lastIndex = 0;
-	      }
-	      var results = [];
-	      while (true) {
-	        var result = regexpExecAbstract(rx, S);
-	        if (result === null) break;
-
-	        results.push(result);
-	        if (!global) break;
-
-	        var matchStr = String(result[0]);
-	        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
-	      }
-
-	      var accumulatedResult = '';
-	      var nextSourcePosition = 0;
-	      for (var i = 0; i < results.length; i++) {
-	        result = results[i];
-
-	        var matched = String(result[0]);
-	        var position = max$2(min$2(toInteger(result.index), S.length), 0);
-	        var captures = [];
-	        // NOTE: This is equivalent to
-	        //   captures = result.slice(1).map(maybeToString)
-	        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
-	        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
-	        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
-	        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
-	        var namedCaptures = result.groups;
-	        if (functionalReplace) {
-	          var replacerArgs = [matched].concat(captures, position, S);
-	          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
-	          var replacement = String(replaceValue.apply(undefined, replacerArgs));
-	        } else {
-	          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
-	        }
-	        if (position >= nextSourcePosition) {
-	          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
-	          nextSourcePosition = position + matched.length;
-	        }
-	      }
-	      return accumulatedResult + S.slice(nextSourcePosition);
-	    }
-	  ];
-
-	  // https://tc39.github.io/ecma262/#sec-getsubstitution
-	  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
-	    var tailPos = position + matched.length;
-	    var m = captures.length;
-	    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
-	    if (namedCaptures !== undefined) {
-	      namedCaptures = toObject(namedCaptures);
-	      symbols = SUBSTITUTION_SYMBOLS;
-	    }
-	    return nativeReplace.call(replacement, symbols, function (match, ch) {
-	      var capture;
-	      switch (ch.charAt(0)) {
-	        case '$': return '$';
-	        case '&': return matched;
-	        case '`': return str.slice(0, position);
-	        case "'": return str.slice(tailPos);
-	        case '<':
-	          capture = namedCaptures[ch.slice(1, -1)];
-	          break;
-	        default: // \d\d?
-	          var n = +ch;
-	          if (n === 0) return match;
-	          if (n > m) {
-	            var f = floor$1(n / 10);
-	            if (f === 0) return match;
-	            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
-	            return match;
-	          }
-	          capture = captures[n - 1];
-	      }
-	      return capture === undefined ? '' : capture;
-	    });
-	  }
-	});
-
 	// iterable DOM collections
 	// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
 	var domIterables = {
@@ -1583,24 +1232,7 @@
 	 * @version: v1.1.0
 	 */
 
-	var initBodyCaller; // it only does '%s', and return '' when arguments are undefined
-
-	var sprintf = function sprintf(str) {
-	  var args = arguments;
-	  var flag = true;
-	  var i = 1;
-	  str = str.replace(/%s/g, function () {
-	    var arg = args[i++];
-
-	    if (typeof arg === 'undefined') {
-	      flag = false;
-	      return '';
-	    }
-
-	    return arg;
-	  });
-	  return flag ? str : '';
-	};
+	var initBodyCaller;
 
 	var groupBy = function groupBy(array, f) {
 	  var tmpGroups = {};
@@ -1612,10 +1244,23 @@
 	  return tmpGroups;
 	};
 
+	$.extend($.fn.bootstrapTable.defaults.icons, {
+	  collapseGroup: {
+	    bootstrap3: 'glyphicon-chevron-up',
+	    materialize: 'arrow_drop_down'
+	  }[$.fn.bootstrapTable.theme] || 'fa-angle-up',
+	  expandGroup: {
+	    bootstrap3: 'glyphicon-chevron-down',
+	    materialize: 'arrow_drop_up'
+	  }[$.fn.bootstrapTable.theme] || 'fa-angle-down'
+	});
 	$.extend($.fn.bootstrapTable.defaults, {
 	  groupBy: false,
 	  groupByField: '',
-	  groupByFormatter: undefined
+	  groupByFormatter: undefined,
+	  groupByToggle: false,
+	  groupByShowToggleIcon: false,
+	  groupByCollapsedGroups: []
 	});
 	var Utils = $.fn.bootstrapTable.utils;
 	var BootstrapTable = $.fn.bootstrapTable.Constructor;
@@ -1680,6 +1325,10 @@
 	          item._data = {};
 	        }
 
+	        if (_this.isCollapsed(key, value)) {
+	          item._class = 'hidden';
+	        }
+
 	        item._data['parent-index'] = index;
 	      });
 	      index++;
@@ -1688,6 +1337,8 @@
 	};
 
 	BootstrapTable.prototype.initBody = function () {
+	  var _this2 = this;
+
 	  initBodyCaller = true;
 
 	  for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
@@ -1716,7 +1367,7 @@
 
 	    this.tableGroups.forEach(function (item) {
 	      var html = [];
-	      html.push(sprintf('<tr class="info groupBy expanded" data-group-index="%s">', item.id));
+	      html.push(Utils.sprintf('<tr class="info groupBy %s" data-group-index="%s">', _this2.options.groupByToggle ? 'expanded' : '', item.id));
 
 	      if (that.options.detailView && !that.options.cardView) {
 	        html.push('<td class="detail"></td>');
@@ -1732,8 +1383,18 @@
 	        formattedValue = that.options.groupByFormatter(item.name, item.id, item.data);
 	      }
 
-	      html.push('<td', sprintf(' colspan="%s"', visibleColumns), '>', formattedValue, '</td>');
-	      html.push('</tr>');
+	      html.push('<td', Utils.sprintf(' colspan="%s"', visibleColumns), '>', formattedValue);
+	      var icon = _this2.options.icons.collapseGroup;
+
+	      if (_this2.isCollapsed(item.name, item.data)) {
+	        icon = _this2.options.icons.expandGroup;
+	      }
+
+	      if (_this2.options.groupByToggle && _this2.options.groupByShowToggleIcon) {
+	        html.push("<span class=\"float-right ".concat(_this2.options.iconsPrefix, " ").concat(icon, "\"></span>"));
+	      }
+
+	      html.push('</td></tr>');
 	      that.$body.find("tr[data-parent-index=".concat(item.id, "]:first")).before($(html.join('')));
 	    });
 	    this.$selectGroup = [];
@@ -1746,10 +1407,15 @@
 	        })
 	      });
 	    });
-	    this.$container.off('click', '.groupBy').on('click', '.groupBy', function () {
-	      $(this).toggleClass('expanded');
-	      that.$body.find("tr[data-parent-index=".concat($(this).closest('tr').data('group-index'), "]")).toggleClass('hidden');
-	    });
+
+	    if (this.options.groupByToggle) {
+	      this.$container.off('click', '.groupBy').on('click', '.groupBy', function () {
+	        $(this).toggleClass('expanded collapsed');
+	        $(this).find('span').toggleClass("".concat(that.options.icons.collapseGroup, " ").concat(that.options.icons.expandGroup));
+	        that.$body.find("tr[data-parent-index=".concat($(this).closest('tr').data('group-index'), "]")).toggleClass('hidden');
+	      });
+	    }
+
 	    this.$container.off('click', '[name="btSelectGroup"]').on('click', '[name="btSelectGroup"]', function (event) {
 	      event.stopImmediatePropagation();
 	      var self = $(this);
@@ -1787,6 +1453,18 @@
 	  this.checkGroup_(index, false);
 	};
 
+	BootstrapTable.prototype.isCollapsed = function (groupKey, items) {
+	  if (this.options.groupByCollapsedGroups) {
+	    var collapsedGroups = Utils.calculateObjectValue(this, this.options.groupByCollapsedGroups, [groupKey, items], true);
+
+	    if ($.inArray(groupKey, collapsedGroups) > -1) {
+	      return true;
+	    }
+	  }
+
+	  return false;
+	};
+
 	BootstrapTable.prototype.checkGroup_ = function (index, checked) {
 	  var rowsBefore = this.getSelections();
 
@@ -1843,7 +1521,7 @@
 
 	        if (options.unit === 'rows') {
 	          var scrollTo = 0;
-	          this.$body.find("> tr:lt(".concat(options.value, ")")).each(function (i, el) {
+	          this.$body.find("> tr:not(.groupBy):lt(".concat(options.value, ")")).each(function (i, el) {
 	            scrollTo += $(el).outerHeight(true);
 	          });
 	          var $targetColumn = this.$body.find("> tr:not(.groupBy):eq(".concat(options.value, ")"));

+ 2 - 2
dist/extensions/group-by-v2/bootstrap-table-group-by.min.css

@@ -1,10 +1,10 @@
 /**
   * bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
   *
-  * @version v1.17.1
+  * @version v1.18.0
   * @homepage https://bootstrap-table.com
   * @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
   * @license MIT
   */
 
-.bootstrap-table .table>tbody>tr.groupBy{cursor:pointer}.bootstrap-table .table>tbody>tr.hidden+tr.detail-view{display:none}
+.bootstrap-table .table>tbody>tr.groupBy.collapsed,.bootstrap-table .table>tbody>tr.groupBy.expanded{cursor:pointer}.bootstrap-table .table>tbody>tr.hidden{display:none}

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/group-by-v2/bootstrap-table-group-by.min.js


+ 1 - 1
dist/extensions/i18n-enhance/bootstrap-table-i18n-enhance.min.js

@@ -1,7 +1,7 @@
 /**
   * bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
   *
-  * @version v1.17.1
+  * @version v1.18.0
   * @homepage https://bootstrap-table.com
   * @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
   * @license MIT

+ 2 - 1
dist/extensions/key-events/bootstrap-table-key-events.js

@@ -1272,6 +1272,7 @@
 	 * @update zhixin wen <wenzhixin2010@gmail.com>
 	 */
 
+	var Utils = $.fn.bootstrapTable.utils;
 	$.extend($.fn.bootstrapTable.defaults, {
 	  keyEvents: false
 	});
@@ -1308,7 +1309,7 @@
 	      var _this = this;
 
 	      $(document).off('keydown').on('keydown', function (e) {
-	        var $search = _this.$toolbar.find('.search input');
+	        var $search = Utils.getSearchInput(_this);
 
 	        var $refresh = _this.$toolbar.find('button[name="refresh"]');
 

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/key-events/bootstrap-table-key-events.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/mobile/bootstrap-table-mobile.min.js


File diff suppressed because it is too large
+ 65 - 437
dist/extensions/multiple-sort/bootstrap-table-multiple-sort.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/multiple-sort/bootstrap-table-multiple-sort.min.js


+ 1 - 1
dist/extensions/page-jump-to/bootstrap-table-page-jump-to.min.css

@@ -1,7 +1,7 @@
 /**
   * bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
   *
-  * @version v1.17.1
+  * @version v1.18.0
   * @homepage https://bootstrap-table.com
   * @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
   * @license MIT

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/page-jump-to/bootstrap-table-page-jump-to.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/pipeline/bootstrap-table-pipeline.min.js


File diff suppressed because it is too large
+ 74 - 17
dist/extensions/print/bootstrap-table-print.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/print/bootstrap-table-print.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/reorder-columns/bootstrap-table-reorder-columns.min.js


+ 1 - 1
dist/extensions/reorder-rows/bootstrap-table-reorder-rows.min.css

@@ -1,7 +1,7 @@
 /**
   * bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
   *
-  * @version v1.17.1
+  * @version v1.18.0
   * @homepage https://bootstrap-table.com
   * @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
   * @license MIT

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/reorder-rows/bootstrap-table-reorder-rows.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/resizable/bootstrap-table-resizable.min.js


+ 17 - 4
dist/extensions/sticky-header/bootstrap-table-sticky-header.js

@@ -1037,10 +1037,12 @@
 	      this.$stickyEnd = this.$tableBody.find('.sticky_anchor_end');
 	      this.$stickyHeader = this.$header.clone(true, true); // render sticky on window scroll or resize
 
-	      $(window).off('resize.sticky-header-table').on('resize.sticky-header-table', function () {
+	      var resizeEvent = Utils.getEventName('resize.sticky-header-table', this.$el.attr('id'));
+	      var scrollEvent = Utils.getEventName('scroll.sticky-header-table', this.$el.attr('id'));
+	      $(window).off(resizeEvent).on(resizeEvent, function () {
 	        return _this.renderStickyHeader();
 	      });
-	      $(window).off('scroll.sticky-header-table').on('scroll.sticky-header-table', function () {
+	      $(window).off(scrollEvent).on(scrollEvent, function () {
 	        return _this.renderStickyHeader();
 	      });
 	      this.$tableBody.off('scroll').on('scroll', function () {
@@ -1077,9 +1079,20 @@
 	      });
 	    }
 	  }, {
+	    key: "horizontalScroll",
+	    value: function horizontalScroll() {
+	      var _this3 = this;
+
+	      _get(_getPrototypeOf(_class.prototype), "horizontalScroll", this).call(this);
+
+	      this.$tableBody.on('scroll', function () {
+	        return _this3.matchPositionX();
+	      });
+	    }
+	  }, {
 	    key: "renderStickyHeader",
 	    value: function renderStickyHeader() {
-	      var _this3 = this;
+	      var _this4 = this;
 
 	      var that = this;
 	      this.$stickyHeader = this.$header.clone(true, true);
@@ -1112,7 +1125,7 @@
 	      if (top > start && top <= end) {
 	        // ensure clone and source column widths are the same
 	        this.$stickyHeader.find('tr:eq(0)').find('th').each(function (index, el) {
-	          $(el).css('min-width', _this3.$header.find('tr:eq(0)').find('th').eq(index).css('width'));
+	          $(el).css('min-width', _this4.$header.find('tr:eq(0)').find('th').eq(index).css('width'));
 	        }); // match bootstrap table style
 
 	        this.$stickyContainer.show().addClass('fix-sticky fixed-table-container'); // stick it in position

+ 1 - 1
dist/extensions/sticky-header/bootstrap-table-sticky-header.min.css

@@ -1,7 +1,7 @@
 /**
   * bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
   *
-  * @version v1.17.1
+  * @version v1.18.0
   * @homepage https://bootstrap-table.com
   * @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
   * @license MIT

File diff suppressed because it is too large
+ 2 - 2
dist/extensions/sticky-header/bootstrap-table-sticky-header.min.js


File diff suppressed because it is too large
+ 71 - 18
dist/extensions/toolbar/bootstrap-table-toolbar.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/toolbar/bootstrap-table-toolbar.min.js


File diff suppressed because it is too large
+ 2 - 2
dist/extensions/treegrid/bootstrap-table-treegrid.min.js


+ 6 - 0
dist/locale/bootstrap-table-af-ZA.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['af-ZA'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Besig om te laai, wag asseblief';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-af-ZA.min.js


+ 6 - 0
dist/locale/bootstrap-table-ar-SA.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ar-SA'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'جاري التحميل, يرجى الإنتظار';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-ar-SA.min.js


+ 6 - 0
dist/locale/bootstrap-table-bg-BG.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['bg-BG'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Зареждане, моля изчакайте';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-bg-BG.min.js


+ 6 - 0
dist/locale/bootstrap-table-ca-ES.js

@@ -675,6 +675,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['ca-ES'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Espereu, si us plau';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-ca-ES.min.js


+ 6 - 0
dist/locale/bootstrap-table-cs-CZ.js

@@ -675,6 +675,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['cs-CZ'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Čekejte, prosím';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-cs-CZ.min.js


+ 6 - 0
dist/locale/bootstrap-table-da-DK.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['da-DK'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Indlæser, vent venligst';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-da-DK.min.js


+ 9 - 3
dist/locale/bootstrap-table-de-DE.js

@@ -674,6 +674,12 @@
 	*/
 
 	$.fn.bootstrapTable.locales['de-DE'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Zeilen kopieren';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Drucken';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Lade, bitte warten';
 	  },
@@ -757,13 +763,13 @@
 	    return 'Schließen';
 	  },
 	  formatFilterControlSwitch: function formatFilterControlSwitch() {
-	    return 'Verstecke/Zeige controls';
+	    return 'Verstecke/Zeige Filter';
 	  },
 	  formatFilterControlSwitchHide: function formatFilterControlSwitchHide() {
-	    return 'Verstecke controls';
+	    return 'Verstecke Filter';
 	  },
 	  formatFilterControlSwitchShow: function formatFilterControlSwitchShow() {
-	    return 'Zeige controls';
+	    return 'Zeige Filter';
 	  }
 	};
 	$.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales['de-DE']);

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-de-DE.min.js


+ 6 - 0
dist/locale/bootstrap-table-el-GR.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['el-GR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Φορτώνει, παρακαλώ περιμένετε';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-el-GR.min.js


+ 6 - 0
dist/locale/bootstrap-table-en-US.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['en-US'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Loading, please wait';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-en-US.min.js


+ 6 - 0
dist/locale/bootstrap-table-es-AR.js

@@ -675,6 +675,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-AR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, espere por favor';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-es-AR.min.js


+ 6 - 0
dist/locale/bootstrap-table-es-CL.js

@@ -675,6 +675,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-CL'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, espere por favor';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-es-CL.min.js


+ 6 - 0
dist/locale/bootstrap-table-es-CR.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-CR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, por favor espere';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-es-CR.min.js


+ 6 - 0
dist/locale/bootstrap-table-es-ES.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-ES'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Por favor espere';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-es-ES.min.js


+ 6 - 0
dist/locale/bootstrap-table-es-MX.js

@@ -676,6 +676,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-MX'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, espere por favor';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-es-MX.min.js


+ 6 - 0
dist/locale/bootstrap-table-es-NI.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-NI'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, por favor espere';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-es-NI.min.js


+ 6 - 0
dist/locale/bootstrap-table-es-SP.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['es-SP'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Cargando, por favor espera';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-es-SP.min.js


+ 6 - 0
dist/locale/bootstrap-table-et-EE.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['et-EE'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Päring käib, palun oota';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-et-EE.min.js


+ 6 - 0
dist/locale/bootstrap-table-eu-EU.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['eu-EU'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Itxaron mesedez';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-eu-EU.min.js


+ 6 - 0
dist/locale/bootstrap-table-fa-IR.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fa-IR'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'در حال بارگذاری, لطفا صبر کنید';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-fa-IR.min.js


+ 6 - 0
dist/locale/bootstrap-table-fi-FI.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fi-FI'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Ladataan, ole hyvä ja odota';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-fi-FI.min.js


+ 6 - 0
dist/locale/bootstrap-table-fr-BE.js

@@ -675,6 +675,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fr-BE'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Chargement en cours';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-fr-BE.min.js


+ 6 - 0
dist/locale/bootstrap-table-fr-CH.js

@@ -674,6 +674,12 @@
 	 */
 
 	$.fn.bootstrapTable.locales['fr-CH'] = {
+	  formatCopyRows: function formatCopyRows() {
+	    return 'Copy Rows';
+	  },
+	  formatPrint: function formatPrint() {
+	    return 'Print';
+	  },
 	  formatLoadingMessage: function formatLoadingMessage() {
 	    return 'Chargement en cours';
 	  },

File diff suppressed because it is too large
+ 2 - 2
dist/locale/bootstrap-table-fr-CH.min.js


+ 0 - 0
dist/locale/bootstrap-table-fr-FR.js


Some files were not shown because too many files changed in this diff