jquery-ui-rails 6.0.1 → 7.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (171) hide show
  1. checksums.yaml +5 -5
  2. data/.gitmodules +1 -1
  3. data/History.md +7 -2
  4. data/README.md +12 -12
  5. data/Rakefile +8 -3
  6. data/VERSIONS.md +1 -0
  7. data/app/assets/images/jquery-ui/ui-icons_444444_256x240.png +0 -0
  8. data/app/assets/images/jquery-ui/ui-icons_555555_256x240.png +0 -0
  9. data/app/assets/images/jquery-ui/ui-icons_777620_256x240.png +0 -0
  10. data/app/assets/images/jquery-ui/ui-icons_777777_256x240.png +0 -0
  11. data/app/assets/images/jquery-ui/ui-icons_cc0000_256x240.png +0 -0
  12. data/app/assets/images/jquery-ui/ui-icons_ffffff_256x240.png +0 -0
  13. data/app/assets/javascripts/jquery-ui/core.js +1 -1
  14. data/app/assets/javascripts/jquery-ui/data.js +8 -4
  15. data/app/assets/javascripts/jquery-ui/disable-selection.js +6 -3
  16. data/app/assets/javascripts/jquery-ui/effect.js +55 -717
  17. data/app/assets/javascripts/jquery-ui/effects/effect-blind.js +6 -3
  18. data/app/assets/javascripts/jquery-ui/effects/effect-bounce.js +6 -3
  19. data/app/assets/javascripts/jquery-ui/effects/effect-clip.js +6 -3
  20. data/app/assets/javascripts/jquery-ui/effects/effect-drop.js +6 -3
  21. data/app/assets/javascripts/jquery-ui/effects/effect-explode.js +8 -5
  22. data/app/assets/javascripts/jquery-ui/effects/effect-fade.js +6 -3
  23. data/app/assets/javascripts/jquery-ui/effects/effect-fold.js +6 -3
  24. data/app/assets/javascripts/jquery-ui/effects/effect-highlight.js +6 -3
  25. data/app/assets/javascripts/jquery-ui/effects/effect-puff.js +6 -3
  26. data/app/assets/javascripts/jquery-ui/effects/effect-pulsate.js +6 -3
  27. data/app/assets/javascripts/jquery-ui/effects/effect-scale.js +6 -3
  28. data/app/assets/javascripts/jquery-ui/effects/effect-shake.js +6 -3
  29. data/app/assets/javascripts/jquery-ui/effects/effect-size.js +8 -3
  30. data/app/assets/javascripts/jquery-ui/effects/effect-slide.js +6 -3
  31. data/app/assets/javascripts/jquery-ui/effects/effect-transfer.js +6 -3
  32. data/app/assets/javascripts/jquery-ui/focusable.js +8 -5
  33. data/app/assets/javascripts/jquery-ui/form-reset-mixin.js +7 -4
  34. data/app/assets/javascripts/jquery-ui/form.js +6 -3
  35. data/app/assets/javascripts/jquery-ui/i18n/datepicker-af.js +8 -5
  36. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ar-DZ.js +6 -3
  37. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ar.js +5 -2
  38. data/app/assets/javascripts/jquery-ui/i18n/datepicker-az.js +12 -9
  39. data/app/assets/javascripts/jquery-ui/i18n/datepicker-be.js +12 -9
  40. data/app/assets/javascripts/jquery-ui/i18n/datepicker-bg.js +12 -9
  41. data/app/assets/javascripts/jquery-ui/i18n/datepicker-bs.js +12 -9
  42. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ca.js +12 -9
  43. data/app/assets/javascripts/jquery-ui/i18n/datepicker-cs.js +10 -7
  44. data/app/assets/javascripts/jquery-ui/i18n/datepicker-cy-GB.js +8 -5
  45. data/app/assets/javascripts/jquery-ui/i18n/datepicker-da.js +13 -10
  46. data/app/assets/javascripts/jquery-ui/i18n/datepicker-de-AT.js +41 -0
  47. data/app/assets/javascripts/jquery-ui/i18n/datepicker-de.js +12 -9
  48. data/app/assets/javascripts/jquery-ui/i18n/datepicker-el.js +12 -9
  49. data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-AU.js +8 -5
  50. data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-GB.js +8 -5
  51. data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-NZ.js +8 -5
  52. data/app/assets/javascripts/jquery-ui/i18n/datepicker-eo.js +12 -9
  53. data/app/assets/javascripts/jquery-ui/i18n/datepicker-es.js +12 -9
  54. data/app/assets/javascripts/jquery-ui/i18n/datepicker-et.js +8 -5
  55. data/app/assets/javascripts/jquery-ui/i18n/datepicker-eu.js +12 -9
  56. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fa.js +6 -3
  57. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fi.js +12 -9
  58. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fo.js +11 -8
  59. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr-CA.js +5 -2
  60. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr-CH.js +5 -2
  61. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr.js +6 -3
  62. data/app/assets/javascripts/jquery-ui/i18n/datepicker-gl.js +12 -9
  63. data/app/assets/javascripts/jquery-ui/i18n/datepicker-he.js +12 -9
  64. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hi.js +7 -4
  65. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hr.js +12 -9
  66. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hu.js +9 -6
  67. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hy.js +12 -9
  68. data/app/assets/javascripts/jquery-ui/i18n/datepicker-id.js +12 -9
  69. data/app/assets/javascripts/jquery-ui/i18n/datepicker-is.js +11 -8
  70. data/app/assets/javascripts/jquery-ui/i18n/datepicker-it-CH.js +12 -9
  71. data/app/assets/javascripts/jquery-ui/i18n/datepicker-it.js +12 -9
  72. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ja.js +12 -9
  73. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ka.js +9 -6
  74. data/app/assets/javascripts/jquery-ui/i18n/datepicker-kk.js +12 -9
  75. data/app/assets/javascripts/jquery-ui/i18n/datepicker-km.js +9 -6
  76. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ko.js +12 -9
  77. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ky.js +10 -7
  78. data/app/assets/javascripts/jquery-ui/i18n/datepicker-lb.js +8 -5
  79. data/app/assets/javascripts/jquery-ui/i18n/datepicker-lt.js +11 -8
  80. data/app/assets/javascripts/jquery-ui/i18n/datepicker-lv.js +11 -8
  81. data/app/assets/javascripts/jquery-ui/i18n/datepicker-mk.js +12 -9
  82. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ml.js +8 -5
  83. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ms.js +12 -9
  84. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nb.js +9 -6
  85. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nl-BE.js +5 -2
  86. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nl.js +5 -2
  87. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nn.js +9 -6
  88. data/app/assets/javascripts/jquery-ui/i18n/datepicker-no.js +9 -6
  89. data/app/assets/javascripts/jquery-ui/i18n/datepicker-pl.js +12 -9
  90. data/app/assets/javascripts/jquery-ui/i18n/datepicker-pt-BR.js +11 -8
  91. data/app/assets/javascripts/jquery-ui/i18n/datepicker-pt.js +12 -9
  92. data/app/assets/javascripts/jquery-ui/i18n/datepicker-rm.js +8 -5
  93. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ro.js +8 -5
  94. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ru.js +12 -9
  95. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sk.js +12 -9
  96. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sl.js +12 -9
  97. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sq.js +12 -9
  98. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sr-SR.js +12 -9
  99. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sr.js +12 -9
  100. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sv.js +12 -9
  101. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ta.js +10 -7
  102. data/app/assets/javascripts/jquery-ui/i18n/datepicker-th.js +12 -9
  103. data/app/assets/javascripts/jquery-ui/i18n/datepicker-tj.js +12 -9
  104. data/app/assets/javascripts/jquery-ui/i18n/datepicker-tr.js +12 -9
  105. data/app/assets/javascripts/jquery-ui/i18n/datepicker-uk.js +12 -9
  106. data/app/assets/javascripts/jquery-ui/i18n/datepicker-vi.js +5 -2
  107. data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-CN.js +12 -9
  108. data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-HK.js +12 -9
  109. data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-TW.js +15 -12
  110. data/app/assets/javascripts/jquery-ui/ie.js +5 -2
  111. data/app/assets/javascripts/jquery-ui/jquery-patch.js +91 -0
  112. data/app/assets/javascripts/jquery-ui/jquery-var-for-color.js +24 -0
  113. data/app/assets/javascripts/jquery-ui/keycode.js +7 -3
  114. data/app/assets/javascripts/jquery-ui/labels.js +12 -6
  115. data/app/assets/javascripts/jquery-ui/plugin.js +5 -2
  116. data/app/assets/javascripts/jquery-ui/position.js +24 -11
  117. data/app/assets/javascripts/jquery-ui/safe-active-element.js +6 -2
  118. data/app/assets/javascripts/jquery-ui/safe-blur.js +6 -2
  119. data/app/assets/javascripts/jquery-ui/scroll-parent.js +6 -3
  120. data/app/assets/javascripts/jquery-ui/tabbable.js +7 -4
  121. data/app/assets/javascripts/jquery-ui/unique-id.js +6 -3
  122. data/app/assets/javascripts/jquery-ui/vendor/jquery-color/jquery.color.js +722 -0
  123. data/app/assets/javascripts/jquery-ui/version.js +6 -3
  124. data/app/assets/javascripts/jquery-ui/widget.js +43 -24
  125. data/app/assets/javascripts/jquery-ui/widgets/accordion.js +17 -8
  126. data/app/assets/javascripts/jquery-ui/widgets/autocomplete.js +23 -32
  127. data/app/assets/javascripts/jquery-ui/widgets/button.js +82 -19
  128. data/app/assets/javascripts/jquery-ui/widgets/checkboxradio.js +9 -11
  129. data/app/assets/javascripts/jquery-ui/widgets/controlgroup.js +10 -6
  130. data/app/assets/javascripts/jquery-ui/widgets/datepicker.js +176 -56
  131. data/app/assets/javascripts/jquery-ui/widgets/dialog.js +45 -31
  132. data/app/assets/javascripts/jquery-ui/widgets/draggable.js +22 -13
  133. data/app/assets/javascripts/jquery-ui/widgets/droppable.js +19 -13
  134. data/app/assets/javascripts/jquery-ui/widgets/menu.js +83 -43
  135. data/app/assets/javascripts/jquery-ui/widgets/mouse.js +18 -7
  136. data/app/assets/javascripts/jquery-ui/widgets/progressbar.js +9 -6
  137. data/app/assets/javascripts/jquery-ui/widgets/resizable.js +36 -18
  138. data/app/assets/javascripts/jquery-ui/widgets/selectable.js +13 -6
  139. data/app/assets/javascripts/jquery-ui/widgets/selectmenu.js +15 -10
  140. data/app/assets/javascripts/jquery-ui/widgets/slider.js +10 -7
  141. data/app/assets/javascripts/jquery-ui/widgets/sortable.js +221 -159
  142. data/app/assets/javascripts/jquery-ui/widgets/spinner.js +20 -13
  143. data/app/assets/javascripts/jquery-ui/widgets/tabs.js +13 -13
  144. data/app/assets/javascripts/jquery-ui/widgets/tooltip.js +15 -11
  145. data/app/assets/javascripts/jquery-ui.js +3 -2
  146. data/app/assets/stylesheets/jquery-ui/accordion.css +1 -1
  147. data/app/assets/stylesheets/jquery-ui/all.css +1 -1
  148. data/app/assets/stylesheets/jquery-ui/autocomplete.css +1 -1
  149. data/app/assets/stylesheets/jquery-ui/base.css +1 -1
  150. data/app/assets/stylesheets/jquery-ui/button.css +1 -1
  151. data/app/assets/stylesheets/jquery-ui/checkboxradio.css +1 -1
  152. data/app/assets/stylesheets/jquery-ui/controlgroup.css +1 -1
  153. data/app/assets/stylesheets/jquery-ui/core.css +2 -2
  154. data/app/assets/stylesheets/jquery-ui/datepicker.css +1 -1
  155. data/app/assets/stylesheets/jquery-ui/dialog.css +1 -1
  156. data/app/assets/stylesheets/jquery-ui/draggable.css +1 -1
  157. data/app/assets/stylesheets/jquery-ui/menu.css +1 -1
  158. data/app/assets/stylesheets/jquery-ui/progressbar.css +2 -2
  159. data/app/assets/stylesheets/jquery-ui/resizable.css +1 -1
  160. data/app/assets/stylesheets/jquery-ui/selectable.css +1 -1
  161. data/app/assets/stylesheets/jquery-ui/selectmenu.css +1 -1
  162. data/app/assets/stylesheets/jquery-ui/slider.css +2 -2
  163. data/app/assets/stylesheets/jquery-ui/sortable.css +1 -1
  164. data/app/assets/stylesheets/jquery-ui/spinner.css +1 -1
  165. data/app/assets/stylesheets/jquery-ui/tabs.css +1 -1
  166. data/app/assets/stylesheets/jquery-ui/theme.css.erb +9 -6
  167. data/app/assets/stylesheets/jquery-ui/tooltip.css +1 -1
  168. data/lib/jquery/ui/rails/version.rb +2 -2
  169. metadata +8 -7
  170. data/app/assets/javascripts/jquery-ui/escape-selector.js +0 -23
  171. data/app/assets/javascripts/jquery-ui/jquery-1-7.js +0 -91
