romo 0.19.8 → 0.19.9
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/base.js +35 -2
- data/assets/js/romo/selected_options_list.js +1 -1
- data/lib/romo/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
SHA512:
|
3
|
-
data.tar.gz: 5eea8c90486df3910adfb7ec8c509ad7b905b00b75cd254dbe0b2ef5717e9af0f4d75274cd674af2c4788c335eec7c1bda863e62ec9f5fb07bd2c79ed98613b7
|
4
|
-
metadata.gz: 7677d14e707541385b4bae0f61963fafd0d05ac14ac49cdcf3b0796cac5d473e68a7ea1e71a62238399587d6b43bc1a3676aa3d2babf3fbdbcd5f5ef4506b8d4
|
5
2
|
SHA1:
|
6
|
-
data.tar.gz:
|
7
|
-
metadata.gz:
|
3
|
+
data.tar.gz: 109dec7707c080e71bfd48ae975ebc9b4e5d533c
|
4
|
+
metadata.gz: 15228cba845f2429670da60e0e88029620049bd5
|
5
|
+
SHA512:
|
6
|
+
data.tar.gz: 1e4763f9735a9cec9d98180fe77f5bb630c0ead348b7fc83a5ee166dc9d679f56bc9f133f0b61777d15781a4385c74b5e627987b5f29ec325601703b1c8522a6
|
7
|
+
metadata.gz: 8aec6f050a6897c483d725f4f783c0b87b09372030aa283c53b44171a9ecb3e9c0b3e6e7e54c1963fe5e5faaba52c67d5677ffa137578c3e680103b7952cb6d0
|
data/assets/js/romo/base.js
CHANGED
@@ -105,6 +105,14 @@ Romo.prototype.setAttr = function(elem, attrName, attrValue) {
|
|
105
105
|
return attrValue;
|
106
106
|
}
|
107
107
|
|
108
|
+
Romo.prototype.data = function(elem, dataName) {
|
109
|
+
return this._deserializeValue(this.attr(elem, "data-"+dataName));
|
110
|
+
}
|
111
|
+
|
112
|
+
Romo.prototype.setData = function(elem, dataName, dataValue) {
|
113
|
+
return this.setAttr(elem, "data-"+dataName, String(dataValue));
|
114
|
+
}
|
115
|
+
|
108
116
|
Romo.prototype.style = function(elem, styleName) {
|
109
117
|
return elem.style[styleName];
|
110
118
|
}
|
@@ -433,8 +441,19 @@ Romo.prototype.decodeParamMap = [
|
|
433
441
|
// AJAX
|
434
442
|
|
435
443
|
Romo.prototype.ajax = function(settings) {
|
444
|
+
var httpMethod = (settings.type || 'GET').toUpperCase();
|
445
|
+
var xhrUrl = settings.url || window.location.toString();
|
446
|
+
var xhrData = settings.data ? settings.data : null
|
447
|
+
if (xhrData && httpMethod === 'GET') {
|
448
|
+
var xhrQuery = Romo.param(xhrData);
|
449
|
+
if (xhrQuery !== '') {
|
450
|
+
xhrUrl = (xhrUrl + '&' + xhrQuery).replace(/[&?]{1,2}/, '?');
|
451
|
+
}
|
452
|
+
xhrData = null;
|
453
|
+
}
|
454
|
+
|
436
455
|
var xhr = new XMLHttpRequest();
|
437
|
-
xhr.open(
|
456
|
+
xhr.open(httpMethod, xhrUrl, true, settings.username, settings.password);
|
438
457
|
if (settings.responseType === 'arraybuffer' || settings.responseType === 'blob') {
|
439
458
|
xhr.responseType = settings.responseType;
|
440
459
|
}
|
@@ -458,7 +477,7 @@ Romo.prototype.ajax = function(settings) {
|
|
458
477
|
}
|
459
478
|
}
|
460
479
|
};
|
461
|
-
xhr.send(
|
480
|
+
xhr.send(xhrData);
|
462
481
|
},
|
463
482
|
|
464
483
|
// events
|
@@ -601,6 +620,20 @@ Romo.prototype._handlerKey = function(elem, eventName, fn) {
|
|
601
620
|
return 'eid--'+this._el(elem)._romoeid+'--'+eventName+'--fid--'+this._fn(fn)._romofid;
|
602
621
|
}
|
603
622
|
|
623
|
+
Romo.prototype._deserializeValue = function(value) {
|
624
|
+
try {
|
625
|
+
if (value === "true") { return true; } // "true" => true
|
626
|
+
if (value === "false") { return false; } // "false" => false
|
627
|
+
if (value === "undefined") { return undefined; } // "undefined" => undefined
|
628
|
+
if (value === "null") { return null; } // "null" => null
|
629
|
+
if (+value+"" === value) { return +value; } // "42.5" => 42.5
|
630
|
+
if (/^[\[\{]/.test(value)) { JSON.parse(value); } // JSON => parse if valid
|
631
|
+
return value; // String => self
|
632
|
+
} catch(e) {
|
633
|
+
return value
|
634
|
+
}
|
635
|
+
}
|
636
|
+
|
604
637
|
// TODO: rework w/o jQuery
|
605
638
|
Romo.prototype._addEventCallback = function(name, callback) {
|
606
639
|
this._eventCallbacks.push({ eventName: name, callback: callback });
|
@@ -90,7 +90,7 @@ RomoSelectedOptionsList.prototype.doRefreshUI = function() {
|
|
90
90
|
var maxRows = this.focusElem.data('romo-selected-options-list-max-rows') || 0;
|
91
91
|
var maxHeight = listTopPad+(itemHeight*maxRows)+(itemMarginBottom*(maxRows-1))+(2*itemBorderWidth*maxRows)+listBottomPad+(itemHeight/2);
|
92
92
|
}
|
93
|
-
if (maxRows !==
|
93
|
+
if (maxRows !== 0 && (uiListElemHeight > maxHeight)) {
|
94
94
|
this.elem.css({
|
95
95
|
'height': String(maxHeight)+'px',
|
96
96
|
'overflow-y': 'auto'
|
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.9
|
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-09-
|
13
|
+
date: 2017-09-28 00:00:00 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: assert
|