From fd4d0abdf68e178101cf5b847d4e22045e1cc04b Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sat, 25 May 2019 13:33:29 +0800 Subject: [PATCH] =?UTF-8?q?refactor(bootstrap-table):=20=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=88=B01.14.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Bootstrap.Admin/libman.json | 2 +- Bootstrap.Admin/wwwroot/css/site.css | 28 + Bootstrap.Admin/wwwroot/css/theme.css | 8 +- Bootstrap.Admin/wwwroot/js/menus.js | 8 +- .../lib/bootstrap-table/bootstrap-table.css | 470 +- .../lib/bootstrap-table/bootstrap-table.js | 5485 +++++++++-------- .../bootstrap-table/bootstrap-table.min.css | 11 +- .../bootstrap-table/bootstrap-table.min.js | 17 +- .../export/bootstrap-table-export.js | 469 +- .../export/bootstrap-table-export.min.js | 17 +- .../treegrid/bootstrap-table-treegrid.js | 198 +- .../treegrid/bootstrap-table-treegrid.min.js | 17 +- .../locale/bootstrap-table-zh-CN.js | 116 +- .../locale/bootstrap-table-zh-CN.min.js | 17 +- .../wwwroot/lib/longbow/longbow.common.js | 4 +- .../wwwroot/lib/longbow/longbow.dataentity.js | 2 +- 16 files changed, 3789 insertions(+), 3080 deletions(-) diff --git a/Bootstrap.Admin/libman.json b/Bootstrap.Admin/libman.json index 9c12404c..4bf53eed 100644 --- a/Bootstrap.Admin/libman.json +++ b/Bootstrap.Admin/libman.json @@ -47,7 +47,7 @@ }, { "provider": "cdnjs", - "library": "bootstrap-table@1.12.1", + "library": "bootstrap-table@1.14.2", "destination": "wwwroot/lib/bootstrap-table/", "files": [ "bootstrap-table.min.js", diff --git a/Bootstrap.Admin/wwwroot/css/site.css b/Bootstrap.Admin/wwwroot/css/site.css index 20889083..27033d73 100644 --- a/Bootstrap.Admin/wwwroot/css/site.css +++ b/Bootstrap.Admin/wwwroot/css/site.css @@ -613,6 +613,34 @@ li[data-category="1"] .dd3-content .menuType { word-break: break-all; } +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .loading-text { + font-size: 0.875rem; +} + +.bootstrap-table td, .bootstrap-table .fixed-table-container .table thead th .th-inner { + padding: 0.5rem; +} + + .bootstrap-table .fixed-table-container .table thead th .th-inner.sortable { + padding-right: 30px; + } + +.bootstrap-table .table tbody tr:nth-of-type(odd) { + background-color: rgba(0,0,0,.05); +} + +.bootstrap-table .fixed-table-container .fixed-table-body { + border-radius: 4px; +} + + .bootstrap-table .fixed-table-container .fixed-table-body .table .bs-checkbox label { + margin-bottom: 0; + } + + .bootstrap-table .fixed-table-container .fixed-table-body .table .bs-checkbox label input[type='checkbox'] { + cursor: pointer; + } + pre { padding: 5px; margin: 5px; diff --git a/Bootstrap.Admin/wwwroot/css/theme.css b/Bootstrap.Admin/wwwroot/css/theme.css index 876e4581..93e0cdbd 100644 --- a/Bootstrap.Admin/wwwroot/css/theme.css +++ b/Bootstrap.Admin/wwwroot/css/theme.css @@ -349,14 +349,10 @@ input.pending { margin-bottom: 15px; } - .bootstrap-table .fixed-table-body .table { - border-bottom: none; + .bootstrap-table .fixed-table-body .table td > a { + display: block; } - .bootstrap-table .fixed-table-body .table td > a { - display: block; - } - .bootstrap-table .fixed-table-toolbar .columns-right .btn-group .dropdown-menu { padding-top: 8px; } diff --git a/Bootstrap.Admin/wwwroot/js/menus.js b/Bootstrap.Admin/wwwroot/js/menus.js index a5d41195..7d9cdd6c 100644 --- a/Bootstrap.Admin/wwwroot/js/menus.js +++ b/Bootstrap.Admin/wwwroot/js/menus.js @@ -87,7 +87,7 @@ $(function () { }, events: { 'click .menu': function (e, value, row, index) { - var $plus = $(this).prev(); + var $plus = $(e.target).prev(); if ($plus.hasClass('fa')) { $plus.trigger('click'); } @@ -142,15 +142,15 @@ $(function () { idField: "Id", treeShowField: 'Name', parentIdField: 'ParentId', - onPreBody: function(data) { - if($('#txt_parent_menus_name').val() !== '') { + onPreBody: function (data) { + if ($('#txt_parent_menus_name').val() !== '' || $('#sel_menus_res').val() === '2') { this.treeShowField = false; } else { this.treeShowField = 'Name'; } var bt = $table.data('bootstrap.table'); - if(bt) { + if (bt) { bt.treeEnable = !!this.treeShowField; } }, diff --git a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.css b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.css index 3ce88c78..7a716503 100644 --- a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.css +++ b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.css @@ -1,318 +1,282 @@ +@charset "UTF-8"; /** * @author zhixin wen - * version: 1.12.1 + * version: 1.14.2 * https://github.com/wenzhixin/bootstrap-table/ */ - -.bootstrap-table .table { - margin-bottom: 0 !important; - border-bottom: 1px solid #dddddd; - border-collapse: collapse !important; - border-radius: 1px; +.bootstrap-table .fixed-table-toolbar:after { + content: ""; + display: block; + clear: both; } - -.bootstrap-table .table:not(.table-condensed), -.bootstrap-table .table:not(.table-condensed) > tbody > tr > th, -.bootstrap-table .table:not(.table-condensed) > tfoot > tr > th, -.bootstrap-table .table:not(.table-condensed) > thead > tr > td, -.bootstrap-table .table:not(.table-condensed) > tbody > tr > td, -.bootstrap-table .table:not(.table-condensed) > tfoot > tr > td { - padding: 8px; +.bootstrap-table .fixed-table-toolbar .bs-bars, +.bootstrap-table .fixed-table-toolbar .search, +.bootstrap-table .fixed-table-toolbar .columns { + position: relative; + margin-top: 10px; + margin-bottom: 10px; } - -.bootstrap-table .table.table-no-bordered > thead > tr > th, -.bootstrap-table .table.table-no-bordered > tbody > tr > td { - border-right: 2px solid transparent; +.bootstrap-table .fixed-table-toolbar .columns .btn-group > .btn-group { + display: inline-block; + margin-left: -1px !important; } - -.bootstrap-table .table.table-no-bordered > tbody > tr > td:last-child { - border-right: none; +.bootstrap-table .fixed-table-toolbar .columns .btn-group > .btn-group:first-child > .btn { + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; } - -.fixed-table-container { - position: relative; - clear: both; - border: 1px solid #dddddd; - border-radius: 4px; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; +.bootstrap-table .fixed-table-toolbar .columns .btn-group > .btn-group:last-child > .btn { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; } - -.fixed-table-container.table-no-bordered { - border: 1px solid transparent; +.bootstrap-table .fixed-table-toolbar .columns .btn-group > .btn-group > .btn { + border-radius: 0; } - -.fixed-table-footer, -.fixed-table-header { - overflow: hidden; +.bootstrap-table .fixed-table-toolbar .columns .dropdown-menu { + text-align: left; + max-height: 300px; + overflow: auto; } - -.fixed-table-footer { - border-top: 1px solid #dddddd; +.bootstrap-table .fixed-table-toolbar .columns label { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.428571429; } - -.fixed-table-body { - overflow-x: auto; - overflow-y: auto; - height: 100%; +.bootstrap-table .fixed-table-toolbar .columns-left { + margin-right: 5px; } - -.fixed-table-container table { - width: 100%; +.bootstrap-table .fixed-table-toolbar .columns-right { + margin-left: 5px; } - -.fixed-table-container thead th { - height: 0; - padding: 0; - margin: 0; - border-left: 1px solid #dddddd; +.bootstrap-table .fixed-table-toolbar .pull-right .dropdown-menu { + right: 0; + left: auto; } - -.fixed-table-container thead th:focus { - outline: 0 solid transparent; +.bootstrap-table .fixed-table-container { + position: relative; + clear: both; } - -.fixed-table-container thead th:first-child:not([data-not-first-th]) { - border-left: none; - border-top-left-radius: 4px; - -webkit-border-top-left-radius: 4px; - -moz-border-radius-topleft: 4px; +.bootstrap-table .fixed-table-container.fixed-height:not(.has-footer) { + border-bottom: 1px solid #dee2e6; } - -.fixed-table-container thead th .th-inner, -.fixed-table-container tbody td .th-inner { - padding: 8px; - line-height: 24px; - vertical-align: top; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; +.bootstrap-table .fixed-table-container.fixed-height .fixed-table-border { + border-left: 1px solid #dee2e6; + border-right: 1px solid #dee2e6; } - -.fixed-table-container thead th .sortable { - cursor: pointer; - background-position: right; - background-repeat: no-repeat; - padding-right: 30px; +.bootstrap-table .fixed-table-container.fixed-height .table thead th { + border-bottom: 1px solid #dee2e6; } - -.fixed-table-container thead th .both { - background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAkElEQVQoz7X QMQ5AQBCF4dWQSJxC5wwax1Cq1e7BAdxD5SL+Tq/QCM1oNiJidwox0355mXnG/DrEtIQ6azioNZQxI0ykPhTQIwhCR+BmBYtlK7kLJYwWCcJA9M4qdrZrd8pPjZWPtOqdRQy320YSV17OatFC4euts6z39GYMKRPCTKY9UnPQ6P+GtMRfGtPnBCiqhAeJPmkqAAAAAElFTkSuQmCC'); +.bootstrap-table .fixed-table-container.fixed-height .table-dark thead th { + border-bottom: 1px solid #32383e; } - -.fixed-table-container thead th .asc { - background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZ0lEQVQ4y2NgGLKgquEuFxBPAGI2ahhWCsS/gDibUoO0gPgxEP8H4ttArEyuQYxAPBdqEAxPBImTY5gjEL9DM+wTENuQahAvEO9DMwiGdwAxOymGJQLxTyD+jgWDxCMZRsEoGAVoAADeemwtPcZI2wAAAABJRU5ErkJggg=='); +.bootstrap-table .fixed-table-container .fixed-table-header { + overflow: hidden; } - -.fixed-table-container thead th .desc { - background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZUlEQVQ4y2NgGAWjYBSggaqGu5FA/BOIv2PBIPFEUgxjB+IdQPwfC94HxLykus4GiD+hGfQOiB3J8SojEE9EM2wuSJzcsFMG4ttQgx4DsRalkZENxL+AuJQaMcsGxBOAmGvopk8AVz1sLZgg0bsAAAAASUVORK5CYII= '); +.bootstrap-table .fixed-table-container .fixed-table-body { + overflow-x: auto; + overflow-y: auto; + height: 100%; } - -.fixed-table-container th.detail { - width: 30px; +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading { + align-items: center; + background: #fff; + display: none; + justify-content: center; + position: absolute; + bottom: 0; + width: 100%; + z-index: 1000; } - -.fixed-table-container tbody td { - border-left: 1px solid #dddddd; +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap { + align-items: baseline; + display: flex; + justify-content: center; } - -.fixed-table-container tbody tr:first-child td { - border-top: none; +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .loading-text { + font-size: 2rem; + margin-right: 6px; } - -.fixed-table-container tbody td:first-child { - border-left: none; +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-wrap { + align-items: center; + display: flex; + justify-content: center; } - -/* the same color with .active */ -.fixed-table-container tbody .selected td { - background-color: #f5f5f5; +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-dot, +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-wrap:after, +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-wrap:before { + content: ""; + animation-duration: 1.5s; + animation-iteration-count: infinite; + animation-name: LOADING; + background: #212529; + border-radius: 50%; + display: block; + height: 5px; + margin: 0 4px; + opacity: 0; + width: 5px; } - -.fixed-table-container .bs-checkbox { - text-align: center; +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-dot { + animation-delay: 0.3s; } - -.fixed-table-container input[type="radio"], -.fixed-table-container input[type="checkbox"] { - margin: 0 auto !important; +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-wrap:after { + animation-delay: 0.6s; } - -.fixed-table-container .no-records-found { - text-align: center; +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading.table-dark { + background: #212529; } - -.fixed-table-pagination div.pagination, -.fixed-table-pagination .pagination-detail { - margin-top: 10px; - margin-bottom: 10px; +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading.table-dark .animation-dot, +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading.table-dark .animation-wrap:after, +.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading.table-dark .animation-wrap:before { + background: #fff; } - -.fixed-table-pagination div.pagination .pagination { - margin: 0; +.bootstrap-table .fixed-table-container .table { + width: 100%; + margin-bottom: 0 !important; } - -.fixed-table-pagination .pagination a { - padding: 6px 12px; - line-height: 1.428571429; +.bootstrap-table .fixed-table-container .table th, +.bootstrap-table .fixed-table-container .table td { + vertical-align: middle; + box-sizing: border-box; } - -.fixed-table-pagination .pagination-info { - line-height: 34px; - margin-right: 5px; +.bootstrap-table .fixed-table-container .table thead th { + vertical-align: bottom; + padding: 0; + margin: 0; } - -.fixed-table-pagination .btn-group { - position: relative; - display: inline-block; - vertical-align: middle; +.bootstrap-table .fixed-table-container .table thead th:focus { + outline: 0 solid transparent; } - -.fixed-table-pagination .dropup .dropdown-menu { - margin-bottom: 0; +.bootstrap-table .fixed-table-container .table thead th.detail { + width: 30px; } - -.fixed-table-pagination .page-list { - display: inline-block; +.bootstrap-table .fixed-table-container .table thead th .th-inner { + padding: 0.75rem; + vertical-align: bottom; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } - -.fixed-table-toolbar .columns-left { - margin-right: 5px; +.bootstrap-table .fixed-table-container .table thead th .sortable { + cursor: pointer; + background-position: right; + background-repeat: no-repeat; + padding-right: 30px; } - -.fixed-table-toolbar .columns-right { - margin-left: 5px; +.bootstrap-table .fixed-table-container .table thead th .both { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAkElEQVQoz7X QMQ5AQBCF4dWQSJxC5wwax1Cq1e7BAdxD5SL+Tq/QCM1oNiJidwox0355mXnG/DrEtIQ6azioNZQxI0ykPhTQIwhCR+BmBYtlK7kLJYwWCcJA9M4qdrZrd8pPjZWPtOqdRQy320YSV17OatFC4euts6z39GYMKRPCTKY9UnPQ6P+GtMRfGtPnBCiqhAeJPmkqAAAAAElFTkSuQmCC"); } - -.fixed-table-toolbar .columns label { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: 1.428571429; +.bootstrap-table .fixed-table-container .table thead th .asc { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZ0lEQVQ4y2NgGLKgquEuFxBPAGI2ahhWCsS/gDibUoO0gPgxEP8H4ttArEyuQYxAPBdqEAxPBImTY5gjEL9DM+wTENuQahAvEO9DMwiGdwAxOymGJQLxTyD+jgWDxCMZRsEoGAVoAADeemwtPcZI2wAAAABJRU5ErkJggg=="); } - -.fixed-table-toolbar .bs-bars, -.fixed-table-toolbar .search, -.fixed-table-toolbar .columns { - position: relative; - margin-top: 10px; - margin-bottom: 10px; - line-height: 34px; +.bootstrap-table .fixed-table-container .table thead th .desc { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZUlEQVQ4y2NgGAWjYBSggaqGu5FA/BOIv2PBIPFEUgxjB+IdQPwfC94HxLykus4GiD+hGfQOiB3J8SojEE9EM2wuSJzcsFMG4ttQgx4DsRalkZENxL+AuJQaMcsGxBOAmGvopk8AVz1sLZgg0bsAAAAASUVORK5CYII= "); } - -.fixed-table-pagination li.disabled a { - pointer-events: none; - cursor: default; +.bootstrap-table .fixed-table-container .table tbody tr.selected td { + background-color: rgba(0, 0, 0, 0.075); } - -.fixed-table-loading { - display: none; - position: absolute; - top: 42px; - right: 0; - bottom: 0; - left: 0; - z-index: 99; - background-color: #fff; - text-align: center; +.bootstrap-table .fixed-table-container .table tbody tr.no-records-found { + text-align: center; } - -.fixed-table-body .card-view .title { - font-weight: bold; - display: inline-block; - min-width: 30%; - text-align: left !important; +.bootstrap-table .fixed-table-container .table tbody tr .card-view .card-view-title { + font-weight: bold; + display: inline-block; + min-width: 30%; + text-align: left !important; } - -/* support bootstrap 2 */ -.fixed-table-body thead th .th-inner { - box-sizing: border-box; +.bootstrap-table .fixed-table-container .table .bs-checkbox { + text-align: center; } - -.table th, .table td { - vertical-align: middle; - box-sizing: border-box; +.bootstrap-table .fixed-table-container .table input[type=radio], +.bootstrap-table .fixed-table-container .table input[type=checkbox] { + margin: 0 auto !important; } - -.fixed-table-toolbar .dropdown-menu { - text-align: left; - max-height: 300px; - overflow: auto; +.bootstrap-table .fixed-table-container .table.table-sm .th-inner { + padding: 0.3rem; } - -.fixed-table-toolbar .btn-group > .btn-group { - display: inline-block; - margin-left: -1px !important; +.bootstrap-table .fixed-table-container .fixed-table-footer { + overflow: hidden; } - -.fixed-table-toolbar .btn-group > .btn-group > .btn { - border-radius: 0; +.bootstrap-table .fixed-table-pagination:after { + content: ""; + display: block; + clear: both; } - -.fixed-table-toolbar .btn-group > .btn-group:first-child > .btn { - border-top-left-radius: 4px; - border-bottom-left-radius: 4px; +.bootstrap-table .fixed-table-pagination > .pagination-detail, +.bootstrap-table .fixed-table-pagination > .pagination { + margin-top: 10px; + margin-bottom: 10px; } - -.fixed-table-toolbar .btn-group > .btn-group:last-child > .btn { - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; +.bootstrap-table .fixed-table-pagination > .pagination-detail .pagination-info { + line-height: 34px; + margin-right: 5px; } - -.bootstrap-table .table > thead > tr > th { - vertical-align: bottom; - border-bottom: 1px solid #ddd; +.bootstrap-table .fixed-table-pagination > .pagination-detail .page-list { + display: inline-block; } - -/* support bootstrap 3 */ -.bootstrap-table .table thead > tr > th { - padding: 0; - margin: 0; +.bootstrap-table .fixed-table-pagination > .pagination-detail .page-list .btn-group { + position: relative; + display: inline-block; + vertical-align: middle; } - -.bootstrap-table .fixed-table-footer tbody > tr > td { - padding: 0 !important; +.bootstrap-table .fixed-table-pagination > .pagination-detail .page-list .btn-group .dropdown-menu { + margin-bottom: 0; } - -.bootstrap-table .fixed-table-footer .table { - border-bottom: none; - border-radius: 0; - padding: 0 !important; +.bootstrap-table .fixed-table-pagination > .pagination ul.pagination { + margin: 0; } - -.bootstrap-table .pull-right .dropdown-menu { - right: 0; - left: auto; +.bootstrap-table .fixed-table-pagination > .pagination ul.pagination a { + padding: 6px 12px; + line-height: 1.428571429; +} +.bootstrap-table .fixed-table-pagination > .pagination ul.pagination li.page-intermediate a { + color: #c8c8c8; +} +.bootstrap-table .fixed-table-pagination > .pagination ul.pagination li.page-intermediate a:before { + content: "⬅"; +} +.bootstrap-table .fixed-table-pagination > .pagination ul.pagination li.page-intermediate a:after { + content: "➡"; +} +.bootstrap-table .fixed-table-pagination > .pagination ul.pagination li.disabled a { + pointer-events: none; + cursor: default; +} +.bootstrap-table.fullscreen { + position: fixed; + top: 0; + left: 0; + z-index: 1050; + width: 100% !important; + background: #FFF; } /* calculate scrollbar width */ -p.fixed-table-scroll-inner { - width: 100%; - height: 200px; +div.fixed-table-scroll-inner { + width: 100%; + height: 200px; } div.fixed-table-scroll-outer { - top: 0; - left: 0; - visibility: hidden; - width: 200px; - height: 150px; - overflow: hidden; + top: 0; + left: 0; + visibility: hidden; + width: 200px; + height: 150px; + overflow: hidden; } -/* for get correct heights */ -.fixed-table-toolbar:after, .fixed-table-pagination:after { - content: ""; - display: block; - clear: both; +@keyframes LOADING { + 0% { + opacity: 0; + } + 50% { + opacity: 1; + } + to { + opacity: 0; + } } -.fullscreen { - position: fixed; - top: 0; - left: 0; - z-index: 1050; - width: 100%!important; - background: #FFF; -} +/*# sourceMappingURL=bootstrap-table.css.map */ diff --git a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.js b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.js index 102274db..4567f29a 100644 --- a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.js +++ b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.js @@ -1,316 +1,802 @@ -/** - * @author zhixin wen - * version: 1.12.1 - * https://github.com/wenzhixin/bootstrap-table/ - */ +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.bootstrapTable = mod.exports; + } +})(this, function () { + 'use strict'; -(function ($) { - 'use strict'; + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + var _createClass = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; + }(); + + var _slicedToArray = function () { + function sliceIterator(arr, i) { + var _arr = []; + var _n = true; + var _d = false; + var _e = undefined; + + try { + for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { + _arr.push(_s.value); + + if (i && _arr.length === i) break; + } + } catch (err) { + _d = true; + _e = err; + } finally { + try { + if (!_n && _i["return"]) _i["return"](); + } finally { + if (_d) throw _e; + } + } + + return _arr; + } + + return function (arr, i) { + if (Array.isArray(arr)) { + return arr; + } else if (Symbol.iterator in Object(arr)) { + return sliceIterator(arr, i); + } else { + throw new TypeError("Invalid attempt to destructure non-iterable instance"); + } + }; + }(); + + function _toConsumableArray(arr) { + if (Array.isArray(arr)) { + for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { + arr2[i] = arr[i]; + } + + return arr2; + } else { + return Array.from(arr); + } + } + + var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { + return typeof obj; + } : function (obj) { + return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; + }; + + /** + * @author zhixin wen + * version: 1.14.2 + * https://github.com/wenzhixin/bootstrap-table/ + */ + + (function ($) { // TOOLS DEFINITION // ====================== - var bootstrapVersion = 3; + var bootstrapVersion = 4; try { - bootstrapVersion = parseInt($.fn.dropdown.Constructor.VERSION, 10); - } catch (e) {} - var bs = { - 3: { - buttonsClass: 'default', - iconsPrefix: 'glyphicon', - icons: { - paginationSwitchDown: 'glyphicon-collapse-down icon-chevron-down', - paginationSwitchUp: 'glyphicon-collapse-up icon-chevron-up', - refresh: 'glyphicon-refresh icon-refresh', - toggleOff: 'glyphicon-list-alt icon-list-alt', - toggleOn: 'glyphicon-list-alt icon-list-alt', - columns: 'glyphicon-th icon-th', - detailOpen: 'glyphicon-plus icon-plus', - detailClose: 'glyphicon-minus icon-minus', - fullscreen: 'glyphicon-fullscreen' - }, - pullClass: 'pull', - toobarDropdowHtml: [''], - toobarDropdowItemHtml: '
  • ', - pageDropdownHtml: [''], - pageDropdownItemHtml: '' + var rawVersion = $.fn.dropdown.Constructor.VERSION; + + // Only try to parse VERSION if is is defined. + // It is undefined in older versions of Bootstrap (tested with 3.1.1). + if (rawVersion !== undefined) { + bootstrapVersion = parseInt(rawVersion, 10); + } + } catch (e) { + // ignore + } + + var constants = { + 3: { + theme: 'bootstrap3', + iconsPrefix: 'glyphicon', + icons: { + paginationSwitchDown: 'glyphicon-collapse-down icon-chevron-down', + paginationSwitchUp: 'glyphicon-collapse-up icon-chevron-up', + refresh: 'glyphicon-refresh icon-refresh', + toggleOff: 'glyphicon-list-alt icon-list-alt', + toggleOn: 'glyphicon-list-alt icon-list-alt', + columns: 'glyphicon-th icon-th', + detailOpen: 'glyphicon-plus icon-plus', + detailClose: 'glyphicon-minus icon-minus', + fullscreen: 'glyphicon-fullscreen' }, - 4: { - buttonsClass: 'secondary', - iconsPrefix: 'fa', - icons: { - paginationSwitchDown: 'fa-toggle-down', - paginationSwitchUp: 'fa-toggle-up', - refresh: 'fa-refresh', - toggleOff: 'fa-toggle-off', - toggleOn: 'fa-toggle-on', - columns: 'fa-th-list', - detailOpen: 'fa-plus', - detailClose: 'fa-minus', - fullscreen: 'fa-arrows-alt' - }, - pullClass: 'float', - toobarDropdowHtml: [''], - toobarDropdowItemHtml: '', - pageDropdownHtml: [''], - pageDropdownItemHtml: '%s' + classes: { + buttonsPrefix: 'btn', + buttons: 'default', + buttonsGroup: 'btn-group', + buttonsDropdown: 'btn-group', + pull: 'pull', + inputGroup: '', + input: 'form-control', + paginationDropdown: 'btn-group dropdown', + dropup: 'dropup', + dropdownActive: 'active', + paginationActive: 'active' + }, + html: { + toobarDropdow: [''], + toobarDropdowItem: '
  • ', + pageDropdown: [''], + pageDropdownItem: '', + dropdownCaret: '', + pagination: ['
      ', '
    '], + paginationItem: '
  • %s
  • ', + icon: '' } + }, + 4: { + theme: 'bootstrap4', + iconsPrefix: 'fa', + icons: { + paginationSwitchDown: 'fa-caret-square-down', + paginationSwitchUp: 'fa-caret-square-up', + refresh: 'fa-sync', + toggleOff: 'fa-toggle-off', + toggleOn: 'fa-toggle-on', + columns: 'fa-th-list', + fullscreen: 'fa-arrows-alt', + detailOpen: 'fa-plus', + detailClose: 'fa-minus' + }, + classes: { + buttonsPrefix: 'btn', + buttons: 'secondary', + buttonsGroup: 'btn-group', + buttonsDropdown: 'btn-group', + pull: 'float', + inputGroup: '', + input: 'form-control', + paginationDropdown: 'btn-group dropdown', + dropup: 'dropup', + dropdownActive: 'active', + paginationActive: 'active' + }, + html: { + toobarDropdow: [''], + toobarDropdowItem: '', + pageDropdown: [''], + pageDropdownItem: '%s', + dropdownCaret: '', + pagination: ['
      ', '
    '], + paginationItem: '
  • %s
  • ', + icon: '' + } + } }[bootstrapVersion]; - var cachedWidth = null; + var Utils = { + bootstrapVersion: bootstrapVersion, - // it only does '%s', and return '' when arguments are undefined - var sprintf = function (str) { - var args = arguments, - flag = true, - i = 1; + sprintf: function sprintf(_str) { + for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } - str = str.replace(/%s/g, function () { - var arg = args[i++]; + var flag = true; + var i = 0; - if (typeof arg === 'undefined') { - flag = false; - return ''; - } - return arg; + var str = _str.replace(/%s/g, function () { + var arg = args[i++]; + + if (typeof arg === 'undefined') { + flag = false; + return ''; + } + return arg; }); return flag ? str : ''; - }; + }, + isEmptyObject: function isEmptyObject() { + var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - var getPropertyFromOther = function (list, from, to, value) { - var result = ''; - $.each(list, function (i, item) { - if (item[from] === value) { - result = item[to]; - return false; - } - return true; - }); - return result; - }; + return function (target) { + return Object.keys(target).map(function (key) { + return [key, target[key]]; + }); + }(obj).length === 0 && obj.constructor === Object; + }, + isNumeric: function isNumeric(n) { + return !isNaN(parseFloat(n)) && isFinite(n); + }, + getFieldTitle: function getFieldTitle(list, value) { + for (var _iterator = list, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { + var _ref; - // http://jsfiddle.net/wenyi/47nz7ez9/3/ - var setFieldIndex = function (columns) { - var i, j, k, - totalCol = 0, - flag = []; + if (_isArray) { + if (_i >= _iterator.length) break; + _ref = _iterator[_i++]; + } else { + _i = _iterator.next(); + if (_i.done) break; + _ref = _i.value; + } - for (i = 0; i < columns[0].length; i++) { - totalCol += columns[0][i].colspan || 1; + var item = _ref; + + if (item.field === value) { + return item.title; + } + } + return ''; + }, + setFieldIndex: function setFieldIndex(columns) { + var totalCol = 0; + var flag = []; + + for (var _iterator2 = columns[0], _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) { + var _ref2; + + if (_isArray2) { + if (_i2 >= _iterator2.length) break; + _ref2 = _iterator2[_i2++]; + } else { + _i2 = _iterator2.next(); + if (_i2.done) break; + _ref2 = _i2.value; + } + + var column = _ref2; + + totalCol += column.colspan || 1; } - for (i = 0; i < columns.length; i++) { - flag[i] = []; - for (j = 0; j < totalCol; j++) { - flag[i][j] = false; - } + for (var i = 0; i < columns.length; i++) { + flag[i] = []; + for (var j = 0; j < totalCol; j++) { + flag[i][j] = false; + } } - for (i = 0; i < columns.length; i++) { - for (j = 0; j < columns[i].length; j++) { - var r = columns[i][j], - rowspan = r.rowspan || 1, - colspan = r.colspan || 1, - index = $.inArray(false, flag[i]); + for (var _i3 = 0; _i3 < columns.length; _i3++) { + for (var _iterator3 = columns[_i3], _isArray3 = Array.isArray(_iterator3), _i4 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator]();;) { + var _ref3; - if (colspan === 1) { - r.fieldIndex = index; - // when field is undefined, use index instead - if (typeof r.field === 'undefined') { - r.field = index; - } - } - - for (k = 0; k < rowspan; k++) { - flag[i + k][index] = true; - } - for (k = 0; k < colspan; k++) { - flag[i][index + k] = true; - } - } - } - }; - - var getScrollBarWidth = function () { - if (cachedWidth === null) { - var inner = $('

    ').addClass('fixed-table-scroll-inner'), - outer = $('

    ').addClass('fixed-table-scroll-outer'), - w1, w2; - - outer.append(inner); - $('body').append(outer); - - w1 = inner[0].offsetWidth; - outer.css('overflow', 'scroll'); - w2 = inner[0].offsetWidth; - - if (w1 === w2) { - w2 = outer[0].clientWidth; + if (_isArray3) { + if (_i4 >= _iterator3.length) break; + _ref3 = _iterator3[_i4++]; + } else { + _i4 = _iterator3.next(); + if (_i4.done) break; + _ref3 = _i4.value; } - outer.remove(); - cachedWidth = w1 - w2; - } - return cachedWidth; - }; + var r = _ref3; - var calculateObjectValue = function (self, name, args, defaultValue) { + var rowspan = r.rowspan || 1; + var colspan = r.colspan || 1; + var index = flag[_i3].indexOf(false); + + if (colspan === 1) { + r.fieldIndex = index; + // when field is undefined, use index instead + if (typeof r.field === 'undefined') { + r.field = index; + } + } + + for (var k = 0; k < rowspan; k++) { + flag[_i3 + k][index] = true; + } + for (var _k = 0; _k < colspan; _k++) { + flag[_i3][index + _k] = true; + } + } + } + }, + getScrollBarWidth: function getScrollBarWidth() { + if (this.cachedWidth === undefined) { + var $inner = $('
    ').addClass('fixed-table-scroll-inner'); + var $outer = $('
    ').addClass('fixed-table-scroll-outer'); + + $outer.append($inner); + $('body').append($outer); + + var w1 = $inner[0].offsetWidth; + $outer.css('overflow', 'scroll'); + var w2 = $inner[0].offsetWidth; + + if (w1 === w2) { + w2 = $outer[0].clientWidth; + } + + $outer.remove(); + this.cachedWidth = w1 - w2; + } + return this.cachedWidth; + }, + calculateObjectValue: function calculateObjectValue(self, name, args, defaultValue) { var func = name; if (typeof name === 'string') { - // support obj.func1.func2 - var names = name.split('.'); + // support obj.func1.func2 + var names = name.split('.'); - if (names.length > 1) { - func = window; - $.each(names, function (i, f) { - func = func[f]; - }); - } else { - func = window[name]; + if (names.length > 1) { + func = window; + for (var _iterator4 = names, _isArray4 = Array.isArray(_iterator4), _i5 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator]();;) { + var _ref4; + + if (_isArray4) { + if (_i5 >= _iterator4.length) break; + _ref4 = _iterator4[_i5++]; + } else { + _i5 = _iterator4.next(); + if (_i5.done) break; + _ref4 = _i5.value; + } + + var f = _ref4; + + func = func[f]; } + } else { + func = window[name]; + } } - if (typeof func === 'object') { - return func; + + if (func !== null && (typeof func === 'undefined' ? 'undefined' : _typeof(func)) === 'object') { + return func; } + if (typeof func === 'function') { - return func.apply(self, args || []); + return func.apply(self, args || []); } - if (!func && typeof name === 'string' && sprintf.apply(this, [name].concat(args))) { - return sprintf.apply(this, [name].concat(args)); + + if (!func && typeof name === 'string' && this.sprintf.apply(this, [name].concat(_toConsumableArray(args)))) { + return this.sprintf.apply(this, [name].concat(_toConsumableArray(args))); } + return defaultValue; - }; + }, + compareObjects: function compareObjects(objectA, objectB, compareLength) { + var aKeys = Object.keys(objectA); + var bKeys = Object.keys(objectB); - var compareObjects = function (objectA, objectB, compareLength) { - // Create arrays of property names - var getOwnPropertyNames = Object.getOwnPropertyNames || function (obj) { - var arr = []; - for (var k in obj) { - if (obj.hasOwnProperty(k)) { - arr.push(k); - } - } - return arr; - }; - var objectAProperties = getOwnPropertyNames(objectA), - objectBProperties = getOwnPropertyNames(objectB), - propName = ''; - - if (compareLength) { - // If number of properties is different, objects are not equivalent - if (objectAProperties.length !== objectBProperties.length) { - return false; - } + if (compareLength && aKeys.length !== bKeys.length) { + return false; } - for (var i = 0; i < objectAProperties.length; i++) { - propName = objectAProperties[i]; + for (var _iterator5 = aKeys, _isArray5 = Array.isArray(_iterator5), _i6 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) { + var _ref5; - // If the property is not in the object B properties, continue with the next property - if ($.inArray(propName, objectBProperties) > -1) { - // If values of same property are not equal, objects are not equivalent - if (objectA[propName] !== objectB[propName]) { - return false; - } - } + if (_isArray5) { + if (_i6 >= _iterator5.length) break; + _ref5 = _iterator5[_i6++]; + } else { + _i6 = _iterator5.next(); + if (_i6.done) break; + _ref5 = _i6.value; + } + + var key = _ref5; + + if (bKeys.indexOf(key) !== -1 && objectA[key] !== objectB[key]) { + return false; + } } - // If we made it this far, objects are considered equivalent return true; - }; - - var escapeHTML = function (text) { + }, + escapeHTML: function escapeHTML(text) { if (typeof text === 'string') { - return text - .replace(/&/g, '&') - .replace(//g, '>') - .replace(/"/g, '"') - .replace(/'/g, ''') - .replace(/`/g, '`'); + return text.replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"').replace(/'/g, ''').replace(/`/g, '`'); } return text; - }; + }, + getRealDataAttr: function getRealDataAttr(dataAttr) { + for (var _iterator6 = function (target) { + return Object.keys(target).map(function (key) { + return [key, target[key]]; + }); + }(dataAttr), _isArray6 = Array.isArray(_iterator6), _i7 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator]();;) { + var _ref6; - var getRealDataAttr = function (dataAttr) { - for (var attr in dataAttr) { - var auxAttr = attr.split(/(?=[A-Z])/).join('-').toLowerCase(); - if (auxAttr !== attr) { - dataAttr[auxAttr] = dataAttr[attr]; - delete dataAttr[attr]; - } + if (_isArray6) { + if (_i7 >= _iterator6.length) break; + _ref6 = _iterator6[_i7++]; + } else { + _i7 = _iterator6.next(); + if (_i7.done) break; + _ref6 = _i7.value; + } + + var _ref7 = _ref6, + _ref8 = _slicedToArray(_ref7, 2), + attr = _ref8[0], + value = _ref8[1]; + + var auxAttr = attr.split(/(?=[A-Z])/).join('-').toLowerCase(); + if (auxAttr !== attr) { + dataAttr[auxAttr] = value; + delete dataAttr[attr]; + } } - return dataAttr; - }; - - var getItemField = function (item, field, escape) { + }, + getItemField: function getItemField(item, field, escape) { var value = item; if (typeof field !== 'string' || item.hasOwnProperty(field)) { - return escape ? escapeHTML(item[field]) : item[field]; + return escape ? this.escapeHTML(item[field]) : item[field]; } + var props = field.split('.'); - for (var p in props) { - if (props.hasOwnProperty(p)) { - value = value && value[props[p]]; - } + for (var _iterator7 = props, _isArray7 = Array.isArray(_iterator7), _i8 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) { + var _ref9; + + if (_isArray7) { + if (_i8 >= _iterator7.length) break; + _ref9 = _iterator7[_i8++]; + } else { + _i8 = _iterator7.next(); + if (_i8.done) break; + _ref9 = _i8.value; + } + + var p = _ref9; + + value = value && value[p]; } - return escape ? escapeHTML(value) : value; - }; + return escape ? this.escapeHTML(value) : value; + }, + isIEBrowser: function isIEBrowser() { + return navigator.userAgent.indexOf('MSIE ') !== -1 || /Trident.*rv:11\./.test(navigator.userAgent); + }, + findIndex: function findIndex(items, item) { + for (var _iterator8 = items, _isArray8 = Array.isArray(_iterator8), _i9 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator]();;) { + var _ref10; - var isIEBrowser = function () { - return !!(navigator.userAgent.indexOf("MSIE ") > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)); - }; + if (_isArray8) { + if (_i9 >= _iterator8.length) break; + _ref10 = _iterator8[_i9++]; + } else { + _i9 = _iterator8.next(); + if (_i9.done) break; + _ref10 = _i9.value; + } - var objectKeys = function () { - // From https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys - if (!Object.keys) { - Object.keys = (function() { - var hasOwnProperty = Object.prototype.hasOwnProperty, - hasDontEnumBug = !({ toString: null }).propertyIsEnumerable('toString'), - dontEnums = [ - 'toString', - 'toLocaleString', - 'valueOf', - 'hasOwnProperty', - 'isPrototypeOf', - 'propertyIsEnumerable', - 'constructor' - ], - dontEnumsLength = dontEnums.length; + var it = _ref10; - return function(obj) { - if (typeof obj !== 'object' && (typeof obj !== 'function' || obj === null)) { - throw new TypeError('Object.keys called on non-object'); - } - - var result = [], prop, i; - - for (prop in obj) { - if (hasOwnProperty.call(obj, prop)) { - result.push(prop); - } - } - - if (hasDontEnumBug) { - for (i = 0; i < dontEnumsLength; i++) { - if (hasOwnProperty.call(obj, dontEnums[i])) { - result.push(dontEnums[i]); - } - } - } - return result; - }; - }()); + if (JSON.stringify(it) === JSON.stringify(item)) { + return items.indexOf(it); + } } + return -1; + } }; // BOOTSTRAP TABLE CLASS DEFINITION // ====================== - var BootstrapTable = function (el, options) { + var DEFAULTS = { + height: undefined, + classes: 'table table-bordered table-hover', + theadClasses: '', + rowStyle: function rowStyle(row, index) { + return {}; + }, + rowAttributes: function rowAttributes(row, index) { + return {}; + }, + + undefinedText: '-', + locale: undefined, + sortable: true, + sortClass: undefined, + silentSort: true, + sortName: undefined, + sortOrder: 'asc', + sortStable: false, + rememberOrder: false, + customSort: undefined, + columns: [[]], + data: [], + url: undefined, + method: 'get', + cache: true, + contentType: 'application/json', + dataType: 'json', + ajax: undefined, + ajaxOptions: {}, + queryParams: function queryParams(params) { + return params; + }, + + queryParamsType: 'limit', responseHandler: function responseHandler(res) { + return res; + }, + + totalField: 'total', + dataField: 'rows', + pagination: false, + onlyInfoPagination: false, + paginationLoop: true, + sidePagination: 'client', // client or server + totalRows: 0, + pageNumber: 1, + pageSize: 10, + pageList: [10, 25, 50, 100], + paginationHAlign: 'right', // right, left + paginationVAlign: 'bottom', // bottom, top, both + paginationDetailHAlign: 'left', // right, left + paginationPreText: '‹', + paginationNextText: '›', + paginationSuccessivelySize: 5, // Maximum successively number of pages in a row + paginationPagesBySide: 1, // Number of pages on each side (right, left) of the current page. + paginationUseIntermediate: false, // Calculate intermediate pages for quick access + search: false, + searchOnEnterKey: false, + strictSearch: false, + trimOnSearch: true, + searchAlign: 'right', + searchTimeOut: 500, + searchText: '', + customSearch: undefined, + showHeader: true, + showFooter: false, + footerStyle: function footerStyle(row, index) { + return {}; + }, + + showColumns: false, + minimumCountColumns: 1, + showPaginationSwitch: false, + showRefresh: false, + showToggle: false, + showFullscreen: false, + smartDisplay: true, + escape: false, + idField: undefined, + selectItemName: 'btSelectItem', + clickToSelect: false, + ignoreClickToSelectOn: function ignoreClickToSelectOn(_ref11) { + var tagName = _ref11.tagName; + + return ['A', 'BUTTON'].indexOf(tagName) !== -1; + }, + + singleSelect: false, + checkboxHeader: true, + maintainSelected: false, + uniqueId: undefined, + cardView: false, + detailView: false, + detailFormatter: function detailFormatter(index, row) { + return ''; + }, + detailFilter: function detailFilter(index, row) { + return true; + }, + + toolbar: undefined, + toolbarAlign: 'left', + buttonsToolbar: undefined, + buttonsAlign: 'right', + buttonsPrefix: constants.classes.buttonsPrefix, + buttonsClass: constants.classes.buttons, + icons: constants.icons, + iconSize: undefined, + iconsPrefix: constants.iconsPrefix, onAll: function onAll(name, args) { + return false; + }, + onClickCell: function onClickCell(field, value, row, $element) { + return false; + }, + onDblClickCell: function onDblClickCell(field, value, row, $element) { + return false; + }, + onClickRow: function onClickRow(item, $element) { + return false; + }, + onDblClickRow: function onDblClickRow(item, $element) { + return false; + }, + onSort: function onSort(name, order) { + return false; + }, + onCheck: function onCheck(row) { + return false; + }, + onUncheck: function onUncheck(row) { + return false; + }, + onCheckAll: function onCheckAll(rows) { + return false; + }, + onUncheckAll: function onUncheckAll(rows) { + return false; + }, + onCheckSome: function onCheckSome(rows) { + return false; + }, + onUncheckSome: function onUncheckSome(rows) { + return false; + }, + onLoadSuccess: function onLoadSuccess(data) { + return false; + }, + onLoadError: function onLoadError(status) { + return false; + }, + onColumnSwitch: function onColumnSwitch(field, checked) { + return false; + }, + onPageChange: function onPageChange(number, size) { + return false; + }, + onSearch: function onSearch(text) { + return false; + }, + onToggle: function onToggle(cardView) { + return false; + }, + onPreBody: function onPreBody(data) { + return false; + }, + onPostBody: function onPostBody() { + return false; + }, + onPostHeader: function onPostHeader() { + return false; + }, + onExpandRow: function onExpandRow(index, row, $detail) { + return false; + }, + onCollapseRow: function onCollapseRow(index, row) { + return false; + }, + onRefreshOptions: function onRefreshOptions(options) { + return false; + }, + onRefresh: function onRefresh(params) { + return false; + }, + onResetView: function onResetView() { + return false; + }, + onScrollBody: function onScrollBody() { + return false; + } + }; + + var LOCALES = {}; + LOCALES['en-US'] = LOCALES.en = { + formatLoadingMessage: function formatLoadingMessage() { + return 'Loading, please wait'; + }, + formatRecordsPerPage: function formatRecordsPerPage(pageNumber) { + return pageNumber + ' rows per page'; + }, + formatShowingRows: function formatShowingRows(pageFrom, pageTo, totalRows) { + return 'Showing ' + pageFrom + ' to ' + pageTo + ' of ' + totalRows + ' rows'; + }, + formatDetailPagination: function formatDetailPagination(totalRows) { + return 'Showing ' + totalRows + ' rows'; + }, + formatSearch: function formatSearch() { + return 'Search'; + }, + formatNoMatches: function formatNoMatches() { + return 'No matching records found'; + }, + formatPaginationSwitch: function formatPaginationSwitch() { + return 'Hide/Show pagination'; + }, + formatRefresh: function formatRefresh() { + return 'Refresh'; + }, + formatToggle: function formatToggle() { + return 'Toggle'; + }, + formatColumns: function formatColumns() { + return 'Columns'; + }, + formatFullscreen: function formatFullscreen() { + return 'Fullscreen'; + }, + formatAllRows: function formatAllRows() { + return 'All'; + } + }; + + $.extend(DEFAULTS, LOCALES['en-US']); + + var COLUMN_DEFAULTS = { + radio: false, + checkbox: false, + checkboxEnabled: true, + field: undefined, + title: undefined, + titleTooltip: undefined, + 'class': undefined, + align: undefined, // left, right, center + halign: undefined, // left, right, center + falign: undefined, // left, right, center + valign: undefined, // top, middle, bottom + width: undefined, + sortable: false, + order: 'asc', // asc, desc + visible: true, + switchable: true, + clickToSelect: true, + formatter: undefined, + footerFormatter: undefined, + events: undefined, + sorter: undefined, + sortName: undefined, + cellStyle: undefined, + searchable: true, + searchFormatter: true, + cardVisible: true, + escape: false, + showSelectTitle: false + }; + + var EVENTS = { + 'all.bs.table': 'onAll', + 'click-cell.bs.table': 'onClickCell', + 'dbl-click-cell.bs.table': 'onDblClickCell', + 'click-row.bs.table': 'onClickRow', + 'dbl-click-row.bs.table': 'onDblClickRow', + 'sort.bs.table': 'onSort', + 'check.bs.table': 'onCheck', + 'uncheck.bs.table': 'onUncheck', + 'check-all.bs.table': 'onCheckAll', + 'uncheck-all.bs.table': 'onUncheckAll', + 'check-some.bs.table': 'onCheckSome', + 'uncheck-some.bs.table': 'onUncheckSome', + 'load-success.bs.table': 'onLoadSuccess', + 'load-error.bs.table': 'onLoadError', + 'column-switch.bs.table': 'onColumnSwitch', + 'page-change.bs.table': 'onPageChange', + 'search.bs.table': 'onSearch', + 'toggle.bs.table': 'onToggle', + 'pre-body.bs.table': 'onPreBody', + 'post-body.bs.table': 'onPostBody', + 'post-header.bs.table': 'onPostHeader', + 'expand-row.bs.table': 'onExpandRow', + 'collapse-row.bs.table': 'onCollapseRow', + 'refresh-options.bs.table': 'onRefreshOptions', + 'reset-view.bs.table': 'onResetView', + 'refresh.bs.table': 'onRefresh', + 'scroll-body.bs.table': 'onScrollBody' + }; + + var BootstrapTable = function () { + function BootstrapTable(el, options) { + _classCallCheck(this, BootstrapTable); + this.options = options; this.$el = $(el); this.$el_ = this.$el.clone(); @@ -318,487 +804,215 @@ this.timeoutFooter_ = 0; this.init(); - }; + } - BootstrapTable.DEFAULTS = { - classes: 'table table-hover', - sortClass: undefined, - locale: undefined, - height: undefined, - undefinedText: '-', - sortName: undefined, - sortOrder: 'asc', - sortStable: false, - rememberOrder: false, - striped: false, - columns: [[]], - data: [], - totalField: 'total', - dataField: 'rows', - method: 'get', - url: undefined, - ajax: undefined, - cache: true, - contentType: 'application/json', - dataType: 'json', - ajaxOptions: {}, - queryParams: function (params) { - return params; - }, - queryParamsType: 'limit', // undefined - responseHandler: function (res) { - return res; - }, - pagination: false, - onlyInfoPagination: false, - paginationLoop: true, - sidePagination: 'client', // client or server - totalRows: 0, // server side need to set - pageNumber: 1, - pageSize: 10, - pageList: [10, 25, 50, 100], - paginationHAlign: 'right', //right, left - paginationVAlign: 'bottom', //bottom, top, both - paginationDetailHAlign: 'left', //right, left - paginationPreText: '‹', - paginationNextText: '›', - search: false, - searchOnEnterKey: false, - strictSearch: false, - searchAlign: 'right', - selectItemName: 'btSelectItem', - showHeader: true, - showFooter: false, - showColumns: false, - showPaginationSwitch: false, - showRefresh: false, - showToggle: false, - showFullscreen: false, - smartDisplay: true, - escape: false, - minimumCountColumns: 1, - idField: undefined, - uniqueId: undefined, - cardView: false, - detailView: false, - detailFormatter: function (index, row) { - return ''; - }, - detailFilter: function (index, row) { - return true; - }, - trimOnSearch: true, - clickToSelect: false, - singleSelect: false, - toolbar: undefined, - toolbarAlign: 'left', - buttonsToolbar: undefined, - buttonsAlign: 'right', - checkboxHeader: true, - sortable: true, - silentSort: true, - maintainSelected: false, - searchTimeOut: 500, - searchText: '', - iconSize: undefined, - buttonsClass: bs.buttonsClass, - iconsPrefix: bs.iconsPrefix, // glyphicon or fa (font awesome) - icons: bs.icons, - - customSearch: $.noop, - - customSort: $.noop, - - ignoreClickToSelectOn: function (element) { - return $.inArray(element.tagName, ['A', 'BUTTON']); - }, - - rowStyle: function (row, index) { - return {}; - }, - - rowAttributes: function (row, index) { - return {}; - }, - - footerStyle: function (row, index) { - return {}; - }, - - onAll: function (name, args) { - return false; - }, - onClickCell: function (field, value, row, $element) { - return false; - }, - onDblClickCell: function (field, value, row, $element) { - return false; - }, - onClickRow: function (item, $element) { - return false; - }, - onDblClickRow: function (item, $element) { - return false; - }, - onSort: function (name, order) { - return false; - }, - onCheck: function (row) { - return false; - }, - onUncheck: function (row) { - return false; - }, - onCheckAll: function (rows) { - return false; - }, - onUncheckAll: function (rows) { - return false; - }, - onCheckSome: function (rows) { - return false; - }, - onUncheckSome: function (rows) { - return false; - }, - onLoadSuccess: function (data) { - return false; - }, - onLoadError: function (status) { - return false; - }, - onColumnSwitch: function (field, checked) { - return false; - }, - onPageChange: function (number, size) { - return false; - }, - onSearch: function (text) { - return false; - }, - onToggle: function (cardView) { - return false; - }, - onPreBody: function (data) { - return false; - }, - onPostBody: function () { - return false; - }, - onPostHeader: function () { - return false; - }, - onExpandRow: function (index, row, $detail) { - return false; - }, - onCollapseRow: function (index, row) { - return false; - }, - onRefreshOptions: function (options) { - return false; - }, - onRefresh: function (params) { - return false; - }, - onResetView: function () { - return false; - }, - onScrollBody: function () { - return false; + _createClass(BootstrapTable, [{ + key: 'init', + value: function init() { + this.initConstants(); + this.initLocale(); + this.initContainer(); + this.initTable(); + this.initHeader(); + this.initData(); + this.initHiddenRows(); + this.initFooter(); + this.initToolbar(); + this.initPagination(); + this.initBody(); + this.initSearchText(); + this.initServer(); } - }; + }, { + key: 'initConstants', + value: function initConstants() { + var o = this.options; + this.constants = constants; - BootstrapTable.LOCALES = {}; - - BootstrapTable.LOCALES['en-US'] = BootstrapTable.LOCALES.en = { - formatLoadingMessage: function () { - return 'Loading, please wait...'; - }, - formatRecordsPerPage: function (pageNumber) { - return sprintf('%s rows per page', pageNumber); - }, - formatShowingRows: function (pageFrom, pageTo, totalRows) { - return sprintf('Showing %s to %s of %s rows', pageFrom, pageTo, totalRows); - }, - formatDetailPagination: function (totalRows) { - return sprintf('Showing %s rows', totalRows); - }, - formatSearch: function () { - return 'Search'; - }, - formatNoMatches: function () { - return 'No matching records found'; - }, - formatPaginationSwitch: function () { - return 'Hide/Show pagination'; - }, - formatRefresh: function () { - return 'Refresh'; - }, - formatToggle: function () { - return 'Toggle'; - }, - formatFullscreen: function () { - return 'Fullscreen'; - }, - formatColumns: function () { - return 'Columns'; - }, - formatAllRows: function () { - return 'All'; + var buttonsPrefix = o.buttonsPrefix ? o.buttonsPrefix + '-' : ''; + this.constants.buttonsClass = [o.buttonsPrefix, buttonsPrefix + o.buttonsClass, Utils.sprintf(buttonsPrefix + '%s', o.iconSize)].join(' ').trim(); } - }; - - $.extend(BootstrapTable.DEFAULTS, BootstrapTable.LOCALES['en-US']); - - BootstrapTable.COLUMN_DEFAULTS = { - radio: false, - checkbox: false, - checkboxEnabled: true, - field: undefined, - title: undefined, - titleTooltip: undefined, - 'class': undefined, - align: undefined, // left, right, center - halign: undefined, // left, right, center - falign: undefined, // left, right, center - valign: undefined, // top, middle, bottom - width: undefined, - sortable: false, - order: 'asc', // asc, desc - visible: true, - switchable: true, - clickToSelect: true, - formatter: undefined, - footerFormatter: undefined, - events: undefined, - sorter: undefined, - sortName: undefined, - cellStyle: undefined, - searchable: true, - searchFormatter: true, - cardVisible: true, - escape: false, - showSelectTitle: false - }; - - BootstrapTable.EVENTS = { - 'all.bs.table': 'onAll', - 'click-cell.bs.table': 'onClickCell', - 'dbl-click-cell.bs.table': 'onDblClickCell', - 'click-row.bs.table': 'onClickRow', - 'dbl-click-row.bs.table': 'onDblClickRow', - 'sort.bs.table': 'onSort', - 'check.bs.table': 'onCheck', - 'uncheck.bs.table': 'onUncheck', - 'check-all.bs.table': 'onCheckAll', - 'uncheck-all.bs.table': 'onUncheckAll', - 'check-some.bs.table': 'onCheckSome', - 'uncheck-some.bs.table': 'onUncheckSome', - 'load-success.bs.table': 'onLoadSuccess', - 'load-error.bs.table': 'onLoadError', - 'column-switch.bs.table': 'onColumnSwitch', - 'page-change.bs.table': 'onPageChange', - 'search.bs.table': 'onSearch', - 'toggle.bs.table': 'onToggle', - 'pre-body.bs.table': 'onPreBody', - 'post-body.bs.table': 'onPostBody', - 'post-header.bs.table': 'onPostHeader', - 'expand-row.bs.table': 'onExpandRow', - 'collapse-row.bs.table': 'onCollapseRow', - 'refresh-options.bs.table': 'onRefreshOptions', - 'reset-view.bs.table': 'onResetView', - 'refresh.bs.table': 'onRefresh', - 'scroll-body.bs.table': 'onScrollBody' - }; - - BootstrapTable.prototype.init = function () { - this.initLocale(); - this.initContainer(); - this.initTable(); - this.initHeader(); - this.initData(); - this.initHiddenRows(); - this.initFooter(); - this.initToolbar(); - this.initPagination(); - this.initBody(); - this.initSearchText(); - this.initServer(); - }; - - BootstrapTable.prototype.initLocale = function () { - if (this.options.locale) { + }, { + key: 'initLocale', + value: function initLocale() { + if (this.options.locale) { + var locales = $.fn.bootstrapTable.locales; var parts = this.options.locale.split(/-|_/); - parts[0].toLowerCase(); + + parts[0] = parts[0].toLowerCase(); if (parts[1]) { - parts[1].toUpperCase(); + parts[1] = parts[1].toUpperCase(); } - if ($.fn.bootstrapTable.locales[this.options.locale]) { - // locale as requested - $.extend(this.options, $.fn.bootstrapTable.locales[this.options.locale]); - } else if ($.fn.bootstrapTable.locales[parts.join('-')]) { - // locale with sep set to - (in case original was specified with _) - $.extend(this.options, $.fn.bootstrapTable.locales[parts.join('-')]); - } else if ($.fn.bootstrapTable.locales[parts[0]]) { - // short locale language code (i.e. 'en') - $.extend(this.options, $.fn.bootstrapTable.locales[parts[0]]); + + if (locales[this.options.locale]) { + $.extend(this.options, locales[this.options.locale]); + } else if (locales[parts.join('-')]) { + $.extend(this.options, locales[parts.join('-')]); + } else if (locales[parts[0]]) { + $.extend(this.options, locales[parts[0]]); } + } } - }; + }, { + key: 'initContainer', + value: function initContainer() { + var topPagination = ['top', 'both'].indexOf(this.options.paginationVAlign) !== -1 ? '
    ' : ''; + var bottomPagination = ['bottom', 'both'].indexOf(this.options.paginationVAlign) !== -1 ? '
    ' : ''; - BootstrapTable.prototype.initContainer = function () { - this.$container = $([ - '
    ', - '
    ', - this.options.paginationVAlign === 'top' || this.options.paginationVAlign === 'both' ? - '
    ' : - '', - '
    ', - '
    ', - '
    ', - '
    ', - this.options.formatLoadingMessage(), - '
    ', - '
    ', - '', - '
    ', - this.options.paginationVAlign === 'bottom' || this.options.paginationVAlign === 'both' ? - '
    ' : - '', - '
    ' - ].join('')); + this.$container = $('\n
    \n
    \n ' + topPagination + '\n
    \n
    \n
    \n
    \n \n ' + this.options.formatLoadingMessage() + '\n \n \n
    \n
    \n \n
    \n ' + bottomPagination + '\n
    \n '); - this.$container.insertAfter(this.$el); - this.$tableContainer = this.$container.find('.fixed-table-container'); - this.$tableHeader = this.$container.find('.fixed-table-header'); - this.$tableBody = this.$container.find('.fixed-table-body'); - this.$tableLoading = this.$container.find('.fixed-table-loading'); - this.$tableFooter = this.$container.find('.fixed-table-footer'); - // checking if custom table-toolbar exists or not - if (this.options.buttonsToolbar) { + this.$container.insertAfter(this.$el); + this.$tableContainer = this.$container.find('.fixed-table-container'); + this.$tableHeader = this.$container.find('.fixed-table-header'); + this.$tableBody = this.$container.find('.fixed-table-body'); + this.$tableLoading = this.$container.find('.fixed-table-loading'); + this.$tableFooter = this.$container.find('.fixed-table-footer'); + // checking if custom table-toolbar exists or not + if (this.options.buttonsToolbar) { this.$toolbar = $('body').find(this.options.buttonsToolbar); - } else { + } else { this.$toolbar = this.$container.find('.fixed-table-toolbar'); - } - this.$pagination = this.$container.find('.fixed-table-pagination'); + } + this.$pagination = this.$container.find('.fixed-table-pagination'); - this.$tableBody.append(this.$el); - this.$container.after('
    '); + this.$tableBody.append(this.$el); + this.$container.after('
    '); - this.$el.addClass(this.options.classes); - if (this.options.striped) { - this.$el.addClass('table-striped'); - } - if ($.inArray('table-no-bordered', this.options.classes.split(' ')) !== -1) { - this.$tableContainer.addClass('table-no-bordered'); - } - }; + this.$el.addClass(this.options.classes); + this.$tableLoading.addClass(this.options.classes); - BootstrapTable.prototype.initTable = function () { - var that = this, - columns = [], - data = []; + if (this.options.height) { + this.$tableContainer.addClass('fixed-height'); - this.$header = this.$el.find('>thead'); - if (!this.$header.length) { - this.$header = $('').appendTo(this.$el); + if (this.options.showFooter) { + this.$tableContainer.addClass('has-footer'); + } + + if (this.options.classes.split(' ').indexOf('table-bordered') !== -1) { + this.$tableBody.append('
    '); + this.$tableBorder = this.$tableBody.find('.fixed-table-border'); + this.$tableLoading.addClass('fixed-table-border'); + } + } } - this.$header.find('tr').each(function () { + }, { + key: 'initTable', + value: function initTable() { + var _this = this; + + var columns = []; + var data = []; + + this.$header = this.$el.find('>thead'); + if (!this.$header.length) { + this.$header = $('').appendTo(this.$el); + } else if (this.options.theadClasses) { + this.$header.addClass(this.options.theadClasses); + } + this.$header.find('tr').each(function (i, el) { var column = []; - $(this).find('th').each(function () { - // Fix #2014 - getFieldIndex and elsewhere assume this is string, causes issues if not - if (typeof $(this).data('field') !== 'undefined') { - $(this).data('field', $(this).data('field') + ''); - } - column.push($.extend({}, { - title: $(this).html(), - 'class': $(this).attr('class'), - titleTooltip: $(this).attr('title'), - rowspan: $(this).attr('rowspan') ? +$(this).attr('rowspan') : undefined, - colspan: $(this).attr('colspan') ? +$(this).attr('colspan') : undefined - }, $(this).data())); + $(el).find('th').each(function (i, el) { + // #2014: getFieldIndex and elsewhere assume this is string, causes issues if not + if (typeof $(el).data('field') !== 'undefined') { + $(el).data('field', '' + $(el).data('field')); + } + column.push($.extend({}, { + title: $(el).html(), + 'class': $(el).attr('class'), + titleTooltip: $(el).attr('title'), + rowspan: $(el).attr('rowspan') ? +$(el).attr('rowspan') : undefined, + colspan: $(el).attr('colspan') ? +$(el).attr('colspan') : undefined + }, $(el).data())); }); columns.push(column); - }); - if (!$.isArray(this.options.columns[0])) { + }); + + if (!Array.isArray(this.options.columns[0])) { this.options.columns = [this.options.columns]; - } - this.options.columns = $.extend(true, [], columns, this.options.columns); - this.columns = []; - this.fieldsColumnsIndex = []; + } - setFieldIndex(this.options.columns); - $.each(this.options.columns, function (i, columns) { - $.each(columns, function (j, column) { - column = $.extend({}, BootstrapTable.COLUMN_DEFAULTS, column); + this.options.columns = $.extend(true, [], columns, this.options.columns); + this.columns = []; + this.fieldsColumnsIndex = []; - if (typeof column.fieldIndex !== 'undefined') { - that.columns[column.fieldIndex] = column; - that.fieldsColumnsIndex[column.field] = column.fieldIndex; - } + Utils.setFieldIndex(this.options.columns); - that.options.columns[i][j] = column; + this.options.columns.forEach(function (columns, i) { + columns.forEach(function (_column, j) { + var column = $.extend({}, BootstrapTable.COLUMN_DEFAULTS, _column); + + if (typeof column.fieldIndex !== 'undefined') { + _this.columns[column.fieldIndex] = column; + _this.fieldsColumnsIndex[column.field] = column.fieldIndex; + } + + _this.options.columns[i][j] = column; }); - }); + }); - // if options.data is setting, do not process tbody data - if (this.options.data.length) { + // if options.data is setting, do not process tbody data + if (this.options.data.length) { return; - } + } - var m = []; - this.$el.find('>tbody>tr').each(function (y) { + var m = []; + this.$el.find('>tbody>tr').each(function (y, el) { var row = {}; // save tr's id, class and data-* attributes - row._id = $(this).attr('id'); - row._class = $(this).attr('class'); - row._data = getRealDataAttr($(this).data()); + row._id = $(el).attr('id'); + row._class = $(el).attr('class'); + row._data = Utils.getRealDataAttr($(el).data()); - $(this).find('>td').each(function (x) { - var $this = $(this), - cspan = +$this.attr('colspan') || 1, - rspan = +$this.attr('rowspan') || 1, - tx, - ty; + $(el).find('>td').each(function (_x, el) { + var cspan = +$(el).attr('colspan') || 1; + var rspan = +$(el).attr('rowspan') || 1; + var x = _x; - // skip already occupied cells in current row - for (; m[y] && m[y][x]; x++); + // skip already occupied cells in current row + for (; m[y] && m[y][x]; x++) {} + // ignore - for (tx = x; tx < x + cspan; tx++) { //mark matrix elements occupied by current cell with true - for (ty = y; ty < y + rspan; ty++) { - if (!m[ty]) { //fill missing rows - m[ty] = []; - } - m[ty][tx] = true; - } + + // mark matrix elements occupied by current cell with true + for (var tx = x; tx < x + cspan; tx++) { + for (var ty = y; ty < y + rspan; ty++) { + if (!m[ty]) { + // fill missing rows + m[ty] = []; + } + m[ty][tx] = true; } + } - var field = that.columns[x].field; + var field = _this.columns[x].field; - row[field] = $(this).html(); - // save td's id, class and data-* attributes - row['_' + field + '_id'] = $(this).attr('id'); - row['_' + field + '_class'] = $(this).attr('class'); - row['_' + field + '_rowspan'] = $(this).attr('rowspan'); - row['_' + field + '_colspan'] = $(this).attr('colspan'); - row['_' + field + '_title'] = $(this).attr('title'); - row['_' + field + '_data'] = getRealDataAttr($(this).data()); + row[field] = $(el).html().trim(); + // save td's id, class and data-* attributes + row['_' + field + '_id'] = $(el).attr('id'); + row['_' + field + '_class'] = $(el).attr('class'); + row['_' + field + '_rowspan'] = $(el).attr('rowspan'); + row['_' + field + '_colspan'] = $(el).attr('colspan'); + row['_' + field + '_title'] = $(el).attr('title'); + row['_' + field + '_data'] = Utils.getRealDataAttr($(el).data()); }); data.push(row); - }); - this.options.data = data; - if (data.length) this.fromHtml = true; - }; + }); + this.options.data = data; + if (data.length) { + this.fromHtml = true; + } + } + }, { + key: 'initHeader', + value: function initHeader() { + var _this2 = this; - BootstrapTable.prototype.initHeader = function () { - var that = this, - visibleColumns = {}, - html = []; + var visibleColumns = {}; + var html = []; - this.header = { + this.header = { fields: [], styles: [], classes: [], @@ -808,2467 +1022,2735 @@ sortNames: [], cellStyles: [], searchables: [] - }; + }; - $.each(this.options.columns, function (i, columns) { + this.options.columns.forEach(function (columns, i) { html.push(''); - if (i === 0 && !that.options.cardView && that.options.detailView) { - html.push(sprintf('
    ', - that.options.columns.length)); + if (i === 0 && !_this2.options.cardView && _this2.options.detailView) { + html.push('\n
    \n \n '); } - $.each(columns, function (j, column) { - var text = '', - halign = '', // header align style - align = '', // body align style - style = '', - class_ = sprintf(' class="%s"', column['class']), - order = that.options.sortOrder || column.order, - unitWidth = 'px', - width = column.width; + columns.forEach(function (column, j) { + var text = ''; - if (column.width !== undefined && (!that.options.cardView)) { - if (typeof column.width === 'string') { - if (column.width.indexOf('%') !== -1) { - unitWidth = '%'; - } - } + var halign = ''; // header align style + + var align = ''; // body align style + + var style = ''; + var class_ = Utils.sprintf(' class="%s"', column['class']); + var unitWidth = 'px'; + var width = column.width; + + if (column.width !== undefined && !_this2.options.cardView) { + if (typeof column.width === 'string') { + if (column.width.indexOf('%') !== -1) { + unitWidth = '%'; + } } - if (column.width && typeof column.width === 'string') { - width = column.width.replace('%', '').replace('px', ''); + } + if (column.width && typeof column.width === 'string') { + width = column.width.replace('%', '').replace('px', ''); + } + + halign = Utils.sprintf('text-align: %s; ', column.halign ? column.halign : column.align); + align = Utils.sprintf('text-align: %s; ', column.align); + style = Utils.sprintf('vertical-align: %s; ', column.valign); + style += Utils.sprintf('width: %s; ', (column.checkbox || column.radio) && !width ? !column.showSelectTitle ? '36px' : undefined : width ? width + unitWidth : undefined); + + if (typeof column.fieldIndex !== 'undefined') { + _this2.header.fields[column.fieldIndex] = column.field; + _this2.header.styles[column.fieldIndex] = align + style; + _this2.header.classes[column.fieldIndex] = class_; + _this2.header.formatters[column.fieldIndex] = column.formatter; + _this2.header.events[column.fieldIndex] = column.events; + _this2.header.sorters[column.fieldIndex] = column.sorter; + _this2.header.sortNames[column.fieldIndex] = column.sortName; + _this2.header.cellStyles[column.fieldIndex] = column.cellStyle; + _this2.header.searchables[column.fieldIndex] = column.searchable; + + if (!column.visible) { + return; } - halign = sprintf('text-align: %s; ', column.halign ? column.halign : column.align); - align = sprintf('text-align: %s; ', column.align); - style = sprintf('vertical-align: %s; ', column.valign); - style += sprintf('width: %s; ', (column.checkbox || column.radio) && !width ? - (!column.showSelectTitle ? '36px' : undefined) : - (width ? width + unitWidth : undefined)); - - if (typeof column.fieldIndex !== 'undefined') { - that.header.fields[column.fieldIndex] = column.field; - that.header.styles[column.fieldIndex] = align + style; - that.header.classes[column.fieldIndex] = class_; - that.header.formatters[column.fieldIndex] = column.formatter; - that.header.events[column.fieldIndex] = column.events; - that.header.sorters[column.fieldIndex] = column.sorter; - that.header.sortNames[column.fieldIndex] = column.sortName; - that.header.cellStyles[column.fieldIndex] = column.cellStyle; - that.header.searchables[column.fieldIndex] = column.searchable; - - if (!column.visible) { - return; - } - - if (that.options.cardView && (!column.cardVisible)) { - return; - } - - visibleColumns[column.field] = column; + if (_this2.options.cardView && !column.cardVisible) { + return; } - html.push(''); + visibleColumns[column.field] = column; + } - html.push(sprintf('
    ', that.options.sortable && column.sortable ? - 'sortable both' : '')); + html.push(' 0 ? ' data-not-first-th' : '', '>'); - text = that.options.escape ? escapeHTML(column.title) : column.title; + html.push(Utils.sprintf('
    ', _this2.options.sortable && column.sortable ? 'sortable both' : '')); - var title = text; - if (column.checkbox) { - text = ''; - if (!that.options.singleSelect && that.options.checkboxHeader) { - text = ''; - } - that.header.stateField = column.field; - } - if (column.radio) { - text = ''; - that.header.stateField = column.field; - that.options.singleSelect = true; - } - if (!text && column.showSelectTitle) { - text += title; + text = _this2.options.escape ? Utils.escapeHTML(column.title) : column.title; + + var title = text; + if (column.checkbox) { + text = ''; + if (!_this2.options.singleSelect && _this2.options.checkboxHeader) { + text = ''; } + _this2.header.stateField = column.field; + } + if (column.radio) { + text = ''; + _this2.header.stateField = column.field; + _this2.options.singleSelect = true; + } + if (!text && column.showSelectTitle) { + text += title; + } - html.push(text); - html.push('
    '); - html.push('
    '); - html.push('
    '); - html.push(''); + html.push(text); + html.push('
    '); + html.push('
    '); + html.push('
    '); + html.push(''); }); html.push(''); - }); + }); - this.$header.html(html.join('')); - this.$header.find('th[data-field]').each(function (i) { - $(this).data(visibleColumns[$(this).data('field')]); - }); - this.$container.off('click', '.th-inner').on('click', '.th-inner', function (event) { - var $this = $(this); + this.$header.html(html.join('')); + this.$header.find('th[data-field]').each(function (i, el) { + $(el).data(visibleColumns[$(el).data('field')]); + }); + this.$container.off('click', '.th-inner').on('click', '.th-inner', function (e) { + var $this = $(e.currentTarget); - if (that.options.detailView && !$this.parent().hasClass('bs-checkbox')) { - if ($this.closest('.bootstrap-table')[0] !== that.$container[0]) { - return false; - } + if (_this2.options.detailView && !$this.parent().hasClass('bs-checkbox')) { + if ($this.closest('.bootstrap-table')[0] !== _this2.$container[0]) { + return false; + } } - if (that.options.sortable && $this.parent().data().sortable) { - that.onSort(event); + if (_this2.options.sortable && $this.parent().data().sortable) { + _this2.onSort(e); } - }); + }); - this.$header.children().children().off('keypress').on('keypress', function (event) { - if (that.options.sortable && $(this).data().sortable) { - var code = event.keyCode || event.which; - if (code == 13) { //Enter keycode - that.onSort(event); - } + this.$header.children().children().off('keypress').on('keypress', function (e) { + if (_this2.options.sortable && $(e.currentTarget).data().sortable) { + var code = e.keyCode || e.which; + if (code === 13) { + // Enter keycode + _this2.onSort(e); + } } - }); + }); - $(window).off('resize.bootstrap-table'); - if (!this.options.showHeader || this.options.cardView) { + $(window).off('resize.bootstrap-table'); + if (!this.options.showHeader || this.options.cardView) { this.$header.hide(); this.$tableHeader.hide(); this.$tableLoading.css('top', 0); - } else { + } else { this.$header.show(); this.$tableHeader.show(); this.$tableLoading.css('top', this.$header.outerHeight() + 1); // Assign the correct sortable arrow this.getCaret(); - $(window).on('resize.bootstrap-table', $.proxy(this.resetWidth, this)); - } - - this.$selectAll = this.$header.find('[name="btSelectAll"]'); - this.$selectAll.off('click').on('click', function () { - var checked = $(this).prop('checked'); - that[checked ? 'checkAll' : 'uncheckAll'](); - that.updateSelected(); + $(window).on('resize.bootstrap-table', function (e) { + return _this2.resetWidth(e); }); - }; + } - BootstrapTable.prototype.initFooter = function () { - if (!this.options.showFooter || this.options.cardView) { + this.$selectAll = this.$header.find('[name="btSelectAll"]'); + this.$selectAll.off('click').on('click', function (_ref12) { + var currentTarget = _ref12.currentTarget; + + var checked = $(currentTarget).prop('checked'); + _this2[checked ? 'checkAll' : 'uncheckAll'](); + _this2.updateSelected(); + }); + } + }, { + key: 'initFooter', + value: function initFooter() { + if (!this.options.showFooter || this.options.cardView) { this.$tableFooter.hide(); - } else { + } else { this.$tableFooter.show(); + } } - }; - - /** - * @param data - * @param type: append / prepend - */ - BootstrapTable.prototype.initData = function (data, type) { - if (type === 'append') { + }, { + key: 'initData', + value: function initData(data, type) { + if (type === 'append') { this.options.data = this.options.data.concat(data); - } else if (type === 'prepend') { + } else if (type === 'prepend') { this.options.data = [].concat(data).concat(this.options.data); - } else { + } else { this.options.data = data || this.options.data; - } + } - this.data = this.options.data; + this.data = this.options.data; - if (this.options.sidePagination === 'server') { + if (this.options.sidePagination === 'server') { return; + } + this.initSort(); } - this.initSort(); - }; + }, { + key: 'initSort', + value: function initSort() { + var _this3 = this; - BootstrapTable.prototype.initSort = function () { - var that = this, - name = this.options.sortName, - order = this.options.sortOrder === 'desc' ? -1 : 1, - index = $.inArray(this.options.sortName, this.header.fields), - timeoutId = 0; + var name = this.options.sortName; + var order = this.options.sortOrder === 'desc' ? -1 : 1; + var index = this.header.fields.indexOf(this.options.sortName); + var timeoutId = 0; - if (this.options.customSort !== $.noop) { - this.options.customSort.apply(this, [this.options.sortName, this.options.sortOrder]); - return; - } - - if (index !== -1) { + if (index !== -1) { if (this.options.sortStable) { - $.each(this.data, function (i, row) { - row._position = i; - }); + this.data.forEach(function (row, i) { + if (!row.hasOwnProperty('_position')) { + row._position = i; + } + }); } - this.data.sort(function (a, b) { - if (that.header.sortNames[index]) { - name = that.header.sortNames[index]; + if (this.options.customSort) { + Utils.calculateObjectValue(this.options, this.options.customSort, [this.options.sortName, this.options.sortOrder, this.data]); + } else { + this.data.sort(function (a, b) { + if (_this3.header.sortNames[index]) { + name = _this3.header.sortNames[index]; } - var aa = getItemField(a, name, that.options.escape), - bb = getItemField(b, name, that.options.escape), - value = calculateObjectValue(that.header, that.header.sorters[index], [aa, bb, a, b]); + var aa = Utils.getItemField(a, name, _this3.options.escape); + var bb = Utils.getItemField(b, name, _this3.options.escape); + var value = Utils.calculateObjectValue(_this3.header, _this3.header.sorters[index], [aa, bb, a, b]); if (value !== undefined) { - if (that.options.sortStable && value === 0) { - return a._position - b._position; - } - return order * value; + if (_this3.options.sortStable && value === 0) { + return order * (a._position - b._position); + } + return order * value; } // Fix #161: undefined or null string sort bug. if (aa === undefined || aa === null) { - aa = ''; + aa = ''; } if (bb === undefined || bb === null) { - bb = ''; + bb = ''; } - if (that.options.sortStable && aa === bb) { - aa = a._position; - bb = b._position; - return a._position - b._position; + if (_this3.options.sortStable && aa === bb) { + aa = a._position; + bb = b._position; } // IF both values are numeric, do a numeric comparison - if ($.isNumeric(aa) && $.isNumeric(bb)) { - // Convert numerical values form string to float. - aa = parseFloat(aa); - bb = parseFloat(bb); - if (aa < bb) { - return order * -1; - } + if (Utils.isNumeric(aa) && Utils.isNumeric(bb)) { + // Convert numerical values form string to float. + aa = parseFloat(aa); + bb = parseFloat(bb); + if (aa < bb) { + return order * -1; + } + if (aa > bb) { return order; + } + return 0; } if (aa === bb) { - return 0; + return 0; } // If value is not a string, convert to string if (typeof aa !== 'string') { - aa = aa.toString(); + aa = aa.toString(); } if (aa.localeCompare(bb) === -1) { - return order * -1; + return order * -1; } return order; - }); + }); + } if (this.options.sortClass !== undefined) { - clearTimeout(timeoutId); - timeoutId = setTimeout(function () { - that.$el.removeClass(that.options.sortClass); - var index = that.$header.find(sprintf('[data-field="%s"]', - that.options.sortName).index() + 1); - that.$el.find(sprintf('tr td:nth-child(%s)', index)) - .addClass(that.options.sortClass); - }, 250); + clearTimeout(timeoutId); + timeoutId = setTimeout(function () { + _this3.$el.removeClass(_this3.options.sortClass); + var index = _this3.$header.find('[data-field="' + _this3.options.sortName + '"]').index(); + _this3.$el.find('tr td:nth-child(' + (index + 1) + ')').addClass(_this3.options.sortClass); + }, 250); } + } } - }; + }, { + key: 'onSort', + value: function onSort(_ref13) { + var type = _ref13.type, + currentTarget = _ref13.currentTarget; - BootstrapTable.prototype.onSort = function (event) { - var $this = event.type === "keypress" ? $(event.currentTarget) : $(event.currentTarget).parent(), - $this_ = this.$header.find('th').eq($this.index()); + var $this = type === 'keypress' ? $(currentTarget) : $(currentTarget).parent(); + var $this_ = this.$header.find('th').eq($this.index()); - this.$header.add(this.$header_).find('span.order').remove(); + this.$header.add(this.$header_).find('span.order').remove(); - if (this.options.sortName === $this.data('field')) { + if (this.options.sortName === $this.data('field')) { this.options.sortOrder = this.options.sortOrder === 'asc' ? 'desc' : 'asc'; - } else { + } else { this.options.sortName = $this.data('field'); if (this.options.rememberOrder) { - this.options.sortOrder = $this.data('order') === 'asc' ? 'desc' : 'asc'; + this.options.sortOrder = $this.data('order') === 'asc' ? 'desc' : 'asc'; } else { - this.options.sortOrder = this.columns[this.fieldsColumnsIndex[$this.data('field')]].order; + this.options.sortOrder = this.columns[this.fieldsColumnsIndex[$this.data('field')]].order; } - } - this.trigger('sort', this.options.sortName, this.options.sortOrder); + } + this.trigger('sort', this.options.sortName, this.options.sortOrder); - $this.add($this_).data('order', this.options.sortOrder); + $this.add($this_).data('order', this.options.sortOrder); - // Assign the correct sortable arrow - this.getCaret(); + // Assign the correct sortable arrow + this.getCaret(); - if (this.options.sidePagination === 'server') { + if (this.options.sidePagination === 'server') { this.initServer(this.options.silentSort); return; + } + + this.initSort(); + this.initBody(); } + }, { + key: 'initToolbar', + value: function initToolbar() { + var _this4 = this; - this.initSort(); - this.initBody(); - }; + var o = this.options; + var html = []; + var timeoutId = 0; + var $keepOpen = void 0; + var $search = void 0; + var switchableCount = 0; - BootstrapTable.prototype.initToolbar = function () { - var that = this, - html = [], - timeoutId = 0, - $keepOpen, - $search, - switchableCount = 0; + if (this.$toolbar.find('.bs-bars').children().length) { + $('body').append($(o.toolbar)); + } + this.$toolbar.html(''); - if (this.$toolbar.find('.bs-bars').children().length) { - $('body').append($(this.options.toolbar)); - } - this.$toolbar.html(''); + if (typeof o.toolbar === 'string' || _typeof(o.toolbar) === 'object') { + $(Utils.sprintf('
    ', this.constants.classes.pull, o.toolbarAlign)).appendTo(this.$toolbar).append($(o.toolbar)); + } - if (typeof this.options.toolbar === 'string' || typeof this.options.toolbar === 'object') { - $(sprintf('
    ', bs.pullClass, this.options.toolbarAlign)) - .appendTo(this.$toolbar) - .append($(this.options.toolbar)); - } + // showColumns, showToggle, showRefresh + html = ['
    ']; - // showColumns, showToggle, showRefresh - html = [sprintf('
    ', - this.options.buttonsAlign, bs.pullClass, this.options.buttonsAlign)]; + if (typeof o.icons === 'string') { + o.icons = Utils.calculateObjectValue(null, o.icons); + } - if (typeof this.options.icons === 'string') { - this.options.icons = calculateObjectValue(null, this.options.icons); - } + if (o.showPaginationSwitch) { + html.push(''); + } - if (this.options.showPaginationSwitch) { - html.push(sprintf(''); - } + if (o.showRefresh) { + html.push(''); + } - if (this.options.showFullscreen) { - this.$toolbar.find('button[name="fullscreen"]') - .off('click').on('click', $.proxy(this.toggleFullscreen, this)); - } + if (o.showToggle) { + html.push(''); + } - if (this.options.showRefresh) { - html.push(sprintf(''); - } + if (o.showFullscreen) { + html.push(''); + } - if (this.options.showToggle) { - html.push(sprintf(''); - } + if (o.showColumns) { + html.push('
    \n \n ' + this.constants.html.toobarDropdow[0]); - if (this.options.showFullscreen) { - html.push(sprintf(''); - } + this.columns.forEach(function (column, i) { + if (column.radio || column.checkbox) { + return; + } - if (this.options.showColumns) { - html.push(sprintf('
    ', - this.options.formatColumns()), - '', - bs.toobarDropdowHtml[0]); + if (o.cardView && !column.cardVisible) { + return; + } - $.each(this.columns, function (i, column) { - if (column.radio || column.checkbox) { - return; - } + var checked = column.visible ? ' checked="checked"' : ''; - if (that.options.cardView && !column.cardVisible) { - return; - } - - var checked = column.visible ? ' checked="checked"' : ''; - - if (column.switchable) { - html.push(sprintf(bs.toobarDropdowItemHtml, - sprintf(' %s', - column.field, i, checked, column.title))); - switchableCount++; - } + if (column.switchable) { + html.push(Utils.sprintf(_this4.constants.html.toobarDropdowItem, Utils.sprintf(' %s', column.field, i, checked, column.title))); + switchableCount++; + } }); - html.push(bs.toobarDropdowHtml[1], '
    '); - } + html.push(this.constants.html.toobarDropdow[1], '
    '); + } - html.push('
    '); + html.push('
    '); - // Fix #188: this.showToolbar is for extensions - if (this.showToolbar || html.length > 2) { + // Fix #188: this.showToolbar is for extensions + if (this.showToolbar || html.length > 2) { this.$toolbar.append(html.join('')); - } + } - if (this.options.showPaginationSwitch) { - this.$toolbar.find('button[name="paginationSwitch"]') - .off('click').on('click', $.proxy(this.togglePagination, this)); - } + if (o.showPaginationSwitch) { + this.$toolbar.find('button[name="paginationSwitch"]').off('click').on('click', function () { + return _this4.togglePagination(); + }); + } - if (this.options.showRefresh) { - this.$toolbar.find('button[name="refresh"]') - .off('click').on('click', $.proxy(this.refresh, this)); - } + if (o.showFullscreen) { + this.$toolbar.find('button[name="fullscreen"]').off('click').on('click', function () { + return _this4.toggleFullscreen(); + }); + } - if (this.options.showToggle) { - this.$toolbar.find('button[name="toggle"]') - .off('click').on('click', function () { - that.toggleView(); - }); - } + if (o.showRefresh) { + this.$toolbar.find('button[name="refresh"]').off('click').on('click', function () { + return _this4.refresh(); + }); + } - if (this.options.showColumns) { + if (o.showToggle) { + this.$toolbar.find('button[name="toggle"]').off('click').on('click', function () { + _this4.toggleView(); + }); + } + + if (o.showColumns) { $keepOpen = this.$toolbar.find('.keep-open'); - if (switchableCount <= this.options.minimumCountColumns) { - $keepOpen.find('input').prop('disabled', true); + if (switchableCount <= o.minimumCountColumns) { + $keepOpen.find('input').prop('disabled', true); } - $keepOpen.find('li').off('click').on('click', function (event) { - event.stopImmediatePropagation(); + $keepOpen.find('li, label').off('click').on('click', function (e) { + e.stopImmediatePropagation(); }); - $keepOpen.find('input').off('click').on('click', function () { - var $this = $(this); + $keepOpen.find('input').off('click').on('click', function (_ref14) { + var currentTarget = _ref14.currentTarget; - that.toggleColumn($(this).val(), $this.prop('checked'), false); - that.trigger('column-switch', $(this).data('field'), $this.prop('checked')); + var $this = $(currentTarget); + + _this4.toggleColumn($this.val(), $this.prop('checked'), false); + _this4.trigger('column-switch', $this.data('field'), $this.prop('checked')); }); - } + } - if (this.options.search) { + if (o.search) { html = []; - html.push( - sprintf(''); + html.push(''); this.$toolbar.append(html.join('')); $search = this.$toolbar.find('.search input'); $search.off('keyup drop blur').on('keyup drop blur', function (event) { - if (that.options.searchOnEnterKey && event.keyCode !== 13) { - return; - } + if (o.searchOnEnterKey && event.keyCode !== 13) { + return; + } - if ($.inArray(event.keyCode, [37, 38, 39, 40]) > -1) { - return; - } + if ([37, 38, 39, 40].indexOf(event.keyCode) !== -1) { + return; + } + clearTimeout(timeoutId); // doesn't matter if it's 0 + timeoutId = setTimeout(function () { + _this4.onSearch(event); + }, o.searchTimeOut); + }); + + if (Utils.isIEBrowser()) { + $search.off('mouseup').on('mouseup', function (event) { clearTimeout(timeoutId); // doesn't matter if it's 0 timeoutId = setTimeout(function () { - that.onSearch(event); - }, that.options.searchTimeOut); - }); - - if (isIEBrowser()) { - $search.off('mouseup').on('mouseup', function (event) { - clearTimeout(timeoutId); // doesn't matter if it's 0 - timeoutId = setTimeout(function () { - that.onSearch(event); - }, that.options.searchTimeOut); - }); + _this4.onSearch(event); + }, o.searchTimeOut); + }); } + } } - }; + }, { + key: 'onSearch', + value: function onSearch(_ref15) { + var currentTarget = _ref15.currentTarget, + firedByInitSearchText = _ref15.firedByInitSearchText; - BootstrapTable.prototype.onSearch = function (event) { - var text = $.trim($(event.currentTarget).val()); + var text = $(currentTarget).val().trim(); - // trim search input - if (this.options.trimOnSearch && $(event.currentTarget).val() !== text) { - $(event.currentTarget).val(text); - } + // trim search input + if (this.options.trimOnSearch && $(currentTarget).val() !== text) { + $(currentTarget).val(text); + } - if (text === this.searchText) { + if (text === this.searchText) { return; - } - this.searchText = text; - this.options.searchText = text; + } + this.searchText = text; + this.options.searchText = text; - this.options.pageNumber = 1; - this.initSearch(); - if (event.firedByInitSearchText) { + if (!firedByInitSearchText) { + this.options.pageNumber = 1; + } + this.initSearch(); + if (firedByInitSearchText) { if (this.options.sidePagination === 'client') { - this.updatePagination(); + this.updatePagination(); } - } else { + } else { this.updatePagination(); + } + this.trigger('search', text); } - this.trigger('search', text); - }; + }, { + key: 'initSearch', + value: function initSearch() { + var _this5 = this; - BootstrapTable.prototype.initSearch = function () { - var that = this; - - if (this.options.sidePagination !== 'server') { - if (this.options.customSearch !== $.noop) { - window[this.options.customSearch].apply(this, [this.searchText]); - return; + if (this.options.sidePagination !== 'server') { + if (this.options.customSearch) { + this.data = Utils.calculateObjectValue(this.options, this.options.customSearch, [this.options.data, this.searchText]); + return; } - var s = this.searchText && (this.options.escape ? - escapeHTML(this.searchText) : this.searchText).toLowerCase(); - var f = $.isEmptyObject(this.filterColumns) ? null : this.filterColumns; + var s = this.searchText && (this.options.escape ? Utils.escapeHTML(this.searchText) : this.searchText).toLowerCase(); + var f = Utils.isEmptyObject(this.filterColumns) ? null : this.filterColumns; // Check filter - this.data = f ? $.grep(this.options.data, function (item, i) { - for (var key in f) { - if ($.isArray(f[key]) && $.inArray(item[key], f[key]) === -1 || - !$.isArray(f[key]) && item[key] !== f[key]) { - return false; - } + this.data = f ? this.options.data.filter(function (item, i) { + for (var key in f) { + if (Array.isArray(f[key]) && !(f[key].indexOf(item[key]) !== -1) || !Array.isArray(f[key]) && item[key] !== f[key]) { + return false; } - return true; + } + return true; }) : this.options.data; - this.data = s ? $.grep(this.data, function (item, i) { - for (var j = 0; j < that.header.fields.length; j++) { - - if (!that.header.searchables[j]) { - continue; - } - - var key = $.isNumeric(that.header.fields[j]) ? parseInt(that.header.fields[j], 10) : that.header.fields[j]; - var column = that.columns[that.fieldsColumnsIndex[key]]; - var value; - - if (typeof key === 'string') { - value = item; - var props = key.split('.'); - for (var prop_index = 0; prop_index < props.length; prop_index++) { - if (value[props[prop_index]] != null) { - value = value[props[prop_index]]; - } - } - - // Fix #142: respect searchForamtter boolean - if (column && column.searchFormatter) { - value = calculateObjectValue(column, - that.header.formatters[j], [value, item, i], value); - } - } else { - value = item[key]; - } - - if (typeof value === 'string' || typeof value === 'number') { - if (that.options.strictSearch) { - if ((value + '').toLowerCase() === s) { - return true; - } - } else { - if ((value + '').toLowerCase().indexOf(s) !== -1) { - return true; - } - } - } + this.data = s ? this.data.filter(function (item, i) { + for (var j = 0; j < _this5.header.fields.length; j++) { + if (!_this5.header.searchables[j]) { + continue; } - return false; - }) : this.data; - } - }; - BootstrapTable.prototype.initPagination = function () { - if (!this.options.pagination) { + var key = Utils.isNumeric(_this5.header.fields[j]) ? parseInt(_this5.header.fields[j], 10) : _this5.header.fields[j]; + var column = _this5.columns[_this5.fieldsColumnsIndex[key]]; + var value = void 0; + + if (typeof key === 'string') { + value = item; + var props = key.split('.'); + for (var _i10 = 0; _i10 < props.length; _i10++) { + if (value[props[_i10]] !== null) { + value = value[props[_i10]]; + } + } + } else { + value = item[key]; + } + + // Fix #142: respect searchForamtter boolean + if (column && column.searchFormatter) { + value = Utils.calculateObjectValue(column, _this5.header.formatters[j], [value, item, i], value); + } + + if (typeof value === 'string' || typeof value === 'number') { + if (_this5.options.strictSearch) { + if (('' + value).toLowerCase() === s) { + return true; + } + } else { + if (('' + value).toLowerCase().indexOf(s) !== -1) { + return true; + } + } + } + } + return false; + }) : this.data; + } + } + }, { + key: 'initPagination', + value: function initPagination() { + var _this6 = this; + + var o = this.options; + if (!o.pagination) { this.$pagination.hide(); return; - } else { - this.$pagination.show(); - } + } + this.$pagination.show(); - var that = this, - html = [], - $allSelected = false, - i, from, to, - $pageList, - $pre, - $next, - $number, - data = this.getData(), - pageList = this.options.pageList; + var html = []; + var $allSelected = false; + var i = void 0; + var from = void 0; + var to = void 0; + var $pageList = void 0; + var $pre = void 0; + var $next = void 0; + var $number = void 0; + var data = this.getData(); + var pageList = o.pageList; - if (this.options.sidePagination !== 'server') { - this.options.totalRows = data.length; - } + if (o.sidePagination !== 'server') { + o.totalRows = data.length; + } - this.totalPages = 0; - if (this.options.totalRows) { - if (this.options.pageSize === this.options.formatAllRows()) { - this.options.pageSize = this.options.totalRows; + this.totalPages = 0; + if (o.totalRows) { + if (o.pageSize === o.formatAllRows()) { + o.pageSize = o.totalRows; + $allSelected = true; + } else if (o.pageSize === o.totalRows) { + // Fix #667 Table with pagination, + // multiple pages and a search this matches to one page throws exception + var pageLst = typeof o.pageList === 'string' ? o.pageList.replace('[', '').replace(']', '').replace(/ /g, '').toLowerCase().split(',') : o.pageList; + if (pageLst.indexOf(o.formatAllRows().toLowerCase()) !== -1) { $allSelected = true; - } else if (this.options.pageSize === this.options.totalRows) { - // Fix #667 Table with pagination, - // multiple pages and a search that matches to one page throws exception - var pageLst = typeof this.options.pageList === 'string' ? - this.options.pageList.replace('[', '').replace(']', '') - .replace(/ /g, '').toLowerCase().split(',') : this.options.pageList; - if ($.inArray(this.options.formatAllRows().toLowerCase(), pageLst) > -1) { - $allSelected = true; - } + } } - this.totalPages = ~~((this.options.totalRows - 1) / this.options.pageSize) + 1; + this.totalPages = ~~((o.totalRows - 1) / o.pageSize) + 1; - this.options.totalPages = this.totalPages; - } - if (this.totalPages > 0 && this.options.pageNumber > this.totalPages) { - this.options.pageNumber = this.totalPages; - } + o.totalPages = this.totalPages; + } + if (this.totalPages > 0 && o.pageNumber > this.totalPages) { + o.pageNumber = this.totalPages; + } - this.pageFrom = (this.options.pageNumber - 1) * this.options.pageSize + 1; - this.pageTo = this.options.pageNumber * this.options.pageSize; - if (this.pageTo > this.options.totalRows) { - this.pageTo = this.options.totalRows; - } + this.pageFrom = (o.pageNumber - 1) * o.pageSize + 1; + this.pageTo = o.pageNumber * o.pageSize; + if (this.pageTo > o.totalRows) { + this.pageTo = o.totalRows; + } - html.push( - sprintf('
    ', bs.pullClass, this.options.paginationDetailHAlign), - '', - this.options.onlyInfoPagination ? this.options.formatDetailPagination(this.options.totalRows) : - this.options.formatShowingRows(this.pageFrom, this.pageTo, this.options.totalRows), - ''); + var paginationInfo = o.onlyInfoPagination ? o.formatDetailPagination(o.totalRows) : o.formatShowingRows(this.pageFrom, this.pageTo, o.totalRows); - if (!this.options.onlyInfoPagination) { + html.push('
    \n \n ' + paginationInfo + '\n '); + + if (!o.onlyInfoPagination) { html.push(''); - var pageNumber = [ - sprintf('', - this.options.paginationVAlign === 'top' || this.options.paginationVAlign === 'both' ? - 'dropdown' : 'dropup'), - '', - bs.pageDropdownHtml[0] - ]; + var pageNumber = ['\n \n ' + this.constants.html.pageDropdown[0]]; - if (typeof this.options.pageList === 'string') { - var list = this.options.pageList.replace('[', '').replace(']', '') - .replace(/ /g, '').split(','); + if (typeof o.pageList === 'string') { + var list = o.pageList.replace('[', '').replace(']', '').replace(/ /g, '').split(','); - pageList = []; - $.each(list, function (i, value) { - pageList.push((value.toUpperCase() === that.options.formatAllRows().toUpperCase() || value.toUpperCase() === "UNLIMITED") ? - that.options.formatAllRows() : +value); - }); + pageList = []; + for (var _iterator9 = list, _isArray9 = Array.isArray(_iterator9), _i11 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator]();;) { + var _ref16; + + if (_isArray9) { + if (_i11 >= _iterator9.length) break; + _ref16 = _iterator9[_i11++]; + } else { + _i11 = _iterator9.next(); + if (_i11.done) break; + _ref16 = _i11.value; + } + + var value = _ref16; + + pageList.push(value.toUpperCase() === o.formatAllRows().toUpperCase() || value.toUpperCase() === 'UNLIMITED' ? o.formatAllRows() : +value); + } } - $.each(pageList, function (i, page) { - if (!that.options.smartDisplay || i === 0 || pageList[i - 1] < that.options.totalRows) { - var active; - if ($allSelected) { - active = page === that.options.formatAllRows() ? 'active' : ''; - } else { - active = page === that.options.pageSize ? 'active' : ''; - } - pageNumber.push(sprintf(bs.pageDropdownItemHtml, active, page)); + pageList.forEach(function (page, i) { + if (!o.smartDisplay || i === 0 || pageList[i - 1] < o.totalRows) { + var active = void 0; + if ($allSelected) { + active = page === o.formatAllRows() ? _this6.constants.classes.dropdownActive : ''; + } else { + active = page === o.pageSize ? _this6.constants.classes.dropdownActive : ''; } + pageNumber.push(Utils.sprintf(_this6.constants.html.pageDropdownItem, active, page)); + } }); - pageNumber.push(bs.pageDropdownHtml[1] + ''); + pageNumber.push(this.constants.html.pageDropdown[1] + ''); - html.push(this.options.formatRecordsPerPage(pageNumber.join(''))); - html.push(''); + html.push(o.formatRecordsPerPage(pageNumber.join(''))); + html.push('
    '); - html.push('
    ', - sprintf(''); - } - this.$pagination.html(html.join('')); + var dropupClass = ['bottom', 'both'].indexOf(o.paginationVAlign) !== -1 ? ' ' + this.constants.classes.dropup : ''; + this.$pagination.last().find('.page-list > span').addClass(dropupClass); - if (!this.options.onlyInfoPagination) { + if (!o.onlyInfoPagination) { $pageList = this.$pagination.find('.page-list a'); $pre = this.$pagination.find('.page-pre'); $next = this.$pagination.find('.page-next'); $number = this.$pagination.find('.page-item').not('.page-next, .page-pre'); - if (this.options.smartDisplay) { - if (this.totalPages <= 1) { - this.$pagination.find('div.pagination').hide(); - } - if (pageList.length < 2 || this.options.totalRows <= pageList[0]) { - this.$pagination.find('span.page-list').hide(); - } + if (o.smartDisplay) { + if (this.totalPages <= 1) { + this.$pagination.find('div.pagination').hide(); + } + if (pageList.length < 2 || o.totalRows <= pageList[0]) { + this.$pagination.find('span.page-list').hide(); + } - // when data is empty, hide the pagination - this.$pagination[this.getData().length ? 'show' : 'hide'](); + // when data is empty, hide the pagination + this.$pagination[this.getData().length ? 'show' : 'hide'](); } - if (!this.options.paginationLoop) { - if (this.options.pageNumber === 1) { - $pre.addClass('disabled'); - } - if (this.options.pageNumber === this.totalPages) { - $next.addClass('disabled'); - } + if (!o.paginationLoop) { + if (o.pageNumber === 1) { + $pre.addClass('disabled'); + } + if (o.pageNumber === this.totalPages) { + $next.addClass('disabled'); + } } if ($allSelected) { - this.options.pageSize = this.options.formatAllRows(); + o.pageSize = o.formatAllRows(); } // removed the events for last and first, onPageNumber executeds the same logic - $pageList.off('click').on('click', $.proxy(this.onPageListChange, this)); - $pre.off('click').on('click', $.proxy(this.onPagePre, this)); - $next.off('click').on('click', $.proxy(this.onPageNext, this)); - $number.off('click').on('click', $.proxy(this.onPageNumber, this)); - } - }; - - BootstrapTable.prototype.updatePagination = function (event) { - // Fix #171: IE disabled button can be clicked bug. - if (event && $(event.currentTarget).hasClass('disabled')) { - return; - } - - if (!this.options.maintainSelected) { - this.resetRows(); - } - - this.initPagination(); - if (this.options.sidePagination === 'server') { - this.initServer(); - } else { - this.initBody(); - } - - this.trigger('page-change', this.options.pageNumber, this.options.pageSize); - }; - - BootstrapTable.prototype.onPageListChange = function (event) { - event.preventDefault(); - var $this = $(event.currentTarget); - - $this.parent().addClass('active').siblings().removeClass('active'); - this.options.pageSize = $this.text().toUpperCase() === this.options.formatAllRows().toUpperCase() ? - this.options.formatAllRows() : +$this.text(); - this.$toolbar.find('.page-size').text(this.options.pageSize); - - this.updatePagination(event); - return false; - }; - - BootstrapTable.prototype.onPagePre = function (event) { - event.preventDefault(); - if ((this.options.pageNumber - 1) === 0) { - this.options.pageNumber = this.options.totalPages; - } else { - this.options.pageNumber--; - } - this.updatePagination(event); - return false; - }; - - BootstrapTable.prototype.onPageNext = function (event) { - event.preventDefault(); - if ((this.options.pageNumber + 1) > this.options.totalPages) { - this.options.pageNumber = 1; - } else { - this.options.pageNumber++; - } - this.updatePagination(event); - return false; - }; - - BootstrapTable.prototype.onPageNumber = function (event) { - event.preventDefault(); - if (this.options.pageNumber === +$(event.currentTarget).text()) { - return; - } - this.options.pageNumber = +$(event.currentTarget).text(); - this.updatePagination(event); - return false; - }; - - BootstrapTable.prototype.initRow = function(item, i, data, parentDom) { - var that=this, - key, - html = [], - style = {}, - csses = [], - data_ = '', - attributes = {}, - htmlAttributes = []; - - if ($.inArray(item, this.hiddenRows) > -1) { - return; - } - - style = calculateObjectValue(this.options, this.options.rowStyle, [item, i], style); - - if (style && style.css) { - for (key in style.css) { - csses.push(key + ': ' + style.css[key]); - } - } - - attributes = calculateObjectValue(this.options, - this.options.rowAttributes, [item, i], attributes); - - if (attributes) { - for (key in attributes) { - htmlAttributes.push(sprintf('%s="%s"', key, escapeHTML(attributes[key]))); - } - } - - if (item._data && !$.isEmptyObject(item._data)) { - $.each(item._data, function(k, v) { - // ignore data-index - if (k === 'index') { - return; - } - data_ += sprintf(' data-%s="%s"', k, v); + $pageList.off('click').on('click', function (e) { + return _this6.onPageListChange(e); }); + $pre.off('click').on('click', function (e) { + return _this6.onPagePre(e); + }); + $next.off('click').on('click', function (e) { + return _this6.onPageNext(e); + }); + $number.off('click').on('click', function (e) { + return _this6.onPageNumber(e); + }); + } } + }, { + key: 'updatePagination', + value: function updatePagination(event) { + // Fix #171: IE disabled button can be clicked bug. + if (event && $(event.currentTarget).hasClass('disabled')) { + return; + } - html.push('' - ); + if (!this.options.maintainSelected) { + this.resetRows(); + } - if (this.options.cardView) { - html.push(sprintf('
    ', this.header.fields.length)); + this.initPagination(); + if (this.options.sidePagination === 'server') { + this.initServer(); + } else { + this.initBody(); + } + + this.trigger('page-change', this.options.pageNumber, this.options.pageSize); } + }, { + key: 'onPageListChange', + value: function onPageListChange(event) { + event.preventDefault(); + var $this = $(event.currentTarget); - if (!this.options.cardView && this.options.detailView) { + $this.parent().addClass(this.constants.classes.dropdownActive).siblings().removeClass(this.constants.classes.dropdownActive); + this.options.pageSize = $this.text().toUpperCase() === this.options.formatAllRows().toUpperCase() ? this.options.formatAllRows() : +$this.text(); + this.$toolbar.find('.page-size').text(this.options.pageSize); + + this.updatePagination(event); + return false; + } + }, { + key: 'onPagePre', + value: function onPagePre(event) { + event.preventDefault(); + if (this.options.pageNumber - 1 === 0) { + this.options.pageNumber = this.options.totalPages; + } else { + this.options.pageNumber--; + } + this.updatePagination(event); + return false; + } + }, { + key: 'onPageNext', + value: function onPageNext(event) { + event.preventDefault(); + if (this.options.pageNumber + 1 > this.options.totalPages) { + this.options.pageNumber = 1; + } else { + this.options.pageNumber++; + } + this.updatePagination(event); + return false; + } + }, { + key: 'onPageNumber', + value: function onPageNumber(event) { + event.preventDefault(); + if (this.options.pageNumber === +$(event.currentTarget).text()) { + return; + } + this.options.pageNumber = +$(event.currentTarget).text(); + this.updatePagination(event); + return false; + } + }, { + key: 'initRow', + value: function initRow(item, i, data, parentDom) { + var _this7 = this; + + var html = []; + var style = {}; + var csses = []; + var data_ = ''; + var attributes = {}; + var htmlAttributes = []; + + if (Utils.findIndex(this.hiddenRows, item) > -1) { + return; + } + + style = Utils.calculateObjectValue(this.options, this.options.rowStyle, [item, i], style); + + if (style && style.css) { + for (var _iterator10 = function (target) { + return Object.keys(target).map(function (key) { + return [key, target[key]]; + }); + }(style.css), _isArray10 = Array.isArray(_iterator10), _i12 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator]();;) { + var _ref17; + + if (_isArray10) { + if (_i12 >= _iterator10.length) break; + _ref17 = _iterator10[_i12++]; + } else { + _i12 = _iterator10.next(); + if (_i12.done) break; + _ref17 = _i12.value; + } + + var _ref18 = _ref17, + _ref19 = _slicedToArray(_ref18, 2), + key = _ref19[0], + value = _ref19[1]; + + csses.push(key + ': ' + value); + } + } + + attributes = Utils.calculateObjectValue(this.options, this.options.rowAttributes, [item, i], attributes); + + if (attributes) { + for (var _iterator11 = function (target) { + return Object.keys(target).map(function (key) { + return [key, target[key]]; + }); + }(attributes), _isArray11 = Array.isArray(_iterator11), _i13 = 0, _iterator11 = _isArray11 ? _iterator11 : _iterator11[Symbol.iterator]();;) { + var _ref20; + + if (_isArray11) { + if (_i13 >= _iterator11.length) break; + _ref20 = _iterator11[_i13++]; + } else { + _i13 = _iterator11.next(); + if (_i13.done) break; + _ref20 = _i13.value; + } + + var _ref21 = _ref20, + _ref22 = _slicedToArray(_ref21, 2), + _key2 = _ref22[0], + _value2 = _ref22[1]; + + htmlAttributes.push(_key2 + '="' + Utils.escapeHTML(_value2) + '"'); + } + } + + if (item._data && !Utils.isEmptyObject(item._data)) { + for (var _iterator12 = function (target) { + return Object.keys(target).map(function (key) { + return [key, target[key]]; + }); + }(item._data), _isArray12 = Array.isArray(_iterator12), _i14 = 0, _iterator12 = _isArray12 ? _iterator12 : _iterator12[Symbol.iterator]();;) { + var _ref23; + + if (_isArray12) { + if (_i14 >= _iterator12.length) break; + _ref23 = _iterator12[_i14++]; + } else { + _i14 = _iterator12.next(); + if (_i14.done) break; + _ref23 = _i14.value; + } + + var _ref24 = _ref23, + _ref25 = _slicedToArray(_ref24, 2), + k = _ref25[0], + v = _ref25[1]; + + // ignore data-index + if (k === 'index') { + return; + } + data_ += ' data-' + k + '="' + v + '"'; + } + } + + html.push(''); + + if (this.options.cardView) { + html.push('
    '); + } + + if (!this.options.cardView && this.options.detailView) { html.push(''); - if (calculateObjectValue(null, this.options.detailFilter, [i, item])) { - html.push('', - sprintf('', this.options.iconsPrefix, this.options.icons.detailOpen), - ''); + if (Utils.calculateObjectValue(null, this.options.detailFilter, [i, item])) { + html.push('\n \n ' + Utils.sprintf(this.constants.html.icon, this.options.iconsPrefix, this.options.icons.detailOpen) + '\n \n '); } html.push(''); - } + } - $.each(this.header.fields, function(j, field) { - var text = '', - value_ = getItemField(item, field, that.options.escape), - value = '', - type = '', - cellStyle = {}, - id_ = '', - class_ = that.header.classes[j], - data_ = '', - rowspan_ = '', - colspan_ = '', - title_ = '', - column = that.columns[j]; + this.header.fields.forEach(function (field, j) { + var text = ''; + var value_ = Utils.getItemField(item, field, _this7.options.escape); + var value = ''; + var type = ''; + var cellStyle = {}; + var id_ = ''; + var class_ = _this7.header.classes[j]; + var style_ = ''; + var data_ = ''; + var rowspan_ = ''; + var colspan_ = ''; + var title_ = ''; + var column = _this7.columns[j]; - if (that.fromHtml && typeof value_ === 'undefined') { - if((!column.checkbox) && (!column.radio)) { - return; - } + if (_this7.fromHtml && typeof value_ === 'undefined') { + if (!column.checkbox && !column.radio) { + return; + } } if (!column.visible) { - return; + return; } - if (that.options.cardView && (!column.cardVisible)) { - return; + if (_this7.options.cardView && !column.cardVisible) { + return; } if (column.escape) { - value_ = escapeHTML(value_); + value_ = Utils.escapeHTML(value_); } - style = sprintf('style="%s"', csses.concat(that.header.styles[j]).join('; ')); - + if (csses.concat([_this7.header.styles[j]]).length) { + style_ = ' style="' + csses.concat([_this7.header.styles[j]]).join('; ') + '"'; + } // handle td's id and class if (item['_' + field + '_id']) { - id_ = sprintf(' id="%s"', item['_' + field + '_id']); + id_ = Utils.sprintf(' id="%s"', item['_' + field + '_id']); } if (item['_' + field + '_class']) { - class_ = sprintf(' class="%s"', item['_' + field + '_class']); + class_ = Utils.sprintf(' class="%s"', item['_' + field + '_class']); } if (item['_' + field + '_rowspan']) { - rowspan_ = sprintf(' rowspan="%s"', item['_' + field + '_rowspan']); + rowspan_ = Utils.sprintf(' rowspan="%s"', item['_' + field + '_rowspan']); } if (item['_' + field + '_colspan']) { - colspan_ = sprintf(' colspan="%s"', item['_' + field + '_colspan']); + colspan_ = Utils.sprintf(' colspan="%s"', item['_' + field + '_colspan']); } if (item['_' + field + '_title']) { - title_ = sprintf(' title="%s"', item['_' + field + '_title']); + title_ = Utils.sprintf(' title="%s"', item['_' + field + '_title']); } - cellStyle = calculateObjectValue(that.header, - that.header.cellStyles[j], [value_, item, i, field], cellStyle); + cellStyle = Utils.calculateObjectValue(_this7.header, _this7.header.cellStyles[j], [value_, item, i, field], cellStyle); if (cellStyle.classes) { - class_ = sprintf(' class="%s"', cellStyle.classes); + class_ = ' class="' + cellStyle.classes + '"'; } if (cellStyle.css) { - var csses_ = []; - for (var key in cellStyle.css) { - csses_.push(key + ': ' + cellStyle.css[key]); + var csses_ = []; + for (var _iterator13 = function (target) { + return Object.keys(target).map(function (key) { + return [key, target[key]]; + }); + }(cellStyle.css), _isArray13 = Array.isArray(_iterator13), _i15 = 0, _iterator13 = _isArray13 ? _iterator13 : _iterator13[Symbol.iterator]();;) { + var _ref26; + + if (_isArray13) { + if (_i15 >= _iterator13.length) break; + _ref26 = _iterator13[_i15++]; + } else { + _i15 = _iterator13.next(); + if (_i15.done) break; + _ref26 = _i15.value; } - style = sprintf('style="%s"', csses_.concat(that.header.styles[j]).join('; ')); + + var _ref27 = _ref26, + _ref28 = _slicedToArray(_ref27, 2), + _key3 = _ref28[0], + _value3 = _ref28[1]; + + csses_.push(_key3 + ': ' + _value3); + } + style_ = ' style="' + csses_.concat(_this7.header.styles[j]).join('; ') + '"'; } - value = calculateObjectValue(column, - that.header.formatters[j], [value_, item, i, field], value_); + value = Utils.calculateObjectValue(column, _this7.header.formatters[j], [value_, item, i, field], value_); - if (item['_' + field + '_data'] && !$.isEmptyObject(item['_' + field + '_data'])) { - $.each(item['_' + field + '_data'], function(k, v) { - // ignore data-index - if (k === 'index') { - return; - } - data_ += sprintf(' data-%s="%s"', k, v); + if (item['_' + field + '_data'] && !Utils.isEmptyObject(item['_' + field + '_data'])) { + for (var _iterator14 = function (target) { + return Object.keys(target).map(function (key) { + return [key, target[key]]; }); + }(item['_' + field + '_data']), _isArray14 = Array.isArray(_iterator14), _i16 = 0, _iterator14 = _isArray14 ? _iterator14 : _iterator14[Symbol.iterator]();;) { + var _ref29; + + if (_isArray14) { + if (_i16 >= _iterator14.length) break; + _ref29 = _iterator14[_i16++]; + } else { + _i16 = _iterator14.next(); + if (_i16.done) break; + _ref29 = _i16.value; + } + + var _ref30 = _ref29, + _ref31 = _slicedToArray(_ref30, 2), + _k2 = _ref31[0], + _v = _ref31[1]; + + // ignore data-index + if (_k2 === 'index') { + return; + } + data_ += ' data-' + _k2 + '="' + _v + '"'; + } } if (column.checkbox || column.radio) { - type = column.checkbox ? 'checkbox' : type; - type = column.radio ? 'radio' : type; + type = column.checkbox ? 'checkbox' : type; + type = column.radio ? 'radio' : type; - text = [sprintf(that.options.cardView ? - '
    ' : '', column['class'] || ''), - '', - that.header.formatters[j] && typeof value === 'string' ? value : '', - that.options.cardView ? '
    ' : '' - ].join(''); + var c = column['class'] || ''; + var isChecked = value === true || value_ || value && value.checked; + var isDisabled = !column.checkboxEnabled || value && value.disabled; - item[that.header.stateField] = value === true || (!!value_ || value && value.checked); + text = [_this7.options.cardView ? '
    ' : '', '', _this7.header.formatters[j] && typeof value === 'string' ? value : '', _this7.options.cardView ? '
    ' : ''].join(''); + + item[_this7.header.stateField] = value === true || !!value_ || value && value.checked; } else { - value = typeof value === 'undefined' || value === null ? - that.options.undefinedText : value; + value = typeof value === 'undefined' || value === null ? _this7.options.undefinedText : value; - text = that.options.cardView ? ['
    ', - that.options.showHeader ? sprintf('%s', style, - getPropertyFromOther(that.columns, 'field', 'title', field)) : '', - sprintf('%s', value), - '
    ' - ].join('') : [sprintf('', - id_, class_, style, data_, rowspan_, colspan_, title_), - value, - '' - ].join(''); + if (_this7.options.cardView) { + var cardTitle = _this7.options.showHeader ? '' + Utils.getFieldTitle(_this7.columns, field) + '' : ''; - // Hide empty data on Card view when smartDisplay is set to true. - if (that.options.cardView && that.options.smartDisplay && value === '') { - // Should set a placeholder for event binding correct fieldIndex - text = '
    '; + text = '
    ' + cardTitle + '' + value + '
    '; + + if (_this7.options.smartDisplay && value === '') { + text = '
    '; } + } else { + text = '' + value + ''; + } } html.push(text); - }); + }); - if (this.options.cardView) { + if (this.options.cardView) { html.push('
    '); + } + html.push(''); + + return html.join(''); } - html.push(''); + }, { + key: 'initBody', + value: function initBody(fixedScroll) { + var _this8 = this; - return html.join(' '); - }; + var data = this.getData(); - BootstrapTable.prototype.initBody = function (fixedScroll) { - var that = this, - html = [], - data = this.getData(); + this.trigger('pre-body', data); - this.trigger('pre-body', data); - - this.$body = this.$el.find('>tbody'); - if (!this.$body.length) { + this.$body = this.$el.find('>tbody'); + if (!this.$body.length) { this.$body = $('').appendTo(this.$el); - } + } - //Fix #389 Bootstrap-table-flatJSON is not working - - if (!this.options.pagination || this.options.sidePagination === 'server') { + // Fix #389 Bootstrap-table-flatJSON is not working + if (!this.options.pagination || this.options.sidePagination === 'server') { this.pageFrom = 1; this.pageTo = data.length; - } + } - var trFragments = $(document.createDocumentFragment()); - var hasTr; + var trFragments = $(document.createDocumentFragment()); + var hasTr = false; - for (var i = this.pageFrom - 1; i < this.pageTo; i++) { + for (var i = this.pageFrom - 1; i < this.pageTo; i++) { var item = data[i]; var tr = this.initRow(item, i, data, trFragments); hasTr = hasTr || !!tr; - if (tr&&tr!==true) { - trFragments.append(tr); + if (tr && typeof tr === 'string') { + trFragments.append(tr); } - } + } - // show no records - if (!hasTr) { - trFragments.append('' + - sprintf('%s', - this.$header.find('th').length, - this.options.formatNoMatches()) + - ''); - } + // show no records + if (!hasTr) { + this.$body.html('' + Utils.sprintf('%s', this.$header.find('th').length, this.options.formatNoMatches()) + ''); + } else { + this.$body.html(trFragments); + } - this.$body.html(trFragments); - - if (!fixedScroll) { + if (!fixedScroll) { this.scrollTo(0); - } + } - // click to select by column - this.$body.find('> tr[data-index] > td').off('click dblclick').on('click dblclick', function (e) { - var $td = $(this), - $tr = $td.parent(), - item = that.data[$tr.data('index')], - index = $td[0].cellIndex, - fields = that.getVisibleFields(), - field = fields[that.options.detailView && !that.options.cardView ? index - 1 : index], - column = that.columns[that.fieldsColumnsIndex[field]], - value = getItemField(item, field, that.options.escape); + // click to select by column + this.$body.find('> tr[data-index] > td').off('click dblclick').on('click dblclick', function (_ref32) { + var currentTarget = _ref32.currentTarget, + type = _ref32.type, + target = _ref32.target; + + var $td = $(currentTarget); + var $tr = $td.parent(); + var $cardviewArr = $(target).parents('.card-views').children(); + var $cardviewTarget = $(target).parents('.card-view'); + var item = _this8.data[$tr.data('index')]; + var index = _this8.options.cardView ? $cardviewArr.index($cardviewTarget) : $td[0].cellIndex; + var fields = _this8.getVisibleFields(); + var field = fields[_this8.options.detailView && !_this8.options.cardView ? index - 1 : index]; + var column = _this8.columns[_this8.fieldsColumnsIndex[field]]; + var value = Utils.getItemField(item, field, _this8.options.escape); if ($td.find('.detail-icon').length) { - return; + return; } - that.trigger(e.type === 'click' ? 'click-cell' : 'dbl-click-cell', field, value, item, $td); - that.trigger(e.type === 'click' ? 'click-row' : 'dbl-click-row', item, $tr, field); + _this8.trigger(type === 'click' ? 'click-cell' : 'dbl-click-cell', field, value, item, $td); + _this8.trigger(type === 'click' ? 'click-row' : 'dbl-click-row', item, $tr, field); // if click to select - then trigger the checkbox/radio click - if (e.type === 'click' && that.options.clickToSelect && column.clickToSelect && that.options.ignoreClickToSelectOn(e.target)) { - var $selectItem = $tr.find(sprintf('[name="%s"]', that.options.selectItemName)); - if ($selectItem.length) { - $selectItem[0].click(); // #144: .trigger('click') bug - } + if (type === 'click' && _this8.options.clickToSelect && column.clickToSelect && !Utils.calculateObjectValue(_this8.options, _this8.options.ignoreClickToSelectOn, [target])) { + var $selectItem = $tr.find(Utils.sprintf('[name="%s"]', _this8.options.selectItemName)); + if ($selectItem.length) { + $selectItem[0].click(); // #144: .trigger('click') bug + } } - }); + }); - this.$body.find('> tr[data-index] > td > .detail-icon').off('click').on('click', function (e) { + this.$body.find('> tr[data-index] > td > .detail-icon').off('click').on('click', function (e) { e.preventDefault(); - var $this = $(this), - $tr = $this.parent().parent(), - index = $tr.data('index'), - row = data[index]; // Fix #980 Detail view, when searching, returns wrong row + var $this = $(e.currentTarget); // Fix #980 Detail view, when searching, returns wrong row + var $tr = $this.parent().parent(); + var index = $tr.data('index'); + var row = data[index]; // remove and update if ($tr.next().is('tr.detail-view')) { - $this.find('i').attr('class', sprintf('%s %s', that.options.iconsPrefix, that.options.icons.detailOpen)); - that.trigger('collapse-row', index, row, $tr.next()); - $tr.next().remove(); + $this.html(Utils.sprintf(_this8.constants.html.icon, _this8.options.iconsPrefix, _this8.options.icons.detailOpen)); + _this8.trigger('collapse-row', index, row, $tr.next()); + $tr.next().remove(); } else { - $this.find('i').attr('class', sprintf('%s %s', that.options.iconsPrefix, that.options.icons.detailClose)); - $tr.after(sprintf('', $tr.find('td').length)); - var $element = $tr.next().find('td'); - var content = calculateObjectValue(that.options, that.options.detailFormatter, [index, row, $element], ''); - if ($element.length === 1) { - $element.append(content); - } - that.trigger('expand-row', index, row, $element); + $this.html(Utils.sprintf(_this8.constants.html.icon, _this8.options.iconsPrefix, _this8.options.icons.detailClose)); + $tr.after(Utils.sprintf('', $tr.children('td').length)); + var $element = $tr.next().find('td'); + var content = Utils.calculateObjectValue(_this8.options, _this8.options.detailFormatter, [index, row, $element], ''); + if ($element.length === 1) { + $element.append(content); + } + _this8.trigger('expand-row', index, row, $element); } - that.resetView(); + _this8.resetView(); return false; - }); + }); - this.$selectItem = this.$body.find(sprintf('[name="%s"]', this.options.selectItemName)); - this.$selectItem.off('click').on('click', function (event) { - event.stopImmediatePropagation(); + this.$selectItem = this.$body.find(Utils.sprintf('[name="%s"]', this.options.selectItemName)); + this.$selectItem.off('click').on('click', function (e) { + e.stopImmediatePropagation(); - var $this = $(this), - checked = $this.prop('checked'), - row = that.data[$this.data('index')]; + var $this = $(e.currentTarget); + _this8.check_($this.prop('checked'), $this.data('index')); + }); - if ($(this).is(':radio') || that.options.singleSelect) { - $.each(that.options.data, function (i, row) { - row[that.header.stateField] = false; - }); - } - - row[that.header.stateField] = checked; - - if (that.options.singleSelect) { - that.$selectItem.not(this).each(function () { - that.data[$(this).data('index')][that.header.stateField] = false; - }); - that.$selectItem.filter(':checked').not(this).prop('checked', false); - } - - that.updateSelected(); - that.trigger(checked ? 'check' : 'uncheck', row, $this); - }); - - $.each(this.header.events, function (i, events) { + this.header.events.forEach(function (_events, i) { + var events = _events; if (!events) { - return; + return; } // fix bug, if events is defined with namespace if (typeof events === 'string') { - events = calculateObjectValue(null, events); + events = Utils.calculateObjectValue(null, events); } - var field = that.header.fields[i], - fieldIndex = $.inArray(field, that.getVisibleFields()); + var field = _this8.header.fields[i]; + var fieldIndex = _this8.getVisibleFields().indexOf(field); if (fieldIndex === -1) { - return; + return; } - if (that.options.detailView && !that.options.cardView) { - fieldIndex += 1; + if (_this8.options.detailView && !_this8.options.cardView) { + fieldIndex += 1; } - for (var key in events) { - that.$body.find('>tr:not(.no-records-found)').each(function () { - var $tr = $(this), - $td = $tr.find(that.options.cardView ? '.card-view' : 'td').eq(fieldIndex), - index = key.indexOf(' '), - name = key.substring(0, index), - el = key.substring(index + 1), - func = events[key]; + var _loop = function _loop() { + if (_isArray15) { + if (_i17 >= _iterator15.length) return 'break'; + _ref33 = _iterator15[_i17++]; + } else { + _i17 = _iterator15.next(); + if (_i17.done) return 'break'; + _ref33 = _i17.value; + } - $td.find(el).off(name).on(name, function (e) { - var index = $tr.data('index'), - row = that.data[index], - value = row[field]; + var _ref34 = _ref33, + _ref35 = _slicedToArray(_ref34, 2), + key = _ref35[0], + event = _ref35[1]; - func.apply(this, [e, value, row, index]); - }); + _this8.$body.find('>tr:not(.no-records-found)').each(function (i, tr) { + var $tr = $(tr); + var $td = $tr.find(_this8.options.cardView ? '.card-view' : 'td').eq(fieldIndex); + var index = key.indexOf(' '); + var name = key.substring(0, index); + var el = key.substring(index + 1); + + $td.find(el).off(name).on(name, function (e) { + var index = $tr.data('index'); + var row = _this8.data[index]; + var value = row[field]; + + event.apply(_this8, [e, value, row, index]); }); + }); + }; + + for (var _iterator15 = function (target) { + return Object.keys(target).map(function (key) { + return [key, target[key]]; + }); + }(events), _isArray15 = Array.isArray(_iterator15), _i17 = 0, _iterator15 = _isArray15 ? _iterator15 : _iterator15[Symbol.iterator]();;) { + var _ref33; + + var _ret = _loop(); + + if (_ret === 'break') break; } - }); + }); - this.updateSelected(); - this.resetView(); + this.updateSelected(); + this.resetView(); - this.trigger('post-body', data); - }; + this.trigger('post-body', data); + } + }, { + key: 'initServer', + value: function initServer(silent, query, url) { + var _this9 = this; - BootstrapTable.prototype.initServer = function (silent, query, url) { - var that = this, - data = {}, - index = $.inArray(this.options.sortName, this.header.fields), - params = { - searchText: this.searchText, - sortName: this.options.sortName, - sortOrder: this.options.sortOrder - }, - request; + var data = {}; + var index = this.header.fields.indexOf(this.options.sortName); - if (this.header.sortNames[index]) { + var params = { + searchText: this.searchText, + sortName: this.options.sortName, + sortOrder: this.options.sortOrder + }; + + if (this.header.sortNames[index]) { params.sortName = this.header.sortNames[index]; - } + } - if (this.options.pagination && this.options.sidePagination === 'server') { - params.pageSize = this.options.pageSize === this.options.formatAllRows() ? - this.options.totalRows : this.options.pageSize; + if (this.options.pagination && this.options.sidePagination === 'server') { + params.pageSize = this.options.pageSize === this.options.formatAllRows() ? this.options.totalRows : this.options.pageSize; params.pageNumber = this.options.pageNumber; - } + } - if (!(url || this.options.url) && !this.options.ajax) { + if (!(url || this.options.url) && !this.options.ajax) { return; - } + } - if (this.options.queryParamsType === 'limit') { + if (this.options.queryParamsType === 'limit') { params = { - search: params.searchText, - sort: params.sortName, - order: params.sortOrder + search: params.searchText, + sort: params.sortName, + order: params.sortOrder }; if (this.options.pagination && this.options.sidePagination === 'server') { - params.offset = this.options.pageSize === this.options.formatAllRows() ? - 0 : this.options.pageSize * (this.options.pageNumber - 1); - params.limit = this.options.pageSize === this.options.formatAllRows() ? - this.options.totalRows : this.options.pageSize; - if (params.limit === 0) { - delete params.limit; - } + params.offset = this.options.pageSize === this.options.formatAllRows() ? 0 : this.options.pageSize * (this.options.pageNumber - 1); + params.limit = this.options.pageSize === this.options.formatAllRows() ? this.options.totalRows : this.options.pageSize; + if (params.limit === 0) { + delete params.limit; + } } - } + } - if (!($.isEmptyObject(this.filterColumnsPartial))) { + if (!Utils.isEmptyObject(this.filterColumnsPartial)) { params.filter = JSON.stringify(this.filterColumnsPartial, null); - } + } - data = calculateObjectValue(this.options, this.options.queryParams, [params], data); + data = Utils.calculateObjectValue(this.options, this.options.queryParams, [params], data); - $.extend(data, query || {}); + $.extend(data, query || {}); - // false to stop request - if (data === false) { + // false to stop request + if (data === false) { return; - } + } - if (!silent) { - this.$tableLoading.show(); - } - request = $.extend({}, calculateObjectValue(null, this.options.ajaxOptions), { + if (!silent) { + this.showLoading(); + } + var request = $.extend({}, Utils.calculateObjectValue(null, this.options.ajaxOptions), { type: this.options.method, - url: url || this.options.url, - data: this.options.contentType === 'application/json' && this.options.method === 'post' ? - JSON.stringify(data) : data, + url: url || this.options.url, + data: this.options.contentType === 'application/json' && this.options.method === 'post' ? JSON.stringify(data) : data, cache: this.options.cache, contentType: this.options.contentType, dataType: this.options.dataType, - success: function (res) { - res = calculateObjectValue(that.options, that.options.responseHandler, [res], res); + success: function success(_res) { + var res = Utils.calculateObjectValue(_this9.options, _this9.options.responseHandler, [_res], _res); - that.load(res); - that.trigger('load-success', res); - if (!silent) that.$tableLoading.hide(); + _this9.load(res); + _this9.trigger('load-success', res); + if (!silent) { + _this9.hideLoading(); + } }, - error: function (res) { - var data = []; - if (that.options.sidePagination === 'server') { - data = {}; - data[that.options.totalField] = 0; - data[that.options.dataField] = []; - } - that.load(data); - that.trigger('load-error', res.status, res); - if (!silent) that.$tableLoading.hide(); + error: function error(jqXHR) { + var data = []; + if (_this9.options.sidePagination === 'server') { + data = {}; + data[_this9.options.totalField] = 0; + data[_this9.options.dataField] = []; + } + _this9.load(data); + _this9.trigger('load-error', jqXHR.status, jqXHR); + if (!silent) _this9.$tableLoading.hide(); } - }); + }); - if (this.options.ajax) { - calculateObjectValue(this, this.options.ajax, [request], null); - } else { + if (this.options.ajax) { + Utils.calculateObjectValue(this, this.options.ajax, [request], null); + } else { if (this._xhr && this._xhr.readyState !== 4) { - this._xhr.abort(); + this._xhr.abort(); } this._xhr = $.ajax(request); - } - }; + } - BootstrapTable.prototype.initSearchText = function () { - if (this.options.search) { + return data; + } + }, { + key: 'initSearchText', + value: function initSearchText() { + if (this.options.search) { this.searchText = ''; if (this.options.searchText !== '') { - var $search = this.$toolbar.find('.search input'); - $search.val(this.options.searchText); - this.onSearch({currentTarget: $search, firedByInitSearchText: true}); + var $search = this.$toolbar.find('.search input'); + $search.val(this.options.searchText); + this.onSearch({ currentTarget: $search, firedByInitSearchText: true }); } + } } - }; + }, { + key: 'getCaret', + value: function getCaret() { + var _this10 = this; - BootstrapTable.prototype.getCaret = function () { - var that = this; + this.$header.find('th').each(function (i, th) { + $(th).find('.sortable').removeClass('desc asc').addClass($(th).data('field') === _this10.options.sortName ? _this10.options.sortOrder : 'both'); + }); + } + }, { + key: 'updateSelected', + value: function updateSelected() { + var checkAll = this.$selectItem.filter(':enabled').length && this.$selectItem.filter(':enabled').length === this.$selectItem.filter(':enabled').filter(':checked').length; - $.each(this.$header.find('th'), function (i, th) { - $(th).find('.sortable').removeClass('desc asc').addClass($(th).data('field') === that.options.sortName ? that.options.sortOrder : 'both'); - }); - }; + this.$selectAll.add(this.$selectAll_).prop('checked', checkAll); - BootstrapTable.prototype.updateSelected = function () { - var checkAll = this.$selectItem.filter(':enabled').length && - this.$selectItem.filter(':enabled').length === - this.$selectItem.filter(':enabled').filter(':checked').length; + this.$selectItem.each(function (i, el) { + $(el).closest('tr')[$(el).prop('checked') ? 'addClass' : 'removeClass']('selected'); + }); + } + }, { + key: 'updateRows', + value: function updateRows() { + var _this11 = this; - this.$selectAll.add(this.$selectAll_).prop('checked', checkAll); + this.$selectItem.each(function (i, el) { + _this11.data[$(el).data('index')][_this11.header.stateField] = $(el).prop('checked'); + }); + } + }, { + key: 'resetRows', + value: function resetRows() { + for (var _iterator16 = this.data, _isArray16 = Array.isArray(_iterator16), _i18 = 0, _iterator16 = _isArray16 ? _iterator16 : _iterator16[Symbol.iterator]();;) { + var _ref36; - this.$selectItem.each(function () { - $(this).closest('tr')[$(this).prop('checked') ? 'addClass' : 'removeClass']('selected'); - }); - }; - - BootstrapTable.prototype.updateRows = function () { - var that = this; - - this.$selectItem.each(function () { - that.data[$(this).data('index')][that.header.stateField] = $(this).prop('checked'); - }); - }; - - BootstrapTable.prototype.resetRows = function () { - var that = this; - - $.each(this.data, function (i, row) { - that.$selectAll.prop('checked', false); - that.$selectItem.prop('checked', false); - if (that.header.stateField) { - row[that.header.stateField] = false; + if (_isArray16) { + if (_i18 >= _iterator16.length) break; + _ref36 = _iterator16[_i18++]; + } else { + _i18 = _iterator16.next(); + if (_i18.done) break; + _ref36 = _i18.value; } - }); - this.initHiddenRows(); - }; - BootstrapTable.prototype.trigger = function (name) { - var args = Array.prototype.slice.call(arguments, 1); + var row = _ref36; - name += '.bs.table'; - this.options[BootstrapTable.EVENTS[name]].apply(this.options, args); - this.$el.trigger($.Event(name), args); + this.$selectAll.prop('checked', false); + this.$selectItem.prop('checked', false); + if (this.header.stateField) { + row[this.header.stateField] = false; + } + } + this.initHiddenRows(); + } + }, { + key: 'trigger', + value: function trigger(_name) { + var _options; - this.options.onAll(name, args); - this.$el.trigger($.Event('all.bs.table'), [name, args]); - }; + var name = _name + '.bs.table'; - BootstrapTable.prototype.resetHeader = function () { - // fix #61: the hidden table reset header bug. - // fix bug: get $el.css('width') error sometime (height = 500) - clearTimeout(this.timeoutId_); - this.timeoutId_ = setTimeout($.proxy(this.fitHeader, this), this.$el.is(':hidden') ? 100 : 0); - }; + for (var _len2 = arguments.length, args = Array(_len2 > 1 ? _len2 - 1 : 0), _key4 = 1; _key4 < _len2; _key4++) { + args[_key4 - 1] = arguments[_key4]; + } - BootstrapTable.prototype.fitHeader = function () { - var that = this, - fixedBody, - scrollWidth, - focused, - focusedTemp; + (_options = this.options)[BootstrapTable.EVENTS[name]].apply(_options, args); + this.$el.trigger($.Event(name), args); - if (that.$el.is(':hidden')) { - that.timeoutId_ = setTimeout($.proxy(that.fitHeader, that), 100); + this.options.onAll(name, args); + this.$el.trigger($.Event('all.bs.table'), [name, args]); + } + }, { + key: 'resetHeader', + value: function resetHeader() { + var _this12 = this; + + // fix #61: the hidden table reset header bug. + // fix bug: get $el.css('width') error sometime (height = 500) + clearTimeout(this.timeoutId_); + this.timeoutId_ = setTimeout(function () { + return _this12.fitHeader(); + }, this.$el.is(':hidden') ? 100 : 0); + } + }, { + key: 'fitHeader', + value: function fitHeader() { + var _this13 = this; + + if (this.$el.is(':hidden')) { + this.timeoutId_ = setTimeout(function () { + return _this13.fitHeader(); + }, 100); return; - } - fixedBody = this.$tableBody.get(0); + } - scrollWidth = fixedBody.scrollWidth > fixedBody.clientWidth && - fixedBody.scrollHeight > fixedBody.clientHeight + this.$header.outerHeight() ? - getScrollBarWidth() : 0; + var fixedBody = this.$tableBody.get(0); + var scrollWidth = fixedBody.scrollWidth > fixedBody.clientWidth && fixedBody.scrollHeight > fixedBody.clientHeight + this.$header.outerHeight() ? Utils.getScrollBarWidth() : 0; - this.$el.css('margin-top', -this.$header.outerHeight()); + this.$el.css('margin-top', -this.$header.outerHeight()); - focused = $(':focus'); - if (focused.length > 0) { + var focused = $(':focus'); + if (focused.length > 0) { var $th = focused.parents('th'); if ($th.length > 0) { - var dataField = $th.attr('data-field'); - if (dataField !== undefined) { - var $headerTh = this.$header.find("[data-field='" + dataField + "']"); - if ($headerTh.length > 0) { - $headerTh.find(":input").addClass("focus-temp"); - } + var dataField = $th.attr('data-field'); + if (dataField !== undefined) { + var $headerTh = this.$header.find('[data-field=\'' + dataField + '\']'); + if ($headerTh.length > 0) { + $headerTh.find(':input').addClass('focus-temp'); } + } } - } + } - this.$header_ = this.$header.clone(true, true); - this.$selectAll_ = this.$header_.find('[name="btSelectAll"]'); - this.$tableHeader.css({ - 'margin-right': scrollWidth - }).find('table').css('width', this.$el.outerWidth()) - .html('').attr('class', this.$el.attr('class')) - .append(this.$header_); + this.$header_ = this.$header.clone(true, true); + this.$selectAll_ = this.$header_.find('[name="btSelectAll"]'); + this.$tableHeader.css('margin-right', scrollWidth).find('table').css('width', this.$el.outerWidth()).html('').attr('class', this.$el.attr('class')).append(this.$header_); - focusedTemp = $('.focus-temp:visible:eq(0)'); - if (focusedTemp.length > 0) { + this.$tableLoading.css('width', this.$el.outerWidth()); + + var focusedTemp = $('.focus-temp:visible:eq(0)'); + if (focusedTemp.length > 0) { focusedTemp.focus(); this.$header.find('.focus-temp').removeClass('focus-temp'); - } + } - // fix bug: $.data() is not working as expected after $.append() - this.$header.find('th[data-field]').each(function (i) { - that.$header_.find(sprintf('th[data-field="%s"]', $(this).data('field'))).data($(this).data()); - }); + // fix bug: $.data() is not working as expected after $.append() + this.$header.find('th[data-field]').each(function (i, el) { + _this13.$header_.find(Utils.sprintf('th[data-field="%s"]', $(el).data('field'))).data($(el).data()); + }); - var visibleFields = this.getVisibleFields(), - $ths = this.$header_.find('th'); + var visibleFields = this.getVisibleFields(); + var $ths = this.$header_.find('th'); + var $tr = this.$body.find('>tr:first-child:not(.no-records-found)'); - this.$body.find('>tr:first-child:not(.no-records-found) > *').each(function (i) { - var $this = $(this), - index = i; + while ($tr.length && $tr.find('>td[colspan]:not([colspan="1"])').length) { + $tr = $tr.next(); + } - if (that.options.detailView && !that.options.cardView) { - if (i === 0) { - that.$header_.find('th.detail').find('.fht-cell').width($this.innerWidth()); - } - index = i - 1; + $tr.find('> *').each(function (i, el) { + var $this = $(el); + var index = i; + + if (_this13.options.detailView && !_this13.options.cardView) { + if (i === 0) { + var $thDetail = $ths.filter('.detail'); + var _zoomWidth = $thDetail.width() - $thDetail.find('.fht-cell').width(); + $thDetail.find('.fht-cell').width($this.innerWidth() - _zoomWidth); + } + index = i - 1; } if (index === -1) { - return; + return; } - var $th = that.$header_.find(sprintf('th[data-field="%s"]', visibleFields[index])); + var $th = _this13.$header_.find(Utils.sprintf('th[data-field="%s"]', visibleFields[index])); if ($th.length > 1) { - $th = $($ths[$this[0].cellIndex]); + $th = $($ths[$this[0].cellIndex]); } var zoomWidth = $th.width() - $th.find('.fht-cell').width(); $th.find('.fht-cell').width($this.innerWidth() - zoomWidth); - }); + }); - this.horizontalScroll(); - this.trigger('post-header'); - }; + this.horizontalScroll(); + this.trigger('post-header'); + } + }, { + key: 'resetFooter', + value: function resetFooter() { + var data = this.getData(); + var html = []; - BootstrapTable.prototype.resetFooter = function () { - var that = this, - data = that.getData(), - html = []; - - if (!this.options.showFooter || this.options.cardView) { //do nothing + if (!this.options.showFooter || this.options.cardView) { + // do nothing return; - } + } - if (!this.options.cardView && this.options.detailView) { - html.push('
     
    '); - } + if (!this.options.cardView && this.options.detailView) { + html.push('
    '); + } - $.each(this.columns, function (i, column) { - var key, - falign = '', // footer align style - valign = '', - csses = [], - style = {}, - class_ = sprintf(' class="%s"', column['class']); + for (var _iterator17 = this.columns, _isArray17 = Array.isArray(_iterator17), _i19 = 0, _iterator17 = _isArray17 ? _iterator17 : _iterator17[Symbol.iterator]();;) { + var _ref37; + + if (_isArray17) { + if (_i19 >= _iterator17.length) break; + _ref37 = _iterator17[_i19++]; + } else { + _i19 = _iterator17.next(); + if (_i19.done) break; + _ref37 = _i19.value; + } + + var column = _ref37; + + var falign = ''; + + var valign = ''; + var csses = []; + var style = {}; + var class_ = Utils.sprintf(' class="%s"', column['class']); if (!column.visible) { - return; + continue; } - if (that.options.cardView && (!column.cardVisible)) { - return; + if (this.options.cardView && !column.cardVisible) { + return; } - falign = sprintf('text-align: %s; ', column.falign ? column.falign : column.align); - valign = sprintf('vertical-align: %s; ', column.valign); + falign = Utils.sprintf('text-align: %s; ', column.falign ? column.falign : column.align); + valign = Utils.sprintf('vertical-align: %s; ', column.valign); - style = calculateObjectValue(null, that.options.footerStyle); + style = Utils.calculateObjectValue(null, this.options.footerStyle, [column]); if (style && style.css) { - for (key in style.css) { - csses.push(key + ': ' + style.css[key]); + for (var _iterator18 = function (target) { + return Object.keys(target).map(function (key) { + return [key, target[key]]; + }); + }(style.css), _isArray18 = Array.isArray(_iterator18), _i20 = 0, _iterator18 = _isArray18 ? _iterator18 : _iterator18[Symbol.iterator]();;) { + var _ref38; + + if (_isArray18) { + if (_i20 >= _iterator18.length) break; + _ref38 = _iterator18[_i20++]; + } else { + _i20 = _iterator18.next(); + if (_i20.done) break; + _ref38 = _i20.value; } + + var _ref39 = _ref38, + _ref40 = _slicedToArray(_ref39, 2), + _key5 = _ref40[0], + value = _ref40[1]; + + csses.push(_key5 + ': ' + value); + } + } + if (style && style.classes) { + class_ = Utils.sprintf(' class="%s"', column['class'] ? [column['class'], style.classes].join(' ') : style.classes); } - html.push(''); + html.push(''); html.push('
    '); - html.push(calculateObjectValue(column, column.footerFormatter, [data], ' ') || ' '); + html.push(Utils.calculateObjectValue(column, column.footerFormatter, [data], '')); html.push('
    '); html.push('
    '); html.push('
    '); - html.push(''); - }); + html.push(''); + } - this.$tableFooter.find('tr').html(html.join('')); - this.$tableFooter.show(); - clearTimeout(this.timeoutFooter_); - this.timeoutFooter_ = setTimeout($.proxy(this.fitFooter, this), - this.$el.is(':hidden') ? 100 : 0); - }; - - BootstrapTable.prototype.fitFooter = function () { - var that = this, - $footerTd, - elWidth, - scrollWidth; - - clearTimeout(this.timeoutFooter_); - if (this.$el.is(':hidden')) { - this.timeoutFooter_ = setTimeout($.proxy(this.fitFooter, this), 100); - return; + this.$tableFooter.find('tr').html(html.join('')); + this.$tableFooter.show(); + this.fitFooter(); } + }, { + key: 'fitFooter', + value: function fitFooter() { + var _this14 = this; - elWidth = this.$el.css('width'); - scrollWidth = elWidth > this.$tableBody.width() ? getScrollBarWidth() : 0; + if (this.$el.is(':hidden')) { + setTimeout(function () { + return _this14.fitFooter(); + }, 100); + return; + } - this.$tableFooter.css({ - 'margin-right': scrollWidth - }).find('table').css('width', elWidth) - .attr('class', this.$el.attr('class')); + var fixedBody = this.$tableBody.get(0); + var scrollWidth = fixedBody.scrollWidth > fixedBody.clientWidth && fixedBody.scrollHeight > fixedBody.clientHeight + this.$header.outerHeight() ? Utils.getScrollBarWidth() : 0; - $footerTd = this.$tableFooter.find('td'); + this.$tableFooter.css('margin-right', scrollWidth).find('table').css('width', this.$el.outerWidth()).attr('class', this.$el.attr('class')); - this.$body.find('>tr:first-child:not(.no-records-found) > *').each(function (i) { - var $this = $(this); + var visibleFields = this.getVisibleFields(); + var $ths = this.$tableFooter.find('th'); + var $tr = this.$body.find('>tr:first-child:not(.no-records-found)'); - $footerTd.eq(i).find('.fht-cell').width($this.innerWidth()); - }); + while ($tr.length && $tr.find('>td[colspan]:not([colspan="1"])').length) { + $tr = $tr.next(); + } - this.horizontalScroll(); - }; + $tr.find('> *').each(function (i, el) { + var $this = $(el); + var index = i; - BootstrapTable.prototype.horizontalScroll = function () { - var that = this; - // horizontal scroll event - // TODO: it's probably better improving the layout than binding to scroll event - - that.trigger('scroll-body'); - this.$tableBody.off('scroll').on('scroll', function () { - if (that.options.showHeader && that.options.height) { - that.$tableHeader.scrollLeft($(this).scrollLeft()); + if (_this14.options.detailView && !_this14.options.cardView) { + if (i === 0) { + var $thDetail = $ths.filter('.detail'); + var _zoomWidth2 = $thDetail.width() - $thDetail.find('.fht-cell').width(); + $thDetail.find('.fht-cell').width($this.innerWidth() - _zoomWidth2); + } + index = i - 1; } - if (that.options.showFooter && !that.options.cardView) { - that.$tableFooter.scrollLeft($(this).scrollLeft()); + if (index === -1) { + return; } - }); - }; - BootstrapTable.prototype.toggleColumn = function (index, checked, needUpdate) { - if (index === -1) { - return; + var $th = $ths.eq(i); + var zoomWidth = $th.width() - $th.find('.fht-cell').width(); + $th.find('.fht-cell').width($this.innerWidth() - zoomWidth); + }); + + this.horizontalScroll(); } - this.columns[index].visible = checked; - this.initHeader(); - this.initSearch(); - this.initPagination(); - this.initBody(); + }, { + key: 'horizontalScroll', + value: function horizontalScroll() { + var _this15 = this; - if (this.options.showColumns) { + // horizontal scroll event + // TODO: it's probably better improving the layout than binding to scroll event + + this.trigger('scroll-body'); + this.$tableBody.off('scroll').on('scroll', function (_ref41) { + var currentTarget = _ref41.currentTarget; + + if (_this15.options.showHeader && _this15.options.height) { + _this15.$tableHeader.scrollLeft($(currentTarget).scrollLeft()); + } + + if (_this15.options.showFooter && !_this15.options.cardView) { + _this15.$tableFooter.scrollLeft($(currentTarget).scrollLeft()); + } + }); + } + }, { + key: 'toggleColumn', + value: function toggleColumn(index, checked, needUpdate) { + if (index === -1) { + return; + } + this.columns[index].visible = checked; + this.initHeader(); + this.initSearch(); + this.initPagination(); + this.initBody(); + + if (this.options.showColumns) { var $items = this.$toolbar.find('.keep-open input').prop('disabled', false); if (needUpdate) { - $items.filter(sprintf('[value="%s"]', index)).prop('checked', checked); + $items.filter(Utils.sprintf('[value="%s"]', index)).prop('checked', checked); } if ($items.filter(':checked').length <= this.options.minimumCountColumns) { - $items.filter(':checked').prop('disabled', true); + $items.filter(':checked').prop('disabled', true); } + } } - }; + }, { + key: 'getVisibleFields', + value: function getVisibleFields() { + var visibleFields = []; - BootstrapTable.prototype.getVisibleFields = function () { - var that = this, - visibleFields = []; + for (var _iterator19 = this.header.fields, _isArray19 = Array.isArray(_iterator19), _i21 = 0, _iterator19 = _isArray19 ? _iterator19 : _iterator19[Symbol.iterator]();;) { + var _ref42; - $.each(this.header.fields, function (j, field) { - var column = that.columns[that.fieldsColumnsIndex[field]]; + if (_isArray19) { + if (_i21 >= _iterator19.length) break; + _ref42 = _iterator19[_i21++]; + } else { + _i21 = _iterator19.next(); + if (_i21.done) break; + _ref42 = _i21.value; + } + + var field = _ref42; + + var column = this.columns[this.fieldsColumnsIndex[field]]; if (!column.visible) { - return; + continue; } visibleFields.push(field); - }); - return visibleFields; - }; + } + return visibleFields; + } + }, { + key: 'resetView', + value: function resetView(params) { + var padding = 0; - // PUBLIC FUNCTION DEFINITION - // ======================= - - BootstrapTable.prototype.resetView = function (params) { - var padding = 0; - - if (params && params.height) { + if (params && params.height) { this.options.height = params.height; - } + } - this.$selectAll.prop('checked', this.$selectItem.length > 0 && - this.$selectItem.length === this.$selectItem.filter(':checked').length); + this.$selectAll.prop('checked', this.$selectItem.length > 0 && this.$selectItem.length === this.$selectItem.filter(':checked').length); - if (this.options.height) { - var toolbarHeight = this.$toolbar.outerHeight(true), - paginationHeight = this.$pagination.outerHeight(true), - height = this.options.height - toolbarHeight - paginationHeight; - - this.$tableContainer.css('height', height + 'px'); - } - - if (this.options.cardView) { + if (this.options.cardView) { // remove the element css this.$el.css('margin-top', '0'); this.$tableContainer.css('padding-bottom', '0'); this.$tableFooter.hide(); return; - } + } - if (this.options.showHeader && this.options.height) { + if (this.options.showHeader && this.options.height) { this.$tableHeader.show(); this.resetHeader(); - padding += this.$header.outerHeight(); - } else { + padding += this.$header.outerHeight(true); + } else { this.$tableHeader.hide(); this.trigger('post-header'); - } + } - if (this.options.showFooter) { + if (this.options.showFooter) { this.resetFooter(); if (this.options.height) { - padding += this.$tableFooter.outerHeight() + 1; + padding += this.$tableFooter.outerHeight(true); } + } + + if (this.options.height) { + var toolbarHeight = this.$toolbar.outerHeight(true); + var paginationHeight = this.$pagination.outerHeight(true); + var height = this.options.height - toolbarHeight - paginationHeight; + var tableHeight = this.$tableBody.find('table').outerHeight(true); + this.$tableContainer.css('height', height + 'px'); + this.$tableBorder && this.$tableBorder.css('height', height - tableHeight - padding - 1 + 'px'); + } + + // Assign the correct sortable arrow + this.getCaret(); + this.$tableContainer.css('padding-bottom', padding + 'px'); + this.trigger('reset-view'); } - - // Assign the correct sortable arrow - this.getCaret(); - this.$tableContainer.css('padding-bottom', padding + 'px'); - this.trigger('reset-view'); - }; - - BootstrapTable.prototype.getData = function (useCurrentPage) { - var data = this.options.data; - if (this.searchText || this.options.sortName || !$.isEmptyObject(this.filterColumns) || !$.isEmptyObject(this.filterColumnsPartial)) { + }, { + key: 'getData', + value: function getData(useCurrentPage) { + var data = this.options.data; + if (this.searchText || this.options.sortName || !Utils.isEmptyObject(this.filterColumns) || !Utils.isEmptyObject(this.filterColumnsPartial)) { data = this.data; - } + } - if (useCurrentPage) { + if (useCurrentPage) { return data.slice(this.pageFrom - 1, this.pageTo); + } + + return data; } + }, { + key: 'load', + value: function load(_data) { + var fixedScroll = false; + var data = _data; - return data; - }; - - BootstrapTable.prototype.load = function (data) { - var fixedScroll = false; - - // #431: support pagination - if (this.options.pagination && this.options.sidePagination === 'server') { + // #431: support pagination + if (this.options.pagination && this.options.sidePagination === 'server') { this.options.totalRows = data[this.options.totalField]; - fixedScroll = data.fixedScroll; - data = data[this.options.dataField]; - } else if (!$.isArray(data)) { // support fixedScroll - fixedScroll = data.fixedScroll; - data = data.data; + } + + fixedScroll = data.fixedScroll; + data = Array.isArray(data) ? data : data[this.options.dataField]; + + this.initData(data); + this.initSearch(); + this.initPagination(); + this.initBody(fixedScroll); } + }, { + key: 'append', + value: function append(data) { + this.initData(data, 'append'); + this.initSearch(); + this.initPagination(); + this.initSort(); + this.initBody(true); + } + }, { + key: 'prepend', + value: function prepend(data) { + this.initData(data, 'prepend'); + this.initSearch(); + this.initPagination(); + this.initSort(); + this.initBody(true); + } + }, { + key: 'remove', + value: function remove(params) { + var len = this.options.data.length; + var i = void 0; + var row = void 0; - this.initData(data); - this.initSearch(); - this.initPagination(); - this.initBody(fixedScroll); - }; - - BootstrapTable.prototype.append = function (data) { - this.initData(data, 'append'); - this.initSearch(); - this.initPagination(); - this.initSort(); - this.initBody(true); - }; - - BootstrapTable.prototype.prepend = function (data) { - this.initData(data, 'prepend'); - this.initSearch(); - this.initPagination(); - this.initSort(); - this.initBody(true); - }; - - BootstrapTable.prototype.remove = function (params) { - var len = this.options.data.length, - i, row; - - if (!params.hasOwnProperty('field') || !params.hasOwnProperty('values')) { + if (!params.hasOwnProperty('field') || !params.hasOwnProperty('values')) { return; - } + } - for (i = len - 1; i >= 0; i--) { + for (i = len - 1; i >= 0; i--) { row = this.options.data[i]; if (!row.hasOwnProperty(params.field)) { - continue; + continue; } - if ($.inArray(row[params.field], params.values) !== -1) { - this.options.data.splice(i, 1); - if (this.options.sidePagination === 'server') { - this.options.totalRows -= 1; - } + if (params.values.indexOf(row[params.field]) !== -1) { + this.options.data.splice(i, 1); + if (this.options.sidePagination === 'server') { + this.options.totalRows -= 1; + } } - } + } - if (len === this.options.data.length) { + if (len === this.options.data.length) { return; + } + + this.initSearch(); + this.initPagination(); + this.initSort(); + this.initBody(true); } - - this.initSearch(); - this.initPagination(); - this.initSort(); - this.initBody(true); - }; - - BootstrapTable.prototype.removeAll = function () { - if (this.options.data.length > 0) { + }, { + key: 'removeAll', + value: function removeAll() { + if (this.options.data.length > 0) { this.options.data.splice(0, this.options.data.length); this.initSearch(); this.initPagination(); this.initBody(true); + } } - }; + }, { + key: 'getRowByUniqueId', + value: function getRowByUniqueId(_id) { + var uniqueId = this.options.uniqueId; + var len = this.options.data.length; + var id = _id; + var dataRow = null; + var i = void 0; + var row = void 0; + var rowUniqueId = void 0; - BootstrapTable.prototype.getRowByUniqueId = function (id) { - var uniqueId = this.options.uniqueId, - len = this.options.data.length, - dataRow = null, - i, row, rowUniqueId; - - for (i = len - 1; i >= 0; i--) { + for (i = len - 1; i >= 0; i--) { row = this.options.data[i]; - if (row.hasOwnProperty(uniqueId)) { // uniqueId is a column - rowUniqueId = row[uniqueId]; - } else if(row._data.hasOwnProperty(uniqueId)) { // uniqueId is a row data property - rowUniqueId = row._data[uniqueId]; + if (row.hasOwnProperty(uniqueId)) { + // uniqueId is a column + rowUniqueId = row[uniqueId]; + } else if (row._data && row._data.hasOwnProperty(uniqueId)) { + // uniqueId is a row data property + rowUniqueId = row._data[uniqueId]; } else { - continue; + continue; } if (typeof rowUniqueId === 'string') { - id = id.toString(); + id = id.toString(); } else if (typeof rowUniqueId === 'number') { - if ((Number(rowUniqueId) === rowUniqueId) && (rowUniqueId % 1 === 0)) { - id = parseInt(id); - } else if ((rowUniqueId === Number(rowUniqueId)) && (rowUniqueId !== 0)) { - id = parseFloat(id); - } + if (Number(rowUniqueId) === rowUniqueId && rowUniqueId % 1 === 0) { + id = parseInt(id); + } else if (rowUniqueId === Number(rowUniqueId) && rowUniqueId !== 0) { + id = parseFloat(id); + } } if (rowUniqueId === id) { - dataRow = row; - break; + dataRow = row; + break; } + } + + return dataRow; } + }, { + key: 'removeByUniqueId', + value: function removeByUniqueId(id) { + var len = this.options.data.length; + var row = this.getRowByUniqueId(id); - return dataRow; - }; - - BootstrapTable.prototype.removeByUniqueId = function (id) { - var len = this.options.data.length, - row = this.getRowByUniqueId(id); - - if (row) { + if (row) { this.options.data.splice(this.options.data.indexOf(row), 1); - } + } - if (len === this.options.data.length) { + if (len === this.options.data.length) { return; + } + + this.initSearch(); + this.initPagination(); + this.initBody(true); } + }, { + key: 'updateByUniqueId', + value: function updateByUniqueId(params) { + var allParams = Array.isArray(params) ? params : [params]; - this.initSearch(); - this.initPagination(); - this.initBody(true); - }; + for (var _iterator20 = allParams, _isArray20 = Array.isArray(_iterator20), _i22 = 0, _iterator20 = _isArray20 ? _iterator20 : _iterator20[Symbol.iterator]();;) { + var _ref43; - BootstrapTable.prototype.updateByUniqueId = function (params) { - var that = this; - var allParams = $.isArray(params) ? params : [ params ]; - - $.each(allParams, function(i, params) { - var rowId; - - if (!params.hasOwnProperty('id') || !params.hasOwnProperty('row')) { - return; + if (_isArray20) { + if (_i22 >= _iterator20.length) break; + _ref43 = _iterator20[_i22++]; + } else { + _i22 = _iterator20.next(); + if (_i22.done) break; + _ref43 = _i22.value; } - rowId = $.inArray(that.getRowByUniqueId(params.id), that.options.data); + var _params = _ref43; + + if (!_params.hasOwnProperty('id') || !_params.hasOwnProperty('row')) { + continue; + } + + var rowId = this.options.data.indexOf(this.getRowByUniqueId(_params.id)); if (rowId === -1) { - return; + continue; } - $.extend(that.options.data[rowId], params.row); - }); + $.extend(this.options.data[rowId], _params.row); + } - this.initSearch(); - this.initPagination(); - this.initSort(); - this.initBody(true); - }; - - BootstrapTable.prototype.refreshColumnTitle = function (params) { - if (!params.hasOwnProperty('field') || !params.hasOwnProperty('title')) { - return; + this.initSearch(); + this.initPagination(); + this.initSort(); + this.initBody(true); } + }, { + key: 'refreshColumnTitle', + value: function refreshColumnTitle(params) { + if (!params.hasOwnProperty('field') || !params.hasOwnProperty('title')) { + return; + } - this.columns[this.fieldsColumnsIndex[params.field]].title = - this.options.escape ? escapeHTML(params.title) : params.title; + this.columns[this.fieldsColumnsIndex[params.field]].title = this.options.escape ? Utils.escapeHTML(params.title) : params.title; - if (this.columns[this.fieldsColumnsIndex[params.field]].visible) { + if (this.columns[this.fieldsColumnsIndex[params.field]].visible) { var header = this.options.height !== undefined ? this.$tableHeader : this.$header; - header.find('th[data-field]').each(function (i) { - if ($(this).data('field') === params.field) { - $($(this).find(".th-inner")[0]).text(params.title); - return false; - } + header.find('th[data-field]').each(function (i, el) { + if ($(el).data('field') === params.field) { + $($(el).find('.th-inner')[0]).text(params.title); + return false; + } }); + } } - }; - - BootstrapTable.prototype.insertRow = function (params) { - if (!params.hasOwnProperty('index') || !params.hasOwnProperty('row')) { + }, { + key: 'insertRow', + value: function insertRow(params) { + if (!params.hasOwnProperty('index') || !params.hasOwnProperty('row')) { return; + } + this.options.data.splice(params.index, 0, params.row); + this.initSearch(); + this.initPagination(); + this.initSort(); + this.initBody(true); } - this.options.data.splice(params.index, 0, params.row); - this.initSearch(); - this.initPagination(); - this.initSort(); - this.initBody(true); - }; + }, { + key: 'updateRow', + value: function updateRow(params) { + var allParams = Array.isArray(params) ? params : [params]; - BootstrapTable.prototype.updateRow = function (params) { - var that = this; - var allParams = $.isArray(params) ? params : [ params ]; + for (var _iterator21 = allParams, _isArray21 = Array.isArray(_iterator21), _i23 = 0, _iterator21 = _isArray21 ? _iterator21 : _iterator21[Symbol.iterator]();;) { + var _ref44; - $.each(allParams, function(i, params) { - if (!params.hasOwnProperty('index') || !params.hasOwnProperty('row')) { - return; + if (_isArray21) { + if (_i23 >= _iterator21.length) break; + _ref44 = _iterator21[_i23++]; + } else { + _i23 = _iterator21.next(); + if (_i23.done) break; + _ref44 = _i23.value; } - $.extend(that.options.data[params.index], params.row); - }); - this.initSearch(); - this.initPagination(); - this.initSort(); - this.initBody(true); - }; + var _params2 = _ref44; - BootstrapTable.prototype.initHiddenRows = function () { - this.hiddenRows = []; - }; + if (!_params2.hasOwnProperty('index') || !_params2.hasOwnProperty('row')) { + continue; + } + $.extend(this.options.data[_params2.index], _params2.row); + } - BootstrapTable.prototype.showRow = function (params) { - this.toggleRow(params, true); - }; + this.initSearch(); + this.initPagination(); + this.initSort(); + this.initBody(true); + } + }, { + key: 'initHiddenRows', + value: function initHiddenRows() { + this.hiddenRows = []; + } + }, { + key: 'showRow', + value: function showRow(params) { + this.toggleRow(params, true); + } + }, { + key: 'hideRow', + value: function hideRow(params) { + this.toggleRow(params, false); + } + }, { + key: 'toggleRow', + value: function toggleRow(params, visible) { + var row = void 0; - BootstrapTable.prototype.hideRow = function (params) { - this.toggleRow(params, false); - }; - - BootstrapTable.prototype.toggleRow = function (params, visible) { - var row, index; - - if (params.hasOwnProperty('index')) { + if (params.hasOwnProperty('index')) { row = this.getData()[params.index]; - } else if (params.hasOwnProperty('uniqueId')) { + } else if (params.hasOwnProperty('uniqueId')) { row = this.getRowByUniqueId(params.uniqueId); - } + } - if (!row) { + if (!row) { return; - } + } - index = $.inArray(row, this.hiddenRows); + var index = Utils.findIndex(this.hiddenRows, row); - if (!visible && index === -1) { + if (!visible && index === -1) { this.hiddenRows.push(row); - } else if (visible && index > -1) { + } else if (visible && index > -1) { this.hiddenRows.splice(index, 1); + } + this.initBody(true); } - this.initBody(true); - }; + }, { + key: 'getHiddenRows', + value: function getHiddenRows(show) { + if (show) { + this.initHiddenRows(); + this.initBody(true); + return; + } + var data = this.getData(); + var rows = []; - BootstrapTable.prototype.getHiddenRows = function (show) { - var that = this, - data = this.getData(), - rows = []; + for (var _iterator22 = data, _isArray22 = Array.isArray(_iterator22), _i24 = 0, _iterator22 = _isArray22 ? _iterator22 : _iterator22[Symbol.iterator]();;) { + var _ref45; - $.each(data, function (i, row) { - if ($.inArray(row, that.hiddenRows) > -1) { - rows.push(row); + if (_isArray22) { + if (_i24 >= _iterator22.length) break; + _ref45 = _iterator22[_i24++]; + } else { + _i24 = _iterator22.next(); + if (_i24.done) break; + _ref45 = _i24.value; } - }); - this.hiddenRows = rows; - return rows; - }; - BootstrapTable.prototype.mergeCells = function (options) { - var row = options.index, - col = $.inArray(options.field, this.getVisibleFields()), - rowspan = options.rowspan || 1, - colspan = options.colspan || 1, - i, j, - $tr = this.$body.find('>tr'), - $td; + var row = _ref45; - if (this.options.detailView && !this.options.cardView) { + if (this.hiddenRows.indexOf(row) !== -1) { + rows.push(row); + } + } + this.hiddenRows = rows; + return rows; + } + }, { + key: 'mergeCells', + value: function mergeCells(options) { + var row = options.index; + var col = this.getVisibleFields().indexOf(options.field); + var rowspan = options.rowspan || 1; + var colspan = options.colspan || 1; + var i = void 0; + var j = void 0; + var $tr = this.$body.find('>tr'); + + if (this.options.detailView && !this.options.cardView) { col += 1; - } + } - $td = $tr.eq(row).find('>td').eq(col); + var $td = $tr.eq(row).find('>td').eq(col); - if (row < 0 || col < 0 || row >= this.data.length) { + if (row < 0 || col < 0 || row >= this.data.length) { return; - } + } - for (i = row; i < row + rowspan; i++) { + for (i = row; i < row + rowspan; i++) { for (j = col; j < col + colspan; j++) { - $tr.eq(i).find('>td').eq(j).hide(); + $tr.eq(i).find('>td').eq(j).hide(); } + } + + $td.attr('rowspan', rowspan).attr('colspan', colspan).show(); } - - $td.attr('rowspan', rowspan).attr('colspan', colspan).show(); - }; - - BootstrapTable.prototype.updateCell = function (params) { - if (!params.hasOwnProperty('index') || - !params.hasOwnProperty('field') || - !params.hasOwnProperty('value')) { + }, { + key: 'updateCell', + value: function updateCell(params) { + if (!params.hasOwnProperty('index') || !params.hasOwnProperty('field') || !params.hasOwnProperty('value')) { return; - } - this.data[params.index][params.field] = params.value; + } + this.data[params.index][params.field] = params.value; - if (params.reinit === false) { + if (params.reinit === false) { return; + } + this.initSort(); + this.initBody(true); } - this.initSort(); - this.initBody(true); - }; + }, { + key: 'updateCellById', + value: function updateCellById(params) { + var _this16 = this; - BootstrapTable.prototype.updateCellById = function (params) { - var that = this; - if (!params.hasOwnProperty('id') || - !params.hasOwnProperty('field') || - !params.hasOwnProperty('value')) { + if (!params.hasOwnProperty('id') || !params.hasOwnProperty('field') || !params.hasOwnProperty('value')) { return; - } - var allParams = $.isArray(params) ? params : [ params ]; + } + var allParams = Array.isArray(params) ? params : [params]; - $.each(allParams, function(i, params) { - var rowId; + allParams.forEach(function (_ref46) { + var id = _ref46.id, + field = _ref46.field, + value = _ref46.value; - rowId = $.inArray(that.getRowByUniqueId(params.id), that.options.data); + var rowId = _this16.options.data.indexOf(_this16.getRowByUniqueId(id)); if (rowId === -1) { - return; + return; } - that.data[rowId][params.field] = params.value; - }); + _this16.data[rowId][field] = value; + }); - if (params.reinit === false) { + if (params.reinit === false) { return; + } + this.initSort(); + this.initBody(true); } - this.initSort(); - this.initBody(true); - }; + }, { + key: 'getOptions', + value: function getOptions() { + // deep copy and remove data + var options = JSON.parse(JSON.stringify(this.options)); + delete options.data; + return options; + } + }, { + key: 'getSelections', + value: function getSelections() { + var _this17 = this; - BootstrapTable.prototype.getOptions = function () { - //Deep copy - return $.extend(true, {}, this.options); - }; + // fix #2424: from html with checkbox + return this.options.data.filter(function (row) { + return row[_this17.header.stateField] === true; + }); + } + }, { + key: 'getAllSelections', + value: function getAllSelections() { + var _this18 = this; - BootstrapTable.prototype.getSelections = function () { - var that = this; - - return $.grep(this.options.data, function (row) { - // fix #2424: from html with checkbox - return row[that.header.stateField] === true; - }); - }; - - BootstrapTable.prototype.getAllSelections = function () { - var that = this; - - return $.grep(this.options.data, function (row) { - return row[that.header.stateField]; - }); - }; - - BootstrapTable.prototype.checkAll = function () { - this.checkAll_(true); - }; - - BootstrapTable.prototype.uncheckAll = function () { - this.checkAll_(false); - }; - - BootstrapTable.prototype.checkInvert = function () { - var that = this; - var rows = that.$selectItem.filter(':enabled'); - var checked = rows.filter(':checked'); - rows.each(function() { - $(this).prop('checked', !$(this).prop('checked')); - }); - that.updateRows(); - that.updateSelected(); - that.trigger('uncheck-some', checked); - checked = that.getSelections(); - that.trigger('check-some', checked); - }; - - BootstrapTable.prototype.checkAll_ = function (checked) { - var rows; - if (!checked) { + return this.options.data.filter(function (row) { + return row[_this18.header.stateField]; + }); + } + }, { + key: 'checkAll', + value: function checkAll() { + this.checkAll_(true); + } + }, { + key: 'uncheckAll', + value: function uncheckAll() { + this.checkAll_(false); + } + }, { + key: 'checkInvert', + value: function checkInvert() { + var $items = this.$selectItem.filter(':enabled'); + var checked = $items.filter(':checked'); + $items.each(function (i, el) { + $(el).prop('checked', !$(el).prop('checked')); + }); + this.updateRows(); + this.updateSelected(); + this.trigger('uncheck-some', checked); + checked = this.getSelections(); + this.trigger('check-some', checked); + } + }, { + key: 'checkAll_', + value: function checkAll_(checked) { + var rows = void 0; + if (!checked) { rows = this.getSelections(); - } - this.$selectAll.add(this.$selectAll_).prop('checked', checked); - this.$selectItem.filter(':enabled').prop('checked', checked); - this.updateRows(); - if (checked) { + } + this.$selectAll.add(this.$selectAll_).prop('checked', checked); + this.$selectItem.filter(':enabled').prop('checked', checked); + this.updateRows(); + if (checked) { rows = this.getSelections(); + } + this.trigger(checked ? 'check-all' : 'uncheck-all', rows); } - this.trigger(checked ? 'check-all' : 'uncheck-all', rows); - }; + }, { + key: 'check', + value: function check(index) { + this.check_(true, index); + } + }, { + key: 'uncheck', + value: function uncheck(index) { + this.check_(false, index); + } + }, { + key: 'check_', + value: function check_(checked, index) { + var $el = this.$selectItem.filter('[data-index="' + index + '"]'); + var row = this.data[index]; - BootstrapTable.prototype.check = function (index) { - this.check_(true, index); - }; + if ($el.is(':radio') || this.options.singleSelect) { + for (var _iterator23 = this.options.data, _isArray23 = Array.isArray(_iterator23), _i25 = 0, _iterator23 = _isArray23 ? _iterator23 : _iterator23[Symbol.iterator]();;) { + var _ref47; - BootstrapTable.prototype.uncheck = function (index) { - this.check_(false, index); - }; + if (_isArray23) { + if (_i25 >= _iterator23.length) break; + _ref47 = _iterator23[_i25++]; + } else { + _i25 = _iterator23.next(); + if (_i25.done) break; + _ref47 = _i25.value; + } - BootstrapTable.prototype.check_ = function (checked, index) { - var $el = this.$selectItem.filter(sprintf('[data-index="%s"]', index)).prop('checked', checked); - this.data[index][this.header.stateField] = checked; - this.updateSelected(); - this.trigger(checked ? 'check' : 'uncheck', this.data[index], $el); - }; + var r = _ref47; - BootstrapTable.prototype.checkBy = function (obj) { - this.checkBy_(true, obj); - }; + r[this.header.stateField] = false; + } + this.$selectItem.filter(':checked').not($el).prop('checked', false); + } - BootstrapTable.prototype.uncheckBy = function (obj) { - this.checkBy_(false, obj); - }; + row[this.header.stateField] = checked; + $el.prop('checked', checked); + this.updateSelected(); + this.trigger(checked ? 'check' : 'uncheck', this.data[index], $el); + } + }, { + key: 'checkBy', + value: function checkBy(obj) { + this.checkBy_(true, obj); + } + }, { + key: 'uncheckBy', + value: function uncheckBy(obj) { + this.checkBy_(false, obj); + } + }, { + key: 'checkBy_', + value: function checkBy_(checked, obj) { + var _this19 = this; - BootstrapTable.prototype.checkBy_ = function (checked, obj) { - if (!obj.hasOwnProperty('field') || !obj.hasOwnProperty('values')) { + if (!obj.hasOwnProperty('field') || !obj.hasOwnProperty('values')) { return; - } + } - var that = this, - rows = []; - $.each(this.options.data, function (index, row) { + var rows = []; + this.options.data.forEach(function (row, i) { if (!row.hasOwnProperty(obj.field)) { - return false; + return false; } - if ($.inArray(row[obj.field], obj.values) !== -1) { - var $el = that.$selectItem.filter(':enabled') - .filter(sprintf('[data-index="%s"]', index)).prop('checked', checked); - row[that.header.stateField] = checked; - rows.push(row); - that.trigger(checked ? 'check' : 'uncheck', row, $el); + if (obj.values.indexOf(row[obj.field]) !== -1) { + var $el = _this19.$selectItem.filter(':enabled').filter(Utils.sprintf('[data-index="%s"]', i)).prop('checked', checked); + row[_this19.header.stateField] = checked; + rows.push(row); + _this19.trigger(checked ? 'check' : 'uncheck', row, $el); } - }); - this.updateSelected(); - this.trigger(checked ? 'check-some' : 'uncheck-some', rows); - }; - - BootstrapTable.prototype.destroy = function () { - this.$el.insertBefore(this.$container); - $(this.options.toolbar).insertBefore(this.$el); - this.$container.next().remove(); - this.$container.remove(); - this.$el.html(this.$el_.html()) - .css('margin-top', '0') - .attr('class', this.$el_.attr('class') || ''); // reset the class - }; - - BootstrapTable.prototype.showLoading = function () { - this.$tableLoading.show(); - }; - - BootstrapTable.prototype.hideLoading = function () { - this.$tableLoading.hide(); - }; - - BootstrapTable.prototype.togglePagination = function () { - this.options.pagination = !this.options.pagination; - var button = this.$toolbar.find('button[name="paginationSwitch"] i'); - if (this.options.pagination) { - button.attr("class", this.options.iconsPrefix + " " + this.options.icons.paginationSwitchDown); - } else { - button.attr("class", this.options.iconsPrefix + " " + this.options.icons.paginationSwitchUp); + }); + this.updateSelected(); + this.trigger(checked ? 'check-some' : 'uncheck-some', rows); } - this.updatePagination(); - }; - - BootstrapTable.prototype.toggleFullscreen = function () { - this.$el.closest('.bootstrap-table').toggleClass('fullscreen'); - }; - - BootstrapTable.prototype.refresh = function (params) { - if (params && params.url) { + }, { + key: 'destroy', + value: function destroy() { + this.$el.insertBefore(this.$container); + $(this.options.toolbar).insertBefore(this.$el); + this.$container.next().remove(); + this.$container.remove(); + this.$el.html(this.$el_.html()).css('margin-top', '0').attr('class', this.$el_.attr('class') || ''); // reset the class + } + }, { + key: 'showLoading', + value: function showLoading() { + this.$tableLoading.css('display', 'flex'); + } + }, { + key: 'hideLoading', + value: function hideLoading() { + this.$tableLoading.css('display', 'none'); + } + }, { + key: 'togglePagination', + value: function togglePagination() { + this.options.pagination = !this.options.pagination; + this.$toolbar.find('button[name="paginationSwitch"]').html(Utils.sprintf(this.constants.html.icon, this.options.iconsPrefix, this.options.pagination ? this.options.icons.paginationSwitchDown : this.options.icons.paginationSwitchUp)); + this.updatePagination(); + } + }, { + key: 'toggleFullscreen', + value: function toggleFullscreen() { + this.$el.closest('.bootstrap-table').toggleClass('fullscreen'); + this.resetView(); + } + }, { + key: 'refresh', + value: function refresh(params) { + if (params && params.url) { this.options.url = params.url; - } - if (params && params.pageNumber) { + } + if (params && params.pageNumber) { this.options.pageNumber = params.pageNumber; - } - if (params && params.pageSize) { + } + if (params && params.pageSize) { this.options.pageSize = params.pageSize; + } + this.trigger('refresh', this.initServer(params && params.silent, params && params.query, params && params.url)); } - this.initServer(params && params.silent, - params && params.query, params && params.url); - this.trigger('refresh', params); - }; - - BootstrapTable.prototype.resetWidth = function () { - if (this.options.showHeader && this.options.height) { + }, { + key: 'resetWidth', + value: function resetWidth() { + if (this.options.showHeader && this.options.height) { this.fitHeader(); - } - if (this.options.showFooter && !this.options.cardView) { + } + if (this.options.showFooter && !this.options.cardView) { this.fitFooter(); + } } - }; + }, { + key: 'showColumn', + value: function showColumn(field) { + this.toggleColumn(this.fieldsColumnsIndex[field], true, true); + } + }, { + key: 'hideColumn', + value: function hideColumn(field) { + this.toggleColumn(this.fieldsColumnsIndex[field], false, true); + } + }, { + key: 'getHiddenColumns', + value: function getHiddenColumns() { + return this.columns.filter(function (_ref48) { + var visible = _ref48.visible; + return !visible; + }); + } + }, { + key: 'getVisibleColumns', + value: function getVisibleColumns() { + return this.columns.filter(function (_ref49) { + var visible = _ref49.visible; + return visible; + }); + } + }, { + key: 'toggleAllColumns', + value: function toggleAllColumns(visible) { + for (var _iterator24 = this.columns, _isArray24 = Array.isArray(_iterator24), _i26 = 0, _iterator24 = _isArray24 ? _iterator24 : _iterator24[Symbol.iterator]();;) { + var _ref50; - BootstrapTable.prototype.showColumn = function (field) { - this.toggleColumn(this.fieldsColumnsIndex[field], true, true); - }; + if (_isArray24) { + if (_i26 >= _iterator24.length) break; + _ref50 = _iterator24[_i26++]; + } else { + _i26 = _iterator24.next(); + if (_i26.done) break; + _ref50 = _i26.value; + } - BootstrapTable.prototype.hideColumn = function (field) { - this.toggleColumn(this.fieldsColumnsIndex[field], false, true); - }; + var column = _ref50; - BootstrapTable.prototype.getHiddenColumns = function () { - return $.grep(this.columns, function (column) { - return !column.visible; - }); - }; + column.visible = visible; + } - BootstrapTable.prototype.getVisibleColumns = function () { - return $.grep(this.columns, function (column) { - return column.visible; - }); - }; - - BootstrapTable.prototype.toggleAllColumns = function (visible) { - var that = this; - $.each(this.columns, function (i, column) { - that.columns[i].visible = visible; - }); - - this.initHeader(); - this.initSearch(); - this.initPagination(); - this.initBody(); - if (this.options.showColumns) { + this.initHeader(); + this.initSearch(); + this.initPagination(); + this.initBody(); + if (this.options.showColumns) { var $items = this.$toolbar.find('.keep-open input').prop('disabled', false); if ($items.filter(':checked').length <= this.options.minimumCountColumns) { - $items.filter(':checked').prop('disabled', true); + $items.filter(':checked').prop('disabled', true); } + } } - }; - - BootstrapTable.prototype.showAllColumns = function () { - this.toggleAllColumns(true); - }; - - BootstrapTable.prototype.hideAllColumns = function () { - this.toggleAllColumns(false); - }; - - BootstrapTable.prototype.filterBy = function (columns) { - this.filterColumns = $.isEmptyObject(columns) ? {} : columns; - this.options.pageNumber = 1; - this.initSearch(); - this.updatePagination(); - }; - - BootstrapTable.prototype.scrollTo = function (value) { - if (typeof value === 'string') { - value = value === 'bottom' ? this.$tableBody[0].scrollHeight : 0; + }, { + key: 'showAllColumns', + value: function showAllColumns() { + this.toggleAllColumns(true); } - if (typeof value === 'number') { - this.$tableBody.scrollTop(value); + }, { + key: 'hideAllColumns', + value: function hideAllColumns() { + this.toggleAllColumns(false); } - if (typeof value === 'undefined') { + }, { + key: 'filterBy', + value: function filterBy(columns) { + this.filterColumns = Utils.isEmptyObject(columns) ? {} : columns; + this.options.pageNumber = 1; + this.initSearch(); + this.updatePagination(); + } + }, { + key: 'scrollTo', + value: function scrollTo(_value) { + if (typeof _value === 'undefined') { return this.$tableBody.scrollTop(); + } + + var value = _value; + if (typeof _value === 'string' && _value === 'bottom') { + value = this.$tableBody[0].scrollHeight; + } + this.$tableBody.scrollTop(value); } - }; - - BootstrapTable.prototype.getScrollPosition = function () { - return this.scrollTo(); - }; - - BootstrapTable.prototype.selectPage = function (page) { - if (page > 0 && page <= this.options.totalPages) { + }, { + key: 'getScrollPosition', + value: function getScrollPosition() { + return this.scrollTo(); + } + }, { + key: 'selectPage', + value: function selectPage(page) { + if (page > 0 && page <= this.options.totalPages) { this.options.pageNumber = page; this.updatePagination(); + } } - }; - - BootstrapTable.prototype.prevPage = function () { - if (this.options.pageNumber > 1) { + }, { + key: 'prevPage', + value: function prevPage() { + if (this.options.pageNumber > 1) { this.options.pageNumber--; this.updatePagination(); + } } - }; - - BootstrapTable.prototype.nextPage = function () { - if (this.options.pageNumber < this.options.totalPages) { + }, { + key: 'nextPage', + value: function nextPage() { + if (this.options.pageNumber < this.options.totalPages) { this.options.pageNumber++; this.updatePagination(); + } } - }; - - BootstrapTable.prototype.toggleView = function () { - this.options.cardView = !this.options.cardView; - this.initHeader(); - // Fixed remove toolbar when click cardView button. - //that.initToolbar(); - var $icon = this.$toolbar.find('button[name="toggle"] i'); - if (this.options.cardView) { - $icon.removeClass(this.options.icons.toggleOff); - $icon.addClass(this.options.icons.toggleOn); - } else { - $icon.removeClass(this.options.icons.toggleOn); - $icon.addClass(this.options.icons.toggleOff); + }, { + key: 'toggleView', + value: function toggleView() { + this.options.cardView = !this.options.cardView; + this.initHeader(); + // Fixed remove toolbar when click cardView button. + // this.initToolbar(); + this.$toolbar.find('button[name="toggle"]').html(Utils.sprintf(this.constants.html.icon, this.options.iconsPrefix, this.options.cardView ? this.options.icons.toggleOn : this.options.icons.toggleOff)); + this.initBody(); + this.trigger('toggle', this.options.cardView); } - this.initBody(); - this.trigger('toggle', this.options.cardView); - }; - - BootstrapTable.prototype.refreshOptions = function (options) { - //If the objects are equivalent then avoid the call of destroy / init methods - if (compareObjects(this.options, options, true)) { + }, { + key: 'refreshOptions', + value: function refreshOptions(options) { + // If the objects are equivalent then avoid the call of destroy / init methods + if (Utils.compareObjects(this.options, options, true)) { return; + } + this.options = $.extend(this.options, options); + this.trigger('refresh-options', this.options); + this.destroy(); + this.init(); } - this.options = $.extend(this.options, options); - this.trigger('refresh-options', this.options); - this.destroy(); - this.init(); - }; - - BootstrapTable.prototype.resetSearch = function (text) { - var $search = this.$toolbar.find('.search input'); - $search.val(text || ''); - this.onSearch({currentTarget: $search}); - }; - - BootstrapTable.prototype.expandRow_ = function (expand, index) { - var $tr = this.$body.find(sprintf('> tr[data-index="%s"]', index)); - if ($tr.next().is('tr.detail-view') === (expand ? false : true)) { + }, { + key: 'resetSearch', + value: function resetSearch(text) { + var $search = this.$toolbar.find('.search input'); + $search.val(text || ''); + this.onSearch({ currentTarget: $search }); + } + }, { + key: 'expandRow_', + value: function expandRow_(expand, index) { + var $tr = this.$body.find(Utils.sprintf('> tr[data-index="%s"]', index)); + if ($tr.next().is('tr.detail-view') === !expand) { $tr.find('> td > .detail-icon').click(); + } } - }; + }, { + key: 'expandRow', + value: function expandRow(index) { + this.expandRow_(true, index); + } + }, { + key: 'collapseRow', + value: function collapseRow(index) { + this.expandRow_(false, index); + } + }, { + key: 'expandAllRows', + value: function expandAllRows(isSubTable) { + var _this20 = this; - BootstrapTable.prototype.expandRow = function (index) { - this.expandRow_(true, index); - }; - - BootstrapTable.prototype.collapseRow = function (index) { - this.expandRow_(false, index); - }; - - BootstrapTable.prototype.expandAllRows = function (isSubTable) { - if (isSubTable) { - var $tr = this.$body.find(sprintf('> tr[data-index="%s"]', 0)), - that = this, - detailIcon = null, - executeInterval = false, - idInterval = -1; + if (isSubTable) { + var $tr = this.$body.find(Utils.sprintf('> tr[data-index="%s"]', 0)); + var detailIcon = null; + var executeInterval = false; + var idInterval = -1; if (!$tr.next().is('tr.detail-view')) { - $tr.find('> td > .detail-icon').click(); - executeInterval = true; + $tr.find('> td > .detail-icon').click(); + executeInterval = true; } else if (!$tr.next().next().is('tr.detail-view')) { - $tr.next().find(".detail-icon").click(); - executeInterval = true; + $tr.next().find('.detail-icon').click(); + executeInterval = true; } if (executeInterval) { - try { - idInterval = setInterval(function () { - detailIcon = that.$body.find("tr.detail-view").last().find(".detail-icon"); - if (detailIcon.length > 0) { - detailIcon.click(); - } else { - clearInterval(idInterval); - } - }, 1); - } catch (ex) { + try { + idInterval = setInterval(function () { + detailIcon = _this20.$body.find('tr.detail-view').last().find('.detail-icon'); + if (detailIcon.length > 0) { + detailIcon.click(); + } else { clearInterval(idInterval); - } + } + }, 1); + } catch (ex) { + clearInterval(idInterval); + } } - } else { + } else { var trs = this.$body.children(); for (var i = 0; i < trs.length; i++) { - this.expandRow_(true, $(trs[i]).data("index")); + this.expandRow_(true, $(trs[i]).data('index')); } + } } - }; - - BootstrapTable.prototype.collapseAllRows = function (isSubTable) { - if (isSubTable) { + }, { + key: 'collapseAllRows', + value: function collapseAllRows(isSubTable) { + if (isSubTable) { this.expandRow_(false, 0); - } else { + } else { var trs = this.$body.children(); for (var i = 0; i < trs.length; i++) { - this.expandRow_(false, $(trs[i]).data("index")); + this.expandRow_(false, $(trs[i]).data('index')); } + } } - }; - - BootstrapTable.prototype.updateFormatText = function (name, text) { - if (this.options[sprintf('format%s', name)]) { + }, { + key: 'updateFormatText', + value: function updateFormatText(name, text) { + if (this.options[Utils.sprintf('format%s', name)]) { if (typeof text === 'string') { - this.options[sprintf('format%s', name)] = function () { - return text; - }; + this.options[Utils.sprintf('format%s', name)] = function () { + return text; + }; } else if (typeof text === 'function') { - this.options[sprintf('format%s', name)] = text; + this.options[Utils.sprintf('format%s', name)] = text; } + } + this.initToolbar(); + this.initPagination(); + this.initBody(); } - this.initToolbar(); - this.initPagination(); - this.initBody(); - }; + }]); + + return BootstrapTable; + }(); + + BootstrapTable.DEFAULTS = DEFAULTS; + BootstrapTable.LOCALES = LOCALES; + BootstrapTable.COLUMN_DEFAULTS = COLUMN_DEFAULTS; + BootstrapTable.EVENTS = EVENTS; // BOOTSTRAP TABLE PLUGIN DEFINITION // ======================= - var allowedMethods = [ - 'getOptions', - 'getSelections', 'getAllSelections', 'getData', - 'load', 'append', 'prepend', 'remove', 'removeAll', - 'insertRow', 'updateRow', 'updateCell', 'updateByUniqueId', 'removeByUniqueId', - 'getRowByUniqueId', 'showRow', 'hideRow', 'getHiddenRows', - 'mergeCells', 'refreshColumnTitle', - 'checkAll', 'uncheckAll', 'checkInvert', - 'check', 'uncheck', - 'checkBy', 'uncheckBy', - 'refresh', - 'resetView', - 'resetWidth', - 'destroy', - 'showLoading', 'hideLoading', - 'showColumn', 'hideColumn', 'getHiddenColumns', 'getVisibleColumns', - 'showAllColumns', 'hideAllColumns', - 'filterBy', - 'scrollTo', - 'getScrollPosition', - 'selectPage', 'prevPage', 'nextPage', - 'togglePagination', - 'toggleView', - 'refreshOptions', - 'resetSearch', - 'expandRow', 'collapseRow', 'expandAllRows', 'collapseAllRows', - 'updateFormatText', 'updateCellById' - ]; + var allowedMethods = ['getOptions', 'getSelections', 'getAllSelections', 'getData', 'load', 'append', 'prepend', 'remove', 'removeAll', 'insertRow', 'updateRow', 'updateCell', 'updateByUniqueId', 'removeByUniqueId', 'getRowByUniqueId', 'showRow', 'hideRow', 'getHiddenRows', 'mergeCells', 'refreshColumnTitle', 'checkAll', 'uncheckAll', 'checkInvert', 'check', 'uncheck', 'checkBy', 'uncheckBy', 'refresh', 'resetView', 'resetWidth', 'destroy', 'showLoading', 'hideLoading', 'showColumn', 'hideColumn', 'getHiddenColumns', 'getVisibleColumns', 'showAllColumns', 'hideAllColumns', 'filterBy', 'scrollTo', 'getScrollPosition', 'selectPage', 'prevPage', 'nextPage', 'togglePagination', 'toggleView', 'refreshOptions', 'resetSearch', 'expandRow', 'collapseRow', 'expandAllRows', 'collapseAllRows', 'updateFormatText', 'updateCellById']; + $.BootstrapTable = BootstrapTable; $.fn.bootstrapTable = function (option) { - var value, - args = Array.prototype.slice.call(arguments, 1); + for (var _len3 = arguments.length, args = Array(_len3 > 1 ? _len3 - 1 : 0), _key6 = 1; _key6 < _len3; _key6++) { + args[_key6 - 1] = arguments[_key6]; + } - this.each(function () { - var $this = $(this), - data = $this.data('bootstrap.table'), - options = $.extend({}, BootstrapTable.DEFAULTS, $this.data(), - typeof option === 'object' && option); + var value = void 0; - if (typeof option === 'string') { - if ($.inArray(option, allowedMethods) < 0) { - throw new Error("Unknown method: " + option); - } + this.each(function (i, el) { + var data = $(el).data('bootstrap.table'); + var options = $.extend({}, BootstrapTable.DEFAULTS, $(el).data(), (typeof option === 'undefined' ? 'undefined' : _typeof(option)) === 'object' && option); - if (!data) { - return; - } + if (typeof option === 'string') { + var _data2; - value = data[option].apply(data, args); + if (!(allowedMethods.indexOf(option) !== -1)) { + throw new Error('Unknown method: ' + option); + } - if (option === 'destroy') { - $this.removeData('bootstrap.table'); - } - } + if (!data) { + return; + } - if (!data) { - $this.data('bootstrap.table', (data = new BootstrapTable(this, options))); - } - }); + value = (_data2 = data)[option].apply(_data2, args); - return typeof value === 'undefined' ? this : value; + if (option === 'destroy') { + $(el).removeData('bootstrap.table'); + } + } + + if (!data) { + $(el).data('bootstrap.table', data = new $.BootstrapTable(el, options)); + } + }); + + return typeof value === 'undefined' ? this : value; }; $.fn.bootstrapTable.Constructor = BootstrapTable; @@ -3276,20 +3758,13 @@ $.fn.bootstrapTable.columnDefaults = BootstrapTable.COLUMN_DEFAULTS; $.fn.bootstrapTable.locales = BootstrapTable.LOCALES; $.fn.bootstrapTable.methods = allowedMethods; - $.fn.bootstrapTable.utils = { - bootstrapVersion: bootstrapVersion, - sprintf: sprintf, - compareObjects: compareObjects, - calculateObjectValue: calculateObjectValue, - getItemField: getItemField, - objectKeys: objectKeys, - isIEBrowser: isIEBrowser - }; + $.fn.bootstrapTable.utils = Utils; // BOOTSTRAP TABLE INIT // ======================= $(function () { - $('[data-toggle="table"]').bootstrapTable(); + $('[data-toggle="table"]').bootstrapTable(); }); -})(jQuery); + })(jQuery); +}); \ No newline at end of file diff --git a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.css b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.css index 770b6728..c10637da 100644 --- a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.css +++ b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.css @@ -1 +1,10 @@ -.fixed-table-container .bs-checkbox,.fixed-table-container .no-records-found{text-align:center}.fixed-table-body thead th .th-inner,.table td,.table th{box-sizing:border-box}.bootstrap-table .table{margin-bottom:0!important;border-bottom:1px solid #ddd;border-collapse:collapse!important;border-radius:1px}.bootstrap-table .table:not(.table-condensed),.bootstrap-table .table:not(.table-condensed)>tbody>tr>td,.bootstrap-table .table:not(.table-condensed)>tbody>tr>th,.bootstrap-table .table:not(.table-condensed)>tfoot>tr>td,.bootstrap-table .table:not(.table-condensed)>tfoot>tr>th,.bootstrap-table .table:not(.table-condensed)>thead>tr>td{padding:8px}.bootstrap-table .table.table-no-bordered>tbody>tr>td,.bootstrap-table .table.table-no-bordered>thead>tr>th{border-right:2px solid transparent}.bootstrap-table .table.table-no-bordered>tbody>tr>td:last-child{border-right:none}.fixed-table-container{position:relative;clear:both;border:1px solid #ddd;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px}.fixed-table-container.table-no-bordered{border:1px solid transparent}.fixed-table-footer,.fixed-table-header{overflow:hidden}.fixed-table-footer{border-top:1px solid #ddd}.fixed-table-body{overflow-x:auto;overflow-y:auto;height:100%}.fixed-table-container table{width:100%}.fixed-table-container thead th{height:0;padding:0;margin:0;border-left:1px solid #ddd}.fixed-table-container thead th:focus{outline:transparent solid 0}.fixed-table-container thead th:first-child:not([data-not-first-th]){border-left:none;border-top-left-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px}.fixed-table-container tbody td .th-inner,.fixed-table-container thead th .th-inner{padding:8px;line-height:24px;vertical-align:top;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fixed-table-container thead th .sortable{cursor:pointer;background-position:right;background-repeat:no-repeat;padding-right:30px}.fixed-table-container thead th .both{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAkElEQVQoz7X QMQ5AQBCF4dWQSJxC5wwax1Cq1e7BAdxD5SL+Tq/QCM1oNiJidwox0355mXnG/DrEtIQ6azioNZQxI0ykPhTQIwhCR+BmBYtlK7kLJYwWCcJA9M4qdrZrd8pPjZWPtOqdRQy320YSV17OatFC4euts6z39GYMKRPCTKY9UnPQ6P+GtMRfGtPnBCiqhAeJPmkqAAAAAElFTkSuQmCC')}.fixed-table-container thead th .asc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZ0lEQVQ4y2NgGLKgquEuFxBPAGI2ahhWCsS/gDibUoO0gPgxEP8H4ttArEyuQYxAPBdqEAxPBImTY5gjEL9DM+wTENuQahAvEO9DMwiGdwAxOymGJQLxTyD+jgWDxCMZRsEoGAVoAADeemwtPcZI2wAAAABJRU5ErkJggg==)}.fixed-table-container thead th .desc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZUlEQVQ4y2NgGAWjYBSggaqGu5FA/BOIv2PBIPFEUgxjB+IdQPwfC94HxLykus4GiD+hGfQOiB3J8SojEE9EM2wuSJzcsFMG4ttQgx4DsRalkZENxL+AuJQaMcsGxBOAmGvopk8AVz1sLZgg0bsAAAAASUVORK5CYII=)}.fixed-table-container th.detail{width:30px}.fixed-table-container tbody td{border-left:1px solid #ddd}.fixed-table-container tbody tr:first-child td{border-top:none}.fixed-table-container tbody td:first-child{border-left:none}.fixed-table-container tbody .selected td{background-color:#f5f5f5}.fixed-table-container input[type=radio],.fixed-table-container input[type=checkbox]{margin:0 auto!important}.fixed-table-pagination .pagination-detail,.fixed-table-pagination div.pagination{margin-top:10px;margin-bottom:10px}.fixed-table-pagination div.pagination .pagination{margin:0}.fixed-table-pagination .pagination a{padding:6px 12px;line-height:1.428571429}.fixed-table-pagination .pagination-info{line-height:34px;margin-right:5px}.fixed-table-pagination .btn-group{position:relative;display:inline-block;vertical-align:middle}.fixed-table-pagination .dropup .dropdown-menu{margin-bottom:0}.fixed-table-pagination .page-list{display:inline-block}.fixed-table-toolbar .columns-left{margin-right:5px}.fixed-table-toolbar .columns-right{margin-left:5px}.fixed-table-toolbar .columns label{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.428571429}.fixed-table-toolbar .bs-bars,.fixed-table-toolbar .columns,.fixed-table-toolbar .search{position:relative;margin-top:10px;margin-bottom:10px;line-height:34px}.fixed-table-pagination li.disabled a{pointer-events:none;cursor:default}.fixed-table-loading{display:none;position:absolute;top:42px;right:0;bottom:0;left:0;z-index:99;background-color:#fff;text-align:center}.fixed-table-body .card-view .title{font-weight:700;display:inline-block;min-width:30%;text-align:left!important}.table td,.table th{vertical-align:middle}.fixed-table-toolbar .dropdown-menu{text-align:left;max-height:300px;overflow:auto}.fixed-table-toolbar .btn-group>.btn-group{display:inline-block;margin-left:-1px!important}.fixed-table-toolbar .btn-group>.btn-group>.btn{border-radius:0}.fixed-table-toolbar .btn-group>.btn-group:first-child>.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.fixed-table-toolbar .btn-group>.btn-group:last-child>.btn{border-top-right-radius:4px;border-bottom-right-radius:4px}.bootstrap-table .table>thead>tr>th{vertical-align:bottom;border-bottom:1px solid #ddd}.bootstrap-table .table thead>tr>th{padding:0;margin:0}.bootstrap-table .fixed-table-footer tbody>tr>td{padding:0!important}.bootstrap-table .fixed-table-footer .table{border-bottom:none;border-radius:0;padding:0!important}.bootstrap-table .pull-right .dropdown-menu{right:0;left:auto}p.fixed-table-scroll-inner{width:100%;height:200px}div.fixed-table-scroll-outer{top:0;left:0;visibility:hidden;width:200px;height:150px;overflow:hidden}.fixed-table-pagination:after,.fixed-table-toolbar:after{content:"";display:block;clear:both}.fullscreen{position:fixed;top:0;left:0;z-index:1050;width:100%!important;background:#FFF} \ No newline at end of file +/** + * bootstrap-table - An extended Bootstrap table with radio, checkbox, sort, pagination, and other added features. (supports twitter bootstrap v2 and v3). + * + * @version v1.14.2 + * @homepage https://bootstrap-table.com + * @author wenzhixin (http://wenzhixin.net.cn/) + * @license MIT + */ + +@charset "UTF-8";.bootstrap-table .fixed-table-toolbar:after{content:"";display:block;clear:both}.bootstrap-table .fixed-table-toolbar .bs-bars,.bootstrap-table .fixed-table-toolbar .search,.bootstrap-table .fixed-table-toolbar .columns{position:relative;margin-top:10px;margin-bottom:10px}.bootstrap-table .fixed-table-toolbar .columns .btn-group>.btn-group{display:inline-block;margin-left:-1px!important}.bootstrap-table .fixed-table-toolbar .columns .btn-group>.btn-group:first-child>.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.bootstrap-table .fixed-table-toolbar .columns .btn-group>.btn-group:last-child>.btn{border-top-right-radius:4px;border-bottom-right-radius:4px}.bootstrap-table .fixed-table-toolbar .columns .btn-group>.btn-group>.btn{border-radius:0}.bootstrap-table .fixed-table-toolbar .columns .dropdown-menu{text-align:left;max-height:300px;overflow:auto}.bootstrap-table .fixed-table-toolbar .columns label{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429}.bootstrap-table .fixed-table-toolbar .columns-left{margin-right:5px}.bootstrap-table .fixed-table-toolbar .columns-right{margin-left:5px}.bootstrap-table .fixed-table-toolbar .pull-right .dropdown-menu{right:0;left:auto}.bootstrap-table .fixed-table-container{position:relative;clear:both}.bootstrap-table .fixed-table-container.fixed-height:not(.has-footer){border-bottom:1px solid #dee2e6}.bootstrap-table .fixed-table-container.fixed-height .fixed-table-border{border-left:1px solid #dee2e6;border-right:1px solid #dee2e6}.bootstrap-table .fixed-table-container.fixed-height .table thead th{border-bottom:1px solid #dee2e6}.bootstrap-table .fixed-table-container.fixed-height .table-dark thead th{border-bottom:1px solid #32383e}.bootstrap-table .fixed-table-container .fixed-table-header{overflow:hidden}.bootstrap-table .fixed-table-container .fixed-table-body{overflow-x:auto;overflow-y:auto;height:100%}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading{align-items:center;background:#fff;display:none;justify-content:center;position:absolute;bottom:0;width:100%;z-index:1000}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap{align-items:baseline;display:flex;justify-content:center}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .loading-text{font-size:2rem;margin-right:6px}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-wrap{align-items:center;display:flex;justify-content:center}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-dot,.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-wrap:after,.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-wrap:before{content:"";animation-duration:1.5s;animation-iteration-count:infinite;animation-name:LOADING;background:#212529;border-radius:50%;display:block;height:5px;margin:0 4px;opacity:0;width:5px}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-dot{animation-delay:.3s}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading .loading-wrap .animation-wrap:after{animation-delay:.6s}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading.table-dark{background:#212529}.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading.table-dark .animation-dot,.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading.table-dark .animation-wrap:after,.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading.table-dark .animation-wrap:before{background:#fff}.bootstrap-table .fixed-table-container .table{width:100%;margin-bottom:0!important}.bootstrap-table .fixed-table-container .table th,.bootstrap-table .fixed-table-container .table td{vertical-align:middle;box-sizing:border-box}.bootstrap-table .fixed-table-container .table thead th{vertical-align:bottom;padding:0;margin:0}.bootstrap-table .fixed-table-container .table thead th:focus{outline:0 solid transparent}.bootstrap-table .fixed-table-container .table thead th.detail{width:30px}.bootstrap-table .fixed-table-container .table thead th .th-inner{padding:.75rem;vertical-align:bottom;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bootstrap-table .fixed-table-container .table thead th .sortable{cursor:pointer;background-position:right;background-repeat:no-repeat;padding-right:30px}.bootstrap-table .fixed-table-container .table thead th .both{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAkElEQVQoz7X QMQ5AQBCF4dWQSJxC5wwax1Cq1e7BAdxD5SL+Tq/QCM1oNiJidwox0355mXnG/DrEtIQ6azioNZQxI0ykPhTQIwhCR+BmBYtlK7kLJYwWCcJA9M4qdrZrd8pPjZWPtOqdRQy320YSV17OatFC4euts6z39GYMKRPCTKY9UnPQ6P+GtMRfGtPnBCiqhAeJPmkqAAAAAElFTkSuQmCC")}.bootstrap-table .fixed-table-container .table thead th .asc{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZ0lEQVQ4y2NgGLKgquEuFxBPAGI2ahhWCsS/gDibUoO0gPgxEP8H4ttArEyuQYxAPBdqEAxPBImTY5gjEL9DM+wTENuQahAvEO9DMwiGdwAxOymGJQLxTyD+jgWDxCMZRsEoGAVoAADeemwtPcZI2wAAAABJRU5ErkJggg==")}.bootstrap-table .fixed-table-container .table thead th .desc{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZUlEQVQ4y2NgGAWjYBSggaqGu5FA/BOIv2PBIPFEUgxjB+IdQPwfC94HxLykus4GiD+hGfQOiB3J8SojEE9EM2wuSJzcsFMG4ttQgx4DsRalkZENxL+AuJQaMcsGxBOAmGvopk8AVz1sLZgg0bsAAAAASUVORK5CYII= ")}.bootstrap-table .fixed-table-container .table tbody tr.selected td{background-color:rgba(0,0,0,0.075)}.bootstrap-table .fixed-table-container .table tbody tr.no-records-found{text-align:center}.bootstrap-table .fixed-table-container .table tbody tr .card-view .card-view-title{font-weight:bold;display:inline-block;min-width:30%;text-align:left!important}.bootstrap-table .fixed-table-container .table .bs-checkbox{text-align:center}.bootstrap-table .fixed-table-container .table input[type=radio],.bootstrap-table .fixed-table-container .table input[type=checkbox]{margin:0 auto!important}.bootstrap-table .fixed-table-container .table.table-sm .th-inner{padding:.3rem}.bootstrap-table .fixed-table-container .fixed-table-footer{overflow:hidden}.bootstrap-table .fixed-table-pagination:after{content:"";display:block;clear:both}.bootstrap-table .fixed-table-pagination>.pagination-detail,.bootstrap-table .fixed-table-pagination>.pagination{margin-top:10px;margin-bottom:10px}.bootstrap-table .fixed-table-pagination>.pagination-detail .pagination-info{line-height:34px;margin-right:5px}.bootstrap-table .fixed-table-pagination>.pagination-detail .page-list{display:inline-block}.bootstrap-table .fixed-table-pagination>.pagination-detail .page-list .btn-group{position:relative;display:inline-block;vertical-align:middle}.bootstrap-table .fixed-table-pagination>.pagination-detail .page-list .btn-group .dropdown-menu{margin-bottom:0}.bootstrap-table .fixed-table-pagination>.pagination ul.pagination{margin:0}.bootstrap-table .fixed-table-pagination>.pagination ul.pagination a{padding:6px 12px;line-height:1.428571429}.bootstrap-table .fixed-table-pagination>.pagination ul.pagination li.page-intermediate a{color:#c8c8c8}.bootstrap-table .fixed-table-pagination>.pagination ul.pagination li.page-intermediate a:before{content:"⬅"}.bootstrap-table .fixed-table-pagination>.pagination ul.pagination li.page-intermediate a:after{content:"➡"}.bootstrap-table .fixed-table-pagination>.pagination ul.pagination li.disabled a{pointer-events:none;cursor:default}.bootstrap-table.fullscreen{position:fixed;top:0;left:0;z-index:1050;width:100%!important;background:#FFF}div.fixed-table-scroll-inner{width:100%;height:200px}div.fixed-table-scroll-outer{top:0;left:0;visibility:hidden;width:200px;height:150px;overflow:hidden}@keyframes LOADING{0%{opacity:0}50%{opacity:1}to{opacity:0}} \ No newline at end of file diff --git a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.js b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.js index ae407d4c..cf033584 100644 --- a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.js +++ b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.js @@ -1,9 +1,10 @@ -/* -* bootstrap-table - v1.12.1 - 2018-03-12 -* https://github.com/wenzhixin/bootstrap-table -* Copyright (c) 2018 zhixin wen -* Licensed MIT License -*/ -!function(a){"use strict";var b=3;try{b=parseInt(a.fn.dropdown.Constructor.VERSION,10)}catch(c){}var d={3:{buttonsClass:"default",iconsPrefix:"glyphicon",icons:{paginationSwitchDown:"glyphicon-collapse-down icon-chevron-down",paginationSwitchUp:"glyphicon-collapse-up icon-chevron-up",refresh:"glyphicon-refresh icon-refresh",toggleOff:"glyphicon-list-alt icon-list-alt",toggleOn:"glyphicon-list-alt icon-list-alt",columns:"glyphicon-th icon-th",detailOpen:"glyphicon-plus icon-plus",detailClose:"glyphicon-minus icon-minus",fullscreen:"glyphicon-fullscreen"},pullClass:"pull",toobarDropdowHtml:['"],toobarDropdowItemHtml:'
  • ',pageDropdownHtml:['"],pageDropdownItemHtml:''},4:{buttonsClass:"secondary",iconsPrefix:"fa",icons:{paginationSwitchDown:"fa-toggle-down",paginationSwitchUp:"fa-toggle-up",refresh:"fa-refresh",toggleOff:"fa-toggle-off",toggleOn:"fa-toggle-on",columns:"fa-th-list",detailOpen:"fa-plus",detailClose:"fa-minus",fullscreen:"fa-arrows-alt"},pullClass:"float",toobarDropdowHtml:['"],toobarDropdowItemHtml:'',pageDropdownHtml:['"],pageDropdownItemHtml:'%s'}}[b],e=null,f=function(a){var b=arguments,c=!0,d=1;return a=a.replace(/%s/g,function(){var a=b[d++];return"undefined"==typeof a?(c=!1,""):a}),c?a:""},g=function(b,c,d,e){var f="";return a.each(b,function(a,b){return b[c]===e?(f=b[d],!1):!0}),f},h=function(b){var c,d,e,f=0,g=[];for(c=0;cd;d++)g[c][d]=!1;for(c=0;ce;e++)g[c+e][k]=!0;for(e=0;j>e;e++)g[c][k+e]=!0}},i=function(){if(null===e){var b,c,d=a("

    ").addClass("fixed-table-scroll-inner"),f=a("

    ").addClass("fixed-table-scroll-outer");f.append(d),a("body").append(f),b=d[0].offsetWidth,f.css("overflow","scroll"),c=d[0].offsetWidth,b===c&&(c=f[0].clientWidth),f.remove(),e=b-c}return e},j=function(b,c,d,e){var g=c;if("string"==typeof c){var h=c.split(".");h.length>1?(g=window,a.each(h,function(a,b){g=g[b]})):g=window[c]}return"object"==typeof g?g:"function"==typeof g?g.apply(b,d||[]):!g&&"string"==typeof c&&f.apply(this,[c].concat(d))?f.apply(this,[c].concat(d)):e},k=function(b,c,d){var e=Object.getOwnPropertyNames||function(a){var b=[];for(var c in a)a.hasOwnProperty(c)&&b.push(c);return b},f=e(b),g=e(c),h="";if(d&&f.length!==g.length)return!1;for(var i=0;i-1&&b[h]!==c[h])return!1;return!0},l=function(a){return"string"==typeof a?a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/`/g,"`"):a},m=function(a){for(var b in a){var c=b.split(/(?=[A-Z])/).join("-").toLowerCase();c!==b&&(a[c]=a[b],delete a[b])}return a},n=function(a,b,c){var d=a;if("string"!=typeof b||a.hasOwnProperty(b))return c?l(a[b]):a[b];var e=b.split(".");for(var f in e)e.hasOwnProperty(f)&&(d=d&&d[e[f]]);return c?l(d):d},o=function(){return!!(navigator.userAgent.indexOf("MSIE ")>0||navigator.userAgent.match(/Trident.*rv\:11\./))},p=function(){Object.keys||(Object.keys=function(){var a=Object.prototype.hasOwnProperty,b=!{toString:null}.propertyIsEnumerable("toString"),c=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],d=c.length;return function(e){if("object"!=typeof e&&("function"!=typeof e||null===e))throw new TypeError("Object.keys called on non-object");var f,g,h=[];for(f in e)a.call(e,f)&&h.push(f);if(b)for(g=0;d>g;g++)a.call(e,c[g])&&h.push(c[g]);return h}}())},q=function(b,c){this.options=c,this.$el=a(b),this.$el_=this.$el.clone(),this.timeoutId_=0,this.timeoutFooter_=0,this.init()};q.DEFAULTS={classes:"table table-hover",sortClass:void 0,locale:void 0,height:void 0,undefinedText:"-",sortName:void 0,sortOrder:"asc",sortStable:!1,rememberOrder:!1,striped:!1,columns:[[]],data:[],totalField:"total",dataField:"rows",method:"get",url:void 0,ajax:void 0,cache:!0,contentType:"application/json",dataType:"json",ajaxOptions:{},queryParams:function(a){return a},queryParamsType:"limit",responseHandler:function(a){return a},pagination:!1,onlyInfoPagination:!1,paginationLoop:!0,sidePagination:"client",totalRows:0,pageNumber:1,pageSize:10,pageList:[10,25,50,100],paginationHAlign:"right",paginationVAlign:"bottom",paginationDetailHAlign:"left",paginationPreText:"‹",paginationNextText:"›",search:!1,searchOnEnterKey:!1,strictSearch:!1,searchAlign:"right",selectItemName:"btSelectItem",showHeader:!0,showFooter:!1,showColumns:!1,showPaginationSwitch:!1,showRefresh:!1,showToggle:!1,showFullscreen:!1,smartDisplay:!0,escape:!1,minimumCountColumns:1,idField:void 0,uniqueId:void 0,cardView:!1,detailView:!1,detailFormatter:function(){return""},detailFilter:function(){return!0},trimOnSearch:!0,clickToSelect:!1,singleSelect:!1,toolbar:void 0,toolbarAlign:"left",buttonsToolbar:void 0,buttonsAlign:"right",checkboxHeader:!0,sortable:!0,silentSort:!0,maintainSelected:!1,searchTimeOut:500,searchText:"",iconSize:void 0,buttonsClass:d.buttonsClass,iconsPrefix:d.iconsPrefix,icons:d.icons,customSearch:a.noop,customSort:a.noop,ignoreClickToSelectOn:function(b){return a.inArray(b.tagName,["A","BUTTON"])},rowStyle:function(){return{}},rowAttributes:function(){return{}},footerStyle:function(){return{}},onAll:function(){return!1},onClickCell:function(){return!1},onDblClickCell:function(){return!1},onClickRow:function(){return!1},onDblClickRow:function(){return!1},onSort:function(){return!1},onCheck:function(){return!1},onUncheck:function(){return!1},onCheckAll:function(){return!1},onUncheckAll:function(){return!1},onCheckSome:function(){return!1},onUncheckSome:function(){return!1},onLoadSuccess:function(){return!1},onLoadError:function(){return!1},onColumnSwitch:function(){return!1},onPageChange:function(){return!1},onSearch:function(){return!1},onToggle:function(){return!1},onPreBody:function(){return!1},onPostBody:function(){return!1},onPostHeader:function(){return!1},onExpandRow:function(){return!1},onCollapseRow:function(){return!1},onRefreshOptions:function(){return!1},onRefresh:function(){return!1},onResetView:function(){return!1},onScrollBody:function(){return!1}},q.LOCALES={},q.LOCALES["en-US"]=q.LOCALES.en={formatLoadingMessage:function(){return"Loading, please wait..."},formatRecordsPerPage:function(a){return f("%s rows per page",a)},formatShowingRows:function(a,b,c){return f("Showing %s to %s of %s rows",a,b,c)},formatDetailPagination:function(a){return f("Showing %s rows",a)},formatSearch:function(){return"Search"},formatNoMatches:function(){return"No matching records found"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatRefresh:function(){return"Refresh"},formatToggle:function(){return"Toggle"},formatFullscreen:function(){return"Fullscreen"},formatColumns:function(){return"Columns"},formatAllRows:function(){return"All"}},a.extend(q.DEFAULTS,q.LOCALES["en-US"]),q.COLUMN_DEFAULTS={radio:!1,checkbox:!1,checkboxEnabled:!0,field:void 0,title:void 0,titleTooltip:void 0,"class":void 0,align:void 0,halign:void 0,falign:void 0,valign:void 0,width:void 0,sortable:!1,order:"asc",visible:!0,switchable:!0,clickToSelect:!0,formatter:void 0,footerFormatter:void 0,events:void 0,sorter:void 0,sortName:void 0,cellStyle:void 0,searchable:!0,searchFormatter:!0,cardVisible:!0,escape:!1,showSelectTitle:!1},q.EVENTS={"all.bs.table":"onAll","click-cell.bs.table":"onClickCell","dbl-click-cell.bs.table":"onDblClickCell","click-row.bs.table":"onClickRow","dbl-click-row.bs.table":"onDblClickRow","sort.bs.table":"onSort","check.bs.table":"onCheck","uncheck.bs.table":"onUncheck","check-all.bs.table":"onCheckAll","uncheck-all.bs.table":"onUncheckAll","check-some.bs.table":"onCheckSome","uncheck-some.bs.table":"onUncheckSome","load-success.bs.table":"onLoadSuccess","load-error.bs.table":"onLoadError","column-switch.bs.table":"onColumnSwitch","page-change.bs.table":"onPageChange","search.bs.table":"onSearch","toggle.bs.table":"onToggle","pre-body.bs.table":"onPreBody","post-body.bs.table":"onPostBody","post-header.bs.table":"onPostHeader","expand-row.bs.table":"onExpandRow","collapse-row.bs.table":"onCollapseRow","refresh-options.bs.table":"onRefreshOptions","reset-view.bs.table":"onResetView","refresh.bs.table":"onRefresh","scroll-body.bs.table":"onScrollBody"},q.prototype.init=function(){this.initLocale(),this.initContainer(),this.initTable(),this.initHeader(),this.initData(),this.initHiddenRows(),this.initFooter(),this.initToolbar(),this.initPagination(),this.initBody(),this.initSearchText(),this.initServer()},q.prototype.initLocale=function(){if(this.options.locale){var b=this.options.locale.split(/-|_/);b[0].toLowerCase(),b[1]&&b[1].toUpperCase(),a.fn.bootstrapTable.locales[this.options.locale]?a.extend(this.options,a.fn.bootstrapTable.locales[this.options.locale]):a.fn.bootstrapTable.locales[b.join("-")]?a.extend(this.options,a.fn.bootstrapTable.locales[b.join("-")]):a.fn.bootstrapTable.locales[b[0]]&&a.extend(this.options,a.fn.bootstrapTable.locales[b[0]])}},q.prototype.initContainer=function(){this.$container=a(['
    ','
    ',"top"===this.options.paginationVAlign||"both"===this.options.paginationVAlign?'
    ':"",'
    ','
    ','
    ','
    ',this.options.formatLoadingMessage(),"
    ","
    ",'',"
    ","bottom"===this.options.paginationVAlign||"both"===this.options.paginationVAlign?'
    ':"","
    "].join("")),this.$container.insertAfter(this.$el),this.$tableContainer=this.$container.find(".fixed-table-container"),this.$tableHeader=this.$container.find(".fixed-table-header"),this.$tableBody=this.$container.find(".fixed-table-body"),this.$tableLoading=this.$container.find(".fixed-table-loading"),this.$tableFooter=this.$container.find(".fixed-table-footer"),this.$toolbar=this.options.buttonsToolbar?a("body").find(this.options.buttonsToolbar):this.$container.find(".fixed-table-toolbar"),this.$pagination=this.$container.find(".fixed-table-pagination"),this.$tableBody.append(this.$el),this.$container.after('
    '),this.$el.addClass(this.options.classes),this.options.striped&&this.$el.addClass("table-striped"),-1!==a.inArray("table-no-bordered",this.options.classes.split(" "))&&this.$tableContainer.addClass("table-no-bordered")},q.prototype.initTable=function(){var b=this,c=[],d=[];if(this.$header=this.$el.find(">thead"),this.$header.length||(this.$header=a("").appendTo(this.$el)),this.$header.find("tr").each(function(){var b=[];a(this).find("th").each(function(){"undefined"!=typeof a(this).data("field")&&a(this).data("field",a(this).data("field")+""),b.push(a.extend({},{title:a(this).html(),"class":a(this).attr("class"),titleTooltip:a(this).attr("title"),rowspan:a(this).attr("rowspan")?+a(this).attr("rowspan"):void 0,colspan:a(this).attr("colspan")?+a(this).attr("colspan"):void 0},a(this).data()))}),c.push(b)}),a.isArray(this.options.columns[0])||(this.options.columns=[this.options.columns]),this.options.columns=a.extend(!0,[],c,this.options.columns),this.columns=[],this.fieldsColumnsIndex=[],h(this.options.columns),a.each(this.options.columns,function(c,d){a.each(d,function(d,e){e=a.extend({},q.COLUMN_DEFAULTS,e),"undefined"!=typeof e.fieldIndex&&(b.columns[e.fieldIndex]=e,b.fieldsColumnsIndex[e.field]=e.fieldIndex),b.options.columns[c][d]=e})}),!this.options.data.length){var e=[];this.$el.find(">tbody>tr").each(function(c){var f={};f._id=a(this).attr("id"),f._class=a(this).attr("class"),f._data=m(a(this).data()),a(this).find(">td").each(function(d){for(var g,h,i=a(this),j=+i.attr("colspan")||1,k=+i.attr("rowspan")||1;e[c]&&e[c][d];d++);for(g=d;d+j>g;g++)for(h=c;c+k>h;h++)e[h]||(e[h]=[]),e[h][g]=!0;var l=b.columns[d].field;f[l]=a(this).html(),f["_"+l+"_id"]=a(this).attr("id"),f["_"+l+"_class"]=a(this).attr("class"),f["_"+l+"_rowspan"]=a(this).attr("rowspan"),f["_"+l+"_colspan"]=a(this).attr("colspan"),f["_"+l+"_title"]=a(this).attr("title"),f["_"+l+"_data"]=m(a(this).data())}),d.push(f)}),this.options.data=d,d.length&&(this.fromHtml=!0)}},q.prototype.initHeader=function(){var b=this,c={},d=[];this.header={fields:[],styles:[],classes:[],formatters:[],events:[],sorters:[],sortNames:[],cellStyles:[],searchables:[]},a.each(this.options.columns,function(e,g){d.push(""),0===e&&!b.options.cardView&&b.options.detailView&&d.push(f('
    ',b.options.columns.length)),a.each(g,function(a,e){var g="",h="",i="",j="",k=f(' class="%s"',e["class"]),m=(b.options.sortOrder||e.order,"px"),n=e.width;if(void 0===e.width||b.options.cardView||"string"==typeof e.width&&-1!==e.width.indexOf("%")&&(m="%"),e.width&&"string"==typeof e.width&&(n=e.width.replace("%","").replace("px","")),h=f("text-align: %s; ",e.halign?e.halign:e.align),i=f("text-align: %s; ",e.align),j=f("vertical-align: %s; ",e.valign),j+=f("width: %s; ",!e.checkbox&&!e.radio||n?n?n+m:void 0:e.showSelectTitle?void 0:"36px"),"undefined"!=typeof e.fieldIndex){if(b.header.fields[e.fieldIndex]=e.field,b.header.styles[e.fieldIndex]=i+j,b.header.classes[e.fieldIndex]=k,b.header.formatters[e.fieldIndex]=e.formatter,b.header.events[e.fieldIndex]=e.events,b.header.sorters[e.fieldIndex]=e.sorter,b.header.sortNames[e.fieldIndex]=e.sortName,b.header.cellStyles[e.fieldIndex]=e.cellStyle,b.header.searchables[e.fieldIndex]=e.searchable,!e.visible)return;if(b.options.cardView&&!e.cardVisible)return;c[e.field]=e}d.push(""),d.push(f('
    ',b.options.sortable&&e.sortable?"sortable both":"")),g=b.options.escape?l(e.title):e.title;var o=g;e.checkbox&&(g="",!b.options.singleSelect&&b.options.checkboxHeader&&(g=''),b.header.stateField=e.field),e.radio&&(g="",b.header.stateField=e.field,b.options.singleSelect=!0),!g&&e.showSelectTitle&&(g+=o),d.push(g),d.push("
    "),d.push('
    '),d.push("
    "),d.push("")}),d.push("")}),this.$header.html(d.join("")),this.$header.find("th[data-field]").each(function(){a(this).data(c[a(this).data("field")])}),this.$container.off("click",".th-inner").on("click",".th-inner",function(c){var d=a(this);return b.options.detailView&&!d.parent().hasClass("bs-checkbox")&&d.closest(".bootstrap-table")[0]!==b.$container[0]?!1:void(b.options.sortable&&d.parent().data().sortable&&b.onSort(c))}),this.$header.children().children().off("keypress").on("keypress",function(c){if(b.options.sortable&&a(this).data().sortable){var d=c.keyCode||c.which;13==d&&b.onSort(c)}}),a(window).off("resize.bootstrap-table"),!this.options.showHeader||this.options.cardView?(this.$header.hide(),this.$tableHeader.hide(),this.$tableLoading.css("top",0)):(this.$header.show(),this.$tableHeader.show(),this.$tableLoading.css("top",this.$header.outerHeight()+1),this.getCaret(),a(window).on("resize.bootstrap-table",a.proxy(this.resetWidth,this))),this.$selectAll=this.$header.find('[name="btSelectAll"]'),this.$selectAll.off("click").on("click",function(){var c=a(this).prop("checked");b[c?"checkAll":"uncheckAll"](),b.updateSelected()})},q.prototype.initFooter=function(){!this.options.showFooter||this.options.cardView?this.$tableFooter.hide():this.$tableFooter.show()},q.prototype.initData=function(a,b){this.options.data="append"===b?this.options.data.concat(a):"prepend"===b?[].concat(a).concat(this.options.data):a||this.options.data,this.data=this.options.data,"server"!==this.options.sidePagination&&this.initSort()},q.prototype.initSort=function(){var b=this,c=this.options.sortName,d="desc"===this.options.sortOrder?-1:1,e=a.inArray(this.options.sortName,this.header.fields),g=0;return this.options.customSort!==a.noop?void this.options.customSort.apply(this,[this.options.sortName,this.options.sortOrder]):void(-1!==e&&(this.options.sortStable&&a.each(this.data,function(a,b){b._position=a}),this.data.sort(function(f,g){b.header.sortNames[e]&&(c=b.header.sortNames[e]);var h=n(f,c,b.options.escape),i=n(g,c,b.options.escape),k=j(b.header,b.header.sorters[e],[h,i,f,g]);return void 0!==k?b.options.sortStable&&0===k?f._position-g._position:d*k:((void 0===h||null===h)&&(h=""),(void 0===i||null===i)&&(i=""),b.options.sortStable&&h===i?(h=f._position,i=g._position,f._position-g._position):a.isNumeric(h)&&a.isNumeric(i)?(h=parseFloat(h),i=parseFloat(i),i>h?-1*d:d):h===i?0:("string"!=typeof h&&(h=h.toString()),-1===h.localeCompare(i)?-1*d:d))}),void 0!==this.options.sortClass&&(clearTimeout(g),g=setTimeout(function(){b.$el.removeClass(b.options.sortClass);var a=b.$header.find(f('[data-field="%s"]',b.options.sortName).index()+1);b.$el.find(f("tr td:nth-child(%s)",a)).addClass(b.options.sortClass)},250))))},q.prototype.onSort=function(b){var c="keypress"===b.type?a(b.currentTarget):a(b.currentTarget).parent(),d=this.$header.find("th").eq(c.index());return this.$header.add(this.$header_).find("span.order").remove(),this.options.sortName===c.data("field")?this.options.sortOrder="asc"===this.options.sortOrder?"desc":"asc":(this.options.sortName=c.data("field"),this.options.sortOrder=this.options.rememberOrder?"asc"===c.data("order")?"desc":"asc":this.columns[this.fieldsColumnsIndex[c.data("field")]].order),this.trigger("sort",this.options.sortName,this.options.sortOrder),c.add(d).data("order",this.options.sortOrder),this.getCaret(),"server"===this.options.sidePagination?void this.initServer(this.options.silentSort):(this.initSort(),void this.initBody())},q.prototype.initToolbar=function(){var b,c,e=this,g=[],h=0,i=0;this.$toolbar.find(".bs-bars").children().length&&a("body").append(a(this.options.toolbar)),this.$toolbar.html(""),("string"==typeof this.options.toolbar||"object"==typeof this.options.toolbar)&&a(f('
    ',d.pullClass,this.options.toolbarAlign)).appendTo(this.$toolbar).append(a(this.options.toolbar)),g=[f('
    ',this.options.buttonsAlign,d.pullClass,this.options.buttonsAlign)],"string"==typeof this.options.icons&&(this.options.icons=j(null,this.options.icons)),this.options.showPaginationSwitch&&g.push(f('"),this.options.showFullscreen&&this.$toolbar.find('button[name="fullscreen"]').off("click").on("click",a.proxy(this.toggleFullscreen,this)),this.options.showRefresh&&g.push(f('"),this.options.showToggle&&g.push(f('"),this.options.showFullscreen&&g.push(f('"),this.options.showColumns&&(g.push(f('
    ',this.options.formatColumns()),'",d.toobarDropdowHtml[0]),a.each(this.columns,function(a,b){if(!(b.radio||b.checkbox||e.options.cardView&&!b.cardVisible)){var c=b.visible?' checked="checked"':"";b.switchable&&(g.push(f(d.toobarDropdowItemHtml,f(' %s',b.field,a,c,b.title))),i++)}}),g.push(d.toobarDropdowHtml[1],"
    ")),g.push("
    "),(this.showToolbar||g.length>2)&&this.$toolbar.append(g.join("")),this.options.showPaginationSwitch&&this.$toolbar.find('button[name="paginationSwitch"]').off("click").on("click",a.proxy(this.togglePagination,this)),this.options.showRefresh&&this.$toolbar.find('button[name="refresh"]').off("click").on("click",a.proxy(this.refresh,this)),this.options.showToggle&&this.$toolbar.find('button[name="toggle"]').off("click").on("click",function(){e.toggleView()}),this.options.showColumns&&(b=this.$toolbar.find(".keep-open"),i<=this.options.minimumCountColumns&&b.find("input").prop("disabled",!0),b.find("li").off("click").on("click",function(a){a.stopImmediatePropagation()}),b.find("input").off("click").on("click",function(){var b=a(this);e.toggleColumn(a(this).val(),b.prop("checked"),!1),e.trigger("column-switch",a(this).data("field"),b.prop("checked"))})),this.options.search&&(g=[],g.push(f('"),this.$toolbar.append(g.join("")),c=this.$toolbar.find(".search input"),c.off("keyup drop blur").on("keyup drop blur",function(b){e.options.searchOnEnterKey&&13!==b.keyCode||a.inArray(b.keyCode,[37,38,39,40])>-1||(clearTimeout(h),h=setTimeout(function(){e.onSearch(b)},e.options.searchTimeOut))}),o()&&c.off("mouseup").on("mouseup",function(a){clearTimeout(h),h=setTimeout(function(){e.onSearch(a)},e.options.searchTimeOut)}))},q.prototype.onSearch=function(b){var c=a.trim(a(b.currentTarget).val());this.options.trimOnSearch&&a(b.currentTarget).val()!==c&&a(b.currentTarget).val(c),c!==this.searchText&&(this.searchText=c,this.options.searchText=c,this.options.pageNumber=1,this.initSearch(),b.firedByInitSearchText?"client"===this.options.sidePagination&&this.updatePagination():this.updatePagination(),this.trigger("search",c))},q.prototype.initSearch=function(){var b=this;if("server"!==this.options.sidePagination){if(this.options.customSearch!==a.noop)return void window[this.options.customSearch].apply(this,[this.searchText]);var c=this.searchText&&(this.options.escape?l(this.searchText):this.searchText).toLowerCase(),d=a.isEmptyObject(this.filterColumns)?null:this.filterColumns;this.data=d?a.grep(this.options.data,function(b){for(var c in d)if(a.isArray(d[c])&&-1===a.inArray(b[c],d[c])||!a.isArray(d[c])&&b[c]!==d[c])return!1;return!0}):this.options.data,this.data=c?a.grep(this.data,function(d,e){for(var f=0;f-1&&(m=!0)}this.totalPages=~~((this.options.totalRows-1)/this.options.pageSize)+1,this.options.totalPages=this.totalPages}if(this.totalPages>0&&this.options.pageNumber>this.totalPages&&(this.options.pageNumber=this.totalPages),this.pageFrom=(this.options.pageNumber-1)*this.options.pageSize+1,this.pageTo=this.options.pageNumber*this.options.pageSize,this.pageTo>this.options.totalRows&&(this.pageTo=this.options.totalRows),l.push(f('
    ',d.pullClass,this.options.paginationDetailHAlign),'',this.options.onlyInfoPagination?this.options.formatDetailPagination(this.options.totalRows):this.options.formatShowingRows(this.pageFrom,this.pageTo,this.options.totalRows),""),!this.options.onlyInfoPagination){l.push('');var q=[f('',"top"===this.options.paginationVAlign||"both"===this.options.paginationVAlign?"dropdown":"dropup"),'",d.pageDropdownHtml[0]];if("string"==typeof this.options.pageList){var r=this.options.pageList.replace("[","").replace("]","").replace(/ /g,"").split(",");o=[],a.each(r,function(a,b){o.push(b.toUpperCase()===k.options.formatAllRows().toUpperCase()||"UNLIMITED"===b.toUpperCase()?k.options.formatAllRows():+b)})}for(a.each(o,function(a,b){if(!k.options.smartDisplay||0===a||o[a-1]"),l.push(this.options.formatRecordsPerPage(q.join(""))),l.push(""),l.push("
    ",f('")}this.$pagination.html(l.join("")),this.options.onlyInfoPagination||(g=this.$pagination.find(".page-list a"),h=this.$pagination.find(".page-pre"),i=this.$pagination.find(".page-next"),j=this.$pagination.find(".page-item").not(".page-next, .page-pre"),this.options.smartDisplay&&(this.totalPages<=1&&this.$pagination.find("div.pagination").hide(),(o.length<2||this.options.totalRows<=o[0])&&this.$pagination.find("span.page-list").hide(),this.$pagination[this.getData().length?"show":"hide"]()),this.options.paginationLoop||(1===this.options.pageNumber&&h.addClass("disabled"),this.options.pageNumber===this.totalPages&&i.addClass("disabled")),m&&(this.options.pageSize=this.options.formatAllRows()),g.off("click").on("click",a.proxy(this.onPageListChange,this)),h.off("click").on("click",a.proxy(this.onPagePre,this)),i.off("click").on("click",a.proxy(this.onPageNext,this)),j.off("click").on("click",a.proxy(this.onPageNumber,this)))},q.prototype.updatePagination=function(b){b&&a(b.currentTarget).hasClass("disabled")||(this.options.maintainSelected||this.resetRows(),this.initPagination(),"server"===this.options.sidePagination?this.initServer():this.initBody(),this.trigger("page-change",this.options.pageNumber,this.options.pageSize))},q.prototype.onPageListChange=function(b){b.preventDefault();var c=a(b.currentTarget);return c.parent().addClass("active").siblings().removeClass("active"),this.options.pageSize=c.text().toUpperCase()===this.options.formatAllRows().toUpperCase()?this.options.formatAllRows():+c.text(),this.$toolbar.find(".page-size").text(this.options.pageSize),this.updatePagination(b),!1},q.prototype.onPagePre=function(a){return a.preventDefault(),this.options.pageNumber-1===0?this.options.pageNumber=this.options.totalPages:this.options.pageNumber--,this.updatePagination(a),!1},q.prototype.onPageNext=function(a){return a.preventDefault(),this.options.pageNumber+1>this.options.totalPages?this.options.pageNumber=1:this.options.pageNumber++,this.updatePagination(a),!1},q.prototype.onPageNumber=function(b){return b.preventDefault(),this.options.pageNumber!==+a(b.currentTarget).text()?(this.options.pageNumber=+a(b.currentTarget).text(),this.updatePagination(b),!1):void 0},q.prototype.initRow=function(b,c){var d,e=this,h=[],i={},k=[],m="",o={},p=[];if(!(a.inArray(b,this.hiddenRows)>-1)){if(i=j(this.options,this.options.rowStyle,[b,c],i),i&&i.css)for(d in i.css)k.push(d+": "+i.css[d]);if(o=j(this.options,this.options.rowAttributes,[b,c],o))for(d in o)p.push(f('%s="%s"',d,l(o[d])));return b._data&&!a.isEmptyObject(b._data)&&a.each(b._data,function(a,b){"index"!==a&&(m+=f(' data-%s="%s"',a,b))}),h.push(""),this.options.cardView&&h.push(f('
    ',this.header.fields.length)),!this.options.cardView&&this.options.detailView&&(h.push(""),j(null,this.options.detailFilter,[c,b])&&h.push('',f('',this.options.iconsPrefix,this.options.icons.detailOpen),""),h.push("")),a.each(this.header.fields,function(d,m){var o="",p=n(b,m,e.options.escape),q="",r="",s={},t="",u=e.header.classes[d],v="",w="",x="",y="",z=e.columns[d]; +/** + * bootstrap-table - An extended Bootstrap table with radio, checkbox, sort, pagination, and other added features. (supports twitter bootstrap v2 and v3). + * + * @version v1.14.2 + * @homepage https://bootstrap-table.com + * @author wenzhixin (http://wenzhixin.net.cn/) + * @license MIT + */ -if((!e.fromHtml||"undefined"!=typeof p||z.checkbox||z.radio)&&z.visible&&(!e.options.cardView||z.cardVisible)){if(z.escape&&(p=l(p)),i=f('style="%s"',k.concat(e.header.styles[d]).join("; ")),b["_"+m+"_id"]&&(t=f(' id="%s"',b["_"+m+"_id"])),b["_"+m+"_class"]&&(u=f(' class="%s"',b["_"+m+"_class"])),b["_"+m+"_rowspan"]&&(w=f(' rowspan="%s"',b["_"+m+"_rowspan"])),b["_"+m+"_colspan"]&&(x=f(' colspan="%s"',b["_"+m+"_colspan"])),b["_"+m+"_title"]&&(y=f(' title="%s"',b["_"+m+"_title"])),s=j(e.header,e.header.cellStyles[d],[p,b,c,m],s),s.classes&&(u=f(' class="%s"',s.classes)),s.css){var A=[];for(var B in s.css)A.push(B+": "+s.css[B]);i=f('style="%s"',A.concat(e.header.styles[d]).join("; "))}q=j(z,e.header.formatters[d],[p,b,c,m],p),b["_"+m+"_data"]&&!a.isEmptyObject(b["_"+m+"_data"])&&a.each(b["_"+m+"_data"],function(a,b){"index"!==a&&(v+=f(' data-%s="%s"',a,b))}),z.checkbox||z.radio?(r=z.checkbox?"checkbox":r,r=z.radio?"radio":r,o=[f(e.options.cardView?'
    ':'',z["class"]||""),"",e.header.formatters[d]&&"string"==typeof q?q:"",e.options.cardView?"
    ":""].join(""),b[e.header.stateField]=q===!0||!!p||q&&q.checked):(q="undefined"==typeof q||null===q?e.options.undefinedText:q,o=e.options.cardView?['
    ',e.options.showHeader?f('%s',i,g(e.columns,"field","title",m)):"",f('%s',q),"
    "].join(""):[f("",t,u,i,v,w,x,y),q,""].join(""),e.options.cardView&&e.options.smartDisplay&&""===q&&(o='
    ')),h.push(o)}}),this.options.cardView&&h.push("
    "),h.push(""),h.join(" ")}},q.prototype.initBody=function(b){var c=this,d=this.getData();this.trigger("pre-body",d),this.$body=this.$el.find(">tbody"),this.$body.length||(this.$body=a("").appendTo(this.$el)),this.options.pagination&&"server"!==this.options.sidePagination||(this.pageFrom=1,this.pageTo=d.length);for(var e,g=a(document.createDocumentFragment()),h=this.pageFrom-1;h'+f('%s',this.$header.find("th").length,this.options.formatNoMatches())+""),this.$body.html(g),b||this.scrollTo(0),this.$body.find("> tr[data-index] > td").off("click dblclick").on("click dblclick",function(b){var d=a(this),e=d.parent(),g=c.data[e.data("index")],h=d[0].cellIndex,i=c.getVisibleFields(),j=i[c.options.detailView&&!c.options.cardView?h-1:h],k=c.columns[c.fieldsColumnsIndex[j]],l=n(g,j,c.options.escape);if(!d.find(".detail-icon").length&&(c.trigger("click"===b.type?"click-cell":"dbl-click-cell",j,l,g,d),c.trigger("click"===b.type?"click-row":"dbl-click-row",g,e,j),"click"===b.type&&c.options.clickToSelect&&k.clickToSelect&&c.options.ignoreClickToSelectOn(b.target))){var m=e.find(f('[name="%s"]',c.options.selectItemName));m.length&&m[0].click()}}),this.$body.find("> tr[data-index] > td > .detail-icon").off("click").on("click",function(b){b.preventDefault();var e=a(this),g=e.parent().parent(),h=g.data("index"),i=d[h];if(g.next().is("tr.detail-view"))e.find("i").attr("class",f("%s %s",c.options.iconsPrefix,c.options.icons.detailOpen)),c.trigger("collapse-row",h,i,g.next()),g.next().remove();else{e.find("i").attr("class",f("%s %s",c.options.iconsPrefix,c.options.icons.detailClose)),g.after(f('',g.find("td").length));var k=g.next().find("td"),l=j(c.options,c.options.detailFormatter,[h,i,k],"");1===k.length&&k.append(l),c.trigger("expand-row",h,i,k)}return c.resetView(),!1}),this.$selectItem=this.$body.find(f('[name="%s"]',this.options.selectItemName)),this.$selectItem.off("click").on("click",function(b){b.stopImmediatePropagation();var d=a(this),e=d.prop("checked"),f=c.data[d.data("index")];(a(this).is(":radio")||c.options.singleSelect)&&a.each(c.options.data,function(a,b){b[c.header.stateField]=!1}),f[c.header.stateField]=e,c.options.singleSelect&&(c.$selectItem.not(this).each(function(){c.data[a(this).data("index")][c.header.stateField]=!1}),c.$selectItem.filter(":checked").not(this).prop("checked",!1)),c.updateSelected(),c.trigger(e?"check":"uncheck",f,d)}),a.each(this.header.events,function(b,d){if(d){"string"==typeof d&&(d=j(null,d));var e=c.header.fields[b],f=a.inArray(e,c.getVisibleFields());if(-1!==f){c.options.detailView&&!c.options.cardView&&(f+=1);for(var g in d)c.$body.find(">tr:not(.no-records-found)").each(function(){var b=a(this),h=b.find(c.options.cardView?".card-view":"td").eq(f),i=g.indexOf(" "),j=g.substring(0,i),k=g.substring(i+1),l=d[g];h.find(k).off(j).on(j,function(a){var d=b.data("index"),f=c.data[d],g=f[e];l.apply(this,[a,g,f,d])})})}}}),this.updateSelected(),this.resetView(),this.trigger("post-body",d)},q.prototype.initServer=function(b,c,d){var e,f=this,g={},h=a.inArray(this.options.sortName,this.header.fields),i={searchText:this.searchText,sortName:this.options.sortName,sortOrder:this.options.sortOrder};this.header.sortNames[h]&&(i.sortName=this.header.sortNames[h]),this.options.pagination&&"server"===this.options.sidePagination&&(i.pageSize=this.options.pageSize===this.options.formatAllRows()?this.options.totalRows:this.options.pageSize,i.pageNumber=this.options.pageNumber),(d||this.options.url||this.options.ajax)&&("limit"===this.options.queryParamsType&&(i={search:i.searchText,sort:i.sortName,order:i.sortOrder},this.options.pagination&&"server"===this.options.sidePagination&&(i.offset=this.options.pageSize===this.options.formatAllRows()?0:this.options.pageSize*(this.options.pageNumber-1),i.limit=this.options.pageSize===this.options.formatAllRows()?this.options.totalRows:this.options.pageSize,0===i.limit&&delete i.limit)),a.isEmptyObject(this.filterColumnsPartial)||(i.filter=JSON.stringify(this.filterColumnsPartial,null)),g=j(this.options,this.options.queryParams,[i],g),a.extend(g,c||{}),g!==!1&&(b||this.$tableLoading.show(),e=a.extend({},j(null,this.options.ajaxOptions),{type:this.options.method,url:d||this.options.url,data:"application/json"===this.options.contentType&&"post"===this.options.method?JSON.stringify(g):g,cache:this.options.cache,contentType:this.options.contentType,dataType:this.options.dataType,success:function(a){a=j(f.options,f.options.responseHandler,[a],a),f.load(a),f.trigger("load-success",a),b||f.$tableLoading.hide()},error:function(a){var c=[];"server"===f.options.sidePagination&&(c={},c[f.options.totalField]=0,c[f.options.dataField]=[]),f.load(c),f.trigger("load-error",a.status,a),b||f.$tableLoading.hide()}}),this.options.ajax?j(this,this.options.ajax,[e],null):(this._xhr&&4!==this._xhr.readyState&&this._xhr.abort(),this._xhr=a.ajax(e))))},q.prototype.initSearchText=function(){if(this.options.search&&(this.searchText="",""!==this.options.searchText)){var a=this.$toolbar.find(".search input");a.val(this.options.searchText),this.onSearch({currentTarget:a,firedByInitSearchText:!0})}},q.prototype.getCaret=function(){var b=this;a.each(this.$header.find("th"),function(c,d){a(d).find(".sortable").removeClass("desc asc").addClass(a(d).data("field")===b.options.sortName?b.options.sortOrder:"both")})},q.prototype.updateSelected=function(){var b=this.$selectItem.filter(":enabled").length&&this.$selectItem.filter(":enabled").length===this.$selectItem.filter(":enabled").filter(":checked").length;this.$selectAll.add(this.$selectAll_).prop("checked",b),this.$selectItem.each(function(){a(this).closest("tr")[a(this).prop("checked")?"addClass":"removeClass"]("selected")})},q.prototype.updateRows=function(){var b=this;this.$selectItem.each(function(){b.data[a(this).data("index")][b.header.stateField]=a(this).prop("checked")})},q.prototype.resetRows=function(){var b=this;a.each(this.data,function(a,c){b.$selectAll.prop("checked",!1),b.$selectItem.prop("checked",!1),b.header.stateField&&(c[b.header.stateField]=!1)}),this.initHiddenRows()},q.prototype.trigger=function(b){var c=Array.prototype.slice.call(arguments,1);b+=".bs.table",this.options[q.EVENTS[b]].apply(this.options,c),this.$el.trigger(a.Event(b),c),this.options.onAll(b,c),this.$el.trigger(a.Event("all.bs.table"),[b,c])},q.prototype.resetHeader=function(){clearTimeout(this.timeoutId_),this.timeoutId_=setTimeout(a.proxy(this.fitHeader,this),this.$el.is(":hidden")?100:0)},q.prototype.fitHeader=function(){var b,c,d,e,g=this;if(g.$el.is(":hidden"))return void(g.timeoutId_=setTimeout(a.proxy(g.fitHeader,g),100));if(b=this.$tableBody.get(0),c=b.scrollWidth>b.clientWidth&&b.scrollHeight>b.clientHeight+this.$header.outerHeight()?i():0,this.$el.css("margin-top",-this.$header.outerHeight()),d=a(":focus"),d.length>0){var h=d.parents("th");if(h.length>0){var j=h.attr("data-field");if(void 0!==j){var k=this.$header.find("[data-field='"+j+"']");k.length>0&&k.find(":input").addClass("focus-temp")}}}this.$header_=this.$header.clone(!0,!0),this.$selectAll_=this.$header_.find('[name="btSelectAll"]'),this.$tableHeader.css({"margin-right":c}).find("table").css("width",this.$el.outerWidth()).html("").attr("class",this.$el.attr("class")).append(this.$header_),e=a(".focus-temp:visible:eq(0)"),e.length>0&&(e.focus(),this.$header.find(".focus-temp").removeClass("focus-temp")),this.$header.find("th[data-field]").each(function(){g.$header_.find(f('th[data-field="%s"]',a(this).data("field"))).data(a(this).data())});var l=this.getVisibleFields(),m=this.$header_.find("th");this.$body.find(">tr:first-child:not(.no-records-found) > *").each(function(b){var c=a(this),d=b;if(g.options.detailView&&!g.options.cardView&&(0===b&&g.$header_.find("th.detail").find(".fht-cell").width(c.innerWidth()),d=b-1),-1!==d){var e=g.$header_.find(f('th[data-field="%s"]',l[d]));e.length>1&&(e=a(m[c[0].cellIndex]));var h=e.width()-e.find(".fht-cell").width();e.find(".fht-cell").width(c.innerWidth()-h)}}),this.horizontalScroll(),this.trigger("post-header")},q.prototype.resetFooter=function(){var b=this,c=b.getData(),d=[];this.options.showFooter&&!this.options.cardView&&(!this.options.cardView&&this.options.detailView&&d.push('
     
    '),a.each(this.columns,function(a,e){var g,h="",i="",k=[],l={},m=f(' class="%s"',e["class"]);if(e.visible&&(!b.options.cardView||e.cardVisible)){if(h=f("text-align: %s; ",e.falign?e.falign:e.align),i=f("vertical-align: %s; ",e.valign),l=j(null,b.options.footerStyle),l&&l.css)for(g in l.css)k.push(g+": "+l.css[g]);d.push(""),d.push('
    '),d.push(j(e,e.footerFormatter,[c]," ")||" "),d.push("
    "),d.push('
    '),d.push("
    "),d.push("")}}),this.$tableFooter.find("tr").html(d.join("")),this.$tableFooter.show(),clearTimeout(this.timeoutFooter_),this.timeoutFooter_=setTimeout(a.proxy(this.fitFooter,this),this.$el.is(":hidden")?100:0))},q.prototype.fitFooter=function(){var b,c,d;return clearTimeout(this.timeoutFooter_),this.$el.is(":hidden")?void(this.timeoutFooter_=setTimeout(a.proxy(this.fitFooter,this),100)):(c=this.$el.css("width"),d=c>this.$tableBody.width()?i():0,this.$tableFooter.css({"margin-right":d}).find("table").css("width",c).attr("class",this.$el.attr("class")),b=this.$tableFooter.find("td"),this.$body.find(">tr:first-child:not(.no-records-found) > *").each(function(c){var d=a(this);b.eq(c).find(".fht-cell").width(d.innerWidth())}),void this.horizontalScroll())},q.prototype.horizontalScroll=function(){var b=this;b.trigger("scroll-body"),this.$tableBody.off("scroll").on("scroll",function(){b.options.showHeader&&b.options.height&&b.$tableHeader.scrollLeft(a(this).scrollLeft()),b.options.showFooter&&!b.options.cardView&&b.$tableFooter.scrollLeft(a(this).scrollLeft())})},q.prototype.toggleColumn=function(a,b,c){if(-1!==a&&(this.columns[a].visible=b,this.initHeader(),this.initSearch(),this.initPagination(),this.initBody(),this.options.showColumns)){var d=this.$toolbar.find(".keep-open input").prop("disabled",!1);c&&d.filter(f('[value="%s"]',a)).prop("checked",b),d.filter(":checked").length<=this.options.minimumCountColumns&&d.filter(":checked").prop("disabled",!0)}},q.prototype.getVisibleFields=function(){var b=this,c=[];return a.each(this.header.fields,function(a,d){var e=b.columns[b.fieldsColumnsIndex[d]];e.visible&&c.push(d)}),c},q.prototype.resetView=function(a){var b=0;if(a&&a.height&&(this.options.height=a.height),this.$selectAll.prop("checked",this.$selectItem.length>0&&this.$selectItem.length===this.$selectItem.filter(":checked").length),this.options.height){var c=this.$toolbar.outerHeight(!0),d=this.$pagination.outerHeight(!0),e=this.options.height-c-d;this.$tableContainer.css("height",e+"px")}return this.options.cardView?(this.$el.css("margin-top","0"),this.$tableContainer.css("padding-bottom","0"),void this.$tableFooter.hide()):(this.options.showHeader&&this.options.height?(this.$tableHeader.show(),this.resetHeader(),b+=this.$header.outerHeight()):(this.$tableHeader.hide(),this.trigger("post-header")),this.options.showFooter&&(this.resetFooter(),this.options.height&&(b+=this.$tableFooter.outerHeight()+1)),this.getCaret(),this.$tableContainer.css("padding-bottom",b+"px"),void this.trigger("reset-view"))},q.prototype.getData=function(b){var c=this.options.data;return(this.searchText||this.options.sortName||!a.isEmptyObject(this.filterColumns)||!a.isEmptyObject(this.filterColumnsPartial))&&(c=this.data),b?c.slice(this.pageFrom-1,this.pageTo):c},q.prototype.load=function(b){var c=!1;this.options.pagination&&"server"===this.options.sidePagination?(this.options.totalRows=b[this.options.totalField],c=b.fixedScroll,b=b[this.options.dataField]):a.isArray(b)||(c=b.fixedScroll,b=b.data),this.initData(b),this.initSearch(),this.initPagination(),this.initBody(c)},q.prototype.append=function(a){this.initData(a,"append"),this.initSearch(),this.initPagination(),this.initSort(),this.initBody(!0)},q.prototype.prepend=function(a){this.initData(a,"prepend"),this.initSearch(),this.initPagination(),this.initSort(),this.initBody(!0)},q.prototype.remove=function(b){var c,d,e=this.options.data.length;if(b.hasOwnProperty("field")&&b.hasOwnProperty("values")){for(c=e-1;c>=0;c--)d=this.options.data[c],d.hasOwnProperty(b.field)&&-1!==a.inArray(d[b.field],b.values)&&(this.options.data.splice(c,1),"server"===this.options.sidePagination&&(this.options.totalRows-=1));e!==this.options.data.length&&(this.initSearch(),this.initPagination(),this.initSort(),this.initBody(!0))}},q.prototype.removeAll=function(){this.options.data.length>0&&(this.options.data.splice(0,this.options.data.length),this.initSearch(),this.initPagination(),this.initBody(!0))},q.prototype.getRowByUniqueId=function(a){var b,c,d,e=this.options.uniqueId,f=this.options.data.length,g=null;for(b=f-1;b>=0;b--){if(c=this.options.data[b],c.hasOwnProperty(e))d=c[e];else{if(!c._data.hasOwnProperty(e))continue;d=c._data[e]}if("string"==typeof d?a=a.toString():"number"==typeof d&&(Number(d)===d&&d%1===0?a=parseInt(a):d===Number(d)&&0!==d&&(a=parseFloat(a))),d===a){g=c;break}}return g},q.prototype.removeByUniqueId=function(a){var b=this.options.data.length,c=this.getRowByUniqueId(a);c&&this.options.data.splice(this.options.data.indexOf(c),1),b!==this.options.data.length&&(this.initSearch(),this.initPagination(),this.initBody(!0))},q.prototype.updateByUniqueId=function(b){var c=this,d=a.isArray(b)?b:[b];a.each(d,function(b,d){var e;d.hasOwnProperty("id")&&d.hasOwnProperty("row")&&(e=a.inArray(c.getRowByUniqueId(d.id),c.options.data),-1!==e&&a.extend(c.options.data[e],d.row))}),this.initSearch(),this.initPagination(),this.initSort(),this.initBody(!0)},q.prototype.refreshColumnTitle=function(b){if(b.hasOwnProperty("field")&&b.hasOwnProperty("title")&&(this.columns[this.fieldsColumnsIndex[b.field]].title=this.options.escape?l(b.title):b.title,this.columns[this.fieldsColumnsIndex[b.field]].visible)){var c=void 0!==this.options.height?this.$tableHeader:this.$header;c.find("th[data-field]").each(function(){return a(this).data("field")===b.field?(a(a(this).find(".th-inner")[0]).text(b.title),!1):void 0})}},q.prototype.insertRow=function(a){a.hasOwnProperty("index")&&a.hasOwnProperty("row")&&(this.options.data.splice(a.index,0,a.row),this.initSearch(),this.initPagination(),this.initSort(),this.initBody(!0))},q.prototype.updateRow=function(b){var c=this,d=a.isArray(b)?b:[b];a.each(d,function(b,d){d.hasOwnProperty("index")&&d.hasOwnProperty("row")&&a.extend(c.options.data[d.index],d.row)}),this.initSearch(),this.initPagination(),this.initSort(),this.initBody(!0)},q.prototype.initHiddenRows=function(){this.hiddenRows=[]},q.prototype.showRow=function(a){this.toggleRow(a,!0)},q.prototype.hideRow=function(a){this.toggleRow(a,!1)},q.prototype.toggleRow=function(b,c){var d,e;b.hasOwnProperty("index")?d=this.getData()[b.index]:b.hasOwnProperty("uniqueId")&&(d=this.getRowByUniqueId(b.uniqueId)),d&&(e=a.inArray(d,this.hiddenRows),c||-1!==e?c&&e>-1&&this.hiddenRows.splice(e,1):this.hiddenRows.push(d),this.initBody(!0))},q.prototype.getHiddenRows=function(){var b=this,c=this.getData(),d=[];return a.each(c,function(c,e){a.inArray(e,b.hiddenRows)>-1&&d.push(e)}),this.hiddenRows=d,d},q.prototype.mergeCells=function(b){var c,d,e,f=b.index,g=a.inArray(b.field,this.getVisibleFields()),h=b.rowspan||1,i=b.colspan||1,j=this.$body.find(">tr");if(this.options.detailView&&!this.options.cardView&&(g+=1),e=j.eq(f).find(">td").eq(g),!(0>f||0>g||f>=this.data.length)){for(c=f;f+h>c;c++)for(d=g;g+i>d;d++)j.eq(c).find(">td").eq(d).hide();e.attr("rowspan",h).attr("colspan",i).show()}},q.prototype.updateCell=function(a){a.hasOwnProperty("index")&&a.hasOwnProperty("field")&&a.hasOwnProperty("value")&&(this.data[a.index][a.field]=a.value,a.reinit!==!1&&(this.initSort(),this.initBody(!0)))},q.prototype.updateCellById=function(b){var c=this;if(b.hasOwnProperty("id")&&b.hasOwnProperty("field")&&b.hasOwnProperty("value")){var d=a.isArray(b)?b:[b];a.each(d,function(b,d){var e;e=a.inArray(c.getRowByUniqueId(d.id),c.options.data),-1!==e&&(c.data[e][d.field]=d.value)}),b.reinit!==!1&&(this.initSort(),this.initBody(!0))}},q.prototype.getOptions=function(){return a.extend(!0,{},this.options)},q.prototype.getSelections=function(){var b=this;return a.grep(this.options.data,function(a){return a[b.header.stateField]===!0})},q.prototype.getAllSelections=function(){var b=this;return a.grep(this.options.data,function(a){return a[b.header.stateField]})},q.prototype.checkAll=function(){this.checkAll_(!0)},q.prototype.uncheckAll=function(){this.checkAll_(!1)},q.prototype.checkInvert=function(){var b=this,c=b.$selectItem.filter(":enabled"),d=c.filter(":checked");c.each(function(){a(this).prop("checked",!a(this).prop("checked"))}),b.updateRows(),b.updateSelected(),b.trigger("uncheck-some",d),d=b.getSelections(),b.trigger("check-some",d)},q.prototype.checkAll_=function(a){var b;a||(b=this.getSelections()),this.$selectAll.add(this.$selectAll_).prop("checked",a),this.$selectItem.filter(":enabled").prop("checked",a),this.updateRows(),a&&(b=this.getSelections()),this.trigger(a?"check-all":"uncheck-all",b)},q.prototype.check=function(a){this.check_(!0,a)},q.prototype.uncheck=function(a){this.check_(!1,a)},q.prototype.check_=function(a,b){var c=this.$selectItem.filter(f('[data-index="%s"]',b)).prop("checked",a);this.data[b][this.header.stateField]=a,this.updateSelected(),this.trigger(a?"check":"uncheck",this.data[b],c)},q.prototype.checkBy=function(a){this.checkBy_(!0,a)},q.prototype.uncheckBy=function(a){this.checkBy_(!1,a)},q.prototype.checkBy_=function(b,c){if(c.hasOwnProperty("field")&&c.hasOwnProperty("values")){var d=this,e=[];a.each(this.options.data,function(g,h){if(!h.hasOwnProperty(c.field))return!1;if(-1!==a.inArray(h[c.field],c.values)){var i=d.$selectItem.filter(":enabled").filter(f('[data-index="%s"]',g)).prop("checked",b);h[d.header.stateField]=b,e.push(h),d.trigger(b?"check":"uncheck",h,i)}}),this.updateSelected(),this.trigger(b?"check-some":"uncheck-some",e)}},q.prototype.destroy=function(){this.$el.insertBefore(this.$container),a(this.options.toolbar).insertBefore(this.$el),this.$container.next().remove(),this.$container.remove(),this.$el.html(this.$el_.html()).css("margin-top","0").attr("class",this.$el_.attr("class")||"")},q.prototype.showLoading=function(){this.$tableLoading.show()},q.prototype.hideLoading=function(){this.$tableLoading.hide()},q.prototype.togglePagination=function(){this.options.pagination=!this.options.pagination;var a=this.$toolbar.find('button[name="paginationSwitch"] i');this.options.pagination?a.attr("class",this.options.iconsPrefix+" "+this.options.icons.paginationSwitchDown):a.attr("class",this.options.iconsPrefix+" "+this.options.icons.paginationSwitchUp),this.updatePagination()},q.prototype.toggleFullscreen=function(){this.$el.closest(".bootstrap-table").toggleClass("fullscreen")},q.prototype.refresh=function(a){a&&a.url&&(this.options.url=a.url),a&&a.pageNumber&&(this.options.pageNumber=a.pageNumber),a&&a.pageSize&&(this.options.pageSize=a.pageSize),this.initServer(a&&a.silent,a&&a.query,a&&a.url),this.trigger("refresh",a)},q.prototype.resetWidth=function(){this.options.showHeader&&this.options.height&&this.fitHeader(),this.options.showFooter&&!this.options.cardView&&this.fitFooter()},q.prototype.showColumn=function(a){this.toggleColumn(this.fieldsColumnsIndex[a],!0,!0)},q.prototype.hideColumn=function(a){this.toggleColumn(this.fieldsColumnsIndex[a],!1,!0)},q.prototype.getHiddenColumns=function(){return a.grep(this.columns,function(a){return!a.visible})},q.prototype.getVisibleColumns=function(){return a.grep(this.columns,function(a){return a.visible})},q.prototype.toggleAllColumns=function(b){var c=this;if(a.each(this.columns,function(a){c.columns[a].visible=b}),this.initHeader(),this.initSearch(),this.initPagination(),this.initBody(),this.options.showColumns){var d=this.$toolbar.find(".keep-open input").prop("disabled",!1);d.filter(":checked").length<=this.options.minimumCountColumns&&d.filter(":checked").prop("disabled",!0)}},q.prototype.showAllColumns=function(){this.toggleAllColumns(!0)},q.prototype.hideAllColumns=function(){this.toggleAllColumns(!1)},q.prototype.filterBy=function(b){this.filterColumns=a.isEmptyObject(b)?{}:b,this.options.pageNumber=1,this.initSearch(),this.updatePagination()},q.prototype.scrollTo=function(a){return"string"==typeof a&&(a="bottom"===a?this.$tableBody[0].scrollHeight:0),"number"==typeof a&&this.$tableBody.scrollTop(a),"undefined"==typeof a?this.$tableBody.scrollTop():void 0},q.prototype.getScrollPosition=function(){return this.scrollTo()},q.prototype.selectPage=function(a){a>0&&a<=this.options.totalPages&&(this.options.pageNumber=a,this.updatePagination())},q.prototype.prevPage=function(){this.options.pageNumber>1&&(this.options.pageNumber--,this.updatePagination())},q.prototype.nextPage=function(){this.options.pageNumber tr[data-index="%s"]',b));c.next().is("tr.detail-view")===(a?!1:!0)&&c.find("> td > .detail-icon").click()},q.prototype.expandRow=function(a){this.expandRow_(!0,a)},q.prototype.collapseRow=function(a){this.expandRow_(!1,a)},q.prototype.expandAllRows=function(b){if(b){var c=this.$body.find(f('> tr[data-index="%s"]',0)),d=this,e=null,g=!1,h=-1;if(c.next().is("tr.detail-view")?c.next().next().is("tr.detail-view")||(c.next().find(".detail-icon").click(),g=!0):(c.find("> td > .detail-icon").click(),g=!0),g)try{h=setInterval(function(){e=d.$body.find("tr.detail-view").last().find(".detail-icon"),e.length>0?e.click():clearInterval(h)},1)}catch(i){clearInterval(h)}}else for(var j=this.$body.children(),k=0;k',''],toobarDropdowItem:'
  • ',pageDropdown:[''],pageDropdownItem:'',dropdownCaret:'',pagination:['
      ','
    '],paginationItem:'
  • %s
  • ',icon:''}},4:{theme:'bootstrap4',iconsPrefix:'fa',icons:{paginationSwitchDown:'fa-caret-square-down',paginationSwitchUp:'fa-caret-square-up',refresh:'fa-sync',toggleOff:'fa-toggle-off',toggleOn:'fa-toggle-on',columns:'fa-th-list',fullscreen:'fa-arrows-alt',detailOpen:'fa-plus',detailClose:'fa-minus'},classes:{buttonsPrefix:'btn',buttons:'secondary',buttonsGroup:'btn-group',buttonsDropdown:'btn-group',pull:'float',inputGroup:'',input:'form-control',paginationDropdown:'btn-group dropdown',dropup:'dropup',dropdownActive:'active',paginationActive:'active'},html:{toobarDropdow:[''],toobarDropdowItem:'',pageDropdown:[''],pageDropdownItem:'%s',dropdownCaret:'',pagination:['
      ','
    '],paginationItem:'
  • %s
  • ',icon:''}}}[i],r={bootstrapVersion:i,sprintf:function(e){for(var t=arguments.length,o=Array(1=o.length)break;n=o[i++]}else{if(i=o.next(),i.done)break;n=i.value}var s=n;if(s.field===t)return s.title}return''},setFieldIndex:function(e){for(var t=0,o=[],a=e[0],n=Array.isArray(a),s=0,_iterator2=n?a:a[Symbol.iterator]();;){var l;if(n){if(s>=a.length)break;l=a[s++]}else{if(s=a.next(),s.done)break;l=s.value}var d=l;t+=d.colspan||1}for(var m=0;m=c.length)break;g=c[h++]}else{if(h=c.next(),h.done)break;g=h.value}var u=g,r=u.rowspan||1,f=u.colspan||1,b=o[y].indexOf(!1);1===f&&(u.fieldIndex=b,'undefined'==typeof u.field&&(u.field=b));for(var w=0;w').addClass('fixed-table-scroll-inner'),t=s('
    ').addClass('fixed-table-scroll-outer');t.append(e),s('body').append(t);var o=e[0].offsetWidth;t.css('overflow','scroll');var a=e[0].offsetWidth;o===a&&(a=t[0].clientWidth),t.remove(),this.cachedWidth=o-a}return this.cachedWidth},calculateObjectValue:function(e,o,a,i){var s=o;if('string'==typeof o){var h=o.split('.');if(1=l.length)break;c=l[d++]}else{if(d=l.next(),d.done)break;c=d.value}var p=c;s=s[p]}}else s=window[o]}return null!==s&&'object'===('undefined'==typeof s?'undefined':n(s))?s:'function'==typeof s?s.apply(e,a||[]):!s&&'string'==typeof o&&this.sprintf.apply(this,[o].concat(t(a)))?this.sprintf.apply(this,[o].concat(t(a))):i},compareObjects:function(e,t,o){var a=Object.keys(e),i=Object.keys(t);if(o&&a.length!==i.length)return!1;for(var n=a,s=Array.isArray(n),l=0,_iterator5=s?n:n[Symbol.iterator]();;){var r;if(s){if(l>=n.length)break;r=n[l++]}else{if(l=n.next(),l.done)break;r=l.value}var d=r;if(-1!==i.indexOf(d)&&e[d]!==t[d])return!1}return!0},escapeHTML:function(e){return'string'==typeof e?e.replace(/&/g,'&').replace(//g,'>').replace(/"/g,'"').replace(/'/g,''').replace(/`/g,'`'):e},getRealDataAttr:function(e){for(var t=function(e){return Object.keys(e).map(function(t){return[t,e[t]]})}(e),o=Array.isArray(t),i=0,_iterator6=o?t:t[Symbol.iterator]();;){var n;if(o){if(i>=t.length)break;n=t[i++]}else{if(i=t.next(),i.done)break;n=i.value}var s=n,l=a(s,2),r=l[0],d=l[1],c=r.split(/(?=[A-Z])/).join('-').toLowerCase();c!==r&&(e[c]=d,delete e[r])}return e},getItemField:function(e,t,o){var a=e;if('string'!=typeof t||e.hasOwnProperty(t))return o?this.escapeHTML(e[t]):e[t];for(var i=t.split('.'),n=i,s=Array.isArray(n),l=0,_iterator7=s?n:n[Symbol.iterator]();;){var r;if(s){if(l>=n.length)break;r=n[l++]}else{if(l=n.next(),l.done)break;r=l.value}var d=r;a=a&&a[d]}return o?this.escapeHTML(a):a},isIEBrowser:function(){return -1!==navigator.userAgent.indexOf('MSIE ')||/Trident.*rv:11\./.test(navigator.userAgent)},findIndex:function(e,t){for(var o=e,a=Array.isArray(o),i=0,_iterator8=a?o:o[Symbol.iterator]();;){var n;if(a){if(i>=o.length)break;n=o[i++]}else{if(i=o.next(),i.done)break;n=i.value}var s=n;if(JSON.stringify(s)===JSON.stringify(t))return e.indexOf(s)}return-1}},d={height:void 0,classes:'table table-bordered table-hover',theadClasses:'',rowStyle:function(){return{}},rowAttributes:function(){return{}},undefinedText:'-',locale:void 0,sortable:!0,sortClass:void 0,silentSort:!0,sortName:void 0,sortOrder:'asc',sortStable:!1,rememberOrder:!1,customSort:void 0,columns:[[]],data:[],url:void 0,method:'get',cache:!0,contentType:'application/json',dataType:'json',ajax:void 0,ajaxOptions:{},queryParams:function(e){return e},queryParamsType:'limit',responseHandler:function(e){return e},totalField:'total',dataField:'rows',pagination:!1,onlyInfoPagination:!1,paginationLoop:!0,sidePagination:'client',totalRows:0,pageNumber:1,pageSize:10,pageList:[10,25,50,100],paginationHAlign:'right',paginationVAlign:'bottom',paginationDetailHAlign:'left',paginationPreText:'‹',paginationNextText:'›',paginationSuccessivelySize:5,paginationPagesBySide:1,paginationUseIntermediate:!1,search:!1,searchOnEnterKey:!1,strictSearch:!1,trimOnSearch:!0,searchAlign:'right',searchTimeOut:500,searchText:'',customSearch:void 0,showHeader:!0,showFooter:!1,footerStyle:function(){return{}},showColumns:!1,minimumCountColumns:1,showPaginationSwitch:!1,showRefresh:!1,showToggle:!1,showFullscreen:!1,smartDisplay:!0,escape:!1,idField:void 0,selectItemName:'btSelectItem',clickToSelect:!1,ignoreClickToSelectOn:function(e){var t=e.tagName;return -1!==['A','BUTTON'].indexOf(t)},singleSelect:!1,checkboxHeader:!0,maintainSelected:!1,uniqueId:void 0,cardView:!1,detailView:!1,detailFormatter:function(){return''},detailFilter:function(){return!0},toolbar:void 0,toolbarAlign:'left',buttonsToolbar:void 0,buttonsAlign:'right',buttonsPrefix:l.classes.buttonsPrefix,buttonsClass:l.classes.buttons,icons:l.icons,iconSize:void 0,iconsPrefix:l.iconsPrefix,onAll:function(){return!1},onClickCell:function(){return!1},onDblClickCell:function(){return!1},onClickRow:function(){return!1},onDblClickRow:function(){return!1},onSort:function(){return!1},onCheck:function(){return!1},onUncheck:function(){return!1},onCheckAll:function(){return!1},onUncheckAll:function(){return!1},onCheckSome:function(){return!1},onUncheckSome:function(){return!1},onLoadSuccess:function(){return!1},onLoadError:function(){return!1},onColumnSwitch:function(){return!1},onPageChange:function(){return!1},onSearch:function(){return!1},onToggle:function(){return!1},onPreBody:function(){return!1},onPostBody:function(){return!1},onPostHeader:function(){return!1},onExpandRow:function(){return!1},onCollapseRow:function(){return!1},onRefreshOptions:function(){return!1},onRefresh:function(){return!1},onResetView:function(){return!1},onScrollBody:function(){return!1}},c={};c['en-US']=c.en={formatLoadingMessage:function(){return'Loading, please wait'},formatRecordsPerPage:function(e){return e+' rows per page'},formatShowingRows:function(e,t,o){return'Showing '+e+' to '+t+' of '+o+' rows'},formatDetailPagination:function(e){return'Showing '+e+' rows'},formatSearch:function(){return'Search'},formatNoMatches:function(){return'No matching records found'},formatPaginationSwitch:function(){return'Hide/Show pagination'},formatRefresh:function(){return'Refresh'},formatToggle:function(){return'Toggle'},formatColumns:function(){return'Columns'},formatFullscreen:function(){return'Fullscreen'},formatAllRows:function(){return'All'}},s.extend(d,c['en-US']);var p=function(){function t(o,a){e(this,t),this.options=a,this.$el=s(o),this.$el_=this.$el.clone(),this.timeoutId_=0,this.timeoutFooter_=0,this.init()}return o(t,[{key:'init',value:function(){this.initConstants(),this.initLocale(),this.initContainer(),this.initTable(),this.initHeader(),this.initData(),this.initHiddenRows(),this.initFooter(),this.initToolbar(),this.initPagination(),this.initBody(),this.initSearchText(),this.initServer()}},{key:'initConstants',value:function(){var e=this.options;this.constants=l;var t=e.buttonsPrefix?e.buttonsPrefix+'-':'';this.constants.buttonsClass=[e.buttonsPrefix,t+e.buttonsClass,r.sprintf(t+'%s',e.iconSize)].join(' ').trim()}},{key:'initLocale',value:function(){if(this.options.locale){var e=s.fn.bootstrapTable.locales,t=this.options.locale.split(/-|_/);t[0]=t[0].toLowerCase(),t[1]&&(t[1]=t[1].toUpperCase()),e[this.options.locale]?s.extend(this.options,e[this.options.locale]):e[t.join('-')]?s.extend(this.options,e[t.join('-')]):e[t[0]]&&s.extend(this.options,e[t[0]])}}},{key:'initContainer',value:function(){var e=-1===['top','both'].indexOf(this.options.paginationVAlign)?'':'
    ',t=-1===['bottom','both'].indexOf(this.options.paginationVAlign)?'':'
    ';this.$container=s('\n
    \n
    \n '+e+'\n
    \n
    \n
    \n
    \n \n '+this.options.formatLoadingMessage()+'\n \n \n
    \n
    \n \n
    \n '+t+'\n
    \n '),this.$container.insertAfter(this.$el),this.$tableContainer=this.$container.find('.fixed-table-container'),this.$tableHeader=this.$container.find('.fixed-table-header'),this.$tableBody=this.$container.find('.fixed-table-body'),this.$tableLoading=this.$container.find('.fixed-table-loading'),this.$tableFooter=this.$container.find('.fixed-table-footer'),this.$toolbar=this.options.buttonsToolbar?s('body').find(this.options.buttonsToolbar):this.$container.find('.fixed-table-toolbar'),this.$pagination=this.$container.find('.fixed-table-pagination'),this.$tableBody.append(this.$el),this.$container.after('
    '),this.$el.addClass(this.options.classes),this.$tableLoading.addClass(this.options.classes),this.options.height&&(this.$tableContainer.addClass('fixed-height'),this.options.showFooter&&this.$tableContainer.addClass('has-footer'),-1!==this.options.classes.split(' ').indexOf('table-bordered')&&(this.$tableBody.append('
    '),this.$tableBorder=this.$tableBody.find('.fixed-table-border'),this.$tableLoading.addClass('fixed-table-border')))}},{key:'initTable',value:function(){var e=this,o=[],a=[];if(this.$header=this.$el.find('>thead'),this.$header.length?this.options.theadClasses&&this.$header.addClass(this.options.theadClasses):this.$header=s('').appendTo(this.$el),this.$header.find('tr').each(function(e,t){var a=[];s(t).find('th').each(function(e,t){'undefined'!=typeof s(t).data('field')&&s(t).data('field',''+s(t).data('field')),a.push(s.extend({},{title:s(t).html(),class:s(t).attr('class'),titleTooltip:s(t).attr('title'),rowspan:s(t).attr('rowspan')?+s(t).attr('rowspan'):void 0,colspan:s(t).attr('colspan')?+s(t).attr('colspan'):void 0},s(t).data()))}),o.push(a)}),Array.isArray(this.options.columns[0])||(this.options.columns=[this.options.columns]),this.options.columns=s.extend(!0,[],o,this.options.columns),this.columns=[],this.fieldsColumnsIndex=[],r.setFieldIndex(this.options.columns),this.options.columns.forEach(function(o,a){o.forEach(function(o,i){var n=s.extend({},t.COLUMN_DEFAULTS,o);'undefined'!=typeof n.fieldIndex&&(e.columns[n.fieldIndex]=n,e.fieldsColumnsIndex[n.field]=n.fieldIndex),e.options.columns[a][i]=n})}),!this.options.data.length){var i=[];this.$el.find('>tbody>tr').each(function(t,o){var n={};n._id=s(o).attr('id'),n._class=s(o).attr('class'),n._data=r.getRealDataAttr(s(o).data()),s(o).find('>td').each(function(o,a){for(var l=+s(a).attr('colspan')||1,d=+s(a).attr('rowspan')||1,c=o;i[t]&&i[t][c];c++);for(var h=c;h'),0===n&&!t.options.cardView&&t.options.detailView&&o.push('\n
    \n \n '),a.forEach(function(a,i){var s='',l='',d='',c='',p=r.sprintf(' class="%s"',a['class']),h='px',g=a.width;if(void 0===a.width||t.options.cardView||'string'!=typeof a.width||-1===a.width.indexOf('%')||(h='%'),a.width&&'string'==typeof a.width&&(g=a.width.replace('%','').replace('px','')),l=r.sprintf('text-align: %s; ',a.halign?a.halign:a.align),d=r.sprintf('text-align: %s; ',a.align),c=r.sprintf('vertical-align: %s; ',a.valign),c+=r.sprintf('width: %s; ',(a.checkbox||a.radio)&&!g?a.showSelectTitle?void 0:'36px':g?g+h:void 0),'undefined'!=typeof a.fieldIndex){if(t.header.fields[a.fieldIndex]=a.field,t.header.styles[a.fieldIndex]=d+c,t.header.classes[a.fieldIndex]=p,t.header.formatters[a.fieldIndex]=a.formatter,t.header.events[a.fieldIndex]=a.events,t.header.sorters[a.fieldIndex]=a.sorter,t.header.sortNames[a.fieldIndex]=a.sortName,t.header.cellStyles[a.fieldIndex]=a.cellStyle,t.header.searchables[a.fieldIndex]=a.searchable,!a.visible)return;if(t.options.cardView&&!a.cardVisible)return;e[a.field]=a}o.push(''),o.push(r.sprintf('
    ',t.options.sortable&&a.sortable?'sortable both':'')),s=t.options.escape?r.escapeHTML(a.title):a.title;var u=s;a.checkbox&&(s='',!t.options.singleSelect&&t.options.checkboxHeader&&(s=''),t.header.stateField=a.field),a.radio&&(s='',t.header.stateField=a.field,t.options.singleSelect=!0),!s&&a.showSelectTitle&&(s+=u),o.push(s),o.push('
    '),o.push('
    '),o.push('
    '),o.push('')}),o.push('')}),this.$header.html(o.join('')),this.$header.find('th[data-field]').each(function(t,o){s(o).data(e[s(o).data('field')])}),this.$container.off('click','.th-inner').on('click','.th-inner',function(o){var e=s(o.currentTarget);return t.options.detailView&&!e.parent().hasClass('bs-checkbox')&&e.closest('.bootstrap-table')[0]!==t.$container[0]?!1:void(t.options.sortable&&e.parent().data().sortable&&t.onSort(o))}),this.$header.children().children().off('keypress').on('keypress',function(o){if(t.options.sortable&&s(o.currentTarget).data().sortable){var e=o.keyCode||o.which;13===e&&t.onSort(o)}}),s(window).off('resize.bootstrap-table'),!this.options.showHeader||this.options.cardView?(this.$header.hide(),this.$tableHeader.hide(),this.$tableLoading.css('top',0)):(this.$header.show(),this.$tableHeader.show(),this.$tableLoading.css('top',this.$header.outerHeight()+1),this.getCaret(),s(window).on('resize.bootstrap-table',function(o){return t.resetWidth(o)})),this.$selectAll=this.$header.find('[name="btSelectAll"]'),this.$selectAll.off('click').on('click',function(e){var o=e.currentTarget,a=s(o).prop('checked');t[a?'checkAll':'uncheckAll'](),t.updateSelected()})}},{key:'initFooter',value:function(){!this.options.showFooter||this.options.cardView?this.$tableFooter.hide():this.$tableFooter.show()}},{key:'initData',value:function(e,t){this.options.data='append'===t?this.options.data.concat(e):'prepend'===t?[].concat(e).concat(this.options.data):e||this.options.data,this.data=this.options.data,'server'===this.options.sidePagination||this.initSort()}},{key:'initSort',value:function(){var e=this,t=this.options.sortName,o='desc'===this.options.sortOrder?-1:1,i=this.header.fields.indexOf(this.options.sortName),a=0;-1!==i&&(this.options.sortStable&&this.data.forEach(function(e,t){e.hasOwnProperty('_position')||(e._position=t)}),this.options.customSort?r.calculateObjectValue(this.options,this.options.customSort,[this.options.sortName,this.options.sortOrder,this.data]):this.data.sort(function(n,a){e.header.sortNames[i]&&(t=e.header.sortNames[i]);var s=r.getItemField(n,t,e.options.escape),l=r.getItemField(a,t,e.options.escape),d=r.calculateObjectValue(e.header,e.header.sorters[i],[s,l,n,a]);return void 0===d?((void 0===s||null===s)&&(s=''),(void 0===l||null===l)&&(l=''),e.options.sortStable&&s===l&&(s=n._position,l=a._position),r.isNumeric(s)&&r.isNumeric(l))?(s=parseFloat(s),l=parseFloat(l),sl?o:0):s===l?0:('string'!=typeof s&&(s=s.toString()),-1===s.localeCompare(l)?-1*o:o):e.options.sortStable&&0===d?o*(n._position-a._position):o*d}),void 0!==this.options.sortClass&&(clearTimeout(a),a=setTimeout(function(){e.$el.removeClass(e.options.sortClass);var t=e.$header.find('[data-field="'+e.options.sortName+'"]').index();e.$el.find('tr td:nth-child('+(t+1)+')').addClass(e.options.sortClass)},250)))}},{key:'onSort',value:function(e){var t=e.type,o=e.currentTarget,a='keypress'===t?s(o):s(o).parent(),i=this.$header.find('th').eq(a.index());return this.$header.add(this.$header_).find('span.order').remove(),this.options.sortName===a.data('field')?this.options.sortOrder='asc'===this.options.sortOrder?'desc':'asc':(this.options.sortName=a.data('field'),this.options.sortOrder=this.options.rememberOrder?'asc'===a.data('order')?'desc':'asc':this.columns[this.fieldsColumnsIndex[a.data('field')]].order),this.trigger('sort',this.options.sortName,this.options.sortOrder),a.add(i).data('order',this.options.sortOrder),this.getCaret(),'server'===this.options.sidePagination?void this.initServer(this.options.silentSort):void(this.initSort(),this.initBody())}},{key:'initToolbar',value:function(){var e=this,t=this.options,o=[],a=0,i=void 0,l=void 0,d=0;this.$toolbar.find('.bs-bars').children().length&&s('body').append(s(t.toolbar)),this.$toolbar.html(''),('string'==typeof t.toolbar||'object'===n(t.toolbar))&&s(r.sprintf('
    ',this.constants.classes.pull,t.toolbarAlign)).appendTo(this.$toolbar).append(s(t.toolbar)),o=['
    '],'string'==typeof t.icons&&(t.icons=r.calculateObjectValue(null,t.icons)),t.showPaginationSwitch&&o.push(''),t.showRefresh&&o.push(''),t.showToggle&&o.push(''),t.showFullscreen&&o.push(''),t.showColumns&&(o.push('
    \n \n '+this.constants.html.toobarDropdow[0]),this.columns.forEach(function(a,n){if(!(a.radio||a.checkbox)&&(!t.cardView||a.cardVisible)){var i=a.visible?' checked="checked"':'';a.switchable&&(o.push(r.sprintf(e.constants.html.toobarDropdowItem,r.sprintf(' %s',a.field,n,i,a.title))),d++)}}),o.push(this.constants.html.toobarDropdow[1],'
    ')),o.push('
    '),(this.showToolbar||2\n \n '),this.$toolbar.append(o.join('')),l=this.$toolbar.find('.search input'),l.off('keyup drop blur').on('keyup drop blur',function(o){t.searchOnEnterKey&&13!==o.keyCode||-1!==[37,38,39,40].indexOf(o.keyCode)||(clearTimeout(a),a=setTimeout(function(){e.onSearch(o)},t.searchTimeOut))}),r.isIEBrowser()&&l.off('mouseup').on('mouseup',function(o){clearTimeout(a),a=setTimeout(function(){e.onSearch(o)},t.searchTimeOut)}))}},{key:'onSearch',value:function(e){var t=e.currentTarget,o=e.firedByInitSearchText,a=s(t).val().trim();this.options.trimOnSearch&&s(t).val()!==a&&s(t).val(a),a===this.searchText||(this.searchText=a,this.options.searchText=a,!o&&(this.options.pageNumber=1),this.initSearch(),o?'client'===this.options.sidePagination&&this.updatePagination():this.updatePagination(),this.trigger('search',a))}},{key:'initSearch',value:function(){var e=this;if('server'!==this.options.sidePagination){if(this.options.customSearch)return void(this.data=r.calculateObjectValue(this.options,this.options.customSearch,[this.options.data,this.searchText]));var t=this.searchText&&(this.options.escape?r.escapeHTML(this.searchText):this.searchText).toLowerCase(),o=r.isEmptyObject(this.filterColumns)?null:this.filterColumns;this.data=o?this.options.data.filter(function(e){for(var t in o)if(Array.isArray(o[t])&&-1===o[t].indexOf(e[t])||!Array.isArray(o[t])&&e[t]!==o[t])return!1;return!0}):this.options.data,this.data=t?this.data.filter(function(o,a){for(var c=0;cthis.totalPages&&(a.pageNumber=this.totalPages),this.pageFrom=(a.pageNumber-1)*a.pageSize+1,this.pageTo=a.pageNumber*a.pageSize,this.pageTo>a.totalRows&&(this.pageTo=a.totalRows);var f=a.onlyInfoPagination?a.formatDetailPagination(a.totalRows):a.formatShowingRows(this.pageFrom,this.pageTo,a.totalRows);if(o.push('
    \n \n '+f+'\n '),!a.onlyInfoPagination){o.push('');var P=['\n \n '+this.constants.html.pageDropdown[0]];if('string'==typeof a.pageList){var C=a.pageList.replace('[','').replace(']','').replace(/ /g,'').split(',');u=[];for(var b=C,m=Array.isArray(b),y=0,_iterator9=m?b:b[Symbol.iterator]();;){var w;if(m){if(y>=b.length)break;w=b[y++]}else{if(y=b.next(),y.done)break;w=y.value}var k=w;u.push(k.toUpperCase()===a.formatAllRows().toUpperCase()||'UNLIMITED'===k.toUpperCase()?a.formatAllRows():+k)}}u.forEach(function(e,o){if(!a.smartDisplay||0===o||u[o-1]'),o.push(a.formatRecordsPerPage(P.join(''))),o.push('
    '),o.push('')}this.$pagination.html(o.join(''));var S=-1===['bottom','both'].indexOf(a.paginationVAlign)?'':' '+this.constants.classes.dropup;this.$pagination.last().find('.page-list > span').addClass(S),a.onlyInfoPagination||(d=this.$pagination.find('.page-list a'),c=this.$pagination.find('.page-pre'),p=this.$pagination.find('.page-next'),h=this.$pagination.find('.page-item').not('.page-next, .page-pre'),a.smartDisplay&&(1>=this.totalPages&&this.$pagination.find('div.pagination').hide(),(2>u.length||a.totalRows<=u[0])&&this.$pagination.find('span.page-list').hide(),this.$pagination[this.getData().length?'show':'hide']()),!a.paginationLoop&&(1===a.pageNumber&&c.addClass('disabled'),a.pageNumber===this.totalPages&&p.addClass('disabled')),n&&(a.pageSize=a.formatAllRows()),d.off('click').on('click',function(o){return t.onPageListChange(o)}),c.off('click').on('click',function(o){return t.onPagePre(o)}),p.off('click').on('click',function(o){return t.onPageNext(o)}),h.off('click').on('click',function(o){return t.onPageNumber(o)}))}},{key:'updatePagination',value:function(e){e&&s(e.currentTarget).hasClass('disabled')||(!this.options.maintainSelected&&this.resetRows(),this.initPagination(),'server'===this.options.sidePagination?this.initServer():this.initBody(),this.trigger('page-change',this.options.pageNumber,this.options.pageSize))}},{key:'onPageListChange',value:function(e){e.preventDefault();var t=s(e.currentTarget);return t.parent().addClass(this.constants.classes.dropdownActive).siblings().removeClass(this.constants.classes.dropdownActive),this.options.pageSize=t.text().toUpperCase()===this.options.formatAllRows().toUpperCase()?this.options.formatAllRows():+t.text(),this.$toolbar.find('.page-size').text(this.options.pageSize),this.updatePagination(e),!1}},{key:'onPagePre',value:function(e){return e.preventDefault(),0==this.options.pageNumber-1?this.options.pageNumber=this.options.totalPages:this.options.pageNumber--,this.updatePagination(e),!1}},{key:'onPageNext',value:function(e){return e.preventDefault(),this.options.pageNumber+1>this.options.totalPages?this.options.pageNumber=1:this.options.pageNumber++,this.updatePagination(e),!1}},{key:'onPageNumber',value:function(e){if(e.preventDefault(),this.options.pageNumber!==+s(e.currentTarget).text())return this.options.pageNumber=+s(e.currentTarget).text(),this.updatePagination(e),!1}},{key:'initRow',value:function(e,t){var o=this,i=[],n={},s=[],l='',d={},c=[];if(!(-1=p.length)break;u=p[g++]}else{if(g=p.next(),g.done)break;u=g.value}var f=u,b=a(f,2),m=b[0],y=b[1];s.push(m+': '+y)}if(d=r.calculateObjectValue(this.options,this.options.rowAttributes,[e,t],d),d)for(var w=function(e){return Object.keys(e).map(function(t){return[t,e[t]]})}(d),x=Array.isArray(w),S=0,_iterator11=x?w:w[Symbol.iterator]();;){var $;if(x){if(S>=w.length)break;$=w[S++]}else{if(S=w.next(),S.done)break;$=S.value}var P=$,C=a(P,2),T=C[0],A=C[1];c.push(T+'="'+r.escapeHTML(A)+'"')}if(e._data&&!r.isEmptyObject(e._data))for(var O=function(e){return Object.keys(e).map(function(t){return[t,e[t]]})}(e._data),I=Array.isArray(O),R=0,_iterator12=I?O:O[Symbol.iterator]();;){var _;if(I){if(R>=O.length)break;_=O[R++]}else{if(R=O.next(),R.done)break;_=R.value}var V=_,F=a(V,2),B=F[0],k=F[1];if('index'===B)return;l+=' data-'+B+'="'+k+'"'}return i.push(''),this.options.cardView&&i.push('
    '),!this.options.cardView&&this.options.detailView&&(i.push(''),r.calculateObjectValue(null,this.options.detailFilter,[t,e])&&i.push('\n \n '+r.sprintf(this.constants.html.icon,this.options.iconsPrefix,this.options.icons.detailOpen)+'\n \n '),i.push('')),this.header.fields.forEach(function(n,l){var d='',p=r.getItemField(e,n,o.options.escape),h='',g='',u={},f='',b=o.header.classes[l],m='',y='',w='',k='',v='',x=o.columns[l];if((!o.fromHtml||'undefined'!=typeof p||x.checkbox||x.radio)&&x.visible&&(!o.options.cardView||x.cardVisible)){if(x.escape&&(p=r.escapeHTML(p)),s.concat([o.header.styles[l]]).length&&(m=' style="'+s.concat([o.header.styles[l]]).join('; ')+'"'),e['_'+n+'_id']&&(f=r.sprintf(' id="%s"',e['_'+n+'_id'])),e['_'+n+'_class']&&(b=r.sprintf(' class="%s"',e['_'+n+'_class'])),e['_'+n+'_rowspan']&&(w=r.sprintf(' rowspan="%s"',e['_'+n+'_rowspan'])),e['_'+n+'_colspan']&&(k=r.sprintf(' colspan="%s"',e['_'+n+'_colspan'])),e['_'+n+'_title']&&(v=r.sprintf(' title="%s"',e['_'+n+'_title'])),u=r.calculateObjectValue(o.header,o.header.cellStyles[l],[p,e,t,n],u),u.classes&&(b=' class="'+u.classes+'"'),u.css){for(var S=[],$=function(e){return Object.keys(e).map(function(t){return[t,e[t]]})}(u.css),P=Array.isArray($),C=0,_iterator13=P?$:$[Symbol.iterator]();;){var T;if(P){if(C>=$.length)break;T=$[C++]}else{if(C=$.next(),C.done)break;T=C.value}var A=T,O=a(A,2),I=O[0],R=O[1];S.push(I+': '+R)}m=' style="'+S.concat(o.header.styles[l]).join('; ')+'"'}if(h=r.calculateObjectValue(x,o.header.formatters[l],[p,e,t,n],p),e['_'+n+'_data']&&!r.isEmptyObject(e['_'+n+'_data']))for(var _=function(e){return Object.keys(e).map(function(t){return[t,e[t]]})}(e['_'+n+'_data']),V=Array.isArray(_),F=0,_iterator14=V?_:_[Symbol.iterator]();;){var B;if(V){if(F>=_.length)break;B=_[F++]}else{if(F=_.next(),F.done)break;B=F.value}var N=B,j=a(N,2),H=j[0],L=j[1];if('index'===H)return;y+=' data-'+H+'="'+L+'"'}if(x.checkbox||x.radio){g=x.checkbox?'checkbox':g,g=x.radio?'radio':g;var D=x['class']||'',c=!0===h||p||h&&h.checked,E=!x.checkboxEnabled||h&&h.disabled;d=[o.options.cardView?'
    ':'','',o.header.formatters[l]&&'string'==typeof h?h:'',o.options.cardView?'
    ':''].join(''),e[o.header.stateField]=!0===h||!!p||h&&h.checked}else if(h='undefined'==typeof h||null===h?o.options.undefinedText:h,o.options.cardView){var U=o.options.showHeader?''+r.getFieldTitle(o.columns,n)+'':'';d='
    '+U+''+h+'
    ',o.options.smartDisplay&&''===h&&(d='
    ')}else d=''+h+'';i.push(d)}}),this.options.cardView&&i.push('
    '),i.push(''),i.join('')}}},{key:'initBody',value:function(e){var t=this,o=this.getData();this.trigger('pre-body',o),this.$body=this.$el.find('>tbody'),this.$body.length||(this.$body=s('').appendTo(this.$el)),this.options.pagination&&'server'!==this.options.sidePagination||(this.pageFrom=1,this.pageTo=o.length);for(var n=s(document.createDocumentFragment()),l=!1,d=this.pageFrom-1;d'+r.sprintf('%s',this.$header.find('th').length,this.options.formatNoMatches())+''),e||this.scrollTo(0),this.$body.find('> tr[data-index] > td').off('click dblclick').on('click dblclick',function(e){var o=e.currentTarget,a=e.type,i=e.target,n=s(o),l=n.parent(),d=s(i).parents('.card-views').children(),c=s(i).parents('.card-view'),p=t.data[l.data('index')],h=t.options.cardView?d.index(c):n[0].cellIndex,g=t.getVisibleFields(),u=g[t.options.detailView&&!t.options.cardView?h-1:h],f=t.columns[t.fieldsColumnsIndex[u]],b=r.getItemField(p,u,t.options.escape);if(!n.find('.detail-icon').length&&(t.trigger('click'===a?'click-cell':'dbl-click-cell',u,b,p,n),t.trigger('click'===a?'click-row':'dbl-click-row',p,l,u),'click'===a&&t.options.clickToSelect&&f.clickToSelect&&!r.calculateObjectValue(t.options,t.options.ignoreClickToSelectOn,[i]))){var m=l.find(r.sprintf('[name="%s"]',t.options.selectItemName));m.length&&m[0].click()}}),this.$body.find('> tr[data-index] > td > .detail-icon').off('click').on('click',function(a){a.preventDefault();var e=s(a.currentTarget),i=e.parent().parent(),n=i.data('index'),l=o[n];if(i.next().is('tr.detail-view'))e.html(r.sprintf(t.constants.html.icon,t.options.iconsPrefix,t.options.icons.detailOpen)),t.trigger('collapse-row',n,l,i.next()),i.next().remove();else{e.html(r.sprintf(t.constants.html.icon,t.options.iconsPrefix,t.options.icons.detailClose)),i.after(r.sprintf('',i.children('td').length));var d=i.next().find('td'),c=r.calculateObjectValue(t.options,t.options.detailFormatter,[n,l,d],'');1===d.length&&d.append(c),t.trigger('expand-row',n,l,d)}return t.resetView(),!1}),this.$selectItem=this.$body.find(r.sprintf('[name="%s"]',this.options.selectItemName)),this.$selectItem.off('click').on('click',function(o){o.stopImmediatePropagation();var e=s(o.currentTarget);t.check_(e.prop('checked'),e.data('index'))}),this.header.events.forEach(function(e,o){var i=e;if(i){'string'==typeof i&&(i=r.calculateObjectValue(null,i));var n=t.header.fields[o],l=t.getVisibleFields().indexOf(n);if(-1!==l){t.options.detailView&&!t.options.cardView&&(l+=1);for(var d=function(){if(p){if(h>=c.length)return'break';g=c[h++]}else{if(h=c.next(),h.done)return'break';g=h.value}var e=g,o=a(e,2),r=o[0],i=o[1];t.$body.find('>tr:not(.no-records-found)').each(function(e,o){var a=s(o),d=a.find(t.options.cardView?'.card-view':'td').eq(l),c=r.indexOf(' '),p=r.substring(0,c),h=r.substring(c+1);d.find(h).off(p).on(p,function(o){var e=a.data('index'),s=t.data[e],l=s[n];i.apply(t,[o,l,s,e])})})},c=function(e){return Object.keys(e).map(function(t){return[t,e[t]]})}(i),p=Array.isArray(c),h=0,_iterator15=p?c:c[Symbol.iterator]();;){var g,u=d();if('break'===u)break}}}}),this.updateSelected(),this.resetView(),this.trigger('post-body',o)}},{key:'initServer',value:function(e,t,o){var a=this,i={},n=this.header.fields.indexOf(this.options.sortName),l={searchText:this.searchText,sortName:this.options.sortName,sortOrder:this.options.sortOrder};if((this.header.sortNames[n]&&(l.sortName=this.header.sortNames[n]),this.options.pagination&&'server'===this.options.sidePagination&&(l.pageSize=this.options.pageSize===this.options.formatAllRows()?this.options.totalRows:this.options.pageSize,l.pageNumber=this.options.pageNumber),o||this.options.url||this.options.ajax)&&('limit'===this.options.queryParamsType&&(l={search:l.searchText,sort:l.sortName,order:l.sortOrder},this.options.pagination&&'server'===this.options.sidePagination&&(l.offset=this.options.pageSize===this.options.formatAllRows()?0:this.options.pageSize*(this.options.pageNumber-1),l.limit=this.options.pageSize===this.options.formatAllRows()?this.options.totalRows:this.options.pageSize,0===l.limit&&delete l.limit)),r.isEmptyObject(this.filterColumnsPartial)||(l.filter=JSON.stringify(this.filterColumnsPartial,null)),i=r.calculateObjectValue(this.options,this.options.queryParams,[l],i),s.extend(i,t||{}),!1!==i)){e||this.showLoading();var d=s.extend({},r.calculateObjectValue(null,this.options.ajaxOptions),{type:this.options.method,url:o||this.options.url,data:'application/json'===this.options.contentType&&'post'===this.options.method?JSON.stringify(i):i,cache:this.options.cache,contentType:this.options.contentType,dataType:this.options.dataType,success:function(t){var o=r.calculateObjectValue(a.options,a.options.responseHandler,[t],t);a.load(o),a.trigger('load-success',o),e||a.hideLoading()},error:function(t){var o=[];'server'===a.options.sidePagination&&(o={},o[a.options.totalField]=0,o[a.options.dataField]=[]),a.load(o),a.trigger('load-error',t.status,t),e||a.$tableLoading.hide()}});return this.options.ajax?r.calculateObjectValue(this,this.options.ajax,[d],null):(this._xhr&&4!==this._xhr.readyState&&this._xhr.abort(),this._xhr=s.ajax(d)),i}}},{key:'initSearchText',value:function(){if(this.options.search&&(this.searchText='',''!==this.options.searchText)){var e=this.$toolbar.find('.search input');e.val(this.options.searchText),this.onSearch({currentTarget:e,firedByInitSearchText:!0})}}},{key:'getCaret',value:function(){var e=this;this.$header.find('th').each(function(t,o){s(o).find('.sortable').removeClass('desc asc').addClass(s(o).data('field')===e.options.sortName?e.options.sortOrder:'both')})}},{key:'updateSelected',value:function(){var e=this.$selectItem.filter(':enabled').length&&this.$selectItem.filter(':enabled').length===this.$selectItem.filter(':enabled').filter(':checked').length;this.$selectAll.add(this.$selectAll_).prop('checked',e),this.$selectItem.each(function(e,t){s(t).closest('tr')[s(t).prop('checked')?'addClass':'removeClass']('selected')})}},{key:'updateRows',value:function(){var e=this;this.$selectItem.each(function(t,o){e.data[s(o).data('index')][e.header.stateField]=s(o).prop('checked')})}},{key:'resetRows',value:function(){for(var e=this.data,t=Array.isArray(e),o=0,_iterator16=t?e:e[Symbol.iterator]();;){var a;if(t){if(o>=e.length)break;a=e[o++]}else{if(o=e.next(),o.done)break;a=o.value}var i=a;this.$selectAll.prop('checked',!1),this.$selectItem.prop('checked',!1),this.header.stateField&&(i[this.header.stateField]=!1)}this.initHiddenRows()}},{key:'trigger',value:function(e){for(var o,a=e+'.bs.table',i=arguments.length,n=Array(1t.clientWidth&&t.scrollHeight>t.clientHeight+this.$header.outerHeight()?r.getScrollBarWidth():0;this.$el.css('margin-top',-this.$header.outerHeight());var a=s(':focus');if(0tr:first-child:not(.no-records-found)');d.length&&d.find('>td[colspan]:not([colspan="1"])').length;)d=d.next();d.find('> *').each(function(t,o){var a=s(o),i=t;if(e.options.detailView&&!e.options.cardView){if(0===t){var d=l.filter('.detail'),c=d.width()-d.find('.fht-cell').width();d.find('.fht-cell').width(a.innerWidth()-c)}i=t-1}if(-1!==i){var p=e.$header_.find(r.sprintf('th[data-field="%s"]',n[i]));1
    ');for(var o=this.columns,i=Array.isArray(o),n=0,_iterator17=i?o:o[Symbol.iterator]();;){var s;if(i){if(n>=o.length)break;s=o[n++]}else{if(n=o.next(),n.done)break;s=n.value}var l=s,d='',c='',p=[],h={},g=r.sprintf(' class="%s"',l['class']);if(l.visible){if(this.options.cardView&&!l.cardVisible)return;if(d=r.sprintf('text-align: %s; ',l.falign?l.falign:l.align),c=r.sprintf('vertical-align: %s; ',l.valign),h=r.calculateObjectValue(null,this.options.footerStyle,[l]),h&&h.css)for(var u=function(e){return Object.keys(e).map(function(t){return[t,e[t]]})}(h.css),f=Array.isArray(u),b=0,_iterator18=f?u:u[Symbol.iterator]();;){var m;if(f){if(b>=u.length)break;m=u[b++]}else{if(b=u.next(),b.done)break;m=b.value}var y=m,w=a(y,2),k=w[0],v=w[1];p.push(k+': '+v)}h&&h.classes&&(g=r.sprintf(' class="%s"',l['class']?[l['class'],h.classes].join(' '):h.classes)),t.push(''),t.push('
    '),t.push(r.calculateObjectValue(l,l.footerFormatter,[e],'')),t.push('
    '),t.push('
    '),t.push(''),t.push('')}}this.$tableFooter.find('tr').html(t.join('')),this.$tableFooter.show(),this.fitFooter()}}},{key:'fitFooter',value:function(){var e=this;if(this.$el.is(':hidden'))return void setTimeout(function(){return e.fitFooter()},100);var t=this.$tableBody.get(0),o=t.scrollWidth>t.clientWidth&&t.scrollHeight>t.clientHeight+this.$header.outerHeight()?r.getScrollBarWidth():0;this.$tableFooter.css('margin-right',o).find('table').css('width',this.$el.outerWidth()).attr('class',this.$el.attr('class'));for(var a=this.getVisibleFields(),n=this.$tableFooter.find('th'),i=this.$body.find('>tr:first-child:not(.no-records-found)');i.length&&i.find('>td[colspan]:not([colspan="1"])').length;)i=i.next();i.find('> *').each(function(t,o){var a=s(o),i=t;if(e.options.detailView&&!e.options.cardView){if(0===t){var l=n.filter('.detail'),r=l.width()-l.find('.fht-cell').width();l.find('.fht-cell').width(a.innerWidth()-r)}i=t-1}if(-1!==i){var d=n.eq(t),c=d.width()-d.find('.fht-cell').width();d.find('.fht-cell').width(a.innerWidth()-c)}}),this.horizontalScroll()}},{key:'horizontalScroll',value:function(){var e=this;this.trigger('scroll-body'),this.$tableBody.off('scroll').on('scroll',function(t){var o=t.currentTarget;e.options.showHeader&&e.options.height&&e.$tableHeader.scrollLeft(s(o).scrollLeft()),e.options.showFooter&&!e.options.cardView&&e.$tableFooter.scrollLeft(s(o).scrollLeft())})}},{key:'toggleColumn',value:function(e,t,o){if(-1!==e&&(this.columns[e].visible=t,this.initHeader(),this.initSearch(),this.initPagination(),this.initBody(),this.options.showColumns)){var a=this.$toolbar.find('.keep-open input').prop('disabled',!1);o&&a.filter(r.sprintf('[value="%s"]',e)).prop('checked',t),a.filter(':checked').length<=this.options.minimumCountColumns&&a.filter(':checked').prop('disabled',!0)}}},{key:'getVisibleFields',value:function(){for(var e=[],t=this.header.fields,o=Array.isArray(t),a=0,_iterator19=o?t:t[Symbol.iterator]();;){var i;if(o){if(a>=t.length)break;i=t[a++]}else{if(a=t.next(),a.done)break;i=a.value}var n=i,s=this.columns[this.fieldsColumnsIndex[n]];s.visible&&e.push(n)}return e}},{key:'resetView',value:function(e){var t=0;if(e&&e.height&&(this.options.height=e.height),this.$selectAll.prop('checked',0=o.length)break;n=o[i++]}else{if(i=o.next(),i.done)break;n=i.value}var l=n;if(l.hasOwnProperty('id')&&l.hasOwnProperty('row')){var r=this.options.data.indexOf(this.getRowByUniqueId(l.id));-1!==r&&s.extend(this.options.data[r],l.row)}}this.initSearch(),this.initPagination(),this.initSort(),this.initBody(!0)}},{key:'refreshColumnTitle',value:function(e){if(e.hasOwnProperty('field')&&e.hasOwnProperty('title')&&(this.columns[this.fieldsColumnsIndex[e.field]].title=this.options.escape?r.escapeHTML(e.title):e.title,this.columns[this.fieldsColumnsIndex[e.field]].visible)){var t=void 0===this.options.height?this.$header:this.$tableHeader;t.find('th[data-field]').each(function(t,o){if(s(o).data('field')===e.field)return s(s(o).find('.th-inner')[0]).text(e.title),!1})}}},{key:'insertRow',value:function(e){e.hasOwnProperty('index')&&e.hasOwnProperty('row')&&(this.options.data.splice(e.index,0,e.row),this.initSearch(),this.initPagination(),this.initSort(),this.initBody(!0))}},{key:'updateRow',value:function(e){for(var t=Array.isArray(e)?e:[e],o=t,a=Array.isArray(o),i=0,_iterator21=a?o:o[Symbol.iterator]();;){var n;if(a){if(i>=o.length)break;n=o[i++]}else{if(i=o.next(),i.done)break;n=i.value}var l=n;l.hasOwnProperty('index')&&l.hasOwnProperty('row')&&s.extend(this.options.data[l.index],l.row)}this.initSearch(),this.initPagination(),this.initSort(),this.initBody(!0)}},{key:'initHiddenRows',value:function(){this.hiddenRows=[]}},{key:'showRow',value:function(e){this.toggleRow(e,!0)}},{key:'hideRow',value:function(e){this.toggleRow(e,!1)}},{key:'toggleRow',value:function(e,t){var o;if(e.hasOwnProperty('index')?o=this.getData()[e.index]:e.hasOwnProperty('uniqueId')&&(o=this.getRowByUniqueId(e.uniqueId)),!!o){var a=r.findIndex(this.hiddenRows,o);t||-1!==a?t&&-1=a.length)break;s=a[n++]}else{if(n=a.next(),n.done)break;s=n.value}var l=s;-1!==this.hiddenRows.indexOf(l)&&o.push(l)}return this.hiddenRows=o,o}},{key:'mergeCells',value:function(e){var t=e.index,o=this.getVisibleFields().indexOf(e.field),a=e.rowspan||1,n=e.colspan||1,s=void 0,i=void 0,l=this.$body.find('>tr');this.options.detailView&&!this.options.cardView&&(o+=1);var r=l.eq(t).find('>td').eq(o);if(!(0>t||0>o||t>=this.data.length)){for(s=t;std').eq(i).hide();r.attr('rowspan',a).attr('colspan',n).show()}}},{key:'updateCell',value:function(e){e.hasOwnProperty('index')&&e.hasOwnProperty('field')&&e.hasOwnProperty('value')&&(this.data[e.index][e.field]=e.value,!1===e.reinit||(this.initSort(),this.initBody(!0)))}},{key:'updateCellById',value:function(e){var t=this;if(e.hasOwnProperty('id')&&e.hasOwnProperty('field')&&e.hasOwnProperty('value')){var o=Array.isArray(e)?e:[e];o.forEach(function(e){var o=e.id,a=e.field,i=e.value,n=t.options.data.indexOf(t.getRowByUniqueId(o));-1===n||(t.data[n][a]=i)}),!1===e.reinit||(this.initSort(),this.initBody(!0))}}},{key:'getOptions',value:function(){var e=JSON.parse(JSON.stringify(this.options));return delete e.data,e}},{key:'getSelections',value:function(){var e=this;return this.options.data.filter(function(t){return!0===t[e.header.stateField]})}},{key:'getAllSelections',value:function(){var e=this;return this.options.data.filter(function(t){return t[e.header.stateField]})}},{key:'checkAll',value:function(){this.checkAll_(!0)}},{key:'uncheckAll',value:function(){this.checkAll_(!1)}},{key:'checkInvert',value:function(){var e=this.$selectItem.filter(':enabled'),t=e.filter(':checked');e.each(function(e,t){s(t).prop('checked',!s(t).prop('checked'))}),this.updateRows(),this.updateSelected(),this.trigger('uncheck-some',t),t=this.getSelections(),this.trigger('check-some',t)}},{key:'checkAll_',value:function(e){var t;e||(t=this.getSelections()),this.$selectAll.add(this.$selectAll_).prop('checked',e),this.$selectItem.filter(':enabled').prop('checked',e),this.updateRows(),e&&(t=this.getSelections()),this.trigger(e?'check-all':'uncheck-all',t)}},{key:'check',value:function(e){this.check_(!0,e)}},{key:'uncheck',value:function(e){this.check_(!1,e)}},{key:'check_',value:function(e,t){var o=this.$selectItem.filter('[data-index="'+t+'"]'),a=this.data[t];if(o.is(':radio')||this.options.singleSelect){for(var i=this.options.data,n=Array.isArray(i),s=0,_iterator23=n?i:i[Symbol.iterator]();;){var l;if(n){if(s>=i.length)break;l=i[s++]}else{if(s=i.next(),s.done)break;l=s.value}var d=l;d[this.header.stateField]=!1}this.$selectItem.filter(':checked').not(o).prop('checked',!1)}a[this.header.stateField]=e,o.prop('checked',e),this.updateSelected(),this.trigger(e?'check':'uncheck',this.data[t],o)}},{key:'checkBy',value:function(e){this.checkBy_(!0,e)}},{key:'uncheckBy',value:function(e){this.checkBy_(!1,e)}},{key:'checkBy_',value:function(e,t){var o=this;if(t.hasOwnProperty('field')&&t.hasOwnProperty('values')){var a=[];this.options.data.forEach(function(n,s){if(!n.hasOwnProperty(t.field))return!1;if(-1!==t.values.indexOf(n[t.field])){var i=o.$selectItem.filter(':enabled').filter(r.sprintf('[data-index="%s"]',s)).prop('checked',e);n[o.header.stateField]=e,a.push(n),o.trigger(e?'check':'uncheck',n,i)}}),this.updateSelected(),this.trigger(e?'check-some':'uncheck-some',a)}}},{key:'destroy',value:function(){this.$el.insertBefore(this.$container),s(this.options.toolbar).insertBefore(this.$el),this.$container.next().remove(),this.$container.remove(),this.$el.html(this.$el_.html()).css('margin-top','0').attr('class',this.$el_.attr('class')||'')}},{key:'showLoading',value:function(){this.$tableLoading.css('display','flex')}},{key:'hideLoading',value:function(){this.$tableLoading.css('display','none')}},{key:'togglePagination',value:function(){this.options.pagination=!this.options.pagination,this.$toolbar.find('button[name="paginationSwitch"]').html(r.sprintf(this.constants.html.icon,this.options.iconsPrefix,this.options.pagination?this.options.icons.paginationSwitchDown:this.options.icons.paginationSwitchUp)),this.updatePagination()}},{key:'toggleFullscreen',value:function(){this.$el.closest('.bootstrap-table').toggleClass('fullscreen'),this.resetView()}},{key:'refresh',value:function(e){e&&e.url&&(this.options.url=e.url),e&&e.pageNumber&&(this.options.pageNumber=e.pageNumber),e&&e.pageSize&&(this.options.pageSize=e.pageSize),this.trigger('refresh',this.initServer(e&&e.silent,e&&e.query,e&&e.url))}},{key:'resetWidth',value:function(){this.options.showHeader&&this.options.height&&this.fitHeader(),this.options.showFooter&&!this.options.cardView&&this.fitFooter()}},{key:'showColumn',value:function(e){this.toggleColumn(this.fieldsColumnsIndex[e],!0,!0)}},{key:'hideColumn',value:function(e){this.toggleColumn(this.fieldsColumnsIndex[e],!1,!0)}},{key:'getHiddenColumns',value:function(){return this.columns.filter(function(e){var t=e.visible;return!t})}},{key:'getVisibleColumns',value:function(){return this.columns.filter(function(e){var t=e.visible;return t})}},{key:'toggleAllColumns',value:function(e){for(var t=this.columns,o=Array.isArray(t),a=0,_iterator24=o?t:t[Symbol.iterator]();;){var i;if(o){if(a>=t.length)break;i=t[a++]}else{if(a=t.next(),a.done)break;i=a.value}var n=i;n.visible=e}if(this.initHeader(),this.initSearch(),this.initPagination(),this.initBody(),this.options.showColumns){var s=this.$toolbar.find('.keep-open input').prop('disabled',!1);s.filter(':checked').length<=this.options.minimumCountColumns&&s.filter(':checked').prop('disabled',!0)}}},{key:'showAllColumns',value:function(){this.toggleAllColumns(!0)}},{key:'hideAllColumns',value:function(){this.toggleAllColumns(!1)}},{key:'filterBy',value:function(e){this.filterColumns=r.isEmptyObject(e)?{}:e,this.options.pageNumber=1,this.initSearch(),this.updatePagination()}},{key:'scrollTo',value:function(e){if('undefined'==typeof e)return this.$tableBody.scrollTop();var t=e;'string'==typeof e&&'bottom'===e&&(t=this.$tableBody[0].scrollHeight),this.$tableBody.scrollTop(t)}},{key:'getScrollPosition',value:function(){return this.scrollTo()}},{key:'selectPage',value:function(e){0 tr[data-index="%s"]',t));o.next().is('tr.detail-view')===!e&&o.find('> td > .detail-icon').click()}},{key:'expandRow',value:function(e){this.expandRow_(!0,e)}},{key:'collapseRow',value:function(e){this.expandRow_(!1,e)}},{key:'expandAllRows',value:function(e){var t=this;if(e){var o=this.$body.find(r.sprintf('> tr[data-index="%s"]',0)),a=null,n=!1,l=-1;if(o.next().is('tr.detail-view')?!o.next().next().is('tr.detail-view')&&(o.next().find('.detail-icon').click(),n=!0):(o.find('> td > .detail-icon').click(),n=!0),n)try{l=setInterval(function(){a=t.$body.find('tr.detail-view').last().find('.detail-icon'),0 - * extensions: https://github.com/kayalshri/tableExport.jquery.plugin - */ +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.bootstrapTableExport = mod.exports; + } +})(this, function () { + 'use strict'; -(function ($) { - 'use strict'; - var sprintf = $.fn.bootstrapTable.utils.sprintf; + function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; + } + + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + + var _createClass = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; + }(); + + function _possibleConstructorReturn(self, call) { + if (!self) { + throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + } + + return call && (typeof call === "object" || typeof call === "function") ? call : self; + } + + var _get = function get(object, property, receiver) { + if (object === null) object = Function.prototype; + var desc = Object.getOwnPropertyDescriptor(object, property); + + if (desc === undefined) { + var parent = Object.getPrototypeOf(object); + + if (parent === null) { + return undefined; + } else { + return get(parent, property, receiver); + } + } else if ("value" in desc) { + return desc.value; + } else { + var getter = desc.get; + + if (getter === undefined) { + return undefined; + } + + return getter.call(receiver); + } + }; + + function _inherits(subClass, superClass) { + if (typeof superClass !== "function" && superClass !== null) { + throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); + } + + subClass.prototype = Object.create(superClass && superClass.prototype, { + constructor: { + value: subClass, + enumerable: false, + writable: true, + configurable: true + } + }); + if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; + } + + /** + * @author zhixin wen + * extensions: https://github.com/hhurz/tableExport.jquery.plugin + */ + + (function ($) { + var Utils = $.fn.bootstrapTable.utils; + + var bootstrap = { + 3: { + icons: { + export: 'glyphicon-export icon-share' + }, + html: { + dropmenu: '', + dropitem: '
  • %s
  • ' + } + }, + 4: { + icons: { + export: 'fa-download' + }, + html: { + dropmenu: '', + dropitem: '%s' + } + } + }[Utils.bootstrapVersion]; var TYPE_NAME = { - json: 'JSON', - xml: 'XML', - png: 'PNG', - csv: 'CSV', - txt: 'TXT', - sql: 'SQL', - doc: 'MS-Word', - excel: 'MS-Excel', - xlsx: 'MS-Excel (OpenXML)', - powerpoint: 'MS-Powerpoint', - pdf: 'PDF' + json: 'JSON', + xml: 'XML', + png: 'PNG', + csv: 'CSV', + txt: 'TXT', + sql: 'SQL', + doc: 'MS-Word', + excel: 'MS-Excel', + xlsx: 'MS-Excel (OpenXML)', + powerpoint: 'MS-Powerpoint', + pdf: 'PDF' }; $.extend($.fn.bootstrapTable.defaults, { - showExport: false, - exportDataType: 'basic', // basic, all, selected - // 'json', 'xml', 'png', 'csv', 'txt', 'sql', 'doc', 'excel', 'powerpoint', 'pdf' - exportTypes: ['json', 'xml', 'csv', 'txt', 'sql', 'excel'], - exportOptions: {} + showExport: false, + exportDataType: 'basic', // basic, all, selected + exportTypes: ['json', 'xml', 'csv', 'txt', 'sql', 'excel'], + exportOptions: {}, + exportFooter: false }); $.extend($.fn.bootstrapTable.defaults.icons, { - export: 'glyphicon-export icon-share' + export: bootstrap.icons.export }); $.extend($.fn.bootstrapTable.locales, { - formatExport: function () { - return 'Export data'; - } + formatExport: function formatExport() { + return 'Export data'; + } }); $.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales); - var BootstrapTable = $.fn.bootstrapTable.Constructor, - _initToolbar = BootstrapTable.prototype.initToolbar; + $.fn.bootstrapTable.methods.push('exportTable'); - BootstrapTable.prototype.initToolbar = function () { - this.showToolbar = this.showToolbar || this.options.showExport; + $.BootstrapTable = function (_$$BootstrapTable) { + _inherits(_class, _$$BootstrapTable); - _initToolbar.apply(this, Array.prototype.slice.apply(arguments)); + function _class() { + _classCallCheck(this, _class); - if (this.options.showExport) { - var that = this, - $btnGroup = this.$toolbar.find('>.btn-group'), - $export = $btnGroup.find('div.export'); + return _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments)); + } - if (!$export.length) { - $export = $([ - '
    ', - '', - '', - '
    '].join('')).appendTo($btnGroup); + _createClass(_class, [{ + key: 'initToolbar', + value: function initToolbar() { + var _this2 = this; - var $menu = $export.find('.dropdown-menu'), - exportTypes = this.options.exportTypes; + var o = this.options; - if (typeof this.options.exportTypes === 'string') { - var types = this.options.exportTypes.slice(1, -1).replace(/ /g, '').split(','); + this.showToolbar = this.showToolbar || o.showExport; - exportTypes = []; - $.each(types, function (i, value) { - exportTypes.push(value.slice(1, -1)); - }); - } - $.each(exportTypes, function (i, type) { - if (TYPE_NAME.hasOwnProperty(type)) { - $menu.append(['
  • ', - '', - TYPE_NAME[type], - '', - '
  • '].join('')); - } - }); + _get(_class.prototype.__proto__ || Object.getPrototypeOf(_class.prototype), 'initToolbar', this).call(this); - $menu.find('li').click(function () { - var type = $(this).data('type'), - doExport = function () { + if (!this.options.showExport) { + return; + } + var $btnGroup = this.$toolbar.find('>.btn-group'); + this.$export = $btnGroup.find('div.export'); - if (!!that.options.exportFooter) { - var data = that.getData(); - var $footerRow = that.$tableFooter.find("tr").first(); + if (this.$export.length) { + this.updateExportButton(); + return; + } + this.$export = $('\n
    \n \n ' + bootstrap.html.dropmenu + '\n
    \n ').appendTo($btnGroup); - var footerData = { }; - var footerHtml = []; + this.updateExportButton(); - $.each($footerRow.children(), function (index, footerCell) { + var $menu = this.$export.find('.dropdown-menu'); + var exportTypes = o.exportTypes; - var footerCellHtml = $(footerCell).children(".th-inner").first().html(); - footerData[that.columns[index].field] = footerCellHtml == ' ' ? null : footerCellHtml; + if (typeof exportTypes === 'string') { + var types = exportTypes.slice(1, -1).replace(/ /g, '').split(','); + exportTypes = types.map(function (t) { + return t.slice(1, -1); + }); + } + for (var _iterator = exportTypes, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { + var _ref; - // grab footer cell text into cell index-based array - footerHtml.push(footerCellHtml); - }); - - that.append(footerData); - - var $lastTableRow = that.$body.children().last(); - - $.each($lastTableRow.children(), function (index, lastTableRowCell) { - - $(lastTableRowCell).html(footerHtml[index]); - }); - } - - that.$el.tableExport($.extend({}, that.options.exportOptions, { - type: type, - escape: false - })); - - if (!!that.options.exportFooter) { - that.load(data); - } - }; - - var stateField = that.header.stateField; - - if (that.options.exportDataType === 'all' && that.options.pagination) { - that.$el.one(that.options.sidePagination === 'server' ? 'post-body.bs.table' : 'page-change.bs.table', function () { - if (stateField) { - that.hideColumn(stateField); - } - doExport(); - that.togglePagination(); - }); - that.togglePagination(); - } else if (that.options.exportDataType === 'selected') { - var data = that.getData(), - selectedData = that.getSelections(); - if (!selectedData.length) { - return; - } - - if (that.options.sidePagination === 'server') { - var dataServer = {total: that.options.totalRows}; - dataServer[that.options.dataField] = data; - data = dataServer; - var selectedDataServer = {total: selectedData.length}; - selectedDataServer[that.options.dataField] = selectedData; - selectedData = selectedDataServer; - } - - that.load(selectedData); - if (stateField) { - that.hideColumn(stateField); - } - doExport(); - that.load(data); - } else { - if (stateField) { - that.hideColumn(stateField); - } - doExport(); - } - if (stateField) { - that.showColumn(stateField); - } - }); + if (_isArray) { + if (_i >= _iterator.length) break; + _ref = _iterator[_i++]; + } else { + _i = _iterator.next(); + if (_i.done) break; + _ref = _i.value; } + + var type = _ref; + + if (TYPE_NAME.hasOwnProperty(type)) { + $menu.append(Utils.sprintf(bootstrap.html.dropitem, type, TYPE_NAME[type])); + } + } + + $menu.find('>li, >a').click(function (_ref2) { + var currentTarget = _ref2.currentTarget; + + var type = $(currentTarget).data('type'); + var exportOptions = { + type: type, + escape: false + }; + + _this2.exportTable(exportOptions); + }); } - }; -})(jQuery); + }, { + key: 'exportTable', + value: function exportTable(options) { + var _this3 = this; + + var o = this.options; + var stateField = this.header.stateField; + var isCardView = o.cardView; + + var doExport = function doExport(callback) { + if (stateField) { + _this3.hideColumn(stateField); + } + if (isCardView) { + _this3.toggleView(); + } + + var data = _this3.getData(); + if (o.exportFooter) { + var $footerRow = _this3.$tableFooter.find('tr').first(); + var footerData = {}; + var footerHtml = []; + + $.each($footerRow.children(), function (index, footerCell) { + var footerCellHtml = $(footerCell).children('.th-inner').first().html(); + footerData[_this3.columns[index].field] = footerCellHtml === ' ' ? null : footerCellHtml; + + // grab footer cell text into cell index-based array + footerHtml.push(footerCellHtml); + }); + + _this3.append(footerData); + + var $lastTableRow = _this3.$body.children().last(); + + $.each($lastTableRow.children(), function (index, lastTableRowCell) { + $(lastTableRowCell).html(footerHtml[index]); + }); + } + + _this3.$el.tableExport($.extend({ + onAfterSaveToFile: function onAfterSaveToFile() { + if (o.exportFooter) { + _this3.load(data); + } + + if (stateField) { + _this3.showColumn(stateField); + } + if (isCardView) { + _this3.toggleView(); + } + + callback(); + } + }, o.exportOptions, options)); + }; + + if (o.exportDataType === 'all' && o.pagination) { + var eventName = o.sidePagination === 'server' ? 'post-body.bs.table' : 'page-change.bs.table'; + this.$el.one(eventName, function () { + doExport(function () { + _this3.togglePagination(); + }); + }); + this.togglePagination(); + } else if (o.exportDataType === 'selected') { + var data = this.getData(); + var selectedData = this.getSelections(); + if (!selectedData.length) { + return; + } + + if (o.sidePagination === 'server') { + data = _defineProperty({ + total: o.totalRows + }, this.options.dataField, data); + selectedData = _defineProperty({ + total: selectedData.length + }, this.options.dataField, selectedData); + } + + this.load(selectedData); + doExport(function () { + _this3.load(data); + }); + } else { + doExport(); + } + } + }, { + key: 'updateSelected', + value: function updateSelected() { + _get(_class.prototype.__proto__ || Object.getPrototypeOf(_class.prototype), 'updateSelected', this).call(this); + this.updateExportButton(); + } + }, { + key: 'updateExportButton', + value: function updateExportButton() { + if (this.options.exportDataType === 'selected') { + this.$export.find('> button').prop('disabled', !this.getSelections().length); + } + } + }]); + + return _class; + }($.BootstrapTable); + })(jQuery); +}); \ No newline at end of file diff --git a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js index 3036646d..fefde90c 100644 --- a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js +++ b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js @@ -1,7 +1,10 @@ -/* -* bootstrap-table - v1.12.1 - 2018-03-12 -* https://github.com/wenzhixin/bootstrap-table -* Copyright (c) 2018 zhixin wen -* Licensed MIT License -*/ -!function(a){"use strict";var b=a.fn.bootstrapTable.utils.sprintf,c={json:"JSON",xml:"XML",png:"PNG",csv:"CSV",txt:"TXT",sql:"SQL",doc:"MS-Word",excel:"MS-Excel",xlsx:"MS-Excel (OpenXML)",powerpoint:"MS-Powerpoint",pdf:"PDF"};a.extend(a.fn.bootstrapTable.defaults,{showExport:!1,exportDataType:"basic",exportTypes:["json","xml","csv","txt","sql","excel"],exportOptions:{}}),a.extend(a.fn.bootstrapTable.defaults.icons,{"export":"glyphicon-export icon-share"}),a.extend(a.fn.bootstrapTable.locales,{formatExport:function(){return"Export data"}}),a.extend(a.fn.bootstrapTable.defaults,a.fn.bootstrapTable.locales);var d=a.fn.bootstrapTable.Constructor,e=d.prototype.initToolbar;d.prototype.initToolbar=function(){if(this.showToolbar=this.showToolbar||this.options.showExport,e.apply(this,Array.prototype.slice.apply(arguments)),this.options.showExport){var d=this,f=this.$toolbar.find(">.btn-group"),g=f.find("div.export");if(!g.length){g=a(['
    ','",'","
    "].join("")).appendTo(f);var h=g.find(".dropdown-menu"),i=this.options.exportTypes;if("string"==typeof this.options.exportTypes){var j=this.options.exportTypes.slice(1,-1).replace(/ /g,"").split(",");i=[],a.each(j,function(a,b){i.push(b.slice(1,-1))})}a.each(i,function(a,b){c.hasOwnProperty(b)&&h.append(['
  • ','',c[b],"","
  • "].join(""))}),h.find("li").click(function(){var b=a(this).data("type"),c=function(){if(d.options.exportFooter){var c=d.getData(),e=d.$tableFooter.find("tr").first(),f={},g=[];a.each(e.children(),function(b,c){var e=a(c).children(".th-inner").first().html();f[d.columns[b].field]=" "==e?null:e,g.push(e)}),d.append(f);var h=d.$body.children().last();a.each(h.children(),function(b,c){a(c).html(g[b])})}d.$el.tableExport(a.extend({},d.options.exportOptions,{type:b,escape:!1})),d.options.exportFooter&&d.load(c)},e=d.header.stateField;if("all"===d.options.exportDataType&&d.options.pagination)d.$el.one("server"===d.options.sidePagination?"post-body.bs.table":"page-change.bs.table",function(){e&&d.hideColumn(e),c(),d.togglePagination()}),d.togglePagination();else if("selected"===d.options.exportDataType){var f=d.getData(),g=d.getSelections();if(!g.length)return;if("server"===d.options.sidePagination){var h={total:d.options.totalRows};h[d.options.dataField]=f,f=h;var i={total:g.length};i[d.options.dataField]=g,g=i}d.load(g),e&&d.hideColumn(e),c(),d.load(f)}else e&&d.hideColumn(e),c();e&&d.showColumn(e)})}}}}(jQuery); \ No newline at end of file +/** + * bootstrap-table - An extended Bootstrap table with radio, checkbox, sort, pagination, and other added features. (supports twitter bootstrap v2 and v3). + * + * @version v1.14.2 + * @homepage https://bootstrap-table.com + * @author wenzhixin (http://wenzhixin.net.cn/) + * @license MIT + */ + +(function(a,b){if('function'==typeof define&&define.amd)define([],b);else if('undefined'!=typeof exports)b();else{b(),a.bootstrapTableExport={exports:{}}.exports}})(this,function(){'use strict';function a(a,b,c){return b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function b(a,b){if(!(a instanceof b))throw new TypeError('Cannot call a class as a function')}function c(a,b){if(!a)throw new ReferenceError('this hasn\'t been initialised - super() hasn\'t been called');return b&&('object'==typeof b||'function'==typeof b)?b:a}function d(a,b){if('function'!=typeof b&&null!==b)throw new TypeError('Super expression must either be null or a function, not '+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(Object.setPrototypeOf?Object.setPrototypeOf(a,b):a.__proto__=b)}var e=function(){function a(a,b){for(var c,d=0;d',dropitem:'
  • %s
  • '}},4:{icons:{export:'fa-download'},html:{dropmenu:'',dropitem:'%s'}}}[h.bootstrapVersion],j={json:'JSON',xml:'XML',png:'PNG',csv:'CSV',txt:'TXT',sql:'SQL',doc:'MS-Word',excel:'MS-Excel',xlsx:'MS-Excel (OpenXML)',powerpoint:'MS-Powerpoint',pdf:'PDF'};g.extend(g.fn.bootstrapTable.defaults,{showExport:!1,exportDataType:'basic',exportTypes:['json','xml','csv','txt','sql','excel'],exportOptions:{},exportFooter:!1}),g.extend(g.fn.bootstrapTable.defaults.icons,{export:i.icons.export}),g.extend(g.fn.bootstrapTable.locales,{formatExport:function(){return'Export data'}}),g.extend(g.fn.bootstrapTable.defaults,g.fn.bootstrapTable.locales),g.fn.bootstrapTable.methods.push('exportTable'),g.BootstrapTable=function(k){function l(){return b(this,l),c(this,(l.__proto__||Object.getPrototypeOf(l)).apply(this,arguments))}return d(l,k),e(l,[{key:'initToolbar',value:function(){var a=this,b=this.options;if(this.showToolbar=this.showToolbar||b.showExport,f(l.prototype.__proto__||Object.getPrototypeOf(l.prototype),'initToolbar',this).call(this),!!this.options.showExport){var c=this.$toolbar.find('>.btn-group');if(this.$export=c.find('div.export'),this.$export.length)return void this.updateExportButton();this.$export=g('\n
    \n \n '+i.html.dropmenu+'\n
    \n ').appendTo(c),this.updateExportButton();var d=this.$export.find('.dropdown-menu'),e=b.exportTypes;if('string'==typeof e){var q=e.slice(1,-1).replace(/ /g,'').split(',');e=q.map(function(a){return a.slice(1,-1)})}for(var k=e,m=Array.isArray(k),n=0,_iterator=m?k:k[Symbol.iterator]();;){var o;if(m){if(n>=k.length)break;o=k[n++]}else{if(n=k.next(),n.done)break;o=n.value}var p=o;j.hasOwnProperty(p)&&d.append(h.sprintf(i.html.dropitem,p,j[p]))}d.find('>li, >a').click(function(b){var c=b.currentTarget,d=g(c).data('type');a.exportTable({type:d,escape:!1})})}}},{key:'exportTable',value:function(b){var c=this,d=this.options,e=this.header.stateField,f=d.cardView,h=function(a){e&&c.hideColumn(e),f&&c.toggleView();var h=c.getData();if(d.exportFooter){var i=c.$tableFooter.find('tr').first(),j={},k=[];g.each(i.children(),function(a,b){var d=g(b).children('.th-inner').first().html();j[c.columns[a].field]=' '===d?null:d,k.push(d)}),c.append(j);var l=c.$body.children().last();g.each(l.children(),function(a,b){g(b).html(k[a])})}c.$el.tableExport(g.extend({onAfterSaveToFile:function(){d.exportFooter&&c.load(h),e&&c.showColumn(e),f&&c.toggleView(),a()}},d.exportOptions,b))};if('all'===d.exportDataType&&d.pagination){var k='server'===d.sidePagination?'post-body.bs.table':'page-change.bs.table';this.$el.one(k,function(){h(function(){c.togglePagination()})}),this.togglePagination()}else if('selected'===d.exportDataType){var i=this.getData(),j=this.getSelections();if(!j.length)return;'server'===d.sidePagination&&(i=a({total:d.totalRows},this.options.dataField,i),j=a({total:j.length},this.options.dataField,j)),this.load(j),h(function(){c.load(i)})}else h()}},{key:'updateSelected',value:function(){f(l.prototype.__proto__||Object.getPrototypeOf(l.prototype),'updateSelected',this).call(this),this.updateExportButton()}},{key:'updateExportButton',value:function(){'selected'===this.options.exportDataType&&this.$export.find('> button').prop('disabled',!this.getSelections().length)}}]),l}(g.BootstrapTable)})(jQuery)}); \ No newline at end of file diff --git a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js index 476d406a..f147dc6f 100644 --- a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js +++ b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js @@ -1,95 +1,119 @@ -/** - * @author: YL - * @version: v1.0.0 - */ -!function ($) { +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.bootstrapTableTreegrid = mod.exports; + } +})(this, function () { 'use strict'; - $.extend($.fn.bootstrapTable.defaults, { - treeShowField: null, - idField: 'id', - parentIdField: 'pid', - onGetNodes: function (row, data) { + + /** + * @author: YL + * @version: v1.0.0 + */ + !function ($) { + 'use strict'; + + $.extend($.fn.bootstrapTable.defaults, { + treeShowField: null, + idField: 'id', + parentIdField: 'pid', + rootParentId: null, + onGetNodes: function onGetNodes(row, data) { + var that = this; + var nodes = []; + $.each(data, function (i, item) { + if (row[that.options.idField] === item[that.options.parentIdField]) { + nodes.push(item); + } + }); + return nodes; + }, + onCheckRoot: function onCheckRoot(row, data) { + var that = this; + return that.options.rootParentId === row[that.options.parentIdField] || !row[that.options.parentIdField]; + } + }); + + var BootstrapTable = $.fn.bootstrapTable.Constructor, + _init = BootstrapTable.prototype.init, + _initRow = BootstrapTable.prototype.initRow, + _initHeader = BootstrapTable.prototype.initHeader, + _rowStyle = null; + + BootstrapTable.prototype.init = function () { + _rowStyle = this.options.rowStyle; + _init.apply(this, Array.prototype.slice.apply(arguments)); + }; + + // td + BootstrapTable.prototype.initHeader = function () { var that = this; - var nodes = []; - $.each(data, function (i, item) { - if (row[that.options.idField] === item[that.options.parentIdField]) { - nodes.push(item); - } - }); - return nodes; - }, - onCheckRoot: function (row, data) { + _initHeader.apply(that, Array.prototype.slice.apply(arguments)); + var treeShowField = that.options.treeShowField; + if (treeShowField) { + $.each(this.header.fields, function (i, field) { + if (treeShowField === field) { + that.treeEnable = true; + return false; + } + }); + } + }; + + var initTr = function initTr(item, idx, data, parentDom) { var that = this; - return !row[that.options.parentIdField]; - } - }); + var nodes = that.options.onGetNodes.apply(that, [item, data]); + item._nodes = nodes; + parentDom.append(_initRow.apply(that, [item, idx, data, parentDom])); - var BootstrapTable = $.fn.bootstrapTable.Constructor, - _initRow = BootstrapTable.prototype.initRow, - _initHeader = BootstrapTable.prototype.initHeader; - - // td - BootstrapTable.prototype.initHeader = function () { - var that = this; - _initHeader.apply(that, Array.prototype.slice.apply(arguments)); - var treeShowField = that.options.treeShowField; - if (treeShowField) { - $.each(this.header.fields, function (i, field) { - if (treeShowField === field) { - that.treeEnable = true; - return false; - } - }); - } - }; - - var initTr = function (item, idx, data, parentDom) { - var that = this; - var nodes = that.options.onGetNodes.apply(that, [item, data]); - item._nodes = nodes; - parentDom.append(_initRow.apply(that, [item, idx, data, parentDom])); - - // init sub node - var len = nodes.length - 1; - for (var i = 0; i <= len; i++) { - var node = nodes[i]; - node._level = item._level + 1; - node._parent = item; - if (i === len) - node._last = 1; - // jquery.treegrid.js - that.options.rowStyle = function (item, idx) { - var id = item[that.options.idField] ? item[that.options.idField] : 0; - var pid = item[that.options.parentIdField] ? item[that.options.parentIdField] : 0; - return { - classes: 'treegrid-' + id + ' treegrid-parent-' + pid - }; - }; - initTr.apply(that, [node, $.inArray(node, data), data, parentDom]); - } - }; - - // tr - BootstrapTable.prototype.initRow = function (item, idx, data, parentDom) { - var that = this; - if (that.treeEnable) { - // init root node - if (that.options.onCheckRoot.apply(that, [item, data])) { - if (item._level === undefined) { - item._level = 0; - } + // init sub node + var len = nodes.length - 1; + for (var i = 0; i <= len; i++) { + var node = nodes[i]; + node._level = item._level + 1; + node._parent = item; + if (i === len) node._last = 1; // jquery.treegrid.js that.options.rowStyle = function (item, idx) { - var x = item[that.options.idField] ? item[that.options.idField] : 0; - return { - classes: 'treegrid-' + x - }; + var res = _rowStyle.apply(that, Array.prototype.slice.apply(arguments)); + var id = item[that.options.idField] ? item[that.options.idField] : 0; + var pid = item[that.options.parentIdField] ? item[that.options.parentIdField] : 0; + res.classes = [res.classes || '', 'treegrid-' + id, 'treegrid-parent-' + pid].join(' '); + return res; }; - initTr.apply(that, [item, idx, data, parentDom]); - return true; + initTr.apply(that, [node, $.inArray(node, data), data, parentDom]); } - return false; - } - return _initRow.apply(that, Array.prototype.slice.apply(arguments)); - }; -}(jQuery); \ No newline at end of file + }; + + // tr + BootstrapTable.prototype.initRow = function (item, idx, data, parentDom) { + var that = this; + if (that.treeEnable) { + // init root node + if (that.options.onCheckRoot.apply(that, [item, data])) { + if (item._level === undefined) { + item._level = 0; + } + // jquery.treegrid.js + that.options.rowStyle = function (item, idx) { + var res = _rowStyle.apply(that, Array.prototype.slice.apply(arguments)); + var x = item[that.options.idField] ? item[that.options.idField] : 0; + res.classes = [res.classes || '', 'treegrid-' + x].join(' '); + return res; + }; + initTr.apply(that, [item, idx, data, parentDom]); + return true; + } + return false; + } + return _initRow.apply(that, Array.prototype.slice.apply(arguments)); + }; + }(jQuery); +}); \ No newline at end of file diff --git a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js index c3a8cd16..4b9da940 100644 --- a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js +++ b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js @@ -1,7 +1,10 @@ -/* -* bootstrap-table - v1.12.1 - 2018-03-12 -* https://github.com/wenzhixin/bootstrap-table -* Copyright (c) 2018 zhixin wen -* Licensed MIT License -*/ -!function(a){"use strict";a.extend(a.fn.bootstrapTable.defaults,{treeShowField:null,idField:"id",parentIdField:"pid",onGetNodes:function(b,c){var d=this,e=[];return a.each(c,function(a,c){b[d.options.idField]===c[d.options.parentIdField]&&e.push(c)}),e},onCheckRoot:function(a){var b=this;return!a[b.options.parentIdField]}});var b=a.fn.bootstrapTable.Constructor,c=b.prototype.initRow,d=b.prototype.initHeader;b.prototype.initHeader=function(){var b=this;d.apply(b,Array.prototype.slice.apply(arguments));var c=b.options.treeShowField;c&&a.each(this.header.fields,function(a,d){return c===d?(b.treeEnable=!0,!1):void 0})};var e=function(b,d,f,g){var h=this,i=h.options.onGetNodes.apply(h,[b,f]);b._nodes=i,g.append(c.apply(h,[b,d,f,g]));for(var j=i.length-1,k=0;j>=k;k++){var l=i[k];l._level=b._level+1,l._parent=b,k===j&&(l._last=1),h.options.rowStyle=function(a){var b=a[h.options.idField]?a[h.options.idField]:0,c=a[h.options.parentIdField]?a[h.options.parentIdField]:0;return{classes:"treegrid-"+b+" treegrid-parent-"+c}},e.apply(h,[l,a.inArray(l,f),f,g])}};b.prototype.initRow=function(a,b,d,f){var g=this;return g.treeEnable?g.options.onCheckRoot.apply(g,[a,d])?(void 0===a._level&&(a._level=0),g.options.rowStyle=function(a){var b=a[g.options.idField]?a[g.options.idField]:0;return{classes:"treegrid-"+b}},e.apply(g,[a,b,d,f]),!0):!1:c.apply(g,Array.prototype.slice.apply(arguments))}}(jQuery); \ No newline at end of file +/** + * bootstrap-table - An extended Bootstrap table with radio, checkbox, sort, pagination, and other added features. (supports twitter bootstrap v2 and v3). + * + * @version v1.14.2 + * @homepage https://bootstrap-table.com + * @author wenzhixin (http://wenzhixin.net.cn/) + * @license MIT + */ + +(function(a,b){if('function'==typeof define&&define.amd)define([],b);else if('undefined'!=typeof exports)b();else{b(),a.bootstrapTableTreegrid={exports:{}}.exports}})(this,function(){'use strict';!function(a){a.extend(a.fn.bootstrapTable.defaults,{treeShowField:null,idField:'id',parentIdField:'pid',rootParentId:null,onGetNodes:function(b,c){var d=this,e=[];return a.each(c,function(a,c){b[d.options.idField]===c[d.options.parentIdField]&&e.push(c)}),e},onCheckRoot:function(a){var b=this;return b.options.rootParentId===a[b.options.parentIdField]||!a[b.options.parentIdField]}});var b=a.fn.bootstrapTable.Constructor,c=b.prototype.init,d=b.prototype.initRow,e=b.prototype.initHeader,f=null;b.prototype.init=function(){f=this.options.rowStyle,c.apply(this,Array.prototype.slice.apply(arguments))},b.prototype.initHeader=function(){var b=this;e.apply(b,Array.prototype.slice.apply(arguments));var c=b.options.treeShowField;c&&a.each(this.header.fields,function(a,d){if(c===d)return b.treeEnable=!0,!1})};var g=function(b,c,e,h){var j=this,k=j.options.onGetNodes.apply(j,[b,e]);b._nodes=k,h.append(d.apply(j,[b,c,e,h]));for(var l,m=k.length-1,n=0;n<=m;n++)l=k[n],l._level=b._level+1,l._parent=b,n===m&&(l._last=1),j.options.rowStyle=function(a){var b=f.apply(j,Array.prototype.slice.apply(arguments)),c=a[j.options.idField]?a[j.options.idField]:0,d=a[j.options.parentIdField]?a[j.options.parentIdField]:0;return b.classes=[b.classes||'','treegrid-'+c,'treegrid-parent-'+d].join(' '),b},g.apply(j,[l,a.inArray(l,e),e,h])};b.prototype.initRow=function(a,b,c,e){var h=this;return h.treeEnable?!!h.options.onCheckRoot.apply(h,[a,c])&&(void 0===a._level&&(a._level=0),h.options.rowStyle=function(a){var b=f.apply(h,Array.prototype.slice.apply(arguments)),c=a[h.options.idField]?a[h.options.idField]:0;return b.classes=[b.classes||'','treegrid-'+c].join(' '),b},g.apply(h,[a,b,c,e]),!0):d.apply(h,Array.prototype.slice.apply(arguments))}}(jQuery)}); \ No newline at end of file diff --git a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js index 874f340a..46499f6e 100644 --- a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js +++ b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js @@ -1,46 +1,80 @@ -/** - * Bootstrap Table Chinese translation - * Author: Zhixin Wen - */ -(function ($) { - 'use strict'; +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof exports !== "undefined") { + factory(); + } else { + var mod = { + exports: {} + }; + factory(); + global.bootstrapTableZhCN = mod.exports; + } +})(this, function () { + 'use strict'; + /** + * Bootstrap Table Chinese translation + * Author: Zhixin Wen + */ + (function ($) { $.fn.bootstrapTable.locales['zh-CN'] = { - formatLoadingMessage: function () { - return '正在努力地加载数据中,请稍候……'; - }, - formatRecordsPerPage: function (pageNumber) { - return '每页显示 ' + pageNumber + ' 条记录'; - }, - formatShowingRows: function (pageFrom, pageTo, totalRows) { - return '显示第 ' + pageFrom + ' 到第 ' + pageTo + ' 条记录,总共 ' + totalRows + ' 条记录'; - }, - formatSearch: function () { - return '搜索'; - }, - formatNoMatches: function () { - return '没有找到匹配的记录'; - }, - formatPaginationSwitch: function () { - return '隐藏/显示分页'; - }, - formatRefresh: function () { - return '刷新'; - }, - formatToggle: function () { - return '切换'; - }, - formatColumns: function () { - return '列'; - }, - formatExport: function () { - return '导出数据'; - }, - formatClearFilters: function () { - return '清空过滤'; - } + formatLoadingMessage: function formatLoadingMessage() { + return '正在努力地加载数据中,请稍候'; + }, + formatRecordsPerPage: function formatRecordsPerPage(pageNumber) { + return '\u6BCF\u9875\u663E\u793A ' + pageNumber + ' \u6761\u8BB0\u5F55'; + }, + formatShowingRows: function formatShowingRows(pageFrom, pageTo, totalRows) { + return '\u663E\u793A\u7B2C ' + pageFrom + ' \u5230\u7B2C ' + pageTo + ' \u6761\u8BB0\u5F55\uFF0C\u603B\u5171 ' + totalRows + ' \u6761\u8BB0\u5F55'; + }, + formatDetailPagination: function formatDetailPagination(totalRows) { + return '\u603B\u5171 ' + totalRows + ' \u6761\u8BB0\u5F55'; + }, + formatSearch: function formatSearch() { + return '搜索'; + }, + formatNoMatches: function formatNoMatches() { + return '没有找到匹配的记录'; + }, + formatPaginationSwitch: function formatPaginationSwitch() { + return '隐藏/显示分页'; + }, + formatRefresh: function formatRefresh() { + return '刷新'; + }, + formatToggle: function formatToggle() { + return '切换'; + }, + formatColumns: function formatColumns() { + return '列'; + }, + formatFullscreen: function formatFullscreen() { + return '全屏'; + }, + formatAllRows: function formatAllRows() { + return '所有'; + }, + formatAutoRefresh: function formatAutoRefresh() { + return '自动刷新'; + }, + formatExport: function formatExport() { + return '导出数据'; + }, + formatClearFilters: function formatClearFilters() { + return '清空过滤'; + }, + formatJumpto: function formatJumpto() { + return '跳转'; + }, + formatAdvancedSearch: function formatAdvancedSearch() { + return '高级搜索'; + }, + formatAdvancedCloseButton: function formatAdvancedCloseButton() { + return '关闭'; + } }; $.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales['zh-CN']); - -})(jQuery); + })(jQuery); +}); \ No newline at end of file diff --git a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js index 81e27db8..c89f2fdb 100644 --- a/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js +++ b/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js @@ -1,7 +1,10 @@ -/* -* bootstrap-table - v1.12.1 - 2018-03-12 -* https://github.com/wenzhixin/bootstrap-table -* Copyright (c) 2018 zhixin wen -* Licensed MIT License -*/ -!function(a){"use strict";a.fn.bootstrapTable.locales["zh-CN"]={formatLoadingMessage:function(){return"正在努力地加载数据中,请稍候……"},formatRecordsPerPage:function(a){return"每页显示 "+a+" 条记录"},formatShowingRows:function(a,b,c){return"显示第 "+a+" 到第 "+b+" 条记录,总共 "+c+" 条记录"},formatSearch:function(){return"搜索"},formatNoMatches:function(){return"没有找到匹配的记录"},formatPaginationSwitch:function(){return"隐藏/显示分页"},formatRefresh:function(){return"刷新"},formatToggle:function(){return"切换"},formatColumns:function(){return"列"},formatExport:function(){return"导出数据"},formatClearFilters:function(){return"清空过滤"}},a.extend(a.fn.bootstrapTable.defaults,a.fn.bootstrapTable.locales["zh-CN"])}(jQuery); \ No newline at end of file +/** + * bootstrap-table - An extended Bootstrap table with radio, checkbox, sort, pagination, and other added features. (supports twitter bootstrap v2 and v3). + * + * @version v1.14.2 + * @homepage https://bootstrap-table.com + * @author wenzhixin (http://wenzhixin.net.cn/) + * @license MIT + */ + +(function(a,b){if('function'==typeof define&&define.amd)define([],b);else if('undefined'!=typeof exports)b();else{b(),a.bootstrapTableZhCN={exports:{}}.exports}})(this,function(){'use strict';(function(a){a.fn.bootstrapTable.locales['zh-CN']={formatLoadingMessage:function(){return'\u6B63\u5728\u52AA\u529B\u5730\u52A0\u8F7D\u6570\u636E\u4E2D\uFF0C\u8BF7\u7A0D\u5019'},formatRecordsPerPage:function(a){return'\u6BCF\u9875\u663E\u793A '+a+' \u6761\u8BB0\u5F55'},formatShowingRows:function(a,b,c){return'\u663E\u793A\u7B2C '+a+' \u5230\u7B2C '+b+' \u6761\u8BB0\u5F55\uFF0C\u603B\u5171 '+c+' \u6761\u8BB0\u5F55'},formatDetailPagination:function(a){return'\u603B\u5171 '+a+' \u6761\u8BB0\u5F55'},formatSearch:function(){return'\u641C\u7D22'},formatNoMatches:function(){return'\u6CA1\u6709\u627E\u5230\u5339\u914D\u7684\u8BB0\u5F55'},formatPaginationSwitch:function(){return'\u9690\u85CF/\u663E\u793A\u5206\u9875'},formatRefresh:function(){return'\u5237\u65B0'},formatToggle:function(){return'\u5207\u6362'},formatColumns:function(){return'\u5217'},formatFullscreen:function(){return'\u5168\u5C4F'},formatAllRows:function(){return'\u6240\u6709'},formatAutoRefresh:function(){return'\u81EA\u52A8\u5237\u65B0'},formatExport:function(){return'\u5BFC\u51FA\u6570\u636E'},formatClearFilters:function(){return'\u6E05\u7A7A\u8FC7\u6EE4'},formatJumpto:function(){return'\u8DF3\u8F6C'},formatAdvancedSearch:function(){return'\u9AD8\u7EA7\u641C\u7D22'},formatAdvancedCloseButton:function(){return'\u5173\u95ED'}},a.extend(a.fn.bootstrapTable.defaults,a.fn.bootstrapTable.locales['zh-CN'])})(jQuery)}); \ No newline at end of file diff --git a/Bootstrap.Admin/wwwroot/lib/longbow/longbow.common.js b/Bootstrap.Admin/wwwroot/lib/longbow/longbow.common.js index 0f79e7bc..4aa1b8f3 100644 --- a/Bootstrap.Admin/wwwroot/lib/longbow/longbow.common.js +++ b/Bootstrap.Admin/wwwroot/lib/longbow/longbow.common.js @@ -312,7 +312,6 @@ smartTable: function (options) { var settings = $.extend({ toolbar: '#toolbar', //工具按钮用哪个容器 - striped: true, //是否显示行间隔色 cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*) pagination: true, //是否显示分页(*) sortOrder: "asc", //排序方式 @@ -470,8 +469,7 @@ // fix bug bootstrap-table 1.12.1 showToggle if ($.fn.bootstrapTable) { $.extend($.fn.bootstrapTable.defaults.icons, { - toggle: 'fa-toggle-off', - export: 'fa-download' + refresh: 'fa-refresh' }); } diff --git a/Bootstrap.Admin/wwwroot/lib/longbow/longbow.dataentity.js b/Bootstrap.Admin/wwwroot/lib/longbow/longbow.dataentity.js index 62dfa9fa..44aca8f5 100644 --- a/Bootstrap.Admin/wwwroot/lib/longbow/longbow.dataentity.js +++ b/Bootstrap.Admin/wwwroot/lib/longbow/longbow.dataentity.js @@ -246,7 +246,7 @@ }, function () { $.logData.push({ url: op.url, data: data }); setTimeout(function () { - var idField = findIdField($(op.table)); + var idField = findIdField(op.table); var iDs = data.map(function (element, index) { return element[idField]; });