jquery-datatables-rails 2.2.1 → 2.2.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 546fa2f6a7a4ab5f7d4d82818d6e7973eaa06804
4
- data.tar.gz: 5848dec5f60bcffdb7a62541f245bbe2496e14b4
3
+ metadata.gz: d5f212953d1541c80c223fc8b30b3c034eea8474
4
+ data.tar.gz: c42274576cf87f64e3090feff9c08e10e5bd2496
5
5
  SHA512:
6
- metadata.gz: bd89f29659b087accea80609f6ebacc68b9ed3819468016ecac0ab080d7ecb591595e501b00c3bd087be098930363c9a30784dbe48ddcf6ccb4e6b9e588306d3
7
- data.tar.gz: 6129ab5f8dbc7448f27d36a3b4658f30c4042889524ed61c59fff87e9b0b3499b686a2d7392d65a2b1699e7369e60f7967bcafbb69dde0c4faf579feb504ea3f
6
+ metadata.gz: 7ef688e522397c430b04bbbf81a432e3a40c328bdb5fe6fe07f7afc174b16a96dd82366327864db458bdef4a571d9cebee92fcabca86bb689856449957ed2ca4
7
+ data.tar.gz: 6b1270bdfe70fd8a8b927205dcd868e504d5210f6204e7859737bdf2ce17de5a9a2e074dcf051b25af78a2376e4b02546649dd1d18f7e36123132e3b6399e7b9
@@ -1,11 +1,11 @@
1
- /*! AutoFill 1.2.0
1
+ /*! AutoFill 1.2.1
2
2
  * ©2008-2014 SpryMedia Ltd - datatables.net/license
3
3
  */
4
4
 
5
5
  /**
6
6
  * @summary AutoFill
7
7
  * @description Add Excel like click and drag auto-fill options to DataTables
8
- * @version 1.2.0
8
+ * @version 1.2.1
9
9
  * @file dataTables.autoFill.js
10
10
  * @author SpryMedia Ltd (www.sprymedia.co.uk)
11
11
  * @contact www.sprymedia.co.uk/contact
@@ -720,7 +720,7 @@ DataTable.AutoFill = AutoFill;
720
720
  * @type String
721
721
  * @default See code
722
722
  */
723
- AutoFill.version = "1.2.0";
723
+ AutoFill.version = "1.2.1";
724
724
 
725
725
 
726
726
  /**
@@ -839,7 +839,11 @@ return AutoFill;
839
839
 
840
840
  // Define as an AMD module if possible
841
841
  if ( typeof define === 'function' && define.amd ) {
842
- define( 'datatables-autofill', ['jquery', 'datatables'], factory );
842
+ define( ['jquery', 'datatables'], factory );
843
+ }
844
+ else if ( typeof exports === 'object' ) {
845
+ // Node/CommonJS
846
+ factory( require('jquery'), require('datatables') );
843
847
  }
844
848
  else if ( jQuery && !jQuery.fn.dataTable.AutoFill ) {
845
849
  // Otherwise simply initialise as normal, stopping multiple evaluation
@@ -1,11 +1,11 @@
1
- /*! ColReorder 1.1.1
1
+ /*! ColReorder 1.1.2
2
2
  * ©2010-2014 SpryMedia Ltd - datatables.net/license
3
3
  */
4
4
 
