datatables.net 2.3.2 → 2.3.3
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.
- package/js/dataTables.js +119 -117
- package/js/dataTables.min.js +2 -2
- package/js/dataTables.min.mjs +2 -2
- package/js/dataTables.mjs +119 -117
- package/package.json +1 -1
- package/types/types.d.ts +32 -32
package/js/dataTables.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! DataTables 2.3.
|
|
1
|
+
/*! DataTables 2.3.3
|
|
2
2
|
* © SpryMedia Ltd - datatables.net/license
|
|
3
3
|
*/
|
|
4
4
|
|
|
@@ -696,7 +696,7 @@ DataTable.ext = _ext = {
|
|
|
696
696
|
*
|
|
697
697
|
* The extension options for ordering of data available here is complimentary
|
|
698
698
|
* to the default type based ordering that DataTables typically uses. It
|
|
699
|
-
* allows much greater control over the
|
|
699
|
+
* allows much greater control over the data that is being used to
|
|
700
700
|
* order a column, but is necessarily therefore more complex.
|
|
701
701
|
*
|
|
702
702
|
* This type of ordering is useful if you want to do ordering based on data
|
|
@@ -855,7 +855,7 @@ DataTable.ext = _ext = {
|
|
|
855
855
|
* `{type}-asc` and `{type}-desc` together. It is generally recommended
|
|
856
856
|
* that only `{type}-pre` is used, as this provides the optimal
|
|
857
857
|
* implementation in terms of speed, although the others are provided
|
|
858
|
-
* for compatibility with existing
|
|
858
|
+
* for compatibility with existing JavaScript sort functions.
|
|
859
859
|
*
|
|
860
860
|
* `{type}-pre`: Functions defined take a single parameter:
|
|
861
861
|
*
|
|
@@ -865,7 +865,7 @@ DataTable.ext = _ext = {
|
|
|
865
865
|
*
|
|
866
866
|
* * `{*}` Data to be sorted upon
|
|
867
867
|
*
|
|
868
|
-
* `{type}-asc` and `{type}-desc`: Functions are typical
|
|
868
|
+
* `{type}-asc` and `{type}-desc`: Functions are typical JavaScript sort
|
|
869
869
|
* functions, taking two parameters:
|
|
870
870
|
*
|
|
871
871
|
* 1. `{*}` Data to compare to the second parameter
|
|
@@ -1089,7 +1089,7 @@ var _intVal = function ( s ) {
|
|
|
1089
1089
|
};
|
|
1090
1090
|
|
|
1091
1091
|
// Convert from a formatted number with characters other than `.` as the
|
|
1092
|
-
// decimal place, to a
|
|
1092
|
+
// decimal place, to a JavaScript number
|
|
1093
1093
|
var _numToDecimal = function ( num, decimalPoint ) {
|
|
1094
1094
|
// Cache created regular expressions for speed as this function is called often
|
|
1095
1095
|
if ( ! _re_dic[ decimalPoint ] ) {
|
|
@@ -1155,19 +1155,19 @@ var _htmlNumeric = function ( d, decimalPoint, formatted, allowEmpty ) {
|
|
|
1155
1155
|
|
|
1156
1156
|
var _pluck = function ( a, prop, prop2 ) {
|
|
1157
1157
|
var out = [];
|
|
1158
|
-
var i=0,
|
|
1158
|
+
var i=0, iLen=a.length;
|
|
1159
1159
|
|
|
1160
1160
|
// Could have the test in the loop for slightly smaller code, but speed
|
|
1161
1161
|
// is essential here
|
|
1162
1162
|
if ( prop2 !== undefined ) {
|
|
1163
|
-
for ( ; i<
|
|
1163
|
+
for ( ; i<iLen ; i++ ) {
|
|
1164
1164
|
if ( a[i] && a[i][ prop ] ) {
|
|
1165
1165
|
out.push( a[i][ prop ][ prop2 ] );
|
|
1166
1166
|
}
|
|
1167
1167
|
}
|
|
1168
1168
|
}
|
|
1169
1169
|
else {
|
|
1170
|
-
for ( ; i<
|
|
1170
|
+
for ( ; i<iLen ; i++ ) {
|
|
1171
1171
|
if ( a[i] ) {
|
|
1172
1172
|
out.push( a[i][ prop ] );
|
|
1173
1173
|
}
|
|
@@ -1183,19 +1183,19 @@ var _pluck = function ( a, prop, prop2 ) {
|
|
|
1183
1183
|
var _pluck_order = function ( a, order, prop, prop2 )
|
|
1184
1184
|
{
|
|
1185
1185
|
var out = [];
|
|
1186
|
-
var i=0,
|
|
1186
|
+
var i=0, iLen=order.length;
|
|
1187
1187
|
|
|
1188
1188
|
// Could have the test in the loop for slightly smaller code, but speed
|
|
1189
1189
|
// is essential here
|
|
1190
1190
|
if ( prop2 !== undefined ) {
|
|
1191
|
-
for ( ; i<
|
|
1191
|
+
for ( ; i<iLen ; i++ ) {
|
|
1192
1192
|
if ( a[ order[i] ] && a[ order[i] ][ prop ] ) {
|
|
1193
1193
|
out.push( a[ order[i] ][ prop ][ prop2 ] );
|
|
1194
1194
|
}
|
|
1195
1195
|
}
|
|
1196
1196
|
}
|
|
1197
1197
|
else {
|
|
1198
|
-
for ( ; i<
|
|
1198
|
+
for ( ; i<iLen ; i++ ) {
|
|
1199
1199
|
if ( a[ order[i] ] ) {
|
|
1200
1200
|
out.push( a[ order[i] ][ prop ] );
|
|
1201
1201
|
}
|
|
@@ -1232,7 +1232,7 @@ var _removeEmpty = function ( a )
|
|
|
1232
1232
|
{
|
|
1233
1233
|
var out = [];
|
|
1234
1234
|
|
|
1235
|
-
for ( var i=0,
|
|
1235
|
+
for ( var i=0, iLen=a.length ; i<iLen ; i++ ) {
|
|
1236
1236
|
if ( a[i] ) { // careful - will remove all falsy values!
|
|
1237
1237
|
out.push( a[i] );
|
|
1238
1238
|
}
|
|
@@ -1318,7 +1318,7 @@ var _areAllUnique = function ( src ) {
|
|
|
1318
1318
|
var sorted = src.slice().sort();
|
|
1319
1319
|
var last = sorted[0];
|
|
1320
1320
|
|
|
1321
|
-
for ( var i=1,
|
|
1321
|
+
for ( var i=1, iLen=sorted.length ; i<iLen ; i++ ) {
|
|
1322
1322
|
if ( sorted[i] === last ) {
|
|
1323
1323
|
return false;
|
|
1324
1324
|
}
|
|
@@ -1354,10 +1354,10 @@ var _unique = function ( src )
|
|
|
1354
1354
|
var
|
|
1355
1355
|
out = [],
|
|
1356
1356
|
val,
|
|
1357
|
-
i,
|
|
1357
|
+
i, iLen=src.length,
|
|
1358
1358
|
j, k=0;
|
|
1359
1359
|
|
|
1360
|
-
again: for ( i=0 ; i<
|
|
1360
|
+
again: for ( i=0 ; i<iLen ; i++ ) {
|
|
1361
1361
|
val = src[i];
|
|
1362
1362
|
|
|
1363
1363
|
for ( j=0 ; j<k ; j++ ) {
|
|
@@ -1891,7 +1891,7 @@ function _fnCompatOpts ( init )
|
|
|
1891
1891
|
var searchCols = init.aoSearchCols;
|
|
1892
1892
|
|
|
1893
1893
|
if ( searchCols ) {
|
|
1894
|
-
for ( var i=0,
|
|
1894
|
+
for ( var i=0, iLen=searchCols.length ; i<iLen ; i++ ) {
|
|
1895
1895
|
if ( searchCols[i] ) {
|
|
1896
1896
|
_fnCamelToHungarian( DataTable.models.oSearch, searchCols[i] );
|
|
1897
1897
|
}
|
|
@@ -2044,7 +2044,7 @@ function _fnColumnOptions( oSettings, iCol, oOptions )
|
|
|
2044
2044
|
oCol._sManualType = oOptions.sType;
|
|
2045
2045
|
}
|
|
2046
2046
|
|
|
2047
|
-
// `class` is a reserved word in
|
|
2047
|
+
// `class` is a reserved word in JavaScript, so we need to provide
|
|
2048
2048
|
// the ability to use a valid name for the camel case input
|
|
2049
2049
|
if ( oOptions.className && ! oOptions.sClass )
|
|
2050
2050
|
{
|
|
@@ -2201,14 +2201,14 @@ function _fnColumnIndexToVisible( oSettings, iMatch )
|
|
|
2201
2201
|
* @returns {int} i the number of visible columns
|
|
2202
2202
|
* @memberof DataTable#oApi
|
|
2203
2203
|
*/
|
|
2204
|
-
function
|
|
2204
|
+
function _fnVisibleColumns( settings )
|
|
2205
2205
|
{
|
|
2206
2206
|
var layout = settings.aoHeader;
|
|
2207
2207
|
var columns = settings.aoColumns;
|
|
2208
2208
|
var vis = 0;
|
|
2209
2209
|
|
|
2210
2210
|
if ( layout.length ) {
|
|
2211
|
-
for ( var i=0,
|
|
2211
|
+
for ( var i=0, iLen=layout[0].length ; i<iLen ; i++ ) {
|
|
2212
2212
|
if ( columns[i].bVisible && $(layout[0][i].cell).css('display') !== 'none' ) {
|
|
2213
2213
|
vis++;
|
|
2214
2214
|
}
|
|
@@ -2243,7 +2243,7 @@ function _fnGetColumns( oSettings, sParam )
|
|
|
2243
2243
|
/**
|
|
2244
2244
|
* Allow the result from a type detection function to be `true` while
|
|
2245
2245
|
* translating that into a string. Old type detection functions will
|
|
2246
|
-
* return the type name if it passes. An
|
|
2246
|
+
* return the type name if it passes. An object store would be better,
|
|
2247
2247
|
* but not backwards compatible.
|
|
2248
2248
|
*
|
|
2249
2249
|
* @param {*} typeDetect Object or function for type detection
|
|
@@ -2266,11 +2266,11 @@ function _fnColumnTypes ( settings )
|
|
|
2266
2266
|
var columns = settings.aoColumns;
|
|
2267
2267
|
var data = settings.aoData;
|
|
2268
2268
|
var types = DataTable.ext.type.detect;
|
|
2269
|
-
var i,
|
|
2269
|
+
var i, iLen, j, jen, k, ken;
|
|
2270
2270
|
var col, detectedType, cache;
|
|
2271
2271
|
|
|
2272
2272
|
// For each column, spin over the data type detection functions, seeing if one matches
|
|
2273
|
-
for ( i=0,
|
|
2273
|
+
for ( i=0, iLen=columns.length ; i<iLen ; i++ ) {
|
|
2274
2274
|
col = columns[i];
|
|
2275
2275
|
cache = [];
|
|
2276
2276
|
|
|
@@ -2540,7 +2540,7 @@ function _fnColumnsSumWidth( settings, targets, original, incVisible ) {
|
|
|
2540
2540
|
var unit;
|
|
2541
2541
|
var columns = settings.aoColumns;
|
|
2542
2542
|
|
|
2543
|
-
for ( var i=0,
|
|
2543
|
+
for ( var i=0, iLen=targets.length ; i<iLen ; i++ ) {
|
|
2544
2544
|
var column = columns[ targets[i] ];
|
|
2545
2545
|
var definedWidth = original ?
|
|
2546
2546
|
column.sWidthOrig :
|
|
@@ -2586,7 +2586,7 @@ function _fnColumnsFromHeader( cell )
|
|
|
2586
2586
|
}
|
|
2587
2587
|
/**
|
|
2588
2588
|
* Add a data array to the table, creating DOM node etc. This is the parallel to
|
|
2589
|
-
* _fnGatherData, but for adding rows from a
|
|
2589
|
+
* _fnGatherData, but for adding rows from a JavaScript source, rather than a
|
|
2590
2590
|
* DOM source.
|
|
2591
2591
|
* @param {object} settings dataTables settings object
|
|
2592
2592
|
* @param {array} data data array to be added
|
|
@@ -2726,10 +2726,10 @@ function _fnGetCellData( settings, rowIdx, colIdx, type )
|
|
|
2726
2726
|
}
|
|
2727
2727
|
|
|
2728
2728
|
if ( type === 'filter' ) {
|
|
2729
|
-
var
|
|
2729
|
+
var formatters = DataTable.ext.type.search;
|
|
2730
2730
|
|
|
2731
|
-
if (
|
|
2732
|
-
cellData =
|
|
2731
|
+
if ( formatters[ col.sType ] ) {
|
|
2732
|
+
cellData = formatters[ col.sType ]( cellData );
|
|
2733
2733
|
}
|
|
2734
2734
|
}
|
|
2735
2735
|
|
|
@@ -2859,7 +2859,7 @@ function _fnClearTable( settings )
|
|
|
2859
2859
|
function _fnInvalidate( settings, rowIdx, src, colIdx )
|
|
2860
2860
|
{
|
|
2861
2861
|
var row = settings.aoData[ rowIdx ];
|
|
2862
|
-
var i,
|
|
2862
|
+
var i, iLen;
|
|
2863
2863
|
|
|
2864
2864
|
// Remove the cached data for the row
|
|
2865
2865
|
row._aSortData = null;
|
|
@@ -2884,7 +2884,7 @@ function _fnInvalidate( settings, rowIdx, src, colIdx )
|
|
|
2884
2884
|
_fnWriteCell(cells[colIdx], display[colIdx]);
|
|
2885
2885
|
}
|
|
2886
2886
|
else {
|
|
2887
|
-
for ( i=0,
|
|
2887
|
+
for ( i=0, iLen=cells.length ; i<iLen ; i++ ) {
|
|
2888
2888
|
_fnWriteCell(cells[i], display[i]);
|
|
2889
2889
|
}
|
|
2890
2890
|
}
|
|
@@ -2902,7 +2902,7 @@ function _fnInvalidate( settings, rowIdx, src, colIdx )
|
|
|
2902
2902
|
cols[ colIdx ].maxLenString = null;
|
|
2903
2903
|
}
|
|
2904
2904
|
else {
|
|
2905
|
-
for ( i=0,
|
|
2905
|
+
for ( i=0, iLen=cols.length ; i<iLen ; i++ ) {
|
|
2906
2906
|
cols[i].sType = null;
|
|
2907
2907
|
cols[i].maxLenString = null;
|
|
2908
2908
|
}
|
|
@@ -3201,7 +3201,7 @@ function _fnBuildHead( settings, side )
|
|
|
3201
3201
|
{
|
|
3202
3202
|
var classes = settings.oClasses;
|
|
3203
3203
|
var columns = settings.aoColumns;
|
|
3204
|
-
var i,
|
|
3204
|
+
var i, iLen, row;
|
|
3205
3205
|
var target = side === 'header'
|
|
3206
3206
|
? settings.nTHead
|
|
3207
3207
|
: settings.nTFoot;
|
|
@@ -3229,7 +3229,7 @@ function _fnBuildHead( settings, side )
|
|
|
3229
3229
|
cellCount += this.colSpan;
|
|
3230
3230
|
});
|
|
3231
3231
|
|
|
3232
|
-
for ( i=cellCount,
|
|
3232
|
+
for ( i=cellCount, iLen=columns.length ; i<iLen ; i++ ) {
|
|
3233
3233
|
$('<th/>')
|
|
3234
3234
|
.html( columns[i][titleProp] || '' )
|
|
3235
3235
|
.appendTo( row );
|
|
@@ -3573,7 +3573,7 @@ function _emptyRow ( settings ) {
|
|
|
3573
3573
|
|
|
3574
3574
|
return $( '<tr/>' )
|
|
3575
3575
|
.append( $('<td />', {
|
|
3576
|
-
'colSpan':
|
|
3576
|
+
'colSpan': _fnVisibleColumns( settings ),
|
|
3577
3577
|
'class': settings.oClasses.empty.row
|
|
3578
3578
|
} ).html( zero ) )[0];
|
|
3579
3579
|
}
|
|
@@ -3757,7 +3757,7 @@ function _layoutResolve( settings, row ) {
|
|
|
3757
3757
|
|
|
3758
3758
|
var line = row[ item ].contents;
|
|
3759
3759
|
|
|
3760
|
-
for ( var i=0,
|
|
3760
|
+
for ( var i=0, iLen=line.length ; i<iLen ; i++ ) {
|
|
3761
3761
|
if ( ! line[i] ) {
|
|
3762
3762
|
continue;
|
|
3763
3763
|
}
|
|
@@ -3921,7 +3921,7 @@ function _fnLayoutDom( settings, dom, insert )
|
|
|
3921
3921
|
/**
|
|
3922
3922
|
* Use the DOM source to create up an array of header cells. The idea here is to
|
|
3923
3923
|
* create a layout grid (array) of rows x columns, which contains a reference
|
|
3924
|
-
* to the cell
|
|
3924
|
+
* to the cell at that point in the grid (regardless of col/rowspan), such that
|
|
3925
3925
|
* any column / row could be removed and the new grid constructed
|
|
3926
3926
|
* @param {node} thead The header/footer element for the table
|
|
3927
3927
|
* @returns {array} Calculated layout array
|
|
@@ -4166,7 +4166,7 @@ function _fnBuildAjax( oSettings, data, fn )
|
|
|
4166
4166
|
|
|
4167
4167
|
var newData = typeof ajaxData === 'function' ?
|
|
4168
4168
|
ajaxData( data, oSettings ) : // fn can manipulate data or return
|
|
4169
|
-
ajaxData; // an object
|
|
4169
|
+
ajaxData; // an object or array to merge
|
|
4170
4170
|
|
|
4171
4171
|
// If the function returned something, use that alone
|
|
4172
4172
|
data = typeof ajaxData === 'function' && newData ?
|
|
@@ -4365,7 +4365,7 @@ function _fnAjaxUpdateDraw ( settings, json )
|
|
|
4365
4365
|
settings._iRecordsTotal = parseInt(recordsTotal, 10);
|
|
4366
4366
|
settings._iRecordsDisplay = parseInt(recordsFiltered, 10);
|
|
4367
4367
|
|
|
4368
|
-
for ( var i=0,
|
|
4368
|
+
for ( var i=0, iLen=data.length ; i<iLen ; i++ ) {
|
|
4369
4369
|
_fnAddData( settings, data[i] );
|
|
4370
4370
|
}
|
|
4371
4371
|
settings.aiDisplay = settings.aiDisplayMaster.slice();
|
|
@@ -4524,7 +4524,7 @@ function _fnFilterCustom( settings )
|
|
|
4524
4524
|
var displayRows = settings.aiDisplay;
|
|
4525
4525
|
var row, rowIdx;
|
|
4526
4526
|
|
|
4527
|
-
for ( var i=0,
|
|
4527
|
+
for ( var i=0, iLen=filters.length ; i<iLen ; i++ ) {
|
|
4528
4528
|
var rows = [];
|
|
4529
4529
|
|
|
4530
4530
|
// Loop over each row and see if it should be included
|
|
@@ -4592,7 +4592,7 @@ function _fnFilter( searchRows, settings, input, options, column )
|
|
|
4592
4592
|
* @param {string} sSearch string to search for
|
|
4593
4593
|
* @param {bool} bRegex treat as a regular expression or not
|
|
4594
4594
|
* @param {bool} bSmart perform smart filtering or not
|
|
4595
|
-
* @param {bool} bCaseInsensitive Do case
|
|
4595
|
+
* @param {bool} bCaseInsensitive Do case-insensitive matching or not
|
|
4596
4596
|
* @returns {RegExp} constructed object
|
|
4597
4597
|
* @memberof DataTable#oApi
|
|
4598
4598
|
*/
|
|
@@ -5335,7 +5335,7 @@ function _fnScrollDraw ( settings )
|
|
|
5335
5335
|
}
|
|
5336
5336
|
|
|
5337
5337
|
// 4. Clean up
|
|
5338
|
-
// Figure out if there are scrollbar present - if so then we need
|
|
5338
|
+
// Figure out if there are scrollbar present - if so then we need the header and footer to
|
|
5339
5339
|
// provide a bit more space to allow "overflow" scrolling (i.e. past the scrollbar)
|
|
5340
5340
|
var isScrolling = Math.floor(table.height()) > divBodyEl.clientHeight || divBody.css('overflow-y') == "scroll";
|
|
5341
5341
|
var paddingSide = 'padding' + (browser.bScrollbarLeft ? 'Left' : 'Right' );
|
|
@@ -5433,7 +5433,7 @@ function _fnCalculateColumnWidths ( settings )
|
|
|
5433
5433
|
.removeAttr( 'id' );
|
|
5434
5434
|
|
|
5435
5435
|
// Clean up the table body
|
|
5436
|
-
tmpTable.append('<tbody
|
|
5436
|
+
tmpTable.append('<tbody/>')
|
|
5437
5437
|
var tr = $('<tr/>').appendTo( tmpTable.find('tbody') );
|
|
5438
5438
|
|
|
5439
5439
|
// Clone the table header and footer - we can't use the header / footer
|
|
@@ -5642,7 +5642,7 @@ function _fnGetMaxLenString( settings, colIdx )
|
|
|
5642
5642
|
if (! column.maxLenString) {
|
|
5643
5643
|
var s, max='', maxLen = -1;
|
|
5644
5644
|
|
|
5645
|
-
for ( var i=0,
|
|
5645
|
+
for ( var i=0, iLen=settings.aiDisplayMaster.length ; i<iLen ; i++ ) {
|
|
5646
5646
|
var rowIdx = settings.aiDisplayMaster[i];
|
|
5647
5647
|
var data = _fnGetRowDisplay(settings, rowIdx)[colIdx];
|
|
5648
5648
|
|
|
@@ -5764,7 +5764,7 @@ function _fnSortAttachListener(settings, node, selector, column, callback) {
|
|
|
5764
5764
|
: [column];
|
|
5765
5765
|
|
|
5766
5766
|
if ( columns.length ) {
|
|
5767
|
-
for ( var i=0,
|
|
5767
|
+
for ( var i=0, iLen=columns.length ; i<iLen ; i++ ) {
|
|
5768
5768
|
var ret = _fnSortAdd( settings, columns[i], i, e.shiftKey );
|
|
5769
5769
|
|
|
5770
5770
|
if (ret !== false) {
|
|
@@ -5813,7 +5813,7 @@ function _fnSortDisplay(settings, display) {
|
|
|
5813
5813
|
masterMap[master[i]] = i;
|
|
5814
5814
|
}
|
|
5815
5815
|
|
|
5816
|
-
// And then cache what would be the indexOf
|
|
5816
|
+
// And then cache what would be the indexOf from the display
|
|
5817
5817
|
for (i=0 ; i<display.length ; i++) {
|
|
5818
5818
|
map[display[i]] = masterMap[display[i]];
|
|
5819
5819
|
}
|
|
@@ -5939,7 +5939,7 @@ function _fnSortFlatten ( settings )
|
|
|
5939
5939
|
function _fnSort ( oSettings, col, dir )
|
|
5940
5940
|
{
|
|
5941
5941
|
var
|
|
5942
|
-
i,
|
|
5942
|
+
i, iLen,
|
|
5943
5943
|
aiOrig = [],
|
|
5944
5944
|
extSort = DataTable.ext.type.order,
|
|
5945
5945
|
aoData = oSettings.aoData,
|
|
@@ -5970,7 +5970,7 @@ function _fnSort ( oSettings, col, dir )
|
|
|
5970
5970
|
aSort = _fnSortFlatten( oSettings );
|
|
5971
5971
|
}
|
|
5972
5972
|
|
|
5973
|
-
for ( i=0,
|
|
5973
|
+
for ( i=0, iLen=aSort.length ; i<iLen ; i++ ) {
|
|
5974
5974
|
sortCol = aSort[i];
|
|
5975
5975
|
|
|
5976
5976
|
// Load the data needed for the sort, for each cell
|
|
@@ -5993,7 +5993,7 @@ function _fnSort ( oSettings, col, dir )
|
|
|
5993
5993
|
|
|
5994
5994
|
/* Do the sort - here we want multi-column sorting based on a given data source (column)
|
|
5995
5995
|
* and sorting function (from oSort) in a certain direction. It's reasonably complex to
|
|
5996
|
-
* follow on
|
|
5996
|
+
* follow on its own, but this is what we want (example two column sorting):
|
|
5997
5997
|
* fnLocalSorting = function(a,b){
|
|
5998
5998
|
* var test;
|
|
5999
5999
|
* test = oSort['string-asc']('data11', 'data12');
|
|
@@ -6117,7 +6117,7 @@ function _fnSortAdd ( settings, colIdx, addIndex, shift )
|
|
|
6117
6117
|
nextSortIdx = 0; // can't remove sorting completely
|
|
6118
6118
|
}
|
|
6119
6119
|
|
|
6120
|
-
if ( nextSortIdx === null ) {
|
|
6120
|
+
if ( nextSortIdx === null || asSorting[ nextSortIdx ] === '' ) {
|
|
6121
6121
|
sorting.splice( sortIdx, 1 );
|
|
6122
6122
|
}
|
|
6123
6123
|
else {
|
|
@@ -6167,11 +6167,11 @@ function _fnSortingClasses( settings )
|
|
|
6167
6167
|
var sortClass = settings.oClasses.order.position;
|
|
6168
6168
|
var sort = _fnSortFlatten( settings );
|
|
6169
6169
|
var features = settings.oFeatures;
|
|
6170
|
-
var i,
|
|
6170
|
+
var i, iLen, colIdx;
|
|
6171
6171
|
|
|
6172
6172
|
if ( features.bSort && features.bSortClasses ) {
|
|
6173
6173
|
// Remove old sorting classes
|
|
6174
|
-
for ( i=0,
|
|
6174
|
+
for ( i=0, iLen=oldSort.length ; i<iLen ; i++ ) {
|
|
6175
6175
|
colIdx = oldSort[i].src;
|
|
6176
6176
|
|
|
6177
6177
|
// Remove column sorting
|
|
@@ -6180,7 +6180,7 @@ function _fnSortingClasses( settings )
|
|
|
6180
6180
|
}
|
|
6181
6181
|
|
|
6182
6182
|
// Add new column sorting
|
|
6183
|
-
for ( i=0,
|
|
6183
|
+
for ( i=0, iLen=sort.length ; i<iLen ; i++ ) {
|
|
6184
6184
|
colIdx = sort[i].src;
|
|
6185
6185
|
|
|
6186
6186
|
$( _pluck( settings.aoData, 'anCells', colIdx ) )
|
|
@@ -6314,7 +6314,7 @@ function _fnLoadState ( settings, init, callback )
|
|
|
6314
6314
|
}
|
|
6315
6315
|
|
|
6316
6316
|
function _fnImplementState ( settings, s, callback) {
|
|
6317
|
-
var i,
|
|
6317
|
+
var i, iLen;
|
|
6318
6318
|
var columns = settings.aoColumns;
|
|
6319
6319
|
var currentNames = _pluck(settings.aoColumns, 'sName');
|
|
6320
6320
|
|
|
@@ -6443,7 +6443,7 @@ function _fnImplementState ( settings, s, callback) {
|
|
|
6443
6443
|
|
|
6444
6444
|
// If the number of columns to restore is different from current, then all bets are off.
|
|
6445
6445
|
if (set.length === columns.length) {
|
|
6446
|
-
for ( i=0,
|
|
6446
|
+
for ( i=0, iLen=set.length ; i<iLen ; i++ ) {
|
|
6447
6447
|
var col = set[i];
|
|
6448
6448
|
|
|
6449
6449
|
// Visibility
|
|
@@ -6597,7 +6597,7 @@ function _fnExtend( out, extender, breakRefs )
|
|
|
6597
6597
|
|
|
6598
6598
|
|
|
6599
6599
|
/**
|
|
6600
|
-
* Bind an event
|
|
6600
|
+
* Bind an event handler to allow a click or return key to activate the callback.
|
|
6601
6601
|
* This is good for accessibility since a return on the keyboard will have the
|
|
6602
6602
|
* same effect as a click, if the element has focus.
|
|
6603
6603
|
* @param {element} n Element to bind the action to
|
|
@@ -6786,7 +6786,7 @@ function _fnMacros ( settings, str, entries )
|
|
|
6786
6786
|
}
|
|
6787
6787
|
|
|
6788
6788
|
/**
|
|
6789
|
-
* Add elements to an array as quickly as possible, but stack
|
|
6789
|
+
* Add elements to an array as quickly as possible, but stack safe.
|
|
6790
6790
|
*
|
|
6791
6791
|
* @param {*} arr Array to add the data to
|
|
6792
6792
|
* @param {*} data Data array that is to be added
|
|
@@ -7062,7 +7062,7 @@ $.extend( _Api.prototype, {
|
|
|
7062
7062
|
|
|
7063
7063
|
each: function ( fn )
|
|
7064
7064
|
{
|
|
7065
|
-
for ( var i=0,
|
|
7065
|
+
for ( var i=0, iLen=this.length ; i<iLen; i++ ) {
|
|
7066
7066
|
fn.call( this, this[i], i, this );
|
|
7067
7067
|
}
|
|
7068
7068
|
|
|
@@ -7108,7 +7108,7 @@ $.extend( _Api.prototype, {
|
|
|
7108
7108
|
iterator: function ( flatten, type, fn, alwaysNew ) {
|
|
7109
7109
|
var
|
|
7110
7110
|
a = [], ret,
|
|
7111
|
-
i,
|
|
7111
|
+
i, iLen, j, jen,
|
|
7112
7112
|
context = this.context,
|
|
7113
7113
|
rows, items, item,
|
|
7114
7114
|
selector = this.selector;
|
|
@@ -7121,7 +7121,7 @@ $.extend( _Api.prototype, {
|
|
|
7121
7121
|
flatten = false;
|
|
7122
7122
|
}
|
|
7123
7123
|
|
|
7124
|
-
for ( i=0,
|
|
7124
|
+
for ( i=0, iLen=context.length ; i<iLen ; i++ ) {
|
|
7125
7125
|
var apiInst = new _Api( context[i] );
|
|
7126
7126
|
|
|
7127
7127
|
if ( type === 'table' ) {
|
|
@@ -7243,18 +7243,18 @@ $.extend( _Api.prototype, {
|
|
|
7243
7243
|
} );
|
|
7244
7244
|
|
|
7245
7245
|
|
|
7246
|
-
function _api_scope( scope, fn,
|
|
7246
|
+
function _api_scope( scope, fn, struct ) {
|
|
7247
7247
|
return function () {
|
|
7248
7248
|
var ret = fn.apply( scope || this, arguments );
|
|
7249
7249
|
|
|
7250
7250
|
// Method extension
|
|
7251
|
-
_Api.extend( ret, ret,
|
|
7251
|
+
_Api.extend( ret, ret, struct.methodExt );
|
|
7252
7252
|
return ret;
|
|
7253
7253
|
};
|
|
7254
7254
|
}
|
|
7255
7255
|
|
|
7256
7256
|
function _api_find( src, name ) {
|
|
7257
|
-
for ( var i=0,
|
|
7257
|
+
for ( var i=0, iLen=src.length ; i<iLen ; i++ ) {
|
|
7258
7258
|
if ( src[i].name === name ) {
|
|
7259
7259
|
return src[i];
|
|
7260
7260
|
}
|
|
@@ -7272,10 +7272,10 @@ _Api.extend = function ( scope, obj, ext )
|
|
|
7272
7272
|
}
|
|
7273
7273
|
|
|
7274
7274
|
var
|
|
7275
|
-
i,
|
|
7275
|
+
i, iLen,
|
|
7276
7276
|
struct;
|
|
7277
7277
|
|
|
7278
|
-
for ( i=0,
|
|
7278
|
+
for ( i=0, iLen=ext.length ; i<iLen ; i++ ) {
|
|
7279
7279
|
struct = ext[i];
|
|
7280
7280
|
|
|
7281
7281
|
if (struct.name === '__proto__') {
|
|
@@ -7330,12 +7330,12 @@ _Api.register = _api_register = function ( name, val )
|
|
|
7330
7330
|
}
|
|
7331
7331
|
|
|
7332
7332
|
var
|
|
7333
|
-
i,
|
|
7333
|
+
i, iLen,
|
|
7334
7334
|
heir = name.split('.'),
|
|
7335
7335
|
struct = __apiStruct,
|
|
7336
7336
|
key, method;
|
|
7337
7337
|
|
|
7338
|
-
for ( i=0,
|
|
7338
|
+
for ( i=0, iLen=heir.length ; i<iLen ; i++ ) {
|
|
7339
7339
|
method = heir[i].indexOf('()') !== -1;
|
|
7340
7340
|
key = method ?
|
|
7341
7341
|
heir[i].replace('()', '') :
|
|
@@ -7353,7 +7353,7 @@ _Api.register = _api_register = function ( name, val )
|
|
|
7353
7353
|
struct.push( src );
|
|
7354
7354
|
}
|
|
7355
7355
|
|
|
7356
|
-
if ( i ===
|
|
7356
|
+
if ( i === iLen-1 ) {
|
|
7357
7357
|
src.val = val;
|
|
7358
7358
|
src.type = typeof val === 'function' ?
|
|
7359
7359
|
'function' :
|
|
@@ -7695,7 +7695,7 @@ _api_register( 'page.info()', function () {
|
|
|
7695
7695
|
*/
|
|
7696
7696
|
_api_register( 'page.len()', function ( len ) {
|
|
7697
7697
|
// Note that we can't call this function 'length()' because `length`
|
|
7698
|
-
// is a
|
|
7698
|
+
// is a JavaScript property of functions which defines how many arguments
|
|
7699
7699
|
// the function expects.
|
|
7700
7700
|
if ( len === undefined ) {
|
|
7701
7701
|
return this.context.length !== 0 ?
|
|
@@ -7738,7 +7738,7 @@ var __reload = function ( settings, holdPosition, callback ) {
|
|
|
7738
7738
|
_fnClearTable( settings );
|
|
7739
7739
|
|
|
7740
7740
|
var data = _fnAjaxDataSrc( settings, json );
|
|
7741
|
-
for ( var i=0,
|
|
7741
|
+
for ( var i=0, iLen=data.length ; i<iLen ; i++ ) {
|
|
7742
7742
|
_fnAddData( settings, data[i] );
|
|
7743
7743
|
}
|
|
7744
7744
|
|
|
@@ -7861,7 +7861,7 @@ var _selector_run = function ( type, selector, selectFn, settings, opts )
|
|
|
7861
7861
|
{
|
|
7862
7862
|
var
|
|
7863
7863
|
out = [], res,
|
|
7864
|
-
i,
|
|
7864
|
+
i, iLen,
|
|
7865
7865
|
selectorType = typeof selector;
|
|
7866
7866
|
|
|
7867
7867
|
// Can't just check for isArray here, as an API or jQuery instance might be
|
|
@@ -7870,7 +7870,7 @@ var _selector_run = function ( type, selector, selectFn, settings, opts )
|
|
|
7870
7870
|
selector = [ selector ];
|
|
7871
7871
|
}
|
|
7872
7872
|
|
|
7873
|
-
for ( i=0,
|
|
7873
|
+
for ( i=0, iLen=selector.length ; i<iLen ; i++ ) {
|
|
7874
7874
|
res = selectFn( typeof selector[i] === 'string' ? selector[i].trim() : selector[i] );
|
|
7875
7875
|
|
|
7876
7876
|
// Remove empty items
|
|
@@ -7886,7 +7886,7 @@ var _selector_run = function ( type, selector, selectFn, settings, opts )
|
|
|
7886
7886
|
// selector extensions
|
|
7887
7887
|
var ext = _ext.selector[ type ];
|
|
7888
7888
|
if ( ext.length ) {
|
|
7889
|
-
for ( i=0,
|
|
7889
|
+
for ( i=0, iLen=ext.length ; i<iLen ; i++ ) {
|
|
7890
7890
|
out = ext[i]( settings, opts, out );
|
|
7891
7891
|
}
|
|
7892
7892
|
}
|
|
@@ -7941,7 +7941,7 @@ var _selector_first = function ( old )
|
|
|
7941
7941
|
var _selector_row_indexes = function ( settings, opts )
|
|
7942
7942
|
{
|
|
7943
7943
|
var
|
|
7944
|
-
i,
|
|
7944
|
+
i, iLen, tmp, a=[],
|
|
7945
7945
|
displayFiltered = settings.aiDisplay,
|
|
7946
7946
|
displayMaster = settings.aiDisplayMaster;
|
|
7947
7947
|
|
|
@@ -7964,7 +7964,7 @@ var _selector_row_indexes = function ( settings, opts )
|
|
|
7964
7964
|
// Current page implies that order=current and filter=applied, since it is
|
|
7965
7965
|
// fairly senseless otherwise, regardless of what order and search actually
|
|
7966
7966
|
// are
|
|
7967
|
-
for ( i=settings._iDisplayStart,
|
|
7967
|
+
for ( i=settings._iDisplayStart, iLen=settings.fnDisplayEnd() ; i<iLen ; i++ ) {
|
|
7968
7968
|
a.push( displayFiltered[i] );
|
|
7969
7969
|
}
|
|
7970
7970
|
}
|
|
@@ -7979,7 +7979,7 @@ var _selector_row_indexes = function ( settings, opts )
|
|
|
7979
7979
|
// O(n+m) solution by creating a hash map
|
|
7980
7980
|
var displayFilteredMap = {};
|
|
7981
7981
|
|
|
7982
|
-
for ( i=0,
|
|
7982
|
+
for ( i=0, iLen=displayFiltered.length ; i<iLen ; i++ ) {
|
|
7983
7983
|
displayFilteredMap[displayFiltered[i]] = null;
|
|
7984
7984
|
}
|
|
7985
7985
|
|
|
@@ -7991,7 +7991,7 @@ var _selector_row_indexes = function ( settings, opts )
|
|
|
7991
7991
|
}
|
|
7992
7992
|
}
|
|
7993
7993
|
else if ( order == 'index' || order == 'original' ) {
|
|
7994
|
-
for ( i=0,
|
|
7994
|
+
for ( i=0, iLen=settings.aoData.length ; i<iLen ; i++ ) {
|
|
7995
7995
|
if (! settings.aoData[i]) {
|
|
7996
7996
|
continue;
|
|
7997
7997
|
}
|
|
@@ -8208,7 +8208,7 @@ _api_registerPlural( 'rows().ids()', 'row().id()', function ( hash ) {
|
|
|
8208
8208
|
var context = this.context;
|
|
8209
8209
|
|
|
8210
8210
|
// `iterator` will drop undefined values, but in this case we want them
|
|
8211
|
-
for ( var i=0,
|
|
8211
|
+
for ( var i=0, iLen=context.length ; i<iLen ; i++ ) {
|
|
8212
8212
|
for ( var j=0, jen=this[i].length ; j<jen ; j++ ) {
|
|
8213
8213
|
var id = context[i].rowIdFn( context[i].aoData[ this[i][j] ]._aData );
|
|
8214
8214
|
a.push( (hash === true ? '#' : '' )+ id );
|
|
@@ -8252,10 +8252,10 @@ _api_registerPlural( 'rows().remove()', 'row().remove()', function () {
|
|
|
8252
8252
|
|
|
8253
8253
|
_api_register( 'rows.add()', function ( rows ) {
|
|
8254
8254
|
var newRows = this.iterator( 'table', function ( settings ) {
|
|
8255
|
-
var row, i,
|
|
8255
|
+
var row, i, iLen;
|
|
8256
8256
|
var out = [];
|
|
8257
8257
|
|
|
8258
|
-
for ( i=0,
|
|
8258
|
+
for ( i=0, iLen=rows.length ; i<iLen ; i++ ) {
|
|
8259
8259
|
row = rows[i];
|
|
8260
8260
|
|
|
8261
8261
|
if ( row.nodeName && row.nodeName.toUpperCase() === 'TR' ) {
|
|
@@ -8402,7 +8402,7 @@ var __details_add = function ( ctx, row, data, klass )
|
|
|
8402
8402
|
var addRow = function ( r, k ) {
|
|
8403
8403
|
// Recursion to allow for arrays of jQuery objects
|
|
8404
8404
|
if ( Array.isArray( r ) || r instanceof $ ) {
|
|
8405
|
-
for ( var i=0,
|
|
8405
|
+
for ( var i=0, iLen=r.length ; i<iLen ; i++ ) {
|
|
8406
8406
|
addRow( r[i], k );
|
|
8407
8407
|
}
|
|
8408
8408
|
return;
|
|
@@ -8422,7 +8422,7 @@ var __details_add = function ( ctx, row, data, klass )
|
|
|
8422
8422
|
|
|
8423
8423
|
$('td', created)
|
|
8424
8424
|
.addClass( k )
|
|
8425
|
-
.html( r )[0].colSpan =
|
|
8425
|
+
.html( r )[0].colSpan = _fnVisibleColumns( ctx );
|
|
8426
8426
|
|
|
8427
8427
|
rows.push( created[0] );
|
|
8428
8428
|
}
|
|
@@ -8460,7 +8460,7 @@ var __details_remove = function ( api, idx )
|
|
|
8460
8460
|
var row = ctx[0].aoData[ idx !== undefined ? idx : api[0] ];
|
|
8461
8461
|
|
|
8462
8462
|
if ( row && row._details ) {
|
|
8463
|
-
row._details.
|
|
8463
|
+
row._details.detach();
|
|
8464
8464
|
|
|
8465
8465
|
row._detailsShow = undefined;
|
|
8466
8466
|
row._details = undefined;
|
|
@@ -8534,9 +8534,9 @@ var __details_events = function ( settings )
|
|
|
8534
8534
|
|
|
8535
8535
|
// Update the colspan for the details rows (note, only if it already has
|
|
8536
8536
|
// a colspan)
|
|
8537
|
-
var row, visible =
|
|
8537
|
+
var row, visible = _fnVisibleColumns( ctx );
|
|
8538
8538
|
|
|
8539
|
-
for ( var i=0,
|
|
8539
|
+
for ( var i=0, iLen=data.length ; i<iLen ; i++ ) {
|
|
8540
8540
|
row = data[i];
|
|
8541
8541
|
|
|
8542
8542
|
if ( row && row._details ) {
|
|
@@ -8557,7 +8557,7 @@ var __details_events = function ( settings )
|
|
|
8557
8557
|
return;
|
|
8558
8558
|
}
|
|
8559
8559
|
|
|
8560
|
-
for ( var i=0,
|
|
8560
|
+
for ( var i=0, iLen=data.length ; i<iLen ; i++ ) {
|
|
8561
8561
|
if ( data[i] && data[i]._details ) {
|
|
8562
8562
|
__details_remove( api, i );
|
|
8563
8563
|
}
|
|
@@ -8661,7 +8661,7 @@ var __re_column_selector = /^([^:]+)?:(name|title|visIdx|visible)$/;
|
|
|
8661
8661
|
// iterator callback in columns().data()
|
|
8662
8662
|
var __columnData = function ( settings, column, r1, r2, rows, type ) {
|
|
8663
8663
|
var a = [];
|
|
8664
|
-
for ( var row=0,
|
|
8664
|
+
for ( var row=0, iLen=rows.length ; row<iLen ; row++ ) {
|
|
8665
8665
|
a.push( _fnGetCellData( settings, rows[row], column, type ) );
|
|
8666
8666
|
}
|
|
8667
8667
|
return a;
|
|
@@ -8861,7 +8861,7 @@ var __setColumnVis = function ( settings, column, vis ) {
|
|
|
8861
8861
|
cols = settings.aoColumns,
|
|
8862
8862
|
col = cols[ column ],
|
|
8863
8863
|
data = settings.aoData,
|
|
8864
|
-
cells, i,
|
|
8864
|
+
cells, i, iLen, tr;
|
|
8865
8865
|
|
|
8866
8866
|
// Get
|
|
8867
8867
|
if ( vis === undefined ) {
|
|
@@ -8879,7 +8879,7 @@ var __setColumnVis = function ( settings, column, vis ) {
|
|
|
8879
8879
|
// Need to decide if we should use appendChild or insertBefore
|
|
8880
8880
|
var insertBefore = _pluck(cols, 'bVisible').indexOf(true, column+1);
|
|
8881
8881
|
|
|
8882
|
-
for ( i=0,
|
|
8882
|
+
for ( i=0, iLen=data.length ; i<iLen ; i++ ) {
|
|
8883
8883
|
if (data[i]) {
|
|
8884
8884
|
tr = data[i].nTr;
|
|
8885
8885
|
cells = data[i].anCells;
|
|
@@ -9045,7 +9045,7 @@ _api_registerPlural( 'columns().visible()', 'column().visible()', function ( vis
|
|
|
9045
9045
|
// Update colspan for no records display. Child rows and extensions will use their own
|
|
9046
9046
|
// listeners to do this - only need to update the empty table item here
|
|
9047
9047
|
if ( ! settings.aiDisplay.length ) {
|
|
9048
|
-
$(settings.nTBody).find('td[colspan]').attr('colspan',
|
|
9048
|
+
$(settings.nTBody).find('td[colspan]').attr('colspan', _fnVisibleColumns(settings));
|
|
9049
9049
|
}
|
|
9050
9050
|
|
|
9051
9051
|
_fnSaveState( settings );
|
|
@@ -9131,7 +9131,7 @@ var __cell_selector = function ( settings, selector, opts )
|
|
|
9131
9131
|
var allCells = $(_flatten( [], cells ));
|
|
9132
9132
|
var row;
|
|
9133
9133
|
var columns = settings.aoColumns.length;
|
|
9134
|
-
var a, i,
|
|
9134
|
+
var a, i, iLen, j, o, host;
|
|
9135
9135
|
|
|
9136
9136
|
var run = function ( s ) {
|
|
9137
9137
|
var fnSelector = typeof s === 'function';
|
|
@@ -9140,7 +9140,7 @@ var __cell_selector = function ( settings, selector, opts )
|
|
|
9140
9140
|
// All cells and function selectors
|
|
9141
9141
|
a = [];
|
|
9142
9142
|
|
|
9143
|
-
for ( i=0,
|
|
9143
|
+
for ( i=0, iLen=rows.length ; i<iLen ; i++ ) {
|
|
9144
9144
|
row = rows[i];
|
|
9145
9145
|
|
|
9146
9146
|
for ( j=0 ; j<columns ; j++ ) {
|
|
@@ -9245,12 +9245,12 @@ _api_register( 'cells()', function ( rowSelector, columnSelector, opts ) {
|
|
|
9245
9245
|
// Row + column selector
|
|
9246
9246
|
var columns = this.columns( columnSelector, internalOpts );
|
|
9247
9247
|
var rows = this.rows( rowSelector, internalOpts );
|
|
9248
|
-
var i,
|
|
9248
|
+
var i, iLen, j, jen;
|
|
9249
9249
|
|
|
9250
9250
|
var cellsNoOpts = this.iterator( 'table', function ( settings, idx ) {
|
|
9251
9251
|
var a = [];
|
|
9252
9252
|
|
|
9253
|
-
for ( i=0,
|
|
9253
|
+
for ( i=0, iLen=rows[idx].length ; i<iLen ; i++ ) {
|
|
9254
9254
|
for ( j=0, jen=columns[idx].length ; j<jen ; j++ ) {
|
|
9255
9255
|
a.push( {
|
|
9256
9256
|
row: rows[idx][i],
|
|
@@ -9462,7 +9462,7 @@ _api_register( [
|
|
|
9462
9462
|
return this.iterator( 'column', function ( settings, idx ) {
|
|
9463
9463
|
var sort = _fnSortFlatten( settings );
|
|
9464
9464
|
|
|
9465
|
-
for ( var i=0,
|
|
9465
|
+
for ( var i=0, iLen=sort.length ; i<iLen ; i++ ) {
|
|
9466
9466
|
if ( sort[i].col === idx ) {
|
|
9467
9467
|
return sort[i].dir;
|
|
9468
9468
|
}
|
|
@@ -10153,9 +10153,11 @@ _api_register( 'i18n()', function ( token, def, plural ) {
|
|
|
10153
10153
|
}
|
|
10154
10154
|
|
|
10155
10155
|
if ( $.isPlainObject( resolved ) ) {
|
|
10156
|
-
resolved = plural !== undefined && resolved[ plural ] !== undefined
|
|
10157
|
-
resolved[ plural ]
|
|
10158
|
-
|
|
10156
|
+
resolved = plural !== undefined && resolved[ plural ] !== undefined
|
|
10157
|
+
? resolved[ plural ]
|
|
10158
|
+
: plural === false
|
|
10159
|
+
? resolved
|
|
10160
|
+
: resolved._;
|
|
10159
10161
|
}
|
|
10160
10162
|
|
|
10161
10163
|
return typeof resolved === 'string'
|
|
@@ -10184,7 +10186,7 @@ function cleanHeader(node, className) {
|
|
|
10184
10186
|
* @type string
|
|
10185
10187
|
* @default Version number
|
|
10186
10188
|
*/
|
|
10187
|
-
DataTable.version = "2.3.
|
|
10189
|
+
DataTable.version = "2.3.3";
|
|
10188
10190
|
|
|
10189
10191
|
/**
|
|
10190
10192
|
* Private data store, containing all of the settings objects that are
|
|
@@ -10217,7 +10219,7 @@ DataTable.models = {};
|
|
|
10217
10219
|
*/
|
|
10218
10220
|
DataTable.models.oSearch = {
|
|
10219
10221
|
/**
|
|
10220
|
-
* Flag to
|
|
10222
|
+
* Flag to whether or not the filtering should be case-insensitive
|
|
10221
10223
|
*/
|
|
10222
10224
|
"caseInsensitive": true,
|
|
10223
10225
|
|
|
@@ -10502,7 +10504,7 @@ DataTable.models.oColumn = {
|
|
|
10502
10504
|
* from v1.10 onwards the primary interface is camel case. In order to avoid
|
|
10503
10505
|
* breaking backwards compatibility utterly with this change, the Hungarian
|
|
10504
10506
|
* version is still, internally the primary interface, but is is not documented
|
|
10505
|
-
* - hence the @name tags in each doc comment. This allows a
|
|
10507
|
+
* - hence the @name tags in each doc comment. This allows a JavaScript function
|
|
10506
10508
|
* to create a map from Hungarian notation to camel case (going the other direction
|
|
10507
10509
|
* would require each property to be listed, which would add around 3K to the size
|
|
10508
10510
|
* of DataTables, while this method is about a 0.5K hit).
|
|
@@ -10521,7 +10523,7 @@ DataTable.defaults = {
|
|
|
10521
10523
|
/**
|
|
10522
10524
|
* An array of data to use for the table, passed in at initialisation which
|
|
10523
10525
|
* will be used in preference to any data which is already in the DOM. This is
|
|
10524
|
-
* particularly useful for constructing tables purely in
|
|
10526
|
+
* particularly useful for constructing tables purely in JavaScript, for
|
|
10525
10527
|
* example with a custom Ajax call.
|
|
10526
10528
|
*/
|
|
10527
10529
|
"aaData": null,
|
|
@@ -10588,7 +10590,7 @@ DataTable.defaults = {
|
|
|
10588
10590
|
* * `dataSrc` - By default DataTables will look for the property `data` (or
|
|
10589
10591
|
* `aaData` for compatibility with DataTables 1.9-) when obtaining data
|
|
10590
10592
|
* from an Ajax source or for server-side processing - this parameter
|
|
10591
|
-
* allows that property to be changed. You can use
|
|
10593
|
+
* allows that property to be changed. You can use JavaScript dotted
|
|
10592
10594
|
* object notation to get a data source for multiple levels of nesting, or
|
|
10593
10595
|
* it my be used as a function. As a function it takes a single parameter,
|
|
10594
10596
|
* the JSON returned from the server, which can be manipulated as
|
|
@@ -10712,13 +10714,13 @@ DataTable.defaults = {
|
|
|
10712
10714
|
"bFilter": true,
|
|
10713
10715
|
|
|
10714
10716
|
/**
|
|
10715
|
-
* Used only for
|
|
10717
|
+
* Used only for compatibility with DT1
|
|
10716
10718
|
* @deprecated
|
|
10717
10719
|
*/
|
|
10718
10720
|
"bInfo": true,
|
|
10719
10721
|
|
|
10720
10722
|
/**
|
|
10721
|
-
* Used only for
|
|
10723
|
+
* Used only for compatibility with DT1
|
|
10722
10724
|
* @deprecated
|
|
10723
10725
|
*/
|
|
10724
10726
|
"bLengthChange": true,
|
|
@@ -10809,7 +10811,7 @@ DataTable.defaults = {
|
|
|
10809
10811
|
* Enable or disable state saving. When enabled HTML5 `localStorage` will be
|
|
10810
10812
|
* used to save table display information such as pagination information,
|
|
10811
10813
|
* display length, filtering and sorting. As such when the end user reloads
|
|
10812
|
-
* the page the display
|
|
10814
|
+
* the page the display will match what thy had previously set up.
|
|
10813
10815
|
*/
|
|
10814
10816
|
"bStateSave": false,
|
|
10815
10817
|
|
|
@@ -11166,7 +11168,7 @@ DataTable.defaults = {
|
|
|
11166
11168
|
/**
|
|
11167
11169
|
* When using Ajax sourced data and during the first draw when DataTables is
|
|
11168
11170
|
* gathering the data, this message is shown in an empty row in the table to
|
|
11169
|
-
* indicate to the end user the
|
|
11171
|
+
* indicate to the end user the data is being loaded. Note that this
|
|
11170
11172
|
* parameter is not used when loading data by server-side processing, just
|
|
11171
11173
|
* Ajax sourced data with client-side processing.
|
|
11172
11174
|
*/
|
|
@@ -11427,8 +11429,8 @@ DataTable.defaults.column = {
|
|
|
11427
11429
|
* * `string` - read an object property from the data source. There are
|
|
11428
11430
|
* three 'special' options that can be used in the string to alter how
|
|
11429
11431
|
* DataTables reads the data from the source object:
|
|
11430
|
-
* * `.` - Dotted
|
|
11431
|
-
*
|
|
11432
|
+
* * `.` - Dotted JavaScript notation. Just as you use a `.` in
|
|
11433
|
+
* JavaScript to read from nested objects, so to can the options
|
|
11432
11434
|
* specified in `data`. For example: `browser.version` or
|
|
11433
11435
|
* `browser.name`. If your object parameter name contains a period, use
|
|
11434
11436
|
* `\\` to escape it - i.e. `first\\.name`.
|
|
@@ -11486,7 +11488,7 @@ DataTable.defaults.column = {
|
|
|
11486
11488
|
* This property is the rendering partner to `data` and it is suggested that
|
|
11487
11489
|
* when you want to manipulate data for display (including filtering,
|
|
11488
11490
|
* sorting etc) without altering the underlying data for the table, use this
|
|
11489
|
-
* property. `render` can be considered to be the
|
|
11491
|
+
* property. `render` can be considered to be the read only companion to
|
|
11490
11492
|
* `data` which is read / write (then as such more complex). Like `data`
|
|
11491
11493
|
* this option can be given in a number of different ways to effect its
|
|
11492
11494
|
* behaviour:
|
|
@@ -11496,8 +11498,8 @@ DataTable.defaults.column = {
|
|
|
11496
11498
|
* * `string` - read an object property from the data source. There are
|
|
11497
11499
|
* three 'special' options that can be used in the string to alter how
|
|
11498
11500
|
* DataTables reads the data from the source object:
|
|
11499
|
-
* * `.` - Dotted
|
|
11500
|
-
*
|
|
11501
|
+
* * `.` - Dotted JavaScript notation. Just as you use a `.` in
|
|
11502
|
+
* JavaScript to read from nested objects, so to can the options
|
|
11501
11503
|
* specified in `data`. For example: `browser.version` or
|
|
11502
11504
|
* `browser.name`. If your object parameter name contains a period, use
|
|
11503
11505
|
* `\\` to escape it - i.e. `first\\.name`.
|
|
@@ -11600,7 +11602,7 @@ DataTable.defaults.column = {
|
|
|
11600
11602
|
* The type allows you to specify how the data for this column will be
|
|
11601
11603
|
* ordered. Four types (string, numeric, date and html (which will strip
|
|
11602
11604
|
* HTML tags before ordering)) are currently available. Note that only date
|
|
11603
|
-
* formats understood by
|
|
11605
|
+
* formats understood by JavaScript's Date() object will be accepted as type
|
|
11604
11606
|
* date. For example: "Mar 26, 2008 5:03 PM". May take the values: 'string',
|
|
11605
11607
|
* 'numeric', 'date' or 'html' (by default). Further types can be adding
|
|
11606
11608
|
* through plug-ins.
|
|
@@ -11652,7 +11654,7 @@ DataTable.models.oSettings = {
|
|
|
11652
11654
|
/**
|
|
11653
11655
|
* Delay the creation of TR and TD elements until they are actually
|
|
11654
11656
|
* needed by a driven page draw. This can give a significant speed
|
|
11655
|
-
* increase for Ajax source and
|
|
11657
|
+
* increase for Ajax source and JavaScript source data, but makes no
|
|
11656
11658
|
* difference at all for DOM and server-side processing tables.
|
|
11657
11659
|
* Note that this parameter will be set by the initialisation routine. To
|
|
11658
11660
|
* set a default use {@link DataTable.defaults}.
|
|
@@ -11669,13 +11671,13 @@ DataTable.models.oSettings = {
|
|
|
11669
11671
|
"bFilter": null,
|
|
11670
11672
|
|
|
11671
11673
|
/**
|
|
11672
|
-
* Used only for
|
|
11674
|
+
* Used only for compatibility with DT1
|
|
11673
11675
|
* @deprecated
|
|
11674
11676
|
*/
|
|
11675
11677
|
"bInfo": true,
|
|
11676
11678
|
|
|
11677
11679
|
/**
|
|
11678
|
-
* Used only for
|
|
11680
|
+
* Used only for compatibility with DT1
|
|
11679
11681
|
* @deprecated
|
|
11680
11682
|
*/
|
|
11681
11683
|
"bLengthChange": true,
|
|
@@ -12546,7 +12548,7 @@ function __mlHelper (localeString) {
|
|
|
12546
12548
|
},
|
|
12547
12549
|
order: {
|
|
12548
12550
|
pre: function (d) {
|
|
12549
|
-
// The renderer gives us Moment, Luxon or Date
|
|
12551
|
+
// The renderer gives us Moment, Luxon or Date objects for the sorting, all of which have a
|
|
12550
12552
|
// `valueOf` which gives milliseconds epoch
|
|
12551
12553
|
return d.valueOf();
|
|
12552
12554
|
}
|
|
@@ -13112,7 +13114,7 @@ var __numericReplace = function ( d, decimalPlace, re1, re2 ) {
|
|
|
13112
13114
|
|
|
13113
13115
|
// If a decimal place other than `.` is used, it needs to be given to the
|
|
13114
13116
|
// function so we can detect it and replace with a `.` which is the only
|
|
13115
|
-
// decimal place
|
|
13117
|
+
// decimal place JavaScript recognises - it is not locale aware.
|
|
13116
13118
|
if ( decimalPlace ) {
|
|
13117
13119
|
d = _numToDecimal( d, decimalPlace );
|
|
13118
13120
|
}
|
|
@@ -13170,7 +13172,7 @@ $.extend( true, DataTable.ext.renderer, {
|
|
|
13170
13172
|
// on destroy, while the `dt` namespaced event is the one we are
|
|
13171
13173
|
// listening for
|
|
13172
13174
|
$(settings.nTable).on( 'order.dt.DT column-visibility.dt.DT', function ( e, ctx, column ) {
|
|
13173
|
-
if ( settings !== ctx ) { // need to check
|
|
13175
|
+
if ( settings !== ctx ) { // need to check if this is the host
|
|
13174
13176
|
return; // table, not a nested one
|
|
13175
13177
|
}
|
|
13176
13178
|
|