@miroir-framework/jzod-ts 0.6.1 → 0.6.2

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/bundle.d.ts CHANGED
@@ -114,7 +114,7 @@ type JzodLiteral = {
114
114
  [x: string]: any;
115
115
  } | undefined;
116
116
  type: "literal";
117
- definition: string;
117
+ definition: string | number | bigint | boolean;
118
118
  };
119
119
  type JzodIntersection = {
120
120
  optional?: boolean | undefined;
@@ -149,6 +149,7 @@ type JzodObject = {
149
149
  extend?: (JzodReference | JzodObject) | undefined;
150
150
  type: "object";
151
151
  nonStrict?: boolean | undefined;
152
+ partial?: boolean | undefined;
152
153
  definition: {
153
154
  [x: string]: JzodElement;
154
155
  };
package/dist/bundle.js CHANGED
@@ -78,10 +78,10 @@ const jzodEnumAttributeTypes = z.enum(["any", "bigint", "boolean", "date", "neve
78
78
  const jzodEnumElementTypes = z.enum(["array", "enum", "function", "lazy", "literal", "intersection", "map", "object", "promise", "record", "schemaReference", "set", "simpleType", "tuple", "union"]);
79
79
  const jzodFunction = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ type: z.literal("function"), definition: z.object({ args: z.array(z.lazy(() => jzodElement)), returns: z.lazy(() => jzodElement).optional() }).strict() }).strict();
80
80
  const jzodLazy = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ type: z.literal("lazy"), definition: z.lazy(() => jzodFunction) }).strict();
81
- const jzodLiteral = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ type: z.literal("literal"), definition: z.string() }).strict();
81
+ const jzodLiteral = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ type: z.literal("literal"), definition: z.union([z.string(), z.number(), z.bigint(), z.boolean()]) }).strict();
82
82
  const jzodIntersection = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ type: z.literal("intersection"), definition: z.object({ left: z.lazy(() => jzodElement), right: z.lazy(() => jzodElement) }).strict() }).strict();
83
83
  const jzodMap = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ type: z.literal("map"), definition: z.tuple([z.lazy(() => jzodElement), z.lazy(() => jzodElement)]) }).strict();
84
- const jzodObject = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ extend: z.union([z.lazy(() => jzodReference), z.lazy(() => jzodObject)]).optional(), type: z.literal("object"), nonStrict: z.boolean().optional(), definition: z.record(z.string(), z.lazy(() => jzodElement)) }).strict();
84
+ const jzodObject = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ extend: z.union([z.lazy(() => jzodReference), z.lazy(() => jzodObject)]).optional(), type: z.literal("object"), nonStrict: z.boolean().optional(), partial: z.boolean().optional(), definition: z.record(z.string(), z.lazy(() => jzodElement)) }).strict();
85
85
  const jzodPromise = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ type: z.literal("promise"), definition: z.lazy(() => jzodElement) }).strict();
86
86
  const jzodRecord = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ type: z.literal("record"), definition: z.lazy(() => jzodElement) }).strict();
87
87
  const jzodReference = z.object({ optional: z.boolean().optional(), nullable: z.boolean().optional(), extra: z.record(z.string(), z.any()).optional() }).strict().extend({ type: z.literal("schemaReference"), context: z.record(z.string(), z.lazy(() => jzodElement)).optional(), definition: z.object({ eager: z.boolean().optional(), relativePath: z.string().optional(), absolutePath: z.string().optional() }).strict() }).strict();
@@ -1,4 +1,4 @@
1
- import { z } from "zod";
1
+ import { ZodType, z } from "zod";
2
2
  export type JzodBaseObject = {
3
3
  optional?: boolean | undefined;
4
4
  nullable?: boolean | undefined;
@@ -40,6 +40,7 @@ export type JzodAttributeDateWithValidations = {
40
40
  } | undefined;
41
41
  type: "simpleType";
42
42
  definition: "date";
43
+ coerce?: boolean | undefined;
43
44
  validations: JzodAttributeDateValidations[];
44
45
  };
45
46
  export type JzodAttributeNumberValidations = {
@@ -57,6 +58,7 @@ export type JzodAttributeNumberWithValidations = {
57
58
  } | undefined;
58
59
  type: "simpleType";
59
60
  definition: "number";
61
+ coerce?: boolean | undefined;
60
62
  validations: JzodAttributeNumberValidations[];
61
63
  };
