zod-compiler 1.23.0 → 1.23.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -6
- package/dist/cli/commands/check.d.ts +10 -7
- package/dist/cli/commands/check.d.ts.map +1 -1
- package/dist/cli/commands/check.js +125 -148
- package/dist/cli/commands/check.js.map +1 -1
- package/dist/cli/commands/generate.d.ts +22 -19
- package/dist/cli/commands/generate.d.ts.map +1 -1
- package/dist/cli/commands/generate.js +102 -133
- package/dist/cli/commands/generate.js.map +1 -1
- package/dist/cli/commands/watch.d.ts +17 -15
- package/dist/cli/commands/watch.d.ts.map +1 -1
- package/dist/cli/commands/watch.js +126 -154
- package/dist/cli/commands/watch.js.map +1 -1
- package/dist/cli/emitter.d.ts +19 -16
- package/dist/cli/emitter.d.ts.map +1 -1
- package/dist/cli/emitter.js +55 -71
- package/dist/cli/emitter.js.map +1 -1
- package/dist/cli/errors.d.ts +4 -1
- package/dist/cli/errors.d.ts.map +1 -1
- package/dist/cli/errors.js +6 -2
- package/dist/cli/errors.js.map +1 -1
- package/dist/cli/index.d.ts +1 -3
- package/dist/cli/index.js +147 -160
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/logger.d.ts +18 -15
- package/dist/cli/logger.d.ts.map +1 -1
- package/dist/cli/logger.js +38 -37
- package/dist/cli/logger.js.map +1 -1
- package/dist/core/codegen/build-path.d.ts +7 -41
- package/dist/core/codegen/build-path.d.ts.map +1 -1
- package/dist/core/codegen/build-path.js +481 -570
- package/dist/core/codegen/build-path.js.map +1 -1
- package/dist/core/codegen/context.d.ts +256 -253
- package/dist/core/codegen/context.d.ts.map +1 -1
- package/dist/core/codegen/context.js +363 -437
- package/dist/core/codegen/context.js.map +1 -1
- package/dist/core/codegen/dedupe.d.ts +22 -56
- package/dist/core/codegen/dedupe.d.ts.map +1 -1
- package/dist/core/codegen/dedupe.js +150 -242
- package/dist/core/codegen/dedupe.js.map +1 -1
- package/dist/core/codegen/emit-issue.d.ts +44 -68
- package/dist/core/codegen/emit-issue.d.ts.map +1 -1
- package/dist/core/codegen/emit-issue.js +76 -108
- package/dist/core/codegen/emit-issue.js.map +1 -1
- package/dist/core/codegen/emit.d.ts +4 -1
- package/dist/core/codegen/emit.d.ts.map +1 -1
- package/dist/core/codegen/emit.js +16 -13
- package/dist/core/codegen/emit.js.map +1 -1
- package/dist/core/codegen/fast-path.d.ts +7 -12
- package/dist/core/codegen/fast-path.d.ts.map +1 -1
- package/dist/core/codegen/fast-path.js +116 -145
- package/dist/core/codegen/fast-path.js.map +1 -1
- package/dist/core/codegen/fast-size.d.ts +12 -26
- package/dist/core/codegen/fast-size.d.ts.map +1 -1
- package/dist/core/codegen/fast-size.js +169 -244
- package/dist/core/codegen/fast-size.js.map +1 -1
- package/dist/core/codegen/index.d.ts +25 -23
- package/dist/core/codegen/index.d.ts.map +1 -1
- package/dist/core/codegen/index.js +239 -405
- package/dist/core/codegen/index.js.map +1 -1
- package/dist/core/codegen/issue-decls.d.ts +15 -12
- package/dist/core/codegen/issue-decls.d.ts.map +1 -1
- package/dist/core/codegen/issue-decls.js +131 -162
- package/dist/core/codegen/issue-decls.js.map +1 -1
- package/dist/core/codegen/regex-unroll.d.ts +4 -1
- package/dist/core/codegen/regex-unroll.d.ts.map +1 -1
- package/dist/core/codegen/regex-unroll.js +173 -197
- package/dist/core/codegen/regex-unroll.js.map +1 -1
- package/dist/core/codegen/schemas/any.d.ts +7 -4
- package/dist/core/codegen/schemas/any.d.ts.map +1 -1
- package/dist/core/codegen/schemas/any.js +8 -4
- package/dist/core/codegen/schemas/any.js.map +1 -1
- package/dist/core/codegen/schemas/array.d.ts +8 -5
- package/dist/core/codegen/schemas/array.d.ts.map +1 -1
- package/dist/core/codegen/schemas/array.js +77 -95
- package/dist/core/codegen/schemas/array.js.map +1 -1
- package/dist/core/codegen/schemas/bigint.d.ts +7 -4
- package/dist/core/codegen/schemas/bigint.d.ts.map +1 -1
- package/dist/core/codegen/schemas/bigint.js +44 -56
- package/dist/core/codegen/schemas/bigint.js.map +1 -1
- package/dist/core/codegen/schemas/boolean.d.ts +7 -4
- package/dist/core/codegen/schemas/boolean.d.ts.map +1 -1
- package/dist/core/codegen/schemas/boolean.js +12 -11
- package/dist/core/codegen/schemas/boolean.js.map +1 -1
- package/dist/core/codegen/schemas/catch.d.ts +8 -5
- package/dist/core/codegen/schemas/catch.d.ts.map +1 -1
- package/dist/core/codegen/schemas/catch.js +23 -23
- package/dist/core/codegen/schemas/catch.js.map +1 -1
- package/dist/core/codegen/schemas/date.d.ts +7 -4
- package/dist/core/codegen/schemas/date.d.ts.map +1 -1
- package/dist/core/codegen/schemas/date.js +49 -68
- package/dist/core/codegen/schemas/date.js.map +1 -1
- package/dist/core/codegen/schemas/default.d.ts +9 -6
- package/dist/core/codegen/schemas/default.d.ts.map +1 -1
- package/dist/core/codegen/schemas/default.js +29 -27
- package/dist/core/codegen/schemas/default.js.map +1 -1
- package/dist/core/codegen/schemas/discriminated-union.d.ts +12 -10
- package/dist/core/codegen/schemas/discriminated-union.d.ts.map +1 -1
- package/dist/core/codegen/schemas/discriminated-union.js +153 -178
- package/dist/core/codegen/schemas/discriminated-union.js.map +1 -1
- package/dist/core/codegen/schemas/effect.d.ts +9 -6
- package/dist/core/codegen/schemas/effect.d.ts.map +1 -1
- package/dist/core/codegen/schemas/effect.js +54 -67
- package/dist/core/codegen/schemas/effect.js.map +1 -1
- package/dist/core/codegen/schemas/enum.d.ts +7 -4
- package/dist/core/codegen/schemas/enum.d.ts.map +1 -1
- package/dist/core/codegen/schemas/enum.js +15 -21
- package/dist/core/codegen/schemas/enum.js.map +1 -1
- package/dist/core/codegen/schemas/fallback.d.ts +6 -3
- package/dist/core/codegen/schemas/fallback.d.ts.map +1 -1
- package/dist/core/codegen/schemas/fallback.js +14 -13
- package/dist/core/codegen/schemas/fallback.js.map +1 -1
- package/dist/core/codegen/schemas/file.d.ts +7 -4
- package/dist/core/codegen/schemas/file.d.ts.map +1 -1
- package/dist/core/codegen/schemas/file.js +51 -57
- package/dist/core/codegen/schemas/file.js.map +1 -1
- package/dist/core/codegen/schemas/intersection.d.ts +8 -5
- package/dist/core/codegen/schemas/intersection.d.ts.map +1 -1
- package/dist/core/codegen/schemas/intersection.js +16 -13
- package/dist/core/codegen/schemas/intersection.js.map +1 -1
- package/dist/core/codegen/schemas/literal.d.ts +7 -4
- package/dist/core/codegen/schemas/literal.d.ts.map +1 -1
- package/dist/core/codegen/schemas/literal.js +20 -23
- package/dist/core/codegen/schemas/literal.js.map +1 -1
- package/dist/core/codegen/schemas/map.d.ts +8 -5
- package/dist/core/codegen/schemas/map.d.ts.map +1 -1
- package/dist/core/codegen/schemas/map.js +61 -67
- package/dist/core/codegen/schemas/map.js.map +1 -1
- package/dist/core/codegen/schemas/nan.d.ts +7 -4
- package/dist/core/codegen/schemas/nan.d.ts.map +1 -1
- package/dist/core/codegen/schemas/nan.js +8 -4
- package/dist/core/codegen/schemas/nan.js.map +1 -1
- package/dist/core/codegen/schemas/never.d.ts +7 -4
- package/dist/core/codegen/schemas/never.d.ts.map +1 -1
- package/dist/core/codegen/schemas/never.js +8 -4
- package/dist/core/codegen/schemas/never.js.map +1 -1
- package/dist/core/codegen/schemas/null.d.ts +7 -4
- package/dist/core/codegen/schemas/null.d.ts.map +1 -1
- package/dist/core/codegen/schemas/null.js +8 -4
- package/dist/core/codegen/schemas/null.js.map +1 -1
- package/dist/core/codegen/schemas/nullable.d.ts +8 -5
- package/dist/core/codegen/schemas/nullable.d.ts.map +1 -1
- package/dist/core/codegen/schemas/nullable.js +8 -5
- package/dist/core/codegen/schemas/nullable.js.map +1 -1
- package/dist/core/codegen/schemas/number.d.ts +7 -4
- package/dist/core/codegen/schemas/number.d.ts.map +1 -1
- package/dist/core/codegen/schemas/number.js +120 -176
- package/dist/core/codegen/schemas/number.js.map +1 -1
- package/dist/core/codegen/schemas/object.d.ts +8 -5
- package/dist/core/codegen/schemas/object.d.ts.map +1 -1
- package/dist/core/codegen/schemas/object.js +144 -231
- package/dist/core/codegen/schemas/object.js.map +1 -1
- package/dist/core/codegen/schemas/optional.d.ts +9 -6
- package/dist/core/codegen/schemas/optional.d.ts.map +1 -1
- package/dist/core/codegen/schemas/optional.js +23 -31
- package/dist/core/codegen/schemas/optional.js.map +1 -1
- package/dist/core/codegen/schemas/pipe.d.ts +8 -5
- package/dist/core/codegen/schemas/pipe.d.ts.map +1 -1
- package/dist/core/codegen/schemas/pipe.js +20 -27
- package/dist/core/codegen/schemas/pipe.js.map +1 -1
- package/dist/core/codegen/schemas/readonly.d.ts +8 -5
- package/dist/core/codegen/schemas/readonly.d.ts.map +1 -1
- package/dist/core/codegen/schemas/readonly.js +8 -5
- package/dist/core/codegen/schemas/readonly.js.map +1 -1
- package/dist/core/codegen/schemas/record.d.ts +8 -5
- package/dist/core/codegen/schemas/record.d.ts.map +1 -1
- package/dist/core/codegen/schemas/record.js +52 -65
- package/dist/core/codegen/schemas/record.js.map +1 -1
- package/dist/core/codegen/schemas/recursive-ref.d.ts +9 -6
- package/dist/core/codegen/schemas/recursive-ref.d.ts.map +1 -1
- package/dist/core/codegen/schemas/recursive-ref.js +44 -44
- package/dist/core/codegen/schemas/recursive-ref.js.map +1 -1
- package/dist/core/codegen/schemas/set.d.ts +8 -5
- package/dist/core/codegen/schemas/set.d.ts.map +1 -1
- package/dist/core/codegen/schemas/set.js +61 -73
- package/dist/core/codegen/schemas/set.js.map +1 -1
- package/dist/core/codegen/schemas/string-bool.d.ts +6 -3
- package/dist/core/codegen/schemas/string-bool.d.ts.map +1 -1
- package/dist/core/codegen/schemas/string-bool.js +22 -23
- package/dist/core/codegen/schemas/string-bool.js.map +1 -1
- package/dist/core/codegen/schemas/string.d.ts +8 -5
- package/dist/core/codegen/schemas/string.d.ts.map +1 -1
- package/dist/core/codegen/schemas/string.js +168 -207
- package/dist/core/codegen/schemas/string.js.map +1 -1
- package/dist/core/codegen/schemas/symbol.d.ts +7 -4
- package/dist/core/codegen/schemas/symbol.d.ts.map +1 -1
- package/dist/core/codegen/schemas/symbol.js +8 -4
- package/dist/core/codegen/schemas/symbol.js.map +1 -1
- package/dist/core/codegen/schemas/template-literal.d.ts +7 -4
- package/dist/core/codegen/schemas/template-literal.d.ts.map +1 -1
- package/dist/core/codegen/schemas/template-literal.js +12 -13
- package/dist/core/codegen/schemas/template-literal.js.map +1 -1
- package/dist/core/codegen/schemas/tuple.d.ts +8 -5
- package/dist/core/codegen/schemas/tuple.d.ts.map +1 -1
- package/dist/core/codegen/schemas/tuple.js +84 -94
- package/dist/core/codegen/schemas/tuple.js.map +1 -1
- package/dist/core/codegen/schemas/undefined.d.ts +7 -4
- package/dist/core/codegen/schemas/undefined.d.ts.map +1 -1
- package/dist/core/codegen/schemas/undefined.js +8 -4
- package/dist/core/codegen/schemas/undefined.js.map +1 -1
- package/dist/core/codegen/schemas/union.d.ts +8 -5
- package/dist/core/codegen/schemas/union.d.ts.map +1 -1
- package/dist/core/codegen/schemas/union.js +49 -69
- package/dist/core/codegen/schemas/union.js.map +1 -1
- package/dist/core/codegen/schemas/unknown.d.ts +7 -4
- package/dist/core/codegen/schemas/unknown.d.ts.map +1 -1
- package/dist/core/codegen/schemas/unknown.js +8 -4
- package/dist/core/codegen/schemas/unknown.js.map +1 -1
- package/dist/core/codegen/schemas/void.d.ts +7 -4
- package/dist/core/codegen/schemas/void.d.ts.map +1 -1
- package/dist/core/codegen/schemas/void.js +8 -4
- package/dist/core/codegen/schemas/void.js.map +1 -1
- package/dist/core/codegen/slow-path.d.ts +7 -4
- package/dist/core/codegen/slow-path.d.ts.map +1 -1
- package/dist/core/codegen/slow-path.js +71 -96
- package/dist/core/codegen/slow-path.js.map +1 -1
- package/dist/core/codegen/well-known-regex.d.ts +22 -19
- package/dist/core/codegen/well-known-regex.d.ts.map +1 -1
- package/dist/core/codegen/well-known-regex.js +127 -96
- package/dist/core/codegen/well-known-regex.js.map +1 -1
- package/dist/core/compile.d.ts +7 -4
- package/dist/core/compile.d.ts.map +1 -1
- package/dist/core/compile.js +48 -48
- package/dist/core/compile.js.map +1 -1
- package/dist/core/diagnostic.d.ts +38 -39
- package/dist/core/diagnostic.d.ts.map +1 -1
- package/dist/core/diagnostic.js +140 -164
- package/dist/core/diagnostic.js.map +1 -1
- package/dist/core/extract/checks.d.ts +18 -15
- package/dist/core/extract/checks.d.ts.map +1 -1
- package/dist/core/extract/checks.js +318 -311
- package/dist/core/extract/checks.js.map +1 -1
- package/dist/core/extract/effects.d.ts +13 -10
- package/dist/core/extract/effects.d.ts.map +1 -1
- package/dist/core/extract/effects.js +153 -222
- package/dist/core/extract/effects.js.map +1 -1
- package/dist/core/extract/extractors/any.d.ts +5 -2
- package/dist/core/extract/extractors/any.d.ts.map +1 -1
- package/dist/core/extract/extractors/any.js +5 -1
- package/dist/core/extract/extractors/any.js.map +1 -1
- package/dist/core/extract/extractors/array.d.ts +6 -3
- package/dist/core/extract/extractors/array.d.ts.map +1 -1
- package/dist/core/extract/extractors/array.js +25 -20
- package/dist/core/extract/extractors/array.js.map +1 -1
- package/dist/core/extract/extractors/bigint.d.ts +6 -3
- package/dist/core/extract/extractors/bigint.d.ts.map +1 -1
- package/dist/core/extract/extractors/bigint.js +66 -64
- package/dist/core/extract/extractors/bigint.js.map +1 -1
- package/dist/core/extract/extractors/boolean.d.ts +5 -2
- package/dist/core/extract/extractors/boolean.d.ts.map +1 -1
- package/dist/core/extract/extractors/boolean.js +7 -3
- package/dist/core/extract/extractors/boolean.js.map +1 -1
- package/dist/core/extract/extractors/catch.d.ts +6 -3
- package/dist/core/extract/extractors/catch.d.ts.map +1 -1
- package/dist/core/extract/extractors/catch.js +26 -17
- package/dist/core/extract/extractors/catch.js.map +1 -1
- package/dist/core/extract/extractors/date.d.ts +6 -3
- package/dist/core/extract/extractors/date.d.ts.map +1 -1
- package/dist/core/extract/extractors/date.js +42 -46
- package/dist/core/extract/extractors/date.js.map +1 -1
- package/dist/core/extract/extractors/default.d.ts +6 -3
- package/dist/core/extract/extractors/default.d.ts.map +1 -1
- package/dist/core/extract/extractors/default.js +20 -14
- package/dist/core/extract/extractors/default.js.map +1 -1
- package/dist/core/extract/extractors/enum.d.ts +5 -2
- package/dist/core/extract/extractors/enum.d.ts.map +1 -1
- package/dist/core/extract/extractors/enum.js +12 -13
- package/dist/core/extract/extractors/enum.js.map +1 -1
- package/dist/core/extract/extractors/file.d.ts +6 -3
- package/dist/core/extract/extractors/file.d.ts.map +1 -1
- package/dist/core/extract/extractors/file.js +34 -28
- package/dist/core/extract/extractors/file.js.map +1 -1
- package/dist/core/extract/extractors/intersection.d.ts +5 -2
- package/dist/core/extract/extractors/intersection.d.ts.map +1 -1
- package/dist/core/extract/extractors/intersection.js +13 -11
- package/dist/core/extract/extractors/intersection.js.map +1 -1
- package/dist/core/extract/extractors/lazy.d.ts +6 -3
- package/dist/core/extract/extractors/lazy.d.ts.map +1 -1
- package/dist/core/extract/extractors/lazy.js +21 -30
- package/dist/core/extract/extractors/lazy.js.map +1 -1
- package/dist/core/extract/extractors/literal.d.ts +5 -2
- package/dist/core/extract/extractors/literal.d.ts.map +1 -1
- package/dist/core/extract/extractors/literal.js +8 -1
- package/dist/core/extract/extractors/literal.js.map +1 -1
- package/dist/core/extract/extractors/map.d.ts +6 -3
- package/dist/core/extract/extractors/map.d.ts.map +1 -1
- package/dist/core/extract/extractors/map.js +10 -4
- package/dist/core/extract/extractors/map.js.map +1 -1
- package/dist/core/extract/extractors/nan.d.ts +5 -2
- package/dist/core/extract/extractors/nan.d.ts.map +1 -1
- package/dist/core/extract/extractors/nan.js +5 -1
- package/dist/core/extract/extractors/nan.js.map +1 -1
- package/dist/core/extract/extractors/never.d.ts +5 -2
- package/dist/core/extract/extractors/never.d.ts.map +1 -1
- package/dist/core/extract/extractors/never.js +5 -1
- package/dist/core/extract/extractors/never.js.map +1 -1
- package/dist/core/extract/extractors/null.d.ts +5 -2
- package/dist/core/extract/extractors/null.d.ts.map +1 -1
- package/dist/core/extract/extractors/null.js +5 -1
- package/dist/core/extract/extractors/null.js.map +1 -1
- package/dist/core/extract/extractors/nullable.d.ts +5 -2
- package/dist/core/extract/extractors/nullable.d.ts.map +1 -1
- package/dist/core/extract/extractors/nullable.js +7 -3
- package/dist/core/extract/extractors/nullable.js.map +1 -1
- package/dist/core/extract/extractors/number.d.ts +6 -3
- package/dist/core/extract/extractors/number.d.ts.map +1 -1
- package/dist/core/extract/extractors/number.js +35 -35
- package/dist/core/extract/extractors/number.js.map +1 -1
- package/dist/core/extract/extractors/object.d.ts +6 -3
- package/dist/core/extract/extractors/object.d.ts.map +1 -1
- package/dist/core/extract/extractors/object.js +49 -76
- package/dist/core/extract/extractors/object.js.map +1 -1
- package/dist/core/extract/extractors/optional.d.ts +5 -2
- package/dist/core/extract/extractors/optional.d.ts.map +1 -1
- package/dist/core/extract/extractors/optional.js +10 -12
- package/dist/core/extract/extractors/optional.js.map +1 -1
- package/dist/core/extract/extractors/pipe.d.ts +6 -3
- package/dist/core/extract/extractors/pipe.d.ts.map +1 -1
- package/dist/core/extract/extractors/pipe.js +40 -41
- package/dist/core/extract/extractors/pipe.js.map +1 -1
- package/dist/core/extract/extractors/readonly.d.ts +5 -2
- package/dist/core/extract/extractors/readonly.d.ts.map +1 -1
- package/dist/core/extract/extractors/readonly.js +10 -6
- package/dist/core/extract/extractors/readonly.js.map +1 -1
- package/dist/core/extract/extractors/record.d.ts +6 -3
- package/dist/core/extract/extractors/record.d.ts.map +1 -1
- package/dist/core/extract/extractors/record.js +24 -35
- package/dist/core/extract/extractors/record.js.map +1 -1
- package/dist/core/extract/extractors/set.d.ts +6 -3
- package/dist/core/extract/extractors/set.d.ts.map +1 -1
- package/dist/core/extract/extractors/set.js +36 -30
- package/dist/core/extract/extractors/set.js.map +1 -1
- package/dist/core/extract/extractors/string-bool.d.ts +7 -4
- package/dist/core/extract/extractors/string-bool.d.ts.map +1 -1
- package/dist/core/extract/extractors/string-bool.js +66 -84
- package/dist/core/extract/extractors/string-bool.js.map +1 -1
- package/dist/core/extract/extractors/string.d.ts +6 -3
- package/dist/core/extract/extractors/string.d.ts.map +1 -1
- package/dist/core/extract/extractors/string.js +34 -37
- package/dist/core/extract/extractors/string.js.map +1 -1
- package/dist/core/extract/extractors/symbol.d.ts +5 -2
- package/dist/core/extract/extractors/symbol.d.ts.map +1 -1
- package/dist/core/extract/extractors/symbol.js +5 -1
- package/dist/core/extract/extractors/symbol.js.map +1 -1
- package/dist/core/extract/extractors/template-literal.d.ts +6 -3
- package/dist/core/extract/extractors/template-literal.d.ts.map +1 -1
- package/dist/core/extract/extractors/template-literal.js +11 -6
- package/dist/core/extract/extractors/template-literal.js.map +1 -1
- package/dist/core/extract/extractors/tuple.d.ts +6 -3
- package/dist/core/extract/extractors/tuple.d.ts.map +1 -1
- package/dist/core/extract/extractors/tuple.js +10 -4
- package/dist/core/extract/extractors/tuple.js.map +1 -1
- package/dist/core/extract/extractors/undefined.d.ts +5 -2
- package/dist/core/extract/extractors/undefined.d.ts.map +1 -1
- package/dist/core/extract/extractors/undefined.js +5 -1
- package/dist/core/extract/extractors/undefined.js.map +1 -1
- package/dist/core/extract/extractors/union.d.ts +6 -3
- package/dist/core/extract/extractors/union.d.ts.map +1 -1
- package/dist/core/extract/extractors/union.js +38 -64
- package/dist/core/extract/extractors/union.js.map +1 -1
- package/dist/core/extract/extractors/unknown.d.ts +5 -2
- package/dist/core/extract/extractors/unknown.d.ts.map +1 -1
- package/dist/core/extract/extractors/unknown.js +5 -1
- package/dist/core/extract/extractors/unknown.js.map +1 -1
- package/dist/core/extract/extractors/void.d.ts +5 -2
- package/dist/core/extract/extractors/void.d.ts.map +1 -1
- package/dist/core/extract/extractors/void.js +5 -1
- package/dist/core/extract/extractors/void.js.map +1 -1
- package/dist/core/extract/fallback.d.ts +6 -3
- package/dist/core/extract/fallback.d.ts.map +1 -1
- package/dist/core/extract/fallback.js +21 -7
- package/dist/core/extract/fallback.js.map +1 -1
- package/dist/core/extract/index.d.ts +6 -4
- package/dist/core/extract/index.d.ts.map +1 -1
- package/dist/core/extract/index.js +15 -15
- package/dist/core/extract/index.js.map +1 -1
- package/dist/core/extract/registry.d.ts +39 -36
- package/dist/core/extract/registry.d.ts.map +1 -1
- package/dist/core/extract/registry.js +96 -123
- package/dist/core/extract/registry.js.map +1 -1
- package/dist/core/extract/types.d.ts +124 -120
- package/dist/core/extract/types.d.ts.map +1 -1
- package/dist/core/extract/types.js +0 -1
- package/dist/core/iife.d.ts +14 -15
- package/dist/core/iife.d.ts.map +1 -1
- package/dist/core/iife.js +182 -206
- package/dist/core/iife.js.map +1 -1
- package/dist/core/pipeline.d.ts +33 -30
- package/dist/core/pipeline.d.ts.map +1 -1
- package/dist/core/pipeline.js +67 -74
- package/dist/core/pipeline.js.map +1 -1
- package/dist/core/types.d.ts +430 -427
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +0 -5
- package/dist/discovery.d.ts +8 -5
- package/dist/discovery.d.ts.map +1 -1
- package/dist/discovery.js +31 -32
- package/dist/discovery.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.js +2 -2
- package/dist/jit.d.ts +15 -42
- package/dist/jit.d.ts.map +1 -1
- package/dist/jit.js +187 -216
- package/dist/jit.js.map +1 -1
- package/dist/loader.d.ts +14 -11
- package/dist/loader.d.ts.map +1 -1
- package/dist/loader.js +226 -258
- package/dist/loader.js.map +1 -1
- package/dist/static-filter.d.ts +4 -1
- package/dist/static-filter.d.ts.map +1 -1
- package/dist/static-filter.js +240 -367
- package/dist/static-filter.js.map +1 -1
- package/dist/swc.d.ts +38 -35
- package/dist/swc.d.ts.map +1 -1
- package/dist/swc.js +83 -76
- package/dist/swc.js.map +1 -1
- package/dist/unplugin/bun.d.ts +5 -2
- package/dist/unplugin/bun.d.ts.map +1 -1
- package/dist/unplugin/bun.js +5 -1
- package/dist/unplugin/bun.js.map +1 -1
- package/dist/unplugin/dep-graph.d.ts +10 -7
- package/dist/unplugin/dep-graph.d.ts.map +1 -1
- package/dist/unplugin/dep-graph.js +216 -252
- package/dist/unplugin/dep-graph.js.map +1 -1
- package/dist/unplugin/disk-cache.d.ts +121 -92
- package/dist/unplugin/disk-cache.d.ts.map +1 -1
- package/dist/unplugin/disk-cache.js +425 -444
- package/dist/unplugin/disk-cache.js.map +1 -1
- package/dist/unplugin/edits.d.ts +15 -12
- package/dist/unplugin/edits.d.ts.map +1 -1
- package/dist/unplugin/edits.js +24 -37
- package/dist/unplugin/edits.js.map +1 -1
- package/dist/unplugin/esbuild.d.ts +5 -2
- package/dist/unplugin/esbuild.d.ts.map +1 -1
- package/dist/unplugin/esbuild.js +5 -1
- package/dist/unplugin/esbuild.js.map +1 -1
- package/dist/unplugin/farm.d.ts +5 -2
- package/dist/unplugin/farm.d.ts.map +1 -1
- package/dist/unplugin/farm.js +5 -1
- package/dist/unplugin/farm.js.map +1 -1
- package/dist/unplugin/hoist-compile.d.ts +14 -42
- package/dist/unplugin/hoist-compile.d.ts.map +1 -1
- package/dist/unplugin/hoist-compile.js +67 -112
- package/dist/unplugin/hoist-compile.js.map +1 -1
- package/dist/unplugin/hoist.d.ts +56 -54
- package/dist/unplugin/hoist.d.ts.map +1 -1
- package/dist/unplugin/hoist.js +945 -1170
- package/dist/unplugin/hoist.js.map +1 -1
- package/dist/unplugin/index.d.ts +5 -3
- package/dist/unplugin/index.d.ts.map +1 -1
- package/dist/unplugin/index.js +175 -250
- package/dist/unplugin/index.js.map +1 -1
- package/dist/unplugin/rolldown.d.ts +5 -2
- package/dist/unplugin/rolldown.d.ts.map +1 -1
- package/dist/unplugin/rolldown.js +5 -1
- package/dist/unplugin/rolldown.js.map +1 -1
- package/dist/unplugin/rollup.d.ts +5 -2
- package/dist/unplugin/rollup.d.ts.map +1 -1
- package/dist/unplugin/rollup.js +5 -1
- package/dist/unplugin/rollup.js.map +1 -1
- package/dist/unplugin/rsbuild.d.ts +6 -3
- package/dist/unplugin/rsbuild.d.ts.map +1 -1
- package/dist/unplugin/rsbuild.js +15 -11
- package/dist/unplugin/rsbuild.js.map +1 -1
- package/dist/unplugin/rspack.d.ts +5 -2
- package/dist/unplugin/rspack.d.ts.map +1 -1
- package/dist/unplugin/rspack.js +5 -1
- package/dist/unplugin/rspack.js.map +1 -1
- package/dist/unplugin/transform.d.ts +30 -27
- package/dist/unplugin/transform.d.ts.map +1 -1
- package/dist/unplugin/transform.js +433 -620
- package/dist/unplugin/transform.js.map +1 -1
- package/dist/unplugin/types.d.ts +189 -184
- package/dist/unplugin/types.d.ts.map +1 -1
- package/dist/unplugin/types.js +22 -18
- package/dist/unplugin/types.js.map +1 -1
- package/dist/unplugin/virtual.d.ts +11 -8
- package/dist/unplugin/virtual.d.ts.map +1 -1
- package/dist/unplugin/virtual.js +65 -83
- package/dist/unplugin/virtual.js.map +1 -1
- package/dist/unplugin/vite.d.ts +5 -2
- package/dist/unplugin/vite.d.ts.map +1 -1
- package/dist/unplugin/vite.js +5 -1
- package/dist/unplugin/vite.js.map +1 -1
- package/dist/unplugin/webpack.d.ts +5 -2
- package/dist/unplugin/webpack.d.ts.map +1 -1
- package/dist/unplugin/webpack.js +5 -1
- package/dist/unplugin/webpack.js.map +1 -1
- package/package.json +23 -14
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/core/extract/types.js.map +0 -1
- package/dist/core/types.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"void.d.ts","
|
|
1
|
+
{"version":3,"file":"void.d.ts","names":[],"sources":["../../../../src/core/codegen/schemas/void.ts"],"mappings":";;;iBAKgB,SAAS,KAAK,QAAQ,GAAG;iBAQzB,SAAS,KAAK,QAAQ,GAAG"}
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
import { emit } from "../emit.js";
|
|
2
2
|
import { invalidType } from "../emit-issue.js";
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
//#region src/core/codegen/schemas/void.ts
|
|
4
|
+
function slowVoid(_ir, g) {
|
|
5
|
+
return `${emit`
|
|
5
6
|
if(${g.input}!==undefined){
|
|
6
7
|
${invalidType(g, "void")}
|
|
7
8
|
}
|
|
8
9
|
`}\n`;
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
function fastVoid(_ir, g) {
|
|
12
|
+
return `${g.input}===undefined`;
|
|
12
13
|
}
|
|
14
|
+
//#endregion
|
|
15
|
+
export { fastVoid, slowVoid };
|
|
16
|
+
|
|
13
17
|
//# sourceMappingURL=void.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"void.js","
|
|
1
|
+
{"version":3,"file":"void.js","names":[],"sources":["../../../../src/core/codegen/schemas/void.ts"],"sourcesContent":["import type { VoidIR } from \"../../types.js\";\nimport type { FastGen, SlowGen } from \"../context.js\";\nimport { emit } from \"../emit.js\";\nimport { invalidType } from \"../emit-issue.js\";\n\nexport function slowVoid(_ir: VoidIR, g: SlowGen): string {\n return `${emit`\n if(${g.input}!==undefined){\n ${invalidType(g, \"void\")}\n }\n `}\\n`;\n}\n\nexport function fastVoid(_ir: VoidIR, g: FastGen): string | null {\n return `${g.input}===undefined`;\n}\n"],"mappings":";;;AAKA,SAAgB,SAAS,KAAa,GAAoB;CACxD,OAAO,GAAG,IAAI;SACP,EAAE,MAAM;QACT,YAAY,GAAG,MAAM,EAAE;;IAE3B;AACJ;AAEA,SAAgB,SAAS,KAAa,GAA2B;CAC/D,OAAO,GAAG,EAAE,MAAM;AACpB"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { SchemaIR } from "../types.js";
|
|
2
|
+
import { CodeGenContext, SlowGen } from "./context.js";
|
|
3
|
+
//#region src/core/codegen/slow-path.d.ts
|
|
4
|
+
declare function createSlowGen(inputExpr: string, outputExpr: string, pathExpr: string, issuesVar: string, ctx: CodeGenContext, abortedVar?: string): SlowGen;
|
|
5
|
+
declare function generateSlow(ir: SchemaIR, g: SlowGen): string;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { createSlowGen, generateSlow };
|
|
5
8
|
//# sourceMappingURL=slow-path.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slow-path.d.ts","
|
|
1
|
+
{"version":3,"file":"slow-path.d.ts","names":[],"sources":["../../../src/core/codegen/slow-path.ts"],"mappings":";;;iBAiGgB,cACd,mBACA,oBACA,kBACA,mBACA,KAAK,gBACL,sBACC;iBAyCa,aAAa,IAAI,UAAU,GAAG"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { emitRegex, emitSet, emitTemp } from "./context.js";
|
|
2
2
|
import { slowAny } from "./schemas/any.js";
|
|
3
|
+
import { slowEffect } from "./schemas/effect.js";
|
|
3
4
|
import { slowArray } from "./schemas/array.js";
|
|
4
5
|
import { slowBigInt } from "./schemas/bigint.js";
|
|
5
6
|
import { slowBoolean } from "./schemas/boolean.js";
|
|
@@ -7,7 +8,6 @@ import { slowCatch } from "./schemas/catch.js";
|
|
|
7
8
|
import { slowDate } from "./schemas/date.js";
|
|
8
9
|
import { slowDefault } from "./schemas/default.js";
|
|
9
10
|
import { slowDiscriminatedUnion } from "./schemas/discriminated-union.js";
|
|
10
|
-
import { slowEffect } from "./schemas/effect.js";
|
|
11
11
|
import { slowEnum } from "./schemas/enum.js";
|
|
12
12
|
import { slowFallback } from "./schemas/fallback.js";
|
|
13
13
|
import { slowFile } from "./schemas/file.js";
|
|
@@ -35,103 +35,78 @@ import { slowUndefined } from "./schemas/undefined.js";
|
|
|
35
35
|
import { slowUnion } from "./schemas/union.js";
|
|
36
36
|
import { slowUnknown } from "./schemas/unknown.js";
|
|
37
37
|
import { slowVoid } from "./schemas/void.js";
|
|
38
|
-
|
|
39
|
-
// Adding a new SchemaIR type without registering a generator here causes a
|
|
40
|
-
// compile error, preventing the silent-missing-case bugs that plagued the old
|
|
41
|
-
// switch-based dispatch.
|
|
38
|
+
//#region src/core/codegen/slow-path.ts
|
|
42
39
|
const slowRegistry = {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
templateLiteral: slowTemplateLiteral,
|
|
81
|
-
catch: slowCatch,
|
|
82
|
-
fallback: slowFallback,
|
|
83
|
-
recursiveRef: slowRecursiveRef,
|
|
84
|
-
recursionTarget: slowRecursionTarget,
|
|
85
|
-
stringBool: slowStringBool,
|
|
40
|
+
string: slowString,
|
|
41
|
+
number: slowNumber,
|
|
42
|
+
boolean: slowBoolean,
|
|
43
|
+
bigint: slowBigInt,
|
|
44
|
+
date: slowDate,
|
|
45
|
+
symbol: slowSymbol,
|
|
46
|
+
null: slowNull,
|
|
47
|
+
undefined: slowUndefined,
|
|
48
|
+
void: slowVoid,
|
|
49
|
+
nan: slowNan,
|
|
50
|
+
never: slowNever,
|
|
51
|
+
any: slowAny,
|
|
52
|
+
unknown: slowUnknown,
|
|
53
|
+
literal: slowLiteral,
|
|
54
|
+
enum: slowEnum,
|
|
55
|
+
object: slowObject,
|
|
56
|
+
array: slowArray,
|
|
57
|
+
tuple: slowTuple,
|
|
58
|
+
record: slowRecord,
|
|
59
|
+
set: slowSet,
|
|
60
|
+
map: slowMap,
|
|
61
|
+
file: slowFile,
|
|
62
|
+
union: slowUnion,
|
|
63
|
+
discriminatedUnion: slowDiscriminatedUnion,
|
|
64
|
+
intersection: slowIntersection,
|
|
65
|
+
optional: slowOptional,
|
|
66
|
+
nullable: slowNullable,
|
|
67
|
+
readonly: slowReadonly,
|
|
68
|
+
default: slowDefault,
|
|
69
|
+
pipe: slowPipe,
|
|
70
|
+
effect: slowEffect,
|
|
71
|
+
templateLiteral: slowTemplateLiteral,
|
|
72
|
+
catch: slowCatch,
|
|
73
|
+
fallback: slowFallback,
|
|
74
|
+
recursiveRef: slowRecursiveRef,
|
|
75
|
+
recursionTarget: slowRecursionTarget,
|
|
76
|
+
stringBool: slowStringBool
|
|
86
77
|
};
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
// It returns the parsed value, so the assignment delivers whatever an
|
|
110
|
-
// inlined walk would have written to `output` — a stripping object's
|
|
111
|
-
// rebuilt result, a coerced number, a trimmed string.
|
|
112
|
-
//
|
|
113
|
-
// But the shared walk's 3-arg signature can't carry this call site's
|
|
114
|
-
// abort flag — a shared pipe option would silently drop it. When we're in
|
|
115
|
-
// an abort-tracking position (`aborted` set), inline instead of sharing so
|
|
116
|
-
// the pipe's abort reaches the union. Non-tracking sites still share.
|
|
117
|
-
const ref = aborted === undefined ? ctx.sharedSchemas?.refFor(ir) : undefined;
|
|
118
|
-
if (ref !== undefined) {
|
|
119
|
-
return `${output}=${ref.name}(${input},${path},${issues});`;
|
|
120
|
-
}
|
|
121
|
-
return generateSlow(ir, createSlowGen(input, output, path, issues, ctx, aborted));
|
|
122
|
-
},
|
|
123
|
-
temp: (prefix) => emitTemp(ctx, prefix),
|
|
124
|
-
regex: (prefix, pattern, flags) => emitRegex(ctx, prefix, pattern, flags),
|
|
125
|
-
set: (prefix, values) => emitSet(ctx, prefix, values),
|
|
126
|
-
};
|
|
78
|
+
function createSlowGen(inputExpr, outputExpr, pathExpr, issuesVar, ctx, abortedVar) {
|
|
79
|
+
return {
|
|
80
|
+
input: inputExpr,
|
|
81
|
+
output: outputExpr,
|
|
82
|
+
path: pathExpr,
|
|
83
|
+
issues: issuesVar,
|
|
84
|
+
aborted: abortedVar,
|
|
85
|
+
ctx,
|
|
86
|
+
visit(ir, overrides) {
|
|
87
|
+
const input = overrides?.input ?? inputExpr;
|
|
88
|
+
const output = overrides?.output ?? outputExpr;
|
|
89
|
+
const path = overrides?.path ?? pathExpr;
|
|
90
|
+
const issues = overrides?.issues ?? issuesVar;
|
|
91
|
+
const aborted = overrides?.aborted;
|
|
92
|
+
const ref = aborted === void 0 ? ctx.sharedSchemas?.refFor(ir) : void 0;
|
|
93
|
+
if (ref !== void 0) return `${output}=${ref.name}(${input},${path},${issues});`;
|
|
94
|
+
return generateSlow(ir, createSlowGen(input, output, path, issues, ctx, aborted));
|
|
95
|
+
},
|
|
96
|
+
temp: (prefix) => emitTemp(ctx, prefix),
|
|
97
|
+
regex: (prefix, pattern, flags) => emitRegex(ctx, prefix, pattern, flags),
|
|
98
|
+
set: (prefix, values) => emitSet(ctx, prefix, values)
|
|
99
|
+
};
|
|
127
100
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
return gen(ir, gen0);
|
|
101
|
+
function generateSlow(ir, g) {
|
|
102
|
+
const gen0 = ir.typeMessage !== g.typeMsg ? {
|
|
103
|
+
...g,
|
|
104
|
+
typeMsg: ir.typeMessage
|
|
105
|
+
} : g;
|
|
106
|
+
const gen = slowRegistry[ir.type];
|
|
107
|
+
return gen(ir, gen0);
|
|
136
108
|
}
|
|
109
|
+
//#endregion
|
|
110
|
+
export { createSlowGen, generateSlow };
|
|
111
|
+
|
|
137
112
|
//# sourceMappingURL=slow-path.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slow-path.js","
|
|
1
|
+
{"version":3,"file":"slow-path.js","names":[],"sources":["../../../src/core/codegen/slow-path.ts"],"sourcesContent":["import type { SchemaIR } from \"../types.js\";\nimport type { CodeGenContext, SlowGen, SlowGenerator } from \"./context.js\";\nimport { emitRegex, emitSet, emitTemp } from \"./context.js\";\nimport { slowAny } from \"./schemas/any.js\";\nimport { slowArray } from \"./schemas/array.js\";\nimport { slowBigInt } from \"./schemas/bigint.js\";\nimport { slowBoolean } from \"./schemas/boolean.js\";\nimport { slowCatch } from \"./schemas/catch.js\";\nimport { slowDate } from \"./schemas/date.js\";\nimport { slowDefault } from \"./schemas/default.js\";\nimport { slowDiscriminatedUnion } from \"./schemas/discriminated-union.js\";\nimport { slowEffect } from \"./schemas/effect.js\";\nimport { slowEnum } from \"./schemas/enum.js\";\nimport { slowFallback } from \"./schemas/fallback.js\";\nimport { slowFile } from \"./schemas/file.js\";\nimport { slowIntersection } from \"./schemas/intersection.js\";\nimport { slowLiteral } from \"./schemas/literal.js\";\nimport { slowMap } from \"./schemas/map.js\";\nimport { slowNan } from \"./schemas/nan.js\";\nimport { slowNever } from \"./schemas/never.js\";\nimport { slowNull } from \"./schemas/null.js\";\nimport { slowNullable } from \"./schemas/nullable.js\";\nimport { slowNumber } from \"./schemas/number.js\";\nimport { slowObject } from \"./schemas/object.js\";\nimport { slowOptional } from \"./schemas/optional.js\";\nimport { slowPipe } from \"./schemas/pipe.js\";\nimport { slowReadonly } from \"./schemas/readonly.js\";\nimport { slowRecord } from \"./schemas/record.js\";\nimport { slowRecursionTarget, slowRecursiveRef } from \"./schemas/recursive-ref.js\";\nimport { slowSet } from \"./schemas/set.js\";\nimport { slowString } from \"./schemas/string.js\";\nimport { slowStringBool } from \"./schemas/string-bool.js\";\nimport { slowSymbol } from \"./schemas/symbol.js\";\nimport { slowTemplateLiteral } from \"./schemas/template-literal.js\";\nimport { slowTuple } from \"./schemas/tuple.js\";\nimport { slowUndefined } from \"./schemas/undefined.js\";\nimport { slowUnion } from \"./schemas/union.js\";\nimport { slowUnknown } from \"./schemas/unknown.js\";\nimport { slowVoid } from \"./schemas/void.js\";\n\n// ─── Typed registry ─────────────────────────────────────────────────────────\n// Adding a new SchemaIR type without registering a generator here causes a\n// compile error, preventing the silent-missing-case bugs that plagued the old\n// switch-based dispatch.\n\nconst slowRegistry = {\n // Primitives (order follows SchemaIR union in types.ts)\n string: slowString,\n number: slowNumber,\n boolean: slowBoolean,\n bigint: slowBigInt,\n date: slowDate,\n symbol: slowSymbol,\n null: slowNull,\n undefined: slowUndefined,\n void: slowVoid,\n nan: slowNan,\n never: slowNever,\n any: slowAny,\n unknown: slowUnknown,\n literal: slowLiteral,\n enum: slowEnum,\n // Containers\n object: slowObject,\n array: slowArray,\n tuple: slowTuple,\n record: slowRecord,\n set: slowSet,\n map: slowMap,\n file: slowFile,\n // Unions & Intersections\n union: slowUnion,\n discriminatedUnion: slowDiscriminatedUnion,\n intersection: slowIntersection,\n // Modifiers\n optional: slowOptional,\n nullable: slowNullable,\n readonly: slowReadonly,\n default: slowDefault,\n pipe: slowPipe,\n // Effects\n effect: slowEffect,\n // Special\n templateLiteral: slowTemplateLiteral,\n catch: slowCatch,\n fallback: slowFallback,\n recursiveRef: slowRecursiveRef,\n recursionTarget: slowRecursionTarget,\n stringBool: slowStringBool,\n} satisfies {\n [K in SchemaIR[\"type\"]]: SlowGenerator<Extract<SchemaIR, { type: K }>>;\n};\n\n// ─── Factory ─────────────────────────────────────────────────────────────────\n// Lives here (not in context.ts) to avoid circular imports:\n// visit() → generateSlow() → imports from context.ts\n\nexport function createSlowGen(\n inputExpr: string,\n outputExpr: string,\n pathExpr: string,\n issuesVar: string,\n ctx: CodeGenContext,\n abortedVar?: string,\n): SlowGen {\n return {\n input: inputExpr,\n output: outputExpr,\n path: pathExpr,\n issues: issuesVar,\n aborted: abortedVar,\n ctx,\n visit(ir, overrides) {\n const input = overrides?.input ?? inputExpr;\n const output = overrides?.output ?? outputExpr;\n const path = overrides?.path ?? pathExpr;\n const issues = overrides?.issues ?? issuesVar;\n // `aborted` is deliberately NOT inherited (see SlowGen.aborted): a child\n // only tracks abort when the parent explicitly forwards it, so a pipe\n // buried inside a container never trips its ancestor union's abort flag.\n const aborted = overrides?.aborted;\n // Shared sub-schema: call the file-level `__zcSw_N(input, path, issues)`\n // walk (signature defined in dedupe.ts) instead of inlining a duplicate.\n // It returns the parsed value, so the assignment delivers whatever an\n // inlined walk would have written to `output` — a stripping object's\n // rebuilt result, a coerced number, a trimmed string.\n //\n // But the shared walk's 3-arg signature can't carry this call site's\n // abort flag — a shared pipe option would silently drop it. When we're in\n // an abort-tracking position (`aborted` set), inline instead of sharing so\n // the pipe's abort reaches the union. Non-tracking sites still share.\n const ref = aborted === undefined ? ctx.sharedSchemas?.refFor(ir) : undefined;\n if (ref !== undefined) {\n return `${output}=${ref.name}(${input},${path},${issues});`;\n }\n return generateSlow(ir, createSlowGen(input, output, path, issues, ctx, aborted));\n },\n temp: (prefix) => emitTemp(ctx, prefix),\n regex: (prefix, pattern, flags) => emitRegex(ctx, prefix, pattern, flags),\n set: (prefix, values) => emitSet(ctx, prefix, values),\n };\n}\n\n// ─── Dispatch ────────────────────────────────────────────────────────────────\n\nexport function generateSlow(ir: SchemaIR, g: SlowGen): string {\n // Surface the node's schema-level error message to issue emission. visit()\n // always builds a fresh context, so typeMsg never leaks into child nodes.\n const gen0 = ir.typeMessage !== g.typeMsg ? { ...g, typeMsg: ir.typeMessage } : g;\n const gen = slowRegistry[ir.type];\n // oxlint-disable-next-line typescript/no-explicit-any -- registry dispatch requires type erasure at call site\n return (gen as any)(ir, gen0);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,MAAM,eAAe;CAEnB,QAAQ;CACR,QAAQ;CACR,SAAS;CACT,QAAQ;CACR,MAAM;CACN,QAAQ;CACR,MAAM;CACN,WAAW;CACX,MAAM;CACN,KAAK;CACL,OAAO;CACP,KAAK;CACL,SAAS;CACT,SAAS;CACT,MAAM;CAEN,QAAQ;CACR,OAAO;CACP,OAAO;CACP,QAAQ;CACR,KAAK;CACL,KAAK;CACL,MAAM;CAEN,OAAO;CACP,oBAAoB;CACpB,cAAc;CAEd,UAAU;CACV,UAAU;CACV,UAAU;CACV,SAAS;CACT,MAAM;CAEN,QAAQ;CAER,iBAAiB;CACjB,OAAO;CACP,UAAU;CACV,cAAc;CACd,iBAAiB;CACjB,YAAY;AACd;AAQA,SAAgB,cACd,WACA,YACA,UACA,WACA,KACA,YACS;CACT,OAAO;EACL,OAAO;EACP,QAAQ;EACR,MAAM;EACN,QAAQ;EACR,SAAS;EACT;EACA,MAAM,IAAI,WAAW;GACnB,MAAM,QAAQ,WAAW,SAAS;GAClC,MAAM,SAAS,WAAW,UAAU;GACpC,MAAM,OAAO,WAAW,QAAQ;GAChC,MAAM,SAAS,WAAW,UAAU;GAIpC,MAAM,UAAU,WAAW;GAW3B,MAAM,MAAM,YAAY,KAAA,IAAY,IAAI,eAAe,OAAO,EAAE,IAAI,KAAA;GACpE,IAAI,QAAQ,KAAA,GACV,OAAO,GAAG,OAAO,GAAG,IAAI,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO;GAE1D,OAAO,aAAa,IAAI,cAAc,OAAO,QAAQ,MAAM,QAAQ,KAAK,OAAO,CAAC;EAClF;EACA,OAAO,WAAW,SAAS,KAAK,MAAM;EACtC,QAAQ,QAAQ,SAAS,UAAU,UAAU,KAAK,QAAQ,SAAS,KAAK;EACxE,MAAM,QAAQ,WAAW,QAAQ,KAAK,QAAQ,MAAM;CACtD;AACF;AAIA,SAAgB,aAAa,IAAc,GAAoB;CAG7D,MAAM,OAAO,GAAG,gBAAgB,EAAE,UAAU;EAAE,GAAG;EAAG,SAAS,GAAG;CAAY,IAAI;CAChF,MAAM,MAAM,aAAa,GAAG;CAE5B,OAAQ,IAAY,IAAI,IAAI;AAC9B"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
//#region src/core/codegen/well-known-regex.d.ts
|
|
1
2
|
/**
|
|
2
3
|
* Well-known regex sources hosted in the virtual module "virtual:zod-compiler/runtime".
|
|
3
4
|
*
|
|
@@ -9,7 +10,7 @@
|
|
|
9
10
|
* exposes additional well-known formats and we want bundle-wide dedup.
|
|
10
11
|
*/
|
|
11
12
|
/** Zod v4's email regex source (string.ts uses this directly when format === "email"). */
|
|
12
|
-
|
|
13
|
+
declare const EMAIL_REGEX_SOURCE: string;
|
|
13
14
|
/**
|
|
14
15
|
* Behavior-equivalent rewrite of EMAIL_REGEX_SOURCE that runs ~1.45x faster on V8.
|
|
15
16
|
*
|
|
@@ -22,27 +23,27 @@ export declare const EMAIL_REGEX_SOURCE: string;
|
|
|
22
23
|
* Equivalence is enforced by tests/core/codegen/email-fast-regex.test.ts
|
|
23
24
|
* (exhaustive short-string sweep + structured cases + random fuzz).
|
|
24
25
|
*/
|
|
25
|
-
|
|
26
|
+
declare const EMAIL_FAST_REGEX_SOURCE: string;
|
|
26
27
|
/** Fallback UUID regex used when the extractor doesn't provide a pattern (e.g. in unit tests). */
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
28
|
+
declare const UUID_REGEX_SOURCE = "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$";
|
|
29
|
+
interface WellKnownRegex {
|
|
30
|
+
/** Stable virtual-module export name. Always starts with "__zcRe". */
|
|
31
|
+
name: string;
|
|
32
|
+
/** Pattern source string (verbatim match against `g.regex()` 2nd argument). */
|
|
33
|
+
source: string;
|
|
34
|
+
/**
|
|
35
|
+
* Behavior-equivalent faster pattern used for the actual `.test()` regex.
|
|
36
|
+
* Issue reporting (`pattern:` field) always uses `source` so generated
|
|
37
|
+
* issues stay byte-identical to zod's.
|
|
38
|
+
*/
|
|
39
|
+
testSource?: string;
|
|
39
40
|
}
|
|
40
|
-
|
|
41
|
+
declare const WELL_KNOWN_REGEXES: readonly WellKnownRegex[];
|
|
41
42
|
/**
|
|
42
43
|
* Look up a well-known regex by its pattern source string.
|
|
43
44
|
* Returns the virtual-module export name or null if the pattern is user-defined.
|
|
44
45
|
*/
|
|
45
|
-
|
|
46
|
+
declare function lookupWellKnownRegex(source: string): string | null;
|
|
46
47
|
/**
|
|
47
48
|
* Look up the hand-written behavior-equivalent test pattern for a regex source.
|
|
48
49
|
* Returns null when no rewrite is registered in {@link WELL_KNOWN_REGEXES}.
|
|
@@ -51,7 +52,7 @@ export declare function lookupWellKnownRegex(source: string): string | null;
|
|
|
51
52
|
* layers automatic repeat unrolling on top and also covers user-supplied
|
|
52
53
|
* patterns that are in no table.
|
|
53
54
|
*/
|
|
54
|
-
|
|
55
|
+
declare function lookupFastRegexSource(source: string): string | null;
|
|
55
56
|
/**
|
|
56
57
|
* The pattern a generated `.test()` should actually run for `source`, or null
|
|
57
58
|
* when `source` is already the best form.
|
|
@@ -67,12 +68,14 @@ export declare function lookupFastRegexSource(source: string): string | null;
|
|
|
67
68
|
* need its flags carried into the reported pattern too) and must keep
|
|
68
69
|
* reporting the ORIGINAL source in issues — see `emitRegexSourceString`.
|
|
69
70
|
*/
|
|
70
|
-
|
|
71
|
+
declare function fastTestSource(source: string): string | null;
|
|
71
72
|
/**
|
|
72
73
|
* Virtual-module export name for the ORIGINAL `/source/` pattern string of a
|
|
73
74
|
* rewritten well-known regex (e.g. "__zcReEmailSrc"). Issue sites reference it
|
|
74
75
|
* so the original pattern stays a single bundle-wide string even though the
|
|
75
76
|
* runtime regex object is built from testSource.
|
|
76
77
|
*/
|
|
77
|
-
|
|
78
|
+
declare function wellKnownRegexSourceName(source: string): string | null;
|
|
79
|
+
//#endregion
|
|
80
|
+
export { EMAIL_FAST_REGEX_SOURCE, EMAIL_REGEX_SOURCE, UUID_REGEX_SOURCE, WELL_KNOWN_REGEXES, WellKnownRegex, fastTestSource, lookupFastRegexSource, lookupWellKnownRegex, wellKnownRegexSourceName };
|
|
78
81
|
//# sourceMappingURL=well-known-regex.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"well-known-regex.d.ts","
|
|
1
|
+
{"version":3,"file":"well-known-regex.d.ts","names":[],"sources":["../../../src/core/codegen/well-known-regex.ts"],"mappings":";;;;;;;;;;;;cAca;;;;;;;;;;;;;cAcA;;cAGA;UAGI;;EAEf;;EAEA;;;;;;EAMA;;cAGW,6BAA6B;;;;;iBA8C1B,qBAAqB;;;;;;;;;iBAYrB,sBAAsB;;;;;;;;;;;;;;;;iBAmBtB,eAAe;;;;;;;iBAWf,yBAAyB"}
|
|
@@ -1,111 +1,142 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Well-known regex sources hosted in the virtual module "virtual:zod-compiler/runtime".
|
|
3
|
-
*
|
|
4
|
-
* In lean mode (unplugin), `g.regex()` consults this registry and emits a reference
|
|
5
|
-
* like `__zcReEmail` instead of declaring `var __re_email_*=new RegExp(...)`.
|
|
6
|
-
* The bundler then deduplicates the regex literal across all transformed files.
|
|
7
|
-
*
|
|
8
|
-
* Pattern sources are matched verbatim (string equality). Add new entries as Zod
|
|
9
|
-
* exposes additional well-known formats and we want bundle-wide dedup.
|
|
10
|
-
*/
|
|
11
1
|
import { unrollRepeats } from "./regex-unroll.js";
|
|
2
|
+
//#region src/core/codegen/well-known-regex.ts
|
|
3
|
+
/**
|
|
4
|
+
* Well-known regex sources hosted in the virtual module "virtual:zod-compiler/runtime".
|
|
5
|
+
*
|
|
6
|
+
* In lean mode (unplugin), `g.regex()` consults this registry and emits a reference
|
|
7
|
+
* like `__zcReEmail` instead of declaring `var __re_email_*=new RegExp(...)`.
|
|
8
|
+
* The bundler then deduplicates the regex literal across all transformed files.
|
|
9
|
+
*
|
|
10
|
+
* Pattern sources are matched verbatim (string equality). Add new entries as Zod
|
|
11
|
+
* exposes additional well-known formats and we want bundle-wide dedup.
|
|
12
|
+
*/
|
|
12
13
|
/** Zod v4's email regex source (string.ts uses this directly when format === "email"). */
|
|
13
|
-
|
|
14
|
+
const EMAIL_REGEX_SOURCE = String.raw`^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$`;
|
|
14
15
|
/**
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
16
|
+
* Behavior-equivalent rewrite of EMAIL_REGEX_SOURCE that runs ~1.45x faster on V8.
|
|
17
|
+
*
|
|
18
|
+
* Zod's pattern fronts two lookaheads; `(?!.*\.\.)` re-scans the entire string
|
|
19
|
+
* before matching starts. The rewrite encodes the same constraints structurally:
|
|
20
|
+
* the local part is dot-separated runs of `[A-Za-z0-9_'+-]` (no leading dot, no
|
|
21
|
+
* empty run ⇒ no `..`) ending in `[A-Za-z0-9_+-]`, and the domain grammar already
|
|
22
|
+
* makes `..` impossible (every label starts with an alphanumeric).
|
|
23
|
+
*
|
|
24
|
+
* Equivalence is enforced by tests/core/codegen/email-fast-regex.test.ts
|
|
25
|
+
* (exhaustive short-string sweep + structured cases + random fuzz).
|
|
26
|
+
*/
|
|
27
|
+
const EMAIL_FAST_REGEX_SOURCE = String.raw`^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$`;
|
|
27
28
|
/** Fallback UUID regex used when the extractor doesn't provide a pattern (e.g. in unit tests). */
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
29
|
+
const UUID_REGEX_SOURCE = "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$";
|
|
30
|
+
const WELL_KNOWN_REGEXES = [
|
|
31
|
+
{
|
|
32
|
+
name: "__zcReEmail",
|
|
33
|
+
source: EMAIL_REGEX_SOURCE,
|
|
34
|
+
testSource: EMAIL_FAST_REGEX_SOURCE
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
name: "__zcReUuid",
|
|
38
|
+
source: UUID_REGEX_SOURCE
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
name: "__zcReCuid",
|
|
42
|
+
source: "^[cC][^\\s-]{8,}$"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: "__zcReCuid2",
|
|
46
|
+
source: "^[0-9a-z]+$"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: "__zcReUlid",
|
|
50
|
+
source: "^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
name: "__zcReNanoid",
|
|
54
|
+
source: "^[a-zA-Z0-9_-]{21}$"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: "__zcReXid",
|
|
58
|
+
source: "^[0-9a-vA-V]{20}$"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
name: "__zcReKsuid",
|
|
62
|
+
source: "^[A-Za-z0-9]{27}$"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
name: "__zcReIpv4",
|
|
66
|
+
source: "^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
name: "__zcReIpv6",
|
|
70
|
+
source: "^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
name: "__zcReBase64",
|
|
74
|
+
source: "^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
name: "__zcReBase64Url",
|
|
78
|
+
source: "^[A-Za-z0-9_-]*$"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
name: "__zcReE164",
|
|
82
|
+
source: "^\\+[1-9]\\d{6,14}$"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
name: "__zcReGuid",
|
|
86
|
+
source: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$"
|
|
87
|
+
}
|
|
56
88
|
];
|
|
57
89
|
const SOURCE_TO_NAME = new Map(WELL_KNOWN_REGEXES.map((r) => [r.source, r.name]));
|
|
58
|
-
const SOURCE_TO_TEST_SOURCE = new Map(WELL_KNOWN_REGEXES.filter((r) => r.testSource !==
|
|
59
|
-
r.source,
|
|
60
|
-
r.testSource,
|
|
61
|
-
]));
|
|
90
|
+
const SOURCE_TO_TEST_SOURCE = new Map(WELL_KNOWN_REGEXES.filter((r) => r.testSource !== void 0).map((r) => [r.source, r.testSource]));
|
|
62
91
|
/**
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
92
|
+
* Look up a well-known regex by its pattern source string.
|
|
93
|
+
* Returns the virtual-module export name or null if the pattern is user-defined.
|
|
94
|
+
*/
|
|
95
|
+
function lookupWellKnownRegex(source) {
|
|
96
|
+
return SOURCE_TO_NAME.get(source) ?? null;
|
|
68
97
|
}
|
|
69
98
|
/**
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
99
|
+
* Look up the hand-written behavior-equivalent test pattern for a regex source.
|
|
100
|
+
* Returns null when no rewrite is registered in {@link WELL_KNOWN_REGEXES}.
|
|
101
|
+
*
|
|
102
|
+
* This is the TABLE lookup only. Codegen calls {@link fastTestSource}, which
|
|
103
|
+
* layers automatic repeat unrolling on top and also covers user-supplied
|
|
104
|
+
* patterns that are in no table.
|
|
105
|
+
*/
|
|
106
|
+
function lookupFastRegexSource(source) {
|
|
107
|
+
return SOURCE_TO_TEST_SOURCE.get(source) ?? null;
|
|
79
108
|
}
|
|
80
109
|
/**
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
110
|
+
* The pattern a generated `.test()` should actually run for `source`, or null
|
|
111
|
+
* when `source` is already the best form.
|
|
112
|
+
*
|
|
113
|
+
* Two behavior-preserving rewrites compose here: the hand-written table entry
|
|
114
|
+
* above (currently just email), then {@link unrollRepeats}, which turns bounded
|
|
115
|
+
* repeats of single-character atoms into explicit repetition — worth 1.3-3.4x
|
|
116
|
+
* on the string formats everyday schemas use (uuid, guid, ulid, nanoid, xid,
|
|
117
|
+
* ksuid, base64, e164, iso.date). Unrolling runs on the table rewrite when
|
|
118
|
+
* there is one, so the two stack.
|
|
119
|
+
*
|
|
120
|
+
* Callers must apply this only to flag-less regexes (the flagged form would
|
|
121
|
+
* need its flags carried into the reported pattern too) and must keep
|
|
122
|
+
* reporting the ORIGINAL source in issues — see `emitRegexSourceString`.
|
|
123
|
+
*/
|
|
124
|
+
function fastTestSource(source) {
|
|
125
|
+
const tableRewrite = SOURCE_TO_TEST_SOURCE.get(source) ?? null;
|
|
126
|
+
return unrollRepeats(tableRewrite ?? source) ?? tableRewrite;
|
|
98
127
|
}
|
|
99
128
|
/**
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
return fastTestSource(source) !== null ? `${name}Src` : null;
|
|
129
|
+
* Virtual-module export name for the ORIGINAL `/source/` pattern string of a
|
|
130
|
+
* rewritten well-known regex (e.g. "__zcReEmailSrc"). Issue sites reference it
|
|
131
|
+
* so the original pattern stays a single bundle-wide string even though the
|
|
132
|
+
* runtime regex object is built from testSource.
|
|
133
|
+
*/
|
|
134
|
+
function wellKnownRegexSourceName(source) {
|
|
135
|
+
const name = SOURCE_TO_NAME.get(source);
|
|
136
|
+
if (name === void 0) return null;
|
|
137
|
+
return fastTestSource(source) !== null ? `${name}Src` : null;
|
|
110
138
|
}
|
|
139
|
+
//#endregion
|
|
140
|
+
export { EMAIL_FAST_REGEX_SOURCE, EMAIL_REGEX_SOURCE, UUID_REGEX_SOURCE, WELL_KNOWN_REGEXES, fastTestSource, lookupFastRegexSource, lookupWellKnownRegex, wellKnownRegexSourceName };
|
|
141
|
+
|
|
111
142
|
//# sourceMappingURL=well-known-regex.js.map
|