jsuites 4.9.23 → 4.9.24

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.
@@ -17,7 +17,7 @@
17
17
 
18
18
  var jSuites = function(options) {
19
19
  var obj = {}
20
- var version = '4.9.22';
20
+ var version = '4.9.24';
21
21
 
22
22
  var find = function(DOMElement, component) {
23
23
  if (DOMElement[component.type] && DOMElement[component.type] == component) {
@@ -3055,9 +3055,9 @@ jSuites.dropdown = (function(el, options) {
3055
3055
  onfocus: null,
3056
3056
  onblur: null,
3057
3057
  oninsert: null,
3058
- onbeforeinsert: null,
3059
- sortResults: false,
3060
- autofocus: false,
3058
+ onbeforeinsert: null,
3059
+ sortResults: false,
3060
+ autofocus: false,
3061
3061
  }
3062
3062
 
3063
3063
  // Loop through our object
@@ -3370,7 +3370,7 @@ jSuites.dropdown = (function(el, options) {
3370
3370
  /**
3371
3371
  * Add a new item
3372
3372
  * @param {string} title - title of the new item
3373
- * @param {string} id - value/id of the new item
3373
+ * @param {string} id - value/id of the new item
3374
3374
  */
3375
3375
  obj.add = function(title, id) {
3376
3376
  if (! title) {
@@ -3407,8 +3407,8 @@ jSuites.dropdown = (function(el, options) {
3407
3407
  } else if (ret) {
3408
3408
  item = ret;
3409
3409
  }
3410
- }
3411
-
3410
+ }
3411
+
3412
3412
  // Add item to the main list
3413
3413
  obj.options.data.push(item);
3414
3414
 
@@ -3483,11 +3483,11 @@ jSuites.dropdown = (function(el, options) {
3483
3483
  item.element.setAttribute('data-disabled', true);
3484
3484
  }
3485
3485
 
3486
- // Tooltip
3487
- if (data.tooltip) {
3488
- item.element.setAttribute('title', data.tooltip);
3489
- }
3490
-
3486
+ // Tooltip
3487
+ if (data.tooltip) {
3488
+ item.element.setAttribute('title', data.tooltip);
3489
+ }
3490
+
3491
3491
  // Image
3492
3492
  if (data.image) {
3493
3493
  var image = document.createElement('img');
@@ -3507,7 +3507,7 @@ jSuites.dropdown = (function(el, options) {
3507
3507
  if (data.color) {
3508
3508
  icon.style.color = data.color;
3509
3509
  }
3510
- item.element.appendChild(icon);
3510
+ item.element.appendChild(icon);
3511
3511
  } else if (data.color) {
3512
3512
  var color = document.createElement('div');
3513
3513
  color.className = 'jdropdown-color';
@@ -4399,25 +4399,25 @@ jSuites.dropdown = (function(el, options) {
4399
4399
  jSuites.dropdown.keydown = function(e) {
4400
4400
  var dropdown = null;
4401
4401
  if (dropdown = jSuites.dropdown.current) {
4402
- if (e.which == 13 || e.which == 9) { // enter or tab
4403
- if (dropdown.header.value && dropdown.currentIndex == null && dropdown.options.newOptions) {
4404
- // if they typed something in, but it matched nothing, and newOptions are allowed, start that flow
4405
- dropdown.add();
4406
- } else {
4402
+ if (e.which == 13 || e.which == 9) { // enter or tab
4403
+ if (dropdown.header.value && dropdown.currentIndex == null && dropdown.options.newOptions) {
4404
+ // if they typed something in, but it matched nothing, and newOptions are allowed, start that flow
4405
+ dropdown.add();
4406
+ } else {
4407
4407
  // Quick Select/Filter
4408
4408
  if (dropdown.currentIndex == null && dropdown.options.autocomplete == true && dropdown.header.value != "") {
4409
4409
  dropdown.find(dropdown.header.value);
4410
4410
  }
4411
4411
  dropdown.selectIndex(dropdown.currentIndex);
4412
- }
4413
- } else if (e.which == 38) { // up arrow
4412
+ }
4413
+ } else if (e.which == 38) { // up arrow
4414
4414
  if (dropdown.currentIndex == null) {
4415
4415
  dropdown.first();
4416
4416
  } else if (dropdown.currentIndex > 0) {
4417
4417
  dropdown.prev();
4418
4418
  }
4419
4419
  e.preventDefault();
4420
- } else if (e.which == 40) { // down arrow
4420
+ } else if (e.which == 40) { // down arrow
4421
4421
  if (dropdown.currentIndex == null) {
4422
4422
  dropdown.first();
4423
4423
  } else if (dropdown.currentIndex + 1 < dropdown.items.length) {
@@ -6707,10 +6707,10 @@ jSuites.mask = (function() {
6707
6707
  } else {
6708
6708
  // Did not find any decimal last resort the default
6709
6709
  var e = new RegExp('#,##', 'ig');
6710
- if ((v && v.match(e)) || '1.1'.toLocaleString().substring(1,2) == '.') {
6711
- this.options.decimal = '.';
6712
- } else {
6710
+ if ((v && v.match(e)) || '1.1'.toLocaleString().substring(1,2) == ',') {
6713
6711
  this.options.decimal = ',';
6712
+ } else {
6713
+ this.options.decimal = '.';
6714
6714
  }
6715
6715
  }
6716
6716
  }
@@ -6763,10 +6763,7 @@ jSuites.mask = (function() {
6763
6763
  // Get decimal
6764
6764
  var d = getDecimal.call(this);
6765
6765
  // Convert value
6766
- var o = Object.create(this.options || {});
6767
- if (! o.minimumFractionDigits) {
6768
- o.minimumFractionDigits = 1;
6769
- }
6766
+ var o = this.options;
6770
6767
  // Parse value
6771
6768
  v = ParseValue.call(this, v);
6772
6769
  if (v == '') {
@@ -6783,10 +6780,13 @@ jSuites.mask = (function() {
6783
6780
  }
6784
6781
  var n = new Intl.NumberFormat(this.locale, o).format(t);
6785
6782
  n = n.split(d);
6786
- var s = n[1].replace(/[0-9]*/g, '');
6787
- if (s) {
6788
- n[2] = s;
6783
+ if (typeof(n[1]) !== 'undefined') {
6784
+ var s = n[1].replace(/[0-9]*/g, '');
6785
+ if (s) {
6786
+ n[2] = s;
6787
+ }
6789
6788
  }
6789
+
6790
6790
  if (v[1] !== undefined) {
6791
6791
  n[1] = d + v[1];
6792
6792
  } else {
@@ -7859,18 +7859,31 @@ jSuites.mask = (function() {
7859
7859
  d = d[0].length - 2;
7860
7860
  t = value.toFixed(d);
7861
7861
  } else {
7862
- t = (''+value);
7862
+ t = value.toFixed(0);
7863
7863
  }
7864
7864
  } else if (options.locale && fullMask) {
7865
+ // Append zeros
7865
7866
  var d = (''+value).split('.');
7866
- if (! d[1]) {
7867
- d[1] = '00';
7868
- } else {
7869
- if (d[1].length == 1) {
7870
- d[1] += '0';
7867
+ if (options.options) {
7868
+ if (typeof(d[1]) === 'undefined') {
7869
+ d[1] = '';
7871
7870
  }
7871
+ var len = d[1].length;
7872
+ if (options.options.minimumFractionDigits > len) {
7873
+ for (var i = 0; i < options.options.minimumFractionDigits - len; i++) {
7874
+ d[1] += '0';
7875
+ }
7876
+ }
7877
+ }
7878
+ if (! d[1].length) {
7879
+ t = d[0]
7880
+ } else {
7881
+ t = d.join('.');
7882
+ }
7883
+ var len = d[1].length;
7884
+ if (options.options && options.options.maximumFractionDigits < len) {
7885
+ t = parseFloat(t).toFixed(options.options.maximumFractionDigits);
7872
7886
  }
7873
- t = d.join('.');
7874
7887
  } else {
7875
7888
  t = toPlainString(value);
7876
7889
  }
package/dist/jsuites.js CHANGED
@@ -17,7 +17,7 @@
17
17
 
18
18
  var jSuites = function(options) {
19
19
  var obj = {}
20
- var version = '4.9.23';
20
+ var version = '4.9.24';
21
21
 
22
22
  var find = function(DOMElement, component) {
23
23
  if (DOMElement[component.type] && DOMElement[component.type] == component) {
@@ -7132,10 +7132,10 @@ jSuites.mask = (function() {
7132
7132
  } else {
7133
7133
  // Did not find any decimal last resort the default
7134
7134
  var e = new RegExp('#,##', 'ig');
7135
- if ((v && v.match(e)) || '1.1'.toLocaleString().substring(1,2) == '.') {
7136
- this.options.decimal = '.';
7137
- } else {
7135
+ if ((v && v.match(e)) || '1.1'.toLocaleString().substring(1,2) == ',') {
7138
7136
  this.options.decimal = ',';
7137
+ } else {
7138
+ this.options.decimal = '.';
7139
7139
  }
7140
7140
  }
7141
7141
  }
@@ -7188,10 +7188,7 @@ jSuites.mask = (function() {
7188
7188
  // Get decimal
7189
7189
  var d = getDecimal.call(this);
7190
7190
  // Convert value
7191
- var o = Object.create(this.options || {});
7192
- if (! o.minimumFractionDigits) {
7193
- o.minimumFractionDigits = 1;
7194
- }
7191
+ var o = this.options;
7195
7192
  // Parse value
7196
7193
  v = ParseValue.call(this, v);
7197
7194
  if (v == '') {
@@ -7208,10 +7205,13 @@ jSuites.mask = (function() {
7208
7205
  }
7209
7206
  var n = new Intl.NumberFormat(this.locale, o).format(t);
7210
7207
  n = n.split(d);
7211
- var s = n[1].replace(/[0-9]*/g, '');
7212
- if (s) {
7213
- n[2] = s;
7208
+ if (typeof(n[1]) !== 'undefined') {
7209
+ var s = n[1].replace(/[0-9]*/g, '');
7210
+ if (s) {
7211
+ n[2] = s;
7212
+ }
7214
7213
  }
7214
+
7215
7215
  if (v[1] !== undefined) {
7216
7216
  n[1] = d + v[1];
7217
7217
  } else {
@@ -8284,18 +8284,31 @@ jSuites.mask = (function() {
8284
8284
  d = d[0].length - 2;
8285
8285
  t = value.toFixed(d);
8286
8286
  } else {
8287
- t = (''+value);
8287
+ t = value.toFixed(0);
8288
8288
  }
8289
8289
  } else if (options.locale && fullMask) {
8290
+ // Append zeros
8290
8291
  var d = (''+value).split('.');
8291
- if (! d[1]) {
8292
- d[1] = '00';
8293
- } else {
8294
- if (d[1].length == 1) {
8295
- d[1] += '0';
8292
+ if (options.options) {
8293
+ if (typeof(d[1]) === 'undefined') {
8294
+ d[1] = '';
8295
+ }
8296
+ var len = d[1].length;
8297
+ if (options.options.minimumFractionDigits > len) {
8298
+ for (var i = 0; i < options.options.minimumFractionDigits - len; i++) {
8299
+ d[1] += '0';
8300
+ }
8296
8301
  }
8297
8302
  }
8298
- t = d.join('.');
8303
+ if (! d[1].length) {
8304
+ t = d[0]
8305
+ } else {
8306
+ t = d.join('.');
8307
+ }
8308
+ var len = d[1].length;
8309
+ if (options.options && options.options.maximumFractionDigits < len) {
8310
+ t = parseFloat(t).toFixed(options.options.maximumFractionDigits);
8311
+ }
8299
8312
  } else {
8300
8313
  t = toPlainString(value);
8301
8314
  }
package/package.json CHANGED
@@ -19,7 +19,7 @@
19
19
  "javascript plugins"
20
20
  ],
21
21
  "main": "dist/jsuites.js",
22
- "version": "4.9.23",
22
+ "version": "4.9.24",
23
23
  "bugs": "https://github.com/jsuites/jsuites/issues",
24
24
  "homepage": "https://github.com/jsuites/jsuites",
25
25
  "docs": "https://jsuites.net",