zod-openapi 2.4.0 → 2.5.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.
Files changed (124) hide show
  1. package/lib-commonjs/create/components.js +14 -10
  2. package/lib-commonjs/create/components.js.map +1 -1
  3. package/lib-commonjs/create/content.js +13 -8
  4. package/lib-commonjs/create/content.js.map +1 -1
  5. package/lib-commonjs/create/parameters.js +26 -18
  6. package/lib-commonjs/create/parameters.js.map +1 -1
  7. package/lib-commonjs/create/paths.js +29 -32
  8. package/lib-commonjs/create/paths.js.map +1 -1
  9. package/lib-commonjs/create/responses.js +19 -9
  10. package/lib-commonjs/create/responses.js.map +1 -1
  11. package/lib-commonjs/create/schema/array.js +1 -1
  12. package/lib-commonjs/create/schema/array.js.map +1 -1
  13. package/lib-commonjs/create/schema/brand.js +1 -1
  14. package/lib-commonjs/create/schema/brand.js.map +1 -1
  15. package/lib-commonjs/create/schema/catch.js +1 -1
  16. package/lib-commonjs/create/schema/catch.js.map +1 -1
  17. package/lib-commonjs/create/schema/default.js +1 -1
  18. package/lib-commonjs/create/schema/default.js.map +1 -1
  19. package/lib-commonjs/create/schema/discriminatedUnion.js +4 -4
  20. package/lib-commonjs/create/schema/discriminatedUnion.js.map +1 -1
  21. package/lib-commonjs/create/schema/index.js +39 -14
  22. package/lib-commonjs/create/schema/index.js.map +1 -1
  23. package/lib-commonjs/create/schema/intersection.js +6 -2
  24. package/lib-commonjs/create/schema/intersection.js.map +1 -1
  25. package/lib-commonjs/create/schema/lazy.js +1 -6
  26. package/lib-commonjs/create/schema/lazy.js.map +1 -1
  27. package/lib-commonjs/create/schema/manual.js +2 -2
  28. package/lib-commonjs/create/schema/manual.js.map +1 -1
  29. package/lib-commonjs/create/schema/metadata.js +1 -12
  30. package/lib-commonjs/create/schema/metadata.js.map +1 -1
  31. package/lib-commonjs/create/schema/nullable.js +1 -1
  32. package/lib-commonjs/create/schema/nullable.js.map +1 -1
  33. package/lib-commonjs/create/schema/object.js +17 -11
  34. package/lib-commonjs/create/schema/object.js.map +1 -1
  35. package/lib-commonjs/create/schema/optional.js +2 -3
  36. package/lib-commonjs/create/schema/optional.js.map +1 -1
  37. package/lib-commonjs/create/schema/pipeline.js +15 -7
  38. package/lib-commonjs/create/schema/pipeline.js.map +1 -1
  39. package/lib-commonjs/create/schema/preprocess.js +3 -1
  40. package/lib-commonjs/create/schema/preprocess.js.map +1 -1
  41. package/lib-commonjs/create/schema/record.js +1 -1
  42. package/lib-commonjs/create/schema/record.js.map +1 -1
  43. package/lib-commonjs/create/schema/refine.js +1 -1
  44. package/lib-commonjs/create/schema/refine.js.map +1 -1
  45. package/lib-commonjs/create/schema/set.js +1 -1
  46. package/lib-commonjs/create/schema/set.js.map +1 -1
  47. package/lib-commonjs/create/schema/transform.js +14 -7
  48. package/lib-commonjs/create/schema/transform.js.map +1 -1
  49. package/lib-commonjs/create/schema/tuple.js +6 -3
  50. package/lib-commonjs/create/schema/tuple.js.map +1 -1
  51. package/lib-commonjs/create/schema/union.js +1 -1
  52. package/lib-commonjs/create/schema/union.js.map +1 -1
  53. package/lib-commonjs/extendZod.js +2 -2
  54. package/lib-commonjs/extendZod.js.map +1 -1
  55. package/lib-es2015/create/components.js +15 -11
  56. package/lib-es2015/create/components.js.map +1 -1
  57. package/lib-es2015/create/content.js +14 -9
  58. package/lib-es2015/create/content.js.map +1 -1
  59. package/lib-es2015/create/parameters.js +27 -19
  60. package/lib-es2015/create/parameters.js.map +1 -1
  61. package/lib-es2015/create/paths.js +29 -32
  62. package/lib-es2015/create/paths.js.map +1 -1
  63. package/lib-es2015/create/responses.js +20 -10
  64. package/lib-es2015/create/responses.js.map +1 -1
  65. package/lib-es2015/create/schema/array.js +1 -1
  66. package/lib-es2015/create/schema/array.js.map +1 -1
  67. package/lib-es2015/create/schema/brand.js +1 -1
  68. package/lib-es2015/create/schema/brand.js.map +1 -1
  69. package/lib-es2015/create/schema/catch.js +1 -1
  70. package/lib-es2015/create/schema/catch.js.map +1 -1
  71. package/lib-es2015/create/schema/default.js +1 -1
  72. package/lib-es2015/create/schema/default.js.map +1 -1
  73. package/lib-es2015/create/schema/discriminatedUnion.js +4 -4
  74. package/lib-es2015/create/schema/discriminatedUnion.js.map +1 -1
  75. package/lib-es2015/create/schema/index.js +37 -14
  76. package/lib-es2015/create/schema/index.js.map +1 -1
  77. package/lib-es2015/create/schema/intersection.js +6 -2
  78. package/lib-es2015/create/schema/intersection.js.map +1 -1
  79. package/lib-es2015/create/schema/lazy.js +1 -6
  80. package/lib-es2015/create/schema/lazy.js.map +1 -1
  81. package/lib-es2015/create/schema/manual.js +2 -2
  82. package/lib-es2015/create/schema/manual.js.map +1 -1
  83. package/lib-es2015/create/schema/metadata.js +0 -10
  84. package/lib-es2015/create/schema/metadata.js.map +1 -1
  85. package/lib-es2015/create/schema/nullable.js +1 -1
  86. package/lib-es2015/create/schema/nullable.js.map +1 -1
  87. package/lib-es2015/create/schema/object.js +17 -11
  88. package/lib-es2015/create/schema/object.js.map +1 -1
  89. package/lib-es2015/create/schema/optional.js +2 -3
  90. package/lib-es2015/create/schema/optional.js.map +1 -1
  91. package/lib-es2015/create/schema/pipeline.js +15 -7
  92. package/lib-es2015/create/schema/pipeline.js.map +1 -1
  93. package/lib-es2015/create/schema/preprocess.js +3 -1
  94. package/lib-es2015/create/schema/preprocess.js.map +1 -1
  95. package/lib-es2015/create/schema/record.js +1 -1
  96. package/lib-es2015/create/schema/record.js.map +1 -1
  97. package/lib-es2015/create/schema/refine.js +1 -1
  98. package/lib-es2015/create/schema/refine.js.map +1 -1
  99. package/lib-es2015/create/schema/set.js +1 -1
  100. package/lib-es2015/create/schema/set.js.map +1 -1
  101. package/lib-es2015/create/schema/transform.js +12 -6
  102. package/lib-es2015/create/schema/transform.js.map +1 -1
  103. package/lib-es2015/create/schema/tuple.js +6 -3
  104. package/lib-es2015/create/schema/tuple.js.map +1 -1
  105. package/lib-es2015/create/schema/union.js +1 -1
  106. package/lib-es2015/create/schema/union.js.map +1 -1
  107. package/lib-es2015/extendZod.js +2 -2
  108. package/lib-es2015/extendZod.js.map +1 -1
  109. package/lib-types/create/content.d.ts +1 -1
  110. package/lib-types/create/parameters.d.ts +4 -4
  111. package/lib-types/create/paths.d.ts +1 -1
  112. package/lib-types/create/responses.d.ts +2 -2
  113. package/lib-types/create/schema/discriminatedUnion.d.ts +1 -1
  114. package/lib-types/create/schema/index.d.ts +6 -3
  115. package/lib-types/create/schema/manual.d.ts +2 -1
  116. package/lib-types/create/schema/metadata.d.ts +0 -3
  117. package/lib-types/create/schema/transform.d.ts +2 -1
  118. package/lib-types/extendZod.d.ts +1 -1
  119. package/package.json +1 -1
  120. package/lib-commonjs/create/errors.js +0 -8
  121. package/lib-commonjs/create/errors.js.map +0 -1
  122. package/lib-es2015/create/errors.js +0 -4
  123. package/lib-es2015/create/errors.js.map +0 -1
  124. package/lib-types/create/errors.d.ts +0 -2
