jquery-ui-rails 4.2.0 → 4.2.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of jquery-ui-rails might be problematic. Click here for more details.

Files changed (63) hide show
  1. data/History.md +4 -0
  2. data/VERSIONS.md +1 -0
  3. data/app/assets/javascripts/jquery.ui.accordion.js +13 -15
  4. data/app/assets/javascripts/jquery.ui.autocomplete.js +12 -16
  5. data/app/assets/javascripts/jquery.ui.button.js +21 -45
  6. data/app/assets/javascripts/jquery.ui.core.js +3 -3
  7. data/app/assets/javascripts/jquery.ui.datepicker-es.js +7 -7
  8. data/app/assets/javascripts/jquery.ui.datepicker-fi.js +1 -1
  9. data/app/assets/javascripts/jquery.ui.datepicker-fr-CH.js +7 -7
  10. data/app/assets/javascripts/jquery.ui.datepicker-fr.js +6 -6
  11. data/app/assets/javascripts/jquery.ui.datepicker-is.js +1 -1
  12. data/app/assets/javascripts/jquery.ui.datepicker-lt.js +2 -2
  13. data/app/assets/javascripts/jquery.ui.datepicker-lv.js +4 -4
  14. data/app/assets/javascripts/jquery.ui.datepicker-pt.js +1 -1
  15. data/app/assets/javascripts/jquery.ui.datepicker.js +4 -4
  16. data/app/assets/javascripts/jquery.ui.dialog.js +25 -10
  17. data/app/assets/javascripts/jquery.ui.draggable.js +3 -3
  18. data/app/assets/javascripts/jquery.ui.droppable.js +31 -14
  19. data/app/assets/javascripts/jquery.ui.effect-blind.js +2 -2
  20. data/app/assets/javascripts/jquery.ui.effect-bounce.js +2 -2
  21. data/app/assets/javascripts/jquery.ui.effect-clip.js +2 -2
  22. data/app/assets/javascripts/jquery.ui.effect-drop.js +2 -2
  23. data/app/assets/javascripts/jquery.ui.effect-explode.js +2 -2
  24. data/app/assets/javascripts/jquery.ui.effect-fade.js +2 -2
  25. data/app/assets/javascripts/jquery.ui.effect-fold.js +2 -2
  26. data/app/assets/javascripts/jquery.ui.effect-highlight.js +2 -2
  27. data/app/assets/javascripts/jquery.ui.effect-pulsate.js +2 -2
  28. data/app/assets/javascripts/jquery.ui.effect-scale.js +2 -2
  29. data/app/assets/javascripts/jquery.ui.effect-shake.js +2 -2
  30. data/app/assets/javascripts/jquery.ui.effect-slide.js +2 -2
  31. data/app/assets/javascripts/jquery.ui.effect-transfer.js +2 -2
  32. data/app/assets/javascripts/jquery.ui.effect.js +3 -3
  33. data/app/assets/javascripts/jquery.ui.menu.js +14 -8
  34. data/app/assets/javascripts/jquery.ui.mouse.js +3 -3
  35. data/app/assets/javascripts/jquery.ui.position.js +11 -7
  36. data/app/assets/javascripts/jquery.ui.progressbar.js +3 -3
  37. data/app/assets/javascripts/jquery.ui.resizable.js +20 -10
  38. data/app/assets/javascripts/jquery.ui.selectable.js +3 -3
  39. data/app/assets/javascripts/jquery.ui.slider.js +11 -7
  40. data/app/assets/javascripts/jquery.ui.sortable.js +18 -14
  41. data/app/assets/javascripts/jquery.ui.spinner.js +9 -5
  42. data/app/assets/javascripts/jquery.ui.tabs.js +8 -5
  43. data/app/assets/javascripts/jquery.ui.tooltip.js +3 -3
  44. data/app/assets/javascripts/jquery.ui.widget.js +5 -5
  45. data/app/assets/stylesheets/jquery.ui.accordion.css.erb +3 -3
  46. data/app/assets/stylesheets/jquery.ui.all.css.erb +3 -3
  47. data/app/assets/stylesheets/jquery.ui.autocomplete.css.erb +3 -3
  48. data/app/assets/stylesheets/jquery.ui.base.css.erb +3 -3
  49. data/app/assets/stylesheets/jquery.ui.button.css.erb +3 -3
  50. data/app/assets/stylesheets/jquery.ui.core.css.erb +3 -3
  51. data/app/assets/stylesheets/jquery.ui.datepicker.css.erb +3 -6
  52. data/app/assets/stylesheets/jquery.ui.dialog.css.erb +5 -4
  53. data/app/assets/stylesheets/jquery.ui.menu.css.erb +3 -3
  54. data/app/assets/stylesheets/jquery.ui.progressbar.css.erb +3 -3
  55. data/app/assets/stylesheets/jquery.ui.resizable.css.erb +2 -4
  56. data/app/assets/stylesheets/jquery.ui.selectable.css.erb +2 -4
  57. data/app/assets/stylesheets/jquery.ui.slider.css.erb +3 -3
  58. data/app/assets/stylesheets/jquery.ui.spinner.css.erb +5 -5
  59. data/app/assets/stylesheets/jquery.ui.tabs.css.erb +8 -9
  60. data/app/assets/stylesheets/jquery.ui.theme.css.erb +8 -4
  61. data/app/assets/stylesheets/jquery.ui.tooltip.css.erb +4 -2
  62. data/lib/jquery/ui/rails/version.rb +2 -2
  63. metadata +3 -3