5
5
  /**
6
6
  * @summary ColReorder
7
7
  * @description Provide the ability to reorder columns in a DataTable
8
- * @version 1.1.1
8
+ * @version 1.1.2
9
9
  * @file dataTables.colReorder.js
10
10
  * @author SpryMedia Ltd (www.sprymedia.co.uk)
11
11
  * @contact www.sprymedia.co.uk/contact
@@ -111,6 +111,20 @@ $.fn.dataTableExt.oApi.fnColReorder = function ( oSettings, iFrom, iTo )
111
111
  {
112
112
  var v110 = $.fn.dataTable.Api ? true : false;
113
113
  var i, iLen, j, jLen, iCols=oSettings.aoColumns.length, nTrs, oCol;
114
+ var attrMap = function ( obj, prop, mapping ) {
115
+ if ( ! obj[ prop ] ) {
116
+ return;
117
+ }
118
+
119
+ var a = obj[ prop ].split('.');
120
+ var num = a.shift();
121
+
122
+ if ( isNaN( num*1 ) ) {
123
+ return;
124
+ }
125
+
126
+ obj[ prop ] = mapping[ num*1 ]+'.'+a.join('.');
127
+ };
114
128
 
115
129
  /* Sanity check in the input */
116
130
  if ( iFrom == iTo )
@@ -187,9 +201,20 @@ $.fn.dataTableExt.oApi.fnColReorder = function ( oSettings, iFrom, iTo )
187
201
  for ( i=0, iLen=iCols ; i<iLen ; i++ )
188
202
  {
189
203
  oCol = oSettings.aoColumns[i];
204
+
190
205
  if ( typeof oCol.mData == 'number' ) {
191
206
  oCol.mData = aiInvertMapping[ oCol.mData ];
192
207
 
208
+ // regenerate the get / set functions
209
+ oSettings.oApi._fnColumnOptions( oSettings, i, {} );
210
+ }
211
+ else if ( $.isPlainObject( oCol.mData ) ) {
212
+ // HTML5 data sourced
213
+ attrMap( oCol.mData, '_', aiInvertMapping );
214
+ attrMap( oCol.mData, 'filter', aiInvertMapping );
215
+ attrMap( oCol.mData, 'sort', aiInvertMapping );
216
+ attrMap( oCol.mData, 'type', aiInvertMapping );
217
+
193
218
  // regenerate the get / set functions
194
219
  oSettings.oApi._fnColumnOptions( oSettings, i, {} );
195
220
  }
@@ -366,8 +391,10 @@ var ColReorder = function( dt, opts )
366
391
  }
367
392
 
368
393
  // Convert from camelCase to Hungarian, just as DataTables does
