zod-openapi 5.0.0-beta.20 → 5.0.0-beta.3

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.
@@ -0,0 +1,65 @@
1
+ import { $ZodType } from 'zod/v4/core';
2
+ import { SchemaObject, ReferenceObject, HeaderObject, RequestBodyObject, ResponseObject, ParameterObject, PathItemObject, ComponentsObject } from '../openapi3-ts/dist/model/openapi31.js';
3
+ import { ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiCallbackObject, ZodOpenApiPathItemObject, CreateDocumentOptions, ZodOpenApiComponentsObject } from './document.js';
4
+
5
+ interface ComponentRegistry {
6
+ /**
7
+ * Contains a map of component name to their OpenAPI schema object or reference.
8
+ */
9
+ schemas: {
10
+ dynamicSchemaCount: number;
11
+ input: Map<string, {
12
+ zodType: $ZodType;
13
+ schemaObject: SchemaObject | ReferenceObject;
14
+ }>;
15
+ output: Map<string, {
16
+ zodType: $ZodType;
17
+ schemaObject: SchemaObject | ReferenceObject;
18
+ }>;
19
+ ids: Map<string, SchemaObject | ReferenceObject>;
20
+ manual: Map<string, {
21
+ identifier: string;
22
+ io: {
23
+ input: {
24
+ used: number;
25
+ schemaObject: SchemaObject;
26
+ };
27
+ output: {
28
+ used: number;
29
+ schemaObject: SchemaObject;
30
+ };
31
+ };
32
+ zodType: $ZodType;
33
+ }>;
34
+ setSchema: (key: string, schema: $ZodType, io: 'input' | 'output') => SchemaObject | ReferenceObject;
35
+ };
36
+ headers: {
37
+ ids: Map<string, HeaderObject | ReferenceObject>;
38
+ seen: WeakMap<$ZodType, HeaderObject | ReferenceObject>;
39
+ };
40
+ requestBodies: {
41
+ ids: Map<string, RequestBodyObject | ReferenceObject>;
42
+ seen: WeakMap<ZodOpenApiRequestBodyObject, RequestBodyObject | ReferenceObject>;
43
+ };
44
+ responses: {
45
+ ids: Map<string, ResponseObject | ReferenceObject>;
46
+ seen: WeakMap<ZodOpenApiResponseObject, ResponseObject | ReferenceObject>;
47
+ };
48
+ parameters: {
49
+ ids: Map<string, ParameterObject | ReferenceObject>;
50
+ seen: WeakMap<$ZodType, ParameterObject | ReferenceObject>;
51
+ };
52
+ callbacks: {
53
+ ids: Map<string, ZodOpenApiCallbackObject | ReferenceObject>;
54
+ seen: WeakMap<ZodOpenApiCallbackObject, ZodOpenApiCallbackObject | ReferenceObject>;
55
+ };
56
+ pathItems: {
57
+ ids: Map<string, PathItemObject | ReferenceObject>;
58
+ seen: WeakMap<ZodOpenApiPathItemObject, PathItemObject | ReferenceObject>;
59
+ };
60
+ }
61
+ declare const createRegistry: (components?: ZodOpenApiComponentsObject) => ComponentRegistry;
62
+ declare const createComponents: (registry: ComponentRegistry, opts: CreateDocumentOptions) => ComponentsObject;
63
+
64
+ export { createComponents, createRegistry };
65
+ export type { ComponentRegistry };
@@ -0,0 +1,10 @@
1
+ import { MediaTypeObject } from '../openapi3-ts/dist/model/openapi31.js';
2
+ import { ComponentRegistry } from './components.js';
3
+ import { ZodOpenApiMediaTypeObject } from './document.js';
4
+
5
+ declare const createMediaTypeObject: (mediaTypeObject: ZodOpenApiMediaTypeObject, ctx: {
6
+ registry: ComponentRegistry;
7
+ io: "input" | "output";
8
+ }, path: string[]) => MediaTypeObject;
9
+
10
+ export { createMediaTypeObject };
@@ -0,0 +1,97 @@
1
+ import { ZodTypeDef, ZodType } from 'zod';
2
+ import { $ZodType, $ZodTypes } from 'zod/v4/core';
3
+ import { OpenApiVersion } from '../openapi.js';
4
+ import { ISpecificationExtension } from '../openapi3-ts/dist/model/specification-extension.js';
5
+ import { RequestBodyObject, MediaTypeObject, SchemaObject, ReferenceObject, ResponseObject, HeadersObject, PathItemObject, OperationObject, ParameterObject, ParameterLocation, HeaderObject, ComponentsObject, OpenAPIObject } from '../openapi3-ts/dist/model/openapi31.js';
6
+ import { Override } from '../zod.js';
7
+
8
+ interface ZodOpenApiMediaTypeObject extends Omit<MediaTypeObject, 'schema'> {
9
+ schema?: $ZodType | SchemaObject | ReferenceObject;
10
+ }
11
+ interface ZodOpenApiContentObject {
12
+ 'application/json'?: ZodOpenApiMediaTypeObject;
13
+ [mediatype: string]: ZodOpenApiMediaTypeObject | undefined;
14
+ }
15
+ interface ZodOpenApiRequestBodyObject extends Omit<RequestBodyObject, 'content'> {
16
+ content: ZodOpenApiContentObject;
17
+ /** Use this field to auto register this request body as a component */
18
+ id?: string;
19
+ }
20
+ type ZodOpenApiHeadersObject = ZodObjectInput | HeadersObject;
21
+ interface ZodOpenApiResponseObject extends Omit<ResponseObject, 'content' | 'headers'> {
22
+ content?: ZodOpenApiContentObject;
23
+ headers?: ZodOpenApiHeadersObject;
24
+ /** Use this field to auto register this response object as a component */
25
+ id?: string;
26
+ }
27
+ interface ZodOpenApiResponsesObject extends ISpecificationExtension {
28
+ default?: ZodOpenApiResponseObject | ReferenceObject;
29
+ [statuscode: `${1 | 2 | 3 | 4 | 5}${string}`]: ZodOpenApiResponseObject | ReferenceObject;
30
+ }
31
+ type ZodOpenApiParameters = Partial<Record<ParameterLocation, ZodObjectInput>>;
32
+ interface ZodOpenApiCallbacksObject extends ISpecificationExtension {
33
+ [name: string]: ZodOpenApiCallbackObject;
34
+ }
35
+ interface ZodOpenApiCallbackObject extends ISpecificationExtension {
36
+ /** Use this field to auto register this callback object as a component */
37
+ id?: string;
38
+ [name: string]: ZodOpenApiPathItemObject | string | undefined;
39
+ }
40
+ interface ZodOpenApiOperationObject extends Omit<OperationObject, 'requestBody' | 'responses' | 'parameters' | 'callbacks'> {
41
+ parameters?: Array<$ZodType | ParameterObject | ReferenceObject>;
42
+ requestBody?: ZodOpenApiRequestBodyObject;
43
+ requestParams?: ZodOpenApiParameters;
44
+ responses: ZodOpenApiResponsesObject;
45
+ callbacks?: ZodOpenApiCallbacksObject;
46
+ }
47
+ interface ZodOpenApiPathItemObject extends Omit<PathItemObject, 'get' | 'put' | 'post' | 'delete' | 'options' | 'head' | 'patch' | 'trace'> {
48
+ get?: ZodOpenApiOperationObject;
49
+ put?: ZodOpenApiOperationObject;
50
+ post?: ZodOpenApiOperationObject;
51
+ delete?: ZodOpenApiOperationObject;
52
+ options?: ZodOpenApiOperationObject;
53
+ head?: ZodOpenApiOperationObject;
54
+ patch?: ZodOpenApiOperationObject;
55
+ trace?: ZodOpenApiOperationObject;
56
+ /**
57
+ * Used to register this path item as a component.
58
+ */
59
+ id?: string;
60
+ }
61
+ interface ZodOpenApiPathsObject extends ISpecificationExtension {
62
+ [path: string]: ZodOpenApiPathItemObject;
63
+ }
64
+ type ZodOpenApiParameterObject = $ZodType | ParameterObject | ReferenceObject;
65
+ type ZodOpenApiHeaderObject = $ZodType | HeaderObject | ReferenceObject;
66
+ type ZodOpenApiSchemaObject = $ZodType | SchemaObject | ReferenceObject;
67
+ type ZodOpenApiRequestBody = $ZodType | RequestBodyObject | ReferenceObject;
68
+ interface ZodOpenApiComponentsObject extends Omit<ComponentsObject, 'schemas' | 'responses' | 'requestBodies' | 'headers' | 'parameters' | 'pathItems' | 'callbacks'> {
69
+ parameters?: Record<string, ZodOpenApiParameterObject>;
70
+ schemas?: Record<string, ZodOpenApiSchemaObject>;
71
+ requestBodies?: Record<string, ZodOpenApiRequestBodyObject>;
72
+ headers?: Record<string, ZodOpenApiHeaderObject>;
73
+ responses?: Record<string, ZodOpenApiResponseObject>;
74
+ callbacks?: Record<string, ZodOpenApiCallbackObject>;
75
+ pathItems?: Record<string, ZodOpenApiPathItemObject>;
76
+ }
77
+ type ZodOpenApiVersion = OpenApiVersion;
78
+ interface ZodOpenApiObject extends Omit<OpenAPIObject, 'openapi' | 'paths' | 'webhooks' | 'components'> {
79
+ openapi: ZodOpenApiVersion;
80
+ paths?: ZodOpenApiPathsObject;
81
+ webhooks?: ZodOpenApiPathsObject;
82
+ components?: ZodOpenApiComponentsObject;
83
+ }
84
+ type ZodObjectInputType<Output = unknown, Def extends ZodTypeDef = ZodTypeDef, Input = Record<string, unknown>> = ZodType<Output, Def, Input>;
85
+ type ZodObjectInput = $ZodType<unknown, Record<string, unknown>>;
86
+ type OverrideType = $ZodTypes['_zod']['def']['type'];
87
+ interface CreateDocumentOptions {
88
+ /**
89
+ * Use to override the rendered schema
90
+ */
91
+ override?: Override;
92
+ allowEmptySchema?: Partial<Record<OverrideType, true>>;
93
+ }
94
+ declare const createDocument: (zodOpenApiObject: ZodOpenApiObject, opts?: CreateDocumentOptions) => OpenAPIObject;
95
+
96
+ export { createDocument };
97
+ export type { CreateDocumentOptions, ZodObjectInput, ZodObjectInputType, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBody, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiVersion };
@@ -0,0 +1,5 @@
1
+ import { $ZodTypes, $ZodObject } from 'zod/v4/core';
2
+
3
+ declare const unwrapZodObject: (zodType: $ZodTypes, io: "input" | "output", path: string[]) => $ZodObject;
4
+
5
+ export { unwrapZodObject };
@@ -0,0 +1,14 @@
1
+ import { $ZodType } from 'zod/v4/core';
2
+ import { ParameterLocation, ParameterObject, ReferenceObject } from '../openapi3-ts/dist/model/openapi31.js';
3
+ import { ComponentRegistry } from './components.js';
4
+ import '../zod.js';
5
+
6
+ declare const createParameter: (parameter: $ZodType, location: {
7
+ in: ParameterLocation;
8
+ name: string;
9
+ } | undefined, ctx: {
10
+ registry: ComponentRegistry;
11
+ io: "input" | "output";
12
+ }, path: string[]) => ParameterObject | ReferenceObject;
13
+
14
+ export { createParameter };
@@ -0,0 +1,21 @@
1
+ import { core } from 'zod/v4';
2
+ import { CreateDocumentOptions } from '../document.js';
3
+ import { ComponentRegistry } from '../components.js';
4
+ import '../../zod.js';
5
+ import { SchemaObject, ReferenceObject } from '../../openapi3-ts/dist/model/openapi31.js';
6
+
7
+ interface SchemaResult {
8
+ schema: SchemaObject | ReferenceObject;
9
+ components: Record<string, SchemaObject>;
10
+ }
11
+ declare const createSchema: (schema: core.$ZodType, ctx?: {
12
+ registry?: ComponentRegistry;
13
+ io?: "input" | "output";
14
+ opts?: CreateDocumentOptions;
15
+ }) => {
16
+ schema: SchemaObject | ReferenceObject;
17
+ components: Record<string, SchemaObject>;
18
+ };
19
+
20
+ export { createSchema };
21
+ export type { SchemaResult };
package/dist/index.cjs ADDED
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const components = require("./components.chunk.cjs");
4
+ const createDocument = (zodOpenApiObject, opts = {}) => {
5
+ const { paths, webhooks, components: components$1, ...rest } = zodOpenApiObject;
6
+ const document = rest;
7
+ const registry = components.createRegistry(components$1);
8
+ const createdPaths = components.createPaths(paths, registry, ["paths"]);
9
+ if (createdPaths) {
10
+ document.paths = createdPaths;
11
+ }
12
+ const createdWebhooks = components.createPaths(webhooks, registry, ["webhooks"]);
13
+ if (createdWebhooks) {
14
+ document.webhooks = createdWebhooks;
15
+ }
16
+ const createdComponents = components.createComponents(registry, opts);
17
+ if (Object.keys(createdComponents).length > 0) {
18
+ document.components = createdComponents;
19
+ }
20
+ return document;
21
+ };
22
+ exports.createSchema = components.createSchema;
23
+ exports.createDocument = createDocument;
package/dist/index.d.mts CHANGED
@@ -1,25 +1,5 @@
1
- import { BaseParameterObject, CallbackObject, CallbacksObject, ComponentRegistry, ComponentsObject, ContactObject, ContentObject, CreateDocumentOptions, DiscriminatorObject, EncodingObject, EncodingPropertyObject, ExampleObject, ExamplesObject, ExternalDocumentationObject, HeaderObject, HeadersObject, IExtensionName, IExtensionType, ISpecificationExtension, InfoObject, LicenseObject, LinkObject, LinkParametersObject, LinksObject, MediaTypeObject, OAuthFlowObject, OAuthFlowsObject, OpenAPIObject, OperationObject, Override, ParameterLocation, ParameterObject, ParameterStyle, PathItemObject, PathObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, ResponsesObject, SchemaObject, SchemaObjectType, SchemasObject, ScopesObject, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, ServerObject, ServerVariableObject, TagObject, XmlObject, ZodObjectInput, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiExampleObject, ZodOpenApiExamplesObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiLinkObject, ZodOpenApiLinksObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiSecuritySchemeObject, ZodOpenApiVersion, createDocument } from "./components-DkESnIB9.mjs";
2
- import { core } from "zod/v4";
3
-
4
- //#region rolldown:runtime
5
- //#endregion
6
- //#region src/create/schema/schema.d.ts
7
- interface SchemaResult {
8
- schema: SchemaObject | ReferenceObject;
9
- components: Record<string, SchemaObject>;
10
- }
11
- declare const createSchema: (schema: core.$ZodType, ctx?: {
12
- registry?: ComponentRegistry;
13
- io?: "input" | "output";
14
- opts?: CreateDocumentOptions & {
15
- schemaComponents?: ZodOpenApiComponentsObject["schemas"];
16
- };
17
- }) => {
18
- schema: SchemaObject | ReferenceObject;
19
- components: Record<string, SchemaObject>;
20
- };
21
- declare namespace oas31_d_exports {
22
- export { BaseParameterObject, CallbackObject, CallbacksObject, ComponentsObject, ContactObject, ContentObject, DiscriminatorObject, EncodingObject, EncodingPropertyObject, ExampleObject, ExamplesObject, ExternalDocumentationObject, HeaderObject, HeadersObject, IExtensionName, IExtensionType, ISpecificationExtension, InfoObject, LicenseObject, LinkObject, LinkParametersObject, LinksObject, MediaTypeObject, OAuthFlowObject, OAuthFlowsObject, OpenAPIObject, OperationObject, ParameterLocation, ParameterObject, ParameterStyle, PathItemObject, PathObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, ResponsesObject, SchemaObject, SchemaObjectType, SchemasObject, ScopesObject, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, ServerObject, ServerVariableObject, TagObject, XmlObject };
23
- }
24
- //#endregion
25
- export { CreateDocumentOptions, Override, SchemaResult, ZodObjectInput, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiExampleObject, ZodOpenApiExamplesObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiLinkObject, ZodOpenApiLinksObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiSecuritySchemeObject, ZodOpenApiVersion, createDocument, createSchema, oas31_d_exports as oas31 };
1
+ export { CreateDocumentOptions, ZodObjectInput, ZodObjectInputType, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBody, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiVersion, createDocument } from './create/document.js';
2
+ export { SchemaResult, createSchema } from './create/schema/schema.js';
3
+ export { Override, isAnyZodType } from './zod.js';
4
+ import * as oas31 from './openapi3-ts/oas31.js';
5
+ export { oas31 };
package/dist/index.d.ts CHANGED
@@ -1,25 +1,5 @@
1
- import { BaseParameterObject, CallbackObject, CallbacksObject, ComponentRegistry, ComponentsObject, ContactObject, ContentObject, CreateDocumentOptions, DiscriminatorObject, EncodingObject, EncodingPropertyObject, ExampleObject, ExamplesObject, ExternalDocumentationObject, HeaderObject, HeadersObject, IExtensionName, IExtensionType, ISpecificationExtension, InfoObject, LicenseObject, LinkObject, LinkParametersObject, LinksObject, MediaTypeObject, OAuthFlowObject, OAuthFlowsObject, OpenAPIObject, OperationObject, Override, ParameterLocation, ParameterObject, ParameterStyle, PathItemObject, PathObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, ResponsesObject, SchemaObject, SchemaObjectType, SchemasObject, ScopesObject, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, ServerObject, ServerVariableObject, TagObject, XmlObject, ZodObjectInput, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiExampleObject, ZodOpenApiExamplesObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiLinkObject, ZodOpenApiLinksObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiSecuritySchemeObject, ZodOpenApiVersion, createDocument } from "./components-BLmIpmmY.js";
2
- import { core } from "zod/v4";
3
-
4
- //#region rolldown:runtime
5
- //#endregion
6
- //#region src/create/schema/schema.d.ts
7
- interface SchemaResult {
8
- schema: SchemaObject | ReferenceObject;
9
- components: Record<string, SchemaObject>;
10
- }
11
- declare const createSchema: (schema: core.$ZodType, ctx?: {
12
- registry?: ComponentRegistry;
13
- io?: "input" | "output";
14
- opts?: CreateDocumentOptions & {
15
- schemaComponents?: ZodOpenApiComponentsObject["schemas"];
16
- };
17
- }) => {
18
- schema: SchemaObject | ReferenceObject;
19
- components: Record<string, SchemaObject>;
20
- };
21
- declare namespace oas31_d_exports {
22
- export { BaseParameterObject, CallbackObject, CallbacksObject, ComponentsObject, ContactObject, ContentObject, DiscriminatorObject, EncodingObject, EncodingPropertyObject, ExampleObject, ExamplesObject, ExternalDocumentationObject, HeaderObject, HeadersObject, IExtensionName, IExtensionType, ISpecificationExtension, InfoObject, LicenseObject, LinkObject, LinkParametersObject, LinksObject, MediaTypeObject, OAuthFlowObject, OAuthFlowsObject, OpenAPIObject, OperationObject, ParameterLocation, ParameterObject, ParameterStyle, PathItemObject, PathObject, PathsObject, ReferenceObject, RequestBodyObject, ResponseObject, ResponsesObject, SchemaObject, SchemaObjectType, SchemasObject, ScopesObject, SecurityRequirementObject, SecuritySchemeObject, SecuritySchemeType, ServerObject, ServerVariableObject, TagObject, XmlObject };
23
- }
24
- //#endregion
25
- export { CreateDocumentOptions, Override, SchemaResult, ZodObjectInput, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiExampleObject, ZodOpenApiExamplesObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiLinkObject, ZodOpenApiLinksObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiSecuritySchemeObject, ZodOpenApiVersion, createDocument, createSchema, oas31_d_exports as oas31 };
1
+ export { CreateDocumentOptions, ZodObjectInput, ZodObjectInputType, ZodOpenApiCallbackObject, ZodOpenApiCallbacksObject, ZodOpenApiComponentsObject, ZodOpenApiContentObject, ZodOpenApiHeaderObject, ZodOpenApiHeadersObject, ZodOpenApiMediaTypeObject, ZodOpenApiObject, ZodOpenApiOperationObject, ZodOpenApiParameterObject, ZodOpenApiParameters, ZodOpenApiPathItemObject, ZodOpenApiPathsObject, ZodOpenApiRequestBody, ZodOpenApiRequestBodyObject, ZodOpenApiResponseObject, ZodOpenApiResponsesObject, ZodOpenApiSchemaObject, ZodOpenApiVersion, createDocument } from './create/document.js';
2
+ export { SchemaResult, createSchema } from './create/schema/schema.js';
3
+ export { Override, isAnyZodType } from './zod.js';
4
+ import * as oas31 from './openapi3-ts/oas31.js';
5
+ export { oas31 };
package/dist/index.mjs CHANGED
@@ -1,18 +1,24 @@
1
- import { createComponents, createPaths, createRegistry, createSchema } from "./components-BVy-T4wz.mjs";
2
-
3
- //#region src/create/document.ts
1
+ import { createRegistry, createPaths, createComponents } from "./components.chunk.mjs";
2
+ import { createSchema } from "./components.chunk.mjs";
4
3
  const createDocument = (zodOpenApiObject, opts = {}) => {
5
- const { paths, webhooks, components,...rest } = zodOpenApiObject;
6
- const document = rest;
7
- const registry = createRegistry(components);
8
- const createdPaths = createPaths(paths, registry, ["paths"]);
9
- if (createdPaths) document.paths = createdPaths;
10
- const createdWebhooks = createPaths(webhooks, registry, ["webhooks"]);
11
- if (createdWebhooks) document.webhooks = createdWebhooks;
12
- const createdComponents = createComponents(registry, opts);
13
- if (Object.keys(createdComponents).length > 0) document.components = createdComponents;
14
- return document;
4
+ const { paths, webhooks, components, ...rest } = zodOpenApiObject;
5
+ const document = rest;
6
+ const registry = createRegistry(components);
7
+ const createdPaths = createPaths(paths, registry, ["paths"]);
8
+ if (createdPaths) {
9
+ document.paths = createdPaths;
10
+ }
11
+ const createdWebhooks = createPaths(webhooks, registry, ["webhooks"]);
12
+ if (createdWebhooks) {
13
+ document.webhooks = createdWebhooks;
14
+ }
15
+ const createdComponents = createComponents(registry, opts);
16
+ if (Object.keys(createdComponents).length > 0) {
17
+ document.components = createdComponents;
18
+ }
19
+ return document;
20
+ };
21
+ export {
22
+ createDocument,
23
+ createSchema
15
24
  };
16
-
17
- //#endregion
18
- export { createDocument, createSchema };
@@ -0,0 +1,5 @@
1
+ declare const openApiVersions: readonly ["3.1.0", "3.1.1"];
2
+ type OpenApiVersion = (typeof openApiVersions)[number];
3
+
4
+ export { openApiVersions };
5
+ export type { OpenApiVersion };
@@ -0,0 +1,16 @@
1
+ import { ISpecificationExtension } from './specification-extension.js';
2
+
3
+ interface ServerObject extends ISpecificationExtension {
4
+ url: string;
5
+ description?: string;
6
+ variables?: {
7
+ [v: string]: ServerVariableObject;
8
+ };
9
+ }
10
+ interface ServerVariableObject extends ISpecificationExtension {
11
+ enum?: string[] | boolean[] | number[];
12
+ default: string | boolean | number;
13
+ description?: string;
14
+ }
15
+
16
+ export type { ServerObject, ServerVariableObject };