@psnext/slingcli 3.1.20260904-1 → 3.3.20260914-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/node_modules/@aws-sdk/core/dist-cjs/submodules/util/index.js +5 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/util/hasOwn.js +3 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/util/index.js +1 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/util/hasOwn.d.ts +4 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/util/index.d.ts +1 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/hasOwn.d.ts +1 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/index.d.ts +1 -0
- package/node_modules/@aws-sdk/core/package.json +1 -1
- package/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-http/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-ini/package.json +9 -9
- package/node_modules/@aws-sdk/credential-provider-login/package.json +3 -3
- package/node_modules/@aws-sdk/credential-provider-node/package.json +7 -7
- package/node_modules/@aws-sdk/credential-provider-process/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/package.json +3 -3
- package/node_modules/@aws-sdk/credential-provider-sso/package.json +4 -4
- package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
- package/node_modules/@aws-sdk/middleware-websocket/package.json +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/package.json +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/{chunk-PBNSMEG7.js → chunk-BRL3MDQL.js} +10 -10
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/index.js +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/rpc-entry.js +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js +79 -32
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/docs/docs/api/Client.md +25 -8
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +3 -2
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/docs/docs/api/EventSource.md +4 -0
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/docs/docs/api/Interceptors.md +7 -3
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +7 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/api/readable.js +33 -43
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/cache/memory-cache-store.js +2 -2
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/core/connect.js +16 -2
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/core/symbols.js +3 -0
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/agent.js +7 -2
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/balanced-pool.js +7 -4
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/client-h1.js +9 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/client-h2.js +221 -12
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/client.js +76 -30
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/dispatcher-base.js +13 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/dispatcher.js +15 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/dispatcher1-wrapper.js +3 -0
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +37 -8
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/proxy-agent.js +18 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/retry-agent.js +3 -0
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/round-robin-pool.js +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +106 -22
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/handler/cache-handler.js +29 -5
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/handler/decorator-handler.js +7 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/handler/deduplication-handler.js +12 -6
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/handler/redirect-handler.js +21 -4
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/handler/retry-handler.js +155 -32
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/interceptor/cache.js +65 -9
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/interceptor/decompress.js +115 -13
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/interceptor/deduplicate.js +5 -4
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/interceptor/dns.js +7 -0
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/interceptor/dump.js +10 -23
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/mock/mock-agent.js +13 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/mock/mock-utils.js +217 -27
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/util/cache.js +43 -3
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/cookies/parse.js +150 -147
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/eventsource/eventsource-stream.js +28 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/eventsource/eventsource.js +13 -3
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/fetch/index.js +6 -0
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/fetch/request.js +2 -3
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/fetch/util.js +6 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/webidl/index.js +3 -3
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/websocket/connection.js +1 -1
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/websocket/permessage-deflate.js +5 -0
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/websocket/stream/websocketstream.js +8 -10
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/lib/web/websocket/websocket.js +22 -0
- package/node_modules/@earendil-works/pi-coding-agent/node_modules/undici/package.json +3 -3
- package/node_modules/@earendil-works/pi-coding-agent/npm-shrinkwrap.json +4 -4
- package/node_modules/@earendil-works/pi-coding-agent/package.json +1 -1
- package/node_modules/@smithy/core/dist-cjs/submodules/errors/index.js +20 -0
- package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.browser.js +11 -10
- package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.js +11 -10
- package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.browser.js +2 -0
- package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +25 -8
- package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.native.js +2 -0
- package/node_modules/@smithy/core/dist-es/submodules/errors/errors.js +18 -0
- package/node_modules/@smithy/core/dist-es/submodules/errors/index.js +1 -0
- package/node_modules/@smithy/core/dist-es/submodules/retry/service-error-classification/service-error-classification.js +11 -10
- package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.browser.js +2 -0
- package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.js +23 -8
- package/node_modules/@smithy/core/dist-types/submodules/errors/errors.d.ts +44 -0
- package/node_modules/@smithy/core/dist-types/submodules/errors/index.d.ts +1 -0
- package/node_modules/@smithy/core/dist-types/submodules/retry/service-error-classification/service-error-classification.d.ts +4 -0
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/errors/errors.d.ts +44 -0
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/errors/index.d.ts +1 -0
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/retry/service-error-classification/service-error-classification.d.ts +4 -0
- package/node_modules/@smithy/core/errors.d.ts +5 -0
- package/node_modules/@smithy/core/errors.js +5 -0
- package/node_modules/@smithy/core/package.json +11 -2
- package/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/node/buffer.d.ts +1 -0
- package/node_modules/@types/node/diagnostics_channel.d.ts +4 -4
- package/node_modules/@types/node/http.d.ts +1 -1
- package/node_modules/@types/node/package.json +3 -3
- package/node_modules/@types/node/perf_hooks.d.ts +31 -19
- package/node_modules/@types/node/quic.d.ts +6 -4
- package/node_modules/@types/node/stream/web.d.ts +20 -0
- package/node_modules/@types/node/tls.d.ts +26 -15
- package/node_modules/@types/node/vfs.d.ts +7 -6
- package/node_modules/@types/node/web-globals/streams.d.ts +4 -0
- package/node_modules/@types/node/zlib.d.ts +17 -0
- package/node_modules/hono/dist/cjs/client/client.js +4 -4
- package/node_modules/hono/dist/cjs/hono-base.js +7 -6
- package/node_modules/hono/dist/cjs/jsx/base.js +18 -1
- package/node_modules/hono/dist/cjs/jsx/components.js +25 -26
- package/node_modules/hono/dist/cjs/jsx/context.js +5 -5
- package/node_modules/hono/dist/cjs/jsx/dom/server.js +5 -1
- package/node_modules/hono/dist/cjs/jsx/intrinsic-element/components.js +2 -2
- package/node_modules/hono/dist/cjs/jsx/streaming.js +4 -5
- package/node_modules/hono/dist/client/client.js +4 -4
- package/node_modules/hono/dist/hono-base.js +7 -6
- package/node_modules/hono/dist/jsx/base.js +15 -1
- package/node_modules/hono/dist/jsx/components.js +26 -27
- package/node_modules/hono/dist/jsx/context.js +6 -6
- package/node_modules/hono/dist/jsx/dom/server.js +5 -1
- package/node_modules/hono/dist/jsx/intrinsic-element/components.js +3 -3
- package/node_modules/hono/dist/jsx/streaming.js +5 -6
- package/node_modules/hono/dist/types/context.d.ts +2 -2
- package/node_modules/hono/dist/types/jsx/base.d.ts +3 -0
- package/node_modules/hono/package.json +2 -2
- package/node_modules/jose/dist/types/index.d.ts +1 -2
- package/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +7 -11
- package/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +13 -16
- package/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +7 -11
- package/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +16 -19
- package/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +10 -16
- package/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +18 -21
- package/node_modules/jose/dist/types/jwk/embedded.d.ts +3 -1
- package/node_modules/jose/dist/types/jwk/thumbprint.d.ts +4 -6
- package/node_modules/jose/dist/types/jwks/local.d.ts +5 -4
- package/node_modules/jose/dist/types/jwks/remote.d.ts +20 -21
- package/node_modules/jose/dist/types/jws/compact/sign.d.ts +4 -4
- package/node_modules/jose/dist/types/jws/compact/verify.d.ts +8 -11
- package/node_modules/jose/dist/types/jws/flattened/sign.d.ts +5 -5
- package/node_modules/jose/dist/types/jws/flattened/verify.d.ts +8 -11
- package/node_modules/jose/dist/types/jws/general/sign.d.ts +10 -14
- package/node_modules/jose/dist/types/jws/general/verify.d.ts +11 -17
- package/node_modules/jose/dist/types/jwt/decrypt.d.ts +14 -11
- package/node_modules/jose/dist/types/jwt/encrypt.d.ts +24 -22
- package/node_modules/jose/dist/types/jwt/sign.d.ts +3 -7
- package/node_modules/jose/dist/types/jwt/unsecured.d.ts +2 -6
- package/node_modules/jose/dist/types/jwt/verify.d.ts +13 -6
- package/node_modules/jose/dist/types/key/export.d.ts +6 -6
- package/node_modules/jose/dist/types/key/generate_key_pair.d.ts +9 -14
- package/node_modules/jose/dist/types/key/generate_secret.d.ts +10 -10
- package/node_modules/jose/dist/types/key/import.d.ts +19 -18
- package/node_modules/jose/dist/types/types.d.ts +152 -247
- package/node_modules/jose/dist/types/util/base64url.d.ts +7 -7
- package/node_modules/jose/dist/types/util/decode_jwt.d.ts +6 -1
- package/node_modules/jose/dist/types/util/decode_protected_header.d.ts +4 -3
- package/node_modules/jose/dist/types/util/errors.d.ts +29 -40
- package/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +1 -2
- package/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +9 -26
- package/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +3 -3
- package/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +11 -30
- package/node_modules/jose/dist/webapi/jwe/general/decrypt.js +6 -6
- package/node_modules/jose/dist/webapi/jwe/general/encrypt.js +33 -57
- package/node_modules/jose/dist/webapi/jwk/embedded.js +3 -4
- package/node_modules/jose/dist/webapi/jwk/thumbprint.js +3 -6
- package/node_modules/jose/dist/webapi/jwks/local.js +16 -10
- package/node_modules/jose/dist/webapi/jwks/remote.js +2 -2
- package/node_modules/jose/dist/webapi/jws/compact/sign.js +2 -4
- package/node_modules/jose/dist/webapi/jws/compact/verify.js +2 -2
- package/node_modules/jose/dist/webapi/jws/flattened/sign.js +8 -15
- package/node_modules/jose/dist/webapi/jws/flattened/verify.js +4 -14
- package/node_modules/jose/dist/webapi/jws/general/sign.js +4 -11
- package/node_modules/jose/dist/webapi/jws/general/verify.js +5 -7
- package/node_modules/jose/dist/webapi/jwt/decrypt.js +2 -3
- package/node_modules/jose/dist/webapi/jwt/encrypt.js +11 -25
- package/node_modules/jose/dist/webapi/jwt/sign.js +1 -1
- package/node_modules/jose/dist/webapi/jwt/unsecured.js +1 -2
- package/node_modules/jose/dist/webapi/jwt/verify.js +4 -4
- package/node_modules/jose/dist/webapi/key/export.js +12 -16
- package/node_modules/jose/dist/webapi/key/generate_key_pair.js +4 -13
- package/node_modules/jose/dist/webapi/key/generate_secret.js +1 -1
- package/node_modules/jose/dist/webapi/key/import.js +5 -9
- package/node_modules/jose/dist/webapi/lib/asn1.js +2 -4
- package/node_modules/jose/dist/webapi/lib/buffer_utils.js +35 -0
- package/node_modules/jose/dist/webapi/lib/content_encryption.js +21 -29
- package/node_modules/jose/dist/webapi/lib/deflate.js +9 -19
- package/node_modules/jose/dist/webapi/lib/jwe_algorithms.js +0 -4
- package/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +21 -54
- package/node_modules/jose/dist/webapi/lib/jwe_encrypt.js +26 -59
- package/node_modules/jose/dist/webapi/lib/jws_sign.js +29 -43
- package/node_modules/jose/dist/webapi/lib/jws_verify.js +37 -45
- package/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +1 -1
- package/node_modules/jose/dist/webapi/lib/key.js +119 -59
- package/node_modules/jose/dist/webapi/lib/key_management.js +45 -80
- package/node_modules/jose/dist/webapi/lib/{options.js → validate.js} +64 -3
- package/node_modules/jose/dist/webapi/util/base64url.js +5 -19
- package/node_modules/jose/dist/webapi/util/decode_jwt.js +1 -1
- package/node_modules/jose/dist/webapi/util/decode_protected_header.js +1 -1
- package/node_modules/jose/package.json +1 -1
- package/node_modules/undici/lib/dispatcher/balanced-pool.js +4 -2
- package/node_modules/undici/lib/dispatcher/client-h1.js +12 -4
- package/node_modules/undici/lib/dispatcher/client-h2.js +70 -14
- package/node_modules/undici/lib/dispatcher/client.js +6 -2
- package/node_modules/undici/lib/handler/cache-handler.js +21 -5
- package/node_modules/undici/lib/handler/retry-handler.js +42 -7
- package/node_modules/undici/lib/interceptor/cache.js +20 -1
- package/node_modules/undici/lib/interceptor/decompress.js +146 -14
- package/node_modules/undici/lib/interceptor/dump.js +10 -23
- package/node_modules/undici/lib/web/eventsource/eventsource-stream.js +245 -150
- package/node_modules/undici/lib/web/websocket/connection.js +1 -1
- package/node_modules/undici/lib/web/websocket/permessage-deflate.js +5 -0
- package/node_modules/undici/lib/web/websocket/stream/websocketstream.js +8 -10
- package/node_modules/undici/package.json +1 -1
- package/node_modules/undici/types/interceptors.d.ts +2 -0
- package/node_modules/undici-types/client.d.ts +8 -3
- package/node_modules/undici-types/connector.d.ts +1 -0
- package/node_modules/undici-types/cookies.d.ts +1 -1
- package/node_modules/undici-types/dispatcher.d.ts +3 -3
- package/node_modules/undici-types/errors.d.ts +10 -0
- package/node_modules/undici-types/fetch.d.ts +5 -1
- package/node_modules/undici-types/handlers.d.ts +2 -0
- package/node_modules/undici-types/interceptors.d.ts +1 -1
- package/node_modules/undici-types/mock-interceptor.d.ts +5 -1
- package/node_modules/undici-types/package.json +1 -1
- package/node_modules/undici-types/proxy-agent.d.ts +7 -0
- package/node_modules/zod/README.md +2 -2
- package/node_modules/zod/compile.cjs +19 -0
- package/node_modules/zod/index.cjs +19 -0
- package/node_modules/zod/locales/index.cjs +19 -0
- package/node_modules/zod/mini/index.cjs +19 -0
- package/node_modules/zod/package.json +8 -7
- package/node_modules/zod/src/v3/helpers/errorUtil.ts +1 -1
- package/node_modules/zod/src/v4/classic/external.ts +2 -0
- package/node_modules/zod/src/v4/classic/from-json-schema.ts +248 -25
- package/node_modules/zod/src/v4/classic/schemas.ts +243 -168
- package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +60 -9
- package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +6 -0
- package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +2 -2
- package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +265 -0
- package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +112 -6
- package/node_modules/zod/src/v4/classic/tests/enum.test.ts +9 -0
- package/node_modules/zod/src/v4/classic/tests/error.test.ts +130 -1
- package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +157 -0
- package/node_modules/zod/src/v4/classic/tests/iban.test.ts +81 -0
- package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +40 -2
- package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +27 -7
- package/node_modules/zod/src/v4/classic/tests/issue-schema.test.ts +88 -56
- package/node_modules/zod/src/v4/classic/tests/number.test.ts +39 -0
- package/node_modules/zod/src/v4/classic/tests/object.test.ts +56 -0
- package/node_modules/zod/src/v4/classic/tests/optin-ladder.test.ts +3 -2
- package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +70 -0
- package/node_modules/zod/src/v4/classic/tests/properties.test.ts +141 -0
- package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +46 -1
- package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +19 -0
- package/node_modules/zod/src/v4/classic/tests/string.test.ts +95 -1
- package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +33 -1
- package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +234 -38
- package/node_modules/zod/src/v4/classic/tests/validate.test.ts +569 -0
- package/node_modules/zod/src/v4/core/api.ts +44 -28
- package/node_modules/zod/src/v4/core/checks.ts +62 -102
- package/node_modules/zod/src/v4/core/compile.ts +218 -93
- package/node_modules/zod/src/v4/core/core.ts +1 -3
- package/node_modules/zod/src/v4/core/doc.ts +6 -2
- package/node_modules/zod/src/v4/core/errors.ts +3 -6
- package/node_modules/zod/src/v4/core/json-schema-generator.ts +2 -2
- package/node_modules/zod/src/v4/core/json-schema-processors.ts +185 -81
- package/node_modules/zod/src/v4/core/memoizer.ts +75 -28
- package/node_modules/zod/src/v4/core/parse.ts +37 -16
- package/node_modules/zod/src/v4/core/regexes.ts +14 -4
- package/node_modules/zod/src/v4/core/schemas.ts +296 -132
- package/node_modules/zod/src/v4/core/tests/cached.test.ts +54 -0
- package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +35 -0
- package/node_modules/zod/src/v4/core/tests/compile-generative.test.ts +445 -0
- package/node_modules/zod/src/v4/core/tests/compile.test.ts +399 -2
- package/node_modules/zod/src/v4/core/tests/email-regex.test.ts +140 -0
- package/node_modules/zod/src/v4/core/tests/locales/tg.test.ts +85 -0
- package/node_modules/zod/src/v4/core/tests/polyfill-collision.test.ts +46 -0
- package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +118 -16
- package/node_modules/zod/src/v4/core/to-json-schema.ts +9 -7
- package/node_modules/zod/src/v4/core/util.ts +218 -147
- package/node_modules/zod/src/v4/core/versions.ts +2 -2
- package/node_modules/zod/src/v4/locales/ar.ts +2 -0
- package/node_modules/zod/src/v4/locales/az.ts +2 -0
- package/node_modules/zod/src/v4/locales/be.ts +2 -0
- package/node_modules/zod/src/v4/locales/bg.ts +2 -0
- package/node_modules/zod/src/v4/locales/bn.ts +2 -0
- package/node_modules/zod/src/v4/locales/ca.ts +2 -0
- package/node_modules/zod/src/v4/locales/ckb.ts +2 -0
- package/node_modules/zod/src/v4/locales/cs.ts +2 -0
- package/node_modules/zod/src/v4/locales/da.ts +2 -0
- package/node_modules/zod/src/v4/locales/de.ts +2 -0
- package/node_modules/zod/src/v4/locales/el.ts +2 -0
- package/node_modules/zod/src/v4/locales/en.ts +2 -0
- package/node_modules/zod/src/v4/locales/eo.ts +2 -0
- package/node_modules/zod/src/v4/locales/es.ts +2 -0
- package/node_modules/zod/src/v4/locales/fa.ts +2 -0
- package/node_modules/zod/src/v4/locales/fi.ts +2 -0
- package/node_modules/zod/src/v4/locales/fr-CA.ts +2 -0
- package/node_modules/zod/src/v4/locales/fr.ts +2 -0
- package/node_modules/zod/src/v4/locales/gu.ts +2 -0
- package/node_modules/zod/src/v4/locales/he.ts +2 -0
- package/node_modules/zod/src/v4/locales/hi.ts +2 -0
- package/node_modules/zod/src/v4/locales/hr.ts +2 -0
- package/node_modules/zod/src/v4/locales/hu.ts +2 -0
- package/node_modules/zod/src/v4/locales/hy.ts +2 -0
- package/node_modules/zod/src/v4/locales/id.ts +2 -0
- package/node_modules/zod/src/v4/locales/index.ts +1 -0
- package/node_modules/zod/src/v4/locales/is.ts +2 -0
- package/node_modules/zod/src/v4/locales/it.ts +2 -0
- package/node_modules/zod/src/v4/locales/ja.ts +2 -0
- package/node_modules/zod/src/v4/locales/ka.ts +2 -0
- package/node_modules/zod/src/v4/locales/km.ts +2 -0
- package/node_modules/zod/src/v4/locales/kn.ts +2 -0
- package/node_modules/zod/src/v4/locales/ko.ts +2 -0
- package/node_modules/zod/src/v4/locales/lt.ts +2 -0
- package/node_modules/zod/src/v4/locales/mk.ts +2 -0
- package/node_modules/zod/src/v4/locales/ms.ts +2 -0
- package/node_modules/zod/src/v4/locales/ne.ts +2 -0
- package/node_modules/zod/src/v4/locales/nl.ts +2 -0
- package/node_modules/zod/src/v4/locales/nn.ts +2 -0
- package/node_modules/zod/src/v4/locales/no.ts +2 -0
- package/node_modules/zod/src/v4/locales/ota.ts +2 -0
- package/node_modules/zod/src/v4/locales/pl.ts +2 -0
- package/node_modules/zod/src/v4/locales/ps.ts +2 -0
- package/node_modules/zod/src/v4/locales/pt-BR.ts +2 -0
- package/node_modules/zod/src/v4/locales/pt.ts +2 -0
- package/node_modules/zod/src/v4/locales/ro.ts +2 -0
- package/node_modules/zod/src/v4/locales/ru.ts +2 -0
- package/node_modules/zod/src/v4/locales/sk.ts +2 -0
- package/node_modules/zod/src/v4/locales/sl.ts +2 -0
- package/node_modules/zod/src/v4/locales/sv.ts +2 -0
- package/node_modules/zod/src/v4/locales/ta.ts +2 -0
- package/node_modules/zod/src/v4/locales/tg.ts +135 -0
- package/node_modules/zod/src/v4/locales/th.ts +2 -0
- package/node_modules/zod/src/v4/locales/tk.ts +2 -0
- package/node_modules/zod/src/v4/locales/tr.ts +2 -0
- package/node_modules/zod/src/v4/locales/uk.ts +2 -0
- package/node_modules/zod/src/v4/locales/ur.ts +2 -0
- package/node_modules/zod/src/v4/locales/uz.ts +2 -0
- package/node_modules/zod/src/v4/locales/vi.ts +2 -0
- package/node_modules/zod/src/v4/locales/yo.ts +2 -0
- package/node_modules/zod/src/v4/locales/zh-CN.ts +2 -0
- package/node_modules/zod/src/v4/locales/zh-TW.ts +2 -0
- package/node_modules/zod/src/v4/mini/external.ts +2 -0
- package/node_modules/zod/src/v4/mini/schemas.ts +32 -7
- package/node_modules/zod/src/v4/mini/tests/checks.test.ts +1 -1
- package/node_modules/zod/src/v4/mini/tests/computed.test.ts +11 -17
- package/node_modules/zod/src/v4/mini/tests/index.test.ts +86 -0
- package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +16 -0
- package/node_modules/zod/src/v4/mini/tests/string.test.ts +23 -0
- package/node_modules/zod/v3/ZodError.cjs +19 -0
- package/node_modules/zod/v3/errors.cjs +19 -0
- package/node_modules/zod/v3/external.cjs +19 -0
- package/node_modules/zod/v3/helpers/enumUtil.cjs +19 -0
- package/node_modules/zod/v3/helpers/errorUtil.cjs +20 -1
- package/node_modules/zod/v3/helpers/errorUtil.js +1 -1
- package/node_modules/zod/v3/helpers/parseUtil.cjs +19 -0
- package/node_modules/zod/v3/helpers/partialUtil.cjs +19 -0
- package/node_modules/zod/v3/helpers/typeAliases.cjs +19 -0
- package/node_modules/zod/v3/helpers/util.cjs +19 -0
- package/node_modules/zod/v3/index.cjs +19 -0
- package/node_modules/zod/v3/standard-schema.cjs +19 -0
- package/node_modules/zod/v3/types.cjs +19 -0
- package/node_modules/zod/v4/classic/checks.cjs +19 -0
- package/node_modules/zod/v4/classic/coerce.cjs +19 -0
- package/node_modules/zod/v4/classic/compat.cjs +19 -0
- package/node_modules/zod/v4/classic/deep-partial.cjs +19 -0
- package/node_modules/zod/v4/classic/errors.cjs +19 -0
- package/node_modules/zod/v4/classic/external.cjs +22 -1
- package/node_modules/zod/v4/classic/external.d.cts +1 -1
- package/node_modules/zod/v4/classic/external.d.ts +1 -1
- package/node_modules/zod/v4/classic/external.js +1 -1
- package/node_modules/zod/v4/classic/from-json-schema.cjs +264 -24
- package/node_modules/zod/v4/classic/from-json-schema.js +245 -24
- package/node_modules/zod/v4/classic/in-out.cjs +19 -0
- package/node_modules/zod/v4/classic/index.cjs +19 -0
- package/node_modules/zod/v4/classic/iso.cjs +19 -0
- package/node_modules/zod/v4/classic/parse.cjs +19 -0
- package/node_modules/zod/v4/classic/schemas.cjs +100 -35
- package/node_modules/zod/v4/classic/schemas.d.cts +15 -1
- package/node_modules/zod/v4/classic/schemas.d.ts +15 -1
- package/node_modules/zod/v4/classic/schemas.js +77 -33
- package/node_modules/zod/v4/core/api.cjs +45 -22
- package/node_modules/zod/v4/core/api.d.cts +12 -6
- package/node_modules/zod/v4/core/api.d.ts +12 -6
- package/node_modules/zod/v4/core/api.js +25 -22
- package/node_modules/zod/v4/core/checks.cjs +51 -97
- package/node_modules/zod/v4/core/checks.d.cts +17 -1
- package/node_modules/zod/v4/core/checks.d.ts +17 -1
- package/node_modules/zod/v4/core/checks.js +31 -96
- package/node_modules/zod/v4/core/compile.cjs +173 -78
- package/node_modules/zod/v4/core/compile.d.cts +18 -4
- package/node_modules/zod/v4/core/compile.d.ts +18 -4
- package/node_modules/zod/v4/core/compile.js +154 -79
- package/node_modules/zod/v4/core/core.cjs +20 -1
- package/node_modules/zod/v4/core/core.js +1 -1
- package/node_modules/zod/v4/core/doc.cjs +26 -2
- package/node_modules/zod/v4/core/doc.js +7 -2
- package/node_modules/zod/v4/core/errors.cjs +21 -5
- package/node_modules/zod/v4/core/errors.js +2 -5
- package/node_modules/zod/v4/core/index.cjs +19 -0
- package/node_modules/zod/v4/core/json-schema-generator.cjs +20 -1
- package/node_modules/zod/v4/core/json-schema-generator.js +2 -2
- package/node_modules/zod/v4/core/json-schema-processors.cjs +188 -72
- package/node_modules/zod/v4/core/json-schema-processors.d.cts +16 -0
- package/node_modules/zod/v4/core/json-schema-processors.d.ts +16 -0
- package/node_modules/zod/v4/core/json-schema-processors.js +170 -74
- package/node_modules/zod/v4/core/json-schema.cjs +19 -0
- package/node_modules/zod/v4/core/memoizer.cjs +111 -23
- package/node_modules/zod/v4/core/memoizer.js +69 -23
- package/node_modules/zod/v4/core/parse.cjs +56 -16
- package/node_modules/zod/v4/core/parse.js +37 -16
- package/node_modules/zod/v4/core/regexes.cjs +31 -6
- package/node_modules/zod/v4/core/regexes.d.cts +3 -0
- package/node_modules/zod/v4/core/regexes.d.ts +3 -0
- package/node_modules/zod/v4/core/regexes.js +10 -4
- package/node_modules/zod/v4/core/registries.cjs +19 -0
- package/node_modules/zod/v4/core/schemas.cjs +302 -114
- package/node_modules/zod/v4/core/schemas.d.cts +28 -8
- package/node_modules/zod/v4/core/schemas.d.ts +28 -8
- package/node_modules/zod/v4/core/schemas.js +279 -113
- package/node_modules/zod/v4/core/standard-schema.cjs +19 -0
- package/node_modules/zod/v4/core/to-json-schema.cjs +28 -7
- package/node_modules/zod/v4/core/to-json-schema.d.cts +4 -3
- package/node_modules/zod/v4/core/to-json-schema.d.ts +4 -3
- package/node_modules/zod/v4/core/to-json-schema.js +7 -6
- package/node_modules/zod/v4/core/util.cjs +177 -143
- package/node_modules/zod/v4/core/util.d.cts +25 -4
- package/node_modules/zod/v4/core/util.d.ts +25 -4
- package/node_modules/zod/v4/core/util.js +156 -143
- package/node_modules/zod/v4/core/versions.cjs +21 -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 +19 -0
- package/node_modules/zod/v4/index.cjs +19 -0
- package/node_modules/zod/v4/locales/ar.cjs +2 -0
- package/node_modules/zod/v4/locales/ar.js +2 -0
- package/node_modules/zod/v4/locales/az.cjs +2 -0
- package/node_modules/zod/v4/locales/az.js +2 -0
- package/node_modules/zod/v4/locales/be.cjs +2 -0
- package/node_modules/zod/v4/locales/be.js +2 -0
- package/node_modules/zod/v4/locales/bg.cjs +2 -0
- package/node_modules/zod/v4/locales/bg.js +2 -0
- package/node_modules/zod/v4/locales/bn.cjs +2 -0
- package/node_modules/zod/v4/locales/bn.js +2 -0
- package/node_modules/zod/v4/locales/ca.cjs +2 -0
- package/node_modules/zod/v4/locales/ca.js +2 -0
- package/node_modules/zod/v4/locales/ckb.cjs +2 -0
- package/node_modules/zod/v4/locales/ckb.js +2 -0
- package/node_modules/zod/v4/locales/cs.cjs +2 -0
- package/node_modules/zod/v4/locales/cs.js +2 -0
- package/node_modules/zod/v4/locales/da.cjs +2 -0
- package/node_modules/zod/v4/locales/da.js +2 -0
- package/node_modules/zod/v4/locales/de.cjs +2 -0
- package/node_modules/zod/v4/locales/de.js +2 -0
- package/node_modules/zod/v4/locales/el.cjs +2 -0
- package/node_modules/zod/v4/locales/el.js +2 -0
- package/node_modules/zod/v4/locales/en.cjs +2 -0
- package/node_modules/zod/v4/locales/en.js +2 -0
- package/node_modules/zod/v4/locales/eo.cjs +2 -0
- package/node_modules/zod/v4/locales/eo.js +2 -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 +2 -0
- package/node_modules/zod/v4/locales/fa.js +2 -0
- package/node_modules/zod/v4/locales/fi.cjs +2 -0
- package/node_modules/zod/v4/locales/fi.js +2 -0
- package/node_modules/zod/v4/locales/fr-CA.cjs +2 -0
- package/node_modules/zod/v4/locales/fr-CA.js +2 -0
- package/node_modules/zod/v4/locales/fr.cjs +2 -0
- package/node_modules/zod/v4/locales/fr.js +2 -0
- package/node_modules/zod/v4/locales/gu.cjs +2 -0
- package/node_modules/zod/v4/locales/gu.js +2 -0
- package/node_modules/zod/v4/locales/he.cjs +2 -0
- package/node_modules/zod/v4/locales/he.js +2 -0
- package/node_modules/zod/v4/locales/hi.cjs +2 -0
- package/node_modules/zod/v4/locales/hi.js +2 -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 +2 -0
- package/node_modules/zod/v4/locales/hu.js +2 -0
- package/node_modules/zod/v4/locales/hy.cjs +2 -0
- package/node_modules/zod/v4/locales/hy.js +2 -0
- package/node_modules/zod/v4/locales/id.cjs +2 -0
- package/node_modules/zod/v4/locales/id.js +2 -0
- package/node_modules/zod/v4/locales/index.cjs +22 -1
- package/node_modules/zod/v4/locales/index.d.cts +1 -0
- package/node_modules/zod/v4/locales/index.d.ts +1 -0
- package/node_modules/zod/v4/locales/index.js +1 -0
- package/node_modules/zod/v4/locales/is.cjs +2 -0
- package/node_modules/zod/v4/locales/is.js +2 -0
- package/node_modules/zod/v4/locales/it.cjs +2 -0
- package/node_modules/zod/v4/locales/it.js +2 -0
- package/node_modules/zod/v4/locales/ja.cjs +2 -0
- package/node_modules/zod/v4/locales/ja.js +2 -0
- package/node_modules/zod/v4/locales/ka.cjs +2 -0
- package/node_modules/zod/v4/locales/ka.js +2 -0
- package/node_modules/zod/v4/locales/km.cjs +2 -0
- package/node_modules/zod/v4/locales/km.js +2 -0
- package/node_modules/zod/v4/locales/kn.cjs +2 -0
- package/node_modules/zod/v4/locales/kn.js +2 -0
- package/node_modules/zod/v4/locales/ko.cjs +2 -0
- package/node_modules/zod/v4/locales/ko.js +2 -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 +2 -0
- package/node_modules/zod/v4/locales/mk.js +2 -0
- package/node_modules/zod/v4/locales/ms.cjs +2 -0
- package/node_modules/zod/v4/locales/ms.js +2 -0
- package/node_modules/zod/v4/locales/ne.cjs +2 -0
- package/node_modules/zod/v4/locales/ne.js +2 -0
- package/node_modules/zod/v4/locales/nl.cjs +2 -0
- package/node_modules/zod/v4/locales/nl.js +2 -0
- package/node_modules/zod/v4/locales/nn.cjs +2 -0
- package/node_modules/zod/v4/locales/nn.js +2 -0
- package/node_modules/zod/v4/locales/no.cjs +2 -0
- package/node_modules/zod/v4/locales/no.js +2 -0
- package/node_modules/zod/v4/locales/ota.cjs +2 -0
- package/node_modules/zod/v4/locales/ota.js +2 -0
- package/node_modules/zod/v4/locales/pl.cjs +2 -0
- package/node_modules/zod/v4/locales/pl.js +2 -0
- package/node_modules/zod/v4/locales/ps.cjs +2 -0
- package/node_modules/zod/v4/locales/ps.js +2 -0
- package/node_modules/zod/v4/locales/pt-BR.cjs +2 -0
- package/node_modules/zod/v4/locales/pt-BR.js +2 -0
- package/node_modules/zod/v4/locales/pt.cjs +2 -0
- package/node_modules/zod/v4/locales/pt.js +2 -0
- package/node_modules/zod/v4/locales/ro.cjs +2 -0
- package/node_modules/zod/v4/locales/ro.js +2 -0
- package/node_modules/zod/v4/locales/ru.cjs +2 -0
- package/node_modules/zod/v4/locales/ru.js +2 -0
- package/node_modules/zod/v4/locales/sk.cjs +2 -0
- package/node_modules/zod/v4/locales/sk.js +2 -0
- package/node_modules/zod/v4/locales/sl.cjs +2 -0
- package/node_modules/zod/v4/locales/sl.js +2 -0
- package/node_modules/zod/v4/locales/sv.cjs +2 -0
- package/node_modules/zod/v4/locales/sv.js +2 -0
- package/node_modules/zod/v4/locales/ta.cjs +2 -0
- package/node_modules/zod/v4/locales/ta.js +2 -0
- package/node_modules/zod/v4/locales/tg.cjs +144 -0
- package/node_modules/zod/v4/locales/tg.d.cts +5 -0
- package/node_modules/zod/v4/locales/tg.d.ts +4 -0
- package/node_modules/zod/v4/locales/tg.js +117 -0
- package/node_modules/zod/v4/locales/th.cjs +2 -0
- package/node_modules/zod/v4/locales/th.js +2 -0
- package/node_modules/zod/v4/locales/tk.cjs +2 -0
- package/node_modules/zod/v4/locales/tk.js +2 -0
- package/node_modules/zod/v4/locales/tr.cjs +2 -0
- package/node_modules/zod/v4/locales/tr.js +2 -0
- package/node_modules/zod/v4/locales/uk.cjs +2 -0
- package/node_modules/zod/v4/locales/uk.js +2 -0
- package/node_modules/zod/v4/locales/ur.cjs +2 -0
- package/node_modules/zod/v4/locales/ur.js +2 -0
- package/node_modules/zod/v4/locales/uz.cjs +2 -0
- package/node_modules/zod/v4/locales/uz.js +2 -0
- package/node_modules/zod/v4/locales/vi.cjs +2 -0
- package/node_modules/zod/v4/locales/vi.js +2 -0
- package/node_modules/zod/v4/locales/yo.cjs +2 -0
- package/node_modules/zod/v4/locales/yo.js +2 -0
- package/node_modules/zod/v4/locales/zh-CN.cjs +2 -0
- package/node_modules/zod/v4/locales/zh-CN.js +2 -0
- package/node_modules/zod/v4/locales/zh-TW.cjs +2 -0
- package/node_modules/zod/v4/locales/zh-TW.js +2 -0
- package/node_modules/zod/v4/mini/checks.cjs +19 -0
- package/node_modules/zod/v4/mini/coerce.cjs +19 -0
- package/node_modules/zod/v4/mini/deep-partial.cjs +19 -0
- package/node_modules/zod/v4/mini/external.cjs +22 -1
- package/node_modules/zod/v4/mini/external.d.cts +1 -1
- package/node_modules/zod/v4/mini/external.d.ts +1 -1
- package/node_modules/zod/v4/mini/external.js +1 -1
- package/node_modules/zod/v4/mini/in-out.cjs +19 -0
- package/node_modules/zod/v4/mini/index.cjs +19 -0
- package/node_modules/zod/v4/mini/iso.cjs +19 -0
- package/node_modules/zod/v4/mini/parse.cjs +19 -0
- package/node_modules/zod/v4/mini/schemas.cjs +44 -8
- package/node_modules/zod/v4/mini/schemas.d.cts +6 -1
- package/node_modules/zod/v4/mini/schemas.d.ts +6 -1
- package/node_modules/zod/v4/mini/schemas.js +21 -6
- package/node_modules/zod/v4-mini/index.cjs +19 -0
- package/package.json +2 -2
- package/slingshot/index.js +201 -198
- package/node_modules/jose/dist/webapi/lib/base64.js +0 -20
- package/node_modules/jose/dist/webapi/lib/crypto_key.js +0 -27
- package/node_modules/jose/dist/webapi/lib/helpers.js +0 -45
- package/node_modules/jose/dist/webapi/lib/invalid_key_input.js +0 -12
- package/node_modules/jose/dist/webapi/lib/is_key_like.js +0 -19
- package/node_modules/jose/dist/webapi/lib/jwk_metadata.js +0 -19
- package/node_modules/jose/dist/webapi/lib/jwk_to_key.js +0 -10
- package/node_modules/jose/dist/webapi/lib/key_options.js +0 -8
- package/node_modules/jose/dist/webapi/lib/signing.js +0 -22
- package/node_modules/jose/dist/webapi/lib/type_checks.js +0 -30
|
@@ -1,6 +1,100 @@
|
|
|
1
1
|
import * as regexes from "./regexes.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { base64Charset, base64urlCharset } from "./schemas.js";
|
|
3
|
+
import { extractDefs, finalize, handleUnrepresentable, initializeContext, processSchema, } from "./to-json-schema.js";
|
|
4
|
+
import { BIGINT_FORMAT_RANGES, NUMBER_FORMAT_RANGES, assignProp, getEnumValues } from "./util.js";
|
|
5
|
+
const narrowMin = (agg, key, value) => {
|
|
6
|
+
if (agg[key] === undefined || value > agg[key])
|
|
7
|
+
agg[key] = value;
|
|
8
|
+
};
|
|
9
|
+
const narrowMax = (agg, key, value) => {
|
|
10
|
+
if (agg[key] === undefined || value < agg[key])
|
|
11
|
+
agg[key] = value;
|
|
12
|
+
};
|
|
13
|
+
const narrowBoth = (agg, value) => {
|
|
14
|
+
narrowMin(agg, "minimum", value);
|
|
15
|
+
narrowMax(agg, "maximum", value);
|
|
16
|
+
};
|
|
17
|
+
const addDivisor = (agg, value) => {
|
|
18
|
+
agg.multipleOf ?? (agg.multipleOf = []);
|
|
19
|
+
if (!agg.multipleOf.includes(value))
|
|
20
|
+
agg.multipleOf.push(value);
|
|
21
|
+
};
|
|
22
|
+
const addPattern = (agg, pattern) => {
|
|
23
|
+
agg.patterns ?? (agg.patterns = new Set());
|
|
24
|
+
agg.patterns.add(pattern);
|
|
25
|
+
};
|
|
26
|
+
const intersectMime = (agg, mime) => {
|
|
27
|
+
agg.mime = agg.mime ? agg.mime.filter((m) => mime.includes(m)) : [...mime];
|
|
28
|
+
};
|
|
29
|
+
// last-wins, matching the bag's historical write order; the flag keeps an integer format from being lost to a later float one
|
|
30
|
+
const setFormat = (agg, format) => {
|
|
31
|
+
agg.format = format;
|
|
32
|
+
if (format.includes("int"))
|
|
33
|
+
agg.isInt = true;
|
|
34
|
+
};
|
|
35
|
+
const minContributor = (agg, def) => narrowMin(agg, "minimum", def.minimum);
|
|
36
|
+
const maxContributor = (agg, def) => narrowMax(agg, "maximum", def.maximum);
|
|
37
|
+
const formatContributor = (ranges) => (agg, def) => {
|
|
38
|
+
setFormat(agg, def.format);
|
|
39
|
+
const [minimum, maximum] = ranges[def.format];
|
|
40
|
+
narrowMin(agg, "minimum", minimum);
|
|
41
|
+
narrowMax(agg, "maximum", maximum);
|
|
42
|
+
};
|
|
43
|
+
const contributors = {
|
|
44
|
+
greater_than: (agg, def) => narrowMin(agg, def.inclusive ? "minimum" : "exclusiveMinimum", def.value),
|
|
45
|
+
less_than: (agg, def) => narrowMax(agg, def.inclusive ? "maximum" : "exclusiveMaximum", def.value),
|
|
46
|
+
multiple_of: (agg, def) => addDivisor(agg, def.value),
|
|
47
|
+
number_format: formatContributor(NUMBER_FORMAT_RANGES),
|
|
48
|
+
bigint_format: formatContributor(BIGINT_FORMAT_RANGES),
|
|
49
|
+
min_length: minContributor,
|
|
50
|
+
max_length: maxContributor,
|
|
51
|
+
length_equals: (agg, def) => narrowBoth(agg, def.length),
|
|
52
|
+
min_size: minContributor,
|
|
53
|
+
max_size: maxContributor,
|
|
54
|
+
size_equals: (agg, def) => narrowBoth(agg, def.size),
|
|
55
|
+
string_format: (agg, def) => {
|
|
56
|
+
setFormat(agg, def.format);
|
|
57
|
+
if (def.pattern)
|
|
58
|
+
addPattern(agg, def.pattern);
|
|
59
|
+
if (def.format === "base64" || def.format === "base64url")
|
|
60
|
+
agg.contentEncoding = def.format;
|
|
61
|
+
if (def.local || def.precision === -1)
|
|
62
|
+
agg.laxFormat = true;
|
|
63
|
+
},
|
|
64
|
+
mime_type: (agg, def) => intersectMime(agg, def.mime),
|
|
65
|
+
};
|
|
66
|
+
export function aggregateChecks(schema) {
|
|
67
|
+
const agg = {};
|
|
68
|
+
const def = schema._zod.def;
|
|
69
|
+
// a format schema is its own first check, same rule as $ZodType init
|
|
70
|
+
const list = schema._zod.traits.has("$ZodCheck")
|
|
71
|
+
? [schema, ...(def.checks ?? [])]
|
|
72
|
+
: (def.checks ?? []);
|
|
73
|
+
for (const ch of list)
|
|
74
|
+
contributors[ch._zod.def.check]?.(agg, ch._zod.def);
|
|
75
|
+
// reconcile with the bag so third-party onattach contributions still land; first-party residue is never tighter than the fold, so merging it back is idempotent for one and additive for the other
|
|
76
|
+
const bag = schema._zod.bag;
|
|
77
|
+
if (bag.minimum !== undefined)
|
|
78
|
+
narrowMin(agg, "minimum", bag.minimum);
|
|
79
|
+
if (bag.exclusiveMinimum !== undefined)
|
|
80
|
+
narrowMin(agg, "exclusiveMinimum", bag.exclusiveMinimum);
|
|
81
|
+
if (bag.maximum !== undefined)
|
|
82
|
+
narrowMax(agg, "maximum", bag.maximum);
|
|
83
|
+
if (bag.exclusiveMaximum !== undefined)
|
|
84
|
+
narrowMax(agg, "exclusiveMaximum", bag.exclusiveMaximum);
|
|
85
|
+
if (bag.multipleOf !== undefined)
|
|
86
|
+
addDivisor(agg, bag.multipleOf);
|
|
87
|
+
if (bag.format !== undefined) {
|
|
88
|
+
agg.format ?? (agg.format = bag.format);
|
|
89
|
+
if (bag.format.includes("int"))
|
|
90
|
+
agg.isInt = true;
|
|
91
|
+
}
|
|
92
|
+
if (bag.mime)
|
|
93
|
+
intersectMime(agg, bag.mime);
|
|
94
|
+
for (const pattern of bag.patterns ?? [])
|
|
95
|
+
addPattern(agg, pattern);
|
|
96
|
+
return agg;
|
|
97
|
+
}
|
|
4
98
|
const formatMap = {
|
|
5
99
|
guid: "uuid",
|
|
6
100
|
url: "uri",
|
|
@@ -9,11 +103,16 @@ const formatMap = {
|
|
|
9
103
|
regex: "", // do not set
|
|
10
104
|
};
|
|
11
105
|
// ==================== SIMPLE TYPE PROCESSORS ====================
|
|
106
|
+
// the runtime patterns are lax so parse paths never overflow the regex stack; the emitted schema swaps in the exact block forms, which zod itself never executes
|
|
107
|
+
const exactPatterns = new Map([
|
|
108
|
+
[base64Charset, regexes.base64],
|
|
109
|
+
[base64urlCharset, regexes.base64url],
|
|
110
|
+
]);
|
|
111
|
+
const exactPattern = (p) => exactPatterns.get(p) ?? p;
|
|
12
112
|
export const stringProcessor = (schema, ctx, _json, _params) => {
|
|
13
113
|
const json = _json;
|
|
14
114
|
json.type = "string";
|
|
15
|
-
const { minimum, maximum, format, patterns, contentEncoding, laxFormat } = schema
|
|
16
|
-
.bag;
|
|
115
|
+
const { minimum, maximum, format, patterns, contentEncoding, laxFormat } = aggregateChecks(schema);
|
|
17
116
|
if (typeof minimum === "number")
|
|
18
117
|
json.minLength = minimum;
|
|
19
118
|
if (typeof maximum === "number")
|
|
@@ -31,7 +130,7 @@ export const stringProcessor = (schema, ctx, _json, _params) => {
|
|
|
31
130
|
if (contentEncoding)
|
|
32
131
|
json.contentEncoding = contentEncoding;
|
|
33
132
|
if (patterns && patterns.size > 0) {
|
|
34
|
-
const patternList = [...patterns];
|
|
133
|
+
const patternList = [...patterns].map(exactPattern);
|
|
35
134
|
if (patternList.length === 1)
|
|
36
135
|
json.pattern = patternList[0].source;
|
|
37
136
|
else if (patternList.length > 1) {
|
|
@@ -48,11 +147,8 @@ export const stringProcessor = (schema, ctx, _json, _params) => {
|
|
|
48
147
|
};
|
|
49
148
|
export const numberProcessor = (schema, ctx, _json, params) => {
|
|
50
149
|
const json = _json;
|
|
51
|
-
const { minimum, maximum,
|
|
52
|
-
|
|
53
|
-
json.type = "integer";
|
|
54
|
-
else
|
|
55
|
-
json.type = "number";
|
|
150
|
+
const { minimum, maximum, multipleOf, exclusiveMaximum, exclusiveMinimum, isInt } = aggregateChecks(schema);
|
|
151
|
+
json.type = isInt ? "integer" : "number";
|
|
56
152
|
// when both minimum and exclusiveMinimum exist, pick the more restrictive one
|
|
57
153
|
const exMin = typeof exclusiveMinimum === "number" && exclusiveMinimum >= (minimum ?? Number.NEGATIVE_INFINITY);
|
|
58
154
|
const exMax = typeof exclusiveMaximum === "number" && exclusiveMaximum <= (maximum ?? Number.POSITIVE_INFINITY);
|
|
@@ -81,12 +177,21 @@ export const numberProcessor = (schema, ctx, _json, params) => {
|
|
|
81
177
|
else if (typeof maximum === "number") {
|
|
82
178
|
json.maximum = maximum;
|
|
83
179
|
}
|
|
84
|
-
if (
|
|
180
|
+
if (multipleOf) {
|
|
85
181
|
// JSON Schema requires a divisor strictly greater than zero, and a non-finite one does not survive JSON at all. A negative divisor accepts exactly what its absolute value accepts, so it still maps; zero, NaN and Infinity have no keyword form.
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
182
|
+
const divisors = new Set();
|
|
183
|
+
for (const divisor of multipleOf) {
|
|
184
|
+
if (Number.isFinite(divisor) && divisor !== 0)
|
|
185
|
+
divisors.add(Math.abs(divisor));
|
|
186
|
+
else
|
|
187
|
+
handleUnrepresentable(schema, ctx, json, params, `A multipleOf divisor of ${divisor} cannot be represented in JSON Schema`);
|
|
188
|
+
}
|
|
189
|
+
// chained divisors are a conjunction the keyword cannot carry alone, so extras ride an allOf, same as stacked patterns
|
|
190
|
+
const [first, ...rest] = divisors;
|
|
191
|
+
if (first !== undefined)
|
|
192
|
+
json.multipleOf = first;
|
|
193
|
+
if (rest.length)
|
|
194
|
+
json.allOf = [...(json.allOf ?? []), ...rest.map((m) => ({ multipleOf: m }))];
|
|
90
195
|
}
|
|
91
196
|
};
|
|
92
197
|
export const booleanProcessor = (_schema, _ctx, json, _params) => {
|
|
@@ -203,29 +308,24 @@ export const templateLiteralProcessor = (schema, _ctx, json, _params) => {
|
|
|
203
308
|
};
|
|
204
309
|
export const fileProcessor = (schema, _ctx, json, _params) => {
|
|
205
310
|
const _json = json;
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
};
|
|
211
|
-
const { minimum, maximum, mime } = schema._zod.bag;
|
|
311
|
+
_json.type = "string";
|
|
312
|
+
_json.format = "binary";
|
|
313
|
+
_json.contentEncoding = "binary";
|
|
314
|
+
const { minimum, maximum, mime } = aggregateChecks(schema);
|
|
212
315
|
if (minimum !== undefined)
|
|
213
|
-
|
|
316
|
+
_json.minLength = minimum;
|
|
214
317
|
if (maximum !== undefined)
|
|
215
|
-
|
|
216
|
-
if (mime)
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
else {
|
|
227
|
-
Object.assign(_json, file);
|
|
228
|
-
}
|
|
318
|
+
_json.maxLength = maximum;
|
|
319
|
+
if (!mime)
|
|
320
|
+
return;
|
|
321
|
+
// an empty intersection means the mime checks share no value, so nothing passes at runtime; `anyOf` must be non-empty, so the false schema is `not: {}`
|
|
322
|
+
if (mime.length === 0)
|
|
323
|
+
_json.not = {};
|
|
324
|
+
else if (mime.length === 1)
|
|
325
|
+
_json.contentMediaType = mime[0];
|
|
326
|
+
// only contentMediaType differs, so the shared props stay at the root
|
|
327
|
+
else
|
|
328
|
+
_json.anyOf = mime.map((m) => ({ contentMediaType: m }));
|
|
229
329
|
};
|
|
230
330
|
export const successProcessor = (_schema, _ctx, json, _params) => {
|
|
231
331
|
json.type = "boolean";
|
|
@@ -249,13 +349,13 @@ export const setProcessor = (schema, ctx, json, params) => {
|
|
|
249
349
|
export const arrayProcessor = (schema, ctx, _json, params) => {
|
|
250
350
|
const json = _json;
|
|
251
351
|
const def = schema._zod.def;
|
|
252
|
-
const { minimum, maximum } = schema
|
|
352
|
+
const { minimum, maximum } = aggregateChecks(schema);
|
|
253
353
|
if (typeof minimum === "number")
|
|
254
354
|
json.minItems = minimum;
|
|
255
355
|
if (typeof maximum === "number")
|
|
256
356
|
json.maxItems = maximum;
|
|
257
357
|
json.type = "array";
|
|
258
|
-
json.items =
|
|
358
|
+
json.items = processSchema(def.element, ctx, {
|
|
259
359
|
...params,
|
|
260
360
|
path: [...params.path, "items"],
|
|
261
361
|
});
|
|
@@ -289,24 +389,21 @@ export const objectProcessor = (schema, ctx, _json, params) => {
|
|
|
289
389
|
json.properties = {};
|
|
290
390
|
for (const key in shape) {
|
|
291
391
|
// assignProp so a __proto__ key becomes an own property instead of hitting the inherited setter on the plain {} we build into
|
|
292
|
-
assignProp(json.properties, key,
|
|
392
|
+
assignProp(json.properties, key, processSchema(shape[key], ctx, {
|
|
293
393
|
...params,
|
|
294
394
|
path: [...params.path, "properties", key],
|
|
295
395
|
}));
|
|
296
396
|
}
|
|
297
397
|
// required keys
|
|
298
|
-
const
|
|
299
|
-
const
|
|
398
|
+
const requiredKeys = [];
|
|
399
|
+
for (const key of Object.keys(shape)) {
|
|
300
400
|
const field = def.shape[key];
|
|
301
|
-
if (ctx.io === "input") {
|
|
302
|
-
|
|
401
|
+
if (ctx.io === "input" ? inputOptin(field) === undefined : field._zod.optout === undefined) {
|
|
402
|
+
requiredKeys.push(key);
|
|
303
403
|
}
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
}));
|
|
308
|
-
if (requiredKeys.size > 0) {
|
|
309
|
-
json.required = Array.from(requiredKeys);
|
|
404
|
+
}
|
|
405
|
+
if (requiredKeys.length > 0) {
|
|
406
|
+
json.required = requiredKeys;
|
|
310
407
|
}
|
|
311
408
|
// catchall
|
|
312
409
|
if (def.catchall?._zod.def.type === "never") {
|
|
@@ -319,7 +416,7 @@ export const objectProcessor = (schema, ctx, _json, params) => {
|
|
|
319
416
|
json.additionalProperties = false;
|
|
320
417
|
}
|
|
321
418
|
else if (def.catchall) {
|
|
322
|
-
json.additionalProperties =
|
|
419
|
+
json.additionalProperties = processSchema(def.catchall, ctx, {
|
|
323
420
|
...params,
|
|
324
421
|
path: [...params.path, "additionalProperties"],
|
|
325
422
|
});
|
|
@@ -329,7 +426,7 @@ export const unionProcessor = (schema, ctx, json, params) => {
|
|
|
329
426
|
const def = schema._zod.def;
|
|
330
427
|
// Exclusive unions (inclusive === false) use oneOf (exactly one match) instead of anyOf (one or more matches). This includes both z.xor() and discriminated unions
|
|
331
428
|
const isExclusive = def.inclusive === false;
|
|
332
|
-
const options = def.options.map((x, i) =>
|
|
429
|
+
const options = def.options.map((x, i) => processSchema(x, ctx, {
|
|
333
430
|
...params,
|
|
334
431
|
path: [...params.path, isExclusive ? "oneOf" : "anyOf", i],
|
|
335
432
|
}));
|
|
@@ -342,11 +439,11 @@ export const unionProcessor = (schema, ctx, json, params) => {
|
|
|
342
439
|
};
|
|
343
440
|
export const intersectionProcessor = (schema, ctx, json, params) => {
|
|
344
441
|
const def = schema._zod.def;
|
|
345
|
-
const a =
|
|
442
|
+
const a = processSchema(def.left, ctx, {
|
|
346
443
|
...params,
|
|
347
444
|
path: [...params.path, "allOf", 0],
|
|
348
445
|
});
|
|
349
|
-
const b =
|
|
446
|
+
const b = processSchema(def.right, ctx, {
|
|
350
447
|
...params,
|
|
351
448
|
path: [...params.path, "allOf", 1],
|
|
352
449
|
});
|
|
@@ -365,12 +462,12 @@ export const tupleProcessor = (schema, ctx, _json, params) => {
|
|
|
365
462
|
json.type = "array";
|
|
366
463
|
const prefixPath = ctx.target === "draft-2020-12" ? "prefixItems" : "items";
|
|
367
464
|
const restPath = ctx.target === "draft-2020-12" ? "items" : ctx.target === "openapi-3.0" ? "items" : "additionalItems";
|
|
368
|
-
const prefixItems = def.items.map((x, i) =>
|
|
465
|
+
const prefixItems = def.items.map((x, i) => processSchema(x, ctx, {
|
|
369
466
|
...params,
|
|
370
467
|
path: [...params.path, prefixPath, i],
|
|
371
468
|
}));
|
|
372
469
|
const rest = def.rest
|
|
373
|
-
?
|
|
470
|
+
? processSchema(def.rest, ctx, {
|
|
374
471
|
...params,
|
|
375
472
|
path: [...params.path, restPath, ...(ctx.target === "openapi-3.0" ? [def.items.length] : [])],
|
|
376
473
|
})
|
|
@@ -424,7 +521,7 @@ export const tupleProcessor = (schema, ctx, _json, params) => {
|
|
|
424
521
|
json.maxItems = maxItems;
|
|
425
522
|
}
|
|
426
523
|
// explicit user-defined length checks take precedence
|
|
427
|
-
const { minimum, maximum } = schema
|
|
524
|
+
const { minimum, maximum } = aggregateChecks(schema);
|
|
428
525
|
if (typeof minimum === "number")
|
|
429
526
|
json.minItems = minimum;
|
|
430
527
|
if (typeof maximum === "number")
|
|
@@ -517,23 +614,22 @@ export const recordProcessor = (schema, ctx, _json, params) => {
|
|
|
517
614
|
json.type = "object";
|
|
518
615
|
// For looseRecord with regex patterns, use patternProperties. This correctly represents "only validate keys matching the pattern" semantics and composes well with allOf (intersections)
|
|
519
616
|
const keyType = def.keyType;
|
|
520
|
-
const
|
|
521
|
-
const patterns = keyBag?.patterns;
|
|
617
|
+
const patterns = aggregateChecks(keyType).patterns;
|
|
522
618
|
if (def.mode === "loose" && patterns && patterns.size > 0) {
|
|
523
619
|
// Use patternProperties for looseRecord with regex patterns
|
|
524
|
-
const valueSchema =
|
|
620
|
+
const valueSchema = processSchema(def.valueType, ctx, {
|
|
525
621
|
...params,
|
|
526
622
|
path: [...params.path, "patternProperties", "*"],
|
|
527
623
|
});
|
|
528
624
|
json.patternProperties = {};
|
|
529
625
|
for (const pattern of patterns) {
|
|
530
|
-
assignProp(json.patternProperties, pattern.source, valueSchema);
|
|
626
|
+
assignProp(json.patternProperties, exactPattern(pattern).source, valueSchema);
|
|
531
627
|
}
|
|
532
628
|
}
|
|
533
629
|
else {
|
|
534
630
|
// Default behavior: use propertyNames + additionalProperties
|
|
535
631
|
if (ctx.target === "draft-07" || ctx.target === "draft-2020-12") {
|
|
536
|
-
json.propertyNames =
|
|
632
|
+
json.propertyNames = processSchema(def.keyType, ctx, {
|
|
537
633
|
...params,
|
|
538
634
|
path: [...params.path, "propertyNames"],
|
|
539
635
|
});
|
|
@@ -545,7 +641,7 @@ export const recordProcessor = (schema, ctx, _json, params) => {
|
|
|
545
641
|
}
|
|
546
642
|
pending.push(schema);
|
|
547
643
|
}
|
|
548
|
-
json.additionalProperties =
|
|
644
|
+
json.additionalProperties = processSchema(def.valueType, ctx, {
|
|
549
645
|
...params,
|
|
550
646
|
path: [...params.path, "additionalProperties"],
|
|
551
647
|
});
|
|
@@ -563,7 +659,7 @@ export const recordProcessor = (schema, ctx, _json, params) => {
|
|
|
563
659
|
};
|
|
564
660
|
export const nullableProcessor = (schema, ctx, json, params) => {
|
|
565
661
|
const def = schema._zod.def;
|
|
566
|
-
const inner =
|
|
662
|
+
const inner = processSchema(def.innerType, ctx, params);
|
|
567
663
|
const seen = ctx.seen.get(schema);
|
|
568
664
|
if (ctx.target === "openapi-3.0") {
|
|
569
665
|
seen.ref = def.innerType;
|
|
@@ -575,7 +671,7 @@ export const nullableProcessor = (schema, ctx, json, params) => {
|
|
|
575
671
|
};
|
|
576
672
|
export const nonoptionalProcessor = (schema, ctx, _json, params) => {
|
|
577
673
|
const def = schema._zod.def;
|
|
578
|
-
|
|
674
|
+
processSchema(def.innerType, ctx, params);
|
|
579
675
|
const seen = ctx.seen.get(schema);
|
|
580
676
|
seen.ref = def.innerType;
|
|
581
677
|
};
|
|
@@ -598,7 +694,7 @@ function serializeDefaultValue(value, schema, ctx, json, params) {
|
|
|
598
694
|
}
|
|
599
695
|
export const defaultProcessor = (schema, ctx, json, params) => {
|
|
600
696
|
const def = schema._zod.def;
|
|
601
|
-
|
|
697
|
+
processSchema(def.innerType, ctx, params);
|
|
602
698
|
const seen = ctx.seen.get(schema);
|
|
603
699
|
seen.ref = def.innerType;
|
|
604
700
|
const value = serializeDefaultValue(def.defaultValue, schema, ctx, json, params);
|
|
@@ -607,7 +703,7 @@ export const defaultProcessor = (schema, ctx, json, params) => {
|
|
|
607
703
|
};
|
|
608
704
|
export const prefaultProcessor = (schema, ctx, json, params) => {
|
|
609
705
|
const def = schema._zod.def;
|
|
610
|
-
|
|
706
|
+
processSchema(def.innerType, ctx, params);
|
|
611
707
|
const seen = ctx.seen.get(schema);
|
|
612
708
|
seen.ref = def.innerType;
|
|
613
709
|
if (ctx.io !== "input")
|
|
@@ -618,7 +714,7 @@ export const prefaultProcessor = (schema, ctx, json, params) => {
|
|
|
618
714
|
};
|
|
619
715
|
export const catchProcessor = (schema, ctx, json, params) => {
|
|
620
716
|
const def = schema._zod.def;
|
|
621
|
-
|
|
717
|
+
processSchema(def.innerType, ctx, params);
|
|
622
718
|
const seen = ctx.seen.get(schema);
|
|
623
719
|
seen.ref = def.innerType;
|
|
624
720
|
let catchValue;
|
|
@@ -635,32 +731,32 @@ export const pipeProcessor = (schema, ctx, _json, params) => {
|
|
|
635
731
|
const def = schema._zod.def;
|
|
636
732
|
const inIsTransform = def.in._zod.traits.has("$ZodTransform");
|
|
637
733
|
const innerType = ctx.io === "input" ? (inIsTransform ? def.out : def.in) : def.out;
|
|
638
|
-
|
|
734
|
+
processSchema(innerType, ctx, params);
|
|
639
735
|
const seen = ctx.seen.get(schema);
|
|
640
736
|
seen.ref = innerType;
|
|
641
737
|
};
|
|
642
738
|
export const readonlyProcessor = (schema, ctx, json, params) => {
|
|
643
739
|
const def = schema._zod.def;
|
|
644
|
-
|
|
740
|
+
processSchema(def.innerType, ctx, params);
|
|
645
741
|
const seen = ctx.seen.get(schema);
|
|
646
742
|
seen.ref = def.innerType;
|
|
647
743
|
json.readOnly = true;
|
|
648
744
|
};
|
|
649
745
|
export const promiseProcessor = (schema, ctx, _json, params) => {
|
|
650
746
|
const def = schema._zod.def;
|
|
651
|
-
|
|
747
|
+
processSchema(def.innerType, ctx, params);
|
|
652
748
|
const seen = ctx.seen.get(schema);
|
|
653
749
|
seen.ref = def.innerType;
|
|
654
750
|
};
|
|
655
751
|
export const optionalProcessor = (schema, ctx, _json, params) => {
|
|
656
752
|
const def = schema._zod.def;
|
|
657
|
-
|
|
753
|
+
processSchema(def.innerType, ctx, params);
|
|
658
754
|
const seen = ctx.seen.get(schema);
|
|
659
755
|
seen.ref = def.innerType;
|
|
660
756
|
};
|
|
661
757
|
export const lazyProcessor = (schema, ctx, _json, params) => {
|
|
662
758
|
const innerType = schema._zod.innerType;
|
|
663
|
-
|
|
759
|
+
processSchema(innerType, ctx, params);
|
|
664
760
|
const seen = ctx.seen.get(schema);
|
|
665
761
|
seen.ref = innerType;
|
|
666
762
|
};
|
|
@@ -715,7 +811,7 @@ export function toJSONSchema(input, params) {
|
|
|
715
811
|
// First pass: process all schemas to build the seen map
|
|
716
812
|
for (const entry of registry._idmap.entries()) {
|
|
717
813
|
const [_, schema] = entry;
|
|
718
|
-
|
|
814
|
+
processSchema(schema, ctx);
|
|
719
815
|
}
|
|
720
816
|
const schemas = {};
|
|
721
817
|
const external = {
|
|
@@ -741,7 +837,7 @@ export function toJSONSchema(input, params) {
|
|
|
741
837
|
}
|
|
742
838
|
// Single schema case
|
|
743
839
|
const ctx = initializeContext({ ...params, processors: allProcessors });
|
|
744
|
-
|
|
840
|
+
processSchema(input, ctx);
|
|
745
841
|
extractDefs(ctx, input);
|
|
746
842
|
return finalize(ctx, input);
|
|
747
843
|
}
|
|
@@ -1,2 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
|
|
4
|
+
// seal-cjs-exports
|
|
5
|
+
(function () {
|
|
6
|
+
var keys = Object.getOwnPropertyNames(exports);
|
|
7
|
+
for (var i = 0; i < keys.length; i++) {
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(exports, keys[i]);
|
|
9
|
+
if (!desc || !desc.get || !desc.configurable) continue;
|
|
10
|
+
var value;
|
|
11
|
+
try {
|
|
12
|
+
value = desc.get();
|
|
13
|
+
} catch (e) {
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
16
|
+
// a circular require may not have settled this one yet, so leave it live
|
|
17
|
+
if (value === undefined) continue;
|
|
18
|
+
Object.defineProperty(exports, keys[i], { value: value, writable: false, enumerable: desc.enumerable, configurable: false });
|
|
19
|
+
}
|
|
20
|
+
Object.freeze(exports);
|
|
21
|
+
})();
|