@spinajs/validation 1.2.88 → 1.2.103

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/lib/sources.js CHANGED
@@ -41,10 +41,11 @@ const path = __importStar(require("path"));
41
41
  const types_1 = require("./types");
42
42
  let FileSystemSource = class FileSystemSource extends types_1.SchemaSource {
43
43
  Load() {
44
+ if (!this.SchemaDirs)
45
+ return [];
44
46
  return this.SchemaDirs.filter((dir) => fs.existsSync(dir))
45
47
  .flatMap((d) => glob.sync(path.join(d, '/**/*.+(json|js)')))
46
48
  .map((f) => {
47
- //Log.trace(`Found schema at: ${f}`, 'validation');
48
49
  return {
49
50
  schema: require(f),
50
51
  file: path.basename(f),
@@ -1 +1 @@
1
- {"version":3,"file":"sources.js","sourceRoot":"","sources":["../src/sources.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAoD;AACpD,oCAAyC;AACzC,uCAAyB;AACzB,2CAA6B;AAC7B,2CAA6B;AAC7B,mCAA+D;AAG/D,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,oBAAY;IAIzC,IAAI;QACT,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACvD,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC;aACnE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,mDAAmD;YAEnD,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,CAAC,CAAkB;gBACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;aACvB,CAAC;QACJ,CAAC,CAAC,CAAC;IACP,CAAC;CACF,CAAA;AAdC;IADC,IAAA,YAAM,EAAC,qBAAqB,CAAC;;oDACF;AAFjB,gBAAgB;IAD5B,IAAA,eAAU,EAAC,oBAAY,CAAC;GACZ,gBAAgB,CAgB5B;AAhBY,4CAAgB"}
1
+ {"version":3,"file":"sources.js","sourceRoot":"","sources":["../src/sources.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAoD;AACpD,oCAAyC;AACzC,uCAAyB;AACzB,2CAA6B;AAC7B,2CAA6B;AAC7B,mCAA+D;AAG/D,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,oBAAY;IAIzC,IAAI;QACT,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,CAAC;QAEhC,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACvD,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC;aACnE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,CAAC,CAAkB;gBACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;aACvB,CAAC;QACJ,CAAC,CAAC,CAAC;IACP,CAAC;CACF,CAAA;AAdC;IADC,IAAA,YAAM,EAAC,qBAAqB,CAAC;;oDACF;AAFjB,gBAAgB;IAD5B,IAAA,eAAU,EAAC,oBAAY,CAAC;GACZ,gBAAgB,CAgB5B;AAhBY,4CAAgB"}
package/lib/validator.js CHANGED
@@ -81,7 +81,7 @@ class DataValidator extends di_1.SyncModule {
81
81
  tryValidate(schemaOrData, data) {
82
82
  var _a, _b, _c;
83
83
  let schema = null;
84
- if (!data) {
84
+ if (data === null || data === undefined) {
85
85
  schema = Reflect.getMetadata(decorators_1.SCHEMA_SYMBOL, schemaOrData);
86
86
  }
87
87
  else {
@@ -96,25 +96,23 @@ class DataValidator extends di_1.SyncModule {
96
96
  schema = Reflect.getMetadata(decorators_1.SCHEMA_SYMBOL, schemaOrData);
97
97
  }
98
98
  }
99
- if (!schema) {
100
- if (!schema) {
101
- return [
102
- false,
103
- [
104
- {
105
- keyword: 'empty_schema',
106
- instancePath: './',
107
- schemaPath: '',
108
- params: { data: '' },
109
- },
110
- ],
111
- ];
99
+ if (schema) {
100
+ // return [
101
+ // false,
102
+ // [
103
+ // {
104
+ // keyword: 'empty_schema',
105
+ // instancePath: './',
106
+ // schemaPath: '',
107
+ // params: { data: '' },
108
+ // },
109
+ // ],
110
+ // ];
111
+ const result = this.Validator.validate(schema, data ? data : schemaOrData);
112
+ if (!result) {
113
+ return [false, (_c = this.Validator.errors) !== null && _c !== void 0 ? _c : null];
112
114
  }
113
115
  }
114
- const result = this.Validator.validate(schema, data ? data : schemaOrData);
115
- if (!result) {
116
- return [false, (_c = this.Validator.errors) !== null && _c !== void 0 ? _c : null];
117
- }
118
116
  return [true, null];
119
117
  }
120
118
  validate(schemaOrData, data) {
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spinajs/validation",
3
- "version": "1.2.88",
3
+ "version": "1.2.103",
4
4
  "description": "validation library for spinajs framework",
5
5
  "main": "lib/index.js",
6
6
  "private": false,
@@ -41,12 +41,12 @@
41
41
  "@spinajs/configuration": "^1.2.81",
42
42
  "@spinajs/di": "^1.2.81",
43
43
  "@spinajs/exceptions": "^1.2.81",
44
- "@spinajs/log": "^1.2.88",
44
+ "@spinajs/log": "^1.2.103",
45
45
  "ajv": "^8.8.2",
46
46
  "ajv-formats": "^2.1.1",
47
47
  "ajv-keywords": "^5.1.0",
48
48
  "ajv-merge-patch": "^5.0.1",
49
49
  "lodash": "^4.17.21"
50
50
  },
51
- "gitHead": "7c42b937cd76ac16d6af25d7d503eb1a93ce5271"
51
+ "gitHead": "18a08cf4cd3e4d2c728d2d372e3a42ddde071be8"
52
52
  }