romo 0.19.5 → 0.19.6
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 +5 -5
- data/assets/js/romo/datepicker.js +5 -1
- data/assets/js/romo/option_list_dropdown.js +12 -9
- data/assets/js/romo/picker.js +46 -32
- data/assets/js/romo/select.js +31 -29
- data/assets/js/romo/select_dropdown.js +34 -5
- data/lib/romo/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: 4fc3f8ffd4150f3516e977cc2c65e3fd25862848
|
4
|
-
data.tar.gz: 792b1f359b813c11cb40a595e23cd36aadd7f6e6
|
5
2
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 643c9c0e9600c876e1ec481fafc0488260c94f0c99d06a53fbc7abe791b23ff363f0922cf2ba92f605e886df4403bb8b368631f83e080a74949583dccf21675c
|
4
|
+
data.tar.gz: 1dd48f7b1d07b69f3b2e135048ba7565a6b53e1758c08e242e7074d5a2e44fcc8f32ad9f731a3a8bfdbe3b64a4f715460814bda4d43bb74400afd3fd966f0abd
|
5
|
+
SHA1:
|
6
|
+
metadata.gz: 86052336ce3a41a0592c123eb52ad0c8f0a61709
|
7
|
+
data.tar.gz: 8d5fda1c6c5172f7e59664624dffc2830bb70410
|
@@ -178,7 +178,11 @@ RomoDatepicker.prototype.doSelectHighlightedItem = function() {
|
|
178
178
|
this.romoDropdown.doPopupClose();
|
179
179
|
this.doSetDate(newValue);
|
180
180
|
this.elem.focus();
|
181
|
-
this.elem.trigger('datepicker:itemSelected', [newValue, this
|
181
|
+
this.elem.trigger('datepicker:itemSelected', [newValue, this]);
|
182
|
+
if (newValue !== this.prevValue) {
|
183
|
+
this.elem.trigger('datepicker:newItemSelected', [newValue, this]);
|
184
|
+
}
|
185
|
+
// always publish the item selected events before publishing any change events
|
182
186
|
this._triggerSetDateChangeEvent();
|
183
187
|
}
|
184
188
|
|
@@ -63,24 +63,24 @@ RomoOptionListDropdown.prototype.doInit = function() {
|
|
63
63
|
// override as needed
|
64
64
|
}
|
65
65
|
|
66
|
-
RomoOptionListDropdown.prototype.
|
66
|
+
RomoOptionListDropdown.prototype.doSetSelectedItem = function(itemValue) {
|
67
67
|
this.selectedItemElem().removeClass('selected');
|
68
68
|
this.romoDropdown.bodyElem.find(
|
69
|
-
'LI[data-romo-option-list-dropdown-option-value="'+
|
69
|
+
'LI[data-romo-option-list-dropdown-option-value="'+itemValue+'"]'
|
70
70
|
).addClass('selected');
|
71
71
|
this.doSetSelectedValueAndText(
|
72
|
-
|
72
|
+
this.selectedItemElem().data('romo-option-list-dropdown-option-value'),
|
73
73
|
this.selectedItemElem().data('romo-option-list-dropdown-option-display-text')
|
74
74
|
);
|
75
75
|
}
|
76
76
|
|
77
|
-
RomoOptionListDropdown.prototype.doSetSelectedValueAndText = function(
|
77
|
+
RomoOptionListDropdown.prototype.doSetSelectedValueAndText = function(value, text) {
|
78
78
|
// need to use `attr` to persist selected values to the DOM for back button logic
|
79
79
|
// to work. using `data` won't persist changes to DOM and breaks back button logic.
|
80
|
-
this.elem.attr('data-romo-option-list-dropdown-selected-value',
|
81
|
-
this.elem.attr('data-romo-option-list-dropdown-selected-text',
|
80
|
+
this.elem.attr('data-romo-option-list-dropdown-selected-value', value);
|
81
|
+
this.elem.attr('data-romo-option-list-dropdown-selected-text', text);
|
82
82
|
|
83
|
-
this.prevValue =
|
83
|
+
this.prevValue = value;
|
84
84
|
}
|
85
85
|
|
86
86
|
/*
|
@@ -354,12 +354,15 @@ RomoOptionListDropdown.prototype._selectHighlightedItem = function() {
|
|
354
354
|
if (curr.length !== 0) {
|
355
355
|
var prevValue = this.prevValue;
|
356
356
|
var newValue = curr.data('romo-option-list-dropdown-option-value');
|
357
|
+
var newText = curr.data('romo-option-list-dropdown-option-display-text');
|
357
358
|
|
358
359
|
this.romoDropdown.doPopupClose();
|
359
|
-
this.elem.trigger('romoOptionListDropdown:itemSelected', [newValue, prevValue, this]);
|
360
360
|
|
361
|
+
this.elem.trigger('romoOptionListDropdown:itemSelected', [newValue, newText, this]);
|
361
362
|
if (newValue !== prevValue) {
|
362
|
-
this.
|
363
|
+
this.doSetSelectedItem(newValue);
|
364
|
+
// always publish the item selected events before publishing any change events
|
365
|
+
this.elem.trigger('romoOptionListDropdown:newItemSelected', [newValue, newText, this]);
|
363
366
|
this.elem.trigger('romoOptionListDropdown:change', [newValue, prevValue, this]);
|
364
367
|
}
|
365
368
|
}
|
data/assets/js/romo/picker.js
CHANGED
@@ -16,7 +16,15 @@ var RomoPicker = function(element) {
|
|
16
16
|
|
17
17
|
this.doInit();
|
18
18
|
this._bindElem();
|
19
|
-
|
19
|
+
|
20
|
+
var presetVal = this.elem[0].value;
|
21
|
+
if (presetVal !== '') {
|
22
|
+
this.doSetValue(presetVal);
|
23
|
+
} else if (this.elem.data('romo-picker-empty-option') === true) {
|
24
|
+
this.doSetValueAndText('', this.elem.data('romo-picker-empty-option-display-text') || '');
|
25
|
+
} else {
|
26
|
+
this.doSetValueAndText('', '');
|
27
|
+
}
|
20
28
|
|
21
29
|
if (this.elem.attr('id') !== undefined) {
|
22
30
|
$('label[for="'+this.elem.attr('id')+'"]').on('click', $.proxy(function(e) {
|
@@ -25,11 +33,7 @@ var RomoPicker = function(element) {
|
|
25
33
|
}
|
26
34
|
|
27
35
|
$(window).on("pageshow", $.proxy(function(e) {
|
28
|
-
|
29
|
-
if (selectedVal !== this.elem[0].value) {
|
30
|
-
var selectedText = this.romoOptionListDropdown.selectedItemText();
|
31
|
-
this.doSetSelectedValueAndText(selectedVal, selectedText);
|
32
|
-
}
|
36
|
+
this._refreshUI();
|
33
37
|
}, this));
|
34
38
|
|
35
39
|
this.elem.on('romoPicker:triggerSetValue', $.proxy(function(e, value) {
|
@@ -43,14 +47,6 @@ RomoPicker.prototype.doInit = function() {
|
|
43
47
|
// override as needed
|
44
48
|
}
|
45
49
|
|
46
|
-
RomoPicker.prototype.doRefreshUI = function() {
|
47
|
-
var text = this.romoOptionListDropdown.selectedItemText();
|
48
|
-
if (text === '') {
|
49
|
-
text = ' '
|
50
|
-
}
|
51
|
-
this.romoOptionListDropdown.elem.find('.romo-picker-text').html(text);
|
52
|
-
}
|
53
|
-
|
54
50
|
RomoPicker.prototype.doSetValue = function(value) {
|
55
51
|
$.ajax({
|
56
52
|
type: 'GET',
|
@@ -58,17 +54,20 @@ RomoPicker.prototype.doSetValue = function(value) {
|
|
58
54
|
data: { 'values': value },
|
59
55
|
success: $.proxy(function(data, status, xhr) {
|
60
56
|
if (data[0] !== undefined) {
|
61
|
-
this.
|
57
|
+
this.doSetValueAndText(data[0].value, data[0].displayText);
|
58
|
+
} else if (this.elem.data('romo-picker-empty-option') === true) {
|
59
|
+
this.doSetValueAndText('', this.elem.data('romo-picker-empty-option-display-text') || '');
|
62
60
|
} else {
|
63
|
-
this.
|
61
|
+
this.doSetValueAndText('', '');
|
64
62
|
}
|
65
63
|
}, this),
|
66
64
|
});
|
67
65
|
}
|
68
66
|
|
69
|
-
RomoPicker.prototype.
|
67
|
+
RomoPicker.prototype.doSetValueAndText = function(value, text) {
|
70
68
|
this.romoOptionListDropdown.doSetSelectedValueAndText(value, text);
|
71
|
-
this.
|
69
|
+
this._setValueAndText(value, text);
|
70
|
+
this._refreshUI();
|
72
71
|
}
|
73
72
|
|
74
73
|
/* private */
|
@@ -88,11 +87,6 @@ RomoPicker.prototype._bindElem = function() {
|
|
88
87
|
}, this));
|
89
88
|
|
90
89
|
this.romoOptionListDropdown.doSetListItems(this.defaultOptionItems);
|
91
|
-
|
92
|
-
var presetVal = this.elem[0].value;
|
93
|
-
if (presetVal !== '') {
|
94
|
-
this.doSetValue(presetVal);
|
95
|
-
}
|
96
90
|
}
|
97
91
|
|
98
92
|
RomoPicker.prototype._bindOptionListDropdown = function() {
|
@@ -119,12 +113,16 @@ RomoPicker.prototype._bindOptionListDropdown = function() {
|
|
119
113
|
this._setListItems(this.defaultOptionItems.concat(this._buildCustomOptionItems()));
|
120
114
|
}
|
121
115
|
}, this));
|
122
|
-
this.romoOptionListDropdown.elem.on('romoOptionListDropdown:itemSelected', $.proxy(function(e,
|
116
|
+
this.romoOptionListDropdown.elem.on('romoOptionListDropdown:itemSelected', $.proxy(function(e, itemValue, itemDisplayText, optionListDropdown) {
|
123
117
|
this.romoOptionListDropdown.elem.focus();
|
124
|
-
this.elem.trigger('romoPicker:itemSelected', [
|
118
|
+
this.elem.trigger('romoPicker:itemSelected', [itemValue, itemDisplayText, this]);
|
119
|
+
}, this));
|
120
|
+
this.romoOptionListDropdown.elem.on('romoOptionListDropdown:newItemSelected', $.proxy(function(e, itemValue, itemDisplayText, optionListDropdown) {
|
121
|
+
this._setValueAndText(itemValue, itemDisplayText);
|
122
|
+
this._refreshUI();
|
123
|
+
this.elem.trigger('romoPicker:newItemSelected', [itemValue, itemDisplayText, this]);
|
125
124
|
}, this));
|
126
125
|
this.romoOptionListDropdown.elem.on('romoOptionListDropdown:change', $.proxy(function(e, newValue, prevValue, optionListDropdown) {
|
127
|
-
this._setNewValue(newValue);
|
128
126
|
this.elem.trigger('change');
|
129
127
|
this.elem.trigger('romoPicker:change', [newValue, prevValue, this]);
|
130
128
|
}, this));
|
@@ -250,7 +248,7 @@ RomoPicker.prototype._buildDefaultOptionItems = function() {
|
|
250
248
|
items.push({
|
251
249
|
'type': 'option',
|
252
250
|
'value': '',
|
253
|
-
'displayText': '',
|
251
|
+
'displayText': (this.elem.data('romo-picker-empty-option-display-text') || ''),
|
254
252
|
'displayHtml': ' '
|
255
253
|
});
|
256
254
|
}
|
@@ -287,6 +285,27 @@ RomoPicker.prototype._buildCustomOptionItem = function(value) {
|
|
287
285
|
};
|
288
286
|
}
|
289
287
|
|
288
|
+
RomoPicker.prototype._setValueAndText = function(value, text) {
|
289
|
+
this.elem[0].value = value;
|
290
|
+
|
291
|
+
// store the display text on the DOM to compliment the value being stored on the
|
292
|
+
// DOM via the elem above. need to use `attr` to persist selected values to the
|
293
|
+
// DOM for back button logic to work. using `data` won't persist changes to DOM
|
294
|
+
// and breaks how the component deals with back-button behavior.
|
295
|
+
this.elem.attr('data-romo-picker-display-text', text);
|
296
|
+
}
|
297
|
+
|
298
|
+
RomoPicker.prototype._refreshUI = function() {
|
299
|
+
// need to use `attr` so it will always read from the DOM
|
300
|
+
// using `data` works the first time but does some elem caching or something
|
301
|
+
// so it won't work subsequent times.
|
302
|
+
var text = this.elem.attr('data-romo-picker-display-text');
|
303
|
+
if (text === '') {
|
304
|
+
text = ' '
|
305
|
+
}
|
306
|
+
this.romoOptionListDropdown.elem.find('.romo-picker-text').html(text);
|
307
|
+
}
|
308
|
+
|
290
309
|
RomoPicker.prototype._onCaretClick = function(e) {
|
291
310
|
if (this.elem.prop('disabled') === false) {
|
292
311
|
this.romoOptionListDropdown.elem.focus();
|
@@ -294,11 +313,6 @@ RomoPicker.prototype._onCaretClick = function(e) {
|
|
294
313
|
}
|
295
314
|
}
|
296
315
|
|
297
|
-
RomoPicker.prototype._setNewValue = function(newValue) {
|
298
|
-
this.elem[0].value = newValue;
|
299
|
-
this.doRefreshUI();
|
300
|
-
}
|
301
|
-
|
302
316
|
RomoPicker.prototype._getCaretPaddingPx = function() {
|
303
317
|
return (
|
304
318
|
this.elem.data('romo-picker-caret-padding-px') ||
|
data/assets/js/romo/select.js
CHANGED
@@ -13,7 +13,8 @@ var RomoSelect = function(element) {
|
|
13
13
|
|
14
14
|
this.doInit();
|
15
15
|
this._bindElem();
|
16
|
-
|
16
|
+
|
17
|
+
this.doSetValue(this.elem[0].value);
|
17
18
|
|
18
19
|
if (this.elem.attr('id') !== undefined) {
|
19
20
|
$('label[for="'+this.elem.attr('id')+'"]').on('click', $.proxy(function(e) {
|
@@ -22,10 +23,7 @@ var RomoSelect = function(element) {
|
|
22
23
|
}
|
23
24
|
|
24
25
|
$(window).on("pageshow", $.proxy(function(e) {
|
25
|
-
|
26
|
-
if (selectedVal !== this.elem[0].value) {
|
27
|
-
this.doSetValue(selectedVal);
|
28
|
-
}
|
26
|
+
this._refreshUI();
|
29
27
|
}, this));
|
30
28
|
|
31
29
|
this.elem.on('select:triggerSetValue', $.proxy(function(e, value) {
|
@@ -39,17 +37,10 @@ RomoSelect.prototype.doInit = function() {
|
|
39
37
|
// override as needed
|
40
38
|
}
|
41
39
|
|
42
|
-
RomoSelect.prototype.doRefreshUI = function() {
|
43
|
-
var text = this.romoSelectDropdown.selectedItemText();
|
44
|
-
if (text === '') {
|
45
|
-
text = ' '
|
46
|
-
}
|
47
|
-
this.romoSelectDropdown.elem.find('.romo-select-text').html(text);
|
48
|
-
}
|
49
|
-
|
50
40
|
RomoSelect.prototype.doSetValue = function(value) {
|
51
|
-
this.romoSelectDropdown.
|
52
|
-
this.
|
41
|
+
this.romoSelectDropdown.doSetSelectedItem(value);
|
42
|
+
this._setValue(value);
|
43
|
+
this._refreshUI();
|
53
44
|
}
|
54
45
|
|
55
46
|
/* private */
|
@@ -66,12 +57,6 @@ RomoSelect.prototype._bindElem = function() {
|
|
66
57
|
this.elem.on('select:triggerPopupClose', $.proxy(function(e) {
|
67
58
|
this.romoSelectDropdown.elem.trigger('selectDropdown:triggerPopupClose', []);
|
68
59
|
}, this));
|
69
|
-
|
70
|
-
|
71
|
-
var presetVal = this.elem[0].value;
|
72
|
-
if (presetVal !== '') {
|
73
|
-
this.doSetValue(presetVal);
|
74
|
-
}
|
75
60
|
}
|
76
61
|
|
77
62
|
RomoSelect.prototype._bindSelectDropdown = function() {
|
@@ -87,12 +72,16 @@ RomoSelect.prototype._bindSelectDropdown = function() {
|
|
87
72
|
this.elem.trigger('select:dropdown:popupClose', [dropdown, this]);
|
88
73
|
}, this));
|
89
74
|
|
90
|
-
this.romoSelectDropdown.elem.on('selectDropdown:itemSelected', $.proxy(function(e,
|
75
|
+
this.romoSelectDropdown.elem.on('selectDropdown:itemSelected', $.proxy(function(e, itemValue, itemDisplayText, selectDropdown) {
|
91
76
|
this.romoSelectDropdown.elem.focus();
|
92
|
-
this.elem.trigger('select:itemSelected', [
|
77
|
+
this.elem.trigger('select:itemSelected', [itemValue, itemDisplayText, this]);
|
78
|
+
}, this));
|
79
|
+
this.romoSelectDropdown.elem.on('selectDropdown:newItemSelected', $.proxy(function(e, itemValue, itemDisplayText, selectDropdown) {
|
80
|
+
this._setValue(itemValue);
|
81
|
+
this._refreshUI();
|
82
|
+
this.elem.trigger('select:newItemSelected', [itemValue, itemDisplayText, this]);
|
93
83
|
}, this));
|
94
84
|
this.romoSelectDropdown.elem.on('selectDropdown:change', $.proxy(function(e, newValue, prevValue, selectDropdown) {
|
95
|
-
this._setNewValue(newValue);
|
96
85
|
this.elem.trigger('change');
|
97
86
|
this.elem.trigger('select:change', [newValue, prevValue, this]);
|
98
87
|
}, this));
|
@@ -189,6 +178,24 @@ RomoSelect.prototype._buildSelectDropdownElem = function() {
|
|
189
178
|
return romoSelectDropdownElem;
|
190
179
|
}
|
191
180
|
|
181
|
+
RomoSelect.prototype._setValue = function(value) {
|
182
|
+
var prevOptElem = this.elem.find('OPTION[value="'+this.elem[0].value+'"]');
|
183
|
+
var newOptElem = this.elem.find('OPTION[value="'+value+'"]');
|
184
|
+
|
185
|
+
prevOptElem.removeAttr('selected');
|
186
|
+
prevOptElem.prop('selected', false);
|
187
|
+
newOptElem.attr('selected', 'selected');
|
188
|
+
newOptElem.prop('selected', true);
|
189
|
+
}
|
190
|
+
|
191
|
+
RomoSelect.prototype._refreshUI = function() {
|
192
|
+
var text = this.elem.find('OPTION[selected="selected"]').text().trim();
|
193
|
+
if (text === '') {
|
194
|
+
text = ' '
|
195
|
+
}
|
196
|
+
this.romoSelectDropdown.elem.find('.romo-select-text').html(text);
|
197
|
+
}
|
198
|
+
|
192
199
|
RomoSelect.prototype._onCaretClick = function(e) {
|
193
200
|
if (this.elem.prop('disabled') === false) {
|
194
201
|
this.romoSelectDropdown.elem.focus();
|
@@ -196,11 +203,6 @@ RomoSelect.prototype._onCaretClick = function(e) {
|
|
196
203
|
}
|
197
204
|
}
|
198
205
|
|
199
|
-
RomoSelect.prototype._setNewValue = function(newValue) {
|
200
|
-
this.elem[0].value = newValue;
|
201
|
-
this.doRefreshUI();
|
202
|
-
}
|
203
|
-
|
204
206
|
RomoSelect.prototype._getCaretPaddingPx = function() {
|
205
207
|
return (
|
206
208
|
this.elem.data('romo-select-caret-padding-px') ||
|
@@ -59,8 +59,8 @@ RomoSelectDropdown.prototype.doInit = function() {
|
|
59
59
|
// override as needed
|
60
60
|
}
|
61
61
|
|
62
|
-
RomoSelectDropdown.prototype.
|
63
|
-
this.romoOptionListDropdown.
|
62
|
+
RomoSelectDropdown.prototype.doSetSelectedItem = function(newValue) {
|
63
|
+
this.romoOptionListDropdown.doSetSelectedItem(newValue);
|
64
64
|
}
|
65
65
|
|
66
66
|
/* private */
|
@@ -93,8 +93,24 @@ RomoSelectDropdown.prototype._bindElem = function() {
|
|
93
93
|
this.elem.on('romoOptionListDropdown:dropdown:popupClose', $.proxy(function(e, dropdown) {
|
94
94
|
this.elem.trigger('selectDropdown:dropdown:popupClose', [dropdown, this]);
|
95
95
|
}, this));
|
96
|
-
this.elem.on('romoOptionListDropdown:itemSelected', $.proxy(function(e,
|
97
|
-
this.elem.trigger('selectDropdown:itemSelected', [
|
96
|
+
this.elem.on('romoOptionListDropdown:itemSelected', $.proxy(function(e, itemValue, itemDisplayText, romoOptionListDropdown) {
|
97
|
+
this.elem.trigger('selectDropdown:itemSelected', [itemValue, itemDisplayText, this]);
|
98
|
+
}, this));
|
99
|
+
this.elem.on('romoOptionListDropdown:newItemSelected', $.proxy(function(e, itemValue, itemDisplayText, romoOptionListDropdown) {
|
100
|
+
var custOptElem = this.optionElemsParent.find('OPTION[data-romo-select-dropdown-custom-option="true"]');
|
101
|
+
if (this.optionElemsParent.find('OPTION[value="'+itemValue+'"]').length === 0){
|
102
|
+
// a custom value is being selected. add a custom option elem and update its value/text
|
103
|
+
if (custOptElem.length === 0) {
|
104
|
+
this.optionElemsParent.append('<option data-romo-select-dropdown-custom-option="true"></option>');
|
105
|
+
custOptElem = this.optionElemsParent.find('OPTION[data-romo-select-dropdown-custom-option="true"]');
|
106
|
+
}
|
107
|
+
custOptElem.attr('value', itemValue);
|
108
|
+
custOptElem.text(itemDisplayText);
|
109
|
+
} else if (custOptElem.length !== 0) {
|
110
|
+
// a non custom value is being selected. remove any existing custom option
|
111
|
+
custOptElem.remove();
|
112
|
+
}
|
113
|
+
this.elem.trigger('selectDropdown:newItemSelected', [itemValue, itemDisplayText, this]);
|
98
114
|
}, this));
|
99
115
|
this.elem.on('romoOptionListDropdown:change', $.proxy(function(e, newValue, prevValue, romoOptionListDropdown) {
|
100
116
|
this.elem.trigger('selectDropdown:change', [newValue, prevValue, this]);
|
@@ -114,7 +130,7 @@ RomoSelectDropdown.prototype._bindElem = function() {
|
|
114
130
|
this.romoOptionListDropdown = this.elem.romoOptionListDropdown()[0];
|
115
131
|
|
116
132
|
this.elem.on('romoOptionListDropdown:filterChange', $.proxy(function(e, filterValue, romoOptionListDropdown) {
|
117
|
-
var elems = this.optionElemsParent.find('
|
133
|
+
var elems = this.optionElemsParent.find('OPTION');
|
118
134
|
var wbFilter = new RomoWordBoundaryFilter(filterValue, elems, function(elem) {
|
119
135
|
// The romo word boundary filter by default considers a space, "-" and "_"
|
120
136
|
// as word boundaries. We want to also consider other non-word characters
|
@@ -133,10 +149,23 @@ RomoSelectDropdown.prototype._bindElem = function() {
|
|
133
149
|
}
|
134
150
|
}, this));
|
135
151
|
|
152
|
+
this._sanitizeOptions();
|
136
153
|
this._setListItems();
|
137
154
|
this.elem.trigger('romoOptionListDropdown:triggerListOptionsUpdate', [this.selectedItemElem()]);
|
138
155
|
}
|
139
156
|
|
157
|
+
RomoSelectDropdown.prototype._sanitizeOptions = function() {
|
158
|
+
// set any options without a value to value=""
|
159
|
+
// all options are required to have a value for things to work
|
160
|
+
// this and the select component assume value attrs for all options
|
161
|
+
$.each(this.optionElemsParent.find('OPTION'), $.proxy(function(idx, optionNode) {
|
162
|
+
var optElem = $(optionNode);
|
163
|
+
if (optElem.attr('value') === undefined) {
|
164
|
+
optElem.attr('value', '');
|
165
|
+
}
|
166
|
+
}, this));
|
167
|
+
}
|
168
|
+
|
140
169
|
RomoSelectDropdown.prototype._setListItems = function() {
|
141
170
|
var optElems = this.optionElemsParent.children(this.optionElemSelector);
|
142
171
|
var items = this._buildOptionListItems(optElems).concat(this._buildCustomOptionItems());
|
data/lib/romo/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: romo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.19.
|
4
|
+
version: 0.19.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kelly Redding
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2017-08-
|
13
|
+
date: 2017-08-25 00:00:00 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: assert
|