@openclaw/feishu 2026.9.3 → 2026.9.5
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/assets/activity.svg +3 -0
- package/assets/icon.png +0 -0
- package/dist/{accounts-cCMNFBKg.js → .setup/accounts-DmU0xYPx.mjs} +1 -1
- package/dist/{app-registration-BI99e_JI.js → .setup/app-registration-Bv4mvauR.mjs} +1 -1
- package/dist/{channel-DrAqd5ED.js → .setup/channel-C1KrXXJa.mjs} +100 -99
- package/dist/{channel.runtime-BZzuDlOS.js → .setup/channel.runtime-Bizuv7WZ.mjs} +32 -18
- package/dist/{chat-BZSnEtgb.js → .setup/chat-dWJYS63b.mjs} +89 -88
- package/dist/{client-DMbIL3UH.js → .setup/client-DCwNVFZg.mjs} +128 -11
- package/dist/{conversation-id-VYgGQ-GX.js → .setup/conversation-id-H-lUayji.mjs} +49 -14
- package/dist/{monitor-DSGtOPio.js → .setup/monitor-C69OLzgO.mjs} +4 -4
- package/dist/{monitor.account-BRDUsS_q.js → .setup/monitor.account-zwHb3HKM.mjs} +76 -52
- package/dist/{probe-D_SatdZl.js → .setup/probe-bdidyhAn.mjs} +2 -2
- package/dist/{reply-delivery-result-BXEmtKpf.js → .setup/reply-delivery-result-DFjxGLgX.mjs} +162 -163
- package/dist/.setup/runtime-setter-api-CG-RC4_r.mjs +3 -0
- package/dist/.setup/secret-contract-api-jmCkqVLc.mjs +3 -0
- package/dist/{security-audit-DKfR4Cv3.js → .setup/security-audit-CmiKKfU-.mjs} +1 -1
- package/dist/{session-conversation-DFCIvQK-.js → .setup/session-conversation-ZC6TC1zk.mjs} +1 -1
- package/dist/.setup/setup-api-CTRwX09n.mjs +3 -0
- package/dist/{subagent-hooks-Buadpie_.js → .setup/subagent-hooks-BBfF1hZk.mjs} +3 -19
- package/dist/api.js +125 -121
- package/dist/channel-plugin-api.js +1 -1
- package/dist/contract-api.js +3 -3
- package/dist/doctor-contract-api.js +1 -1
- package/dist/runtime-api.js +1 -1
- package/dist/runtime-setter-api.js +1 -1
- package/dist/secret-contract-api.js +1 -1
- package/dist/security-contract-api.js +1 -1
- package/dist/session-binding-contract-api.js +1 -1
- package/dist/session-key-api.js +1 -1
- package/dist/setup-api.js +1 -1
- package/dist/setup-entry.js +4 -3
- package/dist/subagent-hooks-api.js +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/es/index.js +199 -35
- package/node_modules/@larksuiteoapi/node-sdk/lib/index.js +199 -35
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/CHANGELOG.md +62 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/README.md +233 -5
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/dist/axios.js +387 -89
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/dist/axios.min.js +3 -3
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/dist/axios.min.js.map +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/dist/browser/axios.cjs +458 -98
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/dist/esm/axios.js +458 -98
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/dist/esm/axios.min.js +2 -2
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/dist/esm/axios.min.js.map +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/dist/node/axios.cjs +568 -116
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/index.d.cts +4 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/index.d.ts +4 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/adapters/fetch.js +64 -11
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/adapters/http.js +134 -50
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/adapters/xhr.js +52 -3
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/core/Axios.js +19 -14
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/core/InterceptorManager.js +107 -8
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/core/buildFullPath.js +1 -13
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/core/dispatchRequest.js +8 -2
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/core/mergeConfig.js +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/core/methodList.js +17 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/defaults/index.js +2 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/env/data.js +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/helpers/Http2Sessions.js +2 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/helpers/HttpStatusCode.js +11 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/helpers/fromDataURI.js +5 -4
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/helpers/normalizeURLForProtocolCheck.js +24 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/helpers/progressEventReducer.js +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/helpers/resolveConfig.js +4 -2
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/helpers/shouldBypassProxy.js +182 -6
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/helpers/throttle.js +3 -2
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/helpers/toFormData.js +14 -21
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/lib/utils.js +134 -13
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/axios/package.json +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/README.md +24 -17
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/light/protobuf.js +124 -14
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/light/protobuf.js.map +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/light/protobuf.min.js +3 -3
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/light/protobuf.min.js.map +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/minimal/protobuf.js +63 -9
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/minimal/protobuf.js.map +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/minimal/protobuf.min.js +3 -3
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/minimal/protobuf.min.js.map +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/protobuf.js +133 -18
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/protobuf.js.map +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/protobuf.min.js +3 -3
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/dist/protobuf.min.js.map +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/ext/descriptor.generated.d.ts +7 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/ext/descriptor.js +24 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/ext/protojson.js +14 -4
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/ext/textformat.js +8 -4
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/google/protobuf/descriptor.json +20 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/google/protobuf/descriptor.proto +14 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/index.d.ts +12 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/package.json +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/src/decoder.js +31 -2
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/src/enum.js +10 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/src/object.js +5 -2
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/src/parse.js +9 -4
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/src/reader.js +61 -7
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/src/type.js +10 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/protobufjs/src/wrappers.js +5 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/.github/THREAT_MODEL.md +3 -3
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/CHANGELOG.md +15 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/README.md +19 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/dist/qs.js +21 -21
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/eslint.config.mjs +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/lib/parse.js +3 -4
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/lib/stringify.js +23 -8
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/lib/utils.js +10 -3
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/package.json +4 -4
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/test/parse.js +192 -3
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/test/stringify.js +317 -0
- package/node_modules/@larksuiteoapi/node-sdk/node_modules/qs/test/utils.js +12 -0
- package/node_modules/@larksuiteoapi/node-sdk/package.json +1 -1
- package/node_modules/@larksuiteoapi/node-sdk/types/index.d.ts +35 -0
- package/node_modules/typebox/build/compile/validator.d.mts +1 -1
- package/node_modules/typebox/build/compile/validator.mjs +1 -1
- package/node_modules/typebox/build/format/idna/idn-hostname.mjs +7 -5
- package/node_modules/typebox/build/format/iri.mjs +5 -1
- package/node_modules/typebox/build/guard/emit.mjs +2 -4
- package/node_modules/typebox/build/guard/guard.mjs +6 -18
- package/node_modules/typebox/build/guard/string.mjs +16 -24
- package/node_modules/typebox/build/schema/build.mjs +2 -2
- package/node_modules/typebox/build/schema/check.mjs +1 -1
- package/node_modules/typebox/build/schema/compile.d.mts +3 -2
- package/node_modules/typebox/build/schema/compile.mjs +8 -8
- package/node_modules/typebox/build/schema/engine/_context.d.mts +6 -7
- package/node_modules/typebox/build/schema/engine/_context.mjs +23 -15
- package/node_modules/typebox/build/schema/engine/_functions.d.mts +2 -2
- package/node_modules/typebox/build/schema/engine/_functions.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/_reducer.d.mts +3 -3
- package/node_modules/typebox/build/schema/engine/_refine.d.mts +5 -5
- package/node_modules/typebox/build/schema/engine/_refine.mjs +4 -7
- package/node_modules/typebox/build/schema/engine/_stack.d.mts +34 -16
- package/node_modules/typebox/build/schema/engine/_stack.mjs +148 -104
- package/node_modules/typebox/build/schema/engine/additionalItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/additionalProperties.d.mts +8 -8
- package/node_modules/typebox/build/schema/engine/additionalProperties.mjs +26 -18
- package/node_modules/typebox/build/schema/engine/allOf.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/allOf.mjs +3 -3
- package/node_modules/typebox/build/schema/engine/anyOf.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/anyOf.mjs +5 -10
- package/node_modules/typebox/build/schema/engine/boolean.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/boolean.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/const.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/const.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/contains.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/contains.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/dependencies.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/dependencies.mjs +3 -6
- package/node_modules/typebox/build/schema/engine/dependentRequired.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/dependentRequired.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/dependentSchemas.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/dynamicRef.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/dynamicRef.mjs +11 -7
- package/node_modules/typebox/build/schema/engine/enum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/enum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/exclusiveMaximum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/exclusiveMaximum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/exclusiveMinimum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/exclusiveMinimum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/format.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/format.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/if.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/if.mjs +7 -15
- package/node_modules/typebox/build/schema/engine/items.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/items.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/maxContains.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maxContains.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/maxItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maxItems.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/maxLength.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maxLength.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/maxProperties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maxProperties.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/maximum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/maximum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minContains.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/minContains.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minItems.d.mts +5 -5
- package/node_modules/typebox/build/schema/engine/minItems.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minLength.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/minLength.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minProperties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/minProperties.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/minimum.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/minimum.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/multipleOf.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/multipleOf.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/not.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/not.mjs +4 -8
- package/node_modules/typebox/build/schema/engine/oneOf.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/oneOf.mjs +6 -11
- package/node_modules/typebox/build/schema/engine/pattern.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/pattern.mjs +3 -7
- package/node_modules/typebox/build/schema/engine/patternProperties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/patternProperties.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/prefixItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/prefixItems.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/properties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/properties.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/propertyNames.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/propertyNames.mjs +4 -10
- package/node_modules/typebox/build/schema/engine/recursiveRef.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/recursiveRef.mjs +11 -7
- package/node_modules/typebox/build/schema/engine/ref.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/ref.mjs +19 -15
- package/node_modules/typebox/build/schema/engine/required.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/required.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/schema.d.mts +7 -7
- package/node_modules/typebox/build/schema/engine/schema.mjs +137 -133
- package/node_modules/typebox/build/schema/engine/type.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/type.mjs +2 -6
- package/node_modules/typebox/build/schema/engine/unevaluatedItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/unevaluatedItems.mjs +5 -9
- package/node_modules/typebox/build/schema/engine/unevaluatedProperties.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/unevaluatedProperties.mjs +5 -9
- package/node_modules/typebox/build/schema/engine/uniqueItems.d.mts +4 -4
- package/node_modules/typebox/build/schema/engine/uniqueItems.mjs +2 -6
- package/node_modules/typebox/build/schema/errors.d.mts +2 -2
- package/node_modules/typebox/build/schema/errors.mjs +8 -14
- package/node_modules/typebox/build/schema/intern/index.d.mts +1 -0
- package/node_modules/typebox/build/schema/intern/index.mjs +1 -0
- package/node_modules/typebox/build/schema/intern/intern.d.mts +11 -0
- package/node_modules/typebox/build/schema/intern/intern.mjs +293 -0
- package/node_modules/typebox/build/schema/meta/draft_2019_09.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_2019_09.mjs +288 -0
- package/node_modules/typebox/build/schema/meta/draft_2020_12.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_2020_12.mjs +300 -0
- package/node_modules/typebox/build/schema/meta/draft_3.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_3.mjs +143 -0
- package/node_modules/typebox/build/schema/meta/draft_4.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_4.mjs +149 -0
- package/node_modules/typebox/build/schema/meta/draft_6.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_6.mjs +155 -0
- package/node_modules/typebox/build/schema/meta/draft_7.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/draft_7.mjs +172 -0
- package/node_modules/typebox/build/schema/meta/index.d.mts +2 -0
- package/node_modules/typebox/build/schema/meta/index.mjs +2 -0
- package/node_modules/typebox/build/schema/meta/meta.d.mts +9 -0
- package/node_modules/typebox/build/schema/meta/meta.mjs +15 -0
- package/node_modules/typebox/build/schema/meta/schema.d.mts +6 -0
- package/node_modules/typebox/build/schema/meta/schema.mjs +1 -0
- package/node_modules/typebox/build/schema/parse.d.mts +1 -0
- package/node_modules/typebox/build/schema/parse.mjs +10 -5
- package/node_modules/typebox/build/schema/resolve/resolve.d.mts +8 -3
- package/node_modules/typebox/build/schema/resolve/resolve.mjs +268 -139
- package/node_modules/typebox/build/schema/schema.d.mts +2 -0
- package/node_modules/typebox/build/schema/schema.mjs +2 -0
- package/node_modules/typebox/build/value/errors/errors.d.mts +2 -12
- package/node_modules/typebox/build/value/errors/errors.mjs +2 -7
- package/node_modules/typebox/package.json +1 -1
- package/node_modules/typebox/readme.md +59 -89
- package/node_modules/zod/README.md +27 -0
- package/node_modules/zod/compile.cjs +77 -0
- package/node_modules/zod/compile.d.cts +1 -0
- package/node_modules/zod/compile.d.ts +1 -0
- package/node_modules/zod/compile.js +52 -0
- package/node_modules/zod/index.cjs +2 -2
- package/node_modules/zod/index.d.cts +1 -2
- package/node_modules/zod/index.d.ts +1 -2
- package/node_modules/zod/index.js +5 -2
- package/node_modules/zod/package.json +13 -2
- package/node_modules/zod/src/compile.ts +56 -0
- package/node_modules/zod/src/index.ts +5 -2
- package/node_modules/zod/src/v3/ZodError.ts +22 -12
- package/node_modules/zod/src/v3/tests/error.test.ts +35 -0
- package/node_modules/zod/src/v3/tests/intersection.test.ts +18 -0
- package/node_modules/zod/src/v3/tests/language-server.test.ts +1 -2
- package/node_modules/zod/src/v3/tests/object.test.ts +3 -6
- package/node_modules/zod/src/v3/tests/readonly.test.ts +0 -80
- package/node_modules/zod/src/v3/tests/string.test.ts +6 -0
- package/node_modules/zod/src/v3/types.ts +5 -5
- package/node_modules/zod/src/v4/classic/checks.ts +1 -0
- package/node_modules/zod/src/v4/classic/compat.ts +26 -18
- package/node_modules/zod/src/v4/classic/deep-partial.ts +76 -0
- package/node_modules/zod/src/v4/classic/errors.ts +59 -44
- package/node_modules/zod/src/v4/classic/external.ts +12 -9
- package/node_modules/zod/src/v4/classic/from-json-schema.ts +140 -78
- package/node_modules/zod/src/v4/classic/in-out.ts +45 -0
- package/node_modules/zod/src/v4/classic/index.ts +2 -2
- package/node_modules/zod/src/v4/classic/iso.ts +2 -72
- package/node_modules/zod/src/v4/classic/parse.ts +10 -4
- package/node_modules/zod/src/v4/classic/schemas.ts +452 -262
- package/node_modules/zod/src/v4/classic/tests/apply.test.ts +27 -0
- package/node_modules/zod/src/v4/classic/tests/array.test.ts +2 -2
- package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +135 -0
- package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +30 -1
- package/node_modules/zod/src/v4/classic/tests/catch.test.ts +278 -0
- package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +1 -2
- package/node_modules/zod/src/v4/classic/tests/codec.test.ts +2 -1
- package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +2 -2
- package/node_modules/zod/src/v4/classic/tests/credit-card.test.ts +76 -0
- package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +720 -0
- package/node_modules/zod/src/v4/classic/tests/date.test.ts +30 -0
- package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +32 -18
- package/node_modules/zod/src/v4/classic/tests/deep-partial.test.ts +380 -0
- package/node_modules/zod/src/v4/classic/tests/default-locale.test.ts +32 -0
- package/node_modules/zod/src/v4/classic/tests/default.test.ts +46 -0
- package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +31 -7
- package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +155 -13
- package/node_modules/zod/src/v4/classic/tests/enum.test.ts +11 -0
- package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +112 -2
- package/node_modules/zod/src/v4/classic/tests/error.test.ts +274 -6
- package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +425 -10
- package/node_modules/zod/src/v4/classic/tests/function.test.ts +31 -0
- package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +2 -9
- package/node_modules/zod/src/v4/classic/tests/hash.test.ts +1 -2
- package/node_modules/zod/src/v4/classic/tests/in-out.test.ts +159 -0
- package/node_modules/zod/src/v4/classic/tests/index.test.ts +21 -2
- package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +281 -0
- package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +47 -0
- package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +136 -0
- package/node_modules/zod/src/v4/classic/tests/issue-schema.test.ts +183 -0
- package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +3 -10
- package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +36 -1
- package/node_modules/zod/src/v4/classic/tests/literal.test.ts +12 -1
- package/node_modules/zod/src/v4/classic/tests/map.test.ts +12 -0
- package/node_modules/zod/src/v4/classic/tests/number.test.ts +46 -9
- package/node_modules/zod/src/v4/classic/tests/object.test.ts +245 -12
- package/node_modules/zod/src/v4/classic/tests/optin-ladder.test.ts +234 -0
- package/node_modules/zod/src/v4/classic/tests/optional.test.ts +49 -16
- package/node_modules/zod/src/v4/classic/tests/partial.test.ts +51 -4
- package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +20 -2
- package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -68
- package/node_modules/zod/src/v4/classic/tests/record.test.ts +186 -18
- package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +33 -2
- package/node_modules/zod/src/v4/classic/tests/redos.test.ts +68 -0
- package/node_modules/zod/src/v4/classic/tests/refine.test.ts +60 -0
- package/node_modules/zod/src/v4/classic/tests/set.test.ts +9 -0
- package/node_modules/zod/src/v4/classic/tests/string.test.ts +127 -5
- package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +18 -0
- package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +11 -2
- package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +1585 -173
- package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +45 -30
- package/node_modules/zod/src/v4/classic/tests/union.test.ts +39 -2
- package/node_modules/zod/src/v4/classic/tests/validate.test.ts +76 -0
- package/node_modules/zod/src/v4/classic/tests/validations.test.ts +2 -2
- package/node_modules/zod/src/v4/core/api.ts +48 -12
- package/node_modules/zod/src/v4/core/checks.ts +57 -44
- package/node_modules/zod/src/v4/core/compile.ts +2188 -0
- package/node_modules/zod/src/v4/core/core.ts +98 -19
- package/node_modules/zod/src/v4/core/doc.ts +11 -7
- package/node_modules/zod/src/v4/core/errors.ts +115 -24
- package/node_modules/zod/src/v4/core/index.ts +3 -0
- package/node_modules/zod/src/v4/core/json-schema-generator.ts +6 -1
- package/node_modules/zod/src/v4/core/json-schema-processors.ts +257 -93
- package/node_modules/zod/src/v4/core/json-schema.ts +2 -1
- package/node_modules/zod/src/v4/core/memoizer.ts +284 -0
- package/node_modules/zod/src/v4/core/parse.ts +131 -38
- package/node_modules/zod/src/v4/core/regexes.ts +30 -13
- package/node_modules/zod/src/v4/core/registries.ts +2 -2
- package/node_modules/zod/src/v4/core/schemas.ts +759 -461
- package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +969 -0
- package/node_modules/zod/src/v4/core/tests/compile-global.test.ts +89 -0
- package/node_modules/zod/src/v4/core/tests/compile-off-by-default.test.ts +26 -0
- package/node_modules/zod/src/v4/core/tests/compile-stats.test.ts +34 -0
- package/node_modules/zod/src/v4/core/tests/compile.test.ts +1639 -0
- package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +1 -2
- package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +1 -2
- package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +3 -3
- package/node_modules/zod/src/v4/core/tests/locales/parity.test.ts +42 -0
- package/node_modules/zod/src/v4/core/tests/locales/tk.test.ts +69 -0
- package/node_modules/zod/src/v4/core/tests/treeshake.test.ts +51 -0
- package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +31 -0
- package/node_modules/zod/src/v4/core/to-json-schema.ts +275 -42
- package/node_modules/zod/src/v4/core/util.ts +268 -42
- package/node_modules/zod/src/v4/core/versions.ts +2 -2
- package/node_modules/zod/src/v4/core/visit.ts +193 -0
- package/node_modules/zod/src/v4/index.ts +3 -3
- package/node_modules/zod/src/v4/locales/ar.ts +3 -0
- package/node_modules/zod/src/v4/locales/az.ts +3 -0
- package/node_modules/zod/src/v4/locales/be.ts +10 -0
- package/node_modules/zod/src/v4/locales/bg.ts +3 -0
- package/node_modules/zod/src/v4/locales/bn.ts +121 -0
- package/node_modules/zod/src/v4/locales/ca.ts +3 -0
- package/node_modules/zod/src/v4/locales/ckb.ts +138 -0
- package/node_modules/zod/src/v4/locales/cs.ts +3 -0
- package/node_modules/zod/src/v4/locales/da.ts +5 -2
- package/node_modules/zod/src/v4/locales/de.ts +3 -0
- package/node_modules/zod/src/v4/locales/el.ts +1 -0
- package/node_modules/zod/src/v4/locales/en.ts +15 -4
- package/node_modules/zod/src/v4/locales/eo.ts +3 -0
- package/node_modules/zod/src/v4/locales/es.ts +2 -0
- package/node_modules/zod/src/v4/locales/fa.ts +3 -0
- package/node_modules/zod/src/v4/locales/fi.ts +3 -0
- package/node_modules/zod/src/v4/locales/fr-CA.ts +3 -0
- package/node_modules/zod/src/v4/locales/fr.ts +19 -14
- package/node_modules/zod/src/v4/locales/gu.ts +121 -0
- package/node_modules/zod/src/v4/locales/he.ts +6 -1
- package/node_modules/zod/src/v4/locales/hi.ts +124 -0
- package/node_modules/zod/src/v4/locales/hr.ts +2 -0
- package/node_modules/zod/src/v4/locales/hu.ts +3 -0
- package/node_modules/zod/src/v4/locales/hy.ts +9 -0
- package/node_modules/zod/src/v4/locales/id.ts +3 -0
- package/node_modules/zod/src/v4/locales/index.ts +10 -0
- package/node_modules/zod/src/v4/locales/is.ts +3 -0
- package/node_modules/zod/src/v4/locales/it.ts +3 -0
- package/node_modules/zod/src/v4/locales/ja.ts +3 -0
- package/node_modules/zod/src/v4/locales/ka.ts +3 -0
- package/node_modules/zod/src/v4/locales/km.ts +3 -0
- package/node_modules/zod/src/v4/locales/kn.ts +124 -0
- package/node_modules/zod/src/v4/locales/ko.ts +3 -0
- package/node_modules/zod/src/v4/locales/lt.ts +2 -0
- package/node_modules/zod/src/v4/locales/mk.ts +3 -0
- package/node_modules/zod/src/v4/locales/ms.ts +3 -0
- package/node_modules/zod/src/v4/locales/ne.ts +126 -0
- package/node_modules/zod/src/v4/locales/nl.ts +3 -0
- package/node_modules/zod/src/v4/locales/nn.ts +119 -0
- package/node_modules/zod/src/v4/locales/no.ts +5 -2
- package/node_modules/zod/src/v4/locales/ota.ts +3 -0
- package/node_modules/zod/src/v4/locales/pl.ts +3 -0
- package/node_modules/zod/src/v4/locales/ps.ts +3 -0
- package/node_modules/zod/src/v4/locales/pt-BR.ts +159 -0
- package/node_modules/zod/src/v4/locales/pt.ts +99 -58
- package/node_modules/zod/src/v4/locales/ro.ts +1 -0
- package/node_modules/zod/src/v4/locales/ru.ts +10 -0
- package/node_modules/zod/src/v4/locales/sk.ts +121 -0
- package/node_modules/zod/src/v4/locales/sl.ts +3 -0
- package/node_modules/zod/src/v4/locales/sv.ts +5 -2
- package/node_modules/zod/src/v4/locales/ta.ts +3 -0
- package/node_modules/zod/src/v4/locales/th.ts +3 -0
- package/node_modules/zod/src/v4/locales/tk.ts +111 -0
- package/node_modules/zod/src/v4/locales/tr.ts +3 -0
- package/node_modules/zod/src/v4/locales/uk.ts +3 -0
- package/node_modules/zod/src/v4/locales/ur.ts +3 -0
- package/node_modules/zod/src/v4/locales/uz.ts +1 -0
- package/node_modules/zod/src/v4/locales/vi.ts +3 -0
- package/node_modules/zod/src/v4/locales/yo.ts +3 -0
- package/node_modules/zod/src/v4/locales/zh-CN.ts +3 -0
- package/node_modules/zod/src/v4/locales/zh-TW.ts +3 -0
- package/node_modules/zod/src/v4/mini/checks.ts +1 -0
- package/node_modules/zod/src/v4/mini/deep-partial.ts +73 -0
- package/node_modules/zod/src/v4/mini/external.ts +10 -1
- package/node_modules/zod/src/v4/mini/in-out.ts +45 -0
- package/node_modules/zod/src/v4/mini/parse.ts +2 -0
- package/node_modules/zod/src/v4/mini/schemas.ts +135 -56
- package/node_modules/zod/src/v4/mini/tests/apply.test.ts +33 -0
- package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +62 -1
- package/node_modules/zod/src/v4/mini/tests/checks.test.ts +14 -0
- package/node_modules/zod/src/v4/mini/tests/codec.test.ts +35 -1
- package/node_modules/zod/src/v4/mini/tests/cyclic-data.test.ts +84 -0
- package/node_modules/zod/src/v4/mini/tests/deep-partial.test.ts +54 -0
- package/node_modules/zod/src/v4/mini/tests/error.test.ts +23 -4
- package/node_modules/zod/src/v4/mini/tests/functions.test.ts +9 -0
- package/node_modules/zod/src/v4/mini/tests/index.test.ts +72 -5
- package/node_modules/zod/src/v4/mini/tests/number.test.ts +14 -0
- package/node_modules/zod/src/v4/mini/tests/object.test.ts +65 -0
- package/node_modules/zod/src/v4/mini/tests/string.test.ts +21 -0
- package/node_modules/zod/v3/ZodError.cjs +22 -12
- package/node_modules/zod/v3/ZodError.d.cts +1 -1
- package/node_modules/zod/v3/ZodError.d.ts +1 -1
- package/node_modules/zod/v3/ZodError.js +22 -12
- package/node_modules/zod/v3/types.cjs +7 -5
- package/node_modules/zod/v3/types.js +7 -5
- package/node_modules/zod/v4/classic/checks.cjs +2 -1
- package/node_modules/zod/v4/classic/checks.d.cts +1 -1
- package/node_modules/zod/v4/classic/checks.d.ts +1 -1
- package/node_modules/zod/v4/classic/checks.js +1 -1
- package/node_modules/zod/v4/classic/compat.d.cts +9 -11
- package/node_modules/zod/v4/classic/compat.d.ts +9 -11
- package/node_modules/zod/v4/classic/deep-partial.cjs +39 -0
- package/node_modules/zod/v4/classic/deep-partial.d.cts +14 -0
- package/node_modules/zod/v4/classic/deep-partial.d.ts +14 -0
- package/node_modules/zod/v4/classic/deep-partial.js +13 -0
- package/node_modules/zod/v4/classic/errors.cjs +43 -34
- package/node_modules/zod/v4/classic/errors.d.cts +3 -4
- package/node_modules/zod/v4/classic/errors.d.ts +3 -4
- package/node_modules/zod/v4/classic/errors.js +43 -34
- package/node_modules/zod/v4/classic/external.cjs +30 -27
- package/node_modules/zod/v4/classic/external.d.cts +5 -2
- package/node_modules/zod/v4/classic/external.d.ts +5 -2
- package/node_modules/zod/v4/classic/external.js +5 -8
- package/node_modules/zod/v4/classic/from-json-schema.cjs +136 -75
- package/node_modules/zod/v4/classic/from-json-schema.js +136 -75
- package/node_modules/zod/v4/classic/in-out.cjs +63 -0
- package/node_modules/zod/v4/classic/in-out.d.cts +8 -0
- package/node_modules/zod/v4/classic/in-out.d.ts +8 -0
- package/node_modules/zod/v4/classic/in-out.js +36 -0
- package/node_modules/zod/v4/classic/index.cjs +2 -2
- package/node_modules/zod/v4/classic/index.d.cts +1 -2
- package/node_modules/zod/v4/classic/index.d.ts +1 -2
- package/node_modules/zod/v4/classic/index.js +2 -2
- package/node_modules/zod/v4/classic/iso.cjs +11 -22
- package/node_modules/zod/v4/classic/iso.d.cts +2 -17
- package/node_modules/zod/v4/classic/iso.d.ts +2 -17
- package/node_modules/zod/v4/classic/iso.js +2 -17
- package/node_modules/zod/v4/classic/parse.cjs +4 -1
- package/node_modules/zod/v4/classic/parse.d.cts +17 -4
- package/node_modules/zod/v4/classic/parse.d.ts +17 -4
- package/node_modules/zod/v4/classic/parse.js +1 -0
- package/node_modules/zod/v4/classic/schemas.cjs +498 -398
- package/node_modules/zod/v4/classic/schemas.d.cts +53 -18
- package/node_modules/zod/v4/classic/schemas.d.ts +53 -18
- package/node_modules/zod/v4/classic/schemas.js +492 -396
- package/node_modules/zod/v4/core/api.cjs +23 -4
- package/node_modules/zod/v4/core/api.d.cts +13 -9
- package/node_modules/zod/v4/core/api.d.ts +13 -9
- package/node_modules/zod/v4/core/api.js +21 -4
- package/node_modules/zod/v4/core/checks.cjs +37 -31
- package/node_modules/zod/v4/core/checks.d.cts +13 -13
- package/node_modules/zod/v4/core/checks.d.ts +13 -13
- package/node_modules/zod/v4/core/checks.js +37 -31
- package/node_modules/zod/v4/core/compile.cjs +1813 -0
- package/node_modules/zod/v4/core/compile.d.cts +51 -0
- package/node_modules/zod/v4/core/compile.d.ts +51 -0
- package/node_modules/zod/v4/core/compile.js +1783 -0
- package/node_modules/zod/v4/core/core.cjs +81 -18
- package/node_modules/zod/v4/core/core.d.cts +16 -4
- package/node_modules/zod/v4/core/core.d.ts +16 -4
- package/node_modules/zod/v4/core/core.js +82 -19
- package/node_modules/zod/v4/core/doc.cjs +5 -7
- package/node_modules/zod/v4/core/doc.d.cts +3 -1
- package/node_modules/zod/v4/core/doc.d.ts +3 -1
- package/node_modules/zod/v4/core/doc.js +5 -7
- package/node_modules/zod/v4/core/errors.cjs +110 -25
- package/node_modules/zod/v4/core/errors.d.cts +4 -0
- package/node_modules/zod/v4/core/errors.d.ts +4 -0
- package/node_modules/zod/v4/core/errors.js +110 -25
- package/node_modules/zod/v4/core/index.cjs +5 -1
- package/node_modules/zod/v4/core/index.d.cts +3 -0
- package/node_modules/zod/v4/core/index.d.ts +3 -0
- package/node_modules/zod/v4/core/index.js +3 -0
- package/node_modules/zod/v4/core/json-schema-generator.cjs +4 -0
- package/node_modules/zod/v4/core/json-schema-generator.d.cts +2 -2
- package/node_modules/zod/v4/core/json-schema-generator.d.ts +2 -2
- package/node_modules/zod/v4/core/json-schema-generator.js +4 -0
- package/node_modules/zod/v4/core/json-schema-processors.cjs +264 -95
- package/node_modules/zod/v4/core/json-schema-processors.js +243 -97
- package/node_modules/zod/v4/core/json-schema.d.cts +2 -1
- package/node_modules/zod/v4/core/json-schema.d.ts +2 -1
- package/node_modules/zod/v4/core/memoizer.cjs +272 -0
- package/node_modules/zod/v4/core/memoizer.d.cts +15 -0
- package/node_modules/zod/v4/core/memoizer.d.ts +15 -0
- package/node_modules/zod/v4/core/memoizer.js +265 -0
- package/node_modules/zod/v4/core/parse.cjs +96 -34
- package/node_modules/zod/v4/core/parse.d.cts +14 -11
- package/node_modules/zod/v4/core/parse.d.ts +14 -11
- package/node_modules/zod/v4/core/parse.js +94 -33
- package/node_modules/zod/v4/core/regexes.cjs +27 -15
- package/node_modules/zod/v4/core/regexes.d.cts +2 -0
- package/node_modules/zod/v4/core/regexes.d.ts +2 -0
- package/node_modules/zod/v4/core/regexes.js +24 -13
- package/node_modules/zod/v4/core/registries.js +2 -2
- package/node_modules/zod/v4/core/schemas.cjs +537 -326
- package/node_modules/zod/v4/core/schemas.d.cts +100 -31
- package/node_modules/zod/v4/core/schemas.d.ts +100 -31
- package/node_modules/zod/v4/core/schemas.js +526 -325
- package/node_modules/zod/v4/core/to-json-schema.cjs +242 -39
- package/node_modules/zod/v4/core/to-json-schema.d.cts +42 -3
- package/node_modules/zod/v4/core/to-json-schema.d.ts +42 -3
- package/node_modules/zod/v4/core/to-json-schema.js +241 -39
- package/node_modules/zod/v4/core/util.cjs +212 -31
- package/node_modules/zod/v4/core/util.d.cts +58 -1
- package/node_modules/zod/v4/core/util.d.ts +58 -1
- package/node_modules/zod/v4/core/util.js +202 -30
- package/node_modules/zod/v4/core/versions.cjs +2 -2
- package/node_modules/zod/v4/core/versions.d.cts +1 -1
- package/node_modules/zod/v4/core/versions.d.ts +1 -1
- package/node_modules/zod/v4/core/versions.js +2 -2
- package/node_modules/zod/v4/core/visit.cjs +195 -0
- package/node_modules/zod/v4/core/visit.d.cts +30 -0
- package/node_modules/zod/v4/core/visit.d.ts +30 -0
- package/node_modules/zod/v4/core/visit.js +169 -0
- package/node_modules/zod/v4/index.cjs +15 -5
- package/node_modules/zod/v4/index.d.cts +2 -2
- package/node_modules/zod/v4/index.d.ts +2 -2
- package/node_modules/zod/v4/index.js +3 -2
- package/node_modules/zod/v4/locales/ar.cjs +3 -0
- package/node_modules/zod/v4/locales/ar.js +3 -0
- package/node_modules/zod/v4/locales/az.cjs +3 -0
- package/node_modules/zod/v4/locales/az.js +3 -0
- package/node_modules/zod/v4/locales/be.cjs +10 -0
- package/node_modules/zod/v4/locales/be.js +10 -0
- package/node_modules/zod/v4/locales/bg.cjs +3 -0
- package/node_modules/zod/v4/locales/bg.js +3 -0
- package/node_modules/zod/v4/locales/bn.cjs +138 -0
- package/node_modules/zod/v4/locales/bn.d.cts +5 -0
- package/node_modules/zod/v4/locales/bn.d.ts +4 -0
- package/node_modules/zod/v4/locales/bn.js +111 -0
- package/node_modules/zod/v4/locales/ca.cjs +3 -0
- package/node_modules/zod/v4/locales/ca.js +3 -0
- package/node_modules/zod/v4/locales/ckb.cjs +158 -0
- package/node_modules/zod/v4/locales/ckb.d.cts +5 -0
- package/node_modules/zod/v4/locales/ckb.d.ts +4 -0
- package/node_modules/zod/v4/locales/ckb.js +131 -0
- package/node_modules/zod/v4/locales/cs.cjs +3 -0
- package/node_modules/zod/v4/locales/cs.js +3 -0
- package/node_modules/zod/v4/locales/da.cjs +5 -2
- package/node_modules/zod/v4/locales/da.js +5 -2
- package/node_modules/zod/v4/locales/de.cjs +3 -0
- package/node_modules/zod/v4/locales/de.js +3 -0
- package/node_modules/zod/v4/locales/el.cjs +1 -0
- package/node_modules/zod/v4/locales/el.js +1 -0
- package/node_modules/zod/v4/locales/en.cjs +14 -4
- package/node_modules/zod/v4/locales/en.js +14 -4
- package/node_modules/zod/v4/locales/eo.cjs +3 -0
- package/node_modules/zod/v4/locales/eo.js +3 -0
- package/node_modules/zod/v4/locales/es.cjs +2 -0
- package/node_modules/zod/v4/locales/es.js +2 -0
- package/node_modules/zod/v4/locales/fa.cjs +3 -0
- package/node_modules/zod/v4/locales/fa.js +3 -0
- package/node_modules/zod/v4/locales/fi.cjs +3 -0
- package/node_modules/zod/v4/locales/fi.js +3 -0
- package/node_modules/zod/v4/locales/fr-CA.cjs +3 -0
- package/node_modules/zod/v4/locales/fr-CA.js +3 -0
- package/node_modules/zod/v4/locales/fr.cjs +16 -14
- package/node_modules/zod/v4/locales/fr.js +16 -14
- package/node_modules/zod/v4/locales/gu.cjs +138 -0
- package/node_modules/zod/v4/locales/gu.d.cts +5 -0
- package/node_modules/zod/v4/locales/gu.d.ts +4 -0
- package/node_modules/zod/v4/locales/gu.js +111 -0
- package/node_modules/zod/v4/locales/he.cjs +5 -0
- package/node_modules/zod/v4/locales/he.js +5 -0
- package/node_modules/zod/v4/locales/hi.cjs +136 -0
- package/node_modules/zod/v4/locales/hi.d.cts +5 -0
- package/node_modules/zod/v4/locales/hi.d.ts +4 -0
- package/node_modules/zod/v4/locales/hi.js +109 -0
- package/node_modules/zod/v4/locales/hr.cjs +2 -0
- package/node_modules/zod/v4/locales/hr.js +2 -0
- package/node_modules/zod/v4/locales/hu.cjs +3 -0
- package/node_modules/zod/v4/locales/hu.js +3 -0
- package/node_modules/zod/v4/locales/hy.cjs +9 -0
- package/node_modules/zod/v4/locales/hy.js +9 -0
- package/node_modules/zod/v4/locales/id.cjs +3 -0
- package/node_modules/zod/v4/locales/id.js +3 -0
- package/node_modules/zod/v4/locales/index.cjs +22 -2
- package/node_modules/zod/v4/locales/index.d.cts +10 -0
- package/node_modules/zod/v4/locales/index.d.ts +10 -0
- package/node_modules/zod/v4/locales/index.js +10 -0
- package/node_modules/zod/v4/locales/is.cjs +3 -0
- package/node_modules/zod/v4/locales/is.js +3 -0
- package/node_modules/zod/v4/locales/it.cjs +3 -0
- package/node_modules/zod/v4/locales/it.js +3 -0
- package/node_modules/zod/v4/locales/ja.cjs +3 -0
- package/node_modules/zod/v4/locales/ja.js +3 -0
- package/node_modules/zod/v4/locales/ka.cjs +3 -0
- package/node_modules/zod/v4/locales/ka.js +3 -0
- package/node_modules/zod/v4/locales/km.cjs +3 -0
- package/node_modules/zod/v4/locales/km.js +3 -0
- package/node_modules/zod/v4/locales/kn.cjs +141 -0
- package/node_modules/zod/v4/locales/kn.d.cts +5 -0
- package/node_modules/zod/v4/locales/kn.d.ts +4 -0
- package/node_modules/zod/v4/locales/kn.js +114 -0
- package/node_modules/zod/v4/locales/ko.cjs +3 -0
- package/node_modules/zod/v4/locales/ko.js +3 -0
- package/node_modules/zod/v4/locales/lt.cjs +2 -0
- package/node_modules/zod/v4/locales/lt.js +2 -0
- package/node_modules/zod/v4/locales/mk.cjs +3 -0
- package/node_modules/zod/v4/locales/mk.js +3 -0
- package/node_modules/zod/v4/locales/ms.cjs +3 -0
- package/node_modules/zod/v4/locales/ms.js +3 -0
- package/node_modules/zod/v4/locales/ne.cjs +136 -0
- package/node_modules/zod/v4/locales/ne.d.cts +5 -0
- package/node_modules/zod/v4/locales/ne.d.ts +4 -0
- package/node_modules/zod/v4/locales/ne.js +109 -0
- package/node_modules/zod/v4/locales/nl.cjs +3 -0
- package/node_modules/zod/v4/locales/nl.js +3 -0
- package/node_modules/zod/v4/locales/nn.cjs +138 -0
- package/node_modules/zod/v4/locales/nn.d.cts +5 -0
- package/node_modules/zod/v4/locales/nn.d.ts +4 -0
- package/node_modules/zod/v4/locales/nn.js +111 -0
- package/node_modules/zod/v4/locales/no.cjs +5 -2
- package/node_modules/zod/v4/locales/no.js +5 -2
- package/node_modules/zod/v4/locales/ota.cjs +3 -0
- package/node_modules/zod/v4/locales/ota.js +3 -0
- package/node_modules/zod/v4/locales/pl.cjs +3 -0
- package/node_modules/zod/v4/locales/pl.js +3 -0
- package/node_modules/zod/v4/locales/ps.cjs +3 -0
- package/node_modules/zod/v4/locales/ps.js +3 -0
- package/node_modules/zod/v4/locales/pt-BR.cjs +168 -0
- package/node_modules/zod/v4/locales/pt-BR.d.cts +5 -0
- package/node_modules/zod/v4/locales/pt-BR.d.ts +4 -0
- package/node_modules/zod/v4/locales/pt-BR.js +141 -0
- package/node_modules/zod/v4/locales/pt.cjs +87 -55
- package/node_modules/zod/v4/locales/pt.js +87 -55
- package/node_modules/zod/v4/locales/ro.cjs +1 -0
- package/node_modules/zod/v4/locales/ro.js +1 -0
- package/node_modules/zod/v4/locales/ru.cjs +10 -0
- package/node_modules/zod/v4/locales/ru.js +10 -0
- package/node_modules/zod/v4/locales/sk.cjs +141 -0
- package/node_modules/zod/v4/locales/sk.d.cts +5 -0
- package/node_modules/zod/v4/locales/sk.d.ts +4 -0
- package/node_modules/zod/v4/locales/sk.js +114 -0
- package/node_modules/zod/v4/locales/sl.cjs +3 -0
- package/node_modules/zod/v4/locales/sl.js +3 -0
- package/node_modules/zod/v4/locales/sv.cjs +5 -2
- package/node_modules/zod/v4/locales/sv.js +5 -2
- package/node_modules/zod/v4/locales/ta.cjs +3 -0
- package/node_modules/zod/v4/locales/ta.js +3 -0
- package/node_modules/zod/v4/locales/th.cjs +3 -0
- package/node_modules/zod/v4/locales/th.js +3 -0
- package/node_modules/zod/v4/locales/tk.cjs +132 -0
- package/node_modules/zod/v4/locales/tk.d.cts +5 -0
- package/node_modules/zod/v4/locales/tk.d.ts +4 -0
- package/node_modules/zod/v4/locales/tk.js +105 -0
- package/node_modules/zod/v4/locales/tr.cjs +3 -0
- package/node_modules/zod/v4/locales/tr.js +3 -0
- package/node_modules/zod/v4/locales/uk.cjs +3 -0
- package/node_modules/zod/v4/locales/uk.js +3 -0
- package/node_modules/zod/v4/locales/ur.cjs +3 -0
- package/node_modules/zod/v4/locales/ur.js +3 -0
- package/node_modules/zod/v4/locales/uz.cjs +1 -0
- package/node_modules/zod/v4/locales/uz.js +1 -0
- package/node_modules/zod/v4/locales/vi.cjs +3 -0
- package/node_modules/zod/v4/locales/vi.js +3 -0
- package/node_modules/zod/v4/locales/yo.cjs +3 -0
- package/node_modules/zod/v4/locales/yo.js +3 -0
- package/node_modules/zod/v4/locales/zh-CN.cjs +3 -0
- package/node_modules/zod/v4/locales/zh-CN.js +3 -0
- package/node_modules/zod/v4/locales/zh-TW.cjs +3 -0
- package/node_modules/zod/v4/locales/zh-TW.js +3 -0
- package/node_modules/zod/v4/mini/checks.cjs +2 -1
- package/node_modules/zod/v4/mini/checks.d.cts +1 -1
- package/node_modules/zod/v4/mini/checks.d.ts +1 -1
- package/node_modules/zod/v4/mini/checks.js +1 -1
- package/node_modules/zod/v4/mini/deep-partial.cjs +39 -0
- package/node_modules/zod/v4/mini/deep-partial.d.cts +14 -0
- package/node_modules/zod/v4/mini/deep-partial.d.ts +14 -0
- package/node_modules/zod/v4/mini/deep-partial.js +13 -0
- package/node_modules/zod/v4/mini/external.cjs +12 -1
- package/node_modules/zod/v4/mini/external.d.cts +5 -2
- package/node_modules/zod/v4/mini/external.d.ts +5 -2
- package/node_modules/zod/v4/mini/external.js +3 -1
- package/node_modules/zod/v4/mini/in-out.cjs +63 -0
- package/node_modules/zod/v4/mini/in-out.d.cts +8 -0
- package/node_modules/zod/v4/mini/in-out.d.ts +8 -0
- package/node_modules/zod/v4/mini/in-out.js +36 -0
- package/node_modules/zod/v4/mini/parse.cjs +3 -1
- package/node_modules/zod/v4/mini/parse.d.cts +1 -1
- package/node_modules/zod/v4/mini/parse.d.ts +1 -1
- package/node_modules/zod/v4/mini/parse.js +1 -1
- package/node_modules/zod/v4/mini/schemas.cjs +75 -47
- package/node_modules/zod/v4/mini/schemas.d.cts +43 -13
- package/node_modules/zod/v4/mini/schemas.d.ts +43 -13
- package/node_modules/zod/v4/mini/schemas.js +71 -45
- package/openclaw.plugin.json +27 -56
- package/package.json +10 -7
- package/dist/targets-BTQCYRZQ.js +0 -48
- package/node_modules/zod/src/v4/core/config.ts +0 -15
- /package/dist/{audio-preflight.runtime-BBfC9elv.js → .setup/audio-preflight.runtime-BBfC9elv.mjs} +0 -0
- /package/dist/{doctor-contract-w6FpMypv.js → .setup/doctor-contract-w6FpMypv.mjs} +0 -0
- /package/dist/{json-response-DXajw_FU.js → .setup/json-response-DXajw_FU.mjs} +0 -0
- /package/dist/{rolldown-runtime-8H4AJuhK.js → .setup/rolldown-runtime-8H4AJuhK.mjs} +0 -0
- /package/dist/{runtime-C5JxBWZp.js → .setup/runtime-C5JxBWZp.mjs} +0 -0
- /package/dist/{secret-contract-BCpDLdg9.js → .setup/secret-contract-BCpDLdg9.mjs} +0 -0
- /package/dist/{security-audit-shared-CK5rVR-1.js → .setup/security-audit-shared-CK5rVR-1.mjs} +0 -0
- /package/dist/{thread-bindings-BiL1wGqK.js → .setup/thread-bindings-BiL1wGqK.mjs} +0 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type * as JSONSchema from "../core/json-schema.js";
|
|
2
2
|
import { type $ZodRegistry, globalRegistry } from "../core/registries.js";
|
|
3
|
+
import { assignProp, isPlainObject } from "../core/util.js";
|
|
3
4
|
import * as _checks from "./checks.js";
|
|
4
5
|
import * as _iso from "./iso.js";
|
|
5
6
|
import * as _schemas from "./schemas.js";
|
|
@@ -118,6 +119,16 @@ function detectVersion(schema: JSONSchema.JSONSchema, defaultTarget?: JSONSchema
|
|
|
118
119
|
return defaultTarget ?? "draft-2020-12";
|
|
119
120
|
}
|
|
120
121
|
|
|
122
|
+
// Positional schemas constrain the elements that are present; only minItems makes them required.
|
|
123
|
+
function applyMinItems(items: ZodType[], minItems: number): ZodType[] {
|
|
124
|
+
return items.map((item, index) => (index < minItems ? item : item.optional()));
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// Inverse of the encoding applied to $ref pointer segments in to-json-schema.ts. Per RFC 6901 the `~1` replacement must run before `~0`.
|
|
128
|
+
function decodeJSONPointerSegment(segment: string): string {
|
|
129
|
+
return segment.replace(/~1/g, "/").replace(/~0/g, "~");
|
|
130
|
+
}
|
|
131
|
+
|
|
121
132
|
function resolveRef(ref: string, ctx: ConversionContext): JSONSchema.JSONSchema {
|
|
122
133
|
if (!ref.startsWith("#")) {
|
|
123
134
|
throw new Error("External $ref is not supported, only local refs (#/...) are allowed");
|
|
@@ -133,7 +144,7 @@ function resolveRef(ref: string, ctx: ConversionContext): JSONSchema.JSONSchema
|
|
|
133
144
|
const defsKey = ctx.version === "draft-2020-12" ? "$defs" : "definitions";
|
|
134
145
|
|
|
135
146
|
if (path[0] === defsKey) {
|
|
136
|
-
const key = path[1];
|
|
147
|
+
const key = path[1] === undefined ? undefined : decodeJSONPointerSegment(path[1]);
|
|
137
148
|
if (!key || !ctx.defs[key]) {
|
|
138
149
|
throw new Error(`Reference not found: ${ref}`);
|
|
139
150
|
}
|
|
@@ -143,6 +154,48 @@ function resolveRef(ref: string, ctx: ConversionContext): JSONSchema.JSONSchema
|
|
|
143
154
|
throw new Error(`Reference not found: ${ref}`);
|
|
144
155
|
}
|
|
145
156
|
|
|
157
|
+
/**
|
|
158
|
+
* Rejects every own key that fails `keySchema`, before `objectSchema` runs. The
|
|
159
|
+
* guard has to see the raw input: an object parse drops `__proto__` and can add
|
|
160
|
+
* keys from a property `default`, so its output is not the set of names the
|
|
161
|
+
* instance actually carried.
|
|
162
|
+
*/
|
|
163
|
+
function checkPropertyNames(objectSchema: ZodType, keySchema: ZodType): ZodType {
|
|
164
|
+
// An identity transform, not z.any(), so `toJSONSchema` reports the object on both the input and the output side of the pipe.
|
|
165
|
+
const guard = z
|
|
166
|
+
.transform((value: unknown) => value)
|
|
167
|
+
.check((payload) => {
|
|
168
|
+
const value = payload.value;
|
|
169
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) return;
|
|
170
|
+
for (const key of Object.getOwnPropertyNames(value)) {
|
|
171
|
+
const result = keySchema.safeParse(key);
|
|
172
|
+
if (result.success) continue;
|
|
173
|
+
payload.issues.push({
|
|
174
|
+
code: "invalid_key",
|
|
175
|
+
origin: "record",
|
|
176
|
+
issues: result.error.issues,
|
|
177
|
+
input: key,
|
|
178
|
+
path: [key],
|
|
179
|
+
continue: true,
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
return guard.pipe(objectSchema);
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
function getTupleRest(restSchema: JSONSchema._JSONSchema | undefined, ctx: ConversionContext): ZodType | undefined {
|
|
187
|
+
if (restSchema === false) {
|
|
188
|
+
return undefined;
|
|
189
|
+
}
|
|
190
|
+
if (restSchema === undefined || restSchema === true) {
|
|
191
|
+
return z.any();
|
|
192
|
+
}
|
|
193
|
+
return convertSchema(restSchema, ctx);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
// the RFC 3339 full-time keyword, narrower than `z.iso.time()`; local because sharing it via `timeSource` pins that builder into every bundle (+139 B gzipped on a mini `z.boolean()`)
|
|
197
|
+
const fullTime = /^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|[+-](?:[01]\d|2[0-3]):[0-5]\d)$/;
|
|
198
|
+
|
|
146
199
|
function convertBaseSchema(schema: JSONSchema.JSONSchema, ctx: ConversionContext): ZodType {
|
|
147
200
|
// Handle unsupported features
|
|
148
201
|
if (schema.not !== undefined) {
|
|
@@ -271,13 +324,15 @@ function convertBaseSchema(schema: JSONSchema.JSONSchema, ctx: ConversionContext
|
|
|
271
324
|
} else if (format === "uuid" || format === "guid") {
|
|
272
325
|
stringSchema = stringSchema.check(z.uuid());
|
|
273
326
|
} else if (format === "date-time") {
|
|
274
|
-
stringSchema = stringSchema.check(z.iso.datetime());
|
|
327
|
+
stringSchema = stringSchema.check(z.iso.datetime({ offset: true }));
|
|
275
328
|
} else if (format === "date") {
|
|
276
329
|
stringSchema = stringSchema.check(z.iso.date());
|
|
277
330
|
} else if (format === "time") {
|
|
278
|
-
stringSchema = stringSchema.check(z.
|
|
331
|
+
stringSchema = stringSchema.check(z.regex(fullTime));
|
|
279
332
|
} else if (format === "duration") {
|
|
280
333
|
stringSchema = stringSchema.check(z.iso.duration());
|
|
334
|
+
} else if (format === "hostname") {
|
|
335
|
+
stringSchema = stringSchema.check(z.hostname());
|
|
281
336
|
} else if (format === "ipv4") {
|
|
282
337
|
stringSchema = stringSchema.check(z.ipv4());
|
|
283
338
|
} else if (format === "ipv6") {
|
|
@@ -294,6 +349,8 @@ function convertBaseSchema(schema: JSONSchema.JSONSchema, ctx: ConversionContext
|
|
|
294
349
|
stringSchema = stringSchema.check(z.base64url());
|
|
295
350
|
} else if (format === "e164") {
|
|
296
351
|
stringSchema = stringSchema.check(z.e164());
|
|
352
|
+
} else if (format === "credit_card") {
|
|
353
|
+
stringSchema = stringSchema.check(z.creditCard());
|
|
297
354
|
} else if (format === "jwt") {
|
|
298
355
|
stringSchema = stringSchema.check(z.jwt());
|
|
299
356
|
} else if (format === "emoji") {
|
|
@@ -336,10 +393,12 @@ function convertBaseSchema(schema: JSONSchema.JSONSchema, ctx: ConversionContext
|
|
|
336
393
|
let numberSchema: ZodNumber = type === "integer" ? z.number().int() : z.number();
|
|
337
394
|
|
|
338
395
|
// Apply constraints
|
|
339
|
-
|
|
396
|
+
|
|
397
|
+
// In draft-04, `exclusiveMinimum: true` makes the sibling `minimum` exclusive rather than an independent bound, so the inclusive `.min()` is skipped; emitting it too would be dominated by the exclusive check and report a second, weaker issue.
|
|
398
|
+
if (typeof schema.minimum === "number" && schema.exclusiveMinimum !== true) {
|
|
340
399
|
numberSchema = numberSchema.min(schema.minimum);
|
|
341
400
|
}
|
|
342
|
-
if (typeof schema.maximum === "number") {
|
|
401
|
+
if (typeof schema.maximum === "number" && schema.exclusiveMaximum !== true) {
|
|
343
402
|
numberSchema = numberSchema.max(schema.maximum);
|
|
344
403
|
}
|
|
345
404
|
if (typeof schema.exclusiveMinimum === "number") {
|
|
@@ -375,38 +434,21 @@ function convertBaseSchema(schema: JSONSchema.JSONSchema, ctx: ConversionContext
|
|
|
375
434
|
const properties = schema.properties || {};
|
|
376
435
|
const requiredSet = new Set(schema.required || []);
|
|
377
436
|
|
|
437
|
+
const additionalSchema =
|
|
438
|
+
typeof schema.additionalProperties === "object"
|
|
439
|
+
? convertSchema(schema.additionalProperties as JSONSchema.JSONSchema, ctx)
|
|
440
|
+
: undefined;
|
|
441
|
+
|
|
378
442
|
// Convert properties - mark optional ones
|
|
379
443
|
for (const [key, propSchema] of Object.entries(properties)) {
|
|
380
444
|
const propZodSchema = convertSchema(propSchema as JSONSchema.JSONSchema, ctx);
|
|
381
|
-
// If not in required array, make it optional
|
|
382
|
-
shape
|
|
383
|
-
}
|
|
384
|
-
|
|
385
|
-
// Handle propertyNames
|
|
386
|
-
if (schema.propertyNames) {
|
|
387
|
-
const keySchema = convertSchema(schema.propertyNames, ctx) as ZodString;
|
|
388
|
-
const valueSchema =
|
|
389
|
-
schema.additionalProperties && typeof schema.additionalProperties === "object"
|
|
390
|
-
? convertSchema(schema.additionalProperties as JSONSchema.JSONSchema, ctx)
|
|
391
|
-
: z.any();
|
|
392
|
-
|
|
393
|
-
// Case A: No properties (pure record)
|
|
394
|
-
if (Object.keys(shape).length === 0) {
|
|
395
|
-
zodSchema = z.record(keySchema, valueSchema);
|
|
396
|
-
break;
|
|
397
|
-
}
|
|
398
|
-
|
|
399
|
-
// Case B: With properties (intersection of object and looseRecord)
|
|
400
|
-
const objectSchema = z.object(shape).passthrough();
|
|
401
|
-
const recordSchema = z.looseRecord(keySchema, valueSchema);
|
|
402
|
-
zodSchema = z.intersection(objectSchema, recordSchema);
|
|
403
|
-
break;
|
|
445
|
+
// If not in required array, make it optional. assignProp so a __proto__ key becomes an own property instead of hitting the inherited setter
|
|
446
|
+
assignProp(shape, key, requiredSet.has(key) ? propZodSchema : propZodSchema.optional());
|
|
404
447
|
}
|
|
405
448
|
|
|
406
449
|
// Handle patternProperties
|
|
407
450
|
if (schema.patternProperties) {
|
|
408
|
-
// patternProperties: keys matching pattern must satisfy corresponding schema
|
|
409
|
-
// Use loose records so non-matching keys pass through
|
|
451
|
+
// patternProperties: keys matching pattern must satisfy corresponding schema. Use loose records so non-matching keys pass through
|
|
410
452
|
const patternProps = schema.patternProperties;
|
|
411
453
|
const patternKeys = Object.keys(patternProps);
|
|
412
454
|
const looseRecords: ZodType[] = [];
|
|
@@ -437,45 +479,72 @@ function convertBaseSchema(schema: JSONSchema.JSONSchema, ctx: ConversionContext
|
|
|
437
479
|
}
|
|
438
480
|
zodSchema = result;
|
|
439
481
|
}
|
|
440
|
-
break;
|
|
441
|
-
}
|
|
442
482
|
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
483
|
+
// When additionalProperties is false, reject keys that are neither defined in properties nor matched by any patternProperty.
|
|
484
|
+
if (schema.additionalProperties === false) {
|
|
485
|
+
const propertyKeys = Object.keys(shape);
|
|
486
|
+
const patterns = patternKeys.map((p) => new RegExp(p));
|
|
487
|
+
const basePatternSchema = zodSchema;
|
|
488
|
+
zodSchema = zodSchema.check((payload) => {
|
|
489
|
+
if (!isPlainObject(payload.value)) return;
|
|
490
|
+
const unrecognized: string[] = [];
|
|
491
|
+
for (const key of Object.keys(payload.value)) {
|
|
492
|
+
if (propertyKeys.includes(key)) continue;
|
|
493
|
+
if (patterns.some((regex) => regex.test(key))) continue;
|
|
494
|
+
unrecognized.push(key);
|
|
495
|
+
}
|
|
496
|
+
if (unrecognized.length) {
|
|
497
|
+
payload.issues.push({
|
|
498
|
+
code: "unrecognized_keys",
|
|
499
|
+
keys: unrecognized,
|
|
500
|
+
input: payload.value,
|
|
501
|
+
inst: basePatternSchema,
|
|
502
|
+
});
|
|
503
|
+
}
|
|
504
|
+
});
|
|
505
|
+
}
|
|
453
506
|
} else {
|
|
454
|
-
// additionalProperties
|
|
455
|
-
|
|
507
|
+
// Handle additionalProperties. In JSON Schema, additionalProperties defaults to true (allow any extra properties). In Zod, objects strip unknown keys by default, so we need to handle this explicitly
|
|
508
|
+
const objectSchema = z.object(shape);
|
|
509
|
+
if (schema.additionalProperties === false) {
|
|
510
|
+
// Strict mode - no extra properties allowed
|
|
511
|
+
zodSchema = objectSchema.strict();
|
|
512
|
+
} else if (additionalSchema) {
|
|
513
|
+
// Extra properties must match the specified schema
|
|
514
|
+
zodSchema = objectSchema.catchall(additionalSchema);
|
|
515
|
+
} else {
|
|
516
|
+
// additionalProperties is true or undefined - allow any extra properties (passthrough)
|
|
517
|
+
zodSchema = objectSchema.passthrough();
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
// propertyNames constrains key *names* only, and says nothing about which keys are required or how their values validate. Layering it on top of the result keeps properties/patternProperties/additionalProperties composing underneath. `true` allows every name, so it needs no guard.
|
|
522
|
+
if (schema.propertyNames !== undefined && schema.propertyNames !== true) {
|
|
523
|
+
// Keys are always strings, so a propertyNames subschema that omits `type` still constrains them — without this it would convert to z.any().
|
|
524
|
+
const keyJSONSchema =
|
|
525
|
+
typeof schema.propertyNames === "object" && schema.propertyNames.type === undefined
|
|
526
|
+
? { type: "string", ...schema.propertyNames }
|
|
527
|
+
: schema.propertyNames;
|
|
528
|
+
zodSchema = checkPropertyNames(zodSchema, convertSchema(keyJSONSchema as JSONSchema.JSONSchema, ctx));
|
|
456
529
|
}
|
|
457
530
|
break;
|
|
458
531
|
}
|
|
459
532
|
|
|
460
533
|
case "array": {
|
|
461
|
-
// TODO: uniqueItems
|
|
462
|
-
|
|
534
|
+
// TODO: uniqueItems and contains/minContains/maxContains are not supported
|
|
535
|
+
|
|
463
536
|
// Check if this is a tuple (prefixItems or items as array)
|
|
464
537
|
const prefixItems = schema.prefixItems;
|
|
465
538
|
const items = schema.items;
|
|
466
539
|
|
|
467
540
|
if (prefixItems && Array.isArray(prefixItems)) {
|
|
468
541
|
// Tuple with prefixItems (draft-2020-12)
|
|
542
|
+
const minItems = typeof schema.minItems === "number" ? schema.minItems : 0;
|
|
469
543
|
const tupleItems = prefixItems.map((item) => convertSchema(item as JSONSchema.JSONSchema, ctx));
|
|
470
|
-
const
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
if (rest) {
|
|
475
|
-
zodSchema = z.tuple(tupleItems as [ZodType, ...ZodType[]]).rest(rest);
|
|
476
|
-
} else {
|
|
477
|
-
zodSchema = z.tuple(tupleItems as [ZodType, ...ZodType[]]);
|
|
478
|
-
}
|
|
544
|
+
const positionalItems = applyMinItems(tupleItems, minItems);
|
|
545
|
+
const rest = !Array.isArray(items) ? getTupleRest(items, ctx) : undefined;
|
|
546
|
+
const tupleSchema = z.tuple(positionalItems as [ZodType, ...ZodType[]]);
|
|
547
|
+
zodSchema = rest ? tupleSchema.rest(rest) : tupleSchema;
|
|
479
548
|
// Apply minItems/maxItems constraints to tuples
|
|
480
549
|
if (typeof schema.minItems === "number") {
|
|
481
550
|
zodSchema = zodSchema.check(z.minLength(schema.minItems));
|
|
@@ -485,16 +554,12 @@ function convertBaseSchema(schema: JSONSchema.JSONSchema, ctx: ConversionContext
|
|
|
485
554
|
}
|
|
486
555
|
} else if (Array.isArray(items)) {
|
|
487
556
|
// Tuple with items array (draft-7)
|
|
557
|
+
const minItems = typeof schema.minItems === "number" ? schema.minItems : 0;
|
|
488
558
|
const tupleItems = items.map((item) => convertSchema(item as JSONSchema.JSONSchema, ctx));
|
|
489
|
-
const
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
if (rest) {
|
|
494
|
-
zodSchema = z.tuple(tupleItems as [ZodType, ...ZodType[]]).rest(rest);
|
|
495
|
-
} else {
|
|
496
|
-
zodSchema = z.tuple(tupleItems as [ZodType, ...ZodType[]]);
|
|
497
|
-
}
|
|
559
|
+
const positionalItems = applyMinItems(tupleItems, minItems);
|
|
560
|
+
const rest = getTupleRest(schema.additionalItems, ctx);
|
|
561
|
+
const tupleSchema = z.tuple(positionalItems as [ZodType, ...ZodType[]]);
|
|
562
|
+
zodSchema = rest ? tupleSchema.rest(rest) : tupleSchema;
|
|
498
563
|
// Apply minItems/maxItems constraints to tuples
|
|
499
564
|
if (typeof schema.minItems === "number") {
|
|
500
565
|
zodSchema = zodSchema.check(z.minLength(schema.minItems));
|
|
@@ -540,6 +605,7 @@ function convertSchema(schema: JSONSchema.JSONSchema | boolean, ctx: ConversionC
|
|
|
540
605
|
const hasExplicitType = schema.type || schema.enum !== undefined || schema.const !== undefined;
|
|
541
606
|
|
|
542
607
|
// Process composition keywords LAST (they can appear together)
|
|
608
|
+
|
|
543
609
|
// Handle anyOf - wrap base schema with union
|
|
544
610
|
if (schema.anyOf && Array.isArray(schema.anyOf)) {
|
|
545
611
|
const options = schema.anyOf.map((s) => convertSchema(s, ctx));
|
|
@@ -578,16 +644,12 @@ function convertSchema(schema: JSONSchema.JSONSchema | boolean, ctx: ConversionC
|
|
|
578
644
|
baseSchema = z.readonly(baseSchema);
|
|
579
645
|
}
|
|
580
646
|
|
|
581
|
-
// Apply `default` so it wraps the fully-composed schema. This ensures
|
|
582
|
-
// `parse(undefined) -> default` works regardless of which branch of
|
|
583
|
-
// `convertBaseSchema` produced the inner schema (enum/const/not/typed/etc.).
|
|
647
|
+
// Apply `default` so it wraps the fully-composed schema. This ensures `parse(undefined) -> default` works regardless of which branch of `convertBaseSchema` produced the inner schema (enum/const/not/typed/etc.).
|
|
584
648
|
if (schema.default !== undefined) {
|
|
585
649
|
baseSchema = baseSchema.default(schema.default);
|
|
586
650
|
}
|
|
587
651
|
|
|
588
|
-
// Collect non-description annotation metadata into the user-supplied
|
|
589
|
-
// registry. Description is handled separately below via `.describe()` to
|
|
590
|
-
// preserve the contract that `schema.description` reads from globalRegistry.
|
|
652
|
+
// Collect non-description annotation metadata into the user-supplied registry. Description is handled separately below via `.describe()` to preserve the contract that `schema.description` reads from globalRegistry.
|
|
591
653
|
const extraMeta: Record<string, unknown> = {};
|
|
592
654
|
|
|
593
655
|
const coreMetadataKeys = ["$id", "id", "$comment", "$anchor", "$vocabulary", "$dynamicRef", "$dynamicAnchor"];
|
|
@@ -604,9 +666,14 @@ function convertSchema(schema: JSONSchema.JSONSchema | boolean, ctx: ConversionC
|
|
|
604
666
|
}
|
|
605
667
|
}
|
|
606
668
|
|
|
669
|
+
// `propertyNames` is enforced by a key guard, which `toJSONSchema` cannot infer, so the original keyword is carried as metadata to keep the round-trip lossless. Only where it was actually applied: on any other type it is inert, and on a `$ref` the metadata would land on the target every reference shares.
|
|
670
|
+
if (schema.propertyNames !== undefined && schema.type === "object" && schema.$ref === undefined) {
|
|
671
|
+
extraMeta.propertyNames = schema.propertyNames;
|
|
672
|
+
}
|
|
673
|
+
|
|
607
674
|
for (const key of Object.keys(schema)) {
|
|
608
675
|
if (!RECOGNIZED_KEYS.has(key)) {
|
|
609
|
-
extraMeta
|
|
676
|
+
assignProp(extraMeta, key, schema[key]);
|
|
610
677
|
}
|
|
611
678
|
}
|
|
612
679
|
|
|
@@ -614,9 +681,7 @@ function convertSchema(schema: JSONSchema.JSONSchema | boolean, ctx: ConversionC
|
|
|
614
681
|
ctx.registry.add(baseSchema, extraMeta);
|
|
615
682
|
}
|
|
616
683
|
|
|
617
|
-
// Apply description last. `.describe()` clones the schema and sets
|
|
618
|
-
// `_zod.parent` on the clone, so registry lookups on the returned reference
|
|
619
|
-
// still resolve `extraMeta` via parent inheritance.
|
|
684
|
+
// Apply description last. `.describe()` clones the schema and sets `_zod.parent` on the clone, so registry lookups on the returned reference still resolve `extraMeta` via parent inheritance.
|
|
620
685
|
if (schema.description) {
|
|
621
686
|
baseSchema = baseSchema.describe(schema.description);
|
|
622
687
|
}
|
|
@@ -632,10 +697,7 @@ export function fromJSONSchema(schema: JSONSchema.JSONSchema | boolean, params?:
|
|
|
632
697
|
return schema ? z.any() : z.never();
|
|
633
698
|
}
|
|
634
699
|
|
|
635
|
-
// Normalize input via a JSON round-trip. This guarantees the converter
|
|
636
|
-
// walks a plain, finite, JSON-valid object graph: cyclic inputs fail here,
|
|
637
|
-
// getter/Proxy-based properties are materialized into static values, and
|
|
638
|
-
// class instances collapse to plain objects.
|
|
700
|
+
// Normalize input via a JSON round-trip. This guarantees the converter walks a plain, finite, JSON-valid object graph: cyclic inputs fail here, getter/Proxy-based properties are materialized into static values, and class instances collapse to plain objects.
|
|
639
701
|
let normalized: JSONSchema.JSONSchema;
|
|
640
702
|
try {
|
|
641
703
|
normalized = JSON.parse(JSON.stringify(schema));
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type * as core from "../core/index.js";
|
|
2
|
+
import { clone, mergeDefs } from "../core/util.js";
|
|
3
|
+
import { visit } from "../core/visit.js";
|
|
4
|
+
import * as schemas from "./schemas.js";
|
|
5
|
+
|
|
6
|
+
// Co-located with the functions: a type and a value can only share a name from one module.
|
|
7
|
+
export type input<T> = core.input<T>;
|
|
8
|
+
export type output<T> = core.output<T>;
|
|
9
|
+
|
|
10
|
+
/** Appends a pipe's own checks to the side that replaces it, mirroring how `.check()` clones. */
|
|
11
|
+
function withChecks(side: core.$ZodType, checks: core.$ZodTypeDef["checks"]): core.$ZodType {
|
|
12
|
+
if (!checks?.length) return side;
|
|
13
|
+
const def = side._zod.def;
|
|
14
|
+
return clone(side, mergeDefs(def, { checks: [...(def.checks ?? []), ...checks] }), { parent: true });
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/** The out side, carrying the pipe's own checks: those run against the decoded value, which is what `out` produces. */
|
|
18
|
+
function outSide(def: core.$ZodPipeDef): core.$ZodType {
|
|
19
|
+
return withChecks(def.out, def.checks);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/** The in side. `z.preprocess` pipes a transform into a schema, and a bare transform validates nothing, so the schema it feeds is the real input side — the resolution `toJSONSchema` already makes for this case. */
|
|
23
|
+
function inSide(def: core.$ZodPipeDef): core.$ZodType {
|
|
24
|
+
return def.in._zod.traits.has("$ZodTransform") ? outSide(def) : def.in;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/** Returns a copy of the schema with every pipe replaced by its input side. A codec's checks are dropped: they constrain the decoded value the input side never produces. */
|
|
28
|
+
export function input<T extends core.$ZodType>(schema: T): schemas.ZodType<core.input<T>, core.input<T>> {
|
|
29
|
+
return visit(schema, {
|
|
30
|
+
pipe: (s) => inSide(s._zod.def),
|
|
31
|
+
// A default value belongs to the output side, so a rewritten inner type leaves it stranded. `.default()` widens the declared input type with `undefined`, and `optional` is what carries that across.
|
|
32
|
+
default: (s, rewritten) => (rewritten ? schemas.optional(s._zod.def.innerType) : s),
|
|
33
|
+
// A catch value is output-side too, but `.catch()` leaves the declared input type alone, so the inner schema stands on its own.
|
|
34
|
+
catch: (s, rewritten) => (rewritten ? s._zod.def.innerType : s),
|
|
35
|
+
}) as schemas.ZodType<core.input<T>, core.input<T>>;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/** Returns a copy of the schema with every pipe replaced by its output side, carrying over the pipe's own checks. */
|
|
39
|
+
export function output<T extends core.$ZodType>(schema: T): schemas.ZodType<core.output<T>, core.output<T>> {
|
|
40
|
+
return visit(schema, {
|
|
41
|
+
pipe: (s) => outSide(s._zod.def),
|
|
42
|
+
// A prefault value is fed through the schema, which makes it input-side, so a rewritten inner type leaves it stranded.
|
|
43
|
+
prefault: (s, rewritten) => (rewritten ? s._zod.def.innerType : s),
|
|
44
|
+
}) as schemas.ZodType<core.output<T>, core.output<T>>;
|
|
45
|
+
}
|
|
@@ -1,90 +1,20 @@
|
|
|
1
1
|
import * as core from "../core/index.js";
|
|
2
|
-
import
|
|
2
|
+
import { ZodISODate, ZodISODateTime, ZodISODuration, ZodISOTime } from "./schemas.js";
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
//////////////////////////////////////////////
|
|
6
|
-
////////// //////////
|
|
7
|
-
////////// ZodISODateTime //////////
|
|
8
|
-
////////// //////////
|
|
9
|
-
//////////////////////////////////////////////
|
|
10
|
-
//////////////////////////////////////////////
|
|
11
|
-
|
|
12
|
-
export interface ZodISODateTime extends schemas.ZodStringFormat {
|
|
13
|
-
_zod: core.$ZodISODateTimeInternals;
|
|
14
|
-
}
|
|
15
|
-
export const ZodISODateTime: core.$constructor<ZodISODateTime> = /*@__PURE__*/ core.$constructor(
|
|
16
|
-
"ZodISODateTime",
|
|
17
|
-
(inst, def) => {
|
|
18
|
-
core.$ZodISODateTime.init(inst, def);
|
|
19
|
-
schemas.ZodStringFormat.init(inst, def);
|
|
20
|
-
}
|
|
21
|
-
);
|
|
4
|
+
export { ZodISODate, ZodISODateTime, ZodISODuration, ZodISOTime } from "./schemas.js";
|
|
22
5
|
|
|
23
6
|
export function datetime(params?: string | core.$ZodISODateTimeParams): ZodISODateTime {
|
|
24
7
|
return core._isoDateTime(ZodISODateTime, params);
|
|
25
8
|
}
|
|
26
9
|
|
|
27
|
-
//////////////////////////////////////////
|
|
28
|
-
//////////////////////////////////////////
|
|
29
|
-
////////// //////////
|
|
30
|
-
////////// ZodISODate //////////
|
|
31
|
-
////////// //////////
|
|
32
|
-
//////////////////////////////////////////
|
|
33
|
-
//////////////////////////////////////////
|
|
34
|
-
|
|
35
|
-
export interface ZodISODate extends schemas.ZodStringFormat {
|
|
36
|
-
_zod: core.$ZodISODateInternals;
|
|
37
|
-
}
|
|
38
|
-
export const ZodISODate: core.$constructor<ZodISODate> = /*@__PURE__*/ core.$constructor("ZodISODate", (inst, def) => {
|
|
39
|
-
core.$ZodISODate.init(inst, def);
|
|
40
|
-
schemas.ZodStringFormat.init(inst, def);
|
|
41
|
-
});
|
|
42
|
-
|
|
43
10
|
export function date(params?: string | core.$ZodISODateParams): ZodISODate {
|
|
44
11
|
return core._isoDate(ZodISODate, params);
|
|
45
12
|
}
|
|
46
13
|
|
|
47
|
-
// ZodISOTime
|
|
48
|
-
|
|
49
|
-
//////////////////////////////////////////
|
|
50
|
-
//////////////////////////////////////////
|
|
51
|
-
////////// //////////
|
|
52
|
-
////////// ZodISOTime //////////
|
|
53
|
-
////////// //////////
|
|
54
|
-
//////////////////////////////////////////
|
|
55
|
-
//////////////////////////////////////////
|
|
56
|
-
|
|
57
|
-
export interface ZodISOTime extends schemas.ZodStringFormat {
|
|
58
|
-
_zod: core.$ZodISOTimeInternals;
|
|
59
|
-
}
|
|
60
|
-
export const ZodISOTime: core.$constructor<ZodISOTime> = /*@__PURE__*/ core.$constructor("ZodISOTime", (inst, def) => {
|
|
61
|
-
core.$ZodISOTime.init(inst, def);
|
|
62
|
-
schemas.ZodStringFormat.init(inst, def);
|
|
63
|
-
});
|
|
64
|
-
|
|
65
14
|
export function time(params?: string | core.$ZodISOTimeParams): ZodISOTime {
|
|
66
15
|
return core._isoTime(ZodISOTime, params);
|
|
67
16
|
}
|
|
68
17
|
|
|
69
|
-
//////////////////////////////////////////////
|
|
70
|
-
//////////////////////////////////////////////
|
|
71
|
-
////////// //////////
|
|
72
|
-
////////// ZodISODuration //////////
|
|
73
|
-
////////// //////////
|
|
74
|
-
//////////////////////////////////////////////
|
|
75
|
-
//////////////////////////////////////////////
|
|
76
|
-
|
|
77
|
-
export interface ZodISODuration extends schemas.ZodStringFormat {
|
|
78
|
-
_zod: core.$ZodISODurationInternals;
|
|
79
|
-
}
|
|
80
|
-
export const ZodISODuration: core.$constructor<ZodISODuration> = /*@__PURE__*/ core.$constructor(
|
|
81
|
-
"ZodISODuration",
|
|
82
|
-
(inst, def) => {
|
|
83
|
-
core.$ZodISODuration.init(inst, def);
|
|
84
|
-
schemas.ZodStringFormat.init(inst, def);
|
|
85
|
-
}
|
|
86
|
-
);
|
|
87
|
-
|
|
88
18
|
export function duration(params?: string | core.$ZodISODurationParams): ZodISODuration {
|
|
89
19
|
return core._isoDuration(ZodISODuration, params);
|
|
90
20
|
}
|
|
@@ -32,29 +32,35 @@ export const safeParseAsync: <T extends core.$ZodType>(
|
|
|
32
32
|
_ctx?: core.ParseContext<core.$ZodIssue>
|
|
33
33
|
) => Promise<ZodSafeParseResult<core.output<T>>> = /* @__PURE__ */ core._safeParseAsync(ZodRealError) as any;
|
|
34
34
|
|
|
35
|
+
export { validate, validateAsync } from "../core/index.js";
|
|
36
|
+
|
|
35
37
|
// Codec functions
|
|
36
38
|
export const encode: <T extends core.$ZodType>(
|
|
37
39
|
schema: T,
|
|
38
40
|
value: core.output<T>,
|
|
39
|
-
_ctx?: core.ParseContext<core.$ZodIssue
|
|
41
|
+
_ctx?: core.ParseContext<core.$ZodIssue>,
|
|
42
|
+
_params?: { callee?: core.util.AnyFunc; Err?: core.$ZodErrorClass }
|
|
40
43
|
) => core.input<T> = /* @__PURE__ */ core._encode(ZodRealError);
|
|
41
44
|
|
|
42
45
|
export const decode: <T extends core.$ZodType>(
|
|
43
46
|
schema: T,
|
|
44
47
|
value: core.input<T>,
|
|
45
|
-
_ctx?: core.ParseContext<core.$ZodIssue
|
|
48
|
+
_ctx?: core.ParseContext<core.$ZodIssue>,
|
|
49
|
+
_params?: { callee?: core.util.AnyFunc; Err?: core.$ZodErrorClass }
|
|
46
50
|
) => core.output<T> = /* @__PURE__ */ core._decode(ZodRealError);
|
|
47
51
|
|
|
48
52
|
export const encodeAsync: <T extends core.$ZodType>(
|
|
49
53
|
schema: T,
|
|
50
54
|
value: core.output<T>,
|
|
51
|
-
_ctx?: core.ParseContext<core.$ZodIssue
|
|
55
|
+
_ctx?: core.ParseContext<core.$ZodIssue>,
|
|
56
|
+
_params?: { callee?: core.util.AnyFunc; Err?: core.$ZodErrorClass }
|
|
52
57
|
) => Promise<core.input<T>> = /* @__PURE__ */ core._encodeAsync(ZodRealError);
|
|
53
58
|
|
|
54
59
|
export const decodeAsync: <T extends core.$ZodType>(
|
|
55
60
|
schema: T,
|
|
56
61
|
value: core.input<T>,
|
|
57
|
-
_ctx?: core.ParseContext<core.$ZodIssue
|
|
62
|
+
_ctx?: core.ParseContext<core.$ZodIssue>,
|
|
63
|
+
_params?: { callee?: core.util.AnyFunc; Err?: core.$ZodErrorClass }
|
|
58
64
|
) => Promise<core.output<T>> = /* @__PURE__ */ core._decodeAsync(ZodRealError);
|
|
59
65
|
|
|
60
66
|
export const safeEncode: <T extends core.$ZodType>(
|