jquery-tablesorter 1.23.10 → 1.23.11

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: 3932a063e05a5d7e25e5911e2f083adfe5d42ae9
4
- data.tar.gz: 2b7a51790860330826b96d8768853442f810980e
3
+ metadata.gz: 96d0755bdc61ab6d509abc016331ca4b75390cc6
4
+ data.tar.gz: 1bbe67384b5a4cfc66aaf48c02b95110152537a2
5
5
  SHA512:
6
- metadata.gz: 252269fcce1138445f892f973fd550d57ac86eb20cef4f295c49f5111e8b8191d9d034efd8d34dc883c81f74a07ac72df2c402dd3e0325e55f09784339940c60
7
- data.tar.gz: d5a435c879773961da5d1dac8aff8cfe620d653f4937a753f26ee5a156c3da85c88b8012b9058e3d9c7208131a114694f4efe27ed8436b96df31fbfb1c50f2ed
6
+ metadata.gz: 1a4748a2d053bc0cebdcd0b8cd4658f996d4bb20f0e79b6e313595544ceabddc63816c9c7607146f06536f6dc07bdc20594b834399f0a4c7a873bc80fec8ef00
7
+ data.tar.gz: 372b04ac0a59a028d382e1520a3da4fe4f0247be750c1e5eb03975e7275923091ea42b8ae29e4d05451bb378029e0cffe877a4bd0017a70d983314a207d5bb87
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.28.10 (5/16/2017), [documentation]
7
+ Current tablesorter version: 2.28.11 (5/24/2017), [documentation]
8
8
 
