jsuites 4.12.6 → 4.12.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.
@@ -17,7 +17,7 @@
17
17
 
18
18
  var jSuites = function(options) {
19
19
  var obj = {}
20
- var version = '4.12.6';
20
+ var version = '4.12.9';
21
21
 
22
22
  var find = function(DOMElement, component) {
23
23
  if (DOMElement[component.type] && DOMElement[component.type] == component) {
@@ -503,25 +503,29 @@ jSuites.ajax = (function(options, complete) {
503
503
  // Parse object to variables format
504
504
  var parseData = function (value, key) {
505
505
  var vars = [];
506
- var keys = Object.keys(value);
507
- if (keys.length) {
508
- for (var i = 0; i < keys.length; i++) {
509
- if (key) {
510
- var k = key + '[' + keys[i] + ']';
511
- } else {
512
- var k = keys[i];
513
- }
506
+ if (value) {
507
+ var keys = Object.keys(value);
508
+ if (keys.length) {
509
+ for (var i = 0; i < keys.length; i++) {
510
+ if (key) {
511
+ var k = key + '[' + keys[i] + ']';
512
+ } else {
513
+ var k = keys[i];
514
+ }
514
515
 
515
- if (value[k] instanceof FileList) {
516
- vars[k] = value[keys[i]];
517
- } else if (typeof (value[keys[i]]) == 'object') {
518
- var r = parseData(value[keys[i]], k);
519
- var o = Object.keys(r);
520
- for (var j = 0; j < o.length; j++) {
521
- vars[o[j]] = r[o[j]];
516
+ if (value[k] instanceof FileList) {
517
+ vars[k] = value[keys[i]];
518
+ } else if (value[keys[i]] === null || value[keys[i]] === undefined) {
519
+ vars[k] = '';
520
+ } else if (typeof(value[keys[i]]) == 'object') {
521
+ var r = parseData(value[keys[i]], k);
522
+ var o = Object.keys(r);
523
+ for (var j = 0; j < o.length; j++) {
524
+ vars[o[j]] = r[o[j]];
525
+ }
526
+ } else {
527
+ vars[k] = value[keys[i]];
522
528
  }
523
- } else {
524
- vars[k] = value[keys[i]];
525
529
  }
526
530
  }
527
531
  }
@@ -7292,7 +7296,7 @@ jSuites.mask = (function() {
7292
7296
  if (adjustNumeric) {
7293
7297
  var p = null;
7294
7298
  for (var i = 0; i < n.length; i++) {
7295
- if (n[i].match(/[\-0-9]/g) || n[i] == '.' || n[i] == ',') {
7299
+ if (n[i].match(/[\-0-9]/g) || n[i] == '.' || n[i] == ',') {
7296
7300
  p = i;
7297
7301
  }
7298
7302
  }
@@ -7337,7 +7341,11 @@ jSuites.mask = (function() {
7337
7341
  var Value = function(v, updateCaret, adjustNumeric) {
7338
7342
  if (this.tagName == 'DIV') {
7339
7343
  if (v === undefined) {
7340
- return this.innerText;
7344
+ var v = this.innerText;
7345
+ if (this.value && this.value.length > v.length) {
7346
+ v = this.value;
7347
+ }
7348
+ return v;
7341
7349
  } else {
7342
7350
  if (this.innerText !== v) {
7343
7351
  this.innerText = v;
@@ -8067,10 +8075,14 @@ jSuites.mask = (function() {
8067
8075
 
8068
8076
  // Mask detected start the process
8069
8077
  if (! isFormula(o.value) && (o.mask || o.locale)) {
8070
- // Compatibility ixes
8078
+ // Compatibility fixes
8071
8079
  if (o.mask) {
8072
8080
  // Remove []
8073
8081
  o.mask = o.mask.replace(new RegExp(/\[.*?\]/),'');
8082
+ if (o.mask.indexOf(';') !== -1) {
8083
+ var t = o.mask.split(';');
8084
+ o.mask = t[0];
8085
+ }
8074
8086
  // Excel mask TODO: Improve
8075
8087
  if (o.mask.indexOf('##') !== -1) {
8076
8088
  var d = o.mask.split(';');
@@ -8226,6 +8238,15 @@ jSuites.mask = (function() {
8226
8238
  options.mask = options.format;
8227
8239
  }
8228
8240
 
8241
+ // Remove []
8242
+ if (options.mask) {
8243
+ if (options.mask.indexOf(';') !== -1) {
8244
+ var t = options.mask.split(';');
8245
+ options.mask = t[0];
8246
+ }
8247
+ options.mask = options.mask.replace(new RegExp(/\[.*?\]/),'');
8248
+ }
8249
+
8229
8250
  // Get decimal
8230
8251
  getDecimal.call(options, options.mask);
8231
8252
 
@@ -8301,6 +8322,10 @@ jSuites.mask = (function() {
8301
8322
 
8302
8323
  // Remove []
8303
8324
  if (options.mask) {
8325
+ if (options.mask.indexOf(';') !== -1) {
8326
+ var t = options.mask.split(';');
8327
+ options.mask = t[0];
8328
+ }
8304
8329
  options.mask = options.mask.replace(new RegExp(/\[.*?\]/),'');
8305
8330
  }
8306
8331
 
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.12.6';
20
+ var version = '4.12.9';
21
21
 
22
22
  var find = function(DOMElement, component) {
23
23
  if (DOMElement[component.type] && DOMElement[component.type] == component) {
@@ -503,25 +503,29 @@ jSuites.ajax = (function(options, complete) {
503
503
  // Parse object to variables format
504
504
  var parseData = function (value, key) {
505
505
  var vars = [];
506
- var keys = Object.keys(value);
507
- if (keys.length) {
508
- for (var i = 0; i < keys.length; i++) {
509
- if (key) {
510
- var k = key + '[' + keys[i] + ']';
511
- } else {
512
- var k = keys[i];
513
- }
506
+ if (value) {
507
+ var keys = Object.keys(value);
508
+ if (keys.length) {
509
+ for (var i = 0; i < keys.length; i++) {
510
+ if (key) {
511
+ var k = key + '[' + keys[i] + ']';
512
+ } else {
513
+ var k = keys[i];
514
+ }
514
515
 
515
- if (value[k] instanceof FileList) {
516
- vars[k] = value[keys[i]];
517
- } else if (typeof (value[keys[i]]) == 'object') {
518
- var r = parseData(value[keys[i]], k);
519
- var o = Object.keys(r);
520
- for (var j = 0; j < o.length; j++) {
521
- vars[o[j]] = r[o[j]];
516
+ if (value[k] instanceof FileList) {
517
+ vars[k] = value[keys[i]];
518
+ } else if (value[keys[i]] === null || value[keys[i]] === undefined) {
519
+ vars[k] = '';
520
+ } else if (typeof(value[keys[i]]) == 'object') {
521
+ var r = parseData(value[keys[i]], k);
522
+ var o = Object.keys(r);
523
+ for (var j = 0; j < o.length; j++) {
524
+ vars[o[j]] = r[o[j]];
525
+ }
526
+ } else {
527
+ vars[k] = value[keys[i]];
522
528
  }
523
- } else {
524
- vars[k] = value[keys[i]];
525
529
  }
526
530
  }
527
531
  }
@@ -7717,7 +7721,7 @@ jSuites.mask = (function() {
7717
7721
  if (adjustNumeric) {
7718
7722
  var p = null;
7719
7723
  for (var i = 0; i < n.length; i++) {
7720
- if (n[i].match(/[\-0-9]/g) || n[i] == '.' || n[i] == ',') {
7724
+ if (n[i].match(/[\-0-9]/g) || n[i] == '.' || n[i] == ',') {
7721
7725
  p = i;
7722
7726
  }
7723
7727
  }
@@ -7762,7 +7766,11 @@ jSuites.mask = (function() {
7762
7766
  var Value = function(v, updateCaret, adjustNumeric) {
7763
7767
  if (this.tagName == 'DIV') {
7764
7768
  if (v === undefined) {
7765
- return this.innerText;
7769
+ var v = this.innerText;
7770
+ if (this.value && this.value.length > v.length) {
7771
+ v = this.value;
7772
+ }
7773
+ return v;
7766
7774
  } else {
7767
7775
  if (this.innerText !== v) {
7768
7776
  this.innerText = v;
@@ -8492,10 +8500,14 @@ jSuites.mask = (function() {
8492
8500
 
8493
8501
  // Mask detected start the process
8494
8502
  if (! isFormula(o.value) && (o.mask || o.locale)) {
8495
- // Compatibility ixes
8503
+ // Compatibility fixes
8496
8504
  if (o.mask) {
8497
8505
  // Remove []
8498
8506
  o.mask = o.mask.replace(new RegExp(/\[.*?\]/),'');
8507
+ if (o.mask.indexOf(';') !== -1) {
8508
+ var t = o.mask.split(';');
8509
+ o.mask = t[0];
8510
+ }
8499
8511
  // Excel mask TODO: Improve
8500
8512
  if (o.mask.indexOf('##') !== -1) {
8501
8513
  var d = o.mask.split(';');
@@ -8651,6 +8663,15 @@ jSuites.mask = (function() {
8651
8663
  options.mask = options.format;
8652
8664
  }
8653
8665
 
8666
+ // Remove []
8667
+ if (options.mask) {
8668
+ if (options.mask.indexOf(';') !== -1) {
8669
+ var t = options.mask.split(';');
8670
+ options.mask = t[0];
8671
+ }
8672
+ options.mask = options.mask.replace(new RegExp(/\[.*?\]/),'');
8673
+ }
8674
+
8654
8675
  // Get decimal
8655
8676
  getDecimal.call(options, options.mask);
8656
8677
 
@@ -8726,6 +8747,10 @@ jSuites.mask = (function() {
8726
8747
 
8727
8748
  // Remove []
8728
8749
  if (options.mask) {
8750
+ if (options.mask.indexOf(';') !== -1) {
8751
+ var t = options.mask.split(';');
8752
+ options.mask = t[0];
8753
+ }
8729
8754
  options.mask = options.mask.replace(new RegExp(/\[.*?\]/),'');
8730
8755
  }
8731
8756
 
@@ -12002,10 +12027,10 @@ jSuites.validations = (function() {
12002
12027
  return value >= range[0];
12003
12028
  },
12004
12029
  '=': function(value, range) {
12005
- return value === range[0];
12030
+ return value == range[0];
12006
12031
  },
12007
12032
  '!=': function(value, range) {
12008
- return value !== range[0];
12033
+ return value != range[0];
12009
12034
  },
12010
12035
  }
12011
12036
 
@@ -12043,6 +12068,12 @@ jSuites.validations = (function() {
12043
12068
  'not contains': function(value, range) {
12044
12069
  return !value.includes(range[0]);
12045
12070
  },
12071
+ 'begins with': function(value, range) {
12072
+ return value.startsWith(range[0]);
12073
+ },
12074
+ 'ends with': function(value, range) {
12075
+ return value.endsWith(range[0]);
12076
+ },
12046
12077
  '=': function(value, range) {
12047
12078
  return value === range[0];
12048
12079
  },
@@ -12083,7 +12114,15 @@ jSuites.validations = (function() {
12083
12114
  component.required = function(data) {
12084
12115
  return data.trim() ? true : false;
12085
12116
  }
12086
-
12117
+
12118
+ component.exist = function(data, options) {
12119
+ return !!data.toString();
12120
+ }
12121
+
12122
+ component['not exist'] = function(data, options) {
12123
+ return !data.toString();
12124
+ }
12125
+
12087
12126
  component.number = function(data, options) {
12088
12127
  if (! isNumeric(data)) {
12089
12128
  return false;
@@ -12115,7 +12154,7 @@ jSuites.validations = (function() {
12115
12154
  return false;
12116
12155
  }
12117
12156
 
12118
- var validOption = options.value[0].split(',').findIndex(function name(item) {
12157
+ var validOption = options.value[0].findIndex(function name(item) {
12119
12158
  return item == data;
12120
12159
  });
12121
12160
 
@@ -12158,6 +12197,12 @@ jSuites.validations = (function() {
12158
12197
  return textCriterias[options.criteria](data, options.value);
12159
12198
  }
12160
12199
 
12200
+ component.textLength = function(data, options) {
12201
+ data = data.toString();
12202
+
12203
+ return component.number(data.length, options);
12204
+ }
12205
+
12161
12206
  return component;
12162
12207
  })();
12163
12208
 
package/package.json CHANGED
@@ -19,7 +19,7 @@
19
19
  "javascript plugins"
20
20
  ],
21
21
  "main": "dist/jsuites.js",
22
- "version": "4.12.6",
22
+ "version": "4.12.9",
23
23
  "bugs": "https://github.com/jsuites/jsuites/issues",
24
24
  "homepage": "https://github.com/jsuites/jsuites",
25
25
  "docs": "https://jsuites.net",