@scalar/openapi-types 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/dist/index.js +2 -1
- package/dist/index.js.map +7 -0
- package/dist/openapi-types.js +28 -33
- package/dist/openapi-types.js.map +7 -0
- package/dist/openapi-types.test-d.js +52 -0
- package/dist/openapi-types.test-d.js.map +7 -0
- package/dist/schemas/3.1/compliance/callback-object.test.js +97 -0
- package/dist/schemas/3.1/compliance/callback-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/contact-object.test.js +19 -0
- package/dist/schemas/3.1/compliance/contact-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/example-object.test.js +91 -0
- package/dist/schemas/3.1/compliance/example-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/external-documentation-object.test.js +17 -0
- package/dist/schemas/3.1/compliance/external-documentation-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/header-object.test.js +47 -0
- package/dist/schemas/3.1/compliance/header-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/info-object.test.js +41 -0
- package/dist/schemas/3.1/compliance/info-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/license-object.test.js +17 -0
- package/dist/schemas/3.1/compliance/license-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/media-type-object.test.js +69 -0
- package/dist/schemas/3.1/compliance/media-type-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/openapi-object.test.js +381 -0
- package/dist/schemas/3.1/compliance/openapi-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/operation-object.test.js +467 -0
- package/dist/schemas/3.1/compliance/operation-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/parameter-object.test.js +155 -0
- package/dist/schemas/3.1/compliance/parameter-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/path-item-object.test.js +103 -0
- package/dist/schemas/3.1/compliance/path-item-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/reference-object.test.js +282 -0
- package/dist/schemas/3.1/compliance/reference-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/request-body-object.test.js +97 -0
- package/dist/schemas/3.1/compliance/request-body-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/response-object.test.js +131 -0
- package/dist/schemas/3.1/compliance/response-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/responses-object.test.js +53 -0
- package/dist/schemas/3.1/compliance/responses-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/runtime-expression.test.js +165 -0
- package/dist/schemas/3.1/compliance/runtime-expression.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/schema-object.test.js +470 -0
- package/dist/schemas/3.1/compliance/schema-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/security-requirement-object.test.js +54 -0
- package/dist/schemas/3.1/compliance/security-requirement-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/security-scheme-object.test.js +123 -0
- package/dist/schemas/3.1/compliance/security-scheme-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/server-object.test.js +17 -0
- package/dist/schemas/3.1/compliance/server-object.test.js.map +7 -0
- package/dist/schemas/3.1/compliance/tag-object.test.js +17 -0
- package/dist/schemas/3.1/compliance/tag-object.test.js.map +7 -0
- package/dist/schemas/3.1/processed/base-path-item-object.js +27 -33
- package/dist/schemas/3.1/processed/base-path-item-object.js.map +7 -0
- package/dist/schemas/3.1/processed/callback-object.js +7 -16
- package/dist/schemas/3.1/processed/callback-object.js.map +7 -0
- package/dist/schemas/3.1/processed/components-object.js +55 -62
- package/dist/schemas/3.1/processed/components-object.js.map +7 -0
- package/dist/schemas/3.1/processed/contact-object.js +11 -17
- package/dist/schemas/3.1/processed/contact-object.js.map +7 -0
- package/dist/schemas/3.1/processed/discriminator-object.js +15 -26
- package/dist/schemas/3.1/processed/discriminator-object.js.map +7 -0
- package/dist/schemas/3.1/processed/encoding-object.js +17 -28
- package/dist/schemas/3.1/processed/encoding-object.js.map +7 -0
- package/dist/schemas/3.1/processed/example-object.js +23 -33
- package/dist/schemas/3.1/processed/example-object.js.map +7 -0
- package/dist/schemas/3.1/processed/external-documentation-object.js +9 -15
- package/dist/schemas/3.1/processed/external-documentation-object.js.map +7 -0
- package/dist/schemas/3.1/processed/header-object.js +48 -64
- package/dist/schemas/3.1/processed/header-object.js.map +7 -0
- package/dist/schemas/3.1/processed/index.js +87 -30
- package/dist/schemas/3.1/processed/index.js.map +7 -0
- package/dist/schemas/3.1/processed/info-object.js +36 -43
- package/dist/schemas/3.1/processed/info-object.js.map +7 -0
- package/dist/schemas/3.1/processed/license-object.js +13 -19
- package/dist/schemas/3.1/processed/license-object.js.map +7 -0
- package/dist/schemas/3.1/processed/link-object.js +36 -50
- package/dist/schemas/3.1/processed/link-object.js.map +7 -0
- package/dist/schemas/3.1/processed/media-type-object-without-encoding.js +26 -32
- package/dist/schemas/3.1/processed/media-type-object-without-encoding.js.map +7 -0
- package/dist/schemas/3.1/processed/media-type-object.js +30 -36
- package/dist/schemas/3.1/processed/media-type-object.js.map +7 -0
- package/dist/schemas/3.1/processed/openapi-object.js +70 -78
- package/dist/schemas/3.1/processed/openapi-object.js.map +7 -0
- package/dist/schemas/3.1/processed/operation-object-without-callbacks.js +64 -70
- package/dist/schemas/3.1/processed/operation-object-without-callbacks.js.map +7 -0
- package/dist/schemas/3.1/processed/operation-object.js +14 -20
- package/dist/schemas/3.1/processed/operation-object.js.map +7 -0
- package/dist/schemas/3.1/processed/parameter-object.js +83 -91
- package/dist/schemas/3.1/processed/parameter-object.js.map +7 -0
- package/dist/schemas/3.1/processed/path-item-object-without-callbacks.js +38 -46
- package/dist/schemas/3.1/processed/path-item-object-without-callbacks.js.map +7 -0
- package/dist/schemas/3.1/processed/path-item-object.js +38 -46
- package/dist/schemas/3.1/processed/path-item-object.js.map +7 -0
- package/dist/schemas/3.1/processed/paths-object.js +16 -22
- package/dist/schemas/3.1/processed/paths-object.js.map +7 -0
- package/dist/schemas/3.1/processed/request-body-object.js +25 -31
- package/dist/schemas/3.1/processed/request-body-object.js.map +7 -0
- package/dist/schemas/3.1/processed/response-object.js +28 -34
- package/dist/schemas/3.1/processed/response-object.js.map +7 -0
- package/dist/schemas/3.1/processed/responses-object.js +17 -30
- package/dist/schemas/3.1/processed/responses-object.js.map +7 -0
- package/dist/schemas/3.1/processed/runtime-expression.js +50 -81
- package/dist/schemas/3.1/processed/runtime-expression.js.map +7 -0
- package/dist/schemas/3.1/processed/schema-object.js +88 -89
- package/dist/schemas/3.1/processed/schema-object.js.map +7 -0
- package/dist/schemas/3.1/processed/schema-object.test.js +310 -0
- package/dist/schemas/3.1/processed/schema-object.test.js.map +7 -0
- package/dist/schemas/3.1/processed/security-requirement-object.js +20 -36
- package/dist/schemas/3.1/processed/security-requirement-object.js.map +7 -0
- package/dist/schemas/3.1/processed/security-scheme-object.js +114 -142
- package/dist/schemas/3.1/processed/security-scheme-object.js.map +7 -0
- package/dist/schemas/3.1/processed/server-object.js +19 -25
- package/dist/schemas/3.1/processed/server-object.js.map +7 -0
- package/dist/schemas/3.1/processed/server-variable-object.js +19 -25
- package/dist/schemas/3.1/processed/server-variable-object.js.map +7 -0
- package/dist/schemas/3.1/processed/tag-object.js +12 -19
- package/dist/schemas/3.1/processed/tag-object.js.map +7 -0
- package/dist/schemas/3.1/processed/webhooks-object.js +6 -18
- package/dist/schemas/3.1/processed/webhooks-object.js.map +7 -0
- package/dist/schemas/3.1/processed/xml-object.js +28 -38
- package/dist/schemas/3.1/processed/xml-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/base-path-item-object.js +16 -22
- package/dist/schemas/3.1/unprocessed/base-path-item-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/callback-object.js +6 -15
- package/dist/schemas/3.1/unprocessed/callback-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/components-object.js +58 -65
- package/dist/schemas/3.1/unprocessed/components-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/contact-object.js +6 -12
- package/dist/schemas/3.1/unprocessed/contact-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/discriminator-object.js +6 -17
- package/dist/schemas/3.1/unprocessed/discriminator-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/encoding-object.js +14 -25
- package/dist/schemas/3.1/unprocessed/encoding-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/example-object.js +6 -16
- package/dist/schemas/3.1/unprocessed/example-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/external-documentation-object.js +6 -12
- package/dist/schemas/3.1/unprocessed/external-documentation-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/header-object.js +25 -41
- package/dist/schemas/3.1/unprocessed/header-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/index.js +89 -31
- package/dist/schemas/3.1/unprocessed/index.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/info-object.js +6 -13
- package/dist/schemas/3.1/unprocessed/info-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/license-object.js +6 -12
- package/dist/schemas/3.1/unprocessed/license-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/link-object.js +6 -20
- package/dist/schemas/3.1/unprocessed/link-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/media-type-object-without-encoding.js +6 -12
- package/dist/schemas/3.1/unprocessed/media-type-object-without-encoding.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/media-type-object.js +33 -39
- package/dist/schemas/3.1/unprocessed/media-type-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/openapi-object.js +6 -12
- package/dist/schemas/3.1/unprocessed/openapi-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/operation-object-without-callbacks.js +38 -44
- package/dist/schemas/3.1/unprocessed/operation-object-without-callbacks.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/operation-object.js +15 -21
- package/dist/schemas/3.1/unprocessed/operation-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/parameter-object.js +22 -30
- package/dist/schemas/3.1/unprocessed/parameter-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/path-item-object-without-callbacks.js +38 -46
- package/dist/schemas/3.1/unprocessed/path-item-object-without-callbacks.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/path-item-object.js +52 -60
- package/dist/schemas/3.1/unprocessed/path-item-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/paths-object.js +6 -14
- package/dist/schemas/3.1/unprocessed/paths-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/reference-object.js +20 -28
- package/dist/schemas/3.1/unprocessed/reference-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/request-body-object.js +6 -12
- package/dist/schemas/3.1/unprocessed/request-body-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/response-object.js +27 -33
- package/dist/schemas/3.1/unprocessed/response-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/responses-object.js +18 -31
- package/dist/schemas/3.1/unprocessed/responses-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/runtime-expression.js +6 -17
- package/dist/schemas/3.1/unprocessed/runtime-expression.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/schema-object.js +31 -32
- package/dist/schemas/3.1/unprocessed/schema-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/security-requirement-object.js +6 -23
- package/dist/schemas/3.1/unprocessed/security-requirement-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/security-scheme-object.js +41 -29
- package/dist/schemas/3.1/unprocessed/security-scheme-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/server-object.js +6 -12
- package/dist/schemas/3.1/unprocessed/server-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/server-variable-object.js +6 -12
- package/dist/schemas/3.1/unprocessed/server-variable-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/tag-object.js +6 -13
- package/dist/schemas/3.1/unprocessed/tag-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/webhooks-object.js +6 -18
- package/dist/schemas/3.1/unprocessed/webhooks-object.js.map +7 -0
- package/dist/schemas/3.1/unprocessed/xml-object.js +6 -16
- package/dist/schemas/3.1/unprocessed/xml-object.js.map +7 -0
- package/dist/schemas/extensions/index.js +29 -11
- package/dist/schemas/extensions/index.js.map +7 -0
- package/dist/schemas/extensions/x-additional-properties-name.js +6 -12
- package/dist/schemas/extensions/x-additional-properties-name.js.map +7 -0
- package/dist/schemas/extensions/x-additional-properties-name.test.js +28 -0
- package/dist/schemas/extensions/x-additional-properties-name.test.js.map +7 -0
- package/dist/schemas/extensions/x-code-samples.js +12 -10
- package/dist/schemas/extensions/x-code-samples.js.map +7 -0
- package/dist/schemas/extensions/x-code-samples.test.js +82 -0
- package/dist/schemas/extensions/x-code-samples.test.js.map +7 -0
- package/dist/schemas/extensions/x-display-name.js +8 -0
- package/dist/schemas/extensions/x-display-name.js.map +7 -0
- package/dist/schemas/extensions/x-display-name.test.js +28 -0
- package/dist/schemas/extensions/x-display-name.test.js.map +7 -0
- package/dist/schemas/extensions/x-enum-descriptions.js +6 -18
- package/dist/schemas/extensions/x-enum-descriptions.js.map +7 -0
- package/dist/schemas/extensions/x-enum-descriptions.test.js +36 -0
- package/dist/schemas/extensions/x-enum-descriptions.test.js.map +7 -0
- package/dist/schemas/extensions/x-internal.js +6 -5
- package/dist/schemas/extensions/x-internal.js.map +7 -0
- package/dist/schemas/extensions/x-internal.test.js +20 -0
- package/dist/schemas/extensions/x-internal.test.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-icon.js +6 -5
- package/dist/schemas/extensions/x-scalar-icon.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-icon.test.js +14 -0
- package/dist/schemas/extensions/x-scalar-icon.test.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-ignore.js +6 -5
- package/dist/schemas/extensions/x-scalar-ignore.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-ignore.test.js +20 -0
- package/dist/schemas/extensions/x-scalar-ignore.test.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-redirect-uri.js +6 -5
- package/dist/schemas/extensions/x-scalar-redirect-uri.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-redirect-uri.test.js +23 -0
- package/dist/schemas/extensions/x-scalar-redirect-uri.test.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-sdk-installation.js +10 -13
- package/dist/schemas/extensions/x-scalar-sdk-installation.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-sdk-installation.test.js +25 -0
- package/dist/schemas/extensions/x-scalar-sdk-installation.test.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-stability.js +10 -19
- package/dist/schemas/extensions/x-scalar-stability.js.map +7 -0
- package/dist/schemas/extensions/x-scalar-stability.test.js +33 -0
- package/dist/schemas/extensions/x-scalar-stability.test.js.map +7 -0
- package/dist/schemas/extensions/x-tag-groups.js +14 -17
- package/dist/schemas/extensions/x-tag-groups.js.map +7 -0
- package/dist/schemas/extensions/x-tag-groups.test.js +55 -0
- package/dist/schemas/extensions/x-tag-groups.test.js.map +7 -0
- package/dist/schemas/extensions/x-use-pkce.js +11 -10
- package/dist/schemas/extensions/x-use-pkce.js.map +7 -0
- package/dist/schemas/extensions/x-use-pkce.test.js +34 -0
- package/dist/schemas/extensions/x-use-pkce.test.js.map +7 -0
- package/package.json +4 -5
|
@@ -1,31 +1,18 @@
|
|
|
1
|
-
import { z } from
|
|
2
|
-
import { ResponseObjectSchema } from
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Responses Object
|
|
6
|
-
*
|
|
7
|
-
* A container for the expected responses of an operation. The container maps a HTTP response code to the expected
|
|
8
|
-
* response.
|
|
9
|
-
*
|
|
10
|
-
* The documentation is not necessarily expected to cover all possible HTTP response codes because they may not be known
|
|
11
|
-
* in advance. However, documentation is expected to cover a successful operation response and any known errors.
|
|
12
|
-
* The default MAY be used as a default Response Object for all HTTP codes that are not covered individually by the
|
|
13
|
-
* Responses Object.
|
|
14
|
-
*
|
|
15
|
-
* The Responses Object MUST contain at least one response code, and if only one response code is provided it SHOULD be
|
|
16
|
-
* the response for a successful operation call.
|
|
17
|
-
*
|
|
18
|
-
* @see https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.1.md#responses-object
|
|
19
|
-
*/
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { ResponseObjectSchema } from "./response-object.js";
|
|
20
3
|
const ResponsesObjectSchema = z.record(
|
|
21
|
-
/**
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
z.string(),
|
|
30
|
-
|
|
31
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Response Object | Reference Object Any HTTP status code can be used as the property name, but only one property per
|
|
6
|
+
* code, to describe the expected response for that HTTP status code. This field MUST be enclosed in quotation marks
|
|
7
|
+
* (for example, "200") for compatibility between JSON and YAML. To define a range of response codes, this field MAY
|
|
8
|
+
* contain the uppercase wildcard character X. For example, 2XX represents all response codes between 200 and 299.
|
|
9
|
+
* Only the following range definitions are allowed: 1XX, 2XX, 3XX, 4XX, and 5XX. If a response is defined using an
|
|
10
|
+
* explicit code, the explicit code definition takes precedence over the range definition for that code.
|
|
11
|
+
*/
|
|
12
|
+
z.string(),
|
|
13
|
+
ResponseObjectSchema
|
|
14
|
+
);
|
|
15
|
+
export {
|
|
16
|
+
ResponsesObjectSchema
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=responses-object.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/schemas/3.1/processed/responses-object.ts"],
|
|
4
|
+
"sourcesContent": ["import { z } from 'zod'\nimport { ResponseObjectSchema } from './response-object'\n\n/**\n * Responses Object\n *\n * A container for the expected responses of an operation. The container maps a HTTP response code to the expected\n * response.\n *\n * The documentation is not necessarily expected to cover all possible HTTP response codes because they may not be known\n * in advance. However, documentation is expected to cover a successful operation response and any known errors.\n * The default MAY be used as a default Response Object for all HTTP codes that are not covered individually by the\n * Responses Object.\n *\n * The Responses Object MUST contain at least one response code, and if only one response code is provided it SHOULD be\n * the response for a successful operation call.\n *\n * @see https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.1.md#responses-object\n */\nexport const ResponsesObjectSchema = z.record(\n /**\n * Response Object | Reference Object\tAny HTTP status code can be used as the property name, but only one property per\n * code, to describe the expected response for that HTTP status code. This field MUST be enclosed in quotation marks\n * (for example, \"200\") for compatibility between JSON and YAML. To define a range of response codes, this field MAY\n * contain the uppercase wildcard character X. For example, 2XX represents all response codes between 200 and 299.\n * Only the following range definitions are allowed: 1XX, 2XX, 3XX, 4XX, and 5XX. If a response is defined using an\n * explicit code, the explicit code definition takes precedence over the range definition for that code.\n */\n z.string(),\n ResponseObjectSchema,\n)\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,SAAS;AAClB,SAAS,4BAA4B;AAkB9B,MAAM,wBAAwB,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASrC,EAAE,OAAO;AAAA,EACT;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,90 +1,57 @@
|
|
|
1
|
-
import { z } from
|
|
2
|
-
|
|
3
|
-
// Helper for validating the expression syntax
|
|
1
|
+
import { z } from "zod";
|
|
4
2
|
const isValidRuntimeExpression = (value) => {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
if (value.startsWith("$")) {
|
|
4
|
+
return validatePureExpression(value);
|
|
5
|
+
}
|
|
6
|
+
if (value.includes("{")) {
|
|
7
|
+
const expressions = value.match(/\{([^}]+)\}/g);
|
|
8
|
+
if (!expressions) {
|
|
9
|
+
return false;
|
|
8
10
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
// Validate each embedded expression
|
|
17
|
-
return expressions.every((expr) => {
|
|
18
|
-
// Remove curly braces and validate the inner expression
|
|
19
|
-
const innerExpr = expr.slice(1, -1);
|
|
20
|
-
return validatePureExpression(innerExpr);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
return false;
|
|
11
|
+
return expressions.every((expr) => {
|
|
12
|
+
const innerExpr = expr.slice(1, -1);
|
|
13
|
+
return validatePureExpression(innerExpr);
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
return false;
|
|
24
17
|
};
|
|
25
|
-
// Helper to validate a pure runtime expression (without curly braces)
|
|
26
18
|
const validatePureExpression = (value) => {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
if (
|
|
41
|
-
|
|
19
|
+
const expression = value.startsWith("$") ? value.slice(1) : value;
|
|
20
|
+
if (["method", "url", "statusCode"].includes(expression)) {
|
|
21
|
+
return true;
|
|
22
|
+
}
|
|
23
|
+
const [mainPart, jsonPointer] = expression.split("#");
|
|
24
|
+
const [source, type, ...rest] = mainPart.split(".");
|
|
25
|
+
if (!["request", "response"].includes(source)) {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
if (!["header", "query", "path", "body"].includes(type)) {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
if (type === "body") {
|
|
32
|
+
if (jsonPointer === void 0) {
|
|
33
|
+
return false;
|
|
42
34
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
if (jsonPointer === undefined) {
|
|
46
|
-
return false;
|
|
47
|
-
}
|
|
48
|
-
// Empty pointer ('') and root pointer ('/') are valid
|
|
49
|
-
if (jsonPointer === '' || jsonPointer === '/') {
|
|
50
|
-
return true;
|
|
51
|
-
}
|
|
52
|
-
// For other pointers, validate the path
|
|
53
|
-
if (!jsonPointer.startsWith('/')) {
|
|
54
|
-
return false;
|
|
55
|
-
}
|
|
56
|
-
// Split on / and validate each segment
|
|
57
|
-
const segments = jsonPointer.slice(1).split('/');
|
|
58
|
-
return segments.every((segment) => {
|
|
59
|
-
// Decode any JSON Pointer escape sequences
|
|
60
|
-
const decoded = segment.replace(/~1/g, '/').replace(/~0/g, '~');
|
|
61
|
-
// Segment must not be empty unless it's the last one
|
|
62
|
-
return decoded.length > 0;
|
|
63
|
-
});
|
|
35
|
+
if (jsonPointer === "" || jsonPointer === "/") {
|
|
36
|
+
return true;
|
|
64
37
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
// Header names cannot contain spaces
|
|
68
|
-
const headerName = rest.join('.');
|
|
69
|
-
return !headerName.includes(' ');
|
|
38
|
+
if (!jsonPointer.startsWith("/")) {
|
|
39
|
+
return false;
|
|
70
40
|
}
|
|
71
|
-
|
|
72
|
-
return
|
|
41
|
+
const segments = jsonPointer.slice(1).split("/");
|
|
42
|
+
return segments.every((segment) => {
|
|
43
|
+
const decoded = segment.replace(/~1/g, "/").replace(/~0/g, "~");
|
|
44
|
+
return decoded.length > 0;
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
if (type === "header") {
|
|
48
|
+
const headerName = rest.join(".");
|
|
49
|
+
return !headerName.includes(" ");
|
|
50
|
+
}
|
|
51
|
+
return rest.length === 1;
|
|
73
52
|
};
|
|
74
|
-
/**
|
|
75
|
-
* Runtime Expression Schema
|
|
76
|
-
*
|
|
77
|
-
* Runtime expressions allow defining values based on information that will only be available within the HTTP message in
|
|
78
|
-
* an actual API call. This mechanism is used by Link Objects and Callback Objects.
|
|
79
|
-
*
|
|
80
|
-
* Expressions can be:
|
|
81
|
-
* 1. Pure runtime expressions starting with $ (e.g. $method, $request.path.id)
|
|
82
|
-
* 2. Embedded expressions in strings using curly braces (e.g. "Hello {$request.body#/name}!")
|
|
83
|
-
*
|
|
84
|
-
* @see https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.1.md#runtime-expressions
|
|
85
|
-
*/
|
|
86
53
|
const RuntimeExpressionSchema = z.string().refine(isValidRuntimeExpression, (value) => ({
|
|
87
|
-
|
|
54
|
+
message: `Invalid runtime expression: "${value}". Runtime expressions must:
|
|
88
55
|
- Start with $ or contain expressions in curly braces {}
|
|
89
56
|
- Use one of: $method, $url, $statusCode
|
|
90
57
|
- Or follow pattern: $request|response.(header|query|path|body)
|
|
@@ -92,7 +59,9 @@ const RuntimeExpressionSchema = z.string().refine(isValidRuntimeExpression, (val
|
|
|
92
59
|
- For headers, use valid header names without spaces
|
|
93
60
|
Example valid expressions:
|
|
94
61
|
- Pure: $method, $request.path.id, $response.body#/status
|
|
95
|
-
- Embedded: "Hello {$request.body#/name}!", "Status: {$statusCode}"
|
|
62
|
+
- Embedded: "Hello {$request.body#/name}!", "Status: {$statusCode}"`
|
|
96
63
|
}));
|
|
97
|
-
|
|
98
|
-
|
|
64
|
+
export {
|
|
65
|
+
RuntimeExpressionSchema
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=runtime-expression.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/schemas/3.1/processed/runtime-expression.ts"],
|
|
4
|
+
"sourcesContent": ["import { z } from 'zod'\n\n// Helper for validating the expression syntax\nconst isValidRuntimeExpression = (value: string): boolean => {\n // Handle pure runtime expressions starting with $\n if (value.startsWith('$')) {\n return validatePureExpression(value)\n }\n\n // Handle embedded expressions in strings\n if (value.includes('{')) {\n // Extract all expressions within curly braces\n const expressions = value.match(/\\{([^}]+)\\}/g)\n if (!expressions) {\n return false\n }\n\n // Validate each embedded expression\n return expressions.every((expr) => {\n // Remove curly braces and validate the inner expression\n const innerExpr = expr.slice(1, -1)\n return validatePureExpression(innerExpr)\n })\n }\n\n return false\n}\n\n// Helper to validate a pure runtime expression (without curly braces)\nconst validatePureExpression = (value: string): boolean => {\n // Remove $ prefix if present\n const expression = value.startsWith('$') ? value.slice(1) : value\n\n // Basic expressions without references\n if (['method', 'url', 'statusCode'].includes(expression)) {\n return true\n }\n\n // First split on # to separate the JSON pointer if it exists\n const [mainPart, jsonPointer] = expression.split('#')\n\n // Request and response references\n const [source, type, ...rest] = mainPart.split('.')\n\n if (!['request', 'response'].includes(source)) {\n return false\n }\n\n if (!['header', 'query', 'path', 'body'].includes(type)) {\n return false\n }\n\n // For body references, validate JSON pointer syntax\n if (type === 'body') {\n if (jsonPointer === undefined) {\n return false\n }\n\n // Empty pointer ('') and root pointer ('/') are valid\n if (jsonPointer === '' || jsonPointer === '/') {\n return true\n }\n\n // For other pointers, validate the path\n if (!jsonPointer.startsWith('/')) {\n return false\n }\n\n // Split on / and validate each segment\n const segments = jsonPointer.slice(1).split('/')\n\n return segments.every((segment) => {\n // Decode any JSON Pointer escape sequences\n const decoded = segment.replace(/~1/g, '/').replace(/~0/g, '~')\n\n // Segment must not be empty unless it's the last one\n return decoded.length > 0\n })\n }\n\n // For header references, validate header name\n if (type === 'header') {\n // Header names cannot contain spaces\n const headerName = rest.join('.')\n return !headerName.includes(' ')\n }\n\n // For other types (query, path), ensure there's a field name\n return rest.length === 1\n}\n\n/**\n * Runtime Expression Schema\n *\n * Runtime expressions allow defining values based on information that will only be available within the HTTP message in\n * an actual API call. This mechanism is used by Link Objects and Callback Objects.\n *\n * Expressions can be:\n * 1. Pure runtime expressions starting with $ (e.g. $method, $request.path.id)\n * 2. Embedded expressions in strings using curly braces (e.g. \"Hello {$request.body#/name}!\")\n *\n * @see https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.1.md#runtime-expressions\n */\nexport const RuntimeExpressionSchema = z.string().refine(isValidRuntimeExpression, (value) => ({\n message: `Invalid runtime expression: \"${value}\". Runtime expressions must:\n - Start with $ or contain expressions in curly braces {}\n - Use one of: $method, $url, $statusCode\n - Or follow pattern: $request|response.(header|query|path|body)\n - For body refs, include valid JSON pointer (e.g. #/user/id)\n - For headers, use valid header names without spaces\n Example valid expressions:\n - Pure: $method, $request.path.id, $response.body#/status\n - Embedded: \"Hello {$request.body#/name}!\", \"Status: {$statusCode}\"`,\n}))\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,SAAS;AAGlB,MAAM,2BAA2B,CAAC,UAA2B;AAE3D,MAAI,MAAM,WAAW,GAAG,GAAG;AACzB,WAAO,uBAAuB,KAAK;AAAA,EACrC;AAGA,MAAI,MAAM,SAAS,GAAG,GAAG;AAEvB,UAAM,cAAc,MAAM,MAAM,cAAc;AAC9C,QAAI,CAAC,aAAa;AAChB,aAAO;AAAA,IACT;AAGA,WAAO,YAAY,MAAM,CAAC,SAAS;AAEjC,YAAM,YAAY,KAAK,MAAM,GAAG,EAAE;AAClC,aAAO,uBAAuB,SAAS;AAAA,IACzC,CAAC;AAAA,EACH;AAEA,SAAO;AACT;AAGA,MAAM,yBAAyB,CAAC,UAA2B;AAEzD,QAAM,aAAa,MAAM,WAAW,GAAG,IAAI,MAAM,MAAM,CAAC,IAAI;AAG5D,MAAI,CAAC,UAAU,OAAO,YAAY,EAAE,SAAS,UAAU,GAAG;AACxD,WAAO;AAAA,EACT;AAGA,QAAM,CAAC,UAAU,WAAW,IAAI,WAAW,MAAM,GAAG;AAGpD,QAAM,CAAC,QAAQ,MAAM,GAAG,IAAI,IAAI,SAAS,MAAM,GAAG;AAElD,MAAI,CAAC,CAAC,WAAW,UAAU,EAAE,SAAS,MAAM,GAAG;AAC7C,WAAO;AAAA,EACT;AAEA,MAAI,CAAC,CAAC,UAAU,SAAS,QAAQ,MAAM,EAAE,SAAS,IAAI,GAAG;AACvD,WAAO;AAAA,EACT;AAGA,MAAI,SAAS,QAAQ;AACnB,QAAI,gBAAgB,QAAW;AAC7B,aAAO;AAAA,IACT;AAGA,QAAI,gBAAgB,MAAM,gBAAgB,KAAK;AAC7C,aAAO;AAAA,IACT;AAGA,QAAI,CAAC,YAAY,WAAW,GAAG,GAAG;AAChC,aAAO;AAAA,IACT;AAGA,UAAM,WAAW,YAAY,MAAM,CAAC,EAAE,MAAM,GAAG;AAE/C,WAAO,SAAS,MAAM,CAAC,YAAY;AAEjC,YAAM,UAAU,QAAQ,QAAQ,OAAO,GAAG,EAAE,QAAQ,OAAO,GAAG;AAG9D,aAAO,QAAQ,SAAS;AAAA,IAC1B,CAAC;AAAA,EACH;AAGA,MAAI,SAAS,UAAU;AAErB,UAAM,aAAa,KAAK,KAAK,GAAG;AAChC,WAAO,CAAC,WAAW,SAAS,GAAG;AAAA,EACjC;AAGA,SAAO,KAAK,WAAW;AACzB;AAcO,MAAM,0BAA0B,EAAE,OAAO,EAAE,OAAO,0BAA0B,CAAC,WAAW;AAAA,EAC7F,SAAS,gCAAgC,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAShD,EAAE;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,91 +1,90 @@
|
|
|
1
|
-
import { z } from
|
|
2
|
-
import { DiscriminatorObjectSchema } from
|
|
3
|
-
import { ExternalDocumentationObjectSchema } from
|
|
4
|
-
import { XmlObjectSchema } from
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* The Schema Object allows the definition of input and output data types.
|
|
8
|
-
* These types can be objects, but also primitives and arrays.
|
|
9
|
-
*/
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { DiscriminatorObjectSchema } from "./discriminator-object.js";
|
|
3
|
+
import { ExternalDocumentationObjectSchema } from "./external-documentation-object.js";
|
|
4
|
+
import { XmlObjectSchema } from "./xml-object.js";
|
|
10
5
|
const SchemaObjectSchema = z.object({
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
6
|
+
// Standard JSON Schema fields
|
|
7
|
+
title: z.string().optional(),
|
|
8
|
+
description: z.string().optional(),
|
|
9
|
+
default: z.any().optional(),
|
|
10
|
+
examples: z.array(z.any()).optional(),
|
|
11
|
+
multipleOf: z.number().optional(),
|
|
12
|
+
maximum: z.number().optional(),
|
|
13
|
+
exclusiveMaximum: z.union([z.boolean(), z.number()]).optional(),
|
|
14
|
+
minimum: z.number().optional(),
|
|
15
|
+
exclusiveMinimum: z.union([z.boolean(), z.number()]).optional(),
|
|
16
|
+
maxLength: z.number().int().optional(),
|
|
17
|
+
minLength: z.number().int().optional(),
|
|
18
|
+
pattern: z.string().optional(),
|
|
19
|
+
maxItems: z.number().int().optional(),
|
|
20
|
+
minItems: z.number().int().optional(),
|
|
21
|
+
uniqueItems: z.boolean().optional(),
|
|
22
|
+
maxProperties: z.number().int().optional(),
|
|
23
|
+
minProperties: z.number().int().optional(),
|
|
24
|
+
required: z.array(z.string()).optional(),
|
|
25
|
+
enum: z.array(z.any()).optional(),
|
|
26
|
+
type: z.union([
|
|
27
|
+
z.literal("array"),
|
|
28
|
+
z.literal("boolean"),
|
|
29
|
+
z.literal("integer"),
|
|
30
|
+
z.literal("number"),
|
|
31
|
+
z.literal("object"),
|
|
32
|
+
z.literal("string"),
|
|
33
|
+
z.literal("null"),
|
|
34
|
+
z.array(
|
|
35
|
+
z.union([
|
|
36
|
+
z.literal("array"),
|
|
37
|
+
z.literal("boolean"),
|
|
38
|
+
z.literal("integer"),
|
|
39
|
+
z.literal("number"),
|
|
40
|
+
z.literal("object"),
|
|
41
|
+
z.literal("string"),
|
|
42
|
+
z.literal("null")
|
|
43
|
+
])
|
|
44
|
+
)
|
|
45
|
+
]).optional(),
|
|
46
|
+
// JSON Schema fields
|
|
47
|
+
$ref: z.string().optional(),
|
|
48
|
+
$id: z.string().optional(),
|
|
49
|
+
$schema: z.string().optional(),
|
|
50
|
+
$defs: z.record(z.lazy(() => SchemaObjectSchema)).optional(),
|
|
51
|
+
const: z.any().optional(),
|
|
52
|
+
$dynamicRef: z.string().optional(),
|
|
53
|
+
$dynamicAnchor: z.string().optional(),
|
|
54
|
+
// OpenAPI specific fields
|
|
55
|
+
format: z.string().optional(),
|
|
56
|
+
contentMediaType: z.string().optional(),
|
|
57
|
+
contentEncoding: z.string().optional(),
|
|
58
|
+
contentSchema: z.lazy(() => SchemaObjectSchema).optional(),
|
|
59
|
+
deprecated: z.boolean().optional(),
|
|
60
|
+
readOnly: z.boolean().optional(),
|
|
61
|
+
writeOnly: z.boolean().optional(),
|
|
62
|
+
example: z.any().optional(),
|
|
63
|
+
// Object-related fields
|
|
64
|
+
properties: z.record(
|
|
65
|
+
z.string(),
|
|
66
|
+
z.lazy(() => SchemaObjectSchema)
|
|
67
|
+
).optional(),
|
|
68
|
+
additionalProperties: z.union([z.boolean(), z.lazy(() => SchemaObjectSchema)]).optional(),
|
|
69
|
+
patternProperties: z.record(
|
|
70
|
+
z.string(),
|
|
71
|
+
z.lazy(() => SchemaObjectSchema)
|
|
72
|
+
).optional(),
|
|
73
|
+
// Array-related fields
|
|
74
|
+
items: z.lazy(() => SchemaObjectSchema).optional(),
|
|
75
|
+
prefixItems: z.array(z.lazy(() => SchemaObjectSchema)).optional(),
|
|
76
|
+
// Composition-related fields
|
|
77
|
+
allOf: z.array(z.lazy(() => SchemaObjectSchema)).optional(),
|
|
78
|
+
oneOf: z.array(z.lazy(() => SchemaObjectSchema)).optional(),
|
|
79
|
+
anyOf: z.array(z.lazy(() => SchemaObjectSchema)).optional(),
|
|
80
|
+
not: z.lazy(() => SchemaObjectSchema).optional(),
|
|
81
|
+
// Discriminator (only valid with oneOf, anyOf, or allOf)
|
|
82
|
+
discriminator: DiscriminatorObjectSchema.optional(),
|
|
83
|
+
// Additional metadata
|
|
84
|
+
externalDocs: ExternalDocumentationObjectSchema.optional(),
|
|
85
|
+
xml: XmlObjectSchema.optional()
|
|
89
86
|
});
|
|
90
|
-
|
|
91
|
-
|
|
87
|
+
export {
|
|
88
|
+
SchemaObjectSchema
|
|
89
|
+
};
|
|
90
|
+
//# sourceMappingURL=schema-object.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/schemas/3.1/processed/schema-object.ts"],
|
|
4
|
+
"sourcesContent": ["import { z } from 'zod'\nimport { DiscriminatorObjectSchema } from './discriminator-object'\nimport { ExternalDocumentationObjectSchema } from './external-documentation-object'\nimport { XmlObjectSchema } from './xml-object'\n\n/**\n * The Schema Object allows the definition of input and output data types.\n * These types can be objects, but also primitives and arrays.\n */\nexport const SchemaObjectSchema: z.ZodType<Record<string, any>> = z.object({\n // Standard JSON Schema fields\n title: z.string().optional(),\n description: z.string().optional(),\n default: z.any().optional(),\n examples: z.array(z.any()).optional(),\n multipleOf: z.number().optional(),\n maximum: z.number().optional(),\n exclusiveMaximum: z.union([z.boolean(), z.number()]).optional(),\n minimum: z.number().optional(),\n exclusiveMinimum: z.union([z.boolean(), z.number()]).optional(),\n maxLength: z.number().int().optional(),\n minLength: z.number().int().optional(),\n pattern: z.string().optional(),\n maxItems: z.number().int().optional(),\n minItems: z.number().int().optional(),\n uniqueItems: z.boolean().optional(),\n maxProperties: z.number().int().optional(),\n minProperties: z.number().int().optional(),\n required: z.array(z.string()).optional(),\n enum: z.array(z.any()).optional(),\n type: z\n .union([\n z.literal('array'),\n z.literal('boolean'),\n z.literal('integer'),\n z.literal('number'),\n z.literal('object'),\n z.literal('string'),\n z.literal('null'),\n z.array(\n z.union([\n z.literal('array'),\n z.literal('boolean'),\n z.literal('integer'),\n z.literal('number'),\n z.literal('object'),\n z.literal('string'),\n z.literal('null'),\n ]),\n ),\n ])\n .optional(),\n\n // JSON Schema fields\n $ref: z.string().optional(),\n $id: z.string().optional(),\n $schema: z.string().optional(),\n $defs: z.record(z.lazy(() => SchemaObjectSchema)).optional(),\n const: z.any().optional(),\n $dynamicRef: z.string().optional(),\n $dynamicAnchor: z.string().optional(),\n\n // OpenAPI specific fields\n format: z.string().optional(),\n contentMediaType: z.string().optional(),\n contentEncoding: z.string().optional(),\n contentSchema: z.lazy(() => SchemaObjectSchema).optional(),\n deprecated: z.boolean().optional(),\n readOnly: z.boolean().optional(),\n writeOnly: z.boolean().optional(),\n example: z.any().optional(),\n\n // Object-related fields\n properties: z\n .record(\n z.string(),\n z.lazy(() => SchemaObjectSchema),\n )\n .optional(),\n additionalProperties: z.union([z.boolean(), z.lazy(() => SchemaObjectSchema)]).optional(),\n patternProperties: z\n .record(\n z.string(),\n z.lazy(() => SchemaObjectSchema),\n )\n .optional(),\n\n // Array-related fields\n items: z.lazy(() => SchemaObjectSchema).optional(),\n prefixItems: z.array(z.lazy(() => SchemaObjectSchema)).optional(),\n\n // Composition-related fields\n allOf: z.array(z.lazy(() => SchemaObjectSchema)).optional(),\n oneOf: z.array(z.lazy(() => SchemaObjectSchema)).optional(),\n anyOf: z.array(z.lazy(() => SchemaObjectSchema)).optional(),\n not: z.lazy(() => SchemaObjectSchema).optional(),\n\n // Discriminator (only valid with oneOf, anyOf, or allOf)\n discriminator: DiscriminatorObjectSchema.optional(),\n\n // Additional metadata\n externalDocs: ExternalDocumentationObjectSchema.optional(),\n xml: XmlObjectSchema.optional(),\n})\n\nexport type SchemaObject = z.infer<typeof SchemaObjectSchema>\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|