jquery-tablesorter 1.25.4 → 1.25.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/jquery-tablesorter/version.rb +1 -1
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.combined.js +38 -16
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.js +37 -15
- data/vendor/assets/javascripts/jquery-tablesorter/jquery.tablesorter.widgets.js +1 -1
- data/vendor/assets/javascripts/jquery-tablesorter/parsers/parser-input-select.js +6 -3
- data/vendor/assets/javascripts/jquery-tablesorter/widgets/widget-scroller.js +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.black-ice.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.blue.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap_2.css +2 -2
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap_3.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.bootstrap_4.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.dark.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.default.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.dropbox.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.green.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.grey.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.ice.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.jui.css +1 -1
- data/vendor/assets/stylesheets/jquery-tablesorter/theme.materialize.css +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 500efd982b7de96ff24db41cbab4f5d62c5b243c0ecf7397ce8fa0c8ca4c15f0
|
4
|
+
data.tar.gz: b3473cd63b3cd2bf6ce64c121fe17e14caf3d794d9de3c4c0365770f168d124e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8cd5484f37cd7b71f96a94f3168e6250e8485b20d41c4287f32cb3cbafe055664d477a6c2a1b921e84cf6788098d8c31b6df74cc23cb7c598e9656a86b110b38
|
7
|
+
data.tar.gz: cf6528ab3ba34a7b3bac83c7c1891d52eec1fc35b8321250ff95a872f5925aa0f4d8eef423c125781a30687170a5c1c35c8226721512761323ee2f1077178308
|
data/README.md
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Simple integration of jQuery tablesorter ([Mottie's fork]) into the asset pipeline.
|
6
6
|
|
7
|
-
Current tablesorter version: 2.30.
|
7
|
+
Current tablesorter version: 2.30.7 (2018-07-10) [documentation]
|
8
8
|
|
9
9
|
Any issue associated with the js/css files, please report to [Mottie's fork].
|
10
10
|
|
@@ -4,7 +4,7 @@
|
|
4
4
|
██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██▀▀ ▀▀▀██
|
5
5
|
█████▀ ▀████▀ ██ ██ ▀████▀ ██ ██ ██ ██ ▀████▀ █████▀ ██ ██ █████▀
|
6
6
|
*/
|
7
|
-
/*! tablesorter (FORK) - updated 2018-
|
7
|
+
/*! tablesorter (FORK) - updated 2018-07-10 (v2.30.7)*/
|
8
8
|
/* Includes widgets ( storage,uitheme,columns,filter,stickyHeaders,resizable,saveSort ) */
|
9
9
|
(function(factory) {
|
10
10
|
if (typeof define === 'function' && define.amd) {
|
@@ -16,7 +16,7 @@
|
|
16
16
|
}
|
17
17
|
}(function(jQuery) {
|
18
18
|
|
19
|
-
/*! TableSorter (FORK) v2.30.
|
19
|
+
/*! TableSorter (FORK) v2.30.7 *//*
|
20
20
|
* Client-side table sorting with ease!
|
21
21
|
* @requires jQuery v1.2.6+
|
22
22
|
*
|
@@ -40,7 +40,7 @@
|
|
40
40
|
'use strict';
|
41
41
|
var ts = $.tablesorter = {
|
42
42
|
|
43
|
-
version : '2.30.
|
43
|
+
version : '2.30.7',
|
44
44
|
|
45
45
|
parsers : [],
|
46
46
|
widgets : [],
|
@@ -611,10 +611,11 @@
|
|
611
611
|
// this may get updated numerous times if there are multiple rows
|
612
612
|
c.sortVars[ column ] = {
|
613
613
|
count : -1, // set to -1 because clicking on the header automatically adds one
|
614
|
-
order:
|
614
|
+
order : tmp ?
|
615
615
|
( c.sortReset ? [ 1, 0, 2 ] : [ 1, 0 ] ) : // desc, asc, unsorted
|
616
616
|
( c.sortReset ? [ 0, 1, 2 ] : [ 0, 1 ] ), // asc, desc, unsorted
|
617
|
-
lockedOrder : false
|
617
|
+
lockedOrder : false,
|
618
|
+
sortedBy : ''
|
618
619
|
};
|
619
620
|
tmp = ts.getData( $elem, configHeaders, 'lockedOrder' ) || false;
|
620
621
|
if ( typeof tmp !== 'undefined' && tmp !== false ) {
|
@@ -1214,6 +1215,11 @@
|
|
1214
1215
|
txt += ts.language[ nextSort === 0 ? 'nextAsc' : nextSort === 1 ? 'nextDesc' : 'nextNone' ];
|
1215
1216
|
}
|
1216
1217
|
$header.attr( 'aria-label', txt );
|
1218
|
+
if (vars.sortedBy) {
|
1219
|
+
$header.attr( 'data-sortedBy', vars.sortedBy );
|
1220
|
+
} else {
|
1221
|
+
$header.removeAttr('data-sortedBy');
|
1222
|
+
}
|
1217
1223
|
}
|
1218
1224
|
},
|
1219
1225
|
|
@@ -1568,6 +1574,7 @@
|
|
1568
1574
|
len = c.$headers.length,
|
1569
1575
|
th = ts.getClosest( $( cell ), 'th, td' ),
|
1570
1576
|
col = parseInt( th.attr( 'data-column' ), 10 ),
|
1577
|
+
sortedBy = event.type === 'mouseup' ? 'user' : event.type,
|
1571
1578
|
order = c.sortVars[ col ].order;
|
1572
1579
|
th = th[0];
|
1573
1580
|
// Only call sortStart if sorting is enabled
|
@@ -1588,6 +1595,9 @@
|
|
1588
1595
|
}
|
1589
1596
|
// user only wants to sort on one column
|
1590
1597
|
if ( notMultiSort ) {
|
1598
|
+
$.each( c.sortVars, function( i ) {
|
1599
|
+
c.sortVars[ i ].sortedBy = '';
|
1600
|
+
});
|
1591
1601
|
// flush the sort list
|
1592
1602
|
c.sortList = [];
|
1593
1603
|
c.last.sortList = [];
|
@@ -1596,6 +1606,7 @@
|
|
1596
1606
|
for ( indx = 0; indx < arry.length; indx++ ) {
|
1597
1607
|
if ( arry[ indx ][ 0 ] !== col ) {
|
1598
1608
|
c.sortList[ c.sortList.length ] = arry[ indx ];
|
1609
|
+
c.sortVars[ arry[ indx ][ 0 ] ].sortedBy = 'sortForce';
|
1599
1610
|
}
|
1600
1611
|
}
|
1601
1612
|
}
|
@@ -1603,12 +1614,14 @@
|
|
1603
1614
|
dir = order[ c.sortVars[ col ].count ];
|
1604
1615
|
if ( dir < 2 ) {
|
1605
1616
|
c.sortList[ c.sortList.length ] = [ col, dir ];
|
1617
|
+
c.sortVars[ col ].sortedBy = sortedBy;
|
1606
1618
|
// add other columns if header spans across multiple
|
1607
1619
|
if ( th.colSpan > 1 ) {
|
1608
1620
|
for ( indx = 1; indx < th.colSpan; indx++ ) {
|
1609
1621
|
c.sortList[ c.sortList.length ] = [ col + indx, dir ];
|
1610
1622
|
// update count on columns in colSpan
|
1611
1623
|
c.sortVars[ col + indx ].count = $.inArray( dir, order );
|
1624
|
+
c.sortVars[ col + indx ].sortedBy = sortedBy;
|
1612
1625
|
}
|
1613
1626
|
}
|
1614
1627
|
}
|
@@ -1620,6 +1633,7 @@
|
|
1620
1633
|
// the user has clicked on an already sorted column
|
1621
1634
|
if ( ts.isValueInArray( col, c.sortList ) >= 0 ) {
|
1622
1635
|
// reverse the sorting direction
|
1636
|
+
c.sortVars[ col ].sortedBy = sortedBy;
|
1623
1637
|
for ( indx = 0; indx < c.sortList.length; indx++ ) {
|
1624
1638
|
tmp = c.sortList[ indx ];
|
1625
1639
|
if ( tmp[ 0 ] === col ) {
|
@@ -1634,6 +1648,7 @@
|
|
1634
1648
|
} else {
|
1635
1649
|
// add column to sort list array
|
1636
1650
|
dir = order[ c.sortVars[ col ].count ];
|
1651
|
+
c.sortVars[ col ].sortedBy = sortedBy;
|
1637
1652
|
if ( dir < 2 ) {
|
1638
1653
|
c.sortList[ c.sortList.length ] = [ col, dir ];
|
1639
1654
|
// add other columns if header spans across multiple
|
@@ -1642,6 +1657,7 @@
|
|
1642
1657
|
c.sortList[ c.sortList.length ] = [ col + indx, dir ];
|
1643
1658
|
// update count on columns in colSpan
|
1644
1659
|
c.sortVars[ col + indx ].count = $.inArray( dir, order );
|
1660
|
+
c.sortVars[ col + indx ].sortedBy = sortedBy;
|
1645
1661
|
}
|
1646
1662
|
}
|
1647
1663
|
}
|
@@ -1677,6 +1693,7 @@
|
|
1677
1693
|
}
|
1678
1694
|
}
|
1679
1695
|
c.sortList[ c.sortList.length ] = [ arry[ indx ][ 0 ], dir ];
|
1696
|
+
c.sortVars[ arry[ indx ][ 0 ] ].sortedBy = 'sortAppend';
|
1680
1697
|
}
|
1681
1698
|
}
|
1682
1699
|
}
|
@@ -1762,7 +1779,7 @@
|
|
1762
1779
|
sort = sorter[ col ]( x[ col ], y[ col ], dir, col, table );
|
1763
1780
|
} else {
|
1764
1781
|
// fall back to natural sort
|
1765
|
-
sort = ts[ 'sortNatural' + ( dir ? 'Asc' : 'Desc' ) ]( a[ col ], b[ col ], col, c );
|
1782
|
+
sort = ts[ 'sortNatural' + ( dir ? 'Asc' : 'Desc' ) ]( a[ col ] || '', b[ col ] || '', col, c );
|
1766
1783
|
}
|
1767
1784
|
}
|
1768
1785
|
if ( sort ) { return sort; }
|
@@ -1808,8 +1825,12 @@
|
|
1808
1825
|
},
|
1809
1826
|
|
1810
1827
|
sortOn : function( c, list, callback, init ) {
|
1811
|
-
var
|
1828
|
+
var indx,
|
1829
|
+
table = c.table;
|
1812
1830
|
c.$table.triggerHandler( 'sortStart', table );
|
1831
|
+
for (indx = 0; indx < c.columns; indx++) {
|
1832
|
+
c.sortVars[ indx ].sortedBy = ts.isValueInArray( indx, list ) > -1 ? 'sorton' : '';
|
1833
|
+
}
|
1813
1834
|
// update header count index
|
1814
1835
|
ts.updateHeaderSortCount( c, list );
|
1815
1836
|
// set css for headers
|
@@ -1832,13 +1853,14 @@
|
|
1832
1853
|
|
1833
1854
|
sortReset : function( c, callback ) {
|
1834
1855
|
c.sortList = [];
|
1835
|
-
ts.setHeadersCss( c );
|
1836
|
-
ts.multisort( c );
|
1837
|
-
ts.appendCache( c );
|
1838
1856
|
var indx;
|
1839
1857
|
for (indx = 0; indx < c.columns; indx++) {
|
1840
1858
|
c.sortVars[ indx ].count = -1;
|
1859
|
+
c.sortVars[ indx ].sortedBy = '';
|
1841
1860
|
}
|
1861
|
+
ts.setHeadersCss( c );
|
1862
|
+
ts.multisort( c );
|
1863
|
+
ts.appendCache( c );
|
1842
1864
|
if ( $.isFunction( callback ) ) {
|
1843
1865
|
callback( c.table );
|
1844
1866
|
}
|
@@ -1856,20 +1878,20 @@
|
|
1856
1878
|
// Natural sort - https://github.com/overset/javascript-natural-sort (date sorting removed)
|
1857
1879
|
sortNatural : function( a, b ) {
|
1858
1880
|
if ( a === b ) { return 0; }
|
1859
|
-
a = a.toString();
|
1860
|
-
b = b.toString();
|
1881
|
+
a = ( a || '' ).toString();
|
1882
|
+
b = ( b || '' ).toString();
|
1861
1883
|
var aNum, bNum, aFloat, bFloat, indx, max,
|
1862
1884
|
regex = ts.regex;
|
1863
1885
|
// first try and sort Hex codes
|
1864
1886
|
if ( regex.hex.test( b ) ) {
|
1865
|
-
aNum = parseInt(
|
1866
|
-
bNum = parseInt(
|
1887
|
+
aNum = parseInt( a.match( regex.hex ), 16 );
|
1888
|
+
bNum = parseInt( b.match( regex.hex ), 16 );
|
1867
1889
|
if ( aNum < bNum ) { return -1; }
|
1868
1890
|
if ( aNum > bNum ) { return 1; }
|
1869
1891
|
}
|
1870
1892
|
// chunk/tokenize
|
1871
|
-
aNum =
|
1872
|
-
bNum =
|
1893
|
+
aNum = a.replace( regex.chunk, '\\0$1\\0' ).replace( regex.chunks, '' ).split( '\\0' );
|
1894
|
+
bNum = b.replace( regex.chunk, '\\0$1\\0' ).replace( regex.chunks, '' ).split( '\\0' );
|
1873
1895
|
max = Math.max( aNum.length, bNum.length );
|
1874
1896
|
// natural sorting through split numeric strings and default strings
|
1875
1897
|
for ( indx = 0; indx < max; indx++ ) {
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! TableSorter (FORK) v2.30.
|
1
|
+
/*! TableSorter (FORK) v2.30.7 *//*
|
2
2
|
* Client-side table sorting with ease!
|
3
3
|
* @requires jQuery v1.2.6+
|
4
4
|
*
|
@@ -22,7 +22,7 @@
|
|
22
22
|
'use strict';
|
23
23
|
var ts = $.tablesorter = {
|
24
24
|
|
25
|
-
version : '2.30.
|
25
|
+
version : '2.30.7',
|
26
26
|
|
27
27
|
parsers : [],
|
28
28
|
widgets : [],
|
@@ -593,10 +593,11 @@
|
|
593
593
|
// this may get updated numerous times if there are multiple rows
|
594
594
|
c.sortVars[ column ] = {
|
595
595
|
count : -1, // set to -1 because clicking on the header automatically adds one
|
596
|
-
order:
|
596
|
+
order : tmp ?
|
597
597
|
( c.sortReset ? [ 1, 0, 2 ] : [ 1, 0 ] ) : // desc, asc, unsorted
|
598
598
|
( c.sortReset ? [ 0, 1, 2 ] : [ 0, 1 ] ), // asc, desc, unsorted
|
599
|
-
lockedOrder : false
|
599
|
+
lockedOrder : false,
|
600
|
+
sortedBy : ''
|
600
601
|
};
|
601
602
|
tmp = ts.getData( $elem, configHeaders, 'lockedOrder' ) || false;
|
602
603
|
if ( typeof tmp !== 'undefined' && tmp !== false ) {
|
@@ -1196,6 +1197,11 @@
|
|
1196
1197
|
txt += ts.language[ nextSort === 0 ? 'nextAsc' : nextSort === 1 ? 'nextDesc' : 'nextNone' ];
|
1197
1198
|
}
|
1198
1199
|
$header.attr( 'aria-label', txt );
|
1200
|
+
if (vars.sortedBy) {
|
1201
|
+
$header.attr( 'data-sortedBy', vars.sortedBy );
|
1202
|
+
} else {
|
1203
|
+
$header.removeAttr('data-sortedBy');
|
1204
|
+
}
|
1199
1205
|
}
|
1200
1206
|
},
|
1201
1207
|
|
@@ -1550,6 +1556,7 @@
|
|
1550
1556
|
len = c.$headers.length,
|
1551
1557
|
th = ts.getClosest( $( cell ), 'th, td' ),
|
1552
1558
|
col = parseInt( th.attr( 'data-column' ), 10 ),
|
1559
|
+
sortedBy = event.type === 'mouseup' ? 'user' : event.type,
|
1553
1560
|
order = c.sortVars[ col ].order;
|
1554
1561
|
th = th[0];
|
1555
1562
|
// Only call sortStart if sorting is enabled
|
@@ -1570,6 +1577,9 @@
|
|
1570
1577
|
}
|
1571
1578
|
// user only wants to sort on one column
|
1572
1579
|
if ( notMultiSort ) {
|
1580
|
+
$.each( c.sortVars, function( i ) {
|
1581
|
+
c.sortVars[ i ].sortedBy = '';
|
1582
|
+
});
|
1573
1583
|
// flush the sort list
|
1574
1584
|
c.sortList = [];
|
1575
1585
|
c.last.sortList = [];
|
@@ -1578,6 +1588,7 @@
|
|
1578
1588
|
for ( indx = 0; indx < arry.length; indx++ ) {
|
1579
1589
|
if ( arry[ indx ][ 0 ] !== col ) {
|
1580
1590
|
c.sortList[ c.sortList.length ] = arry[ indx ];
|
1591
|
+
c.sortVars[ arry[ indx ][ 0 ] ].sortedBy = 'sortForce';
|
1581
1592
|
}
|
1582
1593
|
}
|
1583
1594
|
}
|
@@ -1585,12 +1596,14 @@
|
|
1585
1596
|
dir = order[ c.sortVars[ col ].count ];
|
1586
1597
|
if ( dir < 2 ) {
|
1587
1598
|
c.sortList[ c.sortList.length ] = [ col, dir ];
|
1599
|
+
c.sortVars[ col ].sortedBy = sortedBy;
|
1588
1600
|
// add other columns if header spans across multiple
|
1589
1601
|
if ( th.colSpan > 1 ) {
|
1590
1602
|
for ( indx = 1; indx < th.colSpan; indx++ ) {
|
1591
1603
|
c.sortList[ c.sortList.length ] = [ col + indx, dir ];
|
1592
1604
|
// update count on columns in colSpan
|
1593
1605
|
c.sortVars[ col + indx ].count = $.inArray( dir, order );
|
1606
|
+
c.sortVars[ col + indx ].sortedBy = sortedBy;
|
1594
1607
|
}
|
1595
1608
|
}
|
1596
1609
|
}
|
@@ -1602,6 +1615,7 @@
|
|
1602
1615
|
// the user has clicked on an already sorted column
|
1603
1616
|
if ( ts.isValueInArray( col, c.sortList ) >= 0 ) {
|
1604
1617
|
// reverse the sorting direction
|
1618
|
+
c.sortVars[ col ].sortedBy = sortedBy;
|
1605
1619
|
for ( indx = 0; indx < c.sortList.length; indx++ ) {
|
1606
1620
|
tmp = c.sortList[ indx ];
|
1607
1621
|
if ( tmp[ 0 ] === col ) {
|
@@ -1616,6 +1630,7 @@
|
|
1616
1630
|
} else {
|
1617
1631
|
// add column to sort list array
|
1618
1632
|
dir = order[ c.sortVars[ col ].count ];
|
1633
|
+
c.sortVars[ col ].sortedBy = sortedBy;
|
1619
1634
|
if ( dir < 2 ) {
|
1620
1635
|
c.sortList[ c.sortList.length ] = [ col, dir ];
|
1621
1636
|
// add other columns if header spans across multiple
|
@@ -1624,6 +1639,7 @@
|
|
1624
1639
|
c.sortList[ c.sortList.length ] = [ col + indx, dir ];
|
1625
1640
|
// update count on columns in colSpan
|
1626
1641
|
c.sortVars[ col + indx ].count = $.inArray( dir, order );
|
1642
|
+
c.sortVars[ col + indx ].sortedBy = sortedBy;
|
1627
1643
|
}
|
1628
1644
|
}
|
1629
1645
|
}
|
@@ -1659,6 +1675,7 @@
|
|
1659
1675
|
}
|
1660
1676
|
}
|
1661
1677
|
c.sortList[ c.sortList.length ] = [ arry[ indx ][ 0 ], dir ];
|
1678
|
+
c.sortVars[ arry[ indx ][ 0 ] ].sortedBy = 'sortAppend';
|
1662
1679
|
}
|
1663
1680
|
}
|
1664
1681
|
}
|
@@ -1744,7 +1761,7 @@
|
|
1744
1761
|
sort = sorter[ col ]( x[ col ], y[ col ], dir, col, table );
|
1745
1762
|
} else {
|
1746
1763
|
// fall back to natural sort
|
1747
|
-
sort = ts[ 'sortNatural' + ( dir ? 'Asc' : 'Desc' ) ]( a[ col ], b[ col ], col, c );
|
1764
|
+
sort = ts[ 'sortNatural' + ( dir ? 'Asc' : 'Desc' ) ]( a[ col ] || '', b[ col ] || '', col, c );
|
1748
1765
|
}
|
1749
1766
|
}
|
1750
1767
|
if ( sort ) { return sort; }
|
@@ -1790,8 +1807,12 @@
|
|
1790
1807
|
},
|
1791
1808
|
|
1792
1809
|
sortOn : function( c, list, callback, init ) {
|
1793
|
-
var
|
1810
|
+
var indx,
|
1811
|
+
table = c.table;
|
1794
1812
|
c.$table.triggerHandler( 'sortStart', table );
|
1813
|
+
for (indx = 0; indx < c.columns; indx++) {
|
1814
|
+
c.sortVars[ indx ].sortedBy = ts.isValueInArray( indx, list ) > -1 ? 'sorton' : '';
|
1815
|
+
}
|
1795
1816
|
// update header count index
|
1796
1817
|
ts.updateHeaderSortCount( c, list );
|
1797
1818
|
// set css for headers
|
@@ -1814,13 +1835,14 @@
|
|
1814
1835
|
|
1815
1836
|
sortReset : function( c, callback ) {
|
1816
1837
|
c.sortList = [];
|
1817
|
-
ts.setHeadersCss( c );
|
1818
|
-
ts.multisort( c );
|
1819
|
-
ts.appendCache( c );
|
1820
1838
|
var indx;
|
1821
1839
|
for (indx = 0; indx < c.columns; indx++) {
|
1822
1840
|
c.sortVars[ indx ].count = -1;
|
1841
|
+
c.sortVars[ indx ].sortedBy = '';
|
1823
1842
|
}
|
1843
|
+
ts.setHeadersCss( c );
|
1844
|
+
ts.multisort( c );
|
1845
|
+
ts.appendCache( c );
|
1824
1846
|
if ( $.isFunction( callback ) ) {
|
1825
1847
|
callback( c.table );
|
1826
1848
|
}
|
@@ -1838,20 +1860,20 @@
|
|
1838
1860
|
// Natural sort - https://github.com/overset/javascript-natural-sort (date sorting removed)
|
1839
1861
|
sortNatural : function( a, b ) {
|
1840
1862
|
if ( a === b ) { return 0; }
|
1841
|
-
a = a.toString();
|
1842
|
-
b = b.toString();
|
1863
|
+
a = ( a || '' ).toString();
|
1864
|
+
b = ( b || '' ).toString();
|
1843
1865
|
var aNum, bNum, aFloat, bFloat, indx, max,
|
1844
1866
|
regex = ts.regex;
|
1845
1867
|
// first try and sort Hex codes
|
1846
1868
|
if ( regex.hex.test( b ) ) {
|
1847
|
-
aNum = parseInt(
|
1848
|
-
bNum = parseInt(
|
1869
|
+
aNum = parseInt( a.match( regex.hex ), 16 );
|
1870
|
+
bNum = parseInt( b.match( regex.hex ), 16 );
|
1849
1871
|
if ( aNum < bNum ) { return -1; }
|
1850
1872
|
if ( aNum > bNum ) { return 1; }
|
1851
1873
|
}
|
1852
1874
|
// chunk/tokenize
|
1853
|
-
aNum =
|
1854
|
-
bNum =
|
1875
|
+
aNum = a.replace( regex.chunk, '\\0$1\\0' ).replace( regex.chunks, '' ).split( '\\0' );
|
1876
|
+
bNum = b.replace( regex.chunk, '\\0$1\\0' ).replace( regex.chunks, '' ).split( '\\0' );
|
1855
1877
|
max = Math.max( aNum.length, bNum.length );
|
1856
1878
|
// natural sorting through split numeric strings and default strings
|
1857
1879
|
for ( indx = 0; indx < max; indx++ ) {
|
@@ -4,7 +4,7 @@
|
|
4
4
|
██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██▀▀ ▀▀▀██
|
5
5
|
█████▀ ▀████▀ ██ ██ ▀████▀ ██ ██ ██ ██ ▀████▀ █████▀ ██ ██ █████▀
|
6
6
|
*/
|
7
|
-
/*! tablesorter (FORK) - updated 2018-
|
7
|
+
/*! tablesorter (FORK) - updated 2018-07-10 (v2.30.7)*/
|
8
8
|
/* Includes widgets ( storage,uitheme,columns,filter,stickyHeaders,resizable,saveSort ) */
|
9
9
|
(function(factory) {
|
10
10
|
if (typeof define === 'function' && define.amd) {
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! Parser: input & select - updated 2018-
|
1
|
+
/*! Parser: input & select - updated 2018-07-10 (v2.30.7) *//*
|
2
2
|
* for jQuery 1.7+ & tablesorter 2.7.11+
|
3
3
|
* Demo: http://mottie.github.com/tablesorter/docs/example-widget-grouping.html
|
4
4
|
*/
|
@@ -164,9 +164,12 @@
|
|
164
164
|
var $sticky,
|
165
165
|
$rows = $table.children( 'tbody' ).children( ':visible' ), // (include child rows?)
|
166
166
|
len = $rows.length,
|
167
|
-
|
167
|
+
c = $table[0].config,
|
168
|
+
wo = c && c.widgetOptions,
|
169
|
+
$headers = c && c.$headers.add( $( c.namespace + '_extra_headers' ) ) || $table.children( 'thead' ),
|
170
|
+
hasSticky = wo && wo.$sticky;
|
168
171
|
// set indeterminate state on header checkbox
|
169
|
-
$
|
172
|
+
$headers.find( 'input[type="checkbox"]' ).each( function() {
|
170
173
|
if (hasSticky) {
|
171
174
|
$sticky = hasSticky.find( '[data-column="' + column + '"]' );
|
172
175
|
}
|
@@ -112,7 +112,7 @@
|
|
112
112
|
}
|
113
113
|
|
114
114
|
/* caption */
|
115
|
-
caption {
|
115
|
+
.tablesorter-bootstrap > caption {
|
116
116
|
background-color: #fff;
|
117
117
|
}
|
118
118
|
|
@@ -185,4 +185,4 @@ caption {
|
|
185
185
|
text-align: center;
|
186
186
|
cursor: pointer;
|
187
187
|
background-color: #e6bf99;
|
188
|
-
}
|
188
|
+
}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jquery-tablesorter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.25.
|
4
|
+
version: 1.25.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jun Lin
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-
|
12
|
+
date: 2018-08-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: railties
|