@tsed/ajv 8.8.4 → 8.9.0-beta.1
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.
|
@@ -14,7 +14,7 @@ export class AjvService {
|
|
|
14
14
|
this.ajv = inject(Ajv);
|
|
15
15
|
}
|
|
16
16
|
async validate(value, options) {
|
|
17
|
-
let { schema: defaultSchema, type, collectionType, ...additionalOptions } = this.mapOptions(options);
|
|
17
|
+
let { schema: defaultSchema, type, collectionType, returnsCoercedValues = this.returnsCoercedValues, ...additionalOptions } = this.mapOptions(options);
|
|
18
18
|
const schema = defaultSchema || getJsonSchema(type, { ...additionalOptions, customKeys: true });
|
|
19
19
|
if (schema) {
|
|
20
20
|
const localValue = this.returnsCoercedValues ? value : deepClone(value);
|
|
@@ -29,7 +29,7 @@ export class AjvService {
|
|
|
29
29
|
value: localValue
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
|
-
if (
|
|
32
|
+
if (returnsCoercedValues) {
|
|
33
33
|
return localValue;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AjvService.js","sourceRoot":"","sources":["../../../src/services/AjvService.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,CAAC;AAElB,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAO,MAAM,YAAY,CAAC;AACpF,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAC,MAAM,UAAU,CAAC;AACtD,OAAO,EAAC,aAAa,EAAE,eAAe,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AAC1F,OAAO,EAAC,GAAG,EAAc,MAAM,KAAK,CAAC;AAErC,OAAO,EAAC,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAC,qBAAqB,EAAC,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAC,OAAO,EAAC,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"AjvService.js","sourceRoot":"","sources":["../../../src/services/AjvService.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ export interface AjvValidateOptions extends Record<string, any> {
|
|
|
8
8
|
schema?: JsonSchema | Partial<JsonSchemaObject>;
|
|
9
9
|
type?: Type<any> | any;
|
|
10
10
|
collectionType?: Type<any> | any;
|
|
11
|
+
returnsCoercedValues?: boolean;
|
|
11
12
|
}
|
|
12
13
|
export declare class AjvService {
|
|
13
14
|
readonly name = "ajv";
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@tsed/ajv",
|
|
3
3
|
"description": "AJV package for Ts.ED framework",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"version": "8.
|
|
5
|
+
"version": "8.9.0-beta.1",
|
|
6
6
|
"source": "./src/index.ts",
|
|
7
7
|
"main": "./lib/esm/index.js",
|
|
8
8
|
"module": "./lib/esm/index.js",
|
|
@@ -32,12 +32,12 @@
|
|
|
32
32
|
"tslib": "2.7.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@tsed/barrels": "8.
|
|
36
|
-
"@tsed/core": "8.
|
|
37
|
-
"@tsed/di": "8.
|
|
38
|
-
"@tsed/exceptions": "8.
|
|
39
|
-
"@tsed/schema": "8.
|
|
40
|
-
"@tsed/typescript": "8.
|
|
35
|
+
"@tsed/barrels": "8.9.0-beta.1",
|
|
36
|
+
"@tsed/core": "8.9.0-beta.1",
|
|
37
|
+
"@tsed/di": "8.9.0-beta.1",
|
|
38
|
+
"@tsed/exceptions": "8.9.0-beta.1",
|
|
39
|
+
"@tsed/schema": "8.9.0-beta.1",
|
|
40
|
+
"@tsed/typescript": "8.9.0-beta.1",
|
|
41
41
|
"ajv": "^8.17.1",
|
|
42
42
|
"eslint": "9.12.0",
|
|
43
43
|
"typescript": "5.4.5",
|
|
@@ -45,10 +45,10 @@
|
|
|
45
45
|
"webpack": "^5.75.0"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
|
-
"@tsed/core": ">=8.
|
|
49
|
-
"@tsed/di": ">=8.
|
|
50
|
-
"@tsed/exceptions": ">=8.
|
|
51
|
-
"@tsed/schema": ">=8.
|
|
48
|
+
"@tsed/core": ">=8.9.0-beta.1",
|
|
49
|
+
"@tsed/di": ">=8.9.0-beta.1",
|
|
50
|
+
"@tsed/exceptions": ">=8.9.0-beta.1",
|
|
51
|
+
"@tsed/schema": ">=8.9.0-beta.1",
|
|
52
52
|
"ajv": ">=8.9.0",
|
|
53
53
|
"ajv-errors": ">=3.0.0"
|
|
54
54
|
},
|
|
@@ -72,5 +72,8 @@
|
|
|
72
72
|
},
|
|
73
73
|
"homepage": "https://github.com/tsedio/tsed/tree/production/packages/specs/ajv",
|
|
74
74
|
"author": "Romain Lenzotti",
|
|
75
|
-
"license": "MIT"
|
|
75
|
+
"license": "MIT",
|
|
76
|
+
"publishConfig": {
|
|
77
|
+
"tag": "beta"
|
|
78
|
+
}
|
|
76
79
|
}
|
|
@@ -14,6 +14,7 @@ export interface AjvValidateOptions extends Record<string, any> {
|
|
|
14
14
|
schema?: JsonSchema | Partial<JsonSchemaObject>;
|
|
15
15
|
type?: Type<any> | any;
|
|
16
16
|
collectionType?: Type<any> | any;
|
|
17
|
+
returnsCoercedValues?: boolean;
|
|
17
18
|
}
|
|
18
19
|
|
|
19
20
|
export class AjvService {
|
|
@@ -23,7 +24,13 @@ export class AjvService {
|
|
|
23
24
|
protected ajv = inject(Ajv);
|
|
24
25
|
|
|
25
26
|
async validate(value: any, options: AjvValidateOptions | JsonSchema): Promise<any> {
|
|
26
|
-
let {
|
|
27
|
+
let {
|
|
28
|
+
schema: defaultSchema,
|
|
29
|
+
type,
|
|
30
|
+
collectionType,
|
|
31
|
+
returnsCoercedValues = this.returnsCoercedValues,
|
|
32
|
+
...additionalOptions
|
|
33
|
+
} = this.mapOptions(options);
|
|
27
34
|
|
|
28
35
|
const schema = defaultSchema || getJsonSchema(type, {...additionalOptions, customKeys: true});
|
|
29
36
|
|
|
@@ -43,7 +50,7 @@ export class AjvService {
|
|
|
43
50
|
});
|
|
44
51
|
}
|
|
45
52
|
|
|
46
|
-
if (
|
|
53
|
+
if (returnsCoercedValues) {
|
|
47
54
|
return localValue;
|
|
48
55
|
}
|
|
49
56
|
}
|