@@ -1,4 +1,6 @@
1
1
  ( function( factory ) {
2
+ "use strict";
3
+
2
4
  if ( typeof define === "function" && define.amd ) {
3
5
 
4
6
  // AMD. Register as an anonymous module.
@@ -8,10 +10,11 @@
8
10
  // Browser globals
9
11
  factory( jQuery );
10
12
  }
11
- } ( function( $ ) {
13
+ } )( function( $ ) {
14
+ "use strict";
12
15
 
13
16
  $.ui = $.ui || {};
14
17
 
15
- return $.ui.version = "1.12.1";
18
+ return $.ui.version = "1.13.0";
16
19
 
17
- } ) );
20
+ } );
@@ -1,7 +1,7 @@
1
1
  //= require jquery-ui/version
2
2
 
3
3
  /*!
4
- * jQuery UI Widget 1.12.1
4
+ * jQuery UI Widget 1.13.0
5
5
  * http://jqueryui.com
6
6
  *
7
7
  * Copyright jQuery Foundation and other contributors
@@ -16,6 +16,8 @@
16
16
  //>>demos: http://jqueryui.com/widget/
17
17
 
18
18
  ( function( factory ) {
19
+ "use strict";
20
+
19
21
  if ( typeof define === "function" && define.amd ) {
20
22
 
21
23
  // AMD. Register as an anonymous module.
@@ -25,25 +27,23 @@
25
27
  // Browser globals
26
28
  factory( jQuery );
27
29
  }
28
- }( function( $ ) {
30
+ } )( function( $ ) {
31
+ "use strict";
29
32
 
30
33
  var widgetUuid = 0;
34
+ var widgetHasOwnProperty = Array.prototype.hasOwnProperty;
31
35
  var widgetSlice = Array.prototype.slice;
32
36
 
33
37
  $.cleanData = ( function( orig ) {
34
38
  return function( elems ) {
35
39
  var events, elem, i;
36
40
  for ( i = 0; ( elem = elems[ i ] ) != null; i++ ) {
37
- try {
38
-
39
- // Only trigger remove when necessary to save time
40
- events = $._data( elem, "events" );
41
- if ( events && events.remove ) {
42
- $( elem ).triggerHandler( "remove" );
43
- }
44
41
 
45
- // Http://bugs.jquery.com/ticket/8235
46
- } catch ( e ) {}
42
+ // Only trigger remove when necessary to save time
43
+ events = $._data( elem, "events" );
44
+ if ( events && events.remove ) {
45
+ $( elem ).triggerHandler( "remove" );
46
+ }
47
47
  }
48
48
  orig( elems );
49
49
  };
@@ -65,12 +65,12 @@ $.widget = function( name, base, prototype ) {
65
65
  base = $.Widget;
66
66
  }
67
67
 
68
- if ( $.isArray( prototype ) ) {
68
+ if ( Array.isArray( prototype ) ) {
69
69
  prototype = $.extend.apply( null, [ {} ].concat( prototype ) );
70
70
  }
71
71
 
72
72
  // Create selector for plugin
73
- $.expr[ ":" ][ fullName.toLowerCase() ] = function( elem ) {
73
+ $.expr.pseudos[ fullName.toLowerCase() ] = function( elem ) {
74
74
  return !!$.data( elem, fullName );
75
75
  };
76
76
 
@@ -110,7 +110,7 @@ $.widget = function( name, base, prototype ) {
110
110
  // inheriting from
111
111
  basePrototype.options = $.widget.extend( {}, basePrototype.options );
112
112
  $.each( prototype, function( prop, value ) {
113
- if ( !$.isFunction( value ) ) {
113
+ if ( typeof value !== "function" ) {
114
114
  proxiedPrototype[ prop ] = value;
115
115
  return;
116
116
  }
@@ -189,7 +189,7 @@ $.widget.extend = function( target ) {
189
189
  for ( ; inputIndex < inputLength; inputIndex++ ) {
190
190
  for ( key in input[ inputIndex ] ) {
191
191
  value = input[ inputIndex ][ key ];
192
- if ( input[ inputIndex ].hasOwnProperty( key ) && value !== undefined ) {
192
+ if ( widgetHasOwnProperty.call( input[ inputIndex ], key ) && value !== undefined ) {
193
193
 
194
194
  // Clone objects
195
195
  if ( $.isPlainObject( value ) ) {
@@ -238,7 +238,8 @@ $.widget.bridge = function( name, object ) {
238
238
  "attempted to call method '" + options + "'" );
239
239
  }
240
240
 
241
- if ( !$.isFunction( instance[ options ] ) || options.charAt( 0 ) === "_" ) {
241
+ if ( typeof instance[ options ] !== "function" ||
242
+ options.charAt( 0 ) === "_" ) {
242
243
  return $.error( "no such method '" + options + "' for " + name +
243
244
  " widget instance" );
244
245
  }
@@ -499,12 +500,30 @@ $.Widget.prototype = {
499
500
  classes: this.options.classes || {}
500
501
  }, options );
501
502
 
503
+ function bindRemoveEvent() {
504
+ options.element.each( function( _, element ) {
505
+ var isTracked = $.map( that.classesElementLookup, function( elements ) {
506
+ return elements;
507
+ } )
508
+ .some( function( elements ) {
509
+ return elements.is( element );
510
+ } );
511
+
512
+ if ( !isTracked ) {
513
+ that._on( $( element ), {
514
+ remove: "_untrackClassesElement"
515
+ } );
516
+ }
517
+ } );
518
+ }
519
+
502
520
  function processClassString( classes, checkOption ) {
503
521
  var current, i;
504
522
  for ( i = 0; i < classes.length; i++ ) {
505
523
  current = that.classesElementLookup[ classes[ i ] ] || $();
506
524
  if ( options.add ) {
507
- current = $( $.unique( current.get().concat( options.element.get() ) ) );
525
+ bindRemoveEvent();
526
+ current = $( $.uniqueSort( current.get().concat( options.element.get() ) ) );
508
527
  } else {
509
528
  current = $( current.not( options.element ).get() );
510
529
  }
@@ -516,10 +535,6 @@ $.Widget.prototype = {
516
535
  }
517
536
  }
518
537
 
519
- this._on( options.element, {
520
- "remove": "_untrackClassesElement"
521
- } );
522
-
523
538
  if ( options.keys ) {
524
539
  processClassString( options.keys.match( /\S+/g ) || [], true );
525
540
  }
@@ -537,6 +552,8 @@ $.Widget.prototype = {
537
552
  that.classesElementLookup[ key ] = $( value.not( event.target ).get() );
538
553
  }
539
554
  } );
555
+
556
+ this._off( $( event.target ) );
540
557
  },
541
558
 
542
559
  _removeClass: function( element, keys, extra ) {
@@ -617,7 +634,7 @@ $.Widget.prototype = {
617
634
  _off: function( element, eventName ) {
618
635
  eventName = ( eventName || "" ).split( " " ).join( this.eventNamespace + " " ) +
619
636
  this.eventNamespace;
620
- element.off( eventName ).off( eventName );
637
+ element.off( eventName );
621
638
 
622
639
  // Clear the stack to avoid memory leaks (#10056)
623
640
  this.bindings = $( this.bindings.not( element ).get() );
@@ -683,7 +700,7 @@ $.Widget.prototype = {
683
700
  }
684
701
 
685
702
  this.element.trigger( event, data );
686
- return !( $.isFunction( callback ) &&
703
+ return !( typeof callback === "function" &&
687
704
  callback.apply( this.element[ 0 ], [ event ].concat( data ) ) === false ||
688
705
  event.isDefaultPrevented() );
689
706
  }
@@ -705,6 +722,8 @@ $.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) {
705
722
  options = options || {};
706
723
  if ( typeof options === "number" ) {
707
724
  options = { duration: options };
725
+ } else if ( options === true ) {
726
+ options = {};
708
727
  }
709
728
 
710
729
  hasOptions = !$.isEmptyObject( options );
@@ -732,4 +751,4 @@ $.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) {
732
751
 
733
752
  return $.widget;
734
753
 
735
- } ) );
754
+ } );
@@ -4,7 +4,7 @@
4
4
  //= require jquery-ui/widget
5
5
 
6
6
  /*!
7
- * jQuery UI Accordion 1.12.1
7
+ * jQuery UI Accordion 1.13.0
8
8
  * http://jqueryui.com
9
9
  *
10
10
  * Copyright jQuery Foundation and other contributors
@@ -14,9 +14,9 @@
14
14
 
15
15
  //>>label: Accordion
16
16
  //>>group: Widgets
17
- // jscs:disable maximumLineLength
17
+ /* eslint-disable max-len */
18
18
  //>>description: Displays collapsible content panels for presenting information in a limited amount of space.
