jquery-ui-rails 6.0.1 → 8.0.0

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.
Files changed (170) hide show
  1. checksums.yaml +5 -5
  2. data/History.md +11 -2
  3. data/README.md +12 -12
  4. data/Rakefile +8 -3
  5. data/VERSIONS.md +2 -0
  6. data/app/assets/images/jquery-ui/ui-icons_444444_256x240.png +0 -0
  7. data/app/assets/images/jquery-ui/ui-icons_555555_256x240.png +0 -0
  8. data/app/assets/images/jquery-ui/ui-icons_777620_256x240.png +0 -0
  9. data/app/assets/images/jquery-ui/ui-icons_777777_256x240.png +0 -0
  10. data/app/assets/images/jquery-ui/ui-icons_cc0000_256x240.png +0 -0
  11. data/app/assets/images/jquery-ui/ui-icons_ffffff_256x240.png +0 -0
  12. data/app/assets/javascripts/jquery-ui/data.js +16 -18
  13. data/app/assets/javascripts/jquery-ui/disable-selection.js +10 -7
  14. data/app/assets/javascripts/jquery-ui/effect.js +69 -752
  15. data/app/assets/javascripts/jquery-ui/effects/effect-blind.js +11 -8
  16. data/app/assets/javascripts/jquery-ui/effects/effect-bounce.js +11 -8
  17. data/app/assets/javascripts/jquery-ui/effects/effect-clip.js +11 -8
  18. data/app/assets/javascripts/jquery-ui/effects/effect-drop.js +11 -8
  19. data/app/assets/javascripts/jquery-ui/effects/effect-explode.js +13 -10
  20. data/app/assets/javascripts/jquery-ui/effects/effect-fade.js +11 -8
  21. data/app/assets/javascripts/jquery-ui/effects/effect-fold.js +11 -8
  22. data/app/assets/javascripts/jquery-ui/effects/effect-highlight.js +11 -8
  23. data/app/assets/javascripts/jquery-ui/effects/effect-puff.js +11 -8
  24. data/app/assets/javascripts/jquery-ui/effects/effect-pulsate.js +11 -8
  25. data/app/assets/javascripts/jquery-ui/effects/effect-scale.js +11 -8
  26. data/app/assets/javascripts/jquery-ui/effects/effect-shake.js +11 -8
  27. data/app/assets/javascripts/jquery-ui/effects/effect-size.js +13 -8
  28. data/app/assets/javascripts/jquery-ui/effects/effect-slide.js +11 -8
  29. data/app/assets/javascripts/jquery-ui/effects/effect-transfer.js +12 -9
  30. data/app/assets/javascripts/jquery-ui/focusable.js +13 -20
  31. data/app/assets/javascripts/jquery-ui/form-reset-mixin.js +11 -10
  32. data/app/assets/javascripts/jquery-ui/i18n/datepicker-af.js +8 -5
  33. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ar-DZ.js +8 -5
  34. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ar.js +7 -4
  35. data/app/assets/javascripts/jquery-ui/i18n/datepicker-az.js +14 -11
  36. data/app/assets/javascripts/jquery-ui/i18n/datepicker-be.js +14 -11
  37. data/app/assets/javascripts/jquery-ui/i18n/datepicker-bg.js +15 -12
  38. data/app/assets/javascripts/jquery-ui/i18n/datepicker-bs.js +14 -11
  39. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ca.js +12 -9
  40. data/app/assets/javascripts/jquery-ui/i18n/datepicker-cs.js +12 -9
  41. data/app/assets/javascripts/jquery-ui/i18n/datepicker-cy-GB.js +8 -5
  42. data/app/assets/javascripts/jquery-ui/i18n/datepicker-da.js +15 -12
  43. data/app/assets/javascripts/jquery-ui/i18n/datepicker-de-AT.js +41 -0
  44. data/app/assets/javascripts/jquery-ui/i18n/datepicker-de.js +14 -11
  45. data/app/assets/javascripts/jquery-ui/i18n/datepicker-el.js +13 -10
  46. data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-AU.js +8 -5
  47. data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-GB.js +8 -5
  48. data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-NZ.js +8 -5
  49. data/app/assets/javascripts/jquery-ui/i18n/datepicker-eo.js +14 -11
  50. data/app/assets/javascripts/jquery-ui/i18n/datepicker-es.js +14 -11
  51. data/app/assets/javascripts/jquery-ui/i18n/datepicker-et.js +8 -5
  52. data/app/assets/javascripts/jquery-ui/i18n/datepicker-eu.js +14 -11
  53. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fa.js +8 -5
  54. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fi.js +14 -11
  55. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fo.js +13 -10
  56. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr-CA.js +5 -2
  57. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr-CH.js +7 -4
  58. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr.js +6 -3
  59. data/app/assets/javascripts/jquery-ui/i18n/datepicker-gl.js +14 -11
  60. data/app/assets/javascripts/jquery-ui/i18n/datepicker-he.js +14 -11
  61. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hi.js +7 -4
  62. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hr.js +14 -11
  63. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hu.js +9 -6
  64. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hy.js +14 -11
  65. data/app/assets/javascripts/jquery-ui/i18n/datepicker-id.js +16 -12
  66. data/app/assets/javascripts/jquery-ui/i18n/datepicker-is.js +13 -10
  67. data/app/assets/javascripts/jquery-ui/i18n/datepicker-it-CH.js +14 -11
  68. data/app/assets/javascripts/jquery-ui/i18n/datepicker-it.js +14 -11
  69. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ja.js +14 -11
  70. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ka.js +11 -8
  71. data/app/assets/javascripts/jquery-ui/i18n/datepicker-kk.js +14 -11
  72. data/app/assets/javascripts/jquery-ui/i18n/datepicker-km.js +9 -6
  73. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ko.js +12 -9
  74. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ky.js +12 -9
  75. data/app/assets/javascripts/jquery-ui/i18n/datepicker-lb.js +8 -5
  76. data/app/assets/javascripts/jquery-ui/i18n/datepicker-lt.js +13 -10
  77. data/app/assets/javascripts/jquery-ui/i18n/datepicker-lv.js +11 -8
  78. data/app/assets/javascripts/jquery-ui/i18n/datepicker-mk.js +14 -11
  79. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ml.js +8 -5
  80. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ms.js +14 -11
  81. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nb.js +11 -8
  82. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nl-BE.js +7 -4
  83. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nl.js +8 -5
  84. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nn.js +11 -8
  85. data/app/assets/javascripts/jquery-ui/i18n/datepicker-no.js +11 -8
  86. data/app/assets/javascripts/jquery-ui/i18n/datepicker-pl.js +14 -11
  87. data/app/assets/javascripts/jquery-ui/i18n/datepicker-pt-BR.js +13 -10
  88. data/app/assets/javascripts/jquery-ui/i18n/datepicker-pt.js +12 -9
  89. data/app/assets/javascripts/jquery-ui/i18n/datepicker-rm.js +10 -7
  90. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ro.js +10 -7
  91. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ru.js +14 -11
  92. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sk.js +14 -11
  93. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sl.js +14 -11
  94. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sq.js +14 -11
  95. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sr-SR.js +14 -11
  96. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sr.js +14 -11
  97. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sv.js +14 -11
  98. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ta.js +10 -7
  99. data/app/assets/javascripts/jquery-ui/i18n/datepicker-th.js +14 -11
  100. data/app/assets/javascripts/jquery-ui/i18n/datepicker-tj.js +14 -11
  101. data/app/assets/javascripts/jquery-ui/i18n/datepicker-tr.js +14 -11
  102. data/app/assets/javascripts/jquery-ui/i18n/datepicker-uk.js +14 -11
  103. data/app/assets/javascripts/jquery-ui/i18n/datepicker-vi.js +7 -4
  104. data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-CN.js +14 -11
  105. data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-HK.js +14 -11
  106. data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-TW.js +15 -12
  107. data/app/assets/javascripts/jquery-ui/jquery-patch.js +58 -0
  108. data/app/assets/javascripts/jquery-ui/jquery-var-for-color.js +24 -0
  109. data/app/assets/javascripts/jquery-ui/keycode.js +11 -7
  110. data/app/assets/javascripts/jquery-ui/labels.js +18 -13
  111. data/app/assets/javascripts/jquery-ui/plugin.js +5 -2
  112. data/app/assets/javascripts/jquery-ui/position.js +30 -17
  113. data/app/assets/javascripts/jquery-ui/scroll-parent.js +10 -7
  114. data/app/assets/javascripts/jquery-ui/tabbable.js +11 -8
  115. data/app/assets/javascripts/jquery-ui/unique-id.js +10 -7
  116. data/app/assets/javascripts/jquery-ui/vendor/jquery-color/jquery.color.js +691 -0
  117. data/app/assets/javascripts/jquery-ui/version.js +6 -3
  118. data/app/assets/javascripts/jquery-ui/widget.js +56 -30
  119. data/app/assets/javascripts/jquery-ui/widgets/accordion.js +32 -23
  120. data/app/assets/javascripts/jquery-ui/widgets/autocomplete.js +31 -74
  121. data/app/assets/javascripts/jquery-ui/widgets/button.js +91 -28
  122. data/app/assets/javascripts/jquery-ui/widgets/checkboxradio.js +27 -24
  123. data/app/assets/javascripts/jquery-ui/widgets/controlgroup.js +15 -11
  124. data/app/assets/javascripts/jquery-ui/widgets/datepicker.js +185 -68
  125. data/app/assets/javascripts/jquery-ui/widgets/dialog.js +57 -54
  126. data/app/assets/javascripts/jquery-ui/widgets/draggable.js +30 -25
  127. data/app/assets/javascripts/jquery-ui/widgets/droppable.js +25 -19
  128. data/app/assets/javascripts/jquery-ui/widgets/menu.js +90 -52
  129. data/app/assets/javascripts/jquery-ui/widgets/mouse.js +36 -40
  130. data/app/assets/javascripts/jquery-ui/widgets/progressbar.js +14 -11
  131. data/app/assets/javascripts/jquery-ui/widgets/resizable.js +116 -42
  132. data/app/assets/javascripts/jquery-ui/widgets/selectable.js +18 -11
  133. data/app/assets/javascripts/jquery-ui/widgets/selectmenu.js +30 -52
  134. data/app/assets/javascripts/jquery-ui/widgets/slider.js +15 -12
  135. data/app/assets/javascripts/jquery-ui/widgets/sortable.js +193 -140
  136. data/app/assets/javascripts/jquery-ui/widgets/spinner.js +28 -45
  137. data/app/assets/javascripts/jquery-ui/widgets/tabs.js +32 -66
  138. data/app/assets/javascripts/jquery-ui/widgets/tooltip.js +38 -36
  139. data/app/assets/javascripts/jquery-ui.js +3 -7
  140. data/app/assets/stylesheets/jquery-ui/accordion.css +5 -5
  141. data/app/assets/stylesheets/jquery-ui/all.css +5 -5
  142. data/app/assets/stylesheets/jquery-ui/autocomplete.css +5 -5
  143. data/app/assets/stylesheets/jquery-ui/base.css +5 -5
  144. data/app/assets/stylesheets/jquery-ui/button.css +6 -11
  145. data/app/assets/stylesheets/jquery-ui/checkboxradio.css +5 -5
  146. data/app/assets/stylesheets/jquery-ui/controlgroup.css +5 -8
  147. data/app/assets/stylesheets/jquery-ui/core.css +5 -9
  148. data/app/assets/stylesheets/jquery-ui/datepicker.css +5 -5
  149. data/app/assets/stylesheets/jquery-ui/dialog.css +5 -5
  150. data/app/assets/stylesheets/jquery-ui/draggable.css +4 -5
  151. data/app/assets/stylesheets/jquery-ui/menu.css +5 -7
  152. data/app/assets/stylesheets/jquery-ui/progressbar.css +5 -6
  153. data/app/assets/stylesheets/jquery-ui/resizable.css +4 -5
  154. data/app/assets/stylesheets/jquery-ui/selectable.css +4 -5
  155. data/app/assets/stylesheets/jquery-ui/selectmenu.css +5 -5
  156. data/app/assets/stylesheets/jquery-ui/slider.css +6 -13
  157. data/app/assets/stylesheets/jquery-ui/sortable.css +4 -5
  158. data/app/assets/stylesheets/jquery-ui/spinner.css +5 -5
  159. data/app/assets/stylesheets/jquery-ui/tabs.css +5 -5
  160. data/app/assets/stylesheets/jquery-ui/theme.css.erb +10 -14
  161. data/app/assets/stylesheets/jquery-ui/tooltip.css +5 -5
  162. data/lib/jquery/ui/rails/version.rb +2 -2
  163. metadata +11 -15
  164. data/app/assets/javascripts/jquery-ui/core.js +0 -15
  165. data/app/assets/javascripts/jquery-ui/escape-selector.js +0 -23
  166. data/app/assets/javascripts/jquery-ui/form.js +0 -22
  167. data/app/assets/javascripts/jquery-ui/ie.js +0 -17
  168. data/app/assets/javascripts/jquery-ui/jquery-1-7.js +0 -91
  169. data/app/assets/javascripts/jquery-ui/safe-active-element.js +0 -42
  170. data/app/assets/javascripts/jquery-ui/safe-blur.js +0 -23