369
- if ( $.fn.dataTable.camelToHungarian ) {
370
- $.fn.dataTable.camelToHungarian( ColReorder.defaults, opts || {} );
394
+ var camelToHungarian = $.fn.dataTable.camelToHungarian;
395
+ if ( camelToHungarian ) {
396
+ camelToHungarian( ColReorder.defaults, ColReorder.defaults, true );
397
+ camelToHungarian( ColReorder.defaults, opts || {} );
371
398
  }
372
399
 
373
400
 
@@ -732,28 +759,51 @@ ColReorder.prototype = {
732
759
  {
733
760
  var i, iLen, aCopy, iOrigColumn;
734
761
  var oSettings = this.s.dt;
762
+ var columns = oSettings.aoColumns;
763
+
764
+ oState.ColReorder = [];
735
765
 
736
766
  /* Sorting */
737
- for ( i=0 ; i<oState.aaSorting.length ; i++ )
738
- {
739
- oState.aaSorting[i][0] = oSettings.aoColumns[ oState.aaSorting[i][0] ]._ColReorder_iOrigCol;
740
- }
767
+ if ( oState.aaSorting ) {
768
+ // 1.10.0-
769
+ for ( i=0 ; i<oState.aaSorting.length ; i++ ) {
770
+ oState.aaSorting[i][0] = columns[ oState.aaSorting[i][0] ]._ColReorder_iOrigCol;
771
+ }
741
772
 
742
- var aSearchCopy = $.extend( true, [], oState.aoSearchCols );
743
- oState.ColReorder = [];
773
+ var aSearchCopy = $.extend( true, [], oState.aoSearchCols );
744
774
 
745
- for ( i=0, iLen=oSettings.aoColumns.length ; i<iLen ; i++ )
746
- {
747
- iOrigColumn = oSettings.aoColumns[i]._ColReorder_iOrigCol;
775
+ for ( i=0, iLen=columns.length ; i<iLen ; i++ )
776
+ {
777
+ iOrigColumn = columns[i]._ColReorder_iOrigCol;
748
778
 
749
- /* Column filter */
750
- oState.aoSearchCols[ iOrigColumn ] = aSearchCopy[i];
779
+ /* Column filter */
780
+ oState.aoSearchCols[ iOrigColumn ] = aSearchCopy[i];
751
781
 
752
- /* Visibility */
753
- oState.abVisCols[ iOrigColumn ] = oSettings.aoColumns[i].bVisible;
782
+ /* Visibility */
783
+ oState.abVisCols[ iOrigColumn ] = columns[i].bVisible;
754
784
 
755
- /* Column reordering */
756
- oState.ColReorder.push( iOrigColumn );
785
+ /* Column reordering */
786
+ oState.ColReorder.push( iOrigColumn );
787
+ }
788
+ }
789
+ else if ( oState.order ) {
790
+ // 1.10.1+
791
+ for ( i=0 ; i<oState.order.length ; i++ ) {
792
+ oState.order[i][0] = columns[ oState.order[i][0] ]._ColReorder_iOrigCol;
793
+ }
794
+
795
+ var stateColumnsCopy = $.extend( true, [], oState.columns );
796
+
797
+ for ( i=0, iLen=columns.length ; i<iLen ; i++ )
798
+ {
799
+ iOrigColumn = columns[i]._ColReorder_iOrigCol;
800
+
801
+ /* Columns */
802
+ oState.columns[ iOrigColumn ] = stateColumnsCopy[i];
803
+
804
+ /* Column reordering */
805
+ oState.ColReorder.push( iOrigColumn );
806
+ }
757
807
  }
758
808
  },
759
809
 
@@ -1236,7 +1286,7 @@ ColReorder.defaults = {
1236
1286
  * @type String
1237
1287
  * @default As code
1238
1288
  */
1239
- ColReorder.version = "1.1.1";
1289
+ ColReorder.version = "1.1.2";
1240
1290
 
1241
1291
 
1242
1292
 
@@ -1306,7 +1356,11 @@ return ColReorder;
1306
1356
 
1307
1357
  // Define as an AMD module if possible
1308
1358
  if ( typeof define === 'function' && define.amd ) {
1309
- define( 'datatables-colreorder', ['jquery', 'datatables'], factory );
1359
+ define( ['jquery', 'datatables'], factory );
1360
+ }
1361
+ else if ( typeof exports === 'object' ) {
1362
+ // Node/CommonJS
1363
+ factory( require('jquery'), require('datatables') );
1310
1364
  }
1311
1365
  else if ( jQuery && !jQuery.fn.dataTable.ColReorder ) {
1312
1366
  // Otherwise simply initialise as normal, stopping multiple evaluation
@@ -1,11 +1,11 @@
1
- /*! ColVis 1.1.0
1
+ /*! ColVis 1.1.1
2
2
  * ©2010-2014 SpryMedia Ltd - datatables.net/license
3
3
  */
4
4
 
5
5
  /**
6
6
  * @summary ColVis
7
7
  * @description Controls for column visibility in DataTables
8
- * @version 1.1.0
8
+ * @version 1.1.1
9
9
  * @file dataTables.colReorder.js
10
10
  * @author SpryMedia Ltd (www.sprymedia.co.uk)
11
11
  * @contact www.sprymedia.co.uk/contact
@@ -463,11 +463,18 @@ ColVis.prototype = {
463
463
 
464
464
  if ( this.s.showAll )
465
465
  {
466
- nButton = this._fnDomShowAllButton();
466
+ nButton = this._fnDomShowXButton( this.s.showAll, true );
467
467
  nButton.className += " ColVis_ShowAll";
468
468
  this.dom.buttons.push( nButton );
469
469
  }
470
470
 
471
+ if ( this.s.showNone )
472
+ {
473
+ nButton = this._fnDomShowXButton( this.s.showNone, false );
474
+ nButton.className += " ColVis_ShowNone";
475
+ this.dom.buttons.push( nButton );
476
+ }
477
+
471
478
  $(this.dom.collection).append( this.dom.buttons );
472
479
  },
473
480
 
@@ -502,12 +509,12 @@ ColVis.prototype = {
502
509
 
503
510
 
504
511
  /**
505
- * Create a button which allows a "show all" action
506
- * @method _fnDomShowAllButton
512
+ * Create a button which allows show all and show node actions
513
+ * @method _fnDomShowXButton
507
514
  * @returns {Node} Created button
508
515
  * @private
509
516
  */
510
- "_fnDomShowAllButton": function ()
517
+ "_fnDomShowXButton": function ( str, action )
511
518
  {
512
519
  var
513
520
  that = this,
@@ -515,7 +522,7 @@ ColVis.prototype = {
515
522
 
516
523
  return $(
517
524
  '<li class="ColVis_Special '+(dt.bJUI ? 'ui-button ui-state-default' : '')+'">'+
518
- this.s.showAll+
525
+ str+
519
526
  '</li>'
520
527
  )
521
528
  .click( function (e) {
@@ -523,7 +530,7 @@ ColVis.prototype = {
523
530
  {
524
531
  if (that.s.aiExclude.indexOf(i) === -1)
525
532
  {
526
- that.s.dt.oInstance.fnSetColumnVis( i, true, false );
533
+ that.s.dt.oInstance.fnSetColumnVis( i, action, false );
527
534
  }
528
535
  }
529
536
  that._fnAdjustOpenRows();
@@ -627,7 +634,7 @@ ColVis.prototype = {
627
634
 
628
635
  $.fn.dataTableExt.iApiIndex = oldIndex; /* Restore */
629
636
 
630
- if ( that.s.fnStateChange !== null )
637
+ if ( e.target.nodeName.toLowerCase() === 'input' && that.s.fnStateChange !== null )
631
638
  {
632
639
  that.s.fnStateChange.call( that, i, showHide );
633
640
  }
@@ -1039,7 +1046,7 @@ ColVis.prototype.CLASS = "ColVis";
1039
1046
  * @type String
1040
1047
  * @default See code
1041
1048
  */
1042
- ColVis.VERSION = "1.1.0";
1049
+ ColVis.VERSION = "1.1.1";
1043
1050
  ColVis.prototype.VERSION = ColVis.VERSION;
1044
1051
 
1045
1052
 
@@ -1084,7 +1091,11 @@ return ColVis;
1084
1091
 
1085
1092
  // Define as an AMD module if possible
1086
1093
  if ( typeof define === 'function' && define.amd ) {
1087
- define( 'datatables-colvis', ['jquery', 'datatables'], factory );
1094
+ define( ['jquery', 'datatables'], factory );
1095
+ }
1096
+ else if ( typeof exports === 'object' ) {
1097
+ // Node/CommonJS
1098
+ factory( require('jquery'), require('datatables') );
1088
1099
  }
1089
1100
  else if ( jQuery && !jQuery.fn.dataTable.ColVis ) {
1090
1101
  // Otherwise simply initialise as normal, stopping multiple evaluation
@@ -1,11 +1,11 @@
1
- /*! FixedColumns 3.0.1
1
+ /*! FixedColumns 3.0.2
2
2
  * ©2010-2014 SpryMedia Ltd - datatables.net/license
3
3
  */
4
4
 
5
5
  /**
6
6
  * @summary FixedColumns
7
7
  * @description Freeze columns in place on a scrolling DataTable
8
- * @version 3.0.1
8
+ * @version 3.0.2
9
9
  * @file dataTables.fixedColumns.js
10
10
  * @author SpryMedia Ltd (www.sprymedia.co.uk)
11
11
  * @contact www.sprymedia.co.uk/contact
@@ -483,6 +483,10 @@ FixedColumns.prototype = /** @lends FixedColumns.prototype */{
483
483
  }
484
484
  } );
485
485
 
486
+ var wheelType = 'onwheel' in document.createElement('div') ?
487
+ 'wheel.DTFC' :
488
+ 'mousewheel.DTFC';
489
+
486
490
  if ( that.s.iLeftColumns > 0 ) {
487
491
  // When scrolling the left column, scroll the body and right column
488
492
  $(that.dom.grid.left.liner)
@@ -497,9 +501,11 @@ FixedColumns.prototype = /** @lends FixedColumns.prototype */{
497
501
  }
498
502
  }
499
503
  } )
500
- .on( "wheel.DTFC", function(e) {
504
+ .on( wheelType, function(e) { // xxx update the destroy as well
501
505
  // Pass horizontal scrolling through
502
- var xDelta = -e.originalEvent.deltaX;
506
+ var xDelta = e.type === 'wheel' ?
507
+ -e.originalEvent.deltaX :
508
+ e.originalEvent.wheelDeltaX;
503
509
  that.dom.scroller.scrollLeft -= xDelta;
504
510
  } );
505
511
  }
@@ -518,9 +524,11 @@ FixedColumns.prototype = /** @lends FixedColumns.prototype */{
518
524
  }
519
525
  }
520
526
  } )
521
- .on( "wheel.DTFC", function(e) {
527
+ .on( wheelType, function(e) {
522
528
  // Pass horizontal scrolling through
523
- var xDelta = -e.originalEvent.deltaX;
529
+ var xDelta = e.type === 'wheel' ?
530
+ -e.originalEvent.deltaX :
531
+ e.originalEvent.wheelDeltaX;
524
532
  that.dom.scroller.scrollLeft -= xDelta;
525
533
  } );
526
534
  }
@@ -552,10 +560,10 @@ FixedColumns.prototype = /** @lends FixedColumns.prototype */{
552
560
  $(that.dom.scroller).off( 'scroll.DTFC mouseover.DTFC' );
553
561
  $(window).off( 'resize.DTFC' );
554
562
 
555
- $(that.dom.grid.left.liner).off( 'scroll.DTFC wheel.DTFC mouseover.DTFC' );
563
+ $(that.dom.grid.left.liner).off( 'scroll.DTFC mouseover.DTFC '+wheelType );
556
564
  $(that.dom.grid.left.wrapper).remove();
557
565
 
558
- $(that.dom.grid.right.liner).off( 'scroll.DTFC wheel.DTFC mouseover.DTFC' );
566
+ $(that.dom.grid.right.liner).off( 'scroll.DTFC mouseover.DTFC '+wheelType );
559
567
  $(that.dom.grid.right.wrapper).remove();
560
568
  } );
561
569
 
@@ -583,6 +591,7 @@ FixedColumns.prototype = /** @lends FixedColumns.prototype */{
583
591
 
584
592
  $.each( this.s.dt.aoColumns, function (i, col) {
585
593
  var th = $(col.nTh);
594
+ var border;
586
595
 
587
596
  if ( ! th.filter(':visible').length ) {
588
597
  that.s.aiInnerWidths.push( 0 );
@@ -598,7 +607,13 @@ FixedColumns.prototype = /** @lends FixedColumns.prototype */{
598
607
  // table's border to the outerWidth, since we need to take
599
608
  // account of it, but it isn't in any cell
600
609
  if ( that.s.aiOuterWidths.length === 0 ) {
601
- var border = $(that.s.dt.nTable).css('border-left-width');
610
+ border = $(that.s.dt.nTable).css('border-left-width');
611
+ iWidth += typeof border === 'string' ? 1 : parseInt( border, 10 );
612
+ }
613
+
614
+ // Likewise with the final column on the right
615
+ if ( that.s.aiOuterWidths.length === that.s.dt.aoColumns.length-1 ) {
616
+ border = $(that.s.dt.nTable).css('border-right-width');
602
617
  iWidth += typeof border === 'string' ? 1 : parseInt( border, 10 );
603
618
  }
604
619
 
@@ -724,8 +739,8 @@ FixedColumns.prototype = /** @lends FixedColumns.prototype */{
724
739
  {
725
740
  var oGrid = this.dom.grid;
726
741
  var iWidth = $(oGrid.wrapper).width();
727
- var iBodyHeight = $(this.s.dt.nTable.parentNode).height();
728
- var iFullHeight = $(this.s.dt.nTable.parentNode.parentNode).height();
742
+ var iBodyHeight = $(this.s.dt.nTable.parentNode).outerHeight();
743
+ var iFullHeight = $(this.s.dt.nTable.parentNode.parentNode).outerHeight();
729
744
  var oOverflow = this._fnDTOverflow();
730
745
  var
731
746
  iLeftWidth = this.s.iLeftWidth,
@@ -1337,7 +1352,7 @@ FixedColumns.defaults = /** @lends FixedColumns.defaults */{
1337
1352
  * @default See code
1338
1353
  * @static
1339
1354
  */
1340
- FixedColumns.version = "3.0.1";
1355
+ FixedColumns.version = "3.0.2";
1341
1356
 
1342
1357
 
1343
1358
 
@@ -1368,7 +1383,11 @@ return FixedColumns;
1368
1383
 
1369
1384
  // Define as an AMD module if possible
1370
1385
  if ( typeof define === 'function' && define.amd ) {
1371
- define( 'datatables-fixedcolumns', ['jquery', 'datatables'], factory );
1386
+ define( ['jquery', 'datatables'], factory );
1387
+ }
1388
+ else if ( typeof exports === 'object' ) {
1389
+ // Node/CommonJS
1390
+ factory( require('jquery'), require('datatables') );
1372
1391
  }
1373
1392
  else if ( jQuery && !jQuery.fn.dataTable.FixedColumns ) {
1374
1393
  // Otherwise simply initialise as normal, stopping multiple evaluation
@@ -1,4 +1,4 @@
1
- /*! FixedHeader 2.1.1
1
+ /*! FixedHeader 2.1.2
2
2
  * ©2010-2014 SpryMedia Ltd - datatables.net/license
3
3
  */
4
4
 
@@ -6,7 +6,7 @@
6
6
  * @summary FixedHeader
7
7
  * @description Fix a table's header or footer, so it is always visible while
8
8
  * Scrolling
9
- * @version 2.1.1
9
+ * @version 2.1.2
10
10
  * @file dataTables.fixedHeader.js
11
11
  * @author SpryMedia Ltd (www.sprymedia.co.uk)
12
12
  * @contact www.sprymedia.co.uk/contact
@@ -982,7 +982,7 @@ FixedHeader.fnMeasure = function ()
982
982
  };
983
983
 
984
984
 
985
- FixedHeader.version = "2.1.1";
985
+ FixedHeader.version = "2.1.2";
986
986
 
987
987
 
988
988
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -1012,7 +1012,11 @@ return FixedHeader;
1012
1012
 
1013
1013
  // Define as an AMD module if possible
1014
1014
  if ( typeof define === 'function' && define.amd ) {
1015
- define( 'datatables-fixedheader', ['jquery', 'datatables'], factory );
1015
+ define( ['jquery', 'datatables'], factory );
1016
+ }
1017
+ else if ( typeof exports === 'object' ) {
1018
+ // Node/CommonJS
1019
+ factory( require('jquery'), require('datatables') );
1016
1020
  }
1017
1021
  else if ( jQuery && !jQuery.fn.dataTable.FixedHeader ) {
1018
1022
  // Otherwise simply initialise as normal, stopping multiple evaluation