zod 4.0.0-beta.20250505T195954 → 4.0.0
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/README.md +208 -0
- package/index.cjs +33 -0
- package/index.d.cts +4 -0
- package/index.d.ts +4 -0
- package/index.js +4 -0
- package/locales/index.cjs +17 -0
- package/locales/index.d.cts +1 -0
- package/locales/index.d.ts +1 -0
- package/locales/index.js +1 -0
- package/mini/index.cjs +17 -0
- package/mini/index.d.cts +1 -0
- package/mini/index.d.ts +1 -0
- package/mini/index.js +1 -0
- package/package.json +87 -40
- package/src/index.ts +2 -3
- package/src/locales/index.ts +1 -0
- package/src/mini/index.ts +1 -0
- package/src/v3/ZodError.ts +330 -0
- package/src/v3/benchmarks/datetime.ts +58 -0
- package/src/v3/benchmarks/discriminatedUnion.ts +80 -0
- package/src/v3/benchmarks/index.ts +59 -0
- package/src/v3/benchmarks/ipv4.ts +57 -0
- package/src/v3/benchmarks/object.ts +69 -0
- package/src/v3/benchmarks/primitives.ts +162 -0
- package/src/v3/benchmarks/realworld.ts +63 -0
- package/src/v3/benchmarks/string.ts +55 -0
- package/src/v3/benchmarks/union.ts +80 -0
- package/src/v3/errors.ts +13 -0
- package/src/v3/external.ts +6 -0
- package/src/v3/helpers/enumUtil.ts +17 -0
- package/src/v3/helpers/errorUtil.ts +8 -0
- package/src/v3/helpers/parseUtil.ts +176 -0
- package/src/v3/helpers/partialUtil.ts +34 -0
- package/src/v3/helpers/typeAliases.ts +2 -0
- package/src/v3/helpers/util.ts +224 -0
- package/src/v3/index.ts +4 -0
- package/src/v3/locales/en.ts +124 -0
- package/src/v3/standard-schema.ts +113 -0
- package/src/v3/tests/Mocker.ts +54 -0
- package/src/v3/tests/all-errors.test.ts +157 -0
- package/src/v3/tests/anyunknown.test.ts +28 -0
- package/src/v3/tests/array.test.ts +71 -0
- package/src/v3/tests/async-parsing.test.ts +388 -0
- package/src/v3/tests/async-refinements.test.ts +46 -0
- package/src/v3/tests/base.test.ts +29 -0
- package/src/v3/tests/bigint.test.ts +55 -0
- package/src/v3/tests/branded.test.ts +53 -0
- package/src/v3/tests/catch.test.ts +220 -0
- package/src/v3/tests/coerce.test.ts +133 -0
- package/src/v3/tests/complex.test.ts +56 -0
- package/src/v3/tests/custom.test.ts +31 -0
- package/src/v3/tests/date.test.ts +32 -0
- package/src/v3/tests/deepmasking.test.ts +186 -0
- package/src/v3/tests/default.test.ts +112 -0
- package/src/v3/tests/description.test.ts +33 -0
- package/src/v3/tests/discriminated-unions.test.ts +315 -0
- package/src/v3/tests/enum.test.ts +80 -0
- package/src/v3/tests/error.test.ts +551 -0
- package/src/v3/tests/firstparty.test.ts +87 -0
- package/src/v3/tests/firstpartyschematypes.test.ts +21 -0
- package/src/v3/tests/function.test.ts +257 -0
- package/src/v3/tests/generics.test.ts +48 -0
- package/src/v3/tests/instanceof.test.ts +37 -0
- package/src/v3/tests/intersection.test.ts +110 -0
- package/src/v3/tests/language-server.source.ts +76 -0
- package/src/v3/tests/language-server.test.ts +207 -0
- package/src/v3/tests/literal.test.ts +36 -0
- package/src/v3/tests/map.test.ts +110 -0
- package/src/v3/tests/masking.test.ts +4 -0
- package/src/v3/tests/mocker.test.ts +19 -0
- package/src/v3/tests/nan.test.ts +21 -0
- package/src/v3/tests/nativeEnum.test.ts +87 -0
- package/src/v3/tests/nullable.test.ts +42 -0
- package/src/v3/tests/number.test.ts +176 -0
- package/src/v3/tests/object-augmentation.test.ts +29 -0
- package/src/v3/tests/object-in-es5-env.test.ts +29 -0
- package/src/v3/tests/object.test.ts +434 -0
- package/src/v3/tests/optional.test.ts +42 -0
- package/src/v3/tests/parseUtil.test.ts +23 -0
- package/src/v3/tests/parser.test.ts +41 -0
- package/src/v3/tests/partials.test.ts +243 -0
- package/src/v3/tests/pickomit.test.ts +111 -0
- package/src/v3/tests/pipeline.test.ts +29 -0
- package/src/v3/tests/preprocess.test.ts +186 -0
- package/src/v3/tests/primitive.test.ts +440 -0
- package/src/v3/tests/promise.test.ts +90 -0
- package/src/v3/tests/readonly.test.ts +194 -0
- package/src/v3/tests/record.test.ts +171 -0
- package/src/v3/tests/recursive.test.ts +197 -0
- package/src/v3/tests/refine.test.ts +313 -0
- package/src/v3/tests/safeparse.test.ts +27 -0
- package/src/v3/tests/set.test.ts +142 -0
- package/src/v3/tests/standard-schema.test.ts +83 -0
- package/src/v3/tests/string.test.ts +916 -0
- package/src/v3/tests/transformer.test.ts +233 -0
- package/src/v3/tests/tuple.test.ts +90 -0
- package/src/v3/tests/unions.test.ts +57 -0
- package/src/v3/tests/validations.test.ts +133 -0
- package/src/v3/tests/void.test.ts +15 -0
- package/src/v3/types.ts +5136 -0
- package/src/{checks.ts → v4/classic/checks.ts} +1 -1
- package/src/v4/classic/coerce.ts +27 -0
- package/src/{compat.ts → v4/classic/compat.ts} +3 -13
- package/src/v4/classic/errors.ts +75 -0
- package/src/v4/classic/external.ts +50 -0
- package/src/v4/classic/index.ts +5 -0
- package/src/{iso.ts → v4/classic/iso.ts} +1 -1
- package/src/{parse.ts → v4/classic/parse.ts} +13 -12
- package/src/{schemas.ts → v4/classic/schemas.ts} +430 -417
- package/src/v4/classic/tests/anyunknown.test.ts +26 -0
- package/src/v4/classic/tests/array.test.ts +264 -0
- package/src/v4/classic/tests/assignability.test.ts +210 -0
- package/src/v4/classic/tests/async-parsing.test.ts +381 -0
- package/src/v4/classic/tests/async-refinements.test.ts +68 -0
- package/src/v4/classic/tests/base.test.ts +7 -0
- package/src/v4/classic/tests/bigint.test.ts +54 -0
- package/src/v4/classic/tests/brand.test.ts +63 -0
- package/src/v4/classic/tests/catch.test.ts +252 -0
- package/src/v4/classic/tests/coalesce.test.ts +20 -0
- package/src/v4/classic/tests/coerce.test.ts +160 -0
- package/src/v4/classic/tests/continuability.test.ts +352 -0
- package/src/v4/classic/tests/custom.test.ts +40 -0
- package/src/v4/classic/tests/date.test.ts +31 -0
- package/src/v4/classic/tests/datetime.test.ts +296 -0
- package/src/v4/classic/tests/default.test.ts +313 -0
- package/src/v4/classic/tests/description.test.ts +32 -0
- package/src/v4/classic/tests/discriminated-unions.test.ts +619 -0
- package/src/v4/classic/tests/enum.test.ts +285 -0
- package/src/v4/classic/tests/error-utils.test.ts +552 -0
- package/src/v4/classic/tests/error.test.ts +711 -0
- package/src/v4/classic/tests/file.test.ts +91 -0
- package/src/v4/classic/tests/firstparty.test.ts +175 -0
- package/src/v4/classic/tests/function.test.ts +268 -0
- package/src/v4/classic/tests/generics.test.ts +72 -0
- package/src/v4/classic/tests/index.test.ts +829 -0
- package/src/v4/classic/tests/instanceof.test.ts +34 -0
- package/src/v4/classic/tests/intersection.test.ts +171 -0
- package/src/v4/classic/tests/json.test.ts +108 -0
- package/src/v4/classic/tests/lazy.test.ts +227 -0
- package/src/v4/classic/tests/literal.test.ts +92 -0
- package/src/v4/classic/tests/map.test.ts +196 -0
- package/src/v4/classic/tests/nan.test.ts +21 -0
- package/src/v4/classic/tests/nested-refine.test.ts +168 -0
- package/src/v4/classic/tests/nonoptional.test.ts +86 -0
- package/src/v4/classic/tests/nullable.test.ts +22 -0
- package/src/v4/classic/tests/number.test.ts +247 -0
- package/src/v4/classic/tests/object.test.ts +563 -0
- package/src/v4/classic/tests/optional.test.ts +123 -0
- package/src/v4/classic/tests/partial.test.ts +147 -0
- package/src/v4/classic/tests/pickomit.test.ts +127 -0
- package/src/v4/classic/tests/pipe.test.ts +81 -0
- package/src/v4/classic/tests/prefault.test.ts +37 -0
- package/src/v4/classic/tests/preprocess.test.ts +298 -0
- package/src/v4/classic/tests/primitive.test.ts +175 -0
- package/src/v4/classic/tests/promise.test.ts +81 -0
- package/src/v4/classic/tests/prototypes.test.ts +23 -0
- package/src/v4/classic/tests/readonly.test.ts +252 -0
- package/src/v4/classic/tests/record.test.ts +342 -0
- package/src/v4/classic/tests/recursive-types.test.ts +356 -0
- package/src/v4/classic/tests/refine.test.ts +532 -0
- package/src/v4/classic/tests/registries.test.ts +204 -0
- package/src/v4/classic/tests/set.test.ts +179 -0
- package/src/v4/classic/tests/standard-schema.test.ts +57 -0
- package/src/v4/classic/tests/string-formats.test.ts +109 -0
- package/src/v4/classic/tests/string.test.ts +881 -0
- package/src/v4/classic/tests/stringbool.test.ts +66 -0
- package/src/v4/classic/tests/template-literal.test.ts +758 -0
- package/src/v4/classic/tests/to-json-schema.test.ts +2314 -0
- package/src/v4/classic/tests/transform.test.ts +250 -0
- package/src/v4/classic/tests/tuple.test.ts +163 -0
- package/src/v4/classic/tests/union.test.ts +94 -0
- package/src/v4/classic/tests/validations.test.ts +283 -0
- package/src/v4/classic/tests/void.test.ts +12 -0
- package/src/v4/core/api.ts +1594 -0
- package/src/v4/core/checks.ts +1283 -0
- package/src/v4/core/config.ts +15 -0
- package/src/v4/core/core.ts +134 -0
- package/src/v4/core/doc.ts +44 -0
- package/src/v4/core/errors.ts +426 -0
- package/src/v4/core/function.ts +176 -0
- package/src/v4/core/index.ts +15 -0
- package/src/v4/core/json-schema.ts +143 -0
- package/src/v4/core/parse.ts +94 -0
- package/src/v4/core/regexes.ts +135 -0
- package/src/v4/core/registries.ts +96 -0
- package/src/v4/core/schemas.ts +3842 -0
- package/src/v4/core/standard-schema.ts +64 -0
- package/src/v4/core/tests/index.test.ts +46 -0
- package/src/v4/core/tests/locales/be.test.ts +124 -0
- package/src/v4/core/tests/locales/en.test.ts +22 -0
- package/src/v4/core/tests/locales/ru.test.ts +128 -0
- package/src/v4/core/tests/locales/tr.test.ts +69 -0
- package/src/v4/core/to-json-schema.ts +977 -0
- package/src/v4/core/util.ts +775 -0
- package/src/v4/core/versions.ts +5 -0
- package/src/v4/core/zsf.ts +323 -0
- package/src/v4/index.ts +4 -0
- package/src/v4/locales/ar.ts +125 -0
- package/src/v4/locales/az.ts +121 -0
- package/src/v4/locales/be.ts +184 -0
- package/src/v4/locales/ca.ts +127 -0
- package/src/v4/locales/cs.ts +142 -0
- package/src/v4/locales/de.ts +124 -0
- package/src/v4/locales/en.ts +127 -0
- package/src/v4/locales/eo.ts +125 -0
- package/src/v4/locales/es.ts +125 -0
- package/src/v4/locales/fa.ts +134 -0
- package/src/v4/locales/fi.ts +131 -0
- package/src/v4/locales/fr-CA.ts +126 -0
- package/src/v4/locales/fr.ts +124 -0
- package/src/v4/locales/he.ts +125 -0
- package/src/v4/locales/hu.ts +126 -0
- package/src/v4/locales/id.ts +125 -0
- package/src/v4/locales/index.ts +39 -0
- package/src/v4/locales/it.ts +125 -0
- package/src/v4/locales/ja.ts +122 -0
- package/src/v4/locales/kh.ts +126 -0
- package/src/v4/locales/ko.ts +131 -0
- package/src/v4/locales/mk.ts +127 -0
- package/src/v4/locales/ms.ts +124 -0
- package/src/v4/locales/nl.ts +126 -0
- package/src/v4/locales/no.ts +124 -0
- package/src/v4/locales/ota.ts +125 -0
- package/src/v4/locales/pl.ts +126 -0
- package/src/v4/locales/ps.ts +133 -0
- package/src/v4/locales/pt.ts +123 -0
- package/src/v4/locales/ru.ts +184 -0
- package/src/v4/locales/sl.ts +126 -0
- package/src/v4/locales/sv.ts +127 -0
- package/src/v4/locales/ta.ts +125 -0
- package/src/v4/locales/th.ts +126 -0
- package/src/v4/locales/tr.ts +121 -0
- package/src/v4/locales/ua.ts +126 -0
- package/src/v4/locales/ur.ts +126 -0
- package/src/v4/locales/vi.ts +125 -0
- package/src/v4/locales/zh-CN.ts +123 -0
- package/src/v4/locales/zh-TW.ts +125 -0
- package/src/v4/mini/checks.ts +32 -0
- package/src/v4/mini/coerce.ts +22 -0
- package/src/v4/mini/external.ts +40 -0
- package/src/v4/mini/index.ts +3 -0
- package/src/v4/mini/iso.ts +62 -0
- package/src/v4/mini/parse.ts +1 -0
- package/src/v4/mini/schemas.ts +1579 -0
- package/src/v4/mini/tests/assignability.test.ts +129 -0
- package/src/v4/mini/tests/brand.test.ts +51 -0
- package/src/v4/mini/tests/checks.test.ts +144 -0
- package/src/v4/mini/tests/computed.test.ts +36 -0
- package/src/v4/mini/tests/error.test.ts +22 -0
- package/src/v4/mini/tests/functions.test.ts +43 -0
- package/src/v4/mini/tests/index.test.ts +871 -0
- package/src/v4/mini/tests/number.test.ts +95 -0
- package/src/v4/mini/tests/object.test.ts +185 -0
- package/src/v4/mini/tests/prototypes.test.ts +43 -0
- package/src/v4/mini/tests/recursive-types.test.ts +275 -0
- package/src/v4/mini/tests/string.test.ts +299 -0
- package/src/v4-mini/index.ts +1 -0
- package/v3/ZodError.cjs +138 -0
- package/v3/ZodError.d.cts +164 -0
- package/v3/ZodError.d.ts +164 -0
- package/v3/ZodError.js +133 -0
- package/v3/errors.cjs +17 -0
- package/v3/errors.d.cts +5 -0
- package/v3/errors.d.ts +5 -0
- package/v3/errors.js +9 -0
- package/v3/external.cjs +22 -0
- package/v3/external.d.cts +6 -0
- package/v3/external.d.ts +6 -0
- package/v3/external.js +6 -0
- package/v3/helpers/enumUtil.cjs +2 -0
- package/v3/helpers/enumUtil.d.cts +8 -0
- package/v3/helpers/enumUtil.d.ts +8 -0
- package/v3/helpers/enumUtil.js +1 -0
- package/v3/helpers/errorUtil.cjs +9 -0
- package/v3/helpers/errorUtil.d.cts +9 -0
- package/v3/helpers/errorUtil.d.ts +9 -0
- package/v3/helpers/errorUtil.js +6 -0
- package/v3/helpers/parseUtil.cjs +124 -0
- package/v3/helpers/parseUtil.d.cts +78 -0
- package/v3/helpers/parseUtil.d.ts +78 -0
- package/v3/helpers/parseUtil.js +109 -0
- package/v3/helpers/partialUtil.cjs +2 -0
- package/v3/helpers/partialUtil.d.cts +8 -0
- package/v3/helpers/partialUtil.d.ts +8 -0
- package/v3/helpers/partialUtil.js +1 -0
- package/v3/helpers/typeAliases.cjs +2 -0
- package/v3/helpers/typeAliases.d.cts +2 -0
- package/v3/helpers/typeAliases.d.ts +2 -0
- package/v3/helpers/typeAliases.js +1 -0
- package/v3/helpers/util.cjs +137 -0
- package/v3/helpers/util.d.cts +85 -0
- package/v3/helpers/util.d.ts +85 -0
- package/v3/helpers/util.js +133 -0
- package/{dist/commonjs/index.js → v3/index.cjs} +2 -2
- package/v3/index.d.cts +4 -0
- package/v3/index.js +4 -0
- package/v3/locales/en.cjs +111 -0
- package/v3/locales/en.d.cts +3 -0
- package/v3/locales/en.d.ts +3 -0
- package/v3/locales/en.js +109 -0
- package/v3/standard-schema.cjs +2 -0
- package/v3/standard-schema.d.cts +102 -0
- package/v3/standard-schema.d.ts +102 -0
- package/v3/standard-schema.js +1 -0
- package/v3/types.cjs +3775 -0
- package/v3/types.d.cts +1031 -0
- package/v3/types.d.ts +1031 -0
- package/v3/types.js +3693 -0
- package/{dist/commonjs/checks.js → v4/classic/checks.cjs} +29 -29
- package/{dist/esm/checks.d.ts → v4/classic/checks.d.cts} +1 -1
- package/{dist/commonjs → v4/classic}/checks.d.ts +1 -1
- package/{dist/esm → v4/classic}/checks.js +1 -1
- package/{dist/commonjs/coerce.js → v4/classic/coerce.cjs} +2 -2
- package/v4/classic/coerce.d.cts +17 -0
- package/v4/classic/coerce.d.ts +17 -0
- package/{dist/esm → v4/classic}/coerce.js +1 -1
- package/{dist/commonjs/compat.js → v4/classic/compat.cjs} +5 -11
- package/{dist/esm/compat.d.ts → v4/classic/compat.d.cts} +4 -6
- package/{dist/commonjs → v4/classic}/compat.d.ts +3 -5
- package/{dist/esm → v4/classic}/compat.js +2 -8
- package/v4/classic/errors.cjs +67 -0
- package/{dist/commonjs/errors.d.ts → v4/classic/errors.d.cts} +8 -7
- package/{dist/esm → v4/classic}/errors.d.ts +8 -7
- package/v4/classic/errors.js +41 -0
- package/v4/classic/external.cjs +70 -0
- package/v4/classic/external.d.cts +13 -0
- package/v4/classic/external.d.ts +13 -0
- package/v4/classic/external.js +18 -0
- package/v4/classic/index.cjs +33 -0
- package/v4/classic/index.d.cts +4 -0
- package/{dist/commonjs/iso.js → v4/classic/iso.cjs} +2 -2
- package/{dist/esm/iso.d.ts → v4/classic/iso.d.cts} +2 -2
- package/{dist/commonjs → v4/classic}/iso.d.ts +1 -1
- package/{dist/esm → v4/classic}/iso.js +1 -1
- package/{dist/commonjs/parse.js → v4/classic/parse.cjs} +7 -9
- package/{dist/commonjs/parse.d.ts → v4/classic/parse.d.cts} +10 -4
- package/{dist/esm → v4/classic}/parse.d.ts +10 -4
- package/v4/classic/parse.js +6 -0
- package/{dist/commonjs/schemas.js → v4/classic/schemas.cjs} +167 -138
- package/{dist/esm/schemas.d.ts → v4/classic/schemas.d.cts} +176 -196
- package/{dist/commonjs → v4/classic}/schemas.d.ts +175 -195
- package/{dist/esm → v4/classic}/schemas.js +128 -102
- package/v4/core/api.cjs +1039 -0
- package/v4/core/api.d.cts +284 -0
- package/v4/core/api.d.ts +284 -0
- package/v4/core/api.js +906 -0
- package/v4/core/checks.cjs +591 -0
- package/v4/core/checks.d.cts +278 -0
- package/v4/core/checks.d.ts +278 -0
- package/v4/core/checks.js +565 -0
- package/v4/core/core.cjs +67 -0
- package/v4/core/core.d.cts +49 -0
- package/v4/core/core.d.ts +49 -0
- package/v4/core/core.js +61 -0
- package/v4/core/doc.cjs +39 -0
- package/v4/core/doc.d.cts +14 -0
- package/v4/core/doc.d.ts +14 -0
- package/v4/core/doc.js +35 -0
- package/v4/core/errors.cjs +226 -0
- package/v4/core/errors.d.cts +210 -0
- package/v4/core/errors.d.ts +210 -0
- package/v4/core/errors.js +195 -0
- package/v4/core/function.cjs +102 -0
- package/v4/core/function.d.cts +52 -0
- package/v4/core/function.d.ts +52 -0
- package/v4/core/function.js +75 -0
- package/v4/core/index.cjs +44 -0
- package/v4/core/index.d.cts +15 -0
- package/v4/core/index.d.ts +15 -0
- package/v4/core/index.js +15 -0
- package/v4/core/json-schema.cjs +2 -0
- package/v4/core/json-schema.d.cts +87 -0
- package/v4/core/json-schema.d.ts +87 -0
- package/v4/core/json-schema.js +1 -0
- package/v4/core/parse.cjs +87 -0
- package/v4/core/parse.d.cts +25 -0
- package/v4/core/parse.d.ts +25 -0
- package/v4/core/parse.js +57 -0
- package/v4/core/regexes.cjs +103 -0
- package/v4/core/regexes.d.cts +61 -0
- package/v4/core/regexes.d.ts +61 -0
- package/v4/core/regexes.js +95 -0
- package/v4/core/registries.cjs +56 -0
- package/v4/core/registries.d.cts +35 -0
- package/v4/core/registries.d.ts +35 -0
- package/v4/core/registries.js +51 -0
- package/v4/core/schemas.cjs +1748 -0
- package/v4/core/schemas.d.cts +1041 -0
- package/v4/core/schemas.d.ts +1041 -0
- package/v4/core/schemas.js +1717 -0
- package/v4/core/standard-schema.cjs +2 -0
- package/v4/core/standard-schema.d.cts +55 -0
- package/v4/core/standard-schema.d.ts +55 -0
- package/v4/core/standard-schema.js +1 -0
- package/v4/core/to-json-schema.cjs +854 -0
- package/v4/core/to-json-schema.d.cts +88 -0
- package/v4/core/to-json-schema.d.ts +88 -0
- package/v4/core/to-json-schema.js +849 -0
- package/v4/core/util.cjs +539 -0
- package/v4/core/util.d.cts +183 -0
- package/v4/core/util.d.ts +183 -0
- package/v4/core/util.js +493 -0
- package/v4/core/versions.cjs +8 -0
- package/v4/core/versions.d.cts +5 -0
- package/v4/core/versions.d.ts +5 -0
- package/v4/core/versions.js +5 -0
- package/v4/index.cjs +22 -0
- package/v4/index.d.cts +3 -0
- package/v4/index.d.ts +3 -0
- package/v4/index.js +3 -0
- package/v4/locales/ar.cjs +142 -0
- package/v4/locales/ar.d.cts +4 -0
- package/v4/locales/ar.d.ts +4 -0
- package/v4/locales/ar.js +116 -0
- package/v4/locales/az.cjs +141 -0
- package/v4/locales/az.d.cts +4 -0
- package/v4/locales/az.d.ts +4 -0
- package/v4/locales/az.js +115 -0
- package/v4/locales/be.cjs +190 -0
- package/v4/locales/be.d.cts +4 -0
- package/v4/locales/be.d.ts +4 -0
- package/v4/locales/be.js +164 -0
- package/v4/locales/ca.cjs +144 -0
- package/v4/locales/ca.d.cts +4 -0
- package/v4/locales/ca.d.ts +4 -0
- package/v4/locales/ca.js +118 -0
- package/v4/locales/cs.cjs +161 -0
- package/v4/locales/cs.d.cts +4 -0
- package/v4/locales/cs.d.ts +4 -0
- package/v4/locales/cs.js +135 -0
- package/v4/locales/de.cjs +142 -0
- package/v4/locales/de.d.cts +4 -0
- package/v4/locales/de.d.ts +4 -0
- package/v4/locales/de.js +116 -0
- package/v4/locales/en.cjs +145 -0
- package/v4/locales/en.d.cts +5 -0
- package/v4/locales/en.d.ts +5 -0
- package/v4/locales/en.js +117 -0
- package/v4/locales/eo.cjs +144 -0
- package/v4/locales/eo.d.cts +5 -0
- package/v4/locales/eo.d.ts +5 -0
- package/v4/locales/eo.js +116 -0
- package/v4/locales/es.cjs +143 -0
- package/v4/locales/es.d.cts +4 -0
- package/v4/locales/es.d.ts +4 -0
- package/v4/locales/es.js +117 -0
- package/v4/locales/fa.cjs +148 -0
- package/v4/locales/fa.d.cts +4 -0
- package/v4/locales/fa.d.ts +4 -0
- package/v4/locales/fa.js +122 -0
- package/v4/locales/fi.cjs +148 -0
- package/v4/locales/fi.d.cts +4 -0
- package/v4/locales/fi.d.ts +4 -0
- package/v4/locales/fi.js +122 -0
- package/v4/locales/fr-CA.cjs +143 -0
- package/v4/locales/fr-CA.d.cts +4 -0
- package/v4/locales/fr-CA.d.ts +4 -0
- package/v4/locales/fr-CA.js +117 -0
- package/v4/locales/fr.cjs +142 -0
- package/v4/locales/fr.d.cts +4 -0
- package/v4/locales/fr.d.ts +4 -0
- package/v4/locales/fr.js +116 -0
- package/v4/locales/he.cjs +143 -0
- package/v4/locales/he.d.cts +4 -0
- package/v4/locales/he.d.ts +4 -0
- package/v4/locales/he.js +117 -0
- package/v4/locales/hu.cjs +143 -0
- package/v4/locales/hu.d.cts +4 -0
- package/v4/locales/hu.d.ts +4 -0
- package/v4/locales/hu.js +117 -0
- package/v4/locales/id.cjs +142 -0
- package/v4/locales/id.d.cts +4 -0
- package/v4/locales/id.d.ts +4 -0
- package/v4/locales/id.js +116 -0
- package/v4/locales/index.cjs +84 -0
- package/v4/locales/index.d.cts +39 -0
- package/v4/locales/index.d.ts +39 -0
- package/v4/locales/index.js +39 -0
- package/v4/locales/it.cjs +143 -0
- package/v4/locales/it.d.cts +4 -0
- package/v4/locales/it.d.ts +4 -0
- package/v4/locales/it.js +117 -0
- package/v4/locales/ja.cjs +141 -0
- package/v4/locales/ja.d.cts +4 -0
- package/v4/locales/ja.d.ts +4 -0
- package/v4/locales/ja.js +115 -0
- package/v4/locales/kh.cjs +143 -0
- package/v4/locales/kh.d.cts +4 -0
- package/v4/locales/kh.d.ts +4 -0
- package/v4/locales/kh.js +117 -0
- package/v4/locales/ko.cjs +147 -0
- package/v4/locales/ko.d.cts +4 -0
- package/v4/locales/ko.d.ts +4 -0
- package/v4/locales/ko.js +121 -0
- package/v4/locales/mk.cjs +144 -0
- package/v4/locales/mk.d.cts +4 -0
- package/v4/locales/mk.d.ts +4 -0
- package/v4/locales/mk.js +118 -0
- package/v4/locales/ms.cjs +142 -0
- package/v4/locales/ms.d.cts +4 -0
- package/v4/locales/ms.d.ts +4 -0
- package/v4/locales/ms.js +116 -0
- package/v4/locales/nl.cjs +143 -0
- package/v4/locales/nl.d.cts +4 -0
- package/v4/locales/nl.d.ts +4 -0
- package/v4/locales/nl.js +117 -0
- package/v4/locales/no.cjs +142 -0
- package/v4/locales/no.d.cts +4 -0
- package/v4/locales/no.d.ts +4 -0
- package/v4/locales/no.js +116 -0
- package/v4/locales/ota.cjs +143 -0
- package/v4/locales/ota.d.cts +4 -0
- package/v4/locales/ota.d.ts +4 -0
- package/v4/locales/ota.js +117 -0
- package/v4/locales/pl.cjs +143 -0
- package/v4/locales/pl.d.cts +4 -0
- package/v4/locales/pl.d.ts +4 -0
- package/v4/locales/pl.js +117 -0
- package/v4/locales/ps.cjs +148 -0
- package/v4/locales/ps.d.cts +4 -0
- package/v4/locales/ps.d.ts +4 -0
- package/v4/locales/ps.js +122 -0
- package/v4/locales/pt.cjs +142 -0
- package/v4/locales/pt.d.cts +4 -0
- package/v4/locales/pt.d.ts +4 -0
- package/v4/locales/pt.js +116 -0
- package/v4/locales/ru.cjs +190 -0
- package/v4/locales/ru.d.cts +4 -0
- package/v4/locales/ru.d.ts +4 -0
- package/v4/locales/ru.js +164 -0
- package/v4/locales/sl.cjs +143 -0
- package/v4/locales/sl.d.cts +4 -0
- package/v4/locales/sl.d.ts +4 -0
- package/v4/locales/sl.js +117 -0
- package/v4/locales/sv.cjs +144 -0
- package/v4/locales/sv.d.cts +4 -0
- package/v4/locales/sv.d.ts +4 -0
- package/v4/locales/sv.js +118 -0
- package/v4/locales/ta.cjs +143 -0
- package/v4/locales/ta.d.cts +4 -0
- package/v4/locales/ta.d.ts +4 -0
- package/v4/locales/ta.js +117 -0
- package/v4/locales/th.cjs +143 -0
- package/v4/locales/th.d.cts +4 -0
- package/v4/locales/th.d.ts +4 -0
- package/v4/locales/th.js +117 -0
- package/v4/locales/tr.cjs +143 -0
- package/v4/locales/tr.d.cts +5 -0
- package/v4/locales/tr.d.ts +5 -0
- package/v4/locales/tr.js +115 -0
- package/v4/locales/ua.cjs +143 -0
- package/v4/locales/ua.d.cts +4 -0
- package/v4/locales/ua.d.ts +4 -0
- package/v4/locales/ua.js +117 -0
- package/v4/locales/ur.cjs +143 -0
- package/v4/locales/ur.d.cts +4 -0
- package/v4/locales/ur.d.ts +4 -0
- package/v4/locales/ur.js +117 -0
- package/v4/locales/vi.cjs +142 -0
- package/v4/locales/vi.d.cts +4 -0
- package/v4/locales/vi.d.ts +4 -0
- package/v4/locales/vi.js +116 -0
- package/v4/locales/zh-CN.cjs +142 -0
- package/v4/locales/zh-CN.d.cts +4 -0
- package/v4/locales/zh-CN.d.ts +4 -0
- package/v4/locales/zh-CN.js +116 -0
- package/v4/locales/zh-TW.cjs +143 -0
- package/v4/locales/zh-TW.d.cts +4 -0
- package/v4/locales/zh-TW.d.ts +4 -0
- package/v4/locales/zh-TW.js +117 -0
- package/v4/mini/checks.cjs +34 -0
- package/v4/mini/checks.d.cts +1 -0
- package/v4/mini/checks.d.ts +1 -0
- package/v4/mini/checks.js +1 -0
- package/{dist/commonjs/errors.js → v4/mini/coerce.cjs} +21 -25
- package/v4/mini/coerce.d.cts +7 -0
- package/v4/mini/coerce.d.ts +7 -0
- package/v4/mini/coerce.js +17 -0
- package/v4/mini/external.cjs +62 -0
- package/v4/mini/external.d.cts +11 -0
- package/v4/mini/external.d.ts +11 -0
- package/v4/mini/external.js +13 -0
- package/v4/mini/index.cjs +32 -0
- package/v4/mini/index.d.cts +3 -0
- package/v4/mini/index.d.ts +3 -0
- package/v4/mini/index.js +3 -0
- package/v4/mini/iso.cjs +60 -0
- package/v4/mini/iso.d.cts +22 -0
- package/v4/mini/iso.d.ts +22 -0
- package/v4/mini/iso.js +30 -0
- package/v4/mini/parse.cjs +8 -0
- package/v4/mini/parse.d.cts +1 -0
- package/v4/mini/parse.d.ts +1 -0
- package/v4/mini/parse.js +1 -0
- package/v4/mini/schemas.cjs +839 -0
- package/v4/mini/schemas.d.cts +356 -0
- package/v4/mini/schemas.d.ts +356 -0
- package/v4/mini/schemas.js +732 -0
- package/v4-mini/index.cjs +17 -0
- package/v4-mini/index.d.cts +1 -0
- package/v4-mini/index.d.ts +1 -0
- package/v4-mini/index.js +1 -0
- package/dist/commonjs/coerce.d.ts +0 -17
- package/dist/commonjs/external.d.ts +0 -8
- package/dist/commonjs/external.js +0 -58
- package/dist/commonjs/package.json +0 -3
- package/dist/esm/coerce.d.ts +0 -17
- package/dist/esm/errors.js +0 -24
- package/dist/esm/external.d.ts +0 -8
- package/dist/esm/external.js +0 -14
- package/dist/esm/package.json +0 -3
- package/dist/esm/parse.js +0 -8
- package/src/coerce.ts +0 -27
- package/src/errors.ts +0 -50
- package/src/external.ts +0 -30
- package/{dist/esm → v3}/index.d.ts +1 -1
- /package/{dist/commonjs → v4/classic}/index.d.ts +0 -0
- /package/{dist/esm → v4/classic}/index.js +0 -0
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
import * as core from "
|
|
2
|
-
import { util } from "
|
|
1
|
+
import * as core from "../core/index.js";
|
|
2
|
+
import { util } from "../core/index.js";
|
|
3
3
|
import * as checks from "./checks.js";
|
|
4
4
|
import * as iso from "./iso.js";
|
|
5
5
|
import * as parse from "./parse.js";
|
|
6
|
-
export * as iso from "./iso.js";
|
|
7
|
-
export * as coerce from "./coerce.js";
|
|
8
6
|
export const ZodType = /*@__PURE__*/ core.$constructor("ZodType", (inst, def) => {
|
|
9
7
|
core.$ZodType.init(inst, def);
|
|
10
8
|
inst.def = def;
|
|
11
|
-
inst
|
|
9
|
+
Object.defineProperty(inst, "_def", { value: def });
|
|
12
10
|
// base methods
|
|
13
11
|
inst.check = (...checks) => {
|
|
14
12
|
return inst.clone({
|
|
@@ -17,18 +15,20 @@ export const ZodType = /*@__PURE__*/ core.$constructor("ZodType", (inst, def) =>
|
|
|
17
15
|
...(def.checks ?? []),
|
|
18
16
|
...checks.map((ch) => typeof ch === "function" ? { _zod: { check: ch, def: { check: "custom" }, onattach: [] } } : ch),
|
|
19
17
|
],
|
|
20
|
-
}
|
|
18
|
+
}
|
|
19
|
+
// { parent: true }
|
|
20
|
+
);
|
|
21
21
|
};
|
|
22
|
-
inst.clone = (
|
|
22
|
+
inst.clone = (def, params) => core.clone(inst, def, params);
|
|
23
23
|
inst.brand = () => inst;
|
|
24
24
|
inst.register = ((reg, meta) => {
|
|
25
25
|
reg.add(inst, meta);
|
|
26
26
|
return inst;
|
|
27
27
|
});
|
|
28
28
|
// parsing
|
|
29
|
-
inst.parse = (data, params) => parse.parse(inst, data, params);
|
|
29
|
+
inst.parse = (data, params) => parse.parse(inst, data, params, { callee: inst.parse });
|
|
30
30
|
inst.safeParse = (data, params) => parse.safeParse(inst, data, params);
|
|
31
|
-
inst.parseAsync = async (data, params) => parse.parseAsync(inst, data, params);
|
|
31
|
+
inst.parseAsync = async (data, params) => parse.parseAsync(inst, data, params, { callee: inst.parseAsync });
|
|
32
32
|
inst.safeParseAsync = async (data, params) => parse.safeParseAsync(inst, data, params);
|
|
33
33
|
inst.spa = inst.safeParseAsync;
|
|
34
34
|
// refinements
|
|
@@ -36,15 +36,16 @@ export const ZodType = /*@__PURE__*/ core.$constructor("ZodType", (inst, def) =>
|
|
|
36
36
|
inst.superRefine = (refinement) => inst.check(superRefine(refinement));
|
|
37
37
|
inst.overwrite = (fn) => inst.check(checks.overwrite(fn));
|
|
38
38
|
// wrappers
|
|
39
|
-
inst.optional = (
|
|
40
|
-
inst.nullable = (
|
|
39
|
+
inst.optional = () => optional(inst);
|
|
40
|
+
inst.nullable = () => nullable(inst);
|
|
41
41
|
inst.nullish = () => optional(nullable(inst));
|
|
42
42
|
inst.nonoptional = (params) => nonoptional(inst, params);
|
|
43
43
|
inst.array = () => array(inst);
|
|
44
44
|
inst.or = (arg) => union([inst, arg]);
|
|
45
45
|
inst.and = (arg) => intersection(inst, arg);
|
|
46
46
|
inst.transform = (tx) => pipe(inst, transform(tx));
|
|
47
|
-
inst.default = (def
|
|
47
|
+
inst.default = (def) => _default(inst, def);
|
|
48
|
+
inst.prefault = (def) => prefault(inst, def);
|
|
48
49
|
// inst.coalesce = (def, params) => coalesce(inst, def, params);
|
|
49
50
|
inst.catch = (params) => _catch(inst, params);
|
|
50
51
|
inst.pipe = (target) => pipe(inst, target);
|
|
@@ -52,9 +53,7 @@ export const ZodType = /*@__PURE__*/ core.$constructor("ZodType", (inst, def) =>
|
|
|
52
53
|
// meta
|
|
53
54
|
inst.describe = (description) => {
|
|
54
55
|
const cl = inst.clone();
|
|
55
|
-
|
|
56
|
-
delete meta.id; // do not inherit
|
|
57
|
-
core.globalRegistry.add(cl, meta);
|
|
56
|
+
core.globalRegistry.add(cl, { description });
|
|
58
57
|
return cl;
|
|
59
58
|
};
|
|
60
59
|
Object.defineProperty(inst, "description", {
|
|
@@ -64,8 +63,9 @@ export const ZodType = /*@__PURE__*/ core.$constructor("ZodType", (inst, def) =>
|
|
|
64
63
|
configurable: true,
|
|
65
64
|
});
|
|
66
65
|
inst.meta = (...args) => {
|
|
67
|
-
if (args.length === 0)
|
|
66
|
+
if (args.length === 0) {
|
|
68
67
|
return core.globalRegistry.get(inst);
|
|
68
|
+
}
|
|
69
69
|
const cl = inst.clone();
|
|
70
70
|
core.globalRegistry.add(cl, args[0]);
|
|
71
71
|
return cl;
|
|
@@ -75,17 +75,19 @@ export const ZodType = /*@__PURE__*/ core.$constructor("ZodType", (inst, def) =>
|
|
|
75
75
|
inst.isNullable = () => inst.safeParse(null).success;
|
|
76
76
|
return inst;
|
|
77
77
|
});
|
|
78
|
+
/** @internal */
|
|
78
79
|
export const _ZodString = /*@__PURE__*/ core.$constructor("_ZodString", (inst, def) => {
|
|
79
80
|
core.$ZodString.init(inst, def);
|
|
80
81
|
ZodType.init(inst, def);
|
|
81
|
-
|
|
82
|
-
inst.
|
|
83
|
-
inst.
|
|
82
|
+
const bag = inst._zod.bag;
|
|
83
|
+
inst.format = bag.format ?? null;
|
|
84
|
+
inst.minLength = bag.minimum ?? null;
|
|
85
|
+
inst.maxLength = bag.maximum ?? null;
|
|
84
86
|
// validations
|
|
85
87
|
inst.regex = (...args) => inst.check(checks.regex(...args));
|
|
86
88
|
inst.includes = (...args) => inst.check(checks.includes(...args));
|
|
87
|
-
inst.startsWith = (
|
|
88
|
-
inst.endsWith = (
|
|
89
|
+
inst.startsWith = (...args) => inst.check(checks.startsWith(...args));
|
|
90
|
+
inst.endsWith = (...args) => inst.check(checks.endsWith(...args));
|
|
89
91
|
inst.min = (...args) => inst.check(checks.minLength(...args));
|
|
90
92
|
inst.max = (...args) => inst.check(checks.maxLength(...args));
|
|
91
93
|
inst.length = (...args) => inst.check(checks.length(...args));
|
|
@@ -298,6 +300,14 @@ export const ZodJWT = /*@__PURE__*/ core.$constructor("ZodJWT", (inst, def) => {
|
|
|
298
300
|
export function jwt(params) {
|
|
299
301
|
return core._jwt(ZodJWT, params);
|
|
300
302
|
}
|
|
303
|
+
export const ZodCustomStringFormat = /*@__PURE__*/ core.$constructor("ZodCustomStringFormat", (inst, def) => {
|
|
304
|
+
// ZodStringFormat.init(inst, def);
|
|
305
|
+
core.$ZodCustomStringFormat.init(inst, def);
|
|
306
|
+
ZodStringFormat.init(inst, def);
|
|
307
|
+
});
|
|
308
|
+
export function stringFormat(format, fnOrRegex, _params = {}) {
|
|
309
|
+
return core._stringFormat(ZodCustomStringFormat, format, fnOrRegex, _params);
|
|
310
|
+
}
|
|
301
311
|
export const ZodNumber = /*@__PURE__*/ core.$constructor("ZodNumber", (inst, def) => {
|
|
302
312
|
core.$ZodNumber.init(inst, def);
|
|
303
313
|
ZodType.init(inst, def);
|
|
@@ -317,12 +327,14 @@ export const ZodNumber = /*@__PURE__*/ core.$constructor("ZodNumber", (inst, def
|
|
|
317
327
|
inst.step = (value, params) => inst.check(checks.multipleOf(value, params));
|
|
318
328
|
// inst.finite = (params) => inst.check(core.finite(params));
|
|
319
329
|
inst.finite = () => inst;
|
|
320
|
-
|
|
321
|
-
inst.
|
|
322
|
-
|
|
323
|
-
|
|
330
|
+
const bag = inst._zod.bag;
|
|
331
|
+
inst.minValue =
|
|
332
|
+
Math.max(bag.minimum ?? Number.NEGATIVE_INFINITY, bag.exclusiveMinimum ?? Number.NEGATIVE_INFINITY) ?? null;
|
|
333
|
+
inst.maxValue =
|
|
334
|
+
Math.min(bag.maximum ?? Number.POSITIVE_INFINITY, bag.exclusiveMaximum ?? Number.POSITIVE_INFINITY) ?? null;
|
|
335
|
+
inst.isInt = (bag.format ?? "").includes("int") || Number.isSafeInteger(bag.multipleOf ?? 0.5);
|
|
324
336
|
inst.isFinite = true;
|
|
325
|
-
inst.format =
|
|
337
|
+
inst.format = bag.format ?? null;
|
|
326
338
|
});
|
|
327
339
|
export function number(params) {
|
|
328
340
|
return core._number(ZodNumber, params);
|
|
@@ -369,9 +381,10 @@ export const ZodBigInt = /*@__PURE__*/ core.$constructor("ZodBigInt", (inst, def
|
|
|
369
381
|
inst.nonpositive = (params) => inst.check(checks.lte(BigInt(0), params));
|
|
370
382
|
inst.nonnegative = (params) => inst.check(checks.gte(BigInt(0), params));
|
|
371
383
|
inst.multipleOf = (value, params) => inst.check(checks.multipleOf(value, params));
|
|
372
|
-
|
|
373
|
-
inst.
|
|
374
|
-
inst.
|
|
384
|
+
const bag = inst._zod.bag;
|
|
385
|
+
inst.minValue = bag.minimum ?? null;
|
|
386
|
+
inst.maxValue = bag.maximum ?? null;
|
|
387
|
+
inst.format = bag.format ?? null;
|
|
375
388
|
});
|
|
376
389
|
export function bigint(params) {
|
|
377
390
|
return core._bigint(ZodBigInt, params);
|
|
@@ -415,15 +428,15 @@ export const ZodAny = /*@__PURE__*/ core.$constructor("ZodAny", (inst, def) => {
|
|
|
415
428
|
core.$ZodAny.init(inst, def);
|
|
416
429
|
ZodType.init(inst, def);
|
|
417
430
|
});
|
|
418
|
-
export function any(
|
|
419
|
-
return core._any(ZodAny
|
|
431
|
+
export function any() {
|
|
432
|
+
return core._any(ZodAny);
|
|
420
433
|
}
|
|
421
434
|
export const ZodUnknown = /*@__PURE__*/ core.$constructor("ZodUnknown", (inst, def) => {
|
|
422
435
|
core.$ZodUnknown.init(inst, def);
|
|
423
436
|
ZodType.init(inst, def);
|
|
424
437
|
});
|
|
425
|
-
export function unknown(
|
|
426
|
-
return core._unknown(ZodUnknown
|
|
438
|
+
export function unknown() {
|
|
439
|
+
return core._unknown(ZodUnknown);
|
|
427
440
|
}
|
|
428
441
|
export const ZodNever = /*@__PURE__*/ core.$constructor("ZodNever", (inst, def) => {
|
|
429
442
|
core.$ZodNever.init(inst, def);
|
|
@@ -445,7 +458,7 @@ export const ZodDate = /*@__PURE__*/ core.$constructor("ZodDate", (inst, def) =>
|
|
|
445
458
|
ZodType.init(inst, def);
|
|
446
459
|
inst.min = (value, params) => inst.check(checks.gte(value, params));
|
|
447
460
|
inst.max = (value, params) => inst.check(checks.lte(value, params));
|
|
448
|
-
const c = inst._zod.
|
|
461
|
+
const c = inst._zod.bag;
|
|
449
462
|
inst.minDate = c.minimum ? new Date(c.minimum) : null;
|
|
450
463
|
inst.maxDate = c.maximum ? new Date(c.maximum) : null;
|
|
451
464
|
});
|
|
@@ -460,6 +473,7 @@ export const ZodArray = /*@__PURE__*/ core.$constructor("ZodArray", (inst, def)
|
|
|
460
473
|
inst.nonempty = (params) => inst.check(checks.minLength(1, params));
|
|
461
474
|
inst.max = (maxLength, params) => inst.check(checks.maxLength(maxLength, params));
|
|
462
475
|
inst.length = (len, params) => inst.check(checks.length(len, params));
|
|
476
|
+
inst.unwrap = () => inst.element;
|
|
463
477
|
});
|
|
464
478
|
export function array(element, params) {
|
|
465
479
|
return core._array(ZodArray, element, params);
|
|
@@ -472,11 +486,9 @@ export function keyof(schema) {
|
|
|
472
486
|
export const ZodObject = /*@__PURE__*/ core.$constructor("ZodObject", (inst, def) => {
|
|
473
487
|
core.$ZodObject.init(inst, def);
|
|
474
488
|
ZodType.init(inst, def);
|
|
475
|
-
util.defineLazy(inst, "shape", () =>
|
|
476
|
-
return Object.fromEntries(Object.entries(inst._zod.def.shape));
|
|
477
|
-
});
|
|
489
|
+
util.defineLazy(inst, "shape", () => def.shape);
|
|
478
490
|
inst.keyof = () => _enum(Object.keys(inst._zod.def.shape));
|
|
479
|
-
inst.catchall = (catchall) => inst.clone({ ...inst._zod.def, catchall });
|
|
491
|
+
inst.catchall = (catchall) => inst.clone({ ...inst._zod.def, catchall: catchall });
|
|
480
492
|
inst.passthrough = () => inst.clone({ ...inst._zod.def, catchall: unknown() });
|
|
481
493
|
// inst.nonstrict = () => inst.clone({ ...inst._zod.def, catchall: api.unknown() });
|
|
482
494
|
inst.loose = () => inst.clone({ ...inst._zod.def, catchall: unknown() });
|
|
@@ -534,21 +546,20 @@ export const ZodUnion = /*@__PURE__*/ core.$constructor("ZodUnion", (inst, def)
|
|
|
534
546
|
export function union(options, params) {
|
|
535
547
|
return new ZodUnion({
|
|
536
548
|
type: "union",
|
|
537
|
-
options,
|
|
549
|
+
options: options,
|
|
538
550
|
...util.normalizeParams(params),
|
|
539
551
|
});
|
|
540
552
|
}
|
|
541
553
|
export const ZodDiscriminatedUnion = /*@__PURE__*/ core.$constructor("ZodDiscriminatedUnion", (inst, def) => {
|
|
554
|
+
ZodUnion.init(inst, def);
|
|
542
555
|
core.$ZodDiscriminatedUnion.init(inst, def);
|
|
543
|
-
ZodType.init(inst, def);
|
|
544
556
|
});
|
|
545
|
-
export function discriminatedUnion(
|
|
546
|
-
|
|
547
|
-
args = args.slice(1);
|
|
548
|
-
const [options, params] = args;
|
|
557
|
+
export function discriminatedUnion(discriminator, options, params) {
|
|
558
|
+
// const [options, params] = args;
|
|
549
559
|
return new ZodDiscriminatedUnion({
|
|
550
560
|
type: "union",
|
|
551
561
|
options,
|
|
562
|
+
discriminator,
|
|
552
563
|
...util.normalizeParams(params),
|
|
553
564
|
});
|
|
554
565
|
}
|
|
@@ -556,12 +567,11 @@ export const ZodIntersection = /*@__PURE__*/ core.$constructor("ZodIntersection"
|
|
|
556
567
|
core.$ZodIntersection.init(inst, def);
|
|
557
568
|
ZodType.init(inst, def);
|
|
558
569
|
});
|
|
559
|
-
export function intersection(left, right
|
|
570
|
+
export function intersection(left, right) {
|
|
560
571
|
return new ZodIntersection({
|
|
561
572
|
type: "intersection",
|
|
562
|
-
left,
|
|
563
|
-
right,
|
|
564
|
-
...util.normalizeParams(params),
|
|
573
|
+
left: left,
|
|
574
|
+
right: right,
|
|
565
575
|
});
|
|
566
576
|
}
|
|
567
577
|
export const ZodTuple = /*@__PURE__*/ core.$constructor("ZodTuple", (inst, def) => {
|
|
@@ -569,7 +579,7 @@ export const ZodTuple = /*@__PURE__*/ core.$constructor("ZodTuple", (inst, def)
|
|
|
569
579
|
ZodType.init(inst, def);
|
|
570
580
|
inst.rest = (rest) => inst.clone({
|
|
571
581
|
...inst._zod.def,
|
|
572
|
-
rest,
|
|
582
|
+
rest: rest,
|
|
573
583
|
});
|
|
574
584
|
});
|
|
575
585
|
export function tuple(items, _paramsOrRest, _params) {
|
|
@@ -578,7 +588,7 @@ export function tuple(items, _paramsOrRest, _params) {
|
|
|
578
588
|
const rest = hasRest ? _paramsOrRest : null;
|
|
579
589
|
return new ZodTuple({
|
|
580
590
|
type: "tuple",
|
|
581
|
-
items,
|
|
591
|
+
items: items,
|
|
582
592
|
rest,
|
|
583
593
|
...util.normalizeParams(params),
|
|
584
594
|
});
|
|
@@ -593,15 +603,16 @@ export function record(keyType, valueType, params) {
|
|
|
593
603
|
return new ZodRecord({
|
|
594
604
|
type: "record",
|
|
595
605
|
keyType,
|
|
596
|
-
valueType,
|
|
606
|
+
valueType: valueType,
|
|
597
607
|
...util.normalizeParams(params),
|
|
598
608
|
});
|
|
599
609
|
}
|
|
610
|
+
// type alksjf = core.output<core.$ZodRecordKey>;
|
|
600
611
|
export function partialRecord(keyType, valueType, params) {
|
|
601
612
|
return new ZodRecord({
|
|
602
613
|
type: "record",
|
|
603
614
|
keyType: union([keyType, never()]),
|
|
604
|
-
valueType,
|
|
615
|
+
valueType: valueType,
|
|
605
616
|
...util.normalizeParams(params),
|
|
606
617
|
});
|
|
607
618
|
}
|
|
@@ -614,8 +625,8 @@ export const ZodMap = /*@__PURE__*/ core.$constructor("ZodMap", (inst, def) => {
|
|
|
614
625
|
export function map(keyType, valueType, params) {
|
|
615
626
|
return new ZodMap({
|
|
616
627
|
type: "map",
|
|
617
|
-
keyType,
|
|
618
|
-
valueType,
|
|
628
|
+
keyType: keyType,
|
|
629
|
+
valueType: valueType,
|
|
619
630
|
...util.normalizeParams(params),
|
|
620
631
|
});
|
|
621
632
|
}
|
|
@@ -630,7 +641,7 @@ export const ZodSet = /*@__PURE__*/ core.$constructor("ZodSet", (inst, def) => {
|
|
|
630
641
|
export function set(valueType, params) {
|
|
631
642
|
return new ZodSet({
|
|
632
643
|
type: "set",
|
|
633
|
-
valueType,
|
|
644
|
+
valueType: valueType,
|
|
634
645
|
...util.normalizeParams(params),
|
|
635
646
|
});
|
|
636
647
|
}
|
|
@@ -700,6 +711,14 @@ export const ZodLiteral = /*@__PURE__*/ core.$constructor("ZodLiteral", (inst, d
|
|
|
700
711
|
core.$ZodLiteral.init(inst, def);
|
|
701
712
|
ZodType.init(inst, def);
|
|
702
713
|
inst.values = new Set(def.values);
|
|
714
|
+
Object.defineProperty(inst, "value", {
|
|
715
|
+
get() {
|
|
716
|
+
if (def.values.length > 1) {
|
|
717
|
+
throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");
|
|
718
|
+
}
|
|
719
|
+
return def.values[0];
|
|
720
|
+
},
|
|
721
|
+
});
|
|
703
722
|
});
|
|
704
723
|
export function literal(value, params) {
|
|
705
724
|
return new ZodLiteral({
|
|
@@ -713,7 +732,7 @@ export const ZodFile = /*@__PURE__*/ core.$constructor("ZodFile", (inst, def) =>
|
|
|
713
732
|
ZodType.init(inst, def);
|
|
714
733
|
inst.min = (size, params) => inst.check(core._minSize(size, params));
|
|
715
734
|
inst.max = (size, params) => inst.check(core._maxSize(size, params));
|
|
716
|
-
inst.mime = (types, params) => inst.check(core._mime(types, params));
|
|
735
|
+
inst.mime = (types, params) => inst.check(core._mime(Array.isArray(types) ? types : [types], params));
|
|
717
736
|
});
|
|
718
737
|
export function file(params) {
|
|
719
738
|
return core._file(ZodFile, params);
|
|
@@ -734,7 +753,7 @@ export const ZodTransform = /*@__PURE__*/ core.$constructor("ZodTransform", (ins
|
|
|
734
753
|
_issue.code ?? (_issue.code = "custom");
|
|
735
754
|
_issue.input ?? (_issue.input = payload.value);
|
|
736
755
|
_issue.inst ?? (_issue.inst = inst);
|
|
737
|
-
_issue.continue ?? (_issue.continue =
|
|
756
|
+
_issue.continue ?? (_issue.continue = true);
|
|
738
757
|
payload.issues.push(util.issue(_issue));
|
|
739
758
|
}
|
|
740
759
|
};
|
|
@@ -749,11 +768,10 @@ export const ZodTransform = /*@__PURE__*/ core.$constructor("ZodTransform", (ins
|
|
|
749
768
|
return payload;
|
|
750
769
|
};
|
|
751
770
|
});
|
|
752
|
-
export function transform(fn
|
|
771
|
+
export function transform(fn) {
|
|
753
772
|
return new ZodTransform({
|
|
754
773
|
type: "transform",
|
|
755
774
|
transform: fn,
|
|
756
|
-
...util.normalizeParams(params),
|
|
757
775
|
});
|
|
758
776
|
}
|
|
759
777
|
export const ZodOptional = /*@__PURE__*/ core.$constructor("ZodOptional", (inst, def) => {
|
|
@@ -761,11 +779,10 @@ export const ZodOptional = /*@__PURE__*/ core.$constructor("ZodOptional", (inst,
|
|
|
761
779
|
ZodType.init(inst, def);
|
|
762
780
|
inst.unwrap = () => inst._zod.def.innerType;
|
|
763
781
|
});
|
|
764
|
-
export function optional(innerType
|
|
782
|
+
export function optional(innerType) {
|
|
765
783
|
return new ZodOptional({
|
|
766
784
|
type: "optional",
|
|
767
|
-
innerType,
|
|
768
|
-
...util.normalizeParams(params),
|
|
785
|
+
innerType: innerType,
|
|
769
786
|
});
|
|
770
787
|
}
|
|
771
788
|
export const ZodNullable = /*@__PURE__*/ core.$constructor("ZodNullable", (inst, def) => {
|
|
@@ -773,11 +790,10 @@ export const ZodNullable = /*@__PURE__*/ core.$constructor("ZodNullable", (inst,
|
|
|
773
790
|
ZodType.init(inst, def);
|
|
774
791
|
inst.unwrap = () => inst._zod.def.innerType;
|
|
775
792
|
});
|
|
776
|
-
export function nullable(innerType
|
|
793
|
+
export function nullable(innerType) {
|
|
777
794
|
return new ZodNullable({
|
|
778
795
|
type: "nullable",
|
|
779
|
-
innerType,
|
|
780
|
-
...util.normalizeParams(params),
|
|
796
|
+
innerType: innerType,
|
|
781
797
|
});
|
|
782
798
|
}
|
|
783
799
|
// nullish
|
|
@@ -790,12 +806,27 @@ export const ZodDefault = /*@__PURE__*/ core.$constructor("ZodDefault", (inst, d
|
|
|
790
806
|
inst.unwrap = () => inst._zod.def.innerType;
|
|
791
807
|
inst.removeDefault = inst.unwrap;
|
|
792
808
|
});
|
|
793
|
-
export function _default(innerType, defaultValue
|
|
809
|
+
export function _default(innerType, defaultValue) {
|
|
794
810
|
return new ZodDefault({
|
|
795
811
|
type: "default",
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
812
|
+
innerType: innerType,
|
|
813
|
+
get defaultValue() {
|
|
814
|
+
return typeof defaultValue === "function" ? defaultValue() : defaultValue;
|
|
815
|
+
},
|
|
816
|
+
});
|
|
817
|
+
}
|
|
818
|
+
export const ZodPrefault = /*@__PURE__*/ core.$constructor("ZodPrefault", (inst, def) => {
|
|
819
|
+
core.$ZodPrefault.init(inst, def);
|
|
820
|
+
ZodType.init(inst, def);
|
|
821
|
+
inst.unwrap = () => inst._zod.def.innerType;
|
|
822
|
+
});
|
|
823
|
+
export function prefault(innerType, defaultValue) {
|
|
824
|
+
return new ZodPrefault({
|
|
825
|
+
type: "prefault",
|
|
826
|
+
innerType: innerType,
|
|
827
|
+
get defaultValue() {
|
|
828
|
+
return typeof defaultValue === "function" ? defaultValue() : defaultValue;
|
|
829
|
+
},
|
|
799
830
|
});
|
|
800
831
|
}
|
|
801
832
|
export const ZodNonOptional = /*@__PURE__*/ core.$constructor("ZodNonOptional", (inst, def) => {
|
|
@@ -806,7 +837,7 @@ export const ZodNonOptional = /*@__PURE__*/ core.$constructor("ZodNonOptional",
|
|
|
806
837
|
export function nonoptional(innerType, params) {
|
|
807
838
|
return new ZodNonOptional({
|
|
808
839
|
type: "nonoptional",
|
|
809
|
-
innerType,
|
|
840
|
+
innerType: innerType,
|
|
810
841
|
...util.normalizeParams(params),
|
|
811
842
|
});
|
|
812
843
|
}
|
|
@@ -815,11 +846,10 @@ export const ZodSuccess = /*@__PURE__*/ core.$constructor("ZodSuccess", (inst, d
|
|
|
815
846
|
ZodType.init(inst, def);
|
|
816
847
|
inst.unwrap = () => inst._zod.def.innerType;
|
|
817
848
|
});
|
|
818
|
-
export function success(innerType
|
|
849
|
+
export function success(innerType) {
|
|
819
850
|
return new ZodSuccess({
|
|
820
851
|
type: "success",
|
|
821
|
-
innerType,
|
|
822
|
-
...util.normalizeParams(params),
|
|
852
|
+
innerType: innerType,
|
|
823
853
|
});
|
|
824
854
|
}
|
|
825
855
|
export const ZodCatch = /*@__PURE__*/ core.$constructor("ZodCatch", (inst, def) => {
|
|
@@ -828,12 +858,11 @@ export const ZodCatch = /*@__PURE__*/ core.$constructor("ZodCatch", (inst, def)
|
|
|
828
858
|
inst.unwrap = () => inst._zod.def.innerType;
|
|
829
859
|
inst.removeCatch = inst.unwrap;
|
|
830
860
|
});
|
|
831
|
-
function _catch(innerType, catchValue
|
|
861
|
+
function _catch(innerType, catchValue) {
|
|
832
862
|
return new ZodCatch({
|
|
833
863
|
type: "catch",
|
|
834
|
-
innerType,
|
|
864
|
+
innerType: innerType,
|
|
835
865
|
catchValue: (typeof catchValue === "function" ? catchValue : () => catchValue),
|
|
836
|
-
...util.normalizeParams(params),
|
|
837
866
|
});
|
|
838
867
|
}
|
|
839
868
|
export { _catch as catch };
|
|
@@ -850,23 +879,22 @@ export const ZodPipe = /*@__PURE__*/ core.$constructor("ZodPipe", (inst, def) =>
|
|
|
850
879
|
inst.in = def.in;
|
|
851
880
|
inst.out = def.out;
|
|
852
881
|
});
|
|
853
|
-
export function pipe(in_, out
|
|
882
|
+
export function pipe(in_, out) {
|
|
854
883
|
return new ZodPipe({
|
|
855
884
|
type: "pipe",
|
|
856
885
|
in: in_,
|
|
857
|
-
out,
|
|
858
|
-
...util.normalizeParams(params),
|
|
886
|
+
out: out,
|
|
887
|
+
// ...util.normalizeParams(params),
|
|
859
888
|
});
|
|
860
889
|
}
|
|
861
890
|
export const ZodReadonly = /*@__PURE__*/ core.$constructor("ZodReadonly", (inst, def) => {
|
|
862
891
|
core.$ZodReadonly.init(inst, def);
|
|
863
892
|
ZodType.init(inst, def);
|
|
864
893
|
});
|
|
865
|
-
export function readonly(innerType
|
|
894
|
+
export function readonly(innerType) {
|
|
866
895
|
return new ZodReadonly({
|
|
867
896
|
type: "readonly",
|
|
868
|
-
innerType,
|
|
869
|
-
...util.normalizeParams(params),
|
|
897
|
+
innerType: innerType,
|
|
870
898
|
});
|
|
871
899
|
}
|
|
872
900
|
export const ZodTemplateLiteral = /*@__PURE__*/ core.$constructor("ZodTemplateLiteral", (inst, def) => {
|
|
@@ -888,7 +916,7 @@ export const ZodLazy = /*@__PURE__*/ core.$constructor("ZodLazy", (inst, def) =>
|
|
|
888
916
|
export function lazy(getter) {
|
|
889
917
|
return new ZodLazy({
|
|
890
918
|
type: "lazy",
|
|
891
|
-
getter,
|
|
919
|
+
getter: getter,
|
|
892
920
|
});
|
|
893
921
|
}
|
|
894
922
|
export const ZodPromise = /*@__PURE__*/ core.$constructor("ZodPromise", (inst, def) => {
|
|
@@ -896,11 +924,10 @@ export const ZodPromise = /*@__PURE__*/ core.$constructor("ZodPromise", (inst, d
|
|
|
896
924
|
ZodType.init(inst, def);
|
|
897
925
|
inst.unwrap = () => inst._zod.def.innerType;
|
|
898
926
|
});
|
|
899
|
-
export function promise(innerType
|
|
927
|
+
export function promise(innerType) {
|
|
900
928
|
return new ZodPromise({
|
|
901
929
|
type: "promise",
|
|
902
|
-
innerType,
|
|
903
|
-
...util.normalizeParams(params),
|
|
930
|
+
innerType: innerType,
|
|
904
931
|
});
|
|
905
932
|
}
|
|
906
933
|
export const ZodCustom = /*@__PURE__*/ core.$constructor("ZodCustom", (inst, def) => {
|
|
@@ -908,10 +935,10 @@ export const ZodCustom = /*@__PURE__*/ core.$constructor("ZodCustom", (inst, def
|
|
|
908
935
|
ZodType.init(inst, def);
|
|
909
936
|
});
|
|
910
937
|
// custom checks
|
|
911
|
-
export function check(fn
|
|
938
|
+
export function check(fn) {
|
|
912
939
|
const ch = new core.$ZodCheck({
|
|
913
940
|
check: "custom",
|
|
914
|
-
...util.normalizeParams(params),
|
|
941
|
+
// ...util.normalizeParams(params),
|
|
915
942
|
});
|
|
916
943
|
ch._zod.check = fn;
|
|
917
944
|
return ch;
|
|
@@ -920,10 +947,10 @@ export function custom(fn, _params) {
|
|
|
920
947
|
return core._custom(ZodCustom, fn ?? (() => true), _params);
|
|
921
948
|
}
|
|
922
949
|
export function refine(fn, _params = {}) {
|
|
923
|
-
return core.
|
|
950
|
+
return core._refine(ZodCustom, fn, _params);
|
|
924
951
|
}
|
|
925
952
|
// superRefine
|
|
926
|
-
export function superRefine(fn
|
|
953
|
+
export function superRefine(fn) {
|
|
927
954
|
const ch = check((payload) => {
|
|
928
955
|
payload.addIssue = (issue) => {
|
|
929
956
|
if (typeof issue === "string") {
|
|
@@ -942,39 +969,38 @@ export function superRefine(fn, params) {
|
|
|
942
969
|
}
|
|
943
970
|
};
|
|
944
971
|
return fn(payload.value, payload);
|
|
945
|
-
}
|
|
972
|
+
});
|
|
946
973
|
return ch;
|
|
947
974
|
}
|
|
948
|
-
// instanceof
|
|
949
|
-
class Class {
|
|
950
|
-
constructor(..._args) { }
|
|
951
|
-
}
|
|
952
975
|
function _instanceof(cls, params = {
|
|
953
976
|
error: `Input not instance of ${cls.name}`,
|
|
954
977
|
}) {
|
|
955
|
-
|
|
978
|
+
const inst = new ZodCustom({
|
|
956
979
|
type: "custom",
|
|
957
980
|
check: "custom",
|
|
958
981
|
fn: (data) => data instanceof cls,
|
|
959
982
|
abort: true,
|
|
960
983
|
...util.normalizeParams(params),
|
|
961
984
|
});
|
|
985
|
+
inst._zod.bag.Class = cls;
|
|
986
|
+
return inst;
|
|
962
987
|
}
|
|
963
988
|
export { _instanceof as instanceof };
|
|
964
989
|
// stringbool
|
|
965
|
-
export const stringbool =
|
|
966
|
-
/*@__PURE__*/ core._stringbool.bind(null, {
|
|
990
|
+
export const stringbool = (...args) => core._stringbool({
|
|
967
991
|
Pipe: ZodPipe,
|
|
968
992
|
Boolean: ZodBoolean,
|
|
969
|
-
|
|
970
|
-
|
|
993
|
+
String: ZodString,
|
|
994
|
+
Transform: ZodTransform,
|
|
995
|
+
}, ...args);
|
|
971
996
|
export function json(params) {
|
|
972
997
|
const jsonSchema = lazy(() => {
|
|
973
998
|
return union([string(params), number(), boolean(), _null(), array(jsonSchema), record(string(), jsonSchema)]);
|
|
974
999
|
});
|
|
975
1000
|
return jsonSchema;
|
|
976
1001
|
}
|
|
1002
|
+
// preprocess
|
|
977
1003
|
// /** @deprecated Use `z.pipe()` and `z.transform()` instead. */
|
|
978
|
-
export function preprocess(fn, schema
|
|
979
|
-
return pipe(transform(fn
|
|
1004
|
+
export function preprocess(fn, schema) {
|
|
1005
|
+
return pipe(transform(fn), schema);
|
|
980
1006
|
}
|