62
64
  export type JzodAttributeStringValidations = {
@@ -74,6 +76,7 @@ export type JzodAttributeStringWithValidations = {
74
76
  } | undefined;
75
77
  type: "simpleType";
76
78
  definition: "string";
79
+ coerce?: boolean | undefined;
77
80
  validations: JzodAttributeStringValidations[];
78
81
  };
79
82
  export type JzodElement = JzodArray | JzodAttribute | JzodAttributeDateWithValidations | JzodAttributeNumberWithValidations | JzodAttributeStringWithValidations | JzodEnum | JzodFunction | JzodLazy | JzodLiteral | JzodIntersection | JzodMap | JzodObject | JzodPromise | JzodRecord | JzodReference | JzodSet | JzodTuple | JzodUnion;
@@ -116,7 +119,7 @@ export type JzodLiteral = {
116
119
  [x: string]: any;
117
120
  } | undefined;
118
121
  type: "literal";
119
- definition: string;
122
+ definition: string | number | bigint | boolean;
120
123
  };
121
124
  export type JzodIntersection = {
122
125
  optional?: boolean | undefined;
@@ -151,6 +154,7 @@ export type JzodObject = {
151
154
  extend?: (JzodReference | JzodObject) | undefined;
152
155
  type: "object";
153
156
  nonStrict?: boolean | undefined;
157
+ partial?: boolean | undefined;
154
158
  definition: {
155
159
  [x: string]: JzodElement;
156
160
  };
@@ -243,4 +247,4 @@ export declare const jzodReference: z.ZodType<JzodReference>;
243
247
  export declare const jzodSet: z.ZodType<JzodSet>;
244
248
  export declare const jzodTuple: z.ZodType<JzodTuple>;
245
249
  export declare const jzodUnion: z.ZodType<JzodUnion>;
246
- export declare const jzodBootstrapElementSchema: z.ZodType<JzodBootstrapElementSchema>;
250
+ export declare const jzodBootstrapElementSchema: z.ZodLazy<ZodType<JzodElement, z.ZodTypeDef, JzodElement>>;
@@ -119,7 +119,7 @@ export type JzodLiteral = {
119
119
  [x: string]: any;
120
120
  } | undefined;
121
121
  type: "literal";
122
- definition: string;
122
+ definition: string | number | bigint | boolean;
123
123
  };
124
124
  export type JzodIntersection = {
125
125
  optional?: boolean | undefined;
@@ -154,6 +154,7 @@ export type JzodObject = {
154
154
  extend?: (JzodReference | JzodObject) | undefined;
155
155
  type: "object";
156
156
  nonStrict?: boolean | undefined;
157
+ partial?: boolean | undefined;
157
158
  definition: {
158
159
  [x: string]: JzodElement;
159
160
  };
package/package.json CHANGED
@@ -1,13 +1,14 @@
1
1
  {
2
2
  "name": "@miroir-framework/jzod-ts",
3
3
  "private": false,
4
- "version": "0.6.1",
4
+ "version": "0.6.2",
5
5
  "description": "The Typescript-related functionalities of Jzod.",
6
6
  "main": "dist/bundle.js",
7
7
  "types": "dist/bundle.d.ts",
8
8
  "type": "module",
9
9
  "scripts": {
10
- "preBuild": "tsc --rootDir . --baseUrl . --module ESnext --target ES2017 --moduleResolution node --allowSyntheticDefaultImports --outdir ./tmp/ || node ./tmp/src/preBuild.js",
10
+ "preBuild": "tsc --rootDir . --baseUrl . --module ESnext --target ES2017 --moduleResolution node --allowSyntheticDefaultImports --outdir ./tmp/ && node ./tmp/src/preBuild.js",
11
+ "preBuildRun": "node ./tmp/src/preBuild.js",
11
12
  "compile": "npx tsc",
12
13
  "build": "rollup --config",
13
14
  "test": "cross-env NODE_ENV=test jest --verbose --silent=false -t"
@@ -17,7 +18,7 @@
17
18
  "bugs": "https://github.com/miroir-framework/jzod/issues",
18
19
  "license": "MIT",
19
20
  "dependencies": {
20
- "@miroir-framework/jzod": "0.6.1",
21
+ "@miroir-framework/jzod": "0.6.2",
21
22
  "zod": "^3.22.2",
22
23
  "zod-to-ts": "^1.2.0"
23
24
  },
package/src/JzodToTs.ts CHANGED
@@ -27,7 +27,7 @@ export function jzodToTsTypeAliasesAndZodText(
27
27
  ): TsTypeAliasesAndZodText
28
28
  {
29
29
  const elementZodSchemaAndDescription = jzodElementSchemaToZodSchemaAndDescription(
30
- element,
30
+ element as any,
31
31
  () => ({}),
32
32
  () => ({}),
33
33
  (innerReference: ZodTypeAny & GetType, relativeReference: string | undefined) =>
@@ -120,7 +120,7 @@ export type JzodLiteral = {
120
120
  [x: string]: any;
121
121
  } | undefined;
122
122
  type: "literal";
123
- definition: string;
123
+ definition: string | number | bigint | boolean;
124
124
  };
125
125
  export type JzodIntersection = {
126
126
  optional?: boolean | undefined;
@@ -155,6 +155,7 @@ export type JzodObject = {
155
155
  extend?: (JzodReference | JzodObject) | undefined;
156
156
  type: "object";
157
157
  nonStrict?: boolean | undefined;
158
+ partial?: boolean | undefined;
158
159
  definition: {
159
160
  [x: string]: JzodElement;
160
161
  };
@@ -238,10 +239,10 @@ export const jzodEnumAttributeTypes: z.ZodType<JzodEnumAttributeTypes> = z.enum(
238
239
  export const jzodEnumElementTypes: z.ZodType<JzodEnumElementTypes> = z.enum(["array","enum","function","lazy","literal","intersection","map","object","promise","record","schemaReference","set","simpleType","tuple","union"]);
239
240
  export const jzodFunction: z.ZodType<JzodFunction> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("function"), definition:z.object({args:z.array(z.lazy(() =>jzodElement)), returns:z.lazy(() =>jzodElement).optional()}).strict()}).strict();
240
241
  export const jzodLazy: z.ZodType<JzodLazy> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("lazy"), definition:z.lazy(() =>jzodFunction)}).strict();
241
- export const jzodLiteral: z.ZodType<JzodLiteral> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("literal"), definition:z.string()}).strict();
242
+ export const jzodLiteral: z.ZodType<JzodLiteral> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("literal"), definition:z.union([z.string(), z.number(), z.bigint(), z.boolean()])}).strict();
242
243
  export const jzodIntersection: z.ZodType<JzodIntersection> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("intersection"), definition:z.object({left:z.lazy(() =>jzodElement), right:z.lazy(() =>jzodElement)}).strict()}).strict();