@@ -2,7 +2,7 @@ import { ZodType } from 'zod';
2
2
  import { createParamOrRef } from './parameters';
3
3
  import { createRequestBody } from './paths';
4
4
  import { createHeaderOrRef, createResponse } from './responses';
5
- import { createSchemaOrRef } from './schema';
5
+ import { createSchemaOrRef, newSchemaState } from './schema';
6
6
  export const getDefaultComponents = (componentsObject, openapi = '3.1.0') => {
7
7
  const defaultComponents = {
8
8
  schemas: new Map(),
@@ -131,13 +131,15 @@ export const createComponents = (componentsObject, components) => {
131
131
  return Object.keys(finalComponents).length ? finalComponents : undefined;
132
132
  };
133
133
  const createSchemaComponents = (componentsObject, components) => {
134
- Array.from(components.schemas).forEach(([schema, { type }]) => {
134
+ Array.from(components.schemas).forEach(([schema, { type }], index) => {
135
135
  if (type === 'partial') {
136
- const state = {
136
+ const state = newSchemaState({
137
137
  components,
138
138
  type: schema._def.openapi?.refType ?? 'output',
139
- };
140
- createSchemaOrRef(schema, state);
139
+ path: [],
140
+ visited: new Set(),
141
+ });
142
+ createSchemaOrRef(schema, state, [`component schema index ${index}`]);
141
143
  }
142
144
  });
143
145
  const customComponents = Object.entries(componentsObject.schemas ?? {}).reduce((acc, [key, value]) => {
@@ -162,9 +164,9 @@ const createSchemaComponents = (componentsObject, components) => {
162
164
  return Object.keys(finalComponents).length ? finalComponents : undefined;
163
165
  };
164
166
  const createParamComponents = (componentsObject, components) => {
165
- Array.from(components.parameters).forEach(([schema, component]) => {
167
+ Array.from(components.parameters).forEach(([schema, component], index) => {
166
168
  if (component.type === 'partial') {
167
- createParamOrRef(schema, components, component.in, component.ref);
169
+ createParamOrRef(schema, components, [`component parameter index ${index}`], component.in, component.ref);
168
170
  }
169
171
  });
170
172
  const customComponents = Object.entries(componentsObject.parameters ?? {}).reduce((acc, [key, value]) => {
@@ -215,9 +217,9 @@ const createHeaderComponents = (componentsObject, components) => {
215
217
  return Object.keys(finalComponents).length ? finalComponents : undefined;
216
218
  };
217
219
  const createResponseComponents = (components) => {
218
- Array.from(components.responses).forEach(([schema, component]) => {
220
+ Array.from(components.responses).forEach(([schema, component], index) => {
219
221
  if (component.type === 'partial') {
220
- createResponse(schema, components);
222
+ createResponse(schema, components, [`component response index ${index}`]);
221
223
  }
222
224
  });
223
225
  const finalComponents = Array.from(components.responses).reduce((acc, [_zodType, component]) => {
@@ -232,9 +234,11 @@ const createResponseComponents = (components) => {
232
234
  return Object.keys(finalComponents).length ? finalComponents : undefined;
233
235
  };
234
236
  const createRequestBodiesComponents = (components) => {
235
- Array.from(components.requestBodies).forEach(([schema, component]) => {
237
+ Array.from(components.requestBodies).forEach(([schema, component], index) => {
236
238
  if (component.type === 'partial') {
237
- createRequestBody(schema, components);
239
+ createRequestBody(schema, components, [
240
+ `component request body ${index}`,
241
+ ]);
238
242
  }
239
243
  });
240
244
  const finalComponents = Array.from(components.requestBodies).reduce((acc, [_zodType, component]) => {
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/create/components.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/create/components.ts"],"names":[],"mappings":"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"}
@@ -1,30 +1,35 @@
1
1
  import { ZodType } from 'zod';
2
- import { createSchemaOrRef } from './schema';
3
- const createMediaTypeSchema = (schemaObject, components, type) => {
2
+ import { createSchemaOrRef, newSchemaState } from './schema';
3
+ const createMediaTypeSchema = (schemaObject, components, type, subpath) => {
4
4
  if (!schemaObject) {
5
5
  return undefined;
6
6
  }
7
7
  if (!(schemaObject instanceof ZodType)) {
8
8
  return schemaObject;
9
9
  }
10
- return createSchemaOrRef(schemaObject, {
10
+ return createSchemaOrRef(schemaObject, newSchemaState({
11
11
  components,
12
12
  type,
13
- });
13
+ path: [],
14
+ visited: new Set(),
15
+ }), subpath);
14
16
  };
15
- const createMediaTypeObject = (mediaTypeObject, components, type) => {
17
+ const createMediaTypeObject = (mediaTypeObject, components, type, subpath) => {
16
18
  if (!mediaTypeObject) {
17
19
  return undefined;
18
20
  }
19
21
  return {
20
22
  ...mediaTypeObject,
21
- schema: createMediaTypeSchema(mediaTypeObject.schema, components, type),
23
+ schema: createMediaTypeSchema(mediaTypeObject.schema, components, type, [
24
+ ...subpath,
25
+ 'schema',
26
+ ]),
22
27
  };
23
28
  };
24
- export const createContent = (contentObject, components, type) => Object.entries(contentObject).reduce((acc, [path, zodOpenApiMediaTypeObject]) => {
25
- const mediaTypeObject = createMediaTypeObject(zodOpenApiMediaTypeObject, components, type);
29
+ export const createContent = (contentObject, components, type, subpath) => Object.entries(contentObject).reduce((acc, [mediaType, zodOpenApiMediaTypeObject]) => {
30
+ const mediaTypeObject = createMediaTypeObject(zodOpenApiMediaTypeObject, components, type, [...subpath, mediaType]);
26
31
  if (mediaTypeObject) {
27
- acc[path] = mediaTypeObject;
32
+ acc[mediaType] = mediaTypeObject;
28
33
  }
29
34
  return acc;
30
35
  }, {});
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/create/content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAS9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,MAAM,qBAAqB,GAAG,CAC5B,YAIa,EACb,UAA4B,EAC5B,IAAkB,EACsC,EAAE;IAC1D,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,CAAC,CAAC,YAAY,YAAY,OAAO,CAAC,EAAE;QACtC,OAAO,YAAY,CAAC;KACrB;IAED,OAAO,iBAAiB,CAAC,YAAY,EAAE;QACrC,UAAU;QACV,IAAI;KACL,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAC5B,eAAsD,EACtD,UAA4B,EAC5B,IAAkB,EACiB,EAAE;IACrC,IAAI,CAAC,eAAe,EAAE;QACpB,OAAO,SAAS,CAAC;KAClB;IAED,OAAO;QACL,GAAG,eAAe;QAClB,MAAM,EAAE,qBAAqB,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC;KACxE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,aAAsC,EACtC,UAA4B,EAC5B,IAAkB,EACG,EAAE,CACvB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,MAAM,CAClC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,yBAAyB,CAAC,EAAuB,EAAE;IAC9D,MAAM,eAAe,GAAG,qBAAqB,CAC3C,yBAAyB,EACzB,UAAU,EACV,IAAI,CACL,CAAC;IAEF,IAAI,eAAe,EAAE;QACnB,GAAG,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC;KAC7B;IACD,OAAO,GAAG,CAAC;AACb,CAAC,EACD,EAAE,CACH,CAAC"}
1
+ {"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/create/content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAS9B,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE7D,MAAM,qBAAqB,GAAG,CAC5B,YAIa,EACb,UAA4B,EAC5B,IAAkB,EAClB,OAAiB,EACuC,EAAE;IAC1D,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,CAAC,CAAC,YAAY,YAAY,OAAO,CAAC,EAAE;QACtC,OAAO,YAAY,CAAC;KACrB;IAED,OAAO,iBAAiB,CACtB,YAAY,EACZ,cAAc,CAAC;QACb,UAAU;QACV,IAAI;QACJ,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,IAAI,GAAG,EAAE;KACnB,CAAC,EACF,OAAO,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAC5B,eAAsD,EACtD,UAA4B,EAC5B,IAAkB,EAClB,OAAiB,EACkB,EAAE;IACrC,IAAI,CAAC,eAAe,EAAE;QACpB,OAAO,SAAS,CAAC;KAClB;IAED,OAAO;QACL,GAAG,eAAe;QAClB,MAAM,EAAE,qBAAqB,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE;YACtE,GAAG,OAAO;YACV,QAAQ;SACT,CAAC;KACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,aAAsC,EACtC,UAA4B,EAC5B,IAAkB,EAClB,OAAiB,EACI,EAAE,CACvB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,MAAM,CAClC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,yBAAyB,CAAC,EAAuB,EAAE;IACnE,MAAM,eAAe,GAAG,qBAAqB,CAC3C,yBAAyB,EACzB,UAAU,EACV,IAAI,EACJ,CAAC,GAAG,OAAO,EAAE,SAAS,CAAC,CACxB,CAAC;IAEF,IAAI,eAAe,EAAE;QACnB,GAAG,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC;KAClC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,EACD,EAAE,CACH,CAAC"}
@@ -1,14 +1,16 @@
1
1
  import { ZodType } from 'zod';
2
- import { createSchemaOrRef } from './schema';
2
+ import { createSchemaOrRef, newSchemaState } from './schema';
3
3
  import { isOptionalSchema } from './schema/optional';
4
4
  export const createComponentParamRef = (ref) => `#/components/parameters/${ref}`;
5
- export const createBaseParameter = (schema, components) => {
5
+ export const createBaseParameter = (schema, components, subpath) => {
6
6
  const { ref, ...rest } = schema._def.openapi?.param ?? {};
7
- const state = {
7
+ const state = newSchemaState({
8
8
  components,
9
9
  type: 'input',
10
- };
11
- const schemaOrRef = createSchemaOrRef(schema, state);
10
+ path: [],
11
+ visited: new Set(),
12
+ });
13
+ const schemaOrRef = createSchemaOrRef(schema, state, [...subpath, 'schema']);
12
14
  const required = !isOptionalSchema(schema, state);
13
15
  return {
14
16
  ...rest,
@@ -16,7 +18,7 @@ export const createBaseParameter = (schema, components) => {
16
18
  ...(required && { required }),
17
19
  };
18
20
  };
19
- export const createParamOrRef = (zodSchema, components, type, name) => {
21
+ export const createParamOrRef = (zodSchema, components, subpath, type, name) => {
20
22
  const component = components.parameters.get(zodSchema);
21
23
  const paramType = zodSchema._def?.openapi?.param?.in ?? component?.in ?? type;
22
24
  const paramName = zodSchema._def?.openapi?.param?.name ?? component?.name ?? name;
@@ -36,7 +38,7 @@ export const createParamOrRef = (zodSchema, components, type, name) => {
36
38
  };
37
39
  }
38
40
  // Optional Objects can return a reference object
39
- const baseParamOrRef = createBaseParameter(zodSchema, components);
41
+ const baseParamOrRef = createBaseParameter(zodSchema, components, subpath);
40
42
  if ('$ref' in baseParamOrRef) {
41
43
  throw new Error('Unexpected Error: received a reference object');
42
44
  }
@@ -60,31 +62,37 @@ export const createParamOrRef = (zodSchema, components, type, name) => {
60
62
  }
61
63
  return paramObject;
62
64
  };
63
- const createParameters = (type, zodObject, components) => {
65
+ const createParameters = (type, zodObject, components, subpath) => {
64
66
  if (!zodObject) {
65
67
  return [];
66
68
  }
67
- return Object.entries(zodObject.shape).map(([key, zodSchema]) => createParamOrRef(zodSchema, components, type, key));
69
+ return Object.entries(zodObject.shape).map(([key, zodSchema]) => createParamOrRef(zodSchema, components, [...subpath, key], type, key));
68
70
  };
69
- const createRequestParams = (requestParams, components) => {
71
+ const createRequestParams = (requestParams, components, subpath) => {
70
72
  if (!requestParams) {
71
73
  return [];
72
74
  }
73
- const pathParams = createParameters('path', requestParams.path, components);
74
- const queryParams = createParameters('query', requestParams.query, components);
75
- const cookieParams = createParameters('cookie', requestParams.cookie, components);
76
- const headerParams = createParameters('header', requestParams.header, components);
75
+ const pathParams = createParameters('path', requestParams.path, components, [
76
+ ...subpath,
77
+ 'path',
78
+ ]);
79
+ const queryParams = createParameters('query', requestParams.query, components, [...subpath, 'query']);
80
+ const cookieParams = createParameters('cookie', requestParams.cookie, components, [...subpath, 'cookie']);
81
+ const headerParams = createParameters('header', requestParams.header, components, [...subpath, 'header']);
77
82
  return [...pathParams, ...queryParams, ...cookieParams, ...headerParams];
78
83
  };
79
- export const createManualParameters = (parameters, components) => parameters?.map((param) => {
84
+ export const createManualParameters = (parameters, components, subpath) => parameters?.map((param, index) => {
80
85
  if (param instanceof ZodType) {
81
- return createParamOrRef(param, components);
86
+ return createParamOrRef(param, components, [
87
+ ...subpath,
88
+ `param index ${index}`,
89
+ ]);
82
90
  }
83
91
  return param;
84
92
  }) ?? [];
85
- export const createParametersObject = (parameters, requestParams, components) => {
86
- const manualParameters = createManualParameters(parameters, components);
87
- const createdParams = createRequestParams(requestParams, components);
93
+ export const createParametersObject = (parameters, requestParams, components, subpath) => {
94
+ const manualParameters = createManualParameters(parameters, components, subpath);
95
+ const createdParams = createRequestParams(requestParams, components, subpath);
88
96
  const combinedParameters = [
89
97
  ...manualParameters,
90
98
  ...createdParams,
@@ -1 +1 @@
1
- {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../src/create/parameters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../src/create/parameters.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { createContent } from './content';
3
3
  import { createParametersObject } from './parameters';
4
4
  import { createResponses } from './responses';
5
5
  import { isISpecificationExtension } from './specificationExtension';
6
- export const createRequestBody = (requestBodyObject, components) => {
6
+ export const createRequestBody = (requestBodyObject, components, subpath) => {
7
7
  if (!requestBodyObject) {
8
8
  return undefined;
9
9
  }
@@ -16,7 +16,10 @@ export const createRequestBody = (requestBodyObject, components) => {
16
16
  const ref = requestBodyObject.ref ?? component?.ref;
17
17
  const requestBody = {
18
18
  ...requestBodyObject,
19
- content: createContent(requestBodyObject.content, components, 'input'),
19
+ content: createContent(requestBodyObject.content, components, 'input', [
20
+ ...subpath,
21
+ 'content',
22
+ ]),
20
23
  };
21
24
  if (ref) {
22
25
  components.requestBodies.set(requestBodyObject, {
@@ -30,14 +33,11 @@ export const createRequestBody = (requestBodyObject, components) => {
30
33
  }
31
34
  return requestBody;
32
35
  };
33
- const createOperation = (operationObject, components) => {
34
- if (!operationObject) {
35
- return undefined;
36
- }
36
+ const createOperation = (operationObject, components, subpath) => {
37
37
  const { parameters, requestParams, requestBody, responses, ...rest } = operationObject;
38
- const maybeParameters = createParametersObject(parameters, requestParams, components);
39
- const maybeRequestBody = createRequestBody(operationObject.requestBody, components);
40
- const maybeResponses = createResponses(operationObject.responses, components);
38
+ const maybeParameters = createParametersObject(parameters, requestParams, components, [...subpath, 'parameters']);
39
+ const maybeRequestBody = createRequestBody(operationObject.requestBody, components, [...subpath, 'request body']);
40
+ const maybeResponses = createResponses(operationObject.responses, components, [...subpath, 'responses']);
41
41
  return {
42
42
  ...rest,
43
43
  ...(maybeParameters && { parameters: maybeParameters }),
@@ -45,28 +45,25 @@ const createOperation = (operationObject, components) => {
45
45
  ...(maybeResponses && { responses: maybeResponses }),
46
46
  };
47
47
  };
48
- const createPathItem = (pathObject, components) => {
49
- const { get, put, post, delete: del, options, head, patch, trace, ...rest } = pathObject;
50
- const maybeGet = createOperation(get, components);
51
- const maybePut = createOperation(put, components);
52
- const maybePost = createOperation(post, components);
53
- const maybeDelete = createOperation(del, components);
54
- const maybeOptions = createOperation(options, components);
55
- const maybeHead = createOperation(head, components);
56
- const maybePatch = createOperation(patch, components);
57
- const maybeTrace = createOperation(trace, components);
58
- return {
59
- ...rest,
60
- ...(get && { get: maybeGet }),
61
- ...(put && { put: maybePut }),
62
- ...(post && { post: maybePost }),
63
- ...(del && { delete: maybeDelete }),
64
- ...(options && { options: maybeOptions }),
65
- ...(head && { head: maybeHead }),
66
- ...(patch && { patch: maybePatch }),
67
- ...(trace && { trace: maybeTrace }),
68
- };
69
- };
48
+ const createPathItem = (pathObject, components, path) => Object.entries(pathObject).reduce((acc, [key, value]) => {
49
+ if (!value) {
50
+ return acc;
51
+ }
52
+ if (key === 'get' ||
53
+ key === 'put' ||
54
+ key === 'post' ||
55
+ key === 'delete' ||
56
+ key === 'options' ||
57
+ key === 'head' ||
58
+ key === 'patch' ||
59
+ key === 'trace') {
60
+ acc[key] = createOperation(value, components, [path, key]);
61
+ return acc;
62
+ }
63
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
64
+ acc[key] = value;
65
+ return acc;
66
+ }, {});
70
67
  export const createPaths = (pathsObject, components) => {
71
68
  if (!pathsObject) {
72
69
  return undefined;
@@ -76,7 +73,7 @@ export const createPaths = (pathsObject, components) => {
76
73
  acc[path] = pathItemObject;
77
74
  return acc;
78
75
  }
79
- acc[path] = createPathItem(pathItemObject, components);
76
+ acc[path] = createPathItem(pathItemObject, components, path);
80
77
  return acc;
81
78
  }, {});
82
79
  };
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/create/paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/create/paths.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ZodType } from 'zod';
2
2
  import { createComponentResponseRef, } from './components';
3
3
  import { createContent } from './content';
4
- import { createSchemaOrRef } from './schema';
4
+ import { createSchemaOrRef, newSchemaState } from './schema';
5
5
  import { isOptionalSchema } from './schema/optional';
6
6
  import { isISpecificationExtension } from './specificationExtension';
7
7
  export const createResponseHeaders = (responseHeaders, components) => {
@@ -43,11 +43,13 @@ export const createHeaderOrRef = (schema, components) => {
43
43
  };
44
44
  export const createBaseHeader = (schema, components) => {
45
45
  const { ref, ...rest } = schema._def.openapi?.header ?? {};
46
- const state = {
46
+ const state = newSchemaState({
47
47
  components,
48
48
  type: 'output',
49
- };
50
- const schemaOrRef = createSchemaOrRef(schema, state);
49
+ path: [],
50
+ visited: new Set(),
51
+ });
52
+ const schemaOrRef = createSchemaOrRef(schema, state, ['header']);
51
53
  const required = !isOptionalSchema(schema, state);
52
54
  return {
53
55
  ...rest,
@@ -56,7 +58,7 @@ export const createBaseHeader = (schema, components) => {
56
58
  };
57
59
  };
58
60
  export const createComponentHeaderRef = (ref) => `#/components/headers/${ref}`;
59
- export const createResponse = (responseObject, components) => {
61
+ export const createResponse = (responseObject, components, subpath) => {
60
62
  if ('$ref' in responseObject) {
61
63
  return responseObject;
62
64
  }
@@ -69,7 +71,12 @@ export const createResponse = (responseObject, components) => {
69
71
  const response = {
70
72
  ...rest,
71
73
  ...(maybeHeaders && { headers: maybeHeaders }),
72
- ...(content && { content: createContent(content, components, 'output') }),
74
+ ...(content && {
75
+ content: createContent(content, components, 'output', [
76
+ ...subpath,
77
+ 'content',
78
+ ]),
79
+ }),
73
80
  };
74
81
  const responseRef = ref ?? component?.ref;
75
82
  if (responseRef) {
@@ -84,12 +91,15 @@ export const createResponse = (responseObject, components) => {
84
91
  }
85
92
  return response;
86
93
  };
87
- export const createResponses = (responsesObject, components) => Object.entries(responsesObject).reduce((acc, [path, responseObject]) => {
88
- if (isISpecificationExtension(path)) {
89
- acc[path] = responseObject;
94
+ export const createResponses = (responsesObject, components, subpath) => Object.entries(responsesObject).reduce((acc, [statusCode, responseObject]) => {
95
+ if (isISpecificationExtension(statusCode)) {
96
+ acc[statusCode] = responseObject;
90
97
  return acc;
91
98
  }
92
- acc[path] = createResponse(responseObject, components);
99
+ acc[statusCode] = createResponse(responseObject, components, [
100
+ ...subpath,
101
+ statusCode,
102
+ ]);
93
103
  return acc;
94
104
  }, {});
95
105
  //# sourceMappingURL=responses.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/create/responses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/create/responses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,OAAO,EAAE,MAAM,KAAK,CAAC;AAInE,OAAO,EAEL,0BAA0B,GAC3B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAK1C,OAAO,EAAoB,iBAAiB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,eAIa,EACb,UAA4B,EACK,EAAE;IACnC,IAAI,CAAC,eAAe,EAAE;QACpB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,eAAe,YAAY,OAAO,EAAE;QACtC,OAAO,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,KAAoB,CAAC,CAAC,MAAM,CAEhE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,SAAS,CAAoB,EAAE,EAAE;YAC7C,GAAG,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YACpD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;KACR;IAED,OAAO,eAAkD,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,MAAe,EACf,UAA4B,EACuB,EAAE;IACrD,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE;QAC9C,OAAO;YACL,IAAI,EAAE,wBAAwB,CAAC,SAAS,CAAC,GAAG,CAAC;SAC9C,CAAC;KACH;IAED,iDAAiD;IACjD,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACxD,IAAI,MAAM,IAAI,UAAU,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;KAClE;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,SAAS,EAAE,GAAG,CAAC;IAEhE,IAAI,GAAG,EAAE;QACP,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE;YAC7B,IAAI,EAAE,UAAU;YAChB,YAAY,EAAE,UAAU;YACxB,GAAG;SACJ,CAAC,CAAC;QACH,OAAO;YACL,IAAI,EAAE,wBAAwB,CAAC,GAAG,CAAC;SACpC,CAAC;KACH;IAED,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,MAAe,EACf,UAA4B,EACD,EAAE;IAC7B,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;IAC3D,MAAM,KAAK,GAAgB,cAAc,CAAC;QACxC,UAAU;QACV,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,IAAI,GAAG,EAAE;KACnB,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAClD,OAAO;QACL,GAAG,IAAI;QACP,GAAG,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QACtC,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC9B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,GAAW,EAAE,EAAE,CACtD,wBAAwB,GAAG,EAAE,CAAC;AAEhC,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,cAAgE,EAChE,UAA4B,EAC5B,OAAiB,EAC6B,EAAE;IAChD,IAAI,MAAM,IAAI,cAAc,EAAE;QAC5B,OAAO,cAAc,CAAC;KACvB;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC3D,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE;QAC9C,OAAO,EAAE,IAAI,EAAE,0BAA0B,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;KAC5D;IAED,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,cAAc,CAAC;IAE1D,MAAM,YAAY,GAAG,qBAAqB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAyB;QACrC,GAAG,IAAI;QACP,GAAG,CAAC,YAAY,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;QAC9C,GAAG,CAAC,OAAO,IAAI;YACb,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE;gBACpD,GAAG,OAAO;gBACV,SAAS;aACV,CAAC;SACH,CAAC;KACH,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,IAAI,SAAS,EAAE,GAAG,CAAC;IAE1C,IAAI,WAAW,EAAE;QACf,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,EAAE;YACvC,cAAc,EAAE,QAAQ;YACxB,GAAG,EAAE,WAAW;YAChB,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;QACH,OAAO;YACL,IAAI,EAAE,0BAA0B,CAAC,WAAW,CAAC;SAC9C,CAAC;KACH;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,eAA0C,EAC1C,UAA4B,EAC5B,OAAiB,EACM,EAAE,CACzB,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,MAAM,CACpC,CACE,GAAG,EACH,CAAC,UAAU,EAAE,cAAc,CAG1B,EACsB,EAAE;IACzB,IAAI,yBAAyB,CAAC,UAAU,CAAC,EAAE;QACzC,GAAG,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;QACjC,OAAO,GAAG,CAAC;KACZ;IACD,GAAG,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,cAAc,EAAE,UAAU,EAAE;QAC3D,GAAG,OAAO;QACV,UAAU;KACX,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC,EACD,EAAE,CACH,CAAC"}
@@ -5,7 +5,7 @@ export const createArraySchema = (zodArray, state) => {
5
5
  const maxItems = zodArray._def.exactLength?.value ?? zodArray._def.maxLength?.value;
6
6
  return {
7
7
  type: 'array',
8
- items: createSchemaOrRef(zodType, state),
8
+ items: createSchemaOrRef(zodType, state, ['array items']),
9
9
  ...(minItems !== undefined && { minItems }),
10
10
  ...(maxItems !== undefined && { maxItems }),
11
11
  };
@@ -1 +1 @@
1
- {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../src/create/schema/array.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAA4B,EAC5B,KAAkB,EACE,EAAE;IACtB,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAkB,CAAC;IACjD,MAAM,QAAQ,GACZ,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;IACrE,MAAM,QAAQ,GACZ,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;IACrE,OAAO;QACL,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC;QACxC,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC3C,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../src/create/schema/array.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAA4B,EAC5B,KAAkB,EACE,EAAE;IACtB,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAkB,CAAC;IACjD,MAAM,QAAQ,GACZ,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;IACrE,MAAM,QAAQ,GACZ,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;IACrE,OAAO;QACL,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,aAAa,CAAC,CAAC;QACzD,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC3C,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { createSchemaOrRef } from '.';
2
- export const createBrandedSchema = (zodBranded, state) => createSchemaOrRef(zodBranded._def.type, state);
2
+ export const createBrandedSchema = (zodBranded, state) => createSchemaOrRef(zodBranded._def.type, state, ['brand']);
3
3
  //# sourceMappingURL=brand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"brand.js","sourceRoot":"","sources":["../../../src/create/schema/brand.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AACxD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,UAAgC,EAChC,KAAkB,EAC0B,EAAE,CAC9C,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAe,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"brand.js","sourceRoot":"","sources":["../../../src/create/schema/brand.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AACxD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,UAAgC,EAChC,KAAkB,EAC0B,EAAE,CAC9C,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAe,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { createSchemaOrRef } from '.';
2
- export const createCatchSchema = (zodCatch, state) => createSchemaOrRef(zodCatch._def.innerType, state);
2
+ export const createCatchSchema = (zodCatch, state) => createSchemaOrRef(zodCatch._def.innerType, state, ['catch']);
3
3
  //# sourceMappingURL=catch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"catch.js","sourceRoot":"","sources":["../../../src/create/schema/catch.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAAuB,EACvB,KAAkB,EAC0B,EAAE,CAC9C,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAoB,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"catch.js","sourceRoot":"","sources":["../../../src/create/schema/catch.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAAuB,EACvB,KAAkB,EAC0B,EAAE,CAC9C,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAoB,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { enhanceWithMetadata } from './metadata';
2
2
  import { createSchemaOrRef } from '.';
3
3
  export const createDefaultSchema = (zodDefault, state) => {
4
- const schemaOrRef = createSchemaOrRef(zodDefault._def.innerType, state);
4
+ const schemaOrRef = createSchemaOrRef(zodDefault._def.innerType, state, ['default']);
5
5
  return enhanceWithMetadata(schemaOrRef, {
6
6
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
7
7
  default: zodDefault._def.defaultValue(),
@@ -1 +1 @@
1
- {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/create/schema/default.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAExD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,UAA2B,EAC3B,KAAkB,EAC0B,EAAE;IAC9C,MAAM,WAAW,GAAG,iBAAiB,CACnC,UAAU,CAAC,IAAI,CAAC,SAAuB,EACvC,KAAK,CACN,CAAC;IAEF,OAAO,mBAAmB,CAAC,WAAW,EAAE;QACtC,mEAAmE;QACnE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE;KACxC,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/create/schema/default.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAExD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,UAA2B,EAC3B,KAAkB,EAC0B,EAAE;IAC9C,MAAM,WAAW,GAAG,iBAAiB,CACnC,UAAU,CAAC,IAAI,CAAC,SAAuB,EACvC,KAAK,EACL,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,OAAO,mBAAmB,CAAC,WAAW,EAAE;QACtC,mEAAmE;QACnE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE;KACxC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -2,14 +2,14 @@ import { ZodEnum, } from 'zod';
2
2
  import { createSchemaOrRef } from '.';
3
3
  export const createDiscriminatedUnionSchema = (zodDiscriminatedUnion, state) => {
4
4
  const options = zodDiscriminatedUnion.options;
5
- const schemas = options.map((option) => createSchemaOrRef(option, state));
6
- const discriminator = mapDiscriminator(schemas, options, zodDiscriminatedUnion.discriminator);
5
+ const schemas = options.map((option, index) => createSchemaOrRef(option, state, [`discriminated union option ${index}`]));
6
+ const discriminator = mapDiscriminator(schemas, options, zodDiscriminatedUnion.discriminator, state);
7
7
  return {
8
8
  oneOf: schemas,
9
9
  ...(discriminator && { discriminator }),
10
10
  };
11
11
  };
12
- export const mapDiscriminator = (schemas, zodObjects, discriminator) => {
12
+ export const mapDiscriminator = (schemas, zodObjects, discriminator, state) => {
13
13
  if (typeof discriminator !== 'string') {
14
14
  return undefined;
15
15
  }
@@ -29,7 +29,7 @@ export const mapDiscriminator = (schemas, zodObjects, discriminator) => {
29
29
  }
30
30
  const literalValue = (value?._def).value;
31
31
  if (typeof literalValue !== 'string') {
32
- throw new Error(`Discriminator ${discriminator} could not be found in one of the values of a discriminated union`);
32
+ throw new Error(`Discriminator ${discriminator} could not be found in on index ${index} of a discriminated union at ${state.path.join(' > ')}`);
33
33
  }
34
34
  mapping[literalValue] = componentSchemaRef;
35
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"discriminatedUnion.js","sourceRoot":"","sources":["../../../src/create/schema/discriminatedUnion.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,OAAO,GAGR,MAAM,KAAK,CAAC;AAIb,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAExD,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,OAAO,EACP,qBAAqB,CAAC,aAAa,CACpC,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,OAAuD,EACvD,UAA0B,EAC1B,aAAsB,EACe,EAAE;IACvC,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;QACrC,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,OAAO,GAAsD,EAAE,CAAC;IACtE,KAAK,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE;QACrD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,kBAAkB,GAAG,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,IAAI,CAAC,kBAAkB,EAAE;YACvB,OAAO,SAAS,CAAC;SAClB;QAED,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,OAAO,CAAC,SAAS,CAAC,GAAG,kBAAkB,CAAC;aACzC;YACD,SAAS;SACV;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,OAAO,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;KAC5C;IAED,OAAO;QACL,YAAY,EAAE,aAAa;QAC3B,OAAO;KACR,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"discriminatedUnion.js","sourceRoot":"","sources":["../../../src/create/schema/discriminatedUnion.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,OAAO,GAGR,MAAM,KAAK,CAAC;AAIb,OAAO,EAAoB,iBAAiB,EAAE,MAAM,GAAG,CAAC;AAExD,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,KAAK,EAAE,EAAE,CAC5C,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,8BAA8B,KAAK,EAAE,CAAC,CAAC,CAC1E,CAAC;IACF,MAAM,aAAa,GAAG,gBAAgB,CACpC,OAAO,EACP,OAAO,EACP,qBAAqB,CAAC,aAAa,EACnC,KAAK,CACN,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,OAAuD,EACvD,UAA0B,EAC1B,aAAsB,EACtB,KAAkB,EACmB,EAAE;IACvC,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;QACrC,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,OAAO,GAAsD,EAAE,CAAC;IACtE,KAAK,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE;QACrD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,kBAAkB,GAAG,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,IAAI,CAAC,kBAAkB,EAAE;YACvB,OAAO,SAAS,CAAC;SAClB;QAED,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,OAAO,CAAC,SAAS,CAAC,GAAG,kBAAkB,CAAC;aACzC;YACD,SAAS;SACV;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,mCAAmC,KAAK,gCAAgC,KAAK,CAAC,IAAI,CAAC,IAAI,CACnH,KAAK,CACN,EAAE,CACJ,CAAC;SACH;QAED,OAAO,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;KAC5C;IAED,OAAO;QACL,YAAY,EAAE,aAAa;QAC3B,OAAO;KACR,CAAC;AACJ,CAAC,CAAC"}