zod-compiler 0.1.1 → 1.0.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/LICENSE +21 -0
- package/README.md +381 -28
- package/dist/cli/commands/check.d.ts +9 -0
- package/dist/cli/commands/check.d.ts.map +1 -0
- package/dist/cli/commands/check.js +150 -0
- package/dist/cli/commands/check.js.map +1 -0
- package/dist/cli/commands/generate.d.ts +33 -0
- package/dist/cli/commands/generate.d.ts.map +1 -0
- package/dist/cli/commands/generate.js +142 -0
- package/dist/cli/commands/generate.js.map +1 -0
- package/dist/cli/commands/watch.d.ts +33 -0
- package/dist/cli/commands/watch.d.ts.map +1 -0
- package/dist/cli/commands/watch.js +166 -0
- package/dist/cli/commands/watch.js.map +1 -0
- package/dist/cli/emitter.d.ts +21 -0
- package/dist/cli/emitter.d.ts.map +1 -0
- package/dist/cli/emitter.js +64 -0
- package/dist/cli/emitter.js.map +1 -0
- package/dist/cli/errors.d.ts +2 -0
- package/dist/cli/errors.d.ts.map +1 -0
- package/dist/cli/errors.js +4 -0
- package/dist/cli/errors.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +181 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/logger.d.ts +18 -0
- package/dist/cli/logger.d.ts.map +1 -0
- package/dist/cli/logger.js +46 -0
- package/dist/cli/logger.js.map +1 -0
- package/dist/core/codegen/context.d.ts +138 -0
- package/dist/core/codegen/context.d.ts.map +1 -0
- package/dist/core/codegen/context.js +213 -0
- package/dist/core/codegen/context.js.map +1 -0
- package/dist/core/codegen/emit-issue.d.ts +74 -0
- package/dist/core/codegen/emit-issue.d.ts.map +1 -0
- package/dist/core/codegen/emit-issue.js +116 -0
- package/dist/core/codegen/emit-issue.js.map +1 -0
- package/dist/core/codegen/emit.d.ts +8 -0
- package/dist/core/codegen/emit.d.ts.map +1 -0
- package/dist/core/codegen/emit.js +16 -0
- package/dist/core/codegen/emit.js.map +1 -0
- package/dist/core/codegen/fast-path.d.ts +17 -0
- package/dist/core/codegen/fast-path.d.ts.map +1 -0
- package/dist/core/codegen/fast-path.js +114 -0
- package/dist/core/codegen/fast-path.js.map +1 -0
- package/dist/core/codegen/index.d.ts +19 -0
- package/dist/core/codegen/index.d.ts.map +1 -0
- package/dist/core/codegen/index.js +54 -0
- package/dist/core/codegen/index.js.map +1 -0
- package/dist/core/codegen/issue-decls.d.ts +37 -0
- package/dist/core/codegen/issue-decls.d.ts.map +1 -0
- package/dist/core/codegen/issue-decls.js +47 -0
- package/dist/core/codegen/issue-decls.js.map +1 -0
- package/dist/core/codegen/schemas/any.d.ts +5 -0
- package/dist/core/codegen/schemas/any.d.ts.map +1 -0
- package/dist/core/codegen/schemas/any.js +7 -0
- package/dist/core/codegen/schemas/any.js.map +1 -0
- package/dist/core/codegen/schemas/array.d.ts +7 -0
- package/dist/core/codegen/schemas/array.d.ts.map +1 -0
- package/dist/core/codegen/schemas/array.js +86 -0
- package/dist/core/codegen/schemas/array.js.map +1 -0
- package/dist/core/codegen/schemas/bigint.d.ts +5 -0
- package/dist/core/codegen/schemas/bigint.d.ts.map +1 -0
- package/dist/core/codegen/schemas/bigint.js +80 -0
- package/dist/core/codegen/schemas/bigint.js.map +1 -0
- package/dist/core/codegen/schemas/boolean.d.ts +5 -0
- package/dist/core/codegen/schemas/boolean.d.ts.map +1 -0
- package/dist/core/codegen/schemas/boolean.js +20 -0
- package/dist/core/codegen/schemas/boolean.js.map +1 -0
- package/dist/core/codegen/schemas/catch.d.ts +7 -0
- package/dist/core/codegen/schemas/catch.d.ts.map +1 -0
- package/dist/core/codegen/schemas/catch.js +26 -0
- package/dist/core/codegen/schemas/catch.js.map +1 -0
- package/dist/core/codegen/schemas/date.d.ts +5 -0
- package/dist/core/codegen/schemas/date.d.ts.map +1 -0
- package/dist/core/codegen/schemas/date.js +79 -0
- package/dist/core/codegen/schemas/date.js.map +1 -0
- package/dist/core/codegen/schemas/default.d.ts +5 -0
- package/dist/core/codegen/schemas/default.d.ts.map +1 -0
- package/dist/core/codegen/schemas/default.js +17 -0
- package/dist/core/codegen/schemas/default.js.map +1 -0
- package/dist/core/codegen/schemas/discriminated-union.d.ts +7 -0
- package/dist/core/codegen/schemas/discriminated-union.d.ts.map +1 -0
- package/dist/core/codegen/schemas/discriminated-union.js +45 -0
- package/dist/core/codegen/schemas/discriminated-union.js.map +1 -0
- package/dist/core/codegen/schemas/effect.d.ts +17 -0
- package/dist/core/codegen/schemas/effect.d.ts.map +1 -0
- package/dist/core/codegen/schemas/effect.js +35 -0
- package/dist/core/codegen/schemas/effect.js.map +1 -0
- package/dist/core/codegen/schemas/enum.d.ts +5 -0
- package/dist/core/codegen/schemas/enum.d.ts.map +1 -0
- package/dist/core/codegen/schemas/enum.js +33 -0
- package/dist/core/codegen/schemas/enum.js.map +1 -0
- package/dist/core/codegen/schemas/fallback.d.ts +4 -0
- package/dist/core/codegen/schemas/fallback.d.ts.map +1 -0
- package/dist/core/codegen/schemas/fallback.js +23 -0
- package/dist/core/codegen/schemas/fallback.js.map +1 -0
- package/dist/core/codegen/schemas/file.d.ts +5 -0
- package/dist/core/codegen/schemas/file.d.ts.map +1 -0
- package/dist/core/codegen/schemas/file.js +78 -0
- package/dist/core/codegen/schemas/file.js.map +1 -0
- package/dist/core/codegen/schemas/intersection.d.ts +7 -0
- package/dist/core/codegen/schemas/intersection.d.ts.map +1 -0
- package/dist/core/codegen/schemas/intersection.js +13 -0
- package/dist/core/codegen/schemas/intersection.js.map +1 -0
- package/dist/core/codegen/schemas/literal.d.ts +5 -0
- package/dist/core/codegen/schemas/literal.d.ts.map +1 -0
- package/dist/core/codegen/schemas/literal.js +31 -0
- package/dist/core/codegen/schemas/literal.js.map +1 -0
- package/dist/core/codegen/schemas/map.d.ts +7 -0
- package/dist/core/codegen/schemas/map.d.ts.map +1 -0
- package/dist/core/codegen/schemas/map.js +46 -0
- package/dist/core/codegen/schemas/map.js.map +1 -0
- package/dist/core/codegen/schemas/nan.d.ts +5 -0
- package/dist/core/codegen/schemas/nan.d.ts.map +1 -0
- package/dist/core/codegen/schemas/nan.js +13 -0
- package/dist/core/codegen/schemas/nan.js.map +1 -0
- package/dist/core/codegen/schemas/never.d.ts +5 -0
- package/dist/core/codegen/schemas/never.d.ts.map +1 -0
- package/dist/core/codegen/schemas/never.js +11 -0
- package/dist/core/codegen/schemas/never.js.map +1 -0
- package/dist/core/codegen/schemas/null.d.ts +5 -0
- package/dist/core/codegen/schemas/null.d.ts.map +1 -0
- package/dist/core/codegen/schemas/null.js +13 -0
- package/dist/core/codegen/schemas/null.js.map +1 -0
- package/dist/core/codegen/schemas/nullable.d.ts +7 -0
- package/dist/core/codegen/schemas/nullable.d.ts.map +1 -0
- package/dist/core/codegen/schemas/nullable.js +15 -0
- package/dist/core/codegen/schemas/nullable.js.map +1 -0
- package/dist/core/codegen/schemas/number.d.ts +5 -0
- package/dist/core/codegen/schemas/number.d.ts.map +1 -0
- package/dist/core/codegen/schemas/number.js +186 -0
- package/dist/core/codegen/schemas/number.js.map +1 -0
- package/dist/core/codegen/schemas/object.d.ts +7 -0
- package/dist/core/codegen/schemas/object.d.ts.map +1 -0
- package/dist/core/codegen/schemas/object.js +65 -0
- package/dist/core/codegen/schemas/object.js.map +1 -0
- package/dist/core/codegen/schemas/optional.d.ts +7 -0
- package/dist/core/codegen/schemas/optional.d.ts.map +1 -0
- package/dist/core/codegen/schemas/optional.js +15 -0
- package/dist/core/codegen/schemas/optional.js.map +1 -0
- package/dist/core/codegen/schemas/pipe.d.ts +7 -0
- package/dist/core/codegen/schemas/pipe.d.ts.map +1 -0
- package/dist/core/codegen/schemas/pipe.js +18 -0
- package/dist/core/codegen/schemas/pipe.js.map +1 -0
- package/dist/core/codegen/schemas/readonly.d.ts +7 -0
- package/dist/core/codegen/schemas/readonly.d.ts.map +1 -0
- package/dist/core/codegen/schemas/readonly.js +7 -0
- package/dist/core/codegen/schemas/readonly.js.map +1 -0
- package/dist/core/codegen/schemas/record.d.ts +7 -0
- package/dist/core/codegen/schemas/record.d.ts.map +1 -0
- package/dist/core/codegen/schemas/record.js +53 -0
- package/dist/core/codegen/schemas/record.js.map +1 -0
- package/dist/core/codegen/schemas/recursive-ref.d.ts +5 -0
- package/dist/core/codegen/schemas/recursive-ref.d.ts.map +1 -0
- package/dist/core/codegen/schemas/recursive-ref.js +24 -0
- package/dist/core/codegen/schemas/recursive-ref.js.map +1 -0
- package/dist/core/codegen/schemas/set.d.ts +7 -0
- package/dist/core/codegen/schemas/set.d.ts.map +1 -0
- package/dist/core/codegen/schemas/set.js +88 -0
- package/dist/core/codegen/schemas/set.js.map +1 -0
- package/dist/core/codegen/schemas/string-bool.d.ts +4 -0
- package/dist/core/codegen/schemas/string-bool.d.ts.map +1 -0
- package/dist/core/codegen/schemas/string-bool.js +39 -0
- package/dist/core/codegen/schemas/string-bool.js.map +1 -0
- package/dist/core/codegen/schemas/string.d.ts +5 -0
- package/dist/core/codegen/schemas/string.d.ts.map +1 -0
- package/dist/core/codegen/schemas/string.js +226 -0
- package/dist/core/codegen/schemas/string.js.map +1 -0
- package/dist/core/codegen/schemas/symbol.d.ts +5 -0
- package/dist/core/codegen/schemas/symbol.d.ts.map +1 -0
- package/dist/core/codegen/schemas/symbol.js +13 -0
- package/dist/core/codegen/schemas/symbol.js.map +1 -0
- package/dist/core/codegen/schemas/template-literal.d.ts +5 -0
- package/dist/core/codegen/schemas/template-literal.d.ts.map +1 -0
- package/dist/core/codegen/schemas/template-literal.js +16 -0
- package/dist/core/codegen/schemas/template-literal.js.map +1 -0
- package/dist/core/codegen/schemas/tuple.d.ts +15 -0
- package/dist/core/codegen/schemas/tuple.d.ts.map +1 -0
- package/dist/core/codegen/schemas/tuple.js +111 -0
- package/dist/core/codegen/schemas/tuple.js.map +1 -0
- package/dist/core/codegen/schemas/undefined.d.ts +5 -0
- package/dist/core/codegen/schemas/undefined.d.ts.map +1 -0
- package/dist/core/codegen/schemas/undefined.js +13 -0
- package/dist/core/codegen/schemas/undefined.js.map +1 -0
- package/dist/core/codegen/schemas/union.d.ts +7 -0
- package/dist/core/codegen/schemas/union.d.ts.map +1 -0
- package/dist/core/codegen/schemas/union.js +95 -0
- package/dist/core/codegen/schemas/union.js.map +1 -0
- package/dist/core/codegen/schemas/unknown.d.ts +5 -0
- package/dist/core/codegen/schemas/unknown.d.ts.map +1 -0
- package/dist/core/codegen/schemas/unknown.js +7 -0
- package/dist/core/codegen/schemas/unknown.js.map +1 -0
- package/dist/core/codegen/schemas/void.d.ts +5 -0
- package/dist/core/codegen/schemas/void.d.ts.map +1 -0
- package/dist/core/codegen/schemas/void.js +13 -0
- package/dist/core/codegen/schemas/void.js.map +1 -0
- package/dist/core/codegen/slow-path.d.ts +5 -0
- package/dist/core/codegen/slow-path.d.ts.map +1 -0
- package/dist/core/codegen/slow-path.js +113 -0
- package/dist/core/codegen/slow-path.js.map +1 -0
- package/dist/core/codegen/well-known-regex.d.ts +27 -0
- package/dist/core/codegen/well-known-regex.d.ts.map +1 -0
- package/dist/core/codegen/well-known-regex.js +51 -0
- package/dist/core/codegen/well-known-regex.js.map +1 -0
- package/dist/core/compile.d.ts +19 -0
- package/dist/core/compile.d.ts.map +1 -0
- package/dist/core/compile.js +37 -0
- package/dist/core/compile.js.map +1 -0
- package/dist/core/diagnostic.d.ts +46 -0
- package/dist/core/diagnostic.d.ts.map +1 -0
- package/dist/core/diagnostic.js +174 -0
- package/dist/core/diagnostic.js.map +1 -0
- package/dist/core/extract/checks.d.ts +35 -0
- package/dist/core/extract/checks.d.ts.map +1 -0
- package/dist/core/extract/checks.js +249 -0
- package/dist/core/extract/checks.js.map +1 -0
- package/dist/core/extract/effects.d.ts +12 -0
- package/dist/core/extract/effects.d.ts.map +1 -0
- package/dist/core/extract/effects.js +204 -0
- package/dist/core/extract/effects.js.map +1 -0
- package/dist/core/extract/extractors/any.d.ts +3 -0
- package/dist/core/extract/extractors/any.d.ts.map +1 -0
- package/dist/core/extract/extractors/any.js +2 -0
- package/dist/core/extract/extractors/any.js.map +1 -0
- package/dist/core/extract/extractors/array.d.ts +4 -0
- package/dist/core/extract/extractors/array.d.ts.map +1 -0
- package/dist/core/extract/extractors/array.js +19 -0
- package/dist/core/extract/extractors/array.js.map +1 -0
- package/dist/core/extract/extractors/bigint.d.ts +4 -0
- package/dist/core/extract/extractors/bigint.d.ts.map +1 -0
- package/dist/core/extract/extractors/bigint.js +70 -0
- package/dist/core/extract/extractors/bigint.js.map +1 -0
- package/dist/core/extract/extractors/boolean.d.ts +3 -0
- package/dist/core/extract/extractors/boolean.d.ts.map +1 -0
- package/dist/core/extract/extractors/boolean.js +5 -0
- package/dist/core/extract/extractors/boolean.js.map +1 -0
- package/dist/core/extract/extractors/catch.d.ts +11 -0
- package/dist/core/extract/extractors/catch.d.ts.map +1 -0
- package/dist/core/extract/extractors/catch.js +20 -0
- package/dist/core/extract/extractors/catch.js.map +1 -0
- package/dist/core/extract/extractors/date.d.ts +4 -0
- package/dist/core/extract/extractors/date.d.ts.map +1 -0
- package/dist/core/extract/extractors/date.js +49 -0
- package/dist/core/extract/extractors/date.js.map +1 -0
- package/dist/core/extract/extractors/default.d.ts +4 -0
- package/dist/core/extract/extractors/default.d.ts.map +1 -0
- package/dist/core/extract/extractors/default.js +11 -0
- package/dist/core/extract/extractors/default.js.map +1 -0
- package/dist/core/extract/extractors/enum.d.ts +3 -0
- package/dist/core/extract/extractors/enum.d.ts.map +1 -0
- package/dist/core/extract/extractors/enum.js +15 -0
- package/dist/core/extract/extractors/enum.js.map +1 -0
- package/dist/core/extract/extractors/file.d.ts +4 -0
- package/dist/core/extract/extractors/file.d.ts.map +1 -0
- package/dist/core/extract/extractors/file.js +24 -0
- package/dist/core/extract/extractors/file.js.map +1 -0
- package/dist/core/extract/extractors/index.d.ts +32 -0
- package/dist/core/extract/extractors/index.d.ts.map +1 -0
- package/dist/core/extract/extractors/index.js +32 -0
- package/dist/core/extract/extractors/index.js.map +1 -0
- package/dist/core/extract/extractors/intersection.d.ts +3 -0
- package/dist/core/extract/extractors/intersection.d.ts.map +1 -0
- package/dist/core/extract/extractors/intersection.js +14 -0
- package/dist/core/extract/extractors/intersection.js.map +1 -0
- package/dist/core/extract/extractors/lazy.d.ts +4 -0
- package/dist/core/extract/extractors/lazy.d.ts.map +1 -0
- package/dist/core/extract/extractors/lazy.js +23 -0
- package/dist/core/extract/extractors/lazy.js.map +1 -0
- package/dist/core/extract/extractors/literal.d.ts +3 -0
- package/dist/core/extract/extractors/literal.d.ts.map +1 -0
- package/dist/core/extract/extractors/literal.js +2 -0
- package/dist/core/extract/extractors/literal.js.map +1 -0
- package/dist/core/extract/extractors/map.d.ts +4 -0
- package/dist/core/extract/extractors/map.d.ts.map +1 -0
- package/dist/core/extract/extractors/map.js +6 -0
- package/dist/core/extract/extractors/map.js.map +1 -0
- package/dist/core/extract/extractors/nan.d.ts +3 -0
- package/dist/core/extract/extractors/nan.d.ts.map +1 -0
- package/dist/core/extract/extractors/nan.js +2 -0
- package/dist/core/extract/extractors/nan.js.map +1 -0
- package/dist/core/extract/extractors/never.d.ts +3 -0
- package/dist/core/extract/extractors/never.d.ts.map +1 -0
- package/dist/core/extract/extractors/never.js +2 -0
- package/dist/core/extract/extractors/never.js.map +1 -0
- package/dist/core/extract/extractors/null.d.ts +3 -0
- package/dist/core/extract/extractors/null.d.ts.map +1 -0
- package/dist/core/extract/extractors/null.js +2 -0
- package/dist/core/extract/extractors/null.js.map +1 -0
- package/dist/core/extract/extractors/nullable.d.ts +3 -0
- package/dist/core/extract/extractors/nullable.d.ts.map +1 -0
- package/dist/core/extract/extractors/nullable.js +5 -0
- package/dist/core/extract/extractors/nullable.js.map +1 -0
- package/dist/core/extract/extractors/number.d.ts +4 -0
- package/dist/core/extract/extractors/number.d.ts.map +1 -0
- package/dist/core/extract/extractors/number.js +38 -0
- package/dist/core/extract/extractors/number.js.map +1 -0
- package/dist/core/extract/extractors/object.d.ts +4 -0
- package/dist/core/extract/extractors/object.d.ts.map +1 -0
- package/dist/core/extract/extractors/object.js +43 -0
- package/dist/core/extract/extractors/object.js.map +1 -0
- package/dist/core/extract/extractors/optional.d.ts +3 -0
- package/dist/core/extract/extractors/optional.d.ts.map +1 -0
- package/dist/core/extract/extractors/optional.js +14 -0
- package/dist/core/extract/extractors/optional.js.map +1 -0
- package/dist/core/extract/extractors/pipe.d.ts +4 -0
- package/dist/core/extract/extractors/pipe.d.ts.map +1 -0
- package/dist/core/extract/extractors/pipe.js +31 -0
- package/dist/core/extract/extractors/pipe.js.map +1 -0
- package/dist/core/extract/extractors/readonly.d.ts +9 -0
- package/dist/core/extract/extractors/readonly.d.ts.map +1 -0
- package/dist/core/extract/extractors/readonly.js +8 -0
- package/dist/core/extract/extractors/readonly.js.map +1 -0
- package/dist/core/extract/extractors/record.d.ts +4 -0
- package/dist/core/extract/extractors/record.d.ts.map +1 -0
- package/dist/core/extract/extractors/record.js +39 -0
- package/dist/core/extract/extractors/record.js.map +1 -0
- package/dist/core/extract/extractors/set.d.ts +4 -0
- package/dist/core/extract/extractors/set.d.ts.map +1 -0
- package/dist/core/extract/extractors/set.js +33 -0
- package/dist/core/extract/extractors/set.js.map +1 -0
- package/dist/core/extract/extractors/string-bool.d.ts +10 -0
- package/dist/core/extract/extractors/string-bool.d.ts.map +1 -0
- package/dist/core/extract/extractors/string-bool.js +92 -0
- package/dist/core/extract/extractors/string-bool.js.map +1 -0
- package/dist/core/extract/extractors/string.d.ts +4 -0
- package/dist/core/extract/extractors/string.d.ts.map +1 -0
- package/dist/core/extract/extractors/string.js +41 -0
- package/dist/core/extract/extractors/string.js.map +1 -0
- package/dist/core/extract/extractors/symbol.d.ts +3 -0
- package/dist/core/extract/extractors/symbol.d.ts.map +1 -0
- package/dist/core/extract/extractors/symbol.js +2 -0
- package/dist/core/extract/extractors/symbol.js.map +1 -0
- package/dist/core/extract/extractors/template-literal.d.ts +4 -0
- package/dist/core/extract/extractors/template-literal.d.ts.map +1 -0
- package/dist/core/extract/extractors/template-literal.js +8 -0
- package/dist/core/extract/extractors/template-literal.js.map +1 -0
- package/dist/core/extract/extractors/tuple.d.ts +4 -0
- package/dist/core/extract/extractors/tuple.d.ts.map +1 -0
- package/dist/core/extract/extractors/tuple.js +6 -0
- package/dist/core/extract/extractors/tuple.js.map +1 -0
- package/dist/core/extract/extractors/undefined.d.ts +3 -0
- package/dist/core/extract/extractors/undefined.d.ts.map +1 -0
- package/dist/core/extract/extractors/undefined.js +2 -0
- package/dist/core/extract/extractors/undefined.js.map +1 -0
- package/dist/core/extract/extractors/union.d.ts +4 -0
- package/dist/core/extract/extractors/union.d.ts.map +1 -0
- package/dist/core/extract/extractors/union.js +44 -0
- package/dist/core/extract/extractors/union.js.map +1 -0
- package/dist/core/extract/extractors/unknown.d.ts +3 -0
- package/dist/core/extract/extractors/unknown.d.ts.map +1 -0
- package/dist/core/extract/extractors/unknown.js +2 -0
- package/dist/core/extract/extractors/unknown.js.map +1 -0
- package/dist/core/extract/extractors/void.d.ts +3 -0
- package/dist/core/extract/extractors/void.d.ts.map +1 -0
- package/dist/core/extract/extractors/void.js +2 -0
- package/dist/core/extract/extractors/void.js.map +1 -0
- package/dist/core/extract/fallback.d.ts +4 -0
- package/dist/core/extract/fallback.d.ts.map +1 -0
- package/dist/core/extract/fallback.js +9 -0
- package/dist/core/extract/fallback.js.map +1 -0
- package/dist/core/extract/index.d.ts +11 -0
- package/dist/core/extract/index.d.ts.map +1 -0
- package/dist/core/extract/index.js +11 -0
- package/dist/core/extract/index.js.map +1 -0
- package/dist/core/extract/registry.d.ts +59 -0
- package/dist/core/extract/registry.d.ts.map +1 -0
- package/dist/core/extract/registry.js +152 -0
- package/dist/core/extract/registry.js.map +1 -0
- package/dist/core/extract/types.d.ts +114 -0
- package/dist/core/extract/types.d.ts.map +1 -0
- package/dist/core/extract/types.js +2 -0
- package/dist/core/extract/types.js.map +1 -0
- package/dist/core/iife.d.ts +38 -0
- package/dist/core/iife.d.ts.map +1 -0
- package/dist/core/iife.js +59 -0
- package/dist/core/iife.js.map +1 -0
- package/dist/core/pipeline.d.ts +26 -0
- package/dist/core/pipeline.d.ts.map +1 -0
- package/dist/core/pipeline.js +42 -0
- package/dist/core/pipeline.js.map +1 -0
- package/dist/core/types.d.ts +352 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +6 -0
- package/dist/core/types.js.map +1 -0
- package/dist/discovery.d.ts +14 -0
- package/dist/discovery.d.ts.map +1 -0
- package/dist/discovery.js +40 -0
- package/dist/discovery.js.map +1 -0
- package/dist/index.d.ts +4 -674
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -2553
- package/dist/index.js.map +1 -0
- package/dist/loader.d.ts +24 -0
- package/dist/loader.d.ts.map +1 -0
- package/dist/loader.js +129 -0
- package/dist/loader.js.map +1 -0
- package/dist/static-filter.d.ts +7 -0
- package/dist/static-filter.d.ts.map +1 -0
- package/dist/static-filter.js +396 -0
- package/dist/static-filter.js.map +1 -0
- package/dist/unplugin/bun.d.ts +3 -0
- package/dist/unplugin/bun.d.ts.map +1 -0
- package/dist/unplugin/bun.js +3 -0
- package/dist/unplugin/bun.js.map +1 -0
- package/dist/unplugin/esbuild.d.ts +3 -0
- package/dist/unplugin/esbuild.d.ts.map +1 -0
- package/dist/unplugin/esbuild.js +3 -0
- package/dist/unplugin/esbuild.js.map +1 -0
- package/dist/unplugin/farm.d.ts +3 -0
- package/dist/unplugin/farm.d.ts.map +1 -0
- package/dist/unplugin/farm.js +3 -0
- package/dist/unplugin/farm.js.map +1 -0
- package/dist/unplugin/index.d.ts +4 -0
- package/dist/unplugin/index.d.ts.map +1 -0
- package/dist/unplugin/index.js +102 -0
- package/dist/unplugin/index.js.map +1 -0
- package/dist/unplugin/rolldown.d.ts +3 -0
- package/dist/unplugin/rolldown.d.ts.map +1 -0
- package/dist/unplugin/rolldown.js +3 -0
- package/dist/unplugin/rolldown.js.map +1 -0
- package/dist/unplugin/rollup.d.ts +3 -0
- package/dist/unplugin/rollup.d.ts.map +1 -0
- package/dist/unplugin/rollup.js +3 -0
- package/dist/unplugin/rollup.js.map +1 -0
- package/dist/unplugin/rspack.d.ts +3 -0
- package/dist/unplugin/rspack.d.ts.map +1 -0
- package/dist/unplugin/rspack.js +3 -0
- package/dist/unplugin/rspack.js.map +1 -0
- package/dist/unplugin/transform.d.ts +36 -0
- package/dist/unplugin/transform.d.ts.map +1 -0
- package/dist/unplugin/transform.js +292 -0
- package/dist/unplugin/transform.js.map +1 -0
- package/dist/unplugin/types.d.ts +67 -0
- package/dist/unplugin/types.d.ts.map +1 -0
- package/dist/unplugin/types.js +19 -0
- package/dist/unplugin/types.js.map +1 -0
- package/dist/unplugin/virtual.d.ts +24 -0
- package/dist/unplugin/virtual.d.ts.map +1 -0
- package/dist/unplugin/virtual.js +62 -0
- package/dist/unplugin/virtual.js.map +1 -0
- package/dist/unplugin/vite.d.ts +3 -0
- package/dist/unplugin/vite.d.ts.map +1 -0
- package/dist/unplugin/vite.js +3 -0
- package/dist/unplugin/vite.js.map +1 -0
- package/dist/unplugin/webpack.d.ts +3 -0
- package/dist/unplugin/webpack.d.ts.map +1 -0
- package/dist/unplugin/webpack.js +3 -0
- package/dist/unplugin/webpack.js.map +1 -0
- package/package.json +110 -51
- package/dist/index.mjs +0 -2539
- package/dist/standalone.d.ts +0 -386
- package/dist/standalone.js +0 -540
- package/dist/standalone.mjs +0 -531
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SchemaIR } from "../../types.js";
|
|
2
|
+
import type { ExtractorContext, ZodDef } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* z.catch(): the catch value is computed PER PARSE in Zod — it may be a
|
|
5
|
+
* function reading the failure ctx ({ value, issues, error, input }) or an
|
|
6
|
+
* impure factory (() => new Date()). Baking a build-time evaluation would
|
|
7
|
+
* freeze those, so the compiled validator calls the original schema's
|
|
8
|
+
* catchValue at runtime through the __rf table (same mechanism as default).
|
|
9
|
+
*/
|
|
10
|
+
export declare function extractCatch(def: ZodDef, ctx: ExtractorContext): SchemaIR;
|
|
11
|
+
//# sourceMappingURL=catch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catch.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/catch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE5D;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAYzE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* z.catch(): the catch value is computed PER PARSE in Zod — it may be a
|
|
3
|
+
* function reading the failure ctx ({ value, issues, error, input }) or an
|
|
4
|
+
* impure factory (() => new Date()). Baking a build-time evaluation would
|
|
5
|
+
* freeze those, so the compiled validator calls the original schema's
|
|
6
|
+
* catchValue at runtime through the __rf table (same mechanism as default).
|
|
7
|
+
*/
|
|
8
|
+
export function extractCatch(def, ctx) {
|
|
9
|
+
const inner = ctx.visit(def.innerType, "._zod.def.innerType");
|
|
10
|
+
if (inner.type === "fallback")
|
|
11
|
+
return ctx.fallback("unsupported");
|
|
12
|
+
if (ctx.refs) {
|
|
13
|
+
const refIndex = ctx.refs.length;
|
|
14
|
+
ctx.refs.push({ schema: ctx.schema, accessPath: ctx.path });
|
|
15
|
+
return { type: "catch", inner, refIndex };
|
|
16
|
+
}
|
|
17
|
+
// Without fallback tracking, the runtime catchValue cannot be referenced.
|
|
18
|
+
return ctx.fallback("unsupported");
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=catch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catch.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/catch.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,GAAqB;IAC7D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAElE,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;QACjC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAED,0EAA0E;IAC1E,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACrC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/date.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE5D,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAuCxE"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { hasUncompilableModifiers, resolveCheckMessage } from "../checks.js";
|
|
2
|
+
export function extractDate(def, ctx) {
|
|
3
|
+
const dateChecks = [];
|
|
4
|
+
if (def.checks) {
|
|
5
|
+
for (const check of def.checks) {
|
|
6
|
+
const checkDef = check._zod?.def;
|
|
7
|
+
if (!checkDef)
|
|
8
|
+
continue;
|
|
9
|
+
if (hasUncompilableModifiers(checkDef))
|
|
10
|
+
return ctx.fallback("refine");
|
|
11
|
+
const resolved = resolveCheckMessage(checkDef.error);
|
|
12
|
+
if (resolved.kind === "dynamic")
|
|
13
|
+
return ctx.fallback("refine");
|
|
14
|
+
const message = resolved.kind === "static" ? { message: resolved.message } : {};
|
|
15
|
+
if (checkDef.check === "greater_than") {
|
|
16
|
+
const v = checkDef.value;
|
|
17
|
+
const ts = new Date(v).getTime();
|
|
18
|
+
if (Number.isNaN(ts))
|
|
19
|
+
return ctx.fallback("unsupported");
|
|
20
|
+
dateChecks.push({
|
|
21
|
+
kind: "date_greater_than",
|
|
22
|
+
value: String(v),
|
|
23
|
+
timestamp: ts,
|
|
24
|
+
inclusive: checkDef.inclusive,
|
|
25
|
+
...message,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
else if (checkDef.check === "less_than") {
|
|
29
|
+
const v = checkDef.value;
|
|
30
|
+
const ts = new Date(v).getTime();
|
|
31
|
+
if (Number.isNaN(ts))
|
|
32
|
+
return ctx.fallback("unsupported");
|
|
33
|
+
dateChecks.push({
|
|
34
|
+
kind: "date_less_than",
|
|
35
|
+
value: String(v),
|
|
36
|
+
timestamp: ts,
|
|
37
|
+
inclusive: checkDef.inclusive,
|
|
38
|
+
...message,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
// Unknown check (custom refine, overwrite, ...) — never drop silently.
|
|
43
|
+
return ctx.fallback("refine");
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return { type: "date", checks: dateChecks, ...(def.coerce ? { coerce: true } : {}) };
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=date.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/date.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAG7E,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,GAAqB;IAC5D,MAAM,UAAU,GAAkB,EAAE,CAAC;IACrC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QACf,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC;YACjC,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,IAAI,wBAAwB,CAAC,QAAQ,CAAC;gBAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACtE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrD,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,IAAI,QAAQ,CAAC,KAAK,KAAK,cAAc,EAAE,CAAC;gBACtC,MAAM,CAAC,GAAG,QAAQ,CAAC,KAA0B,CAAC;gBAC9C,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBACzD,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,mBAAmB;oBACzB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;oBAChB,SAAS,EAAE,EAAE;oBACb,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,GAAG,OAAO;iBACX,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,QAAQ,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;gBAC1C,MAAM,CAAC,GAAG,QAAQ,CAAC,KAA0B,CAAC;gBAC9C,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBACzD,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,gBAAgB;oBACtB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;oBAChB,SAAS,EAAE,EAAE;oBACb,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,GAAG,OAAO;iBACX,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,uEAAuE;gBACvE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACvF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/default.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE5D,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAU3E"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function extractDefault(def, ctx) {
|
|
2
|
+
const inner = ctx.visit(def.innerType, "._zod.def.innerType");
|
|
3
|
+
if (ctx.refs) {
|
|
4
|
+
const refIndex = ctx.refs.length;
|
|
5
|
+
ctx.refs.push({ schema: ctx.schema, accessPath: ctx.path });
|
|
6
|
+
return { type: "default", inner, refIndex };
|
|
7
|
+
}
|
|
8
|
+
// Without fallback tracking, default values cannot be safely referenced at runtime.
|
|
9
|
+
return ctx.fallback("unsupported");
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=default.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/default.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,GAAqB;IAC/D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAC9D,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;QACjC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5D,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAC9C,CAAC;IAED,oFAAoF;IACpF,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACrC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/enum.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAa,MAAM,aAAa,CAAC;AAExD,eAAO,MAAM,WAAW,EAAE,SAazB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export const extractEnum = (def, ctx) => {
|
|
2
|
+
// `_zod.values` is zod's authoritative accepted-value set — for TS numeric
|
|
3
|
+
// enums it excludes reverse mappings ({A:1, "1":"A"} → values [1]), which
|
|
4
|
+
// Object.values(def.entries) would wrongly include.
|
|
5
|
+
const valueSet = ctx.schema?._zod?.values;
|
|
6
|
+
const values = valueSet !== undefined ? [...valueSet] : Object.values(def.entries);
|
|
7
|
+
if (!values.every((v) => typeof v === "string" || typeof v === "number")) {
|
|
8
|
+
return ctx.fallback("unsupported");
|
|
9
|
+
}
|
|
10
|
+
return {
|
|
11
|
+
type: "enum",
|
|
12
|
+
values: values,
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=enum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/enum.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACjD,2EAA2E;IAC3E,0EAA0E;IAC1E,oDAAoD;IACpD,MAAM,QAAQ,GAAI,GAAG,CAAC,MAAgC,EAAE,IAAI,EAAE,MAAM,CAAC;IACrE,MAAM,MAAM,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACnF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;QACzE,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IACD,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,MAA6B;KACtC,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE5D,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAkBxE"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export function extractFile(def, ctx) {
|
|
2
|
+
const fileChecks = [];
|
|
3
|
+
if (def.checks) {
|
|
4
|
+
for (const check of def.checks) {
|
|
5
|
+
const checkDef = check._zod?.def;
|
|
6
|
+
if (!checkDef)
|
|
7
|
+
continue;
|
|
8
|
+
if (checkDef.check === "min_size") {
|
|
9
|
+
fileChecks.push({ kind: "min_size", minimum: checkDef.minimum });
|
|
10
|
+
}
|
|
11
|
+
else if (checkDef.check === "max_size") {
|
|
12
|
+
fileChecks.push({ kind: "max_size", maximum: checkDef.maximum });
|
|
13
|
+
}
|
|
14
|
+
else if (checkDef.check === "mime_type") {
|
|
15
|
+
fileChecks.push({ kind: "mime_type", mime: [...checkDef.mime] });
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
return ctx.fallback("refine");
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return { type: "file", ...(fileChecks.length > 0 ? { checks: fileChecks } : {}) };
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/file.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,GAAqB;IAC5D,MAAM,UAAU,GAAkB,EAAE,CAAC;IACrC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QACf,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC;YACjC,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,IAAI,QAAQ,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBAClC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YACnE,CAAC;iBAAM,IAAI,QAAQ,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBACzC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YACnE,CAAC;iBAAM,IAAI,QAAQ,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;gBAC1C,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACpF,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export { extractAny } from "./any.js";
|
|
2
|
+
export { extractArray } from "./array.js";
|
|
3
|
+
export { extractBigint } from "./bigint.js";
|
|
4
|
+
export { extractBoolean } from "./boolean.js";
|
|
5
|
+
export { extractCatch } from "./catch.js";
|
|
6
|
+
export { extractDate } from "./date.js";
|
|
7
|
+
export { extractDefault } from "./default.js";
|
|
8
|
+
export { extractEnum } from "./enum.js";
|
|
9
|
+
export { extractIntersection } from "./intersection.js";
|
|
10
|
+
export { extractLazy } from "./lazy.js";
|
|
11
|
+
export { extractLiteral } from "./literal.js";
|
|
12
|
+
export { extractMap } from "./map.js";
|
|
13
|
+
export { extractNan } from "./nan.js";
|
|
14
|
+
export { extractNever } from "./never.js";
|
|
15
|
+
export { extractNull } from "./null.js";
|
|
16
|
+
export { extractNullable } from "./nullable.js";
|
|
17
|
+
export { extractNumber } from "./number.js";
|
|
18
|
+
export { extractObject } from "./object.js";
|
|
19
|
+
export { extractOptional } from "./optional.js";
|
|
20
|
+
export { extractPipe } from "./pipe.js";
|
|
21
|
+
export { extractReadonly } from "./readonly.js";
|
|
22
|
+
export { extractRecord } from "./record.js";
|
|
23
|
+
export { extractSet } from "./set.js";
|
|
24
|
+
export { extractString } from "./string.js";
|
|
25
|
+
export { extractSymbol } from "./symbol.js";
|
|
26
|
+
export { extractTemplateLiteral } from "./template-literal.js";
|
|
27
|
+
export { extractTuple } from "./tuple.js";
|
|
28
|
+
export { extractUndefined } from "./undefined.js";
|
|
29
|
+
export { extractUnion } from "./union.js";
|
|
30
|
+
export { extractUnknown } from "./unknown.js";
|
|
31
|
+
export { extractVoid } from "./void.js";
|
|
32
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export { extractAny } from "./any.js";
|
|
2
|
+
export { extractArray } from "./array.js";
|
|
3
|
+
export { extractBigint } from "./bigint.js";
|
|
4
|
+
export { extractBoolean } from "./boolean.js";
|
|
5
|
+
export { extractCatch } from "./catch.js";
|
|
6
|
+
export { extractDate } from "./date.js";
|
|
7
|
+
export { extractDefault } from "./default.js";
|
|
8
|
+
export { extractEnum } from "./enum.js";
|
|
9
|
+
export { extractIntersection } from "./intersection.js";
|
|
10
|
+
export { extractLazy } from "./lazy.js";
|
|
11
|
+
export { extractLiteral } from "./literal.js";
|
|
12
|
+
export { extractMap } from "./map.js";
|
|
13
|
+
export { extractNan } from "./nan.js";
|
|
14
|
+
export { extractNever } from "./never.js";
|
|
15
|
+
export { extractNull } from "./null.js";
|
|
16
|
+
export { extractNullable } from "./nullable.js";
|
|
17
|
+
export { extractNumber } from "./number.js";
|
|
18
|
+
export { extractObject } from "./object.js";
|
|
19
|
+
export { extractOptional } from "./optional.js";
|
|
20
|
+
export { extractPipe } from "./pipe.js";
|
|
21
|
+
export { extractReadonly } from "./readonly.js";
|
|
22
|
+
export { extractRecord } from "./record.js";
|
|
23
|
+
export { extractSet } from "./set.js";
|
|
24
|
+
export { extractString } from "./string.js";
|
|
25
|
+
export { extractSymbol } from "./symbol.js";
|
|
26
|
+
export { extractTemplateLiteral } from "./template-literal.js";
|
|
27
|
+
export { extractTuple } from "./tuple.js";
|
|
28
|
+
export { extractUndefined } from "./undefined.js";
|
|
29
|
+
export { extractUnion } from "./union.js";
|
|
30
|
+
export { extractUnknown } from "./unknown.js";
|
|
31
|
+
export { extractVoid } from "./void.js";
|
|
32
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intersection.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/intersection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,mBAAmB,EAAE,SAWjC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { hasMutation } from "../../codegen/context.js";
|
|
2
|
+
export const extractIntersection = (def, ctx) => {
|
|
3
|
+
const left = ctx.visit(def.left, "._zod.def.left");
|
|
4
|
+
const right = ctx.visit(def.right, "._zod.def.right");
|
|
5
|
+
// Zod validates both sides on the ORIGINAL input and MERGES the results,
|
|
6
|
+
// throwing on unmergable conflicts. The compiled generator runs the sides
|
|
7
|
+
// sequentially on the same value — equivalent only when neither side
|
|
8
|
+
// rewrites it. Mutating sides (coerce, trim, defaults, ...) delegate to Zod.
|
|
9
|
+
if (hasMutation(left) || hasMutation(right)) {
|
|
10
|
+
return ctx.fallback("unsupported");
|
|
11
|
+
}
|
|
12
|
+
return { type: "intersection", left, right };
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=intersection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intersection.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/intersection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,MAAM,CAAC,MAAM,mBAAmB,GAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACzD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IACtD,yEAAyE;IACzE,0EAA0E;IAC1E,qEAAqE;IACrE,6EAA6E;IAC7E,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5C,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC/C,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/lazy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAa,MAAM,aAAa,CAAC;AAE/D,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAqB1E"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export function extractLazy(_def, ctx) {
|
|
2
|
+
const schema = ctx.schema;
|
|
3
|
+
const innerSchema = schema._zod.innerType;
|
|
4
|
+
if (!innerSchema) {
|
|
5
|
+
return ctx.fallback("lazy");
|
|
6
|
+
}
|
|
7
|
+
// Cycle detected: the resolved schema is already being extracted.
|
|
8
|
+
if (ctx.visiting.has(innerSchema)) {
|
|
9
|
+
// recursiveRef codegen re-invokes the ROOT safeParse function, so it is
|
|
10
|
+
// only correct when the cycle target IS the root schema's resolution
|
|
11
|
+
// (a directly self-recursive lazy at the top). A cycle back to an inner
|
|
12
|
+
// node (recursive schema nested in a wrapper, mutual recursion) would
|
|
13
|
+
// validate against the wrong shape — delegate to Zod.
|
|
14
|
+
const root = ctx.visiting.values().next().value;
|
|
15
|
+
const rootResolved = root?._zod?.def?.type === "lazy" ? root._zod.innerType : root;
|
|
16
|
+
if (rootResolved === innerSchema) {
|
|
17
|
+
return { type: "recursiveRef" };
|
|
18
|
+
}
|
|
19
|
+
return ctx.fallback("lazy");
|
|
20
|
+
}
|
|
21
|
+
return ctx.visit(innerSchema, "._zod.innerType");
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=lazy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/lazy.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,WAAW,CAAC,IAAa,EAAE,GAAqB;IAC9D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAmB,CAAC;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;IAC1C,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IACD,kEAAkE;IAClE,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QAClC,wEAAwE;QACxE,qEAAqE;QACrE,wEAAwE;QACxE,sEAAsE;QACtE,sDAAsD;QACtD,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAA8B,CAAC;QACzE,MAAM,YAAY,GAAG,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QACnF,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;YACjC,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;QAClC,CAAC;QACD,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/literal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,cAAc,EAAE,SAA8D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"literal.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/literal.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAc,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/map.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE5D,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAIvE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/map.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,GAAqB;IAC3D,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAClE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AAC7C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nan.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/nan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,UAAU,EAAE,SAAmC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nan.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/nan.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAc,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"never.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/never.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,YAAY,EAAE,SAAqC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"never.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/never.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAc,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"null.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/null.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,WAAW,EAAE,SAAoC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"null.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/null.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAc,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nullable.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/nullable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,eAAe,EAAE,SAG5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nullable.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/nullable.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACvD,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,qBAAqB,CAAC;CACvD,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/number.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAW5D,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CA6B1E"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { extractChecks, resolveCheckMessage } from "../checks.js";
|
|
2
|
+
/** Check kinds the number codegen knows how to emit. Anything else → fallback. */
|
|
3
|
+
const NUMBER_CHECK_KINDS = new Set([
|
|
4
|
+
"greater_than",
|
|
5
|
+
"less_than",
|
|
6
|
+
"multiple_of",
|
|
7
|
+
"number_format",
|
|
8
|
+
"refine_effect",
|
|
9
|
+
]);
|
|
10
|
+
export function extractNumber(def, ctx) {
|
|
11
|
+
const coerce = def.coerce ? { coerce: true } : {};
|
|
12
|
+
const allChecks = [];
|
|
13
|
+
// Number format schemas (z.int(), z.int32(), ...): the schema def doubles as
|
|
14
|
+
// its own check def. Schema-level custom error applies to the format issue.
|
|
15
|
+
if (def.check === "number_format" && def.format) {
|
|
16
|
+
const resolved = resolveCheckMessage(def.error);
|
|
17
|
+
if (resolved.kind === "dynamic")
|
|
18
|
+
return ctx.fallback("refine");
|
|
19
|
+
allChecks.push({
|
|
20
|
+
kind: "number_format",
|
|
21
|
+
format: def.format,
|
|
22
|
+
...(resolved.kind === "static" ? { message: resolved.message } : {}),
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
// Appended checks (.min(), .refine(), ... — also present on format schemas
|
|
26
|
+
// like z.int().refine(fn), which previously lost them entirely).
|
|
27
|
+
if (def.checks && def.checks.length > 0) {
|
|
28
|
+
const { checkIRs, hasFallback } = extractChecks(def.checks);
|
|
29
|
+
if (hasFallback)
|
|
30
|
+
return ctx.fallback("refine");
|
|
31
|
+
allChecks.push(...checkIRs);
|
|
32
|
+
}
|
|
33
|
+
if (allChecks.some((c) => !NUMBER_CHECK_KINDS.has(c.kind))) {
|
|
34
|
+
return ctx.fallback("unsupported");
|
|
35
|
+
}
|
|
36
|
+
return { type: "number", checks: allChecks, ...coerce };
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=number.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"number.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/number.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAGlE,kFAAkF;AAClF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,cAAc;IACd,WAAW;IACX,aAAa;IACb,eAAe;IACf,eAAe;CAChB,CAAC,CAAC;AAEH,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,GAAqB;IAC9D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,MAAM,SAAS,GAAsB,EAAE,CAAC;IAExC,6EAA6E;IAC7E,4EAA4E;IAC5E,IAAI,GAAG,CAAC,KAAK,KAAK,eAAe,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/D,SAAS,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,GAAG,CAAC,MAAgE;YAC5E,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrE,CAAC,CAAC;IACL,CAAC;IAED,2EAA2E;IAC3E,iEAAiE;IACjE,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,WAAW;YAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/C,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC3D,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC;AAC1D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE5D,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAyC1E"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { extractChecks } from "../checks.js";
|
|
2
|
+
export function extractObject(def, ctx) {
|
|
3
|
+
// Unknown-key policies the compiled object can't reproduce:
|
|
4
|
+
// - z.strictObject (catchall: never) rejects unknown keys
|
|
5
|
+
// - .catchall(schema) validates unknown keys against a schema
|
|
6
|
+
// z.looseObject (catchall: unknown/any) matches compiled pass-through behavior.
|
|
7
|
+
const catchallType = def.catchall?._zod?.def?.type;
|
|
8
|
+
if (def.catchall && catchallType !== "unknown" && catchallType !== "any") {
|
|
9
|
+
return ctx.fallback("unsupported");
|
|
10
|
+
}
|
|
11
|
+
const properties = {};
|
|
12
|
+
// Fallback props whose zod schema is optional-out: mirror zod's
|
|
13
|
+
// handlePropertyResult, which suppresses issues for ABSENT keys (this is
|
|
14
|
+
// how z.exactOptional() accepts missing keys while rejecting explicit
|
|
15
|
+
// undefined). Compiled optional/default IRs already handle absence.
|
|
16
|
+
const suppressAbsentKeys = [];
|
|
17
|
+
for (const [key, value] of Object.entries(def.shape)) {
|
|
18
|
+
const propIR = ctx.visit(value, `.shape[${JSON.stringify(key)}]`);
|
|
19
|
+
properties[key] = propIR;
|
|
20
|
+
if (propIR.type === "fallback" && value._zod.optout === "optional") {
|
|
21
|
+
suppressAbsentKeys.push(key);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
const suppress = suppressAbsentKeys.length > 0 ? { suppressAbsentKeys } : {};
|
|
25
|
+
if (def.checks && def.checks.length > 0) {
|
|
26
|
+
const { checkIRs, hasFallback } = extractChecks(def.checks);
|
|
27
|
+
if (hasFallback)
|
|
28
|
+
return ctx.fallback("refine");
|
|
29
|
+
// Object codegen only supports refine effects; anything else (overwrite,
|
|
30
|
+
// exotic .check() entries) must not be dropped.
|
|
31
|
+
if (checkIRs.some((c) => c.kind !== "refine_effect")) {
|
|
32
|
+
return ctx.fallback("unsupported");
|
|
33
|
+
}
|
|
34
|
+
const refineChecks = checkIRs.filter((c) => {
|
|
35
|
+
return c.kind === "refine_effect";
|
|
36
|
+
});
|
|
37
|
+
if (refineChecks.length > 0) {
|
|
38
|
+
return { type: "object", properties, checks: refineChecks, ...suppress };
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return { type: "object", properties, ...suppress };
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=object.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,GAAqB;IAC9D,4DAA4D;IAC5D,0DAA0D;IAC1D,8DAA8D;IAC9D,gFAAgF;IAChF,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC;IACnD,IAAI,GAAG,CAAC,QAAQ,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,KAAK,EAAE,CAAC;QACzE,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,UAAU,GAA6B,EAAE,CAAC;IAChD,gEAAgE;IAChE,yEAAyE;IACzE,sEAAsE;IACtE,oEAAoE;IACpE,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QACzB,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACnE,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAE7E,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,WAAW;YAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/C,yEAAyE;QACzE,gDAAgD;QAChD,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC,EAAE,CAAC;YACrD,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACrC,CAAC;QACD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAA4B,EAAE;YACnE,OAAO,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC;QACpC,CAAC,CAAC,CAAC;QACH,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optional.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/optional.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAa,MAAM,aAAa,CAAC;AAExD,eAAO,MAAM,eAAe,EAAE,SAY7B,CAAC"}
|