243
244
  export const jzodMap: z.ZodType<JzodMap> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("map"), definition:z.tuple([z.lazy(() =>jzodElement), z.lazy(() =>jzodElement)])}).strict();
244
- export const jzodObject: z.ZodType<JzodObject> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({extend:z.union([z.lazy(() =>jzodReference), z.lazy(() =>jzodObject)]).optional(), type:z.literal("object"), nonStrict:z.boolean().optional(), definition:z.record(z.string(),z.lazy(() =>jzodElement))}).strict();
245
+ export const jzodObject: z.ZodType<JzodObject> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({extend:z.union([z.lazy(() =>jzodReference), z.lazy(() =>jzodObject)]).optional(), type:z.literal("object"), nonStrict:z.boolean().optional(), partial:z.boolean().optional(), definition:z.record(z.string(),z.lazy(() =>jzodElement))}).strict();
245
246
  export const jzodPromise: z.ZodType<JzodPromise> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("promise"), definition:z.lazy(() =>jzodElement)}).strict();
246
247
  export const jzodRecord: z.ZodType<JzodRecord> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("record"), definition:z.lazy(() =>jzodElement)}).strict();
247
248
  export const jzodReference: z.ZodType<JzodReference> = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("schemaReference"), context:z.record(z.string(),z.lazy(() =>jzodElement)).optional(), definition:z.object({eager:z.boolean().optional(), relativePath:z.string().optional(), absolutePath:z.string().optional()}).strict()}).strict();
package/src/preBuild.ts CHANGED
@@ -43,12 +43,17 @@ const jzodSchemaConversion
43
43
  },
44
44
  ];
45
45
 
46
+ console.info("Prebuild!");
47
+
46
48
  try {
47
49
  for (const schema of jzodSchemaConversion) {
48
50
  generateZodSchemaFileFromJzodSchema(schema.jzodElement,schema.targetFileName,schema.jzodSchemaVariableName)
51
+ console.info("GENERATING",jzodBootstrapElementSchema);
49
52
  console.info("GENERATED",schema.targetFileName);
50
53
  }
51
-
54
+
52
55
  } catch (error) {
53
56
  console.error("could not generate TS files from Jzod schemas", error);
54
- }
57
+ }
58
+
59
+ console.info("Prebuild end!");
@@ -120,7 +120,7 @@ export type JzodLiteral = {
120
120
  [x: string]: any;
121
121
  } | undefined;
122
122
  type: "literal";
123
- definition: string;
123
+ definition: string | number | bigint | boolean;
124
124
  };
125
125
  export type JzodIntersection = {
126
126
  optional?: boolean | undefined;
@@ -155,6 +155,7 @@ export type JzodObject = {
155
155
  extend?: (JzodReference | JzodObject) | undefined;
156
156
  type: "object";
157
157
  nonStrict?: boolean | undefined;
158
+ partial?: boolean | undefined;
158
159
  definition: {
159
160
  [x: string]: JzodElement;
160
161
  };
@@ -239,10 +240,10 @@ export const jzodEnumAttributeTypes = z.enum(["any","bigint","boolean","date","n
239
240
  export const jzodEnumElementTypes = z.enum(["array","enum","function","lazy","literal","intersection","map","object","promise","record","schemaReference","set","simpleType","tuple","union"]);
240
241
  export const jzodFunction = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("function"), definition:z.object({args:z.array(z.lazy(() =>jzodElement)), returns:z.lazy(() =>jzodElement).optional()}).strict()}).strict();
241
242
  export const jzodLazy = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("lazy"), definition:z.lazy(() =>jzodFunction)}).strict();
242
- export const jzodLiteral = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("literal"), definition:z.string()}).strict();
243
+ export const jzodLiteral = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("literal"), definition:z.union([z.string(), z.number(), z.bigint(), z.boolean()])}).strict();
243
244
  export const jzodIntersection = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("intersection"), definition:z.object({left:z.lazy(() =>jzodElement), right:z.lazy(() =>jzodElement)}).strict()}).strict();
244
245
  export const jzodMap = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("map"), definition:z.tuple([z.lazy(() =>jzodElement), z.lazy(() =>jzodElement)])}).strict();
245
- export const jzodObject = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({extend:z.union([z.lazy(() =>jzodReference), z.lazy(() =>jzodObject)]).optional(), type:z.literal("object"), nonStrict:z.boolean().optional(), definition:z.record(z.string(),z.lazy(() =>jzodElement))}).strict();
246
+ export const jzodObject = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({extend:z.union([z.lazy(() =>jzodReference), z.lazy(() =>jzodObject)]).optional(), type:z.literal("object"), nonStrict:z.boolean().optional(), partial:z.boolean().optional(), definition:z.record(z.string(),z.lazy(() =>jzodElement))}).strict();
246
247
  export const jzodPromise = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("promise"), definition:z.lazy(() =>jzodElement)}).strict();
247
248
  export const jzodRecord = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("record"), definition:z.lazy(() =>jzodElement)}).strict();
248
249
  export const jzodReference = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("schemaReference"), context:z.record(z.string(),z.lazy(() =>jzodElement)).optional(), definition:z.object({eager:z.boolean().optional(), relativePath:z.string().optional(), absolutePath:z.string().optional()}).strict()}).strict();
@@ -250,4 +251,4 @@ export const jzodSet = z.object({optional:z.boolean().optional(), nullable:z.boo
250
251
  export const jzodTuple = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("tuple"), definition:z.array(z.lazy(() =>jzodElement))}).strict();
251
252
  export const jzodUnion = z.object({optional:z.boolean().optional(), nullable:z.boolean().optional(), extra:z.record(z.string(),z.any()).optional()}).strict().extend({type:z.literal("union"), discriminator:z.string().optional(), definition:z.array(z.lazy(() =>jzodElement))}).strict();
252
253
  export const a = z.array(z.lazy(() =>jzodArray));
253
- export const testJzodSchema4 = z.lazy(() =>a);
254
+ export const testJzodSchema4 = z.lazy(() =>a);