19
- // jscs:enable maximumLineLength
19
+ /* eslint-enable max-len */
20
20
  //>>docs: http://api.jqueryui.com/accordion/
21
21
  //>>demos: http://jqueryui.com/accordion/
22
22
  //>>css.structure: ../../themes/base/core.css
@@ -24,6 +24,8 @@
24
24
  //>>css.theme: ../../themes/base/theme.css
25
25
 
26
26
  ( function( factory ) {
27
+ "use strict";
28
+
27
29
  if ( typeof define === "function" && define.amd ) {
28
30
 
29
31
  // AMD. Register as an anonymous module.
@@ -39,10 +41,11 @@
39
41
  // Browser globals
40
42
  factory( jQuery );
41
43
  }
42
- }( function( $ ) {
44
+ } )( function( $ ) {
45
+ "use strict";
43
46
 
44
47
  return $.widget( "ui.accordion", {
45
- version: "1.12.1",
48
+ version: "1.13.0",
46
49
  options: {
47
50
  active: 0,
48
51
  animate: {},
@@ -53,7 +56,9 @@ return $.widget( "ui.accordion", {
53
56
  },
54
57
  collapsible: false,
55
58
  event: "click",
56
- header: "> li > :first-child, > :not(li):even",
59
+ header: function( elem ) {
60
+ return elem.find( "> li > :first-child" ).add( elem.find( "> :not(li)" ).even() );
61
+ },
57
62
  heightStyle: "auto",
58
63
  icons: {
59
64
  activeHeader: "ui-icon-triangle-1-s",
@@ -284,7 +289,11 @@ return $.widget( "ui.accordion", {
284
289
  var prevHeaders = this.headers,
285
290
  prevPanels = this.panels;
286
291
 
287
- this.headers = this.element.find( this.options.header );
292
+ if ( typeof this.options.header === "function" ) {
293
+ this.headers = this.options.header( this.element );
294
+ } else {
295
+ this.headers = this.element.find( this.options.header );
296
+ }
288
297
  this._addClass( this.headers, "ui-accordion-header ui-accordion-header-collapsed",
289
298
  "ui-state-default" );
290
299
 
@@ -615,4 +624,4 @@ return $.widget( "ui.accordion", {
615
624
  }
616
625
  } );
617
626
 
618
- } ) );
627
+ } );
@@ -6,7 +6,7 @@
6
6
  //= require jquery-ui/widget
7
7
 
8
8
  /*!
9
- * jQuery UI Autocomplete 1.12.1
9
+ * jQuery UI Autocomplete 1.13.0
10
10
  * http://jqueryui.com
11
11
  *
12
12
  * Copyright jQuery Foundation and other contributors
@@ -24,6 +24,8 @@
24
24
  //>>css.theme: ../../themes/base/theme.css
25
25
 
26
26
  ( function( factory ) {
27
+ "use strict";
28
+
27
29
  if ( typeof define === "function" && define.amd ) {
28
30
 
29
31
  // AMD. Register as an anonymous module.
@@ -41,10 +43,11 @@
41
43
  // Browser globals
42
44
  factory( jQuery );
43
45
  }
44
- }( function( $ ) {
46
+ } )( function( $ ) {
47
+ "use strict";
45
48
 
46
49
  $.widget( "ui.autocomplete", {
47
- version: "1.12.1",
50
+ version: "1.13.0",
48
51
  defaultElement: "<input>",
49
52
  options: {
50
53
  appendTo: null,
@@ -207,11 +210,6 @@ $.widget( "ui.autocomplete", {
207
210
  this.previous = this._value();
208
211
  },
209
212
  blur: function( event ) {
210
- if ( this.cancelBlur ) {
211
- delete this.cancelBlur;
212
- return;
213
- }
214
-
215
213
  clearTimeout( this.searching );
216
214
  this.close( event );
217
215
  this._change( event );
@@ -227,31 +225,24 @@ $.widget( "ui.autocomplete", {
227
225
  role: null
228
226
  } )
229
227
  .hide()
228
+
229
+ // Support: IE 11 only, Edge <= 14
230
+ // For other browsers, we preventDefault() on the mousedown event
231
+ // to keep the dropdown from taking focus from the input. This doesn't
232
+ // work for IE/Edge, causing problems with selection and scrolling (#9638)
233
+ // Happily, IE and Edge support an "unselectable" attribute that
234
+ // prevents an element from receiving focus, exactly what we want here.
235
+ .attr( {
236
+ "unselectable": "on"
237
+ } )
230
238
  .menu( "instance" );
231
239
 
232
240
  this._addClass( this.menu.element, "ui-autocomplete", "ui-front" );
233
241
  this._on( this.menu.element, {
234
242
  mousedown: function( event ) {
235
243
 
236
- // prevent moving focus out of the text field
244
+ // Prevent moving focus out of the text field
237
245
  event.preventDefault();
238
-
239
- // IE doesn't prevent moving focus even with event.preventDefault()
240
- // so we set a flag to know when we should ignore the blur event
241
- this.cancelBlur = true;
242
- this._delay( function() {
243
- delete this.cancelBlur;
244
-
245
- // Support: IE 8 only
246
- // Right clicking a menu item or selecting text from the menu items will
247
- // result in focus moving out of the input. However, we've already received
248
- // and ignored the blur event because of the cancelBlur flag set above. So
249
- // we restore focus to ensure that the menu closes properly based on the user's
250
- // next actions.
251
- if ( this.element[ 0 ] !== $.ui.safeActiveElement( this.document[ 0 ] ) ) {
252
- this.element.trigger( "focus" );
253
- }
254
- } );
255
246
  },
256
247
  menufocus: function( event, ui ) {
257
248
  var label, item;
@@ -282,7 +273,7 @@ $.widget( "ui.autocomplete", {
282
273
 
283
274
  // Announce the value in the liveRegion
284
275
  label = ui.item.attr( "aria-label" ) || item.value;
285
- if ( label && $.trim( label ).length ) {
276
+ if ( label && String.prototype.trim.call( label ).length ) {
286
277
  this.liveRegion.children().hide();
287
278
  $( "<div>" ).text( label ).appendTo( this.liveRegion );
288
279
  }
@@ -394,7 +385,7 @@ $.widget( "ui.autocomplete", {
394
385
  _initSource: function() {
395
386
  var array, url,
396
387
  that = this;
397
- if ( $.isArray( this.options.source ) ) {
388
+ if ( Array.isArray( this.options.source ) ) {
398
389
  array = this.options.source;
399
390
  this.source = function( request, response ) {
400
391
  response( $.ui.autocomplete.filter( array, request.term ) );
@@ -466,7 +457,7 @@ $.widget( "ui.autocomplete", {
466
457
  _response: function() {
467
458
  var index = ++this.requestIndex;
468
459
 
469
- return $.proxy( function( content ) {
460
+ return function( content ) {
470
461
  if ( index === this.requestIndex ) {
471
462
  this.__response( content );
472
463
  }
@@ -475,7 +466,7 @@ $.widget( "ui.autocomplete", {
475
466
  if ( !this.pending ) {
476
467
  this._removeClass( "ui-autocomplete-loading" );
477
468
  }
478
- }, this );
469
+ }.bind( this );
479
470
  },
480
471
 
481
472
  __response: function( content ) {
@@ -635,7 +626,7 @@ $.widget( "ui.autocomplete", {
635
626
  var editable = element.prop( "contentEditable" );
636
627
 
637
628
  if ( editable === "inherit" ) {
638
- return this._isContentEditable( element.parent() );
629
+ return this._isContentEditable( element.parent() );
639
630
  }
640
631
 
641
632
  return editable === "true";
@@ -686,4 +677,4 @@ $.widget( "ui.autocomplete", $.ui.autocomplete, {
686
677
 
687
678
  return $.ui.autocomplete;
688
679
 
689
- } ) );
680
+ } );
@@ -4,7 +4,7 @@
4
4
  //= require jquery-ui/widget
5
5
 
6
6
  /*!
7
- * jQuery UI Button 1.12.1
7
+ * jQuery UI Button 1.13.0
8
8
  * http://jqueryui.com
9
9
  *
10
10
  * Copyright jQuery Foundation and other contributors
@@ -22,6 +22,8 @@
22
22
  //>>css.theme: ../../themes/base/theme.css
23
23
 
24
24
  ( function( factory ) {
25
+ "use strict";
26
+
25
27
  if ( typeof define === "function" && define.amd ) {
26
28
 
27
29
  // AMD. Register as an anonymous module.
@@ -41,10 +43,11 @@
41
43
  // Browser globals
42
44
  factory( jQuery );
43
45
  }
44
- }( function( $ ) {
46
+ } )( function( $ ) {
47
+ "use strict";
45
48
 
46
49
  $.widget( "ui.button", {
47
- version: "1.12.1",
50
+ version: "1.13.0",
48
51
  defaultElement: "<button>",
49
52
  options: {
50
53
  classes: {
@@ -268,7 +271,7 @@ $.widget( "ui.button", {
268
271
  this._toggleClass( null, "ui-state-disabled", value );
269
272
  this.element[ 0 ].disabled = value;
270
273
  if ( value ) {
271
- this.element.blur();
274
+ this.element.trigger( "blur" );
272
275
  }
273
276
  }
274
277
  },
@@ -347,22 +350,82 @@ if ( $.uiBackCompat !== false ) {
347
350
  } );
348
351
 
349
352
  $.fn.button = ( function( orig ) {
350
- return function() {
351
- if ( !this.length || ( this.length && this[ 0 ].tagName !== "INPUT" ) ||
352
- ( this.length && this[ 0 ].tagName === "INPUT" && (
353
- this.attr( "type" ) !== "checkbox" && this.attr( "type" ) !== "radio"
354
- ) ) ) {
355
- return orig.apply( this, arguments );
356
- }
357
- if ( !$.ui.checkboxradio ) {
358
- $.error( "Checkboxradio widget missing" );
359
- }
360
- if ( arguments.length === 0 ) {
361
- return this.checkboxradio( {
362
- "icon": false
353
+ return function( options ) {
354
+ var isMethodCall = typeof options === "string";
355
+ var args = Array.prototype.slice.call( arguments, 1 );
356
+ var returnValue = this;
357
+
358
+ if ( isMethodCall ) {
359
+
360
+ // If this is an empty collection, we need to have the instance method
361
+ // return undefined instead of the jQuery instance
362
+ if ( !this.length && options === "instance" ) {
363
+ returnValue = undefined;
364
+ } else {
365
+ this.each( function() {
366
+ var methodValue;
367
+ var type = $( this ).attr( "type" );
368
+ var name = type !== "checkbox" && type !== "radio" ?
369
+ "button" :
370
+ "checkboxradio";
371
+ var instance = $.data( this, "ui-" + name );
372
+
373
+ if ( options === "instance" ) {
374
+ returnValue = instance;
375
+ return false;
376
+ }
377
+
378
+ if ( !instance ) {
379
+ return $.error( "cannot call methods on button" +
380
+ " prior to initialization; " +
381
+ "attempted to call method '" + options + "'" );
382
+ }
383
+
384
+ if ( typeof instance[ options ] !== "function" ||
385
+ options.charAt( 0 ) === "_" ) {
386
+ return $.error( "no such method '" + options + "' for button" +
387
+ " widget instance" );
388
+ }
389
+
390
+ methodValue = instance[ options ].apply( instance, args );
391
+
392
+ if ( methodValue !== instance && methodValue !== undefined ) {
393
+ returnValue = methodValue && methodValue.jquery ?
394
+ returnValue.pushStack( methodValue.get() ) :
395
+ methodValue;
396
+ return false;
397
+ }
398
+ } );
399
+ }
400
+ } else {
401
+
402
+ // Allow multiple hashes to be passed on init
403
+ if ( args.length ) {
404
+ options = $.widget.extend.apply( null, [ options ].concat( args ) );
405
+ }
406
+
407
+ this.each( function() {
408
+ var type = $( this ).attr( "type" );
409
+ var name = type !== "checkbox" && type !== "radio" ? "button" : "checkboxradio";
410
+ var instance = $.data( this, "ui-" + name );
411
+
412
+ if ( instance ) {
413
+ instance.option( options || {} );
414
+ if ( instance._init ) {
415
+ instance._init();
416
+ }
417
+ } else {
418
+ if ( name === "button" ) {
419
+ orig.call( $( this ), options );
420
+ return;
421
+ }
422
+
423
+ $( this ).checkboxradio( $.extend( { icon: false }, options ) );
424
+ }
363
425
  } );
364
426
  }
365
- return this.checkboxradio.apply( this, arguments );
427
+
428
+ return returnValue;
366
429
  };
367
430
  } )( $.fn.button );
368
431
 
@@ -388,4 +451,4 @@ if ( $.uiBackCompat !== false ) {
388
451
 
389
452
  return $.ui.button;
390
453
 
391
- } ) );
454
+ } );
@@ -1,10 +1,9 @@
1
- //= require jquery-ui/escape-selector
2
1
  //= require jquery-ui/form-reset-mixin
3
2
  //= require jquery-ui/labels
4
3
  //= require jquery-ui/widget
5
4
 
6
5
  /*!
7
- * jQuery UI Checkboxradio 1.12.1
6
+ * jQuery UI Checkboxradio 1.13.0
8
7
  * http://jqueryui.com
9
8
  *
10
9
  * Copyright jQuery Foundation and other contributors
@@ -23,12 +22,13 @@
23
22
  //>>css.theme: ../../themes/base/theme.css
24
23
 
25
24
  ( function( factory ) {
25
+ "use strict";
26
+
26
27
  if ( typeof define === "function" && define.amd ) {
27
28
 
28
29
  // AMD. Register as an anonymous module.
29
30
  define( [
30
31
  "jquery",
31
- "../escape-selector",
32
32
  "../form-reset-mixin",
33
33
  "../labels",
34
34
  "../widget"
@@ -38,10 +38,11 @@
38
38
  // Browser globals
39
39
  factory( jQuery );
40
40
  }
41
- }( function( $ ) {
41
+ } )( function( $ ) {
42
+ "use strict";
42
43
 
43
44
  $.widget( "ui.checkboxradio", [ $.ui.formResetMixin, {
44
- version: "1.12.1",
45
+ version: "1.13.0",
45
46
  options: {
46
47
  disabled: null,
47
48
  label: null,
@@ -120,9 +121,6 @@ $.widget( "ui.checkboxradio", [ $.ui.formResetMixin, {
120
121
 
121
122
  if ( checked ) {
122
123
  this._addClass( this.label, "ui-checkboxradio-checked", "ui-state-active" );
123
- if ( this.icon ) {
124
- this._addClass( this.icon, null, "ui-state-hover" );
125
- }
126
124
  }
127
125
 
128
126
  this._on( {
@@ -157,7 +155,7 @@ $.widget( "ui.checkboxradio", [ $.ui.formResetMixin, {
157
155
  _getRadioGroup: function() {
158
156
  var group;
159
157
  var name = this.element[ 0 ].name;
160
- var nameSelector = "input[name='" + $.ui.escapeSelector( name ) + "']";
158
+ var nameSelector = "input[name='" + $.escapeSelector( name ) + "']";
161
159
 
162
160
  if ( !name ) {
163
161
  return $( [] );
@@ -169,7 +167,7 @@ $.widget( "ui.checkboxradio", [ $.ui.formResetMixin, {
169
167
 
170
168
  // Not inside a form, check all inputs that also are not inside a form
171
169
  group = $( nameSelector ).filter( function() {
172
- return $( this ).form().length === 0;
170
+ return $( this )._form().length === 0;
173
171
  } );
174
172
  }
175
173
 
@@ -288,4 +286,4 @@ $.widget( "ui.checkboxradio", [ $.ui.formResetMixin, {
288
286
 
289
287
  return $.ui.checkboxradio;
290
288
 
291
- } ) );
289
+ } );
@@ -1,7 +1,7 @@
1
1
  //= require jquery-ui/widget
2
2
 
3
3
  /*!
4
- * jQuery UI Controlgroup 1.12.1
4
+ * jQuery UI Controlgroup 1.13.0
5
5
  * http://jqueryui.com
6
6
  *
7
7
  * Copyright jQuery Foundation and other contributors
@@ -19,6 +19,8 @@
19
19
  //>>css.theme: ../../themes/base/theme.css
20
20
 
21
21
  ( function( factory ) {
22
+ "use strict";
23
+
22
24
  if ( typeof define === "function" && define.amd ) {
23
25
 
24
26
  // AMD. Register as an anonymous module.
@@ -31,11 +33,13 @@
31
33
  // Browser globals
32
34
  factory( jQuery );
33
35
  }
34
- }( function( $ ) {
36
+ } )( function( $ ) {
37
+ "use strict";
38
+
35
39
  var controlgroupCornerRegex = /ui-corner-([a-z]){2,6}/g;
36
40
 
37
41
  return $.widget( "ui.controlgroup", {
38
- version: "1.12.1",
42
+ version: "1.13.0",
39
43
  defaultElement: "<div>",
40
44
  options: {
41
45
  direction: "horizontal",
@@ -152,7 +156,7 @@ return $.widget( "ui.controlgroup", {
152
156
  } );
153
157
  } );
154
158
 
155
- this.childWidgets = $( $.unique( childWidgets ) );
159
+ this.childWidgets = $( $.uniqueSort( childWidgets ) );
156
160
  this._addClass( this.childWidgets, "ui-controlgroup-item" );
157
161
  },
158
162
 
@@ -236,7 +240,7 @@ return $.widget( "ui.controlgroup", {
236
240
  var result = {};
237
241
  $.each( classes, function( key ) {
238
242
  var current = instance.options.classes[ key ] || "";
239
- current = $.trim( current.replace( controlgroupCornerRegex, "" ) );
243
+ current = String.prototype.trim.call( current.replace( controlgroupCornerRegex, "" ) );
240
244
  result[ key ] = ( current + " " + classes[ key ] ).replace( /\s+/g, " " );
241
245
  } );
242
246
  return result;
@@ -297,4 +301,4 @@ return $.widget( "ui.controlgroup", {
297
301
  }
298
302
  }
299
303
  } );
300
- } ) );
304
+ } );