@cocreate/validation 1.11.5 → 1.11.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [1.11.6](https://github.com/CoCreate-app/CoCreate-validation/compare/v1.11.5...v1.11.6) (2023-10-17)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * await getValue() ([71acb5f](https://github.com/CoCreate-app/CoCreate-validation/commit/71acb5fceb4c5157bdfa56540324979ed286f671))
7
+
1
8
  ## [1.11.5](https://github.com/CoCreate-app/CoCreate-validation/compare/v1.11.4...v1.11.5) (2023-10-14)
2
9
 
3
10
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cocreate/validation",
3
- "version": "1.11.5",
3
+ "version": "1.11.6",
4
4
  "description": "A simple validation component in vanilla javascript. Easily configured using HTML5 attributes and/or JavaScript API.",
5
5
  "keywords": [
6
6
  "validation",
package/src/index.js CHANGED
@@ -21,7 +21,7 @@ validations.set('unique', unique);
21
21
 
22
22
  const selectors = '[matches], [required], [unique], [subdomain]';
23
23
 
24
- function validate(btn, params) {
24
+ async function validate(btn, params) {
25
25
  let validateElements;
26
26
  let validateSelectors = [];
27
27
  let failedElements = [];
@@ -54,7 +54,7 @@ function validate(btn, params) {
54
54
  }
55
55
  }
56
56
  if (elements.length) {
57
- let failedEls = func(elements);
57
+ let failedEls = await func(elements);
58
58
  if (failedEls)
59
59
  failedElements.push(failedEls);
60
60
  }
@@ -2,11 +2,11 @@
2
2
  import render from '@cocreate/render';
3
3
 
4
4
 
5
- export var required = (elements) => {
5
+ export var required = async (elements) => {
6
6
  let failedElements = [];
7
- for (let element of elements){
8
- let value = element.getValue();
9
- if (value){
7
+ for (let element of elements) {
8
+ let value = await element.getValue();
9
+ if (value) {
10
10
  element.setAttribute('validation', 'true');
11
11
  }
12
12
  else {
@@ -14,17 +14,17 @@ export var required = (elements) => {
14
14
  failedElements.push(element);
15
15
  }
16
16
  }
17
- if (failedElements.length){
18
- render.data({
19
- selector: "[template='validate']",
20
- data: {
21
- type: 'unique',
22
- status: 'failed',
23
- message: 'One or more required fields are missing values',
24
- selector: '[required][validation="false"]',
25
- elements: failedElements
26
- }
27
- });
28
- return failedElements;
17
+ if (failedElements.length) {
18
+ render.data({
19
+ selector: "[template='validate']",
20
+ data: {
21
+ type: 'unique',
22
+ status: 'failed',
23
+ message: 'One or more required fields are missing values',
24
+ selector: '[required][validation="false"]',
25
+ elements: failedElements
26
+ }
27
+ });
28
+ return failedElements;
29
29
  }
30
30
  };
@@ -1,28 +1,28 @@
1
1
  import render from '@cocreate/render';
2
2
 
3
- function initSubdomain(){
3
+ function initSubdomain() {
4
4
  let elements = document.querySelectorAll('[subdomain]');
5
- for (let element of elements){
5
+ for (let element of elements) {
6
6
  element.addEventListener('input', validateSubdomainEvent);
7
7
  }
8
8
  }
9
9
 
10
- function validateSubdomainEvent(e){
10
+ function validateSubdomainEvent(e) {
11
11
  validateSubdomain(e.target);
12
12
  }
13
13
 
14
- function validateSubdomain(element){
15
- let subdomain = element.getValue();
14
+ async function validateSubdomain(element) {
15
+ let subdomain = await element.getValue();
16
16
  let validation = 'false';
17
17
  if (Array.isArray(subdomain))
18
18
  subdomain = subdomain[0]
19
19
  let array = subdomain.split('.');
20
- if (array.length -1 == 2){
20
+ if (array.length - 1 == 2) {
21
21
  validation = 'true';
22
22
  }
23
23
 
24
24
  const pattern = /^[a-z0-9][a-z0-9\-]*[a-z0-9]$/;
25
- if (validation != 'false' && pattern.test(array[0])){
25
+ if (validation != 'false' && pattern.test(array[0])) {
26
26
  validation = 'true';
27
27
  }
28
28
  else
@@ -31,35 +31,35 @@ function validateSubdomain(element){
31
31
  // if (validation && array == 2){
32
32
  // validation = 'true';
33
33
  // }
34
-
34
+
35
35
  element.setAttribute('validation', validation);
36
36
  return validation;
37
37
  }
38
38
 
39
- function subdomain(elements){
39
+ function subdomain(elements) {
40
40
  let failedElements = [];
41
41
  for (let element of elements) {
42
42
  // let isValid = element.getAttribute('subdomain');
43
43
  let isValid = validateSubdomain(element);
44
- if (isValid == 'false'){
44
+ if (isValid == 'false') {
45
45
  failedElements.push(element);
46
46
  }
47
47
  }
48
- if (failedElements.length){
49
- render.data({
50
- selector: "[template='validate']",
51
- data: {
52
- type: 'subdomain',
53
- status: 'failed',
54
- message: 'Enter a valid subdomain. subdomain can only be one level.',
55
- selector: '[subdomain][validation="false"]',
56
- elements: failedElements
57
- }
58
- });
59
- return failedElements;
48
+ if (failedElements.length) {
49
+ render.data({
50
+ selector: "[template='validate']",
51
+ data: {
52
+ type: 'subdomain',
53
+ status: 'failed',
54
+ message: 'Enter a valid subdomain. subdomain can only be one level.',
55
+ selector: '[subdomain][validation="false"]',
56
+ elements: failedElements
57
+ }
58
+ });
59
+ return failedElements;
60
60
  }
61
61
  }
62
62
 
63
63
  initSubdomain();
64
64
 
65
- export {subdomain};
65
+ export { subdomain };