zod-openapi 0.4.3 → 0.5.0
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/README.md +25 -15
- package/lib-commonjs/create/components.js +6 -1
- package/lib-commonjs/create/components.js.map +1 -1
- package/lib-commonjs/create/content.js +9 -6
- package/lib-commonjs/create/content.js.map +1 -1
- package/lib-commonjs/create/parameters.js +4 -1
- package/lib-commonjs/create/parameters.js.map +1 -1
- package/lib-commonjs/create/paths.js +1 -1
- package/lib-commonjs/create/paths.js.map +1 -1
- package/lib-commonjs/create/responses.js +5 -2
- package/lib-commonjs/create/responses.js.map +1 -1
- package/lib-commonjs/create/schema/array.js +2 -2
- package/lib-commonjs/create/schema/array.js.map +1 -1
- package/lib-commonjs/create/schema/catch.js +7 -0
- package/lib-commonjs/create/schema/catch.js.map +1 -0
- package/lib-commonjs/create/schema/default.js +2 -2
- package/lib-commonjs/create/schema/default.js.map +1 -1
- package/lib-commonjs/create/schema/discriminatedUnion.js +2 -2
- package/lib-commonjs/create/schema/discriminatedUnion.js.map +1 -1
- package/lib-commonjs/create/schema/index.js +54 -28
- package/lib-commonjs/create/schema/index.js.map +1 -1
- package/lib-commonjs/create/schema/intersection.js +3 -3
- package/lib-commonjs/create/schema/intersection.js.map +1 -1
- package/lib-commonjs/create/schema/metadata.js +3 -3
- package/lib-commonjs/create/schema/metadata.js.map +1 -1
- package/lib-commonjs/create/schema/nativeEnum.js +2 -2
- package/lib-commonjs/create/schema/nativeEnum.js.map +1 -1
- package/lib-commonjs/create/schema/nullable.js +6 -6
- package/lib-commonjs/create/schema/nullable.js.map +1 -1
- package/lib-commonjs/create/schema/number.js +3 -3
- package/lib-commonjs/create/schema/number.js.map +1 -1
- package/lib-commonjs/create/schema/object.js +9 -9
- package/lib-commonjs/create/schema/object.js.map +1 -1
- package/lib-commonjs/create/schema/optional.js +2 -2
- package/lib-commonjs/create/schema/optional.js.map +1 -1
- package/lib-commonjs/create/schema/pipeline.js +12 -0
- package/lib-commonjs/create/schema/pipeline.js.map +1 -0
- package/lib-commonjs/create/schema/preprocess.js +14 -0
- package/lib-commonjs/create/schema/preprocess.js.map +1 -0
- package/lib-commonjs/create/schema/record.js +2 -2
- package/lib-commonjs/create/schema/record.js.map +1 -1
- package/lib-commonjs/create/schema/refine.js +7 -0
- package/lib-commonjs/create/schema/refine.js.map +1 -0
- package/lib-commonjs/create/schema/transform.js +14 -0
- package/lib-commonjs/create/schema/transform.js.map +1 -0
- package/lib-commonjs/create/schema/tuple.js +11 -9
- package/lib-commonjs/create/schema/tuple.js.map +1 -1
- package/lib-commonjs/create/schema/union.js +2 -2
- package/lib-commonjs/create/schema/union.js.map +1 -1
- package/lib-commonjs/create/schema/unknown.js +18 -0
- package/lib-commonjs/create/schema/unknown.js.map +1 -0
- package/lib-commonjs/extendZod.js.map +1 -1
- package/lib-es2015/create/components.js +6 -1
- package/lib-es2015/create/components.js.map +1 -1
- package/lib-es2015/create/content.js +9 -6
- package/lib-es2015/create/content.js.map +1 -1
- package/lib-es2015/create/parameters.js +4 -1
- package/lib-es2015/create/parameters.js.map +1 -1
- package/lib-es2015/create/paths.js +1 -1
- package/lib-es2015/create/paths.js.map +1 -1
- package/lib-es2015/create/responses.js +5 -2
- package/lib-es2015/create/responses.js.map +1 -1
- package/lib-es2015/create/schema/array.js +2 -2
- package/lib-es2015/create/schema/array.js.map +1 -1
- package/lib-es2015/create/schema/catch.js +3 -0
- package/lib-es2015/create/schema/catch.js.map +1 -0
- package/lib-es2015/create/schema/default.js +2 -2
- package/lib-es2015/create/schema/default.js.map +1 -1
- package/lib-es2015/create/schema/discriminatedUnion.js +2 -2
- package/lib-es2015/create/schema/discriminatedUnion.js.map +1 -1
- package/lib-es2015/create/schema/index.js +56 -30
- package/lib-es2015/create/schema/index.js.map +1 -1
- package/lib-es2015/create/schema/intersection.js +3 -3
- package/lib-es2015/create/schema/intersection.js.map +1 -1
- package/lib-es2015/create/schema/metadata.js +3 -3
- package/lib-es2015/create/schema/metadata.js.map +1 -1
- package/lib-es2015/create/schema/nativeEnum.js +2 -2
- package/lib-es2015/create/schema/nativeEnum.js.map +1 -1
- package/lib-es2015/create/schema/nullable.js +6 -6
- package/lib-es2015/create/schema/nullable.js.map +1 -1
- package/lib-es2015/create/schema/number.js +3 -3
- package/lib-es2015/create/schema/number.js.map +1 -1
- package/lib-es2015/create/schema/object.js +9 -9
- package/lib-es2015/create/schema/object.js.map +1 -1
- package/lib-es2015/create/schema/optional.js +2 -2
- package/lib-es2015/create/schema/optional.js.map +1 -1
- package/lib-es2015/create/schema/pipeline.js +8 -0
- package/lib-es2015/create/schema/pipeline.js.map +1 -0
- package/lib-es2015/create/schema/preprocess.js +10 -0
- package/lib-es2015/create/schema/preprocess.js.map +1 -0
- package/lib-es2015/create/schema/record.js +2 -2
- package/lib-es2015/create/schema/record.js.map +1 -1
- package/lib-es2015/create/schema/refine.js +3 -0
- package/lib-es2015/create/schema/refine.js.map +1 -0
- package/lib-es2015/create/schema/transform.js +10 -0
- package/lib-es2015/create/schema/transform.js.map +1 -0
- package/lib-es2015/create/schema/tuple.js +11 -9
- package/lib-es2015/create/schema/tuple.js.map +1 -1
- package/lib-es2015/create/schema/union.js +2 -2
- package/lib-es2015/create/schema/union.js.map +1 -1
- package/lib-es2015/create/schema/unknown.js +14 -0
- package/lib-es2015/create/schema/unknown.js.map +1 -0
- package/lib-es2015/extendZod.js.map +1 -1
- package/lib-types/create/components.d.ts +6 -4
- package/lib-types/create/content.d.ts +2 -2
- package/lib-types/create/schema/array.d.ts +2 -2
- package/lib-types/create/schema/catch.d.ts +4 -0
- package/lib-types/create/schema/default.d.ts +2 -2
- package/lib-types/create/schema/discriminatedUnion.d.ts +2 -2
- package/lib-types/create/schema/index.d.ts +9 -4
- package/lib-types/create/schema/intersection.d.ts +2 -2
- package/lib-types/create/schema/metadata.d.ts +2 -2
- package/lib-types/create/schema/nativeEnum.d.ts +2 -2
- package/lib-types/create/schema/nullable.d.ts +2 -2
- package/lib-types/create/schema/number.d.ts +2 -2
- package/lib-types/create/schema/object.d.ts +5 -5
- package/lib-types/create/schema/optional.d.ts +2 -2
- package/lib-types/create/schema/pipeline.d.ts +4 -0
- package/lib-types/create/schema/preprocess.d.ts +4 -0
- package/lib-types/create/schema/record.d.ts +2 -2
- package/lib-types/create/schema/refine.d.ts +4 -0
- package/lib-types/create/schema/transform.d.ts +4 -0
- package/lib-types/create/schema/tuple.d.ts +2 -2
- package/lib-types/create/schema/union.d.ts +2 -2
- package/lib-types/create/schema/unknown.d.ts +3 -0
- package/lib-types/extendZod.d.ts +14 -0
- package/package.json +1 -1
- package/lib-commonjs/create/schema/effects.js +0 -7
- package/lib-commonjs/create/schema/effects.js.map +0 -1
- package/lib-es2015/create/schema/effects.js +0 -3
- package/lib-es2015/create/schema/effects.js.map +0 -1
- package/lib-types/create/schema/effects.d.ts +0 -4
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ZodEnum, } from 'zod';
|
|
2
2
|
import { createComponentSchemaRef } from '../components';
|
|
3
3
|
import { createSchemaOrRef } from '.';
|
|
4
|
-
export const createDiscriminatedUnionSchema = (zodDiscriminatedUnion,
|
|
4
|
+
export const createDiscriminatedUnionSchema = (zodDiscriminatedUnion, state) => {
|
|
5
5
|
const options = zodDiscriminatedUnion.options;
|
|
6
|
-
const schemas = options.map((option) => createSchemaOrRef(option,
|
|
6
|
+
const schemas = options.map((option) => createSchemaOrRef(option, state));
|
|
7
7
|
const discriminator = mapDiscriminator(options, zodDiscriminatedUnion.discriminator);
|
|
8
8
|
return {
|
|
9
9
|
oneOf: schemas,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discriminatedUnion.js","sourceRoot":"","sources":["../../../src/create/schema/discriminatedUnion.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,OAAO,GAGR,MAAM,KAAK,CAAC;AAEb,OAAO,
|
|
1
|
+
{"version":3,"file":"discriminatedUnion.js","sourceRoot":"","sources":["../../../src/create/schema/discriminatedUnion.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,OAAO,GAGR,MAAM,KAAK,CAAC;AAEb,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAC5C,qBAAsD,EACtD,KAAkB,EACE,EAAE;IACtB,MAAM,OAAO,GAAG,qBAAqB,CAAC,OAAyB,CAAC;IAChE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC1E,MAAM,aAAa,GAAG,gBAAgB,CACpC,OAAO,EACP,qBAAqB,CAAC,aAAuB,CAC9C,CAAC;IACF,OAAO;QACL,KAAK,EAAE,OAAO;QACd,GAAG,CAAC,aAAa,IAAI,EAAE,aAAa,EAAE,CAAC;KACxC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,UAA0B,EAC1B,aAAqB,EACrB,EAAE;IACF,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE;QACpD,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAE/B,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;QACnB,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,GAAa,CAAC;QACxD,MAAM,KAAK,GAAI,SAAS,CAAC,KAAqB,CAAC,aAAa,CAAC,CAAC;QAE9D,IAAI,KAAK,YAAY,OAAO,EAAE;YAC5B,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,MAAkB,EAAE;gBACrD,GAAG,CAAC,SAAS,CAAC,GAAG,wBAAwB,CAAC,SAAS,CAAC,CAAC;aACtD;YACD,OAAO,GAAG,CAAC;SACZ;QAED,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,IAA+B,CAAA,CAAC,KAAK,CAAC;QAEnE,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;YACpC,MAAM,IAAI,KAAK,CACb,iBAAiB,aAAa,mEAAmE,CAClG,CAAC;SACH;QAED,GAAG,CAAC,YAAY,CAAC,GAAG,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACxD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,YAAY,EAAE,aAAa;QAC3B,OAAO;KACR,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { ZodArray, ZodBoolean, ZodDate, ZodDefault, ZodDiscriminatedUnion, ZodEffects, ZodEnum, ZodIntersection, ZodLiteral, ZodNativeEnum, ZodNull, ZodNullable, ZodNumber, ZodObject, ZodOptional, ZodRecord, ZodString, ZodTuple, ZodUnion, } from 'zod';
|
|
2
|
-
import { createComponentSchemaRef } from '../components';
|
|
1
|
+
import { ZodArray, ZodBoolean, ZodCatch, ZodDate, ZodDefault, ZodDiscriminatedUnion, ZodEffects, ZodEnum, ZodIntersection, ZodLiteral, ZodNativeEnum, ZodNull, ZodNullable, ZodNumber, ZodObject, ZodOptional, ZodPipeline, ZodRecord, ZodString, ZodTuple, ZodUnion, } from 'zod';
|
|
2
|
+
import { createComponentSchemaRef, } from '../components';
|
|
3
3
|
import { createArraySchema } from './array';
|
|
4
4
|
import { createBooleanSchema } from './boolean';
|
|
5
|
+
import { createCatchSchema } from './catch';
|
|
5
6
|
import { createDateSchema } from './date';
|
|
6
7
|
import { createDefaultSchema } from './default';
|
|
7
8
|
import { createDiscriminatedUnionSchema } from './discriminatedUnion';
|
|
8
|
-
import { createEffectsSchema } from './effects';
|
|
9
9
|
import { createEnumSchema } from './enum';
|
|
10
10
|
import { createIntersectionSchema } from './intersection';
|
|
11
11
|
import { createLiteralSchema } from './literal';
|
|
@@ -16,16 +16,21 @@ import { createNullableSchema } from './nullable';
|
|
|
16
16
|
import { createNumberSchema } from './number';
|
|
17
17
|
import { createObjectSchema } from './object';
|
|
18
18
|
import { createOptionalSchema } from './optional';
|
|
19
|
+
import { createPipelineSchema } from './pipeline';
|
|
20
|
+
import { createPreprocessSchema } from './preprocess';
|
|
19
21
|
import { createRecordSchema } from './record';
|
|
22
|
+
import { createRefineSchema } from './refine';
|
|
20
23
|
import { createStringSchema } from './string';
|
|
24
|
+
import { createTransformSchema } from './transform';
|
|
21
25
|
import { createTupleSchema } from './tuple';
|
|
22
26
|
import { createUnionSchema } from './union';
|
|
23
|
-
|
|
27
|
+
import { createUnknownSchema } from './unknown';
|
|
28
|
+
export const createSchema = (zodSchema, state) => {
|
|
24
29
|
if (zodSchema instanceof ZodString) {
|
|
25
30
|
return createStringSchema(zodSchema);
|
|
26
31
|
}
|
|
27
32
|
if (zodSchema instanceof ZodNumber) {
|
|
28
|
-
return createNumberSchema(zodSchema,
|
|
33
|
+
return createNumberSchema(zodSchema, state);
|
|
29
34
|
}
|
|
30
35
|
if (zodSchema instanceof ZodBoolean) {
|
|
31
36
|
return createBooleanSchema(zodSchema);
|
|
@@ -37,85 +42,106 @@ export const createSchema = (zodSchema, components) => {
|
|
|
37
42
|
return createLiteralSchema(zodSchema);
|
|
38
43
|
}
|
|
39
44
|
if (zodSchema instanceof ZodNativeEnum) {
|
|
40
|
-
return createNativeEnumSchema(zodSchema,
|
|
45
|
+
return createNativeEnumSchema(zodSchema, state);
|
|
41
46
|
}
|
|
42
47
|
if (zodSchema instanceof ZodArray) {
|
|
43
|
-
return createArraySchema(zodSchema,
|
|
48
|
+
return createArraySchema(zodSchema, state);
|
|
44
49
|
}
|
|
45
50
|
if (zodSchema instanceof ZodObject) {
|
|
46
|
-
return createObjectSchema(zodSchema,
|
|
51
|
+
return createObjectSchema(zodSchema, state);
|
|
47
52
|
}
|
|
48
53
|
if (zodSchema instanceof ZodUnion) {
|
|
49
|
-
return createUnionSchema(zodSchema,
|
|
54
|
+
return createUnionSchema(zodSchema, state);
|
|
50
55
|
}
|
|
51
56
|
if (zodSchema instanceof ZodDiscriminatedUnion) {
|
|
52
|
-
return createDiscriminatedUnionSchema(zodSchema,
|
|
57
|
+
return createDiscriminatedUnionSchema(zodSchema, state);
|
|
53
58
|
}
|
|
54
59
|
if (zodSchema instanceof ZodNull) {
|
|
55
60
|
return createNullSchema(zodSchema);
|
|
56
61
|
}
|
|
57
62
|
if (zodSchema instanceof ZodNullable) {
|
|
58
|
-
return createNullableSchema(zodSchema,
|
|
63
|
+
return createNullableSchema(zodSchema, state);
|
|
59
64
|
}
|
|
60
65
|
if (zodSchema instanceof ZodOptional) {
|
|
61
|
-
return createOptionalSchema(zodSchema,
|
|
66
|
+
return createOptionalSchema(zodSchema, state);
|
|
62
67
|
}
|
|
63
68
|
if (zodSchema instanceof ZodDefault) {
|
|
64
|
-
return createDefaultSchema(zodSchema,
|
|
69
|
+
return createDefaultSchema(zodSchema, state);
|
|
65
70
|
}
|
|
66
71
|
if (zodSchema instanceof ZodRecord) {
|
|
67
|
-
return createRecordSchema(zodSchema,
|
|
72
|
+
return createRecordSchema(zodSchema, state);
|
|
68
73
|
}
|
|
69
74
|
if (zodSchema instanceof ZodTuple) {
|
|
70
|
-
return createTupleSchema(zodSchema,
|
|
75
|
+
return createTupleSchema(zodSchema, state);
|
|
71
76
|
}
|
|
72
77
|
if (zodSchema instanceof ZodDate) {
|
|
73
78
|
return createDateSchema(zodSchema);
|
|
74
79
|
}
|
|
80
|
+
if (zodSchema instanceof ZodPipeline) {
|
|
81
|
+
return createPipelineSchema(zodSchema, state);
|
|
82
|
+
}
|
|
83
|
+
if (zodSchema instanceof ZodEffects &&
|
|
84
|
+
zodSchema._def.effect.type === 'transform') {
|
|
85
|
+
return createTransformSchema(zodSchema, state);
|
|
86
|
+
}
|
|
87
|
+
if (zodSchema instanceof ZodEffects &&
|
|
88
|
+
zodSchema._def.effect.type === 'preprocess') {
|
|
89
|
+
return createPreprocessSchema(zodSchema, state);
|
|
90
|
+
}
|
|
75
91
|
if (zodSchema instanceof ZodEffects &&
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
return createEffectsSchema(zodSchema, components);
|
|
92
|
+
zodSchema._def.effect.type === 'refinement') {
|
|
93
|
+
return createRefineSchema(zodSchema, state);
|
|
79
94
|
}
|
|
80
95
|
if (zodSchema instanceof ZodNativeEnum) {
|
|
81
|
-
return createNativeEnumSchema(zodSchema,
|
|
96
|
+
return createNativeEnumSchema(zodSchema, state);
|
|
82
97
|
}
|
|
83
98
|
if (zodSchema instanceof ZodIntersection) {
|
|
84
|
-
return createIntersectionSchema(zodSchema,
|
|
99
|
+
return createIntersectionSchema(zodSchema, state);
|
|
85
100
|
}
|
|
86
|
-
if (
|
|
87
|
-
|
|
101
|
+
if (zodSchema instanceof ZodCatch) {
|
|
102
|
+
return createCatchSchema(zodSchema, state);
|
|
88
103
|
}
|
|
89
|
-
return
|
|
104
|
+
return createUnknownSchema(zodSchema);
|
|
90
105
|
};
|
|
91
|
-
export const createRegisteredSchema = (zodSchema, schemaRef,
|
|
92
|
-
const component = components.schemas[schemaRef];
|
|
106
|
+
export const createRegisteredSchema = (zodSchema, schemaRef, state) => {
|
|
107
|
+
const component = state.components.schemas[schemaRef];
|
|
93
108
|
if (component) {
|
|
94
109
|
if (component.zodSchema !== zodSchema) {
|
|
95
110
|
throw new Error(`schemaRef "${schemaRef}" is already registered`);
|
|
96
111
|
}
|
|
112
|
+
if (!component.types?.includes(state.type)) {
|
|
113
|
+
throw new Error(`schemaRef "${schemaRef}" was created with a ZodEffect meaning that the input type is different from the output type. This type is currently being referenced in a response and request. Wrap the ZodEffect in a ZodPipeline to verify the contents of the effect`);
|
|
114
|
+
}
|
|
97
115
|
return {
|
|
98
116
|
$ref: createComponentSchemaRef(schemaRef),
|
|
99
117
|
};
|
|
100
118
|
}
|
|
119
|
+
const newState = {
|
|
120
|
+
components: state.components,
|
|
121
|
+
type: state.type,
|
|
122
|
+
};
|
|
123
|
+
const schemaOrRef = createSchemaWithMetadata(zodSchema, newState);
|
|
101
124
|
// Optional Objects can return a reference object
|
|
102
|
-
const schemaOrRef = createSchemaWithMetadata(zodSchema, components);
|
|
103
125
|
if ('$ref' in schemaOrRef) {
|
|
104
126
|
throw new Error('Unexpected Error: received a reference object');
|
|
105
127
|
}
|
|
106
|
-
components.schemas[schemaRef] = {
|
|
128
|
+
state.components.schemas[schemaRef] = {
|
|
107
129
|
schemaObject: schemaOrRef,
|
|
108
130
|
zodSchema,
|
|
131
|
+
types: newState?.effectType ? [newState.effectType] : ['input', 'output'],
|
|
109
132
|
};
|
|
133
|
+
if (newState.effectType) {
|
|
134
|
+
state.effectType = newState.effectType;
|
|
135
|
+
}
|
|
110
136
|
return {
|
|
111
137
|
$ref: createComponentSchemaRef(schemaRef),
|
|
112
138
|
};
|
|
113
139
|
};
|
|
114
|
-
export const createSchemaOrRef = (zodSchema,
|
|
140
|
+
export const createSchemaOrRef = (zodSchema, state) => {
|
|
115
141
|
const schemaRef = zodSchema._def.openapi?.ref;
|
|
116
142
|
if (schemaRef) {
|
|
117
|
-
return createRegisteredSchema(zodSchema, schemaRef,
|
|
143
|
+
return createRegisteredSchema(zodSchema, schemaRef, state);
|
|
118
144
|
}
|
|
119
|
-
return createSchemaWithMetadata(zodSchema,
|
|
145
|
+
return createSchemaWithMetadata(zodSchema, state);
|
|
120
146
|
};
|
|
121
147
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/create/schema/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EACR,UAAU,EACV,OAAO,EACP,UAAU,EACV,qBAAqB,EACrB,UAAU,EACV,OAAO,EACP,eAAe,EACf,UAAU,EACV,aAAa,EACb,OAAO,EACP,WAAW,EACX,SAAS,EACT,SAAS,EACT,WAAW,EACX,SAAS,EACT,SAAS,EACT,QAAQ,EAGR,QAAQ,GACT,MAAM,KAAK,CAAC;AAEb,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/create/schema/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { createSchemaOrRef } from '.';
|
|
2
|
-
export const createIntersectionSchema = (zodIntersection,
|
|
2
|
+
export const createIntersectionSchema = (zodIntersection, state) => ({
|
|
3
3
|
allOf: [
|
|
4
|
-
createSchemaOrRef(zodIntersection._def.left,
|
|
5
|
-
createSchemaOrRef(zodIntersection._def.right,
|
|
4
|
+
createSchemaOrRef(zodIntersection._def.left, state),
|
|
5
|
+
createSchemaOrRef(zodIntersection._def.right, state),
|
|
6
6
|
],
|
|
7
7
|
});
|
|
8
8
|
//# sourceMappingURL=intersection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intersection.js","sourceRoot":"","sources":["../../../src/create/schema/intersection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"intersection.js","sourceRoot":"","sources":["../../../src/create/schema/intersection.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,eAA0C,EAC1C,KAAkB,EAC0B,EAAE,CAAC,CAAC;IAChD,KAAK,EAAE;QACL,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,IAAe,EAAE,KAAK,CAAC;QAC9D,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,KAAgB,EAAE,KAAK,CAAC;KAChE;CACF,CAAC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createSchema } from '.';
|
|
2
|
-
export const createSchemaWithMetadata = (zodSchema,
|
|
3
|
-
const { ref, param, header, ...additionalMetadata } = zodSchema._def.openapi ?? {};
|
|
4
|
-
const schemaOrRef = createSchema(zodSchema,
|
|
2
|
+
export const createSchemaWithMetadata = (zodSchema, state) => {
|
|
3
|
+
const { ref, refType, param, header, ...additionalMetadata } = zodSchema._def.openapi ?? {};
|
|
4
|
+
const schemaOrRef = createSchema(zodSchema, state);
|
|
5
5
|
const description = zodSchema.description;
|
|
6
6
|
return enhanceWithMetadata(schemaOrRef, {
|
|
7
7
|
...(description && { description }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/create/schema/metadata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/create/schema/metadata.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,YAAY,EAAE,MAAM,GAAG,CAAC;AAE9C,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAKtC,SAAsC,EACtC,KAAkB,EAC0B,EAAE;IAC9C,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,kBAAkB,EAAE,GAC1D,SAAS,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;IAE1C,OAAO,mBAAmB,CAAC,WAAW,EAAE;QACtC,GAAG,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,CAAC;QACnC,GAAG,kBAAkB;KACtB,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,WAAuD,EACvD,QAAoD,EACR,EAAE;IAC9C,IAAI,MAAM,IAAI,WAAW,EAAE;QACzB,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,EAAE;YAC7D,OAAO,WAAW,CAAC;SACpB;QAED,OAAO;YACL,KAAK,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;SAC/B,CAAC;KACH;IAED,IAAI,WAAW,CAAC,KAAK,EAAE;QACrB,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,OAAO;YACL,GAAG,WAAW;YACd,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACvE,CAAC;KACH;IAED,OAAO;QACL,GAAG,WAAW;QACd,GAAG,QAAQ;KACZ,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { satisfiesVersion } from '../../openapi';
|
|
2
|
-
export const createNativeEnumSchema = (zodEnum,
|
|
2
|
+
export const createNativeEnumSchema = (zodEnum, state) => {
|
|
3
3
|
const enumValues = getValidEnumValues(zodEnum._def.values);
|
|
4
4
|
const { numbers, strings } = sortStringsAndNumbers(enumValues);
|
|
5
5
|
if (strings.length && numbers.length) {
|
|
6
|
-
if (satisfiesVersion(components.openapi, '3.1.0'))
|
|
6
|
+
if (satisfiesVersion(state.components.openapi, '3.1.0'))
|
|
7
7
|
return {
|
|
8
8
|
type: ['string', 'number'],
|
|
9
9
|
enum: [...strings, ...numbers],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nativeEnum.js","sourceRoot":"","sources":["../../../src/create/schema/nativeEnum.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"nativeEnum.js","sourceRoot":"","sources":["../../../src/create/schema/nativeEnum.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAIjD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,OAAyB,EACzB,KAAkB,EAC0B,EAAE;IAC9C,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3D,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAE/D,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE;QACpC,IAAI,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;YACrD,OAAO;gBACL,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBAC1B,IAAI,EAAE,CAAC,GAAG,OAAO,EAAE,GAAG,OAAO,CAAC;aAC/B,CAAC;QACJ,OAAO;YACL,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE;gBACjC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE;aAClC;SACF,CAAC;KACH;IAED,IAAI,OAAO,CAAC,MAAM,EAAE;QAClB,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,OAAO;SACd,CAAC;KACH;IAED,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd,CAAC;AACJ,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,UAAoB,EAAE,EAAE;IACzD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CACzC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,QAAQ,CACzD,CAAC;IACF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,MAA2B,EACR,EAAE,CAAC,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;IAC7E,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;CAC9E,CAAC,CAAC"}
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
import { satisfiesVersion } from '../../openapi';
|
|
2
2
|
import { createSchemaOrRef } from '.';
|
|
3
|
-
export const createNullableSchema = (zodNullable,
|
|
4
|
-
const schemaOrReference = createSchemaOrRef(zodNullable.unwrap(),
|
|
3
|
+
export const createNullableSchema = (zodNullable, state) => {
|
|
4
|
+
const schemaOrReference = createSchemaOrRef(zodNullable.unwrap(), state);
|
|
5
5
|
if ('$ref' in schemaOrReference || schemaOrReference.allOf) {
|
|
6
6
|
return {
|
|
7
|
-
oneOf: mapNullOf([schemaOrReference], components.openapi),
|
|
7
|
+
oneOf: mapNullOf([schemaOrReference], state.components.openapi),
|
|
8
8
|
};
|
|
9
9
|
}
|
|
10
10
|
if (schemaOrReference.oneOf) {
|
|
11
11
|
const { oneOf, ...schema } = schemaOrReference;
|
|
12
12
|
return {
|
|
13
|
-
oneOf: mapNullOf(oneOf, components.openapi),
|
|
13
|
+
oneOf: mapNullOf(oneOf, state.components.openapi),
|
|
14
14
|
...schema,
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
17
|
if (schemaOrReference.anyOf) {
|
|
18
18
|
const { anyOf, ...schema } = schemaOrReference;
|
|
19
19
|
return {
|
|
20
|
-
anyOf: mapNullOf(anyOf, components.openapi),
|
|
20
|
+
anyOf: mapNullOf(anyOf, state.components.openapi),
|
|
21
21
|
...schema,
|
|
22
22
|
};
|
|
23
23
|
}
|
|
24
24
|
const { type, ...schema } = schemaOrReference;
|
|
25
|
-
if (satisfiesVersion(components.openapi, '3.1.0')) {
|
|
25
|
+
if (satisfiesVersion(state.components.openapi, '3.1.0')) {
|
|
26
26
|
return {
|
|
27
27
|
type: mapNullType(type),
|
|
28
28
|
...schema,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nullable.js","sourceRoot":"","sources":["../../../src/create/schema/nullable.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"nullable.js","sourceRoot":"","sources":["../../../src/create/schema/nullable.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGjD,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,WAA6B,EAC7B,KAAkB,EACE,EAAE;IACtB,MAAM,iBAAiB,GAAG,iBAAiB,CACzC,WAAW,CAAC,MAAM,EAAgB,EAClC,KAAK,CACN,CAAC;IAEF,IAAI,MAAM,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,KAAK,EAAE;QAC1D,OAAO;YACL,KAAK,EAAE,SAAS,CAAC,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;SAChE,CAAC;KACH;IAED,IAAI,iBAAiB,CAAC,KAAK,EAAE;QAC3B,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,GAAG,iBAAiB,CAAC;QAC/C,OAAO;YACL,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;YACjD,GAAG,MAAM;SACV,CAAC;KACH;IAED,IAAI,iBAAiB,CAAC,KAAK,EAAE;QAC3B,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,GAAG,iBAAiB,CAAC;QAC/C,OAAO;YACL,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;YACjD,GAAG,MAAM;SACV,CAAC;KACH;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,iBAAiB,CAAC;IAE9C,IAAI,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QACvD,OAAO;YACL,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;YACvB,GAAG,MAAM;SACV,CAAC;KACH;IAED,OAAO;QACL,IAAI;QACJ,QAAQ,EAAE,IAAI;QACd,GAAG,MAAM;KACV,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAClB,IAAgC,EACJ,EAAE;IAC9B,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,MAAM,CAAC;KACf;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;KAC1B;IAED,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAChB,QAAwD,EACxD,OAA0B,EACsB,EAAE;IAClD,IAAI,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QACtC,OAAO,CAAC,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;KACxC;IACD,OAAO,CAAC,GAAG,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAC3C,CAAC,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { satisfiesVersion } from '../../openapi';
|
|
2
|
-
export const createNumberSchema = (zodNumber,
|
|
2
|
+
export const createNumberSchema = (zodNumber, state) => {
|
|
3
3
|
const zodNumberChecks = getZodNumberChecks(zodNumber);
|
|
4
|
-
const minimum = mapMinimum(zodNumberChecks, components.openapi);
|
|
5
|
-
const maximum = mapMaximum(zodNumberChecks, components.openapi);
|
|
4
|
+
const minimum = mapMinimum(zodNumberChecks, state.components.openapi);
|
|
5
|
+
const maximum = mapMaximum(zodNumberChecks, state.components.openapi);
|
|
6
6
|
return {
|
|
7
7
|
type: mapNumberType(zodNumberChecks),
|
|
8
8
|
...(minimum && minimum),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number.js","sourceRoot":"","sources":["../../../src/create/schema/number.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"number.js","sourceRoot":"","sources":["../../../src/create/schema/number.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAKjD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,SAAoB,EACpB,KAAkB,EACE,EAAE;IACtB,MAAM,eAAe,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAEtD,MAAM,OAAO,GAAG,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAEtE,OAAO;QACL,IAAI,EAAE,aAAa,CAAC,eAAe,CAAC;QACpC,GAAG,CAAC,OAAO,IAAK,OAA8B,CAAC;QAC/C,GAAG,CAAC,OAAO,IAAK,OAA8B,CAAC;KAChD,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,cAAiC,EACjC,OAA0B,EAMd,EAAE;IACd,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE;QACvB,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC;IACzC,IAAI,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE;QAChC,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;KACtD;IACD,IAAI,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QACtC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC;KACtC;IACD,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;AAC7C,CAAC,CAAC;AACF,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,cAAiC,EACjC,OAA0B,EAMd,EAAE;IACd,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE;QACvB,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC;IACzC,IAAI,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE;QAChC,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;KACtD;IACD,IAAI,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QACtC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC;KACtC;IACD,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;AAC7C,CAAC,CAAC;AAMF,MAAM,kBAAkB,GAAG,CAAC,SAAoB,EAAqB,EAAE,CACrE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAoB,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;IAC7D,mEAAmE;IACnE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAY,CAAC;IAC/B,OAAO,GAAG,CAAC;AACb,CAAC,EAAE,EAAE,CAAC,CAAC;AAET,MAAM,aAAa,GAAG,CACpB,eAAkC,EACN,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { createComponentSchemaRef } from '../components';
|
|
2
2
|
import { createSchemaOrRef } from '.';
|
|
3
|
-
export const createObjectSchema = (zodObject,
|
|
3
|
+
export const createObjectSchema = (zodObject, state) => {
|
|
4
4
|
if (zodObject._def.extendMetadata?.extendsRef) {
|
|
5
|
-
return createExtendedSchema(zodObject, zodObject._def.extendMetadata.extends, zodObject._def.extendMetadata.extendsRef,
|
|
5
|
+
return createExtendedSchema(zodObject, zodObject._def.extendMetadata.extends, zodObject._def.extendMetadata.extendsRef, state);
|
|
6
6
|
}
|
|
7
|
-
return createObjectSchemaFromShape(zodObject.shape, zodObject._def.unknownKeys === 'strict',
|
|
7
|
+
return createObjectSchemaFromShape(zodObject.shape, zodObject._def.unknownKeys === 'strict', state);
|
|
8
8
|
};
|
|
9
|
-
export const createExtendedSchema = (zodObject, baseZodObject, schemaRef,
|
|
9
|
+
export const createExtendedSchema = (zodObject, baseZodObject, schemaRef, state) => {
|
|
10
10
|
const diffShape = createShapeDiff(baseZodObject._def.shape(), zodObject._def.shape());
|
|
11
11
|
return {
|
|
12
12
|
allOf: [
|
|
13
13
|
{ $ref: createComponentSchemaRef(schemaRef) },
|
|
14
|
-
createObjectSchemaFromShape(diffShape, false,
|
|
14
|
+
createObjectSchemaFromShape(diffShape, false, state),
|
|
15
15
|
],
|
|
16
16
|
};
|
|
17
17
|
};
|
|
@@ -21,9 +21,9 @@ const createShapeDiff = (baseObj, extendedObj) => Object.entries(extendedObj).re
|
|
|
21
21
|
}
|
|
22
22
|
return acc;
|
|
23
23
|
}, {});
|
|
24
|
-
export const createObjectSchemaFromShape = (shape, strict,
|
|
24
|
+
export const createObjectSchemaFromShape = (shape, strict, state) => ({
|
|
25
25
|
type: 'object',
|
|
26
|
-
properties: mapProperties(shape,
|
|
26
|
+
properties: mapProperties(shape, state),
|
|
27
27
|
required: mapRequired(shape),
|
|
28
28
|
...(strict && { additionalProperties: false }),
|
|
29
29
|
});
|
|
@@ -36,8 +36,8 @@ export const mapRequired = (shape) => {
|
|
|
36
36
|
}
|
|
37
37
|
return required;
|
|
38
38
|
};
|
|
39
|
-
export const mapProperties = (shape,
|
|
40
|
-
acc[key] = createSchemaOrRef(zodSchema,
|
|
39
|
+
export const mapProperties = (shape, state) => Object.entries(shape).reduce((acc, [key, zodSchema]) => {
|
|
40
|
+
acc[key] = createSchemaOrRef(zodSchema, state);
|
|
41
41
|
return acc;
|
|
42
42
|
}, {});
|
|
43
43
|
//# sourceMappingURL=object.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../../src/create/schema/object.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../../src/create/schema/object.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createSchemaOrRef } from '.';
|
|
2
|
-
export const createOptionalSchema = (zodOptional,
|
|
2
|
+
export const createOptionalSchema = (zodOptional, state) =>
|
|
3
3
|
// Optional doesn't change OpenAPI schema
|
|
4
|
-
createSchemaOrRef(zodOptional.unwrap(),
|
|
4
|
+
createSchemaOrRef(zodOptional.unwrap(), state);
|
|
5
5
|
//# sourceMappingURL=optional.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optional.js","sourceRoot":"","sources":["../../../src/create/schema/optional.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"optional.js","sourceRoot":"","sources":["../../../src/create/schema/optional.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,WAA6B,EAC7B,KAAkB,EAC0B,EAAE;AAC9C,yCAAyC;AACzC,iBAAiB,CAAC,WAAW,CAAC,MAAM,EAAgB,EAAE,KAAK,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { createSchemaOrRef } from '.';
|
|
2
|
+
export const createPipelineSchema = (zodPipeline, state) => {
|
|
3
|
+
if (state.type === 'input') {
|
|
4
|
+
return createSchemaOrRef(zodPipeline._def.in, state);
|
|
5
|
+
}
|
|
6
|
+
return createSchemaOrRef(zodPipeline._def.out, state);
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=pipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/create/schema/pipeline.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,WAAkC,EAClC,KAAkB,EAC0B,EAAE;IAC9C,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,OAAO,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,EAAgB,EAAE,KAAK,CAAC,CAAC;KACpE;IACD,OAAO,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAiB,EAAE,KAAK,CAAC,CAAC;AACtE,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createUnknownSchema } from './unknown';
|
|
2
|
+
import { createSchemaOrRef } from '.';
|
|
3
|
+
export const createPreprocessSchema = (zodPreprocess, state) => {
|
|
4
|
+
if (state.type === 'output') {
|
|
5
|
+
state.effectType = 'output';
|
|
6
|
+
return createSchemaOrRef(zodPreprocess._def.schema, state);
|
|
7
|
+
}
|
|
8
|
+
return createUnknownSchema(zodPreprocess);
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=preprocess.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preprocess.js","sourceRoot":"","sources":["../../../src/create/schema/preprocess.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAEhD,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,aAAwC,EACxC,KAAkB,EAC0B,EAAE;IAC9C,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;QAC3B,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;QAC5B,OAAO,iBAAiB,CAAC,aAAa,CAAC,IAAI,CAAC,MAAiB,EAAE,KAAK,CAAC,CAAC;KACvE;IAED,OAAO,mBAAmB,CAAC,aAAa,CAAC,CAAC;AAC5C,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createSchemaOrRef } from '.';
|
|
2
|
-
export const createRecordSchema = (zodRecord,
|
|
2
|
+
export const createRecordSchema = (zodRecord, state) => ({
|
|
3
3
|
type: 'object',
|
|
4
|
-
additionalProperties: createSchemaOrRef(zodRecord.valueSchema,
|
|
4
|
+
additionalProperties: createSchemaOrRef(zodRecord.valueSchema, state),
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=record.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record.js","sourceRoot":"","sources":["../../../src/create/schema/record.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"record.js","sourceRoot":"","sources":["../../../src/create/schema/record.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,SAA8B,EAC9B,KAAkB,EACE,EAAE,CAAC,CAAC;IACxB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,iBAAiB,CACrC,SAAS,CAAC,WAAyB,EACnC,KAAK,CACN;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"refine.js","sourceRoot":"","sources":["../../../src/create/schema/refine.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,SAAoC,EACpC,KAAkB,EAC0B,EAAE,CAC9C,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAiB,EAAE,KAAK,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createUnknownSchema } from './unknown';
|
|
2
|
+
import { createSchemaOrRef } from '.';
|
|
3
|
+
export const createTransformSchema = (zodTransform, state) => {
|
|
4
|
+
if (state.type === 'input') {
|
|
5
|
+
state.effectType = 'input';
|
|
6
|
+
return createSchemaOrRef(zodTransform._def.schema, state);
|
|
7
|
+
}
|
|
8
|
+
return createUnknownSchema(zodTransform);
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=transform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../src/create/schema/transform.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAEhD,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,YAAuC,EACvC,KAAkB,EAC0B,EAAE;IAC9C,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC;QAC3B,OAAO,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,MAAiB,EAAE,KAAK,CAAC,CAAC;KACtE;IAED,OAAO,mBAAmB,CAAC,YAAY,CAAC,CAAC;AAC3C,CAAC,CAAC"}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import { satisfiesVersion } from '../../openapi';
|
|
2
2
|
import { createSchemaOrRef } from '.';
|
|
3
|
-
export const createTupleSchema = (zodTuple,
|
|
3
|
+
export const createTupleSchema = (zodTuple, state) => {
|
|
4
4
|
const items = zodTuple.items;
|
|
5
5
|
const rest = zodTuple._def.rest;
|
|
6
6
|
return {
|
|
7
7
|
type: 'array',
|
|
8
|
-
...mapItemProperties(items, rest,
|
|
8
|
+
...mapItemProperties(items, rest, state),
|
|
9
9
|
};
|
|
10
10
|
};
|
|
11
|
-
const mapPrefixItems = (items,
|
|
11
|
+
const mapPrefixItems = (items, state) => {
|
|
12
12
|
if (items.length) {
|
|
13
|
-
return items.map((item) => createSchemaOrRef(item,
|
|
13
|
+
return items.map((item) => createSchemaOrRef(item, state));
|
|
14
14
|
}
|
|
15
15
|
return undefined;
|
|
16
16
|
};
|
|
17
|
-
const mapItemProperties = (items, rest,
|
|
18
|
-
const prefixItems = mapPrefixItems(items,
|
|
19
|
-
if (satisfiesVersion(components.openapi, '3.1.0')) {
|
|
17
|
+
const mapItemProperties = (items, rest, state) => {
|
|
18
|
+
const prefixItems = mapPrefixItems(items, state);
|
|
19
|
+
if (satisfiesVersion(state.components.openapi, '3.1.0')) {
|
|
20
20
|
if (!rest) {
|
|
21
21
|
return {
|
|
22
22
|
maxItems: items.length,
|
|
@@ -25,7 +25,7 @@ const mapItemProperties = (items, rest, components) => {
|
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
return {
|
|
28
|
-
items: createSchemaOrRef(rest,
|
|
28
|
+
items: createSchemaOrRef(rest, state),
|
|
29
29
|
...(prefixItems && { prefixItems }),
|
|
30
30
|
};
|
|
31
31
|
}
|
|
@@ -38,7 +38,9 @@ const mapItemProperties = (items, rest, components) => {
|
|
|
38
38
|
}
|
|
39
39
|
return {
|
|
40
40
|
...(prefixItems && {
|
|
41
|
-
items: {
|
|
41
|
+
items: {
|
|
42
|
+
oneOf: [...prefixItems, createSchemaOrRef(rest, state)],
|
|
43
|
+
},
|
|
42
44
|
}),
|
|
43
45
|
};
|
|
44
46
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tuple.js","sourceRoot":"","sources":["../../../src/create/schema/tuple.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"tuple.js","sourceRoot":"","sources":["../../../src/create/schema/tuple.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAA4B,EAC5B,KAAkB,EACE,EAAE;IACtB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAqB,CAAC;IAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAkB,CAAC;IAC9C,OAAO;QACL,IAAI,EAAE,OAAO;QACb,GAAG,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;KACnB,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,KAAmB,EACnB,KAAkB,EAC6B,EAAE;IACjD,IAAI,KAAK,CAAC,MAAM,EAAE;QAChB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;KAC5D;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CACxB,KAAmB,EACnB,IAAgB,EAChB,KAAkB,EAIlB,EAAE;IACF,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAEjD,IAAI,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QACvD,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;gBACL,QAAQ,EAAE,KAAK,CAAC,MAAM;gBACtB,QAAQ,EAAE,KAAK,CAAC,MAAM;gBACtB,GAAG,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,CAAC;aACpC,CAAC;SACH;QAED,OAAO;YACL,KAAK,EAAE,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC;YACrC,GAAG,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,CAAC;SACpC,CAAC;KACH;IAED,IAAI,CAAC,IAAI,EAAE;QACT,OAAO;YACL,QAAQ,EAAE,KAAK,CAAC,MAAM;YACtB,QAAQ,EAAE,KAAK,CAAC,MAAM;YACtB,GAAG,CAAC,WAAW,IAAI,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC;SACtD,CAAC;KACH;IAED,OAAO;QACL,GAAG,CAAC,WAAW,IAAI;YACjB,KAAK,EAAE;gBACL,KAAK,EAAE,CAAC,GAAG,WAAW,EAAE,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACxD;SACF,CAAC;KACH,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createSchemaOrRef } from '.';
|
|
2
|
-
export const createUnionSchema = (zodUnion,
|
|
2
|
+
export const createUnionSchema = (zodUnion, state) => {
|
|
3
3
|
const options = zodUnion.options;
|
|
4
|
-
const schemas = options.map((option) => createSchemaOrRef(option,
|
|
4
|
+
const schemas = options.map((option) => createSchemaOrRef(option, state));
|
|
5
5
|
return {
|
|
6
6
|
anyOf: schemas,
|
|
7
7
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"union.js","sourceRoot":"","sources":["../../../src/create/schema/union.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"union.js","sourceRoot":"","sources":["../../../src/create/schema/union.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAEnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAAuB,EACvB,KAAkB,EACE,EAAE;IACtB,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAuB,CAAC;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC1E,OAAO;QACL,KAAK,EAAE,OAAO;KACf,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ZodEffects } from 'zod';
|
|
2
|
+
export const createUnknownSchema = (zodSchema) => {
|
|
3
|
+
if (!zodSchema._def.openapi?.type) {
|
|
4
|
+
const zodType = zodSchema.constructor.name;
|
|
5
|
+
const schemaName = zodSchema instanceof ZodEffects
|
|
6
|
+
? `${zodType} - ${zodSchema._def.effect.type}`
|
|
7
|
+
: zodType;
|
|
8
|
+
throw new Error(`Unknown schema ${schemaName}. Please assign it a manual type`);
|
|
9
|
+
}
|
|
10
|
+
return {
|
|
11
|
+
type: zodSchema._def.openapi.type,
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=unknown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unknown.js","sourceRoot":"","sources":["../../../src/create/schema/unknown.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAuB,MAAM,KAAK,CAAC;AAEtD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAKjC,SAAsC,EAClB,EAAE;IACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE;QACjC,MAAM,OAAO,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC;QAC3C,MAAM,UAAU,GACd,SAAS,YAAY,UAAU;YAC7B,CAAC,CAAC,GAAG,OAAO,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAC9C,CAAC,CAAC,OAAO,CAAC;QACd,MAAM,IAAI,KAAK,CACb,kBAAkB,UAAU,kCAAkC,CAC/D,CAAC;KACH;IAED,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI;KAClC,CAAC;AACJ,CAAC,CAAC"}
|