mirror of https://github.com/ColorlibHQ/AdminLTE
Fix #1689
parent
8183f2ad20
commit
49fdbb2873
|
@ -30,8 +30,21 @@ const Plugins = [
|
||||||
},
|
},
|
||||||
// CKEditor
|
// CKEditor
|
||||||
{
|
{
|
||||||
from: 'node_modules/@ckeditor/ckeditor5-build-classic/build',
|
from: 'node_modules/@ckeditor/ckeditor5-build-classic/build/',
|
||||||
to : 'plugins/ckeditor'
|
to : 'plugins/ckeditor'
|
||||||
|
},
|
||||||
|
// DataTables
|
||||||
|
{
|
||||||
|
from: 'node_modules/datatables.net/js',
|
||||||
|
to: 'plugins/datatables'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
from: 'node_modules/datatables.net-bs4/js',
|
||||||
|
to: 'plugins/datatables'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
from: 'node_modules/datatables.net-bs4/css',
|
||||||
|
to: 'plugins/datatables'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
const Plugins = require('./Plugins')
|
const Plugins = require('./Plugins')
|
||||||
const copydir = require('copy-dir')
|
const ncp = require('ncp').ncp
|
||||||
|
|
||||||
class Publish {
|
class Publish {
|
||||||
constructor() {
|
constructor() {
|
||||||
|
@ -27,14 +27,11 @@ class Publish {
|
||||||
run() {
|
run() {
|
||||||
// Publish files
|
// Publish files
|
||||||
Plugins.forEach((module) => {
|
Plugins.forEach((module) => {
|
||||||
copydir(module.from, module.to, (stat, filepath, filename) => {
|
ncp(module.from, module.to, error => {
|
||||||
if (this.options.verbose) {
|
|
||||||
console.log(`Copied ${filename} from ${module.from} to ${module.to}`)
|
|
||||||
}
|
|
||||||
return true
|
|
||||||
}, error => {
|
|
||||||
if (error) {
|
if (error) {
|
||||||
console.error(`Error: ${error}`)
|
console.error(`Error: ${error}`)
|
||||||
|
} else if (this.options.verbose) {
|
||||||
|
console.log(`Copied ${module.from} to ${module.to}`)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "admin-lte",
|
"name": "admin-lte",
|
||||||
"description": "Responsive open source admin dashboard and control panel.",
|
"description": "Responsive open source admin dashboard and control panel.",
|
||||||
"version": "3.0.0-alpha",
|
"version": "3.0.0-beta",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"author": "Abdullah Almsaeed <abdullah@almsaeedstudio.com>",
|
"author": "Abdullah Almsaeed <abdullah@almsaeedstudio.com>",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@ -45,6 +45,8 @@
|
||||||
"@ckeditor/ckeditor5-build-classic": "^1.0.0-beta.4",
|
"@ckeditor/ckeditor5-build-classic": "^1.0.0-beta.4",
|
||||||
"bootstrap": "^4.1.0",
|
"bootstrap": "^4.1.0",
|
||||||
"chart.js": "^2.7.2",
|
"chart.js": "^2.7.2",
|
||||||
|
"datatables.net": "^1.10.16",
|
||||||
|
"datatables.net-bs4": "^1.10.16",
|
||||||
"font-awesome": "^4.7.0",
|
"font-awesome": "^4.7.0",
|
||||||
"jquery": "^3.3.1",
|
"jquery": "^3.3.1",
|
||||||
"jquery-ui": "^1.12.1",
|
"jquery-ui": "^1.12.1",
|
||||||
|
@ -61,11 +63,12 @@
|
||||||
"babel-preset-env": "^1.6.1",
|
"babel-preset-env": "^1.6.1",
|
||||||
"browser-sync": "^2.23.7",
|
"browser-sync": "^2.23.7",
|
||||||
"clean-css-cli": "^4.1.11",
|
"clean-css-cli": "^4.1.11",
|
||||||
"copy-dir": "^0.3.0",
|
|
||||||
"css-loader": "^0.28.11",
|
"css-loader": "^0.28.11",
|
||||||
"eslint": "^4.19.1",
|
"eslint": "^4.19.1",
|
||||||
"eslint-plugin-compat": "^2.2.0",
|
"eslint-plugin-compat": "^2.2.0",
|
||||||
"extract-text-webpack-plugin": "^3.0.2",
|
"extract-text-webpack-plugin": "^3.0.2",
|
||||||
|
"fs-extra": "^5.0.0",
|
||||||
|
"ncp": "^2.0.0",
|
||||||
"node-sass": "^4.8.3",
|
"node-sass": "^4.8.3",
|
||||||
"nodemon": "^1.17.3",
|
"nodemon": "^1.17.3",
|
||||||
"npm-run-all": "^4.1.2",
|
"npm-run-all": "^4.1.2",
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
<!-- Ionicons -->
|
<!-- Ionicons -->
|
||||||
<link rel="stylesheet" href="https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css">
|
<link rel="stylesheet" href="https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css">
|
||||||
<!-- DataTables -->
|
<!-- DataTables -->
|
||||||
<link rel="stylesheet" href="../../plugins/datatables/dataTables.bootstrap4.min.css">
|
<link rel="stylesheet" href="../../plugins/datatables/dataTables.bootstrap4.css">
|
||||||
<!-- Theme style -->
|
<!-- Theme style -->
|
||||||
<link rel="stylesheet" href="../../dist/css/adminlte.min.css">
|
<link rel="stylesheet" href="../../dist/css/adminlte.min.css">
|
||||||
<!-- Google Font: Source Sans Pro -->
|
<!-- Google Font: Source Sans Pro -->
|
||||||
|
@ -1404,8 +1404,8 @@
|
||||||
<!-- Bootstrap 4 -->
|
<!-- Bootstrap 4 -->
|
||||||
<script src="../../plugins/bootstrap/js/bootstrap.bundle.min.js"></script>
|
<script src="../../plugins/bootstrap/js/bootstrap.bundle.min.js"></script>
|
||||||
<!-- DataTables -->
|
<!-- DataTables -->
|
||||||
<script src="../../plugins/datatables/jquery.dataTables.min.js"></script>
|
<script src="../../plugins/datatables/jquery.dataTables.js"></script>
|
||||||
<script src="../../plugins/datatables/dataTables.bootstrap4.min.js"></script>
|
<script src="../../plugins/datatables/dataTables.bootstrap4.js"></script>
|
||||||
<!-- SlimScroll -->
|
<!-- SlimScroll -->
|
||||||
<script src="../../plugins/slimScroll/jquery.slimscroll.min.js"></script>
|
<script src="../../plugins/slimScroll/jquery.slimscroll.min.js"></script>
|
||||||
<!-- FastClick -->
|
<!-- FastClick -->
|
||||||
|
|
|
@ -0,0 +1,202 @@
|
||||||
|
table.dataTable {
|
||||||
|
clear: both;
|
||||||
|
margin-top: 6px !important;
|
||||||
|
margin-bottom: 6px !important;
|
||||||
|
max-width: none !important;
|
||||||
|
border-collapse: separate !important;
|
||||||
|
}
|
||||||
|
table.dataTable td,
|
||||||
|
table.dataTable th {
|
||||||
|
-webkit-box-sizing: content-box;
|
||||||
|
box-sizing: content-box;
|
||||||
|
}
|
||||||
|
table.dataTable td.dataTables_empty,
|
||||||
|
table.dataTable th.dataTables_empty {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
table.dataTable.nowrap th,
|
||||||
|
table.dataTable.nowrap td {
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.dataTables_wrapper div.dataTables_length label {
|
||||||
|
font-weight: normal;
|
||||||
|
text-align: left;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
div.dataTables_wrapper div.dataTables_length select {
|
||||||
|
width: 75px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
div.dataTables_wrapper div.dataTables_filter {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
div.dataTables_wrapper div.dataTables_filter label {
|
||||||
|
font-weight: normal;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
div.dataTables_wrapper div.dataTables_filter input {
|
||||||
|
margin-left: 0.5em;
|
||||||
|
display: inline-block;
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
div.dataTables_wrapper div.dataTables_info {
|
||||||
|
padding-top: 0.85em;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
div.dataTables_wrapper div.dataTables_paginate {
|
||||||
|
margin: 0;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
div.dataTables_wrapper div.dataTables_paginate ul.pagination {
|
||||||
|
margin: 2px 0;
|
||||||
|
white-space: nowrap;
|
||||||
|
justify-content: flex-end;
|
||||||
|
}
|
||||||
|
div.dataTables_wrapper div.dataTables_processing {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
width: 200px;
|
||||||
|
margin-left: -100px;
|
||||||
|
margin-top: -26px;
|
||||||
|
text-align: center;
|
||||||
|
padding: 1em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting,
|
||||||
|
table.dataTable thead > tr > td.sorting_asc,
|
||||||
|
table.dataTable thead > tr > td.sorting_desc,
|
||||||
|
table.dataTable thead > tr > td.sorting {
|
||||||
|
padding-right: 30px;
|
||||||
|
}
|
||||||
|
table.dataTable thead > tr > th:active,
|
||||||
|
table.dataTable thead > tr > td:active {
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
table.dataTable thead .sorting,
|
||||||
|
table.dataTable thead .sorting_asc,
|
||||||
|
table.dataTable thead .sorting_desc,
|
||||||
|
table.dataTable thead .sorting_asc_disabled,
|
||||||
|
table.dataTable thead .sorting_desc_disabled {
|
||||||
|
cursor: pointer;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
table.dataTable thead .sorting:before, table.dataTable thead .sorting:after,
|
||||||
|
table.dataTable thead .sorting_asc:before,
|
||||||
|
table.dataTable thead .sorting_asc:after,
|
||||||
|
table.dataTable thead .sorting_desc:before,
|
||||||
|
table.dataTable thead .sorting_desc:after,
|
||||||
|
table.dataTable thead .sorting_asc_disabled:before,
|
||||||
|
table.dataTable thead .sorting_asc_disabled:after,
|
||||||
|
table.dataTable thead .sorting_desc_disabled:before,
|
||||||
|
table.dataTable thead .sorting_desc_disabled:after {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0.9em;
|
||||||
|
display: block;
|
||||||
|
opacity: 0.3;
|
||||||
|
}
|
||||||
|
table.dataTable thead .sorting:before,
|
||||||
|
table.dataTable thead .sorting_asc:before,
|
||||||
|
table.dataTable thead .sorting_desc:before,
|
||||||
|
table.dataTable thead .sorting_asc_disabled:before,
|
||||||
|
table.dataTable thead .sorting_desc_disabled:before {
|
||||||
|
right: 1em;
|
||||||
|
content: "\2191";
|
||||||
|
}
|
||||||
|
table.dataTable thead .sorting:after,
|
||||||
|
table.dataTable thead .sorting_asc:after,
|
||||||
|
table.dataTable thead .sorting_desc:after,
|
||||||
|
table.dataTable thead .sorting_asc_disabled:after,
|
||||||
|
table.dataTable thead .sorting_desc_disabled:after {
|
||||||
|
right: 0.5em;
|
||||||
|
content: "\2193";
|
||||||
|
}
|
||||||
|
table.dataTable thead .sorting_asc:before,
|
||||||
|
table.dataTable thead .sorting_desc:after {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
table.dataTable thead .sorting_asc_disabled:before,
|
||||||
|
table.dataTable thead .sorting_desc_disabled:after {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.dataTables_scrollHead table.dataTable {
|
||||||
|
margin-bottom: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.dataTables_scrollBody table {
|
||||||
|
border-top: none;
|
||||||
|
margin-top: 0 !important;
|
||||||
|
margin-bottom: 0 !important;
|
||||||
|
}
|
||||||
|
div.dataTables_scrollBody table thead .sorting:after,
|
||||||
|
div.dataTables_scrollBody table thead .sorting_asc:after,
|
||||||
|
div.dataTables_scrollBody table thead .sorting_desc:after {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
div.dataTables_scrollBody table tbody tr:first-child th,
|
||||||
|
div.dataTables_scrollBody table tbody tr:first-child td {
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.dataTables_scrollFoot > .dataTables_scrollFootInner {
|
||||||
|
box-sizing: content-box;
|
||||||
|
}
|
||||||
|
div.dataTables_scrollFoot > .dataTables_scrollFootInner > table {
|
||||||
|
margin-top: 0 !important;
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 767px) {
|
||||||
|
div.dataTables_wrapper div.dataTables_length,
|
||||||
|
div.dataTables_wrapper div.dataTables_filter,
|
||||||
|
div.dataTables_wrapper div.dataTables_info,
|
||||||
|
div.dataTables_wrapper div.dataTables_paginate {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
table.dataTable.table-sm > thead > tr > th {
|
||||||
|
padding-right: 20px;
|
||||||
|
}
|
||||||
|
table.dataTable.table-sm .sorting:before,
|
||||||
|
table.dataTable.table-sm .sorting_asc:before,
|
||||||
|
table.dataTable.table-sm .sorting_desc:before {
|
||||||
|
top: 5px;
|
||||||
|
right: 0.85em;
|
||||||
|
}
|
||||||
|
table.dataTable.table-sm .sorting:after,
|
||||||
|
table.dataTable.table-sm .sorting_asc:after,
|
||||||
|
table.dataTable.table-sm .sorting_desc:after {
|
||||||
|
top: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.table-bordered.dataTable th,
|
||||||
|
table.table-bordered.dataTable td {
|
||||||
|
border-left-width: 0;
|
||||||
|
}
|
||||||
|
table.table-bordered.dataTable th:last-child, table.table-bordered.dataTable th:last-child,
|
||||||
|
table.table-bordered.dataTable td:last-child,
|
||||||
|
table.table-bordered.dataTable td:last-child {
|
||||||
|
border-right-width: 0;
|
||||||
|
}
|
||||||
|
table.table-bordered.dataTable tbody th,
|
||||||
|
table.table-bordered.dataTable tbody td {
|
||||||
|
border-bottom-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.dataTables_scrollHead table.table-bordered {
|
||||||
|
border-bottom-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.table-responsive > div.dataTables_wrapper > div.row {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:first-child {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:last-child {
|
||||||
|
padding-right: 0;
|
||||||
|
}
|
|
@ -0,0 +1,184 @@
|
||||||
|
/*! DataTables Bootstrap 3 integration
|
||||||
|
* ©2011-2015 SpryMedia Ltd - datatables.net/license
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* DataTables integration for Bootstrap 3. This requires Bootstrap 3 and
|
||||||
|
* DataTables 1.10 or newer.
|
||||||
|
*
|
||||||
|
* This file sets the defaults and adds options to DataTables to style its
|
||||||
|
* controls using Bootstrap. See http://datatables.net/manual/styling/bootstrap
|
||||||
|
* for further information.
|
||||||
|
*/
|
||||||
|
(function( factory ){
|
||||||
|
if ( typeof define === 'function' && define.amd ) {
|
||||||
|
// AMD
|
||||||
|
define( ['jquery', 'datatables.net'], function ( $ ) {
|
||||||
|
return factory( $, window, document );
|
||||||
|
} );
|
||||||
|
}
|
||||||
|
else if ( typeof exports === 'object' ) {
|
||||||
|
// CommonJS
|
||||||
|
module.exports = function (root, $) {
|
||||||
|
if ( ! root ) {
|
||||||
|
root = window;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ! $ || ! $.fn.dataTable ) {
|
||||||
|
// Require DataTables, which attaches to jQuery, including
|
||||||
|
// jQuery if needed and have a $ property so we can access the
|
||||||
|
// jQuery object that is used
|
||||||
|
$ = require('datatables.net')(root, $).$;
|
||||||
|
}
|
||||||
|
|
||||||
|
return factory( $, root, root.document );
|
||||||
|
};
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// Browser
|
||||||
|
factory( jQuery, window, document );
|
||||||
|
}
|
||||||
|
}(function( $, window, document, undefined ) {
|
||||||
|
'use strict';
|
||||||
|
var DataTable = $.fn.dataTable;
|
||||||
|
|
||||||
|
|
||||||
|
/* Set the defaults for DataTables initialisation */
|
||||||
|
$.extend( true, DataTable.defaults, {
|
||||||
|
dom:
|
||||||
|
"<'row'<'col-sm-12 col-md-6'l><'col-sm-12 col-md-6'f>>" +
|
||||||
|
"<'row'<'col-sm-12'tr>>" +
|
||||||
|
"<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>",
|
||||||
|
renderer: 'bootstrap'
|
||||||
|
} );
|
||||||
|
|
||||||
|
|
||||||
|
/* Default class modification */
|
||||||
|
$.extend( DataTable.ext.classes, {
|
||||||
|
sWrapper: "dataTables_wrapper container-fluid dt-bootstrap4",
|
||||||
|
sFilterInput: "form-control form-control-sm",
|
||||||
|
sLengthSelect: "form-control form-control-sm",
|
||||||
|
sProcessing: "dataTables_processing card",
|
||||||
|
sPageButton: "paginate_button page-item"
|
||||||
|
} );
|
||||||
|
|
||||||
|
|
||||||
|
/* Bootstrap paging button renderer */
|
||||||
|
DataTable.ext.renderer.pageButton.bootstrap = function ( settings, host, idx, buttons, page, pages ) {
|
||||||
|
var api = new DataTable.Api( settings );
|
||||||
|
var classes = settings.oClasses;
|
||||||
|
var lang = settings.oLanguage.oPaginate;
|
||||||
|
var aria = settings.oLanguage.oAria.paginate || {};
|
||||||
|
var btnDisplay, btnClass, counter=0;
|
||||||
|
|
||||||
|
var attach = function( container, buttons ) {
|
||||||
|
var i, ien, node, button;
|
||||||
|
var clickHandler = function ( e ) {
|
||||||
|
e.preventDefault();
|
||||||
|
if ( !$(e.currentTarget).hasClass('disabled') && api.page() != e.data.action ) {
|
||||||
|
api.page( e.data.action ).draw( 'page' );
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
for ( i=0, ien=buttons.length ; i<ien ; i++ ) {
|
||||||
|
button = buttons[i];
|
||||||
|
|
||||||
|
if ( $.isArray( button ) ) {
|
||||||
|
attach( container, button );
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
btnDisplay = '';
|
||||||
|
btnClass = '';
|
||||||
|
|
||||||
|
switch ( button ) {
|
||||||
|
case 'ellipsis':
|
||||||
|
btnDisplay = '…';
|
||||||
|
btnClass = 'disabled';
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'first':
|
||||||
|
btnDisplay = lang.sFirst;
|
||||||
|
btnClass = button + (page > 0 ?
|
||||||
|
'' : ' disabled');
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'previous':
|
||||||
|
btnDisplay = lang.sPrevious;
|
||||||
|
btnClass = button + (page > 0 ?
|
||||||
|
'' : ' disabled');
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'next':
|
||||||
|
btnDisplay = lang.sNext;
|
||||||
|
btnClass = button + (page < pages-1 ?
|
||||||
|
'' : ' disabled');
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'last':
|
||||||
|
btnDisplay = lang.sLast;
|
||||||
|
btnClass = button + (page < pages-1 ?
|
||||||
|
'' : ' disabled');
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
btnDisplay = button + 1;
|
||||||
|
btnClass = page === button ?
|
||||||
|
'active' : '';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( btnDisplay ) {
|
||||||
|
node = $('<li>', {
|
||||||
|
'class': classes.sPageButton+' '+btnClass,
|
||||||
|
'id': idx === 0 && typeof button === 'string' ?
|
||||||
|
settings.sTableId +'_'+ button :
|
||||||
|
null
|
||||||
|
} )
|
||||||
|
.append( $('<a>', {
|
||||||
|
'href': '#',
|
||||||
|
'aria-controls': settings.sTableId,
|
||||||
|
'aria-label': aria[ button ],
|
||||||
|
'data-dt-idx': counter,
|
||||||
|
'tabindex': settings.iTabIndex,
|
||||||
|
'class': 'page-link'
|
||||||
|
} )
|
||||||
|
.html( btnDisplay )
|
||||||
|
)
|
||||||
|
.appendTo( container );
|
||||||
|
|
||||||
|
settings.oApi._fnBindAction(
|
||||||
|
node, {action: button}, clickHandler
|
||||||
|
);
|
||||||
|
|
||||||
|
counter++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// IE9 throws an 'unknown error' if document.activeElement is used
|
||||||
|
// inside an iframe or frame.
|
||||||
|
var activeEl;
|
||||||
|
|
||||||
|
try {
|
||||||
|
// Because this approach is destroying and recreating the paging
|
||||||
|
// elements, focus is lost on the select button which is bad for
|
||||||
|
// accessibility. So we want to restore focus once the draw has
|
||||||
|
// completed
|
||||||
|
activeEl = $(host).find(document.activeElement).data('dt-idx');
|
||||||
|
}
|
||||||
|
catch (e) {}
|
||||||
|
|
||||||
|
attach(
|
||||||
|
$(host).empty().html('<ul class="pagination"/>').children('ul'),
|
||||||
|
buttons
|
||||||
|
);
|
||||||
|
|
||||||
|
if ( activeEl !== undefined ) {
|
||||||
|
$(host).find( '[data-dt-idx='+activeEl+']' ).focus();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
return DataTable;
|
||||||
|
}));
|
File diff suppressed because one or more lines are too long
|
@ -1,8 +0,0 @@
|
||||||
/*!
|
|
||||||
DataTables Bootstrap 3 integration
|
|
||||||
©2011-2015 SpryMedia Ltd - datatables.net/license
|
|
||||||
*/
|
|
||||||
(function(b){"function"===typeof define&&define.amd?define(["jquery","datatables.net"],function(a){return b(a,window,document)}):"object"===typeof exports?module.exports=function(a,d){a||(a=window);if(!d||!d.fn.dataTable)d=require("datatables.net")(a,d).$;return b(d,a,a.document)}:b(jQuery,window,document)})(function(b,a,d,m){var f=b.fn.dataTable;b.extend(!0,f.defaults,{dom:"<'row'<'col-sm-12 col-md-6'l><'col-sm-12 col-md-6'f>><'row'<'col-sm-12'tr>><'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>",
|
|
||||||
renderer:"bootstrap"});b.extend(f.ext.classes,{sWrapper:"dataTables_wrapper container-fluid dt-bootstrap4",sFilterInput:"form-control form-control-sm",sLengthSelect:"form-control form-control-sm",sProcessing:"dataTables_processing card",sPageButton:"paginate_button page-item"});f.ext.renderer.pageButton.bootstrap=function(a,h,r,s,j,n){var o=new f.Api(a),t=a.oClasses,k=a.oLanguage.oPaginate,u=a.oLanguage.oAria.paginate||{},e,g,p=0,q=function(d,f){var l,h,i,c,m=function(a){a.preventDefault();!b(a.currentTarget).hasClass("disabled")&&
|
|
||||||
o.page()!=a.data.action&&o.page(a.data.action).draw("page")};l=0;for(h=f.length;l<h;l++)if(c=f[l],b.isArray(c))q(d,c);else{g=e="";switch(c){case "ellipsis":e="…";g="disabled";break;case "first":e=k.sFirst;g=c+(0<j?"":" disabled");break;case "previous":e=k.sPrevious;g=c+(0<j?"":" disabled");break;case "next":e=k.sNext;g=c+(j<n-1?"":" disabled");break;case "last":e=k.sLast;g=c+(j<n-1?"":" disabled");break;default:e=c+1,g=j===c?"active":""}e&&(i=b("<li>",{"class":t.sPageButton+" "+g,id:0===r&&
|
|
||||||
"string"===typeof c?a.sTableId+"_"+c:null}).append(b("<a>",{href:"#","aria-controls":a.sTableId,"aria-label":u[c],"data-dt-idx":p,tabindex:a.iTabIndex,"class":"page-link"}).html(e)).appendTo(d),a.oApi._fnBindAction(i,{action:c},m),p++)}},i;try{i=b(h).find(d.activeElement).data("dt-idx")}catch(v){}q(b(h).empty().html('<ul class="pagination"/>').children("ul"),s);i!==m&&b(h).find("[data-dt-idx="+i+"]").focus()};return f});
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue