zod-aot 0.16.1 → 0.16.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.
Files changed (130) hide show
  1. package/dist/core/extract/extractors/any.d.ts +3 -0
  2. package/dist/core/extract/extractors/any.d.ts.map +1 -0
  3. package/dist/core/extract/extractors/any.js +2 -0
  4. package/dist/core/extract/extractors/any.js.map +1 -0
  5. package/dist/core/extract/extractors/array.d.ts +4 -0
  6. package/dist/core/extract/extractors/array.d.ts.map +1 -0
  7. package/dist/core/extract/extractors/array.js +7 -0
  8. package/dist/core/extract/extractors/array.js.map +1 -0
  9. package/dist/core/extract/extractors/boolean.d.ts +3 -0
  10. package/dist/core/extract/extractors/boolean.d.ts.map +1 -0
  11. package/dist/core/extract/extractors/boolean.js +5 -0
  12. package/dist/core/extract/extractors/boolean.js.map +1 -0
  13. package/dist/core/extract/extractors/catch.d.ts +2 -2
  14. package/dist/core/extract/extractors/catch.d.ts.map +1 -1
  15. package/dist/core/extract/extractors/catch.js +6 -7
  16. package/dist/core/extract/extractors/catch.js.map +1 -1
  17. package/dist/core/extract/extractors/default.d.ts +2 -2
  18. package/dist/core/extract/extractors/default.d.ts.map +1 -1
  19. package/dist/core/extract/extractors/default.js +4 -5
  20. package/dist/core/extract/extractors/default.js.map +1 -1
  21. package/dist/core/extract/extractors/enum.d.ts +3 -0
  22. package/dist/core/extract/extractors/enum.d.ts.map +1 -0
  23. package/dist/core/extract/extractors/enum.js +5 -0
  24. package/dist/core/extract/extractors/enum.js.map +1 -0
  25. package/dist/core/extract/extractors/index.d.ts +20 -0
  26. package/dist/core/extract/extractors/index.d.ts.map +1 -1
  27. package/dist/core/extract/extractors/index.js +20 -0
  28. package/dist/core/extract/extractors/index.js.map +1 -1
  29. package/dist/core/extract/extractors/intersection.d.ts +3 -0
  30. package/dist/core/extract/extractors/intersection.d.ts.map +1 -0
  31. package/dist/core/extract/extractors/intersection.js +6 -0
  32. package/dist/core/extract/extractors/intersection.js.map +1 -0
  33. package/dist/core/extract/extractors/lazy.d.ts +2 -2
  34. package/dist/core/extract/extractors/lazy.d.ts.map +1 -1
  35. package/dist/core/extract/extractors/lazy.js +5 -5
  36. package/dist/core/extract/extractors/lazy.js.map +1 -1
  37. package/dist/core/extract/extractors/literal.d.ts +3 -0
  38. package/dist/core/extract/extractors/literal.d.ts.map +1 -0
  39. package/dist/core/extract/extractors/literal.js +2 -0
  40. package/dist/core/extract/extractors/literal.js.map +1 -0
  41. package/dist/core/extract/extractors/map.d.ts +4 -0
  42. package/dist/core/extract/extractors/map.d.ts.map +1 -0
  43. package/dist/core/extract/extractors/map.js +6 -0
  44. package/dist/core/extract/extractors/map.js.map +1 -0
  45. package/dist/core/extract/extractors/nan.d.ts +3 -0
  46. package/dist/core/extract/extractors/nan.d.ts.map +1 -0
  47. package/dist/core/extract/extractors/nan.js +2 -0
  48. package/dist/core/extract/extractors/nan.js.map +1 -0
  49. package/dist/core/extract/extractors/never.d.ts +3 -0
  50. package/dist/core/extract/extractors/never.d.ts.map +1 -0
  51. package/dist/core/extract/extractors/never.js +2 -0
  52. package/dist/core/extract/extractors/never.js.map +1 -0
  53. package/dist/core/extract/extractors/null.d.ts +3 -0
  54. package/dist/core/extract/extractors/null.d.ts.map +1 -0
  55. package/dist/core/extract/extractors/null.js +2 -0
  56. package/dist/core/extract/extractors/null.js.map +1 -0
  57. package/dist/core/extract/extractors/nullable.d.ts +3 -0
  58. package/dist/core/extract/extractors/nullable.d.ts.map +1 -0
  59. package/dist/core/extract/extractors/nullable.js +5 -0
  60. package/dist/core/extract/extractors/nullable.js.map +1 -0
  61. package/dist/core/extract/extractors/number.d.ts +2 -2
  62. package/dist/core/extract/extractors/number.d.ts.map +1 -1
  63. package/dist/core/extract/extractors/number.js +2 -3
  64. package/dist/core/extract/extractors/number.js.map +1 -1
  65. package/dist/core/extract/extractors/object.d.ts +4 -0
  66. package/dist/core/extract/extractors/object.d.ts.map +1 -0
  67. package/dist/core/extract/extractors/object.js +18 -0
  68. package/dist/core/extract/extractors/object.js.map +1 -0
  69. package/dist/core/extract/extractors/optional.d.ts +3 -0
  70. package/dist/core/extract/extractors/optional.d.ts.map +1 -0
  71. package/dist/core/extract/extractors/optional.js +5 -0
  72. package/dist/core/extract/extractors/optional.js.map +1 -0
  73. package/dist/core/extract/extractors/pipe.d.ts +2 -2
  74. package/dist/core/extract/extractors/pipe.d.ts.map +1 -1
  75. package/dist/core/extract/extractors/pipe.js +5 -6
  76. package/dist/core/extract/extractors/pipe.js.map +1 -1
  77. package/dist/core/extract/extractors/readonly.d.ts +3 -0
  78. package/dist/core/extract/extractors/readonly.d.ts.map +1 -0
  79. package/dist/core/extract/extractors/readonly.js +5 -0
  80. package/dist/core/extract/extractors/readonly.js.map +1 -0
  81. package/dist/core/extract/extractors/record.d.ts +4 -0
  82. package/dist/core/extract/extractors/record.d.ts.map +1 -0
  83. package/dist/core/extract/extractors/record.js +9 -0
  84. package/dist/core/extract/extractors/record.js.map +1 -0
  85. package/dist/core/extract/extractors/set.d.ts +2 -2
  86. package/dist/core/extract/extractors/set.d.ts.map +1 -1
  87. package/dist/core/extract/extractors/set.js +2 -2
  88. package/dist/core/extract/extractors/set.js.map +1 -1
  89. package/dist/core/extract/extractors/string.d.ts +2 -2
  90. package/dist/core/extract/extractors/string.d.ts.map +1 -1
  91. package/dist/core/extract/extractors/string.js +2 -3
  92. package/dist/core/extract/extractors/string.js.map +1 -1
  93. package/dist/core/extract/extractors/symbol.d.ts +3 -0
  94. package/dist/core/extract/extractors/symbol.d.ts.map +1 -0
  95. package/dist/core/extract/extractors/symbol.js +2 -0
  96. package/dist/core/extract/extractors/symbol.js.map +1 -0
  97. package/dist/core/extract/extractors/template-literal.d.ts +2 -2
  98. package/dist/core/extract/extractors/template-literal.d.ts.map +1 -1
  99. package/dist/core/extract/extractors/template-literal.js +3 -3
  100. package/dist/core/extract/extractors/template-literal.js.map +1 -1
  101. package/dist/core/extract/extractors/tuple.d.ts +4 -0
  102. package/dist/core/extract/extractors/tuple.d.ts.map +1 -0
  103. package/dist/core/extract/extractors/tuple.js +6 -0
  104. package/dist/core/extract/extractors/tuple.js.map +1 -0
  105. package/dist/core/extract/extractors/undefined.d.ts +3 -0
  106. package/dist/core/extract/extractors/undefined.d.ts.map +1 -0
  107. package/dist/core/extract/extractors/undefined.js +2 -0
  108. package/dist/core/extract/extractors/undefined.js.map +1 -0
  109. package/dist/core/extract/extractors/union.d.ts +2 -2
  110. package/dist/core/extract/extractors/union.d.ts.map +1 -1
  111. package/dist/core/extract/extractors/union.js +3 -3
  112. package/dist/core/extract/extractors/union.js.map +1 -1
  113. package/dist/core/extract/extractors/unknown.d.ts +3 -0
  114. package/dist/core/extract/extractors/unknown.d.ts.map +1 -0
  115. package/dist/core/extract/extractors/unknown.js +2 -0
  116. package/dist/core/extract/extractors/unknown.js.map +1 -0
  117. package/dist/core/extract/extractors/void.d.ts +3 -0
  118. package/dist/core/extract/extractors/void.d.ts.map +1 -0
  119. package/dist/core/extract/extractors/void.js +2 -0
  120. package/dist/core/extract/extractors/void.js.map +1 -0
  121. package/dist/core/extract/index.d.ts.map +1 -1
  122. package/dist/core/extract/index.js +2 -125
  123. package/dist/core/extract/index.js.map +1 -1
  124. package/dist/core/extract/registry.d.ts +57 -0
  125. package/dist/core/extract/registry.d.ts.map +1 -0
  126. package/dist/core/extract/registry.js +114 -0
  127. package/dist/core/extract/registry.js.map +1 -0
  128. package/dist/core/extract/types.d.ts +19 -2
  129. package/dist/core/extract/types.d.ts.map +1 -1
  130. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"pipe.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/pipe.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,MAAM,UAAU,WAAW,CACzB,GAAW,EACX,SAAkB,EAClB,CAAS,EACT,SAAsC,EACtC,OAAkB,EAClB,QAAuB;IAEvB,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC;IAClC,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;YACtE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC1E,CAAC;QACD,OAAO,YAAY,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IACzE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"pipe.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/pipe.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGjD,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,GAAqB;IAC5D,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC;IAClC,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;YAC/C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC1E,CAAC;QACD,OAAO,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAClD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;AAChD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Extractor } from "../types.js";
2
+ export declare const extractReadonly: Extractor;
3
+ //# sourceMappingURL=readonly.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readonly.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/readonly.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,eAAe,EAAE,SAG5B,CAAC"}
@@ -0,0 +1,5 @@
1
+ export const extractReadonly = (def, ctx) => ({
2
+ type: "readonly",
3
+ inner: ctx.visit(def.innerType, "._zod.def.innerType"),
4
+ });
5
+ //# sourceMappingURL=readonly.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readonly.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/readonly.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,4 @@
1
+ import type { SchemaIR } from "../../types.js";
2
+ import type { ExtractorContext, ZodDef } from "../types.js";
3
+ export declare function extractRecord(def: ZodDef, ctx: ExtractorContext): SchemaIR;
4
+ //# sourceMappingURL=record.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/record.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,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAO1E"}
@@ -0,0 +1,9 @@
1
+ export function extractRecord(def, ctx) {
2
+ if (!def.valueType) {
3
+ return ctx.fallback("unsupported");
4
+ }
5
+ const keyType = ctx.visit(def.keyType, "._zod.def.keyType");
6
+ const valueType = ctx.visit(def.valueType, "._zod.def.valueType");
7
+ return { type: "record", keyType, valueType };
8
+ }
9
+ //# sourceMappingURL=record.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/record.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,GAAqB;IAC9D,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IACD,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,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AAChD,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import type { SchemaIR } from "../../types.js";
2
- import type { ExtractFn, FallbackEntry, ZodDef } from "../types.js";
3
- export declare function extractSet(def: ZodDef, p: string, fallbacks: FallbackEntry[] | undefined, recurse: ExtractFn, visiting?: Set<unknown>): SchemaIR;
2
+ import type { ExtractorContext, ZodDef } from "../types.js";
3
+ export declare function extractSet(def: ZodDef, ctx: ExtractorContext): SchemaIR;
4
4
  //# sourceMappingURL=set.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/set.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAc,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEpE,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,CAAC,EAAE,MAAM,EACT,SAAS,EAAE,aAAa,EAAE,GAAG,SAAS,EACtC,OAAO,EAAE,SAAS,EAClB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,GACtB,QAAQ,CAeV"}
