@zodec/core 0.0.5 → 0.0.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/dist/zodec.d.ts +2 -1
- package/dist/zodec.d.ts.map +1 -1
- package/dist/zodec.js +25 -0
- package/package.json +1 -1
package/dist/zodec.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "reflect-metadata";
|
|
2
|
-
import { ZodType } from "zod";
|
|
2
|
+
import { z, ZodType } from "zod";
|
|
3
3
|
/**
|
|
4
4
|
* Utility class for schemas and classes.
|
|
5
5
|
*/
|
|
@@ -11,5 +11,6 @@ export declare class Zodec {
|
|
|
11
11
|
* @returns The Zod schema if found, otherwise undefined.
|
|
12
12
|
*/
|
|
13
13
|
static of(target: any): ZodType<any> | undefined;
|
|
14
|
+
static validate(input: any, target?: any): z.ZodSafeParseResult<any>;
|
|
14
15
|
}
|
|
15
16
|
//# sourceMappingURL=zodec.d.ts.map
|
package/dist/zodec.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zodec.d.ts","sourceRoot":"","sources":["../src/zodec.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"zodec.d.ts","sourceRoot":"","sources":["../src/zodec.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAKjC;;GAEG;AACH,qBAAa,KAAK;IACd;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS;IAIhD,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,GAAE,GAAU,GAAG,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC;CA4B7E"}
|
package/dist/zodec.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import "reflect-metadata";
|
|
2
|
+
import { z } from "zod";
|
|
2
3
|
import { ZODEC__SCHEMA } from "./constants.zodec.js";
|
|
3
4
|
/**
|
|
4
5
|
* Utility class for schemas and classes.
|
|
@@ -13,4 +14,28 @@ export class Zodec {
|
|
|
13
14
|
static of(target) {
|
|
14
15
|
return Reflect.getMetadata(ZODEC__SCHEMA, target);
|
|
15
16
|
}
|
|
17
|
+
static validate(input, target = null) {
|
|
18
|
+
if (!target) {
|
|
19
|
+
target = input?.constructor;
|
|
20
|
+
}
|
|
21
|
+
if (!target) {
|
|
22
|
+
return {
|
|
23
|
+
success: true, data: input
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
// console.log("zodec/validate", input, target, target?.name)
|
|
27
|
+
const schema = this.of(target);
|
|
28
|
+
if (schema) {
|
|
29
|
+
let validtn = schema.safeParse(input);
|
|
30
|
+
if (!validtn.success) {
|
|
31
|
+
validtn.data = z.treeifyError(validtn.error);
|
|
32
|
+
}
|
|
33
|
+
return validtn;
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
return {
|
|
37
|
+
success: true, data: input
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
}
|
|
16
41
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zodec/core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.6",
|
|
4
4
|
"description": "Generate Zod schemas using TypeScript decorators. Define validation inline with class definitions - combining Zod's power with decorator syntax.",
|
|
5
5
|
"author": "Vizhy",
|
|
6
6
|
"license": "MIT",
|