@@ -3,8 +3,8 @@
3
3
  jQuery(function($){
4
4
  $.datepicker.regional['lv'] = {
5
5
  closeText: 'Aizvērt',
6
- prevText: 'Iepr',
7
- nextText: 'Nāka',
6
+ prevText: 'Iepr.',
7
+ nextText: 'Nāk.',
8
8
  currentText: 'Šodien',
9
9
  monthNames: ['Janvāris','Februāris','Marts','Aprīlis','Maijs','Jūnijs',
10
10
  'Jūlijs','Augusts','Septembris','Oktobris','Novembris','Decembris'],
@@ -13,8 +13,8 @@ jQuery(function($){
13
13
  dayNames: ['svētdiena','pirmdiena','otrdiena','trešdiena','ceturtdiena','piektdiena','sestdiena'],
14
14
  dayNamesShort: ['svt','prm','otr','tre','ctr','pkt','sst'],
15
15
  dayNamesMin: ['Sv','Pr','Ot','Tr','Ct','Pk','Ss'],
16
- weekHeader: 'Nav',
17
- dateFormat: 'dd-mm-yy',
16
+ weekHeader: 'Ned.',
17
+ dateFormat: 'dd.mm.yy',
18
18
  firstDay: 1,
19
19
  isRTL: false,
20
20
  showMonthAfterYear: false,
@@ -2,7 +2,7 @@
2
2
  jQuery(function($){
3
3
  $.datepicker.regional['pt'] = {
4
4
  closeText: 'Fechar',
5
- prevText: '<Anterior',
5
+ prevText: 'Anterior',
6
6
  nextText: 'Seguinte',
7
7
  currentText: 'Hoje',
8
8
  monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho',
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.core
2
2
 
3
3
  /*!
4
- * jQuery UI Datepicker 1.10.3
4
+ * jQuery UI Datepicker 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -15,7 +15,7 @@
15
15
  */
16
16
  (function( $, undefined ) {
17
17
 
18
- $.extend($.ui, { datepicker: { version: "1.10.3" } });
18
+ $.extend($.ui, { datepicker: { version: "1.10.4" } });
19
19
 
20
20
  var PROP_NAME = "datepicker",
21
21
  instActive;
@@ -2035,6 +2035,6 @@ $.fn.datepicker = function(options){
2035
2035
  $.datepicker = new Datepicker(); // singleton instance
2036
2036
  $.datepicker.initialized = false;
2037
2037
  $.datepicker.uuid = new Date().getTime();
2038
- $.datepicker.version = "1.10.3";
2038
+ $.datepicker.version = "1.10.4";
2039
2039
 
2040
2040
  })(jQuery);
@@ -6,10 +6,10 @@
6
6
  //= require jquery.ui.resizable
7
7
 
8
8
  /*!
9
- * jQuery UI Dialog 1.10.3
9
+ * jQuery UI Dialog 1.10.4
10
10
  * http://jqueryui.com
11
11
  *
12
- * Copyright 2013 jQuery Foundation and other contributors
12
+ * Copyright 2014 jQuery Foundation and other contributors
13
13
  * Released under the MIT license.
14
14
  * http://jquery.org/license
15
15
  *
@@ -43,7 +43,7 @@ var sizeRelatedOptions = {
43
43
  };
44
44
 
45
45
  $.widget( "ui.dialog", {
46
- version: "1.10.3",
46
+ version: "1.10.4",
47
47
  options: {
48
48
  appendTo: "body",
49
49
  autoOpen: true,
@@ -176,7 +176,8 @@ $.widget( "ui.dialog", {
176
176
  enable: $.noop,
177
177
 
178
178
  close: function( event ) {
179
- var that = this;
179
+ var activeElement,
180
+ that = this;
180
181
 
181
182
  if ( !this._isOpen || this._trigger( "beforeClose", event ) === false ) {
182
183
  return;
@@ -186,10 +187,22 @@ $.widget( "ui.dialog", {
186
187
  this._destroyOverlay();
187
188
 
188
189
  if ( !this.opener.filter(":focusable").focus().length ) {
189
- // Hiding a focused element doesn't trigger blur in WebKit
190
- // so in case we have nothing to focus on, explicitly blur the active element
191
- // https://bugs.webkit.org/show_bug.cgi?id=47182
192
- $( this.document[0].activeElement ).blur();
190
+
191
+ // support: IE9
192
+ // IE9 throws an "Unspecified error" accessing document.activeElement from an <iframe>
193
+ try {
194
+ activeElement = this.document[ 0 ].activeElement;
195
+
196
+ // Support: IE9, IE10
197
+ // If the <body> is blurred, IE will switch windows, see #4520
198
+ if ( activeElement && activeElement.nodeName.toLowerCase() !== "body" ) {
199
+
200
+ // Hiding a focused element doesn't trigger blur in WebKit
201
+ // so in case we have nothing to focus on, explicitly blur the active element
202
+ // https://bugs.webkit.org/show_bug.cgi?id=47182
203
+ $( activeElement ).blur();
204
+ }
205
+ } catch ( error ) {}
193
206
  }
194
207
 
195
208
  this._hide( this.uiDialog, this.options.hide, function() {
@@ -349,7 +362,10 @@ $.widget( "ui.dialog", {
349
362
  }
350
363
  });
351
364
 
352
- this.uiDialogTitlebarClose = $("<button></button>")
365
+ // support: IE
366
+ // Use type="button" to prevent enter keypresses in textboxes from closing the
367
+ // dialog in IE (#9312)
368
+ this.uiDialogTitlebarClose = $( "<button type='button'></button>" )
353
369
  .button({
354
370
  label: this.options.closeText,
355
371
  icons: {
@@ -563,7 +579,6 @@ $.widget( "ui.dialog", {
563
579
  },
564
580
 
565
581
  _setOption: function( key, value ) {
566
- /*jshint maxcomplexity:15*/
567
582
  var isDraggable, isResizable,
568
583
  uiDialog = this.uiDialog;
569
584
 
@@ -3,10 +3,10 @@
3
3
  //= require jquery.ui.mouse
4
4
 
5
5
  /*!
6
- * jQuery UI Draggable 1.10.3
6
+ * jQuery UI Draggable 1.10.4
7
7
  * http://jqueryui.com
8
8
  *
9
- * Copyright 2013 jQuery Foundation and other contributors
9
+ * Copyright 2014 jQuery Foundation and other contributors
10
10
  * Released under the MIT license.
11
11
  * http://jquery.org/license
12
12
  *
@@ -20,7 +20,7 @@
20
20
  (function( $, undefined ) {
21
21
 
22
22
  $.widget("ui.draggable", $.ui.mouse, {
23
- version: "1.10.3",
23
+ version: "1.10.4",
24
24
  widgetEventPrefix: "drag",
25
25
  options: {
26
26
  addClasses: true,
@@ -4,10 +4,10 @@
4
4
  //= require jquery.ui.draggable
5
5
 
6
6
  /*!
7
- * jQuery UI Droppable 1.10.3
7
+ * jQuery UI Droppable 1.10.4
8
8
  * http://jqueryui.com
9
9
  *
10
- * Copyright 2013 jQuery Foundation and other contributors
10
+ * Copyright 2014 jQuery Foundation and other contributors
11
11
  * Released under the MIT license.
12
12
  * http://jquery.org/license
13
13
  *
@@ -26,7 +26,7 @@ function isOverAxis( x, reference, size ) {
26
26
  }
27
27
 
28
28
  $.widget("ui.droppable", {
29
- version: "1.10.3",
29
+ version: "1.10.4",
30
30
  widgetEventPrefix: "drop",
31
31
  options: {
32
32
  accept: "*",
@@ -46,7 +46,8 @@ $.widget("ui.droppable", {
46
46
  },
47
47
  _create: function() {
48
48
 
49
- var o = this.options,
49
+ var proportions,
50
+ o = this.options,
50
51
  accept = o.accept;
51
52
 
52
53
  this.isover = false;
@@ -56,8 +57,20 @@ $.widget("ui.droppable", {
56
57
  return d.is(accept);
57
58
  };
58
59
 
59
- //Store the droppable's proportions
60
- this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight };
60
+ this.proportions = function( /* valueToWrite */ ) {
61
+ if ( arguments.length ) {
62
+ // Store the droppable's proportions
63
+ proportions = arguments[ 0 ];
64
+ } else {
65
+ // Retrieve or derive the droppable's proportions
66
+ return proportions ?
67
+ proportions :
68
+ proportions = {
69
+ width: this.element[ 0 ].offsetWidth,
70
+ height: this.element[ 0 ].offsetHeight
71
+ };
72
+ }
73
+ };
61
74
 
62
75
  // Add the reference and positions to the manager
63
76
  $.ui.ddmanager.droppables[o.scope] = $.ui.ddmanager.droppables[o.scope] || [];
@@ -203,10 +216,14 @@ $.ui.intersect = function(draggable, droppable, toleranceMode) {
203
216
  }
204
217
 
205
218
  var draggableLeft, draggableTop,
206
- x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width,
207
- y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height,
208
- l = droppable.offset.left, r = l + droppable.proportions.width,
209
- t = droppable.offset.top, b = t + droppable.proportions.height;
219
+ x1 = (draggable.positionAbs || draggable.position.absolute).left,
220
+ y1 = (draggable.positionAbs || draggable.position.absolute).top,
221
+ x2 = x1 + draggable.helperProportions.width,
222
+ y2 = y1 + draggable.helperProportions.height,
223
+ l = droppable.offset.left,
224
+ t = droppable.offset.top,
225
+ r = l + droppable.proportions().width,
226
+ b = t + droppable.proportions().height;
210
227
 
211
228
  switch (toleranceMode) {
212
229
  case "fit":
@@ -219,7 +236,7 @@ $.ui.intersect = function(draggable, droppable, toleranceMode) {
219
236
  case "pointer":
220
237
  draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left);
221
238
  draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top);
222
- return isOverAxis( draggableTop, t, droppable.proportions.height ) && isOverAxis( draggableLeft, l, droppable.proportions.width );
239
+ return isOverAxis( draggableTop, t, droppable.proportions().height ) && isOverAxis( draggableLeft, l, droppable.proportions().width );
223
240
  case "touch":
224
241
  return (
225
242
  (y1 >= t && y1 <= b) || // Top edge touching
@@ -259,7 +276,7 @@ $.ui.ddmanager = {
259
276
  // Filter out elements in the current dragged item
260
277
  for (j=0; j < list.length; j++) {
261
278
  if(list[j] === m[i].element[0]) {
262
- m[i].proportions.height = 0;
279
+ m[i].proportions().height = 0;
263
280
  continue droppablesLoop;
264
281
  }
265
282
  }
@@ -274,8 +291,8 @@ $.ui.ddmanager = {
274
291
  m[i]._activate.call(m[i], event);
275
292
  }
276
293
 
277
- m[i].offset = m[i].element.offset();
278
- m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight };
294
+ m[ i ].offset = m[ i ].element.offset();
295
+ m[ i ].proportions({ width: m[ i ].element[ 0 ].offsetWidth, height: m[ i ].element[ 0 ].offsetHeight });
279
296
 
280
297
  }
281
298
 
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Blind 1.10.3
4
+ * jQuery UI Effects Blind 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Bounce 1.10.3
4
+ * jQuery UI Effects Bounce 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Clip 1.10.3
4
+ * jQuery UI Effects Clip 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Drop 1.10.3
4
+ * jQuery UI Effects Drop 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Explode 1.10.3
4
+ * jQuery UI Effects Explode 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Fade 1.10.3
4
+ * jQuery UI Effects Fade 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Fold 1.10.3
4
+ * jQuery UI Effects Fold 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Highlight 1.10.3
4
+ * jQuery UI Effects Highlight 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Pulsate 1.10.3
4
+ * jQuery UI Effects Pulsate 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Scale 1.10.3
4
+ * jQuery UI Effects Scale 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Shake 1.10.3
4
+ * jQuery UI Effects Shake 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Slide 1.10.3
4
+ * jQuery UI Effects Slide 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,10 +1,10 @@
1
1
  //= require jquery.ui.effect
2
2
 
3
3
  /*!
4
- * jQuery UI Effects Transfer 1.10.3
4
+ * jQuery UI Effects Transfer 1.10.4
5
5
  * http://jqueryui.com
6
6
  *
7
- * Copyright 2013 jQuery Foundation and other contributors
7
+ * Copyright 2014 jQuery Foundation and other contributors
8
8
  * Released under the MIT license.
9
9
  * http://jquery.org/license
10
10
  *
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * jQuery UI Effects 1.10.3
2
+ * jQuery UI Effects 1.10.4
3
3
  * http://jqueryui.com
4
4
  *
5
- * Copyright 2013 jQuery Foundation and other contributors
5
+ * Copyright 2014 jQuery Foundation and other contributors
6
6
  * Released under the MIT license.
7
7
  * http://jquery.org/license
8
8
  *
@@ -893,7 +893,7 @@ $.fn.extend({
893
893
  (function() {
894
894
 
895
895
  $.extend( $.effects, {
896
- version: "1.10.3",
896
+ version: "1.10.4",
897
897
 
898
898
  // Saves a set of properties in a data storage
899
899
  save: function( element, set ) {