1
+ {"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/set.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAc,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE5D,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAevE"}
@@ -1,5 +1,5 @@
1
- export function extractSet(def, p, fallbacks, recurse, visiting) {
2
- const valueType = recurse(def.valueType, fallbacks, `${p}._zod.def.valueType`, visiting);
1
+ export function extractSet(def, ctx) {
2
+ const valueType = ctx.visit(def.valueType, "._zod.def.valueType");
3
3
  const setChecks = [];
4
4
  if (def.checks) {
5
5
  for (const check of def.checks) {
@@ -1 +1 @@
1
- {"version":3,"file":"set.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/set.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,UAAU,CACxB,GAAW,EACX,CAAS,EACT,SAAsC,EACtC,OAAkB,EAClB,QAAuB;IAEvB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IACzF,MAAM,SAAS,GAAiB,EAAE,CAAC;IACnC,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,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YAClE,CAAC;iBAAM,IAAI,QAAQ,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBACzC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAC5F,CAAC"}
1
+ {"version":3,"file":"set.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/set.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,GAAqB;IAC3D,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAClE,MAAM,SAAS,GAAiB,EAAE,CAAC;IACnC,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,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YAClE,CAAC;iBAAM,IAAI,QAAQ,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBACzC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAC5F,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import type { SchemaIR } from "../../types.js";
2
- import type { FallbackEntry, ZodDef } from "../types.js";
3
- export declare function extractString(def: ZodDef, zodSchema: unknown, p: string, fallbacks: FallbackEntry[] | undefined): SchemaIR;
2
+ import type { ExtractorContext, ZodDef } from "../types.js";
3
+ export declare function extractString(def: ZodDef, ctx: ExtractorContext): SchemaIR;
4
4
  //# sourceMappingURL=string.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/string.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEzD,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,OAAO,EAClB,CAAC,EAAE,MAAM,EACT,SAAS,EAAE,aAAa,EAAE,GAAG,SAAS,GACrC,QAAQ,CAiBV"}
1
+ {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/string.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE5D,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAiB1E"}
@@ -1,6 +1,5 @@
1
1
  import { extractChecks } from "../checks.js";
2
- import { makeFallback } from "../fallback.js";
3
- export function extractString(def, zodSchema, p, fallbacks) {
2
+ export function extractString(def, ctx) {
4
3
  const coerce = def.coerce ? { coerce: true } : {};
5
4
  // String format schemas (z.email(), z.url(), z.uuid())
6
5
  if (def.check === "string_format") {
@@ -16,7 +15,7 @@ export function extractString(def, zodSchema, p, fallbacks) {
16
15
  }
17
16
  const { checkIRs, hasFallback } = extractChecks(def.checks);
18
17
  if (hasFallback)
19
- return makeFallback("refine", zodSchema, fallbacks, p);
18
+ return ctx.fallback("refine");
20
19
  return { type: "string", checks: checkIRs, ...coerce };
21
20
  }
22
21
  //# sourceMappingURL=string.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"string.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/string.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,MAAM,UAAU,aAAa,CAC3B,GAAW,EACX,SAAkB,EAClB,CAAS,EACT,SAAsC;IAEtC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,uDAAuD;IACvD,IAAI,GAAG,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,YAAY,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;QACjF,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YACxF,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC;IACnD,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5D,IAAI,WAAW;QAAE,OAAO,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACxE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;AACzD,CAAC"}
1
+ {"version":3,"file":"string.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/string.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,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,uDAAuD;IACvD,IAAI,GAAG,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,YAAY,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;QACjF,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YACxF,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC;IACnD,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5D,IAAI,WAAW;QAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC/C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;AACzD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Extractor } from "../types.js";
2
+ export declare const extractSymbol: Extractor;
3
+ //# sourceMappingURL=symbol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symbol.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/symbol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,aAAa,EAAE,SAAsC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const extractSymbol = () => ({ type: "symbol" });
2
+ //# sourceMappingURL=symbol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symbol.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/symbol.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,aAAa,GAAc,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import type { SchemaIR } from "../../types.js";
2
- import type { FallbackEntry, ZodSchema } from "../types.js";
3
- export declare function extractTemplateLiteral(schema: ZodSchema, zodSchema: unknown, p: string, fallbacks: FallbackEntry[] | undefined): SchemaIR;
2
+ import type { ExtractorContext } from "../types.js";
3
+ export declare function extractTemplateLiteral(_def: unknown, ctx: ExtractorContext): SchemaIR;
4
4
  //# sourceMappingURL=template-literal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"template-literal.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/template-literal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE5D,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,OAAO,EAClB,CAAC,EAAE,MAAM,EACT,SAAS,EAAE,aAAa,EAAE,GAAG,SAAS,GACrC,QAAQ,CAIV"}
1
+ {"version":3,"file":"template-literal.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/template-literal.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,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAKrF"}
@@ -1,8 +1,8 @@
1
- import { makeFallback } from "../fallback.js";
2
- export function extractTemplateLiteral(schema, zodSchema, p, fallbacks) {
1
+ export function extractTemplateLiteral(_def, ctx) {
2
+ const schema = ctx.schema;
3
3
  const pattern = schema._zod.pattern;
4
4
  if (!pattern)
5
- return makeFallback("unsupported", zodSchema, fallbacks, p);
5
+ return ctx.fallback("unsupported");
6
6
  return { type: "templateLiteral", pattern: pattern.source };
7
7
  }
8
8
  //# sourceMappingURL=template-literal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"template-literal.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/template-literal.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,MAAM,UAAU,sBAAsB,CACpC,MAAiB,EACjB,SAAkB,EAClB,CAAS,EACT,SAAsC;IAEtC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;IACpC,IAAI,CAAC,OAAO;QAAE,OAAO,YAAY,CAAC,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAC1E,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"template-literal.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/template-literal.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,sBAAsB,CAAC,IAAa,EAAE,GAAqB;IACzE,MAAM,MAAM,GAAG,GAAG,CAAC,MAAmB,CAAC;IACvC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;IACpC,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACjD,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;AAC9D,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { SchemaIR } from "../../types.js";
2
+ import type { ExtractorContext, ZodDef } from "../types.js";
3
+ export declare function extractTuple(def: ZodDef, ctx: ExtractorContext): SchemaIR;
4
+ //# sourceMappingURL=tuple.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tuple.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/tuple.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,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAIzE"}
@@ -0,0 +1,6 @@
1
+ export function extractTuple(def, ctx) {
2
+ const items = def.items.map((item, i) => ctx.visit(item, `._zod.def.items[${i}]`));
3
+ const rest = def.rest ? ctx.visit(def.rest, "._zod.def.rest") : null;
4
+ return { type: "tuple", items, rest };
5
+ }
6
+ //# sourceMappingURL=tuple.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tuple.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/tuple.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,GAAqB;IAC7D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC;IACnF,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACxC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Extractor } from "../types.js";
2
+ export declare const extractUndefined: Extractor;
3
+ //# sourceMappingURL=undefined.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"undefined.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/undefined.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,gBAAgB,EAAE,SAAyC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const extractUndefined = () => ({ type: "undefined" });
2
+ //# sourceMappingURL=undefined.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"undefined.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/undefined.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAc,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import type { SchemaIR } from "../../types.js";
2
- import type { ExtractFn, FallbackEntry, ZodDef } from "../types.js";
3
- export declare function extractUnion(def: ZodDef, p: string, fallbacks: FallbackEntry[] | undefined, recurse: ExtractFn, visiting?: Set<unknown>): SchemaIR;
2
+ import type { ExtractorContext, ZodDef } from "../types.js";
3
+ export declare function extractUnion(def: ZodDef, ctx: ExtractorContext): SchemaIR;
4
4
  //# sourceMappingURL=union.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/union.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAa,MAAM,aAAa,CAAC;AAE/E,wBAAgB,YAAY,CAC1B,GAAG,EAAE,MAAM,EACX,CAAC,EAAE,MAAM,EACT,SAAS,EAAE,aAAa,EAAE,GAAG,SAAS,EACtC,OAAO,EAAE,SAAS,EAClB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,GACtB,QAAQ,CA2BV"}
1
+ {"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/union.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAa,MAAM,aAAa,CAAC;AAEvE,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAuBzE"}
@@ -1,6 +1,6 @@
1
- export function extractUnion(def, p, fallbacks, recurse, visiting) {
1
+ export function extractUnion(def, ctx) {
2
2
  if (def.discriminator) {
3
- const options = def.options.map((opt, i) => recurse(opt, fallbacks, `${p}._zod.def.options[${i}]`, visiting));
3
+ const options = def.options.map((opt, i) => ctx.visit(opt, `._zod.def.options[${i}]`));
4
4
  const mapping = {};
5
5
  for (let i = 0; i < def.options.length; i++) {
6
6
  const opt = def.options[i];
@@ -19,7 +19,7 @@ export function extractUnion(def, p, fallbacks, recurse, visiting) {
19
19
  }
20
20
  return {
21
21
  type: "union",
22
- options: def.options.map((opt, i) => recurse(opt, fallbacks, `${p}._zod.def.options[${i}]`, visiting)),
22
+ options: def.options.map((opt, i) => ctx.visit(opt, `._zod.def.options[${i}]`)),
23
23
  };
24
24
  }
25
25
  //# sourceMappingURL=union.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"union.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/union.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,YAAY,CAC1B,GAAW,EACX,CAAS,EACT,SAAsC,EACtC,OAAkB,EAClB,QAAuB;IAEvB,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CACzC,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,QAAQ,CAAC,CACjE,CAAC;QACF,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAc,CAAC;YACxC,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;YAC5B,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC7C,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBACrD,IAAI,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;oBAChD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,MAAuC,CAAC;oBAC3E,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;wBACrB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,aAAa,EAAE,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC5F,CAAC;IACD,OAAO;QACL,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAClC,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,QAAQ,CAAC,CACjE;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"union.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/union.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,GAAqB;IAC7D,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;QACvF,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAc,CAAC;YACxC,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;YAC5B,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC7C,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBACrD,IAAI,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;oBAChD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,MAAuC,CAAC;oBAC3E,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;wBACrB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,aAAa,EAAE,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC5F,CAAC;IACD,OAAO;QACL,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,qBAAqB,CAAC,GAAG,CAAC,CAAC;KAChF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Extractor } from "../types.js";
2
+ export declare const extractUnknown: Extractor;
3
+ //# sourceMappingURL=unknown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unknown.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/unknown.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,cAAc,EAAE,SAAuC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const extractUnknown = () => ({ type: "unknown" });
2
+ //# sourceMappingURL=unknown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unknown.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/unknown.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAc,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Extractor } from "../types.js";
2
+ export declare const extractVoid: Extractor;
3
+ //# sourceMappingURL=void.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"void.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/void.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,WAAW,EAAE,SAAoC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const extractVoid = () => ({ type: "void" });
2
+ //# sourceMappingURL=void.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"void.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/void.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAc,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/extract/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAgB5C,OAAO,KAAK,EAAE,aAAa,EAAa,MAAM,YAAY,CAAC;AAE3D,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,OAAO,EAClB,SAAS,CAAC,EAAE,aAAa,EAAE,EAC3B,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,GACtB,QAAQ,CAaV"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/extract/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,OAAO,EAClB,SAAS,CAAC,EAAE,aAAa,EAAE,EAC3B,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,GACtB,QAAQ,CAEV"}
@@ -1,6 +1,4 @@
1
- import { extractChecks } from "./checks.js";
2
- import { extractBigint, extractCatch, extractDate, extractDefault, extractLazy, extractNumber, extractPipe, extractSet, extractString, extractTemplateLiteral, extractUnion, } from "./extractors/index.js";
3
- import { makeFallback } from "./fallback.js";
1
+ import { dispatch } from "./registry.js";
4
2
  /**
5
3
  * Extract SchemaIR from a Zod schema by traversing its `_zod.def` and `_zod.bag`.
6
4
  *
@@ -8,127 +6,6 @@ import { makeFallback } from "./fallback.js";
8
6
  * access paths for partial fallback (Zod delegation at runtime).
9
7
  */
10
8
  export function extractSchema(zodSchema, fallbacks, currentPath, visiting) {
11
- const schema = zodSchema;
12
- const def = schema._zod.def;
13
- const p = currentPath ?? "";
14
- const v = visiting ?? new Set();
15
- // Track current schema for cycle detection in lazy resolution
16
- v.add(zodSchema);
17
- const ir = extractSchemaInner(schema, def, p, v, fallbacks, zodSchema);
18
- v.delete(zodSchema);
19
- return ir;
20
- }
21
- function extractSchemaInner(schema, def, p, v, fallbacks, zodSchema) {
22
- switch (def.type) {
23
- // ── Simple cases (inline) ──────────────────────────────────────────────
24
- case "boolean":
25
- return { type: "boolean", ...(def.coerce ? { coerce: true } : {}) };
26
- case "null":
27
- return { type: "null" };
28
- case "undefined":
29
- return { type: "undefined" };
30
- case "any":
31
- return { type: "any" };
32
- case "unknown":
33
- return { type: "unknown" };
34
- case "symbol":
35
- return { type: "symbol" };
36
- case "void":
37
- return { type: "void" };
38
- case "nan":
39
- return { type: "nan" };
40
- case "never":
41
- return { type: "never" };
42
- case "literal":
43
- return { type: "literal", values: def.values };
44
- case "enum":
45
- return { type: "enum", values: Object.values(def.entries) };
46
- case "optional":
47
- return {
48
- type: "optional",
49
- inner: extractSchema(def.innerType, fallbacks, `${p}._zod.def.innerType`, v),
50
- };
51
- case "nullable":
52
- return {
53
- type: "nullable",
54
- inner: extractSchema(def.innerType, fallbacks, `${p}._zod.def.innerType`, v),
55
- };
56
- case "readonly":
57
- return {
58
- type: "readonly",
59
- inner: extractSchema(def.innerType, fallbacks, `${p}._zod.def.innerType`, v),
60
- };
61
- case "object": {
62
- const properties = {};
63
- for (const [key, value] of Object.entries(def.shape)) {
64
- const propPath = `${p}.shape[${JSON.stringify(key)}]`;
65
- properties[key] = extractSchema(value, fallbacks, propPath, v);
66
- }
67
- if (def.checks && def.checks.length > 0) {
68
- const { checkIRs, hasFallback } = extractChecks(def.checks);
69
- if (hasFallback)
70
- return makeFallback("refine", zodSchema, fallbacks, p);
71
- const refineChecks = checkIRs.filter((c) => c.kind === "refine_effect");
72
- if (refineChecks.length > 0) {
73
- return { type: "object", properties, checks: refineChecks };
74
- }
75
- }
76
- return { type: "object", properties };
77
- }
78
- case "array": {
79
- const element = extractSchema(def.element, fallbacks, `${p}._zod.def.element`, v);
80
- const { checkIRs } = def.checks ? extractChecks(def.checks) : { checkIRs: [] };
81
- return { type: "array", element, checks: checkIRs };
82
- }
83
- case "tuple": {
84
- const items = def.items.map((item, i) => extractSchema(item, fallbacks, `${p}._zod.def.items[${i}]`, v));
85
- const rest = def.rest ? extractSchema(def.rest, fallbacks, `${p}._zod.def.rest`, v) : null;
86
- return { type: "tuple", items, rest };
87
- }
88
- case "record": {
89
- if (!def.valueType) {
90
- return makeFallback("unsupported", zodSchema, fallbacks, p);
91
- }
92
- const keyType = extractSchema(def.keyType, fallbacks, `${p}._zod.def.keyType`, v);
93
- const valueType = extractSchema(def.valueType, fallbacks, `${p}._zod.def.valueType`, v);
94
- return { type: "record", keyType, valueType };
95
- }
96
- case "intersection":
97
- return {
98
- type: "intersection",
99
- left: extractSchema(def.left, fallbacks, `${p}._zod.def.left`, v),
100
- right: extractSchema(def.right, fallbacks, `${p}._zod.def.right`, v),
101
- };
102
- case "map": {
103
- const keyType = extractSchema(def.keyType, fallbacks, `${p}._zod.def.keyType`, v);
104
- const valueType = extractSchema(def.valueType, fallbacks, `${p}._zod.def.valueType`, v);
105
- return { type: "map", keyType, valueType };
106
- }
107
- case "lazy":
108
- return extractLazy(schema, zodSchema, p, fallbacks, extractSchema, v);
109
- // ── Complex cases (delegated to extractors/) ───────────────────────────
110
- case "string":
111
- return extractString(def, zodSchema, p, fallbacks);
112
- case "number":
113
- return extractNumber(def, zodSchema, p, fallbacks);
114
- case "date":
115
- return extractDate(def);
116
- case "bigint":
117
- return extractBigint(def);
118
- case "set":
119
- return extractSet(def, p, fallbacks, extractSchema, v);
120
- case "union":
121
- return extractUnion(def, p, fallbacks, extractSchema, v);
122
- case "default":
123
- return extractDefault(def, zodSchema, p, fallbacks, extractSchema, v);
124
- case "pipe":
125
- return extractPipe(def, zodSchema, p, fallbacks, extractSchema, v);
126
- case "template_literal":
127
- return extractTemplateLiteral(schema, zodSchema, p, fallbacks);
128
- case "catch":
129
- return extractCatch(def, zodSchema, p, fallbacks, extractSchema, v);
130
- default:
131
- return makeFallback("unsupported", zodSchema, fallbacks, p);
132
- }
9
+ return dispatch(zodSchema, currentPath ?? "", fallbacks, visiting ?? new Set());
133
10
  }
134
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/extract/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/extract/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAKzC;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAC3B,SAAkB,EAClB,SAA2B,EAC3B,WAAoB,EACpB,QAAuB;IAEvB,OAAO,QAAQ,CAAC,SAAS,EAAE,WAAW,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,IAAI,IAAI,GAAG,EAAW,CAAC,CAAC;AAC3F,CAAC"}
@@ -0,0 +1,57 @@
1
+ import type { SchemaIR } from "../types.js";
2
+ import { extractArray } from "./extractors/array.js";
3
+ import { extractBigint } from "./extractors/bigint.js";
4
+ import { extractCatch } from "./extractors/catch.js";
5
+ import { extractDate } from "./extractors/date.js";
6
+ import { extractDefault } from "./extractors/default.js";
7
+ import { extractLazy } from "./extractors/lazy.js";
8
+ import { extractMap } from "./extractors/map.js";
9
+ import { extractNumber } from "./extractors/number.js";
10
+ import { extractObject } from "./extractors/object.js";
11
+ import { extractPipe } from "./extractors/pipe.js";
12
+ import { extractRecord } from "./extractors/record.js";
13
+ import { extractSet } from "./extractors/set.js";
14
+ import { extractString } from "./extractors/string.js";
15
+ import { extractTemplateLiteral } from "./extractors/template-literal.js";
16
+ import { extractTuple } from "./extractors/tuple.js";
17
+ import { extractUnion } from "./extractors/union.js";
18
+ import type { Extractor, FallbackEntry } from "./types.js";
19
+ export declare const extractRegistry: {
20
+ boolean: Extractor;
21
+ null: Extractor;
22
+ undefined: Extractor;
23
+ any: Extractor;
24
+ unknown: Extractor;
25
+ symbol: Extractor;
26
+ void: Extractor;
27
+ nan: Extractor;
28
+ never: Extractor;
29
+ literal: Extractor;
30
+ enum: Extractor;
31
+ optional: Extractor;
32
+ nullable: Extractor;
33
+ readonly: Extractor;
34
+ intersection: Extractor;
35
+ string: typeof extractString;
36
+ number: typeof extractNumber;
37
+ bigint: typeof extractBigint;
38
+ date: typeof extractDate;
39
+ object: typeof extractObject;
40
+ array: typeof extractArray;
41
+ tuple: typeof extractTuple;
42
+ record: typeof extractRecord;
43
+ set: typeof extractSet;
44
+ map: typeof extractMap;
45
+ union: typeof extractUnion;
46
+ default: typeof extractDefault;
47
+ pipe: typeof extractPipe;
48
+ lazy: typeof extractLazy;
49
+ catch: typeof extractCatch;
50
+ template_literal: typeof extractTemplateLiteral;
51
+ };
52
+ /**
53
+ * Central dispatch — replaces extractSchemaInner().
54
+ * visit() and dispatch() form a mutually recursive pair, both in this file.
55
+ */
56
+ export declare function dispatch(zodSchema: unknown, path: string, fallbacks: FallbackEntry[] | undefined, visiting: Set<unknown>): SchemaIR;
57
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/core/extract/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,QAAQ,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGzD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAKjD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAIrD,OAAO,KAAK,EACV,SAAS,EAET,aAAa,EAGd,MAAM,YAAY,CAAC;AAWpB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCsB,CAAC;AA6BnD;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,SAAS,EAAE,OAAO,EAClB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,aAAa,EAAE,GAAG,SAAS,EACtC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,GACrB,QAAQ,CAcV"}