9
9
  Any issue associated with the js/css files, please report to [Mottie's fork].
10
10
 
@@ -1,7 +1,7 @@
1
1
  module JqueryTablesorter
2
2
  MAJOR = 1
3
3
  MINOR = 23
4
- TINY = 10
4
+ TINY = 11
5
5
 
6
6
  VERSION = [MAJOR, MINOR, TINY].compact.join('.')
7
7
  end
@@ -4,7 +4,7 @@
4
4
  ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██▀▀ ▀▀▀██
5
5
  █████▀ ▀████▀ ██ ██ ▀████▀ ██ ██ ██ ██ ▀████▀ █████▀ ██ ██ █████▀
6
6
  */
7
- /*! tablesorter (FORK) - updated 05-16-2017 (v2.28.10)*/
7
+ /*! tablesorter (FORK) - updated 05-24-2017 (v2.28.11)*/
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.28.10 *//*
19
+ /*! TableSorter (FORK) v2.28.11 *//*
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.28.10',
43
+ version : '2.28.11',
44
44
 
45
45
  parsers : [],
46
46
  widgets : [],
@@ -3149,14 +3149,14 @@
3149
3149
 
3150
3150
  })(jQuery);
3151
3151
 
3152
- /*! Widget: columns */
3152
+ /*! Widget: columns - updated 5/24/2017 (v2.28.11) */
3153
3153
  ;(function ($) {
3154
3154
  'use strict';
3155
3155
  var ts = $.tablesorter || {};
3156
3156
 
3157
3157
  ts.addWidget({
3158
3158
  id: 'columns',
3159
- priority: 30,
3159
+ priority: 65,
3160
3160
  options : {
3161
3161
  columns : [ 'primary', 'secondary', 'tertiary' ]
3162
3162
  },
@@ -3228,7 +3228,7 @@
3228
3228
 
3229
3229
  })(jQuery);
3230
3230
 
3231
- /*! Widget: filter - updated 4/18/2017 (v2.28.8) *//*
3231
+ /*! Widget: filter - updated 5/24/2017 (v2.28.11) *//*
3232
3232
  * Requires tablesorter v2.8+ and jQuery 1.7+
3233
3233
  * by Rob Garrison
3234
3234
  */
@@ -4046,9 +4046,6 @@
4046
4046
  if ( event.which === tskeyCodes.escape ) {
4047
4047
  // make sure to restore the last value on escape
4048
4048
  this.value = wo.filter_resetOnEsc ? '' : c.lastSearch[column];
4049
- // live search
4050
- } else if ( liveSearch === false ) {
4051
- return;
4052
4049
  // don't return if the search value is empty ( all rows need to be revealed )
4053
4050
  } else if ( this.value !== '' && (
4054
4051
  // liveSearch can contain a min value length; ignore arrow and meta keys, but allow backspace
@@ -4057,26 +4054,32 @@
4057
4054
  ( event.which !== tskeyCodes.enter && event.which !== tskeyCodes.backSpace &&
4058
4055
  ( event.which < tskeyCodes.space || ( event.which >= tskeyCodes.left && event.which <= tskeyCodes.down ) ) ) ) ) {
4059
4056
  return;
4057
+ // live search
4058
+ } else if ( liveSearch === false ) {
4059
+ if ( this.value !== '' && event.which !== tskeyCodes.enter ) {
4060
+ return;
4061
+ }
4060
4062
  }
4061
4063
  // change event = no delay; last true flag tells getFilters to skip newest timed input
4062
4064
  tsf.searching( table, true, true, column );
4063
4065
  })
4064
4066
  // include change for select - fixes #473
4065
- .bind( 'search change keypress input '.split( ' ' ).join( namespace + ' ' ), function( event ) {
4067
+ .bind( 'search change keypress input blur '.split( ' ' ).join( namespace + ' ' ), function( event ) {
4066
4068
  // don't get cached data, in case data-column changes dynamically
4067
4069
  var column = parseInt( $( this ).attr( 'data-column' ), 10 ),
4070
+ eventType = event.type,
4068
4071
  liveSearch = typeof wo.filter_liveSearch === 'boolean' ?
4069
4072
  wo.filter_liveSearch :
4070
4073
  ts.getColumnData( table, wo.filter_liveSearch, column );
4071
4074
  if ( table.config.widgetOptions.filter_initialized &&
4072
4075
  // immediate search if user presses enter
4073
4076
  ( event.which === tskeyCodes.enter ||
4074
- // immediate search if a "search" is triggered on the input
4075
- event.type === 'search' ||
4077
+ // immediate search if a "search" or "blur" is triggered on the input
4078
+ ( eventType === 'search' || eventType === 'blur' ) ||
4076
4079
  // change & input events must be ignored if liveSearch !== true
4077
- ( event.type === 'change' || event.type === 'input' ) &&
4080
+ ( eventType === 'change' || eventType === 'input' ) &&
4078
4081
  // prevent search if liveSearch is a number
4079
- liveSearch === true &&
4082
+ ( liveSearch === true || liveSearch !== true && event.target.nodeName !== "INPUT" ) &&
4080
4083
  // don't allow 'change' or 'input' event to process if the input value
4081
4084
  // is the same - fixes #685
4082
4085
  this.value !== c.lastSearch[column]
@@ -4085,7 +4088,7 @@
4085
4088
  event.preventDefault();
4086
4089
  // init search with no delay
4087
4090
  $( this ).attr( 'data-lastSearchTime', new Date().getTime() );
4088
- tsf.searching( table, event.type !== 'keypress', true, column );
4091
+ tsf.searching( table, eventType !== 'keypress', true, column );
4089
4092
  }
4090
4093
  });
4091
4094
  },
@@ -1,4 +1,4 @@
1
- /*! TableSorter (FORK) v2.28.10 *//*
1
+ /*! TableSorter (FORK) v2.28.11 *//*
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.28.10',
25
+ version : '2.28.11',
26
26
 
27
27
  parsers : [],
28
28
  widgets : [],
@@ -4,7 +4,7 @@
4
4
  ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██▀▀ ▀▀▀██
5
5
  █████▀ ▀████▀ ██ ██ ▀████▀ ██ ██ ██ ██ ▀████▀ █████▀ ██ ██ █████▀
6
6
  */
7
- /*! tablesorter (FORK) - updated 05-16-2017 (v2.28.10)*/
7
+ /*! tablesorter (FORK) - updated 05-24-2017 (v2.28.11)*/
8
8
  /* Includes widgets ( storage,uitheme,columns,filter,stickyHeaders,resizable,saveSort ) */
9
9
  (function(factory) {
10
10
  if (typeof define === 'function' && define.amd) {
@@ -329,14 +329,14 @@
329
329
 
330
330
  })(jQuery);
331
331
 
332
- /*! Widget: columns */
332
+ /*! Widget: columns - updated 5/24/2017 (v2.28.11) */
333
333
  ;(function ($) {
334
334
  'use strict';
335
335
  var ts = $.tablesorter || {};
336
336
 
337
337
  ts.addWidget({
338
338
  id: 'columns',
339
- priority: 30,
339
+ priority: 65,
340
340
  options : {
341
341
  columns : [ 'primary', 'secondary', 'tertiary' ]
342
342
  },
@@ -408,7 +408,7 @@
408
408
 
409
409
  })(jQuery);
410
410
 
411
- /*! Widget: filter - updated 4/18/2017 (v2.28.8) *//*
411
+ /*! Widget: filter - updated 5/24/2017 (v2.28.11) *//*
412
412
  * Requires tablesorter v2.8+ and jQuery 1.7+
413
413
  * by Rob Garrison
414
414
  */
@@ -1226,9 +1226,6 @@
1226
1226
  if ( event.which === tskeyCodes.escape ) {
1227
1227
  // make sure to restore the last value on escape
1228
1228
  this.value = wo.filter_resetOnEsc ? '' : c.lastSearch[column];
1229
- // live search
1230
- } else if ( liveSearch === false ) {
1231
- return;
1232
1229
  // don't return if the search value is empty ( all rows need to be revealed )
1233
1230
  } else if ( this.value !== '' && (
1234
1231
  // liveSearch can contain a min value length; ignore arrow and meta keys, but allow backspace
@@ -1237,26 +1234,32 @@
1237
1234
  ( event.which !== tskeyCodes.enter && event.which !== tskeyCodes.backSpace &&
1238
1235
  ( event.which < tskeyCodes.space || ( event.which >= tskeyCodes.left && event.which <= tskeyCodes.down ) ) ) ) ) {
1239
1236
  return;
1237
+ // live search
1238
+ } else if ( liveSearch === false ) {
1239
+ if ( this.value !== '' && event.which !== tskeyCodes.enter ) {
1240
+ return;
1241
+ }
1240
1242
  }
1241
1243
  // change event = no delay; last true flag tells getFilters to skip newest timed input
1242
1244
  tsf.searching( table, true, true, column );
1243
1245
  })
1244
1246
  // include change for select - fixes #473
1245
- .bind( 'search change keypress input '.split( ' ' ).join( namespace + ' ' ), function( event ) {
1247
+ .bind( 'search change keypress input blur '.split( ' ' ).join( namespace + ' ' ), function( event ) {
1246
1248
  // don't get cached data, in case data-column changes dynamically
1247
1249
  var column = parseInt( $( this ).attr( 'data-column' ), 10 ),
1250
+ eventType = event.type,
1248
1251
  liveSearch = typeof wo.filter_liveSearch === 'boolean' ?
1249
1252
  wo.filter_liveSearch :
1250
1253
  ts.getColumnData( table, wo.filter_liveSearch, column );
1251
1254
  if ( table.config.widgetOptions.filter_initialized &&
1252
1255
  // immediate search if user presses enter
1253
1256
  ( event.which === tskeyCodes.enter ||
1254
- // immediate search if a "search" is triggered on the input
1255
- event.type === 'search' ||
1257
+ // immediate search if a "search" or "blur" is triggered on the input
1258
+ ( eventType === 'search' || eventType === 'blur' ) ||
1256
1259
  // change & input events must be ignored if liveSearch !== true
1257
- ( event.type === 'change' || event.type === 'input' ) &&
1260
+ ( eventType === 'change' || eventType === 'input' ) &&
1258
1261
  // prevent search if liveSearch is a number
1259
- liveSearch === true &&
1262
+ ( liveSearch === true || liveSearch !== true && event.target.nodeName !== "INPUT" ) &&
1260
1263
  // don't allow 'change' or 'input' event to process if the input value
1261
1264
  // is the same - fixes #685
1262
1265
  this.value !== c.lastSearch[column]
@@ -1265,7 +1268,7 @@
1265
1268
  event.preventDefault();
1266
1269
  // init search with no delay
1267
1270
  $( this ).attr( 'data-lastSearchTime', new Date().getTime() );
1268
- tsf.searching( table, event.type !== 'keypress', true, column );
1271
+ tsf.searching( table, eventType !== 'keypress', true, column );
1269
1272
  }
1270
1273
  });
1271
1274
  },
@@ -1,4 +1,4 @@
1
- /*! Parser: dates - updated 8/22/2016 (v2.27.5) */
1
+ /*! Parser: dates - updated 5/24/2017 (v2.28.11) */
2
2
  /* Extract dates using popular natural language date parsers */
3
3
  /*jshint jquery:true */
4
4
  /*global Sugar*/
@@ -6,7 +6,7 @@
6
6
  'use strict';
7
7
 
8
8
  /*! Sugar (https://sugarjs.com/docs/#/DateParsing) */
9
- /* demo: http://jsfiddle.net/Mottie/abkNM/4163/ */
9
+ /* demo: http://jsfiddle.net/Mottie/7z0ss5xn/ */
10
10
  $.tablesorter.addParser({
11
11
  id: 'sugar',
12
12
  is: function() {
@@ -22,7 +22,7 @@
22
22
  });
23
23
 
24
24
  /*! Datejs (http://www.datejs.com/) */
25
- /* demo: http://jsfiddle.net/Mottie/abkNM/4164/ */
25
+ /* demo: http://jsfiddle.net/Mottie/zge0L2u6/ */
26
26
  $.tablesorter.addParser({
27
27
  id: 'datejs',
28
28
  is: function() {
@@ -1,11 +1,11 @@
1
- /*! Widget: columns */
1
+ /*! Widget: columns - updated 5/24/2017 (v2.28.11) */
2
2
  ;(function ($) {
3
3
  'use strict';
4
4
  var ts = $.tablesorter || {};
5
5
 
6
6
  ts.addWidget({
7
7
  id: 'columns',
8
- priority: 30,
8
+ priority: 65,
9
9
  options : {
10
10
  columns : [ 'primary', 'secondary', 'tertiary' ]
11
11
  },
@@ -1,4 +1,4 @@
1
- /*! Widget: cssStickyHeaders - updated 2/9/2015 (v2.19.1) *//*
1
+ /*! Widget: cssStickyHeaders - updated 5/24/2017 (v2.28.11) *//*
2
2
  * Requires a modern browser, tablesorter v2.8+
3
3
  */
4
4
  /*jshint jquery:true, unused:false */
@@ -18,10 +18,11 @@
18
18
  cssStickyHeaders_filteredToTop : true
19
19
  },
20
20
  init : function(table, thisWidget, c, wo) {
21
- var ht, offst, adjustY,
21
+ var offst, adjustY,
22
22
  $table = c.$table,
23
23
  $attach = $(wo.cssStickyHeaders_attachTo),
24
- isIE = 'ActiveXObject' in window, // target all versions of IE
24
+ // target all versions of IE
25
+ isIE = 'ActiveXObject' in window || window.navigator.userAgent.indexOf("Edge") > -1,
25
26
  namespace = c.namespace + 'cssstickyheader ',
26
27
  $thead = $table.children('thead'),
27
28
  $caption = $table.children('caption'),
@@ -29,6 +30,8 @@
29
30
  $parent = $table.parent().closest('table.' + ts.css.table),
30
31
  $parentThead = $parent.length && ts.hasWidget($parent[0], 'cssStickyHeaders') ? $parent.children('thead') : [],
31
32
  borderTopWidth = ( parseInt( $table.css('border-top-width'), 10 ) || 0 ),
33
+ // Fixes for Safari
34
+ tableH = $table.height(),
32
35
  lastCaptionSetting = wo.cssStickyHeaders_addCaption,
33
36
  // table offset top changes while scrolling in FF
34
37
  adjustOffsetTop = false,
@@ -46,9 +49,8 @@
46
49
  if ($caption.length) {
47
50
  // Firefox does not include the caption height when getting the table height
48
51
  // see https://bugzilla.mozilla.org/show_bug.cgi?id=820891, so lets detect it instead of browser sniff
49
- ht = $table.height();
50
52
  $caption.hide();
51
- addCaptionHeight = $table.height() === ht;
53
+ addCaptionHeight = $table.height() === tableH;
52
54
  $caption.show();
53
55
 
54
56
  // Firefox changes the offset().top when translating the table caption
@@ -71,6 +73,12 @@
71
73
  adjustY = $table.offset().top;
72
74
  }
73
75
 
76
+ // Fix for safari, when caption present, table
77
+ // height changes while scrolling
78
+ if ($win.scrollTop() < $caption.outerHeight(true)) {
79
+ tableH = $table.height();
80
+ }
81
+
74
82
  var top = $attach.length ? $attach.offset().top : $win.scrollTop(),
75
83
  // add caption height; include table padding top & border-spacing or text may be above the fold (jQuery UI themes)
76
84
  // border-spacing needed in Firefox, but not webkit... not sure if I should account for that
@@ -78,7 +86,7 @@
78
86
  ( parseInt( $table.css('padding-top'), 10 ) || 0 ) +
79
87
  ( parseInt( $table.css('border-spacing'), 10 ) || 0 ),
80
88
 
81
- bottom = $table.height() + ( addCaptionHeight && wo.cssStickyHeaders_addCaption ? captionHeight : 0 ) -
89
+ bottom = tableH + ( addCaptionHeight && wo.cssStickyHeaders_addCaption ? captionHeight : 0 ) -
82
90
  $thead.height() - ( $table.children('tfoot').height() || 0 ) -
83
91
  ( wo.cssStickyHeaders_addCaption ? captionHeight : ( addCaptionHeight ? 0 : captionHeight ) ),
84
92
 
@@ -1,4 +1,4 @@
1
- /*! Widget: filter - updated 4/18/2017 (v2.28.8) *//*
1
+ /*! Widget: filter - updated 5/24/2017 (v2.28.11) *//*
2
2
  * Requires tablesorter v2.8+ and jQuery 1.7+
3
3
  * by Rob Garrison
4
4
  */
@@ -816,9 +816,6 @@
816
816
  if ( event.which === tskeyCodes.escape ) {
817
817
  // make sure to restore the last value on escape
818
818
  this.value = wo.filter_resetOnEsc ? '' : c.lastSearch[column];
819
- // live search
820
- } else if ( liveSearch === false ) {
821
- return;
822
819
  // don't return if the search value is empty ( all rows need to be revealed )
823
820
  } else if ( this.value !== '' && (
824
821
  // liveSearch can contain a min value length; ignore arrow and meta keys, but allow backspace
@@ -827,26 +824,32 @@
827
824
  ( event.which !== tskeyCodes.enter && event.which !== tskeyCodes.backSpace &&
828
825
  ( event.which < tskeyCodes.space || ( event.which >= tskeyCodes.left && event.which <= tskeyCodes.down ) ) ) ) ) {
829
826
  return;
827
+ // live search
828
+ } else if ( liveSearch === false ) {
829
+ if ( this.value !== '' && event.which !== tskeyCodes.enter ) {
830
+ return;
831
+ }
830
832
  }
831
833
  // change event = no delay; last true flag tells getFilters to skip newest timed input
832
834
  tsf.searching( table, true, true, column );
833
835
  })
834
836
  // include change for select - fixes #473
835
- .bind( 'search change keypress input '.split( ' ' ).join( namespace + ' ' ), function( event ) {
837
+ .bind( 'search change keypress input blur '.split( ' ' ).join( namespace + ' ' ), function( event ) {
836
838
  // don't get cached data, in case data-column changes dynamically
837
839
  var column = parseInt( $( this ).attr( 'data-column' ), 10 ),
840
+ eventType = event.type,
838
841
  liveSearch = typeof wo.filter_liveSearch === 'boolean' ?
839
842
  wo.filter_liveSearch :
840
843
  ts.getColumnData( table, wo.filter_liveSearch, column );
841
844
  if ( table.config.widgetOptions.filter_initialized &&
842
845
  // immediate search if user presses enter
843
846
  ( event.which === tskeyCodes.enter ||
844
- // immediate search if a "search" is triggered on the input
845
- event.type === 'search' ||
847
+ // immediate search if a "search" or "blur" is triggered on the input
848
+ ( eventType === 'search' || eventType === 'blur' ) ||
846
849
  // change & input events must be ignored if liveSearch !== true
847
- ( event.type === 'change' || event.type === 'input' ) &&
850
+ ( eventType === 'change' || eventType === 'input' ) &&
848
851
  // prevent search if liveSearch is a number
849
- liveSearch === true &&
852
+ ( liveSearch === true || liveSearch !== true && event.target.nodeName !== "INPUT" ) &&
850
853
  // don't allow 'change' or 'input' event to process if the input value
851
854
  // is the same - fixes #685
852
855
  this.value !== c.lastSearch[column]
@@ -855,7 +858,7 @@
855
858
  event.preventDefault();
856
859
  // init search with no delay
857
860
  $( this ).attr( 'data-lastSearchTime', new Date().getTime() );
858
- tsf.searching( table, event.type !== 'keypress', true, column );
861
+ tsf.searching( table, eventType !== 'keypress', true, column );
859
862
  }
860
863
  });
861
864
  },
@@ -1,4 +1,4 @@
1
- /*! Widget: Pager - updated 4/18/2017 (v2.28.8) */
1
+ /*! Widget: Pager - updated 5/24/2017 (v2.28.11) */
2
2
  /* Requires tablesorter v2.8+ and jQuery 1.7+
3
3
  * by Rob Garrison
4
4
  */
@@ -244,12 +244,15 @@
244
244
  wo = c.widgetOptions,
245
245
  namespace = c.namespace + 'pager',
246
246
  s = wo.pager_selectors;
247
-
248
247
  c.$table
249
248
  .off( namespace )
250
249
  .on( 'filterInit filterStart '.split( ' ' ).join( namespace + ' ' ), function( e, filters ) {
251
250
  p.currentFilters = $.isArray( filters ) ? filters : c.$table.data( 'lastSearch' );
252
251
  var filtersEqual;
252
+ if (p.ajax && e.type === 'filterInit') {
253
+ // ensure pager ajax is called after filter widget has initialized
254
+ return tsp.moveToPage( c, p, false );
255
+ }
253
256
  if (ts.filter.equalFilters) {
254
257
  filtersEqual = ts.filter.equalFilters(c, c.lastSearch, p.currentFilters);
255
258
  } else {
@@ -270,7 +273,6 @@
270
273
  tsp.updateCache( c );
271
274
  }
272
275
  tsp.updatePageDisplay( c, false );
273
- // tsp.moveToPage( c, p, false ); <-- called when applyWidgets is triggered
274
276
  ts.applyWidget( c.table );
275
277
  }
276
278
  })
@@ -1110,7 +1112,7 @@
1110
1112
  p.filteredRows = typeof tmp.filtered !== 'undefined' ? tmp.filtered :
1111
1113
  ( c.debug ? console.error('Pager: no initial filtered page set!') || 0 : 0 );
1112
1114
  tsp.updatePageDisplay( c, false );
1113
- } else if (p.initialized) {
1115
+ } else {
1114
1116
  tsp.getAjax( c );
1115
1117
  }
1116
1118
  } else if ( !p.ajax ) {
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.23.10
4
+ version: 1.23.11
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: 2017-05-17 00:00:00.000000000 Z
12
+ date: 2017-05-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: railties