@@ -5,24 +5,26 @@
5
5
  //= require jquery-ui/widget
6
6
 
7
7
  /*!
8
- * jQuery UI Resizable 1.12.1
9
- * http://jqueryui.com
8
+ * jQuery UI Resizable 1.14.1
9
+ * https://jqueryui.com
10
10
  *
11
- * Copyright jQuery Foundation and other contributors
11
+ * Copyright OpenJS Foundation and other contributors
12
12
  * Released under the MIT license.
13
- * http://jquery.org/license
13
+ * https://jquery.org/license
14
14
  */
15
15
 
16
16
  //>>label: Resizable
17
17
  //>>group: Interactions
18
18
  //>>description: Enables resize functionality for any element.
19
- //>>docs: http://api.jqueryui.com/resizable/
20
- //>>demos: http://jqueryui.com/resizable/
19
+ //>>docs: https://api.jqueryui.com/resizable/
20
+ //>>demos: https://jqueryui.com/resizable/
21
21
  //>>css.structure: ../../themes/base/core.css
22
22
  //>>css.structure: ../../themes/base/resizable.css
23
23
  //>>css.theme: ../../themes/base/theme.css
24
24
 
25
25
  ( function( factory ) {
26
+ "use strict";
27
+
26
28
  if ( typeof define === "function" && define.amd ) {
27
29
 
28
30
  // 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
  $.widget( "ui.resizable", $.ui.mouse, {
45
- version: "1.12.1",
48
+ version: "1.14.1",
46
49
  widgetEventPrefix: "resize",
47
50
  options: {
48
51
  alsoResize: false,
@@ -83,12 +86,18 @@ $.widget( "ui.resizable", $.ui.mouse, {
83
86
 
84
87
  _hasScroll: function( el, a ) {
85
88
 
86
- if ( $( el ).css( "overflow" ) === "hidden" ) {
89
+ var scroll,
90
+ has = false,
91
+ overflow = $( el ).css( "overflow" );
92
+
93
+ if ( overflow === "hidden" ) {
87
94
  return false;
88
95
  }
96
+ if ( overflow === "scroll" ) {
97
+ return true;
98
+ }
89
99
 
90
- var scroll = ( a && a === "left" ) ? "scrollLeft" : "scrollTop",
91
- has = false;
100
+ scroll = ( a && a === "left" ) ? "scrollLeft" : "scrollTop";
92
101
 
93
102
  if ( el[ scroll ] > 0 ) {
94
103
  return true;
@@ -97,9 +106,15 @@ $.widget( "ui.resizable", $.ui.mouse, {
97
106
  // TODO: determine which cases actually cause this to happen
98
107
  // if the element doesn't have the scroll set, see if it's possible to
99
108
  // set the scroll
100
- el[ scroll ] = 1;
101
- has = ( el[ scroll ] > 0 );
102
- el[ scroll ] = 0;
109
+ try {
110
+ el[ scroll ] = 1;
111
+ has = ( el[ scroll ] > 0 );
112
+ el[ scroll ] = 0;
113
+ } catch ( e ) {
114
+
115
+ // `el` might be a string, then setting `scroll` will throw
116
+ // an error in strict mode; ignore it.
117
+ }
103
118
  return has;
104
119
  },
105
120
 
@@ -122,7 +137,8 @@ $.widget( "ui.resizable", $.ui.mouse, {
122
137
  if ( this.element[ 0 ].nodeName.match( /^(canvas|textarea|input|select|button|img)$/i ) ) {
123
138
 
124
139
  this.element.wrap(
125
- $( "<div class='ui-wrapper' style='overflow: hidden;'></div>" ).css( {
140
+ $( "<div class='ui-wrapper'></div>" ).css( {
141
+ overflow: "hidden",
126
142
  position: this.element.css( "position" ),
127
143
  width: this.element.outerWidth(),
128
144
  height: this.element.outerHeight(),
@@ -145,9 +161,8 @@ $.widget( "ui.resizable", $.ui.mouse, {
145
161
  };
146
162
 
147
163
  this.element.css( margins );
148
- this.originalElement.css( "margin", 0 );
149
164
 
150
- // support: Safari
165
+ // Support: Safari
151
166
  // Prevent Safari textarea resize
152
167
  this.originalResizeStyle = this.originalElement.css( "resize" );
153
168
  this.originalElement.css( "resize", "none" );
@@ -158,10 +173,6 @@ $.widget( "ui.resizable", $.ui.mouse, {
158
173
  display: "block"
159
174
  } ) );
160
175
 
161
- // Support: IE9
162
- // avoid IE jump (hard set the margin)
163
- this.originalElement.css( margins );
164
-
165
176
  this._proportionallyResize();
166
177
  }
167
178
 
@@ -193,15 +204,14 @@ $.widget( "ui.resizable", $.ui.mouse, {
193
204
  _destroy: function() {
194
205
 
195
206
  this._mouseDestroy();
207
+ this._addedHandles.remove();
196
208
 
197
209
  var wrapper,
198
210
  _destroy = function( exp ) {
199
211
  $( exp )
200
212
  .removeData( "resizable" )
201
213
  .removeData( "ui-resizable" )
202
- .off( ".resizable" )
203
- .find( ".ui-resizable-handle" )
204
- .remove();
214
+ .off( ".resizable" );
205
215
  };
206
216
 
207
217
  // TODO: Unwrap at same DOM position
@@ -232,6 +242,9 @@ $.widget( "ui.resizable", $.ui.mouse, {
232
242
  this._removeHandles();
233
243
  this._setupHandles();
234
244
  break;
245
+ case "aspectRatio":
246
+ this._aspectRatio = !!value;
247
+ break;
235
248
  default:
236
249
  break;
237
250
  }
@@ -253,6 +266,7 @@ $.widget( "ui.resizable", $.ui.mouse, {
253
266
  } );
254
267
 
255
268
  this._handles = $();
269
+ this._addedHandles = $();
256
270
  if ( this.handles.constructor === String ) {
257
271
 
258
272
  if ( this.handles === "all" ) {
@@ -264,7 +278,7 @@ $.widget( "ui.resizable", $.ui.mouse, {
264
278
 
265
279
  for ( i = 0; i < n.length; i++ ) {
266
280
 
267
- handle = $.trim( n[ i ] );
281
+ handle = String.prototype.trim.call( n[ i ] );
268
282
  hname = "ui-resizable-" + handle;
269
283
  axis = $( "<div>" );
270
284
  this._addClass( axis, "ui-resizable-handle " + hname );
@@ -272,7 +286,10 @@ $.widget( "ui.resizable", $.ui.mouse, {
272
286
  axis.css( { zIndex: o.zIndex } );
273
287
 
274
288
  this.handles[ handle ] = ".ui-resizable-" + handle;
275
- this.element.append( axis );
289
+ if ( !this.element.children( this.handles[ handle ] ).length ) {
290
+ this.element.append( axis );
291
+ this._addedHandles = this._addedHandles.add( axis );
292
+ }
276
293
  }
277
294
 
278
295
  }
@@ -338,7 +355,7 @@ $.widget( "ui.resizable", $.ui.mouse, {
338
355
  },
339
356
 
340
357
  _removeHandles: function() {
341
- this._handles.remove();
358
+ this._addedHandles.remove();
342
359
  },
343
360
 
344
361
  _mouseCapture: function( event ) {
@@ -357,7 +374,7 @@ $.widget( "ui.resizable", $.ui.mouse, {
357
374
 
358
375
  _mouseStart: function( event ) {
359
376
 
360
- var curleft, curtop, cursor,
377
+ var curleft, curtop, cursor, calculatedSize,
361
378
  o = this.options,
362
379
  el = this.element;
363
380
 
@@ -376,20 +393,24 @@ $.widget( "ui.resizable", $.ui.mouse, {
376
393
  this.offset = this.helper.offset();
377
394
  this.position = { left: curleft, top: curtop };
378
395
 
396
+ if ( !this._helper ) {
397
+ calculatedSize = this._calculateAdjustedElementDimensions( el );
398
+ }
399
+
379
400
  this.size = this._helper ? {
380
401
  width: this.helper.width(),
381
402
  height: this.helper.height()
382
403
  } : {
383
- width: el.width(),
384
- height: el.height()
404
+ width: calculatedSize.width,
405
+ height: calculatedSize.height
385
406
  };
386
407
 
387
408
  this.originalSize = this._helper ? {
388
409
  width: el.outerWidth(),
389
410
  height: el.outerHeight()
390
411
  } : {
391
- width: el.width(),
392
- height: el.height()
412
+ width: calculatedSize.width,
413
+ height: calculatedSize.height
393
414
  };
394
415
 
395
416
  this.sizeDiff = {
@@ -523,15 +544,18 @@ $.widget( "ui.resizable", $.ui.mouse, {
523
544
  if ( this.position.left !== this.prevPosition.left ) {
524
545
  props.left = this.position.left + "px";
525
546
  }
547
+
548
+ this.helper.css( props );
549
+
526
550
  if ( this.size.width !== this.prevSize.width ) {
527
551
  props.width = this.size.width + "px";
552
+ this.helper.width( props.width );
528
553
  }
529
554
  if ( this.size.height !== this.prevSize.height ) {
530
555
  props.height = this.size.height + "px";
556
+ this.helper.height( props.height );
531
557
  }
532
558
 
533
- this.helper.css( props );
534
-
535
559
  return props;
536
560
  },
537
561
 
@@ -682,6 +706,52 @@ $.widget( "ui.resizable", $.ui.mouse, {
682
706
  };
683
707
  },
684
708
 
709
+ _calculateAdjustedElementDimensions: function( element ) {
710
+ var elWidth, elHeight, paddingBorder,
711
+ ce = element.get( 0 );
712
+
713
+ if ( element.css( "box-sizing" ) !== "content-box" ||
714
+ ( !this._hasScroll( ce ) && !this._hasScroll( ce, "left" ) ) ) {
715
+ return {
716
+ height: parseFloat( element.css( "height" ) ),
717
+ width: parseFloat( element.css( "width" ) )
718
+ };
719
+ }
720
+
721
+ // Check if CSS inline styles are set and use those (usually from previous resizes)
722
+ elWidth = parseFloat( ce.style.width );
723
+ elHeight = parseFloat( ce.style.height );
724
+
725
+ paddingBorder = this._getPaddingPlusBorderDimensions( element );
726
+ elWidth = isNaN( elWidth ) ?
727
+ this._getElementTheoreticalSize( element, paddingBorder, "width" ) :
728
+ elWidth;
729
+ elHeight = isNaN( elHeight ) ?
730
+ this._getElementTheoreticalSize( element, paddingBorder, "height" ) :
731
+ elHeight;
732
+
733
+ return {
734
+ height: elHeight,
735
+ width: elWidth
736
+ };
737
+ },
738
+
739
+ _getElementTheoreticalSize: function( element, extraSize, dimension ) {
740
+
741
+ // offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border
742
+ var size = Math.max( 0, Math.ceil(
743
+ element.get( 0 )[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] -
744
+ extraSize[ dimension ] -
745
+ 0.5
746
+
747
+ // If offsetWidth/offsetHeight is unknown, then we can't determine theoretical size.
748
+ // Use an explicit zero to avoid NaN.
749
+ // See https://github.com/jquery/jquery/issues/3964
750
+ ) ) || 0;
751
+
752
+ return size;
753
+ },
754
+
685
755
  _proportionallyResize: function() {
686
756
 
687
757
  if ( !this._proportionallyResizeElements.length ) {
@@ -718,7 +788,7 @@ $.widget( "ui.resizable", $.ui.mouse, {
718
788
 
719
789
  if ( this._helper ) {
720
790
 
721
- this.helper = this.helper || $( "<div style='overflow:hidden;'></div>" );
791
+ this.helper = this.helper || $( "<div></div>" ).css( { overflow: "hidden" } );
722
792
 
723
793
  this._addClass( this.helper, this._helper );
724
794
  this.helper.css( {
@@ -775,7 +845,9 @@ $.widget( "ui.resizable", $.ui.mouse, {
775
845
 
776
846
  _propagate: function( n, event ) {
777
847
  $.ui.plugin.call( this, n, [ event, this.ui() ] );
778
- ( n !== "resize" && this._trigger( n, event, this.ui() ) );
848
+ if ( n !== "resize" ) {
849
+ this._trigger( n, event, this.ui() );
850
+ }
779
851
  },
780
852
 
781
853
  plugins: {},
@@ -896,8 +968,8 @@ $.ui.plugin.add( "resizable", "containment", {
896
968
  co = that.containerOffset;
897
969
  ch = that.containerSize.height;
898
970
  cw = that.containerSize.width;
899
- width = ( that._hasScroll ( ce, "left" ) ? ce.scrollWidth : cw );
900
- height = ( that._hasScroll ( ce ) ? ce.scrollHeight : ch ) ;
971
+ width = ( that._hasScroll( ce, "left" ) ? ce.scrollWidth : cw );
972
+ height = ( that._hasScroll( ce ) ? ce.scrollHeight : ch );
901
973
 
902
974
  that.parentData = {
903
975
  element: ce,
@@ -1034,9 +1106,11 @@ $.ui.plugin.add( "resizable", "alsoResize", {
1034
1106
  o = that.options;
1035
1107
 
1036
1108
  $( o.alsoResize ).each( function() {
1037
- var el = $( this );
1109
+ var el = $( this ),
1110
+ elSize = that._calculateAdjustedElementDimensions( el );
1111
+
1038
1112
  el.data( "ui-resizable-alsoresize", {
1039
- width: parseFloat( el.width() ), height: parseFloat( el.height() ),
1113
+ width: elSize.width, height: elSize.height,
1040
1114
  left: parseFloat( el.css( "left" ) ), top: parseFloat( el.css( "top" ) )
1041
1115
  } );
1042
1116
  } );
@@ -1098,7 +1172,7 @@ $.ui.plugin.add( "resizable", "ghost", {
1098
1172
 
1099
1173
  // DEPRECATED
1100
1174
  // TODO: remove after 1.12
1101
- if ( $.uiBackCompat !== false && typeof that.options.ghost === "string" ) {
1175
+ if ( $.uiBackCompat === true && typeof that.options.ghost === "string" ) {
1102
1176
 
1103
1177
  // Ghost option
1104
1178
  that.ghost.addClass( this.options.ghost );
@@ -1204,4 +1278,4 @@ $.ui.plugin.add( "resizable", "grid", {
1204
1278
 
1205
1279
  return $.ui.resizable;
1206
1280
 
1207
- } ) );
1281
+ } );
@@ -3,22 +3,24 @@
3
3
  //= require jquery-ui/widget
4
4
 
5
5
  /*!
6
- * jQuery UI Selectable 1.12.1
7
- * http://jqueryui.com
6
+ * jQuery UI Selectable 1.14.1
7
+ * https://jqueryui.com
8
8
  *
9
- * Copyright jQuery Foundation and other contributors
9
+ * Copyright OpenJS Foundation and other contributors
10
10
  * Released under the MIT license.
11
- * http://jquery.org/license
11
+ * https://jquery.org/license
12
12
  */
13
13
 
14
14
  //>>label: Selectable
15
15
  //>>group: Interactions
16
16
  //>>description: Allows groups of elements to be selected with the mouse.
17
- //>>docs: http://api.jqueryui.com/selectable/
18
- //>>demos: http://jqueryui.com/selectable/
17
+ //>>docs: https://api.jqueryui.com/selectable/
18
+ //>>demos: https://jqueryui.com/selectable/
19
19
  //>>css.structure: ../../themes/base/selectable.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.
@@ -33,10 +35,11 @@
33
35
  // Browser globals
34
36
  factory( jQuery );
35
37
  }
36
- }( function( $ ) {
38
+ } )( function( $ ) {
39
+ "use strict";
37
40
 
38
41
  return $.widget( "ui.selectable", $.ui.mouse, {
39
- version: "1.12.1",
42
+ version: "1.14.1",
40
43
  options: {
41
44
  appendTo: "body",
42
45
  autoRefresh: true,
@@ -187,8 +190,12 @@ return $.widget( "ui.selectable", $.ui.mouse, {
187
190
  x2 = event.pageX,
188
191
  y2 = event.pageY;
189
192
 
190
- if ( x1 > x2 ) { tmp = x2; x2 = x1; x1 = tmp; }
191
- if ( y1 > y2 ) { tmp = y2; y2 = y1; y1 = tmp; }
193
+ if ( x1 > x2 ) {
194
+ tmp = x2; x2 = x1; x1 = tmp;
195
+ }
196
+ if ( y1 > y2 ) {
197
+ tmp = y2; y2 = y1; y1 = tmp;
198
+ }
192
199
  this.helper.css( { left: x1, top: y1, width: x2 - x1, height: y2 - y1 } );
193
200
 
194
201
  this.selectees.each( function() {
@@ -311,4 +318,4 @@ return $.widget( "ui.selectable", $.ui.mouse, {
311
318
 
312
319
  } );
313
320
 
314
- } ) );
321
+ } );
@@ -1,5 +1,4 @@
1
1
  //= require jquery-ui/widgets/menu
2
- //= require jquery-ui/escape-selector
3
2
  //= require jquery-ui/form-reset-mixin
4
3
  //= require jquery-ui/keycode
5
4
  //= require jquery-ui/labels
@@ -9,33 +8,34 @@
9
8
  //= require jquery-ui/widget
10
9
 
11
10
  /*!
12
- * jQuery UI Selectmenu 1.12.1
13
- * http://jqueryui.com
11
+ * jQuery UI Selectmenu 1.14.1
12
+ * https://jqueryui.com
14
13
  *
15
- * Copyright jQuery Foundation and other contributors
14
+ * Copyright OpenJS Foundation and other contributors
16
15
  * Released under the MIT license.
17
- * http://jquery.org/license
16
+ * https://jquery.org/license
18
17
  */
19
18
 
20
19
  //>>label: Selectmenu
21
20
  //>>group: Widgets
22
- // jscs:disable maximumLineLength
21
+ /* eslint-disable max-len */
23
22
  //>>description: Duplicates and extends the functionality of a native HTML select element, allowing it to be customizable in behavior and appearance far beyond the limitations of a native select.
24
- // jscs:enable maximumLineLength
25
- //>>docs: http://api.jqueryui.com/selectmenu/
26
- //>>demos: http://jqueryui.com/selectmenu/
23
+ /* eslint-enable max-len */
24
+ //>>docs: https://api.jqueryui.com/selectmenu/
25
+ //>>demos: https://jqueryui.com/selectmenu/
27
26
  //>>css.structure: ../../themes/base/core.css
28
27
  //>>css.structure: ../../themes/base/selectmenu.css, ../../themes/base/button.css
29
28
  //>>css.theme: ../../themes/base/theme.css
30
29
 
31
30
  ( function( factory ) {
31
+ "use strict";
32
+
32
33
  if ( typeof define === "function" && define.amd ) {
33
34
 
34
35
  // AMD. Register as an anonymous module.
35
36
  define( [
36
37
  "jquery",
37
38
  "./menu",
38
- "../escape-selector",
39
39
  "../form-reset-mixin",
40
40
  "../keycode",
41
41
  "../labels",
@@ -49,10 +49,11 @@
49
49
  // Browser globals
50
50
  factory( jQuery );
51
51
  }
52
- }( function( $ ) {
52
+ } )( function( $ ) {
53
+ "use strict";
53
54
 
54
55
  return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
55
- version: "1.12.1",
56
+ version: "1.14.1",
56
57
  defaultElement: "<select>",
57
58
  options: {
58
59
  appendTo: null,
@@ -107,7 +108,7 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
107
108
  this.labels = this.element.labels().attr( "for", this.ids.button );
108
109
  this._on( this.labels, {
109
110
  click: function( event ) {
110
- this.button.focus();
111
+ this.button.trigger( "focus" );
111
112
  event.preventDefault();
112
113
  }
113
114
  } );
@@ -175,12 +176,6 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
175
176
  role: "listbox",
176
177
  select: function( event, ui ) {
177
178
  event.preventDefault();
178
-
179
- // Support: IE8
180
- // If the item was selected via a click, the text selection
181
- // will be destroyed in IE
182
- that._setSelection();
183
-
184
179
  that._select( ui.item.data( "ui-selectmenu-item" ), event );
185
180
  },
186
181
  focus: function( event, ui ) {
@@ -362,7 +357,12 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
362
357
  if ( item.disabled ) {
363
358
  this._addClass( li, null, "ui-state-disabled" );
364
359
  }
365
- this._setText( wrapper, item.label );
360
+
361
+ if ( item.hidden ) {
362
+ li.prop( "hidden", true );
363
+ } else {
364
+ this._setText( wrapper, item.label );
365
+ }
366
366
 
367
367
  return li.append( wrapper ).appendTo( ul );
368
368
  },
@@ -412,20 +412,9 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
412
412
  return;
413
413
  }
414
414
 
415
- if ( window.getSelection ) {
416
- selection = window.getSelection();
417
- selection.removeAllRanges();
418
- selection.addRange( this.range );
419
-
420
- // Support: IE8
421
- } else {
422
- this.range.select();
423
- }
424
-
425
- // Support: IE
426
- // Setting the text selection kills the button focus in IE, but
427
- // restoring the focus doesn't kill the selection.
428
- this.button.focus();
415
+ selection = window.getSelection();
416
+ selection.removeAllRanges();
417
+ selection.addRange( this.range );
429
418
  },
430
419
 
431
420
  _documentClick: {
@@ -435,7 +424,7 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
435
424
  }
436
425
 
437
426
  if ( !$( event.target ).closest( ".ui-selectmenu-menu, #" +
438
- $.ui.escapeSelector( this.ids.button ) ).length ) {
427
+ CSS.escape( this.ids.button ) ).length ) {
439
428
  this.close( event );
440
429
  }
441
430
  }
@@ -445,17 +434,9 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
445
434
 
446
435
  // Prevent text selection from being reset when interacting with the selectmenu (#10144)
447
436
  mousedown: function() {
448
- var selection;
449
-
450
- if ( window.getSelection ) {
451
- selection = window.getSelection();
452
- if ( selection.rangeCount ) {
453
- this.range = selection.getRangeAt( 0 );
454
- }
455
-
456
- // Support: IE8
457
- } else {
458
- this.range = document.selection.createRange();
437
+ var selection = window.getSelection();
438
+ if ( selection.rangeCount ) {
439
+ this.range = selection.getRangeAt( 0 );
459
440
  }
460
441
  },
461
442
 
@@ -646,11 +627,7 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
646
627
  _resizeMenu: function() {
647
628
  this.menu.outerWidth( Math.max(
648
629
  this.button.outerWidth(),
649
-
650
- // Support: IE10
651
- // IE10 wraps long text (possibly a rounding bug)
652
- // so we add 1px to avoid the wrapping
653
- this.menu.width( "" ).outerWidth() + 1
630
+ this.menu.width( "" ).outerWidth()
654
631
  ) );
655
632
  },
656
633
 
@@ -679,6 +656,7 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
679
656
  index: index,
680
657
  value: option.val(),
681
658
  label: option.text(),
659
+ hidden: optgroup.prop( "hidden" ) || option.prop( "hidden" ),
682
660
  optgroup: optgroup.attr( "label" ) || "",
683
661
  disabled: optgroup.prop( "disabled" ) || option.prop( "disabled" )
684
662
  };
@@ -694,4 +672,4 @@ return $.widget( "ui.selectmenu", [ $.ui.formResetMixin, {
694
672
  }
695
673
  } ] );
696
674
 
697
- } ) );
675
+ } );
@@ -4,24 +4,26 @@
4
4
  //= require jquery-ui/widget
5
5
 
6
6
  /*!
7
- * jQuery UI Slider 1.12.1
8
- * http://jqueryui.com
7
+ * jQuery UI Slider 1.14.1
8
+ * https://jqueryui.com
9
9
  *
10
- * Copyright jQuery Foundation and other contributors
10
+ * Copyright OpenJS Foundation and other contributors
11
11
  * Released under the MIT license.
12
- * http://jquery.org/license
12
+ * https://jquery.org/license
13
13
  */
14
14
 
15
15
  //>>label: Slider
16
16
  //>>group: Widgets
17
17
  //>>description: Displays a flexible slider with ranges and accessibility via keyboard.
18
- //>>docs: http://api.jqueryui.com/slider/
19
- //>>demos: http://jqueryui.com/slider/
18
+ //>>docs: https://api.jqueryui.com/slider/
19
+ //>>demos: https://jqueryui.com/slider/
20
20
  //>>css.structure: ../../themes/base/core.css
21
21
  //>>css.structure: ../../themes/base/slider.css
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.
@@ -37,10 +39,11 @@
37
39
  // Browser globals
38
40
  factory( jQuery );
39
41
  }
40
- }( function( $ ) {
42
+ } )( function( $ ) {
43
+ "use strict";
41
44
 
42
45
  return $.widget( "ui.slider", $.ui.mouse, {
43
- version: "1.12.1",
46
+ version: "1.14.1",
44
47
  widgetEventPrefix: "slide",
45
48
 
46
49
  options: {
@@ -137,7 +140,7 @@ return $.widget( "ui.slider", $.ui.mouse, {
137
140
  options.values = [ this._valueMin(), this._valueMin() ];
138
141
  } else if ( options.values.length && options.values.length !== 2 ) {
139
142
  options.values = [ options.values[ 0 ], options.values[ 0 ] ];
140
- } else if ( $.isArray( options.values ) ) {
143
+ } else if ( Array.isArray( options.values ) ) {
141
144
  options.values = options.values.slice( 0 );
142
145
  }
143
146
  }
@@ -400,7 +403,7 @@ return $.widget( "ui.slider", $.ui.mouse, {
400
403
  }
401
404
 
402
405
  if ( arguments.length ) {
403
- if ( $.isArray( arguments[ 0 ] ) ) {
406
+ if ( Array.isArray( arguments[ 0 ] ) ) {
404
407
  vals = this.options.values;
405
408
  newValues = arguments[ 0 ];
406
409
  for ( i = 0; i < vals.length; i += 1 ) {
@@ -434,7 +437,7 @@ return $.widget( "ui.slider", $.ui.mouse, {
434
437
  }
435
438
  }
436
439
 
437
- if ( $.isArray( this.options.values ) ) {
440
+ if ( Array.isArray( this.options.values ) ) {
438
441
  valsLength = this.options.values.length;
439
442
  }
440
443
 
@@ -754,4 +757,4 @@ return $.widget( "ui.slider", $.ui.mouse, {
754
757
  }
755
758
  } );
756
759
 
757
- } ) );
760
+ } );