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.
Files changed (494) hide show
  1. package/README.md +9 -6
  2. package/dist/cli/commands/check.d.ts +10 -7
  3. package/dist/cli/commands/check.d.ts.map +1 -1
  4. package/dist/cli/commands/check.js +125 -148
  5. package/dist/cli/commands/check.js.map +1 -1
  6. package/dist/cli/commands/generate.d.ts +22 -19
  7. package/dist/cli/commands/generate.d.ts.map +1 -1
  8. package/dist/cli/commands/generate.js +102 -133
  9. package/dist/cli/commands/generate.js.map +1 -1
  10. package/dist/cli/commands/watch.d.ts +17 -15
  11. package/dist/cli/commands/watch.d.ts.map +1 -1
  12. package/dist/cli/commands/watch.js +126 -154
  13. package/dist/cli/commands/watch.js.map +1 -1
  14. package/dist/cli/emitter.d.ts +19 -16
  15. package/dist/cli/emitter.d.ts.map +1 -1
  16. package/dist/cli/emitter.js +55 -71
  17. package/dist/cli/emitter.js.map +1 -1
  18. package/dist/cli/errors.d.ts +4 -1
  19. package/dist/cli/errors.d.ts.map +1 -1
  20. package/dist/cli/errors.js +6 -2
  21. package/dist/cli/errors.js.map +1 -1
  22. package/dist/cli/index.d.ts +1 -3
  23. package/dist/cli/index.js +147 -160
  24. package/dist/cli/index.js.map +1 -1
  25. package/dist/cli/logger.d.ts +18 -15
  26. package/dist/cli/logger.d.ts.map +1 -1
  27. package/dist/cli/logger.js +38 -37
  28. package/dist/cli/logger.js.map +1 -1
  29. package/dist/core/codegen/build-path.d.ts +7 -41
  30. package/dist/core/codegen/build-path.d.ts.map +1 -1
  31. package/dist/core/codegen/build-path.js +481 -570
  32. package/dist/core/codegen/build-path.js.map +1 -1
  33. package/dist/core/codegen/context.d.ts +256 -253
  34. package/dist/core/codegen/context.d.ts.map +1 -1
  35. package/dist/core/codegen/context.js +363 -437
  36. package/dist/core/codegen/context.js.map +1 -1
  37. package/dist/core/codegen/dedupe.d.ts +22 -56
  38. package/dist/core/codegen/dedupe.d.ts.map +1 -1
  39. package/dist/core/codegen/dedupe.js +150 -242
  40. package/dist/core/codegen/dedupe.js.map +1 -1
  41. package/dist/core/codegen/emit-issue.d.ts +44 -68
  42. package/dist/core/codegen/emit-issue.d.ts.map +1 -1
  43. package/dist/core/codegen/emit-issue.js +76 -108
  44. package/dist/core/codegen/emit-issue.js.map +1 -1
  45. package/dist/core/codegen/emit.d.ts +4 -1
  46. package/dist/core/codegen/emit.d.ts.map +1 -1
  47. package/dist/core/codegen/emit.js +16 -13
  48. package/dist/core/codegen/emit.js.map +1 -1
  49. package/dist/core/codegen/fast-path.d.ts +7 -12
  50. package/dist/core/codegen/fast-path.d.ts.map +1 -1
  51. package/dist/core/codegen/fast-path.js +116 -145
  52. package/dist/core/codegen/fast-path.js.map +1 -1
  53. package/dist/core/codegen/fast-size.d.ts +12 -26
  54. package/dist/core/codegen/fast-size.d.ts.map +1 -1
  55. package/dist/core/codegen/fast-size.js +169 -244
  56. package/dist/core/codegen/fast-size.js.map +1 -1
  57. package/dist/core/codegen/index.d.ts +25 -23
  58. package/dist/core/codegen/index.d.ts.map +1 -1
  59. package/dist/core/codegen/index.js +239 -405
  60. package/dist/core/codegen/index.js.map +1 -1
  61. package/dist/core/codegen/issue-decls.d.ts +15 -12
  62. package/dist/core/codegen/issue-decls.d.ts.map +1 -1
  63. package/dist/core/codegen/issue-decls.js +131 -162
  64. package/dist/core/codegen/issue-decls.js.map +1 -1
  65. package/dist/core/codegen/regex-unroll.d.ts +4 -1
  66. package/dist/core/codegen/regex-unroll.d.ts.map +1 -1
  67. package/dist/core/codegen/regex-unroll.js +173 -197
  68. package/dist/core/codegen/regex-unroll.js.map +1 -1
  69. package/dist/core/codegen/schemas/any.d.ts +7 -4
  70. package/dist/core/codegen/schemas/any.d.ts.map +1 -1
  71. package/dist/core/codegen/schemas/any.js +8 -4
  72. package/dist/core/codegen/schemas/any.js.map +1 -1
  73. package/dist/core/codegen/schemas/array.d.ts +8 -5
  74. package/dist/core/codegen/schemas/array.d.ts.map +1 -1
  75. package/dist/core/codegen/schemas/array.js +77 -95
  76. package/dist/core/codegen/schemas/array.js.map +1 -1
  77. package/dist/core/codegen/schemas/bigint.d.ts +7 -4
  78. package/dist/core/codegen/schemas/bigint.d.ts.map +1 -1
  79. package/dist/core/codegen/schemas/bigint.js +44 -56
  80. package/dist/core/codegen/schemas/bigint.js.map +1 -1
  81. package/dist/core/codegen/schemas/boolean.d.ts +7 -4
  82. package/dist/core/codegen/schemas/boolean.d.ts.map +1 -1
  83. package/dist/core/codegen/schemas/boolean.js +12 -11
  84. package/dist/core/codegen/schemas/boolean.js.map +1 -1
  85. package/dist/core/codegen/schemas/catch.d.ts +8 -5
  86. package/dist/core/codegen/schemas/catch.d.ts.map +1 -1
  87. package/dist/core/codegen/schemas/catch.js +23 -23
  88. package/dist/core/codegen/schemas/catch.js.map +1 -1
  89. package/dist/core/codegen/schemas/date.d.ts +7 -4
  90. package/dist/core/codegen/schemas/date.d.ts.map +1 -1
  91. package/dist/core/codegen/schemas/date.js +49 -68
  92. package/dist/core/codegen/schemas/date.js.map +1 -1
  93. package/dist/core/codegen/schemas/default.d.ts +9 -6
  94. package/dist/core/codegen/schemas/default.d.ts.map +1 -1
  95. package/dist/core/codegen/schemas/default.js +29 -27
  96. package/dist/core/codegen/schemas/default.js.map +1 -1
  97. package/dist/core/codegen/schemas/discriminated-union.d.ts +12 -10
  98. package/dist/core/codegen/schemas/discriminated-union.d.ts.map +1 -1
  99. package/dist/core/codegen/schemas/discriminated-union.js +153 -178
  100. package/dist/core/codegen/schemas/discriminated-union.js.map +1 -1
  101. package/dist/core/codegen/schemas/effect.d.ts +9 -6
  102. package/dist/core/codegen/schemas/effect.d.ts.map +1 -1
  103. package/dist/core/codegen/schemas/effect.js +54 -67
  104. package/dist/core/codegen/schemas/effect.js.map +1 -1
  105. package/dist/core/codegen/schemas/enum.d.ts +7 -4
  106. package/dist/core/codegen/schemas/enum.d.ts.map +1 -1
  107. package/dist/core/codegen/schemas/enum.js +15 -21
  108. package/dist/core/codegen/schemas/enum.js.map +1 -1
  109. package/dist/core/codegen/schemas/fallback.d.ts +6 -3
  110. package/dist/core/codegen/schemas/fallback.d.ts.map +1 -1
  111. package/dist/core/codegen/schemas/fallback.js +14 -13
  112. package/dist/core/codegen/schemas/fallback.js.map +1 -1
  113. package/dist/core/codegen/schemas/file.d.ts +7 -4
  114. package/dist/core/codegen/schemas/file.d.ts.map +1 -1
  115. package/dist/core/codegen/schemas/file.js +51 -57
  116. package/dist/core/codegen/schemas/file.js.map +1 -1
  117. package/dist/core/codegen/schemas/intersection.d.ts +8 -5
  118. package/dist/core/codegen/schemas/intersection.d.ts.map +1 -1
  119. package/dist/core/codegen/schemas/intersection.js +16 -13
  120. package/dist/core/codegen/schemas/intersection.js.map +1 -1
  121. package/dist/core/codegen/schemas/literal.d.ts +7 -4
  122. package/dist/core/codegen/schemas/literal.d.ts.map +1 -1
  123. package/dist/core/codegen/schemas/literal.js +20 -23
  124. package/dist/core/codegen/schemas/literal.js.map +1 -1
  125. package/dist/core/codegen/schemas/map.d.ts +8 -5
  126. package/dist/core/codegen/schemas/map.d.ts.map +1 -1
  127. package/dist/core/codegen/schemas/map.js +61 -67
  128. package/dist/core/codegen/schemas/map.js.map +1 -1
  129. package/dist/core/codegen/schemas/nan.d.ts +7 -4
  130. package/dist/core/codegen/schemas/nan.d.ts.map +1 -1
  131. package/dist/core/codegen/schemas/nan.js +8 -4
  132. package/dist/core/codegen/schemas/nan.js.map +1 -1
  133. package/dist/core/codegen/schemas/never.d.ts +7 -4
  134. package/dist/core/codegen/schemas/never.d.ts.map +1 -1
  135. package/dist/core/codegen/schemas/never.js +8 -4
  136. package/dist/core/codegen/schemas/never.js.map +1 -1
  137. package/dist/core/codegen/schemas/null.d.ts +7 -4
  138. package/dist/core/codegen/schemas/null.d.ts.map +1 -1
  139. package/dist/core/codegen/schemas/null.js +8 -4
  140. package/dist/core/codegen/schemas/null.js.map +1 -1
  141. package/dist/core/codegen/schemas/nullable.d.ts +8 -5
  142. package/dist/core/codegen/schemas/nullable.d.ts.map +1 -1
  143. package/dist/core/codegen/schemas/nullable.js +8 -5
  144. package/dist/core/codegen/schemas/nullable.js.map +1 -1
  145. package/dist/core/codegen/schemas/number.d.ts +7 -4
  146. package/dist/core/codegen/schemas/number.d.ts.map +1 -1
  147. package/dist/core/codegen/schemas/number.js +120 -176
  148. package/dist/core/codegen/schemas/number.js.map +1 -1
  149. package/dist/core/codegen/schemas/object.d.ts +8 -5
  150. package/dist/core/codegen/schemas/object.d.ts.map +1 -1
  151. package/dist/core/codegen/schemas/object.js +144 -231
  152. package/dist/core/codegen/schemas/object.js.map +1 -1
  153. package/dist/core/codegen/schemas/optional.d.ts +9 -6
  154. package/dist/core/codegen/schemas/optional.d.ts.map +1 -1
  155. package/dist/core/codegen/schemas/optional.js +23 -31
  156. package/dist/core/codegen/schemas/optional.js.map +1 -1
  157. package/dist/core/codegen/schemas/pipe.d.ts +8 -5
  158. package/dist/core/codegen/schemas/pipe.d.ts.map +1 -1
  159. package/dist/core/codegen/schemas/pipe.js +20 -27
  160. package/dist/core/codegen/schemas/pipe.js.map +1 -1
  161. package/dist/core/codegen/schemas/readonly.d.ts +8 -5
  162. package/dist/core/codegen/schemas/readonly.d.ts.map +1 -1
  163. package/dist/core/codegen/schemas/readonly.js +8 -5
  164. package/dist/core/codegen/schemas/readonly.js.map +1 -1
  165. package/dist/core/codegen/schemas/record.d.ts +8 -5
  166. package/dist/core/codegen/schemas/record.d.ts.map +1 -1
  167. package/dist/core/codegen/schemas/record.js +52 -65
  168. package/dist/core/codegen/schemas/record.js.map +1 -1
  169. package/dist/core/codegen/schemas/recursive-ref.d.ts +9 -6
  170. package/dist/core/codegen/schemas/recursive-ref.d.ts.map +1 -1
  171. package/dist/core/codegen/schemas/recursive-ref.js +44 -44
  172. package/dist/core/codegen/schemas/recursive-ref.js.map +1 -1
  173. package/dist/core/codegen/schemas/set.d.ts +8 -5
  174. package/dist/core/codegen/schemas/set.d.ts.map +1 -1
  175. package/dist/core/codegen/schemas/set.js +61 -73
  176. package/dist/core/codegen/schemas/set.js.map +1 -1
  177. package/dist/core/codegen/schemas/string-bool.d.ts +6 -3
  178. package/dist/core/codegen/schemas/string-bool.d.ts.map +1 -1
  179. package/dist/core/codegen/schemas/string-bool.js +22 -23
  180. package/dist/core/codegen/schemas/string-bool.js.map +1 -1
  181. package/dist/core/codegen/schemas/string.d.ts +8 -5
  182. package/dist/core/codegen/schemas/string.d.ts.map +1 -1
  183. package/dist/core/codegen/schemas/string.js +168 -207
  184. package/dist/core/codegen/schemas/string.js.map +1 -1
  185. package/dist/core/codegen/schemas/symbol.d.ts +7 -4
  186. package/dist/core/codegen/schemas/symbol.d.ts.map +1 -1
  187. package/dist/core/codegen/schemas/symbol.js +8 -4
  188. package/dist/core/codegen/schemas/symbol.js.map +1 -1
  189. package/dist/core/codegen/schemas/template-literal.d.ts +7 -4
  190. package/dist/core/codegen/schemas/template-literal.d.ts.map +1 -1
  191. package/dist/core/codegen/schemas/template-literal.js +12 -13
  192. package/dist/core/codegen/schemas/template-literal.js.map +1 -1
  193. package/dist/core/codegen/schemas/tuple.d.ts +8 -5
  194. package/dist/core/codegen/schemas/tuple.d.ts.map +1 -1
  195. package/dist/core/codegen/schemas/tuple.js +84 -94
  196. package/dist/core/codegen/schemas/tuple.js.map +1 -1
  197. package/dist/core/codegen/schemas/undefined.d.ts +7 -4
  198. package/dist/core/codegen/schemas/undefined.d.ts.map +1 -1
  199. package/dist/core/codegen/schemas/undefined.js +8 -4
  200. package/dist/core/codegen/schemas/undefined.js.map +1 -1
  201. package/dist/core/codegen/schemas/union.d.ts +8 -5
  202. package/dist/core/codegen/schemas/union.d.ts.map +1 -1
  203. package/dist/core/codegen/schemas/union.js +49 -69
  204. package/dist/core/codegen/schemas/union.js.map +1 -1
  205. package/dist/core/codegen/schemas/unknown.d.ts +7 -4
  206. package/dist/core/codegen/schemas/unknown.d.ts.map +1 -1
  207. package/dist/core/codegen/schemas/unknown.js +8 -4
  208. package/dist/core/codegen/schemas/unknown.js.map +1 -1
  209. package/dist/core/codegen/schemas/void.d.ts +7 -4
  210. package/dist/core/codegen/schemas/void.d.ts.map +1 -1
  211. package/dist/core/codegen/schemas/void.js +8 -4
  212. package/dist/core/codegen/schemas/void.js.map +1 -1
  213. package/dist/core/codegen/slow-path.d.ts +7 -4
  214. package/dist/core/codegen/slow-path.d.ts.map +1 -1
  215. package/dist/core/codegen/slow-path.js +71 -96
  216. package/dist/core/codegen/slow-path.js.map +1 -1
  217. package/dist/core/codegen/well-known-regex.d.ts +22 -19
  218. package/dist/core/codegen/well-known-regex.d.ts.map +1 -1
  219. package/dist/core/codegen/well-known-regex.js +127 -96
  220. package/dist/core/codegen/well-known-regex.js.map +1 -1
  221. package/dist/core/compile.d.ts +7 -4
  222. package/dist/core/compile.d.ts.map +1 -1
  223. package/dist/core/compile.js +48 -48
  224. package/dist/core/compile.js.map +1 -1
  225. package/dist/core/diagnostic.d.ts +38 -39
  226. package/dist/core/diagnostic.d.ts.map +1 -1
  227. package/dist/core/diagnostic.js +140 -164
  228. package/dist/core/diagnostic.js.map +1 -1
  229. package/dist/core/extract/checks.d.ts +18 -15
  230. package/dist/core/extract/checks.d.ts.map +1 -1
  231. package/dist/core/extract/checks.js +318 -311
  232. package/dist/core/extract/checks.js.map +1 -1
  233. package/dist/core/extract/effects.d.ts +13 -10
  234. package/dist/core/extract/effects.d.ts.map +1 -1
  235. package/dist/core/extract/effects.js +153 -222
  236. package/dist/core/extract/effects.js.map +1 -1
  237. package/dist/core/extract/extractors/any.d.ts +5 -2
  238. package/dist/core/extract/extractors/any.d.ts.map +1 -1
  239. package/dist/core/extract/extractors/any.js +5 -1
  240. package/dist/core/extract/extractors/any.js.map +1 -1
  241. package/dist/core/extract/extractors/array.d.ts +6 -3
  242. package/dist/core/extract/extractors/array.d.ts.map +1 -1
  243. package/dist/core/extract/extractors/array.js +25 -20
  244. package/dist/core/extract/extractors/array.js.map +1 -1
  245. package/dist/core/extract/extractors/bigint.d.ts +6 -3
  246. package/dist/core/extract/extractors/bigint.d.ts.map +1 -1
  247. package/dist/core/extract/extractors/bigint.js +66 -64
  248. package/dist/core/extract/extractors/bigint.js.map +1 -1
  249. package/dist/core/extract/extractors/boolean.d.ts +5 -2
  250. package/dist/core/extract/extractors/boolean.d.ts.map +1 -1
  251. package/dist/core/extract/extractors/boolean.js +7 -3
  252. package/dist/core/extract/extractors/boolean.js.map +1 -1
  253. package/dist/core/extract/extractors/catch.d.ts +6 -3
  254. package/dist/core/extract/extractors/catch.d.ts.map +1 -1
  255. package/dist/core/extract/extractors/catch.js +26 -17
  256. package/dist/core/extract/extractors/catch.js.map +1 -1
  257. package/dist/core/extract/extractors/date.d.ts +6 -3
  258. package/dist/core/extract/extractors/date.d.ts.map +1 -1
  259. package/dist/core/extract/extractors/date.js +42 -46
  260. package/dist/core/extract/extractors/date.js.map +1 -1
  261. package/dist/core/extract/extractors/default.d.ts +6 -3
  262. package/dist/core/extract/extractors/default.d.ts.map +1 -1
  263. package/dist/core/extract/extractors/default.js +20 -14
  264. package/dist/core/extract/extractors/default.js.map +1 -1
  265. package/dist/core/extract/extractors/enum.d.ts +5 -2
  266. package/dist/core/extract/extractors/enum.d.ts.map +1 -1
  267. package/dist/core/extract/extractors/enum.js +12 -13
  268. package/dist/core/extract/extractors/enum.js.map +1 -1
  269. package/dist/core/extract/extractors/file.d.ts +6 -3
  270. package/dist/core/extract/extractors/file.d.ts.map +1 -1
  271. package/dist/core/extract/extractors/file.js +34 -28
  272. package/dist/core/extract/extractors/file.js.map +1 -1
  273. package/dist/core/extract/extractors/intersection.d.ts +5 -2
  274. package/dist/core/extract/extractors/intersection.d.ts.map +1 -1
  275. package/dist/core/extract/extractors/intersection.js +13 -11
  276. package/dist/core/extract/extractors/intersection.js.map +1 -1
  277. package/dist/core/extract/extractors/lazy.d.ts +6 -3
  278. package/dist/core/extract/extractors/lazy.d.ts.map +1 -1
  279. package/dist/core/extract/extractors/lazy.js +21 -30
  280. package/dist/core/extract/extractors/lazy.js.map +1 -1
  281. package/dist/core/extract/extractors/literal.d.ts +5 -2
  282. package/dist/core/extract/extractors/literal.d.ts.map +1 -1
  283. package/dist/core/extract/extractors/literal.js +8 -1
  284. package/dist/core/extract/extractors/literal.js.map +1 -1
  285. package/dist/core/extract/extractors/map.d.ts +6 -3
  286. package/dist/core/extract/extractors/map.d.ts.map +1 -1
  287. package/dist/core/extract/extractors/map.js +10 -4
  288. package/dist/core/extract/extractors/map.js.map +1 -1
  289. package/dist/core/extract/extractors/nan.d.ts +5 -2
  290. package/dist/core/extract/extractors/nan.d.ts.map +1 -1
  291. package/dist/core/extract/extractors/nan.js +5 -1
  292. package/dist/core/extract/extractors/nan.js.map +1 -1
  293. package/dist/core/extract/extractors/never.d.ts +5 -2
  294. package/dist/core/extract/extractors/never.d.ts.map +1 -1
  295. package/dist/core/extract/extractors/never.js +5 -1
  296. package/dist/core/extract/extractors/never.js.map +1 -1
  297. package/dist/core/extract/extractors/null.d.ts +5 -2
  298. package/dist/core/extract/extractors/null.d.ts.map +1 -1
  299. package/dist/core/extract/extractors/null.js +5 -1
  300. package/dist/core/extract/extractors/null.js.map +1 -1
  301. package/dist/core/extract/extractors/nullable.d.ts +5 -2
  302. package/dist/core/extract/extractors/nullable.d.ts.map +1 -1
  303. package/dist/core/extract/extractors/nullable.js +7 -3
  304. package/dist/core/extract/extractors/nullable.js.map +1 -1
  305. package/dist/core/extract/extractors/number.d.ts +6 -3
  306. package/dist/core/extract/extractors/number.d.ts.map +1 -1
  307. package/dist/core/extract/extractors/number.js +35 -35
  308. package/dist/core/extract/extractors/number.js.map +1 -1
  309. package/dist/core/extract/extractors/object.d.ts +6 -3
  310. package/dist/core/extract/extractors/object.d.ts.map +1 -1
  311. package/dist/core/extract/extractors/object.js +49 -76
  312. package/dist/core/extract/extractors/object.js.map +1 -1
  313. package/dist/core/extract/extractors/optional.d.ts +5 -2
  314. package/dist/core/extract/extractors/optional.d.ts.map +1 -1
  315. package/dist/core/extract/extractors/optional.js +10 -12
  316. package/dist/core/extract/extractors/optional.js.map +1 -1
  317. package/dist/core/extract/extractors/pipe.d.ts +6 -3
  318. package/dist/core/extract/extractors/pipe.d.ts.map +1 -1
  319. package/dist/core/extract/extractors/pipe.js +40 -41
  320. package/dist/core/extract/extractors/pipe.js.map +1 -1
  321. package/dist/core/extract/extractors/readonly.d.ts +5 -2
  322. package/dist/core/extract/extractors/readonly.d.ts.map +1 -1
  323. package/dist/core/extract/extractors/readonly.js +10 -6
  324. package/dist/core/extract/extractors/readonly.js.map +1 -1
  325. package/dist/core/extract/extractors/record.d.ts +6 -3
  326. package/dist/core/extract/extractors/record.d.ts.map +1 -1
  327. package/dist/core/extract/extractors/record.js +24 -35
  328. package/dist/core/extract/extractors/record.js.map +1 -1
  329. package/dist/core/extract/extractors/set.d.ts +6 -3
  330. package/dist/core/extract/extractors/set.d.ts.map +1 -1
  331. package/dist/core/extract/extractors/set.js +36 -30
  332. package/dist/core/extract/extractors/set.js.map +1 -1
  333. package/dist/core/extract/extractors/string-bool.d.ts +7 -4
  334. package/dist/core/extract/extractors/string-bool.d.ts.map +1 -1
  335. package/dist/core/extract/extractors/string-bool.js +66 -84
  336. package/dist/core/extract/extractors/string-bool.js.map +1 -1
  337. package/dist/core/extract/extractors/string.d.ts +6 -3
  338. package/dist/core/extract/extractors/string.d.ts.map +1 -1
  339. package/dist/core/extract/extractors/string.js +34 -37
  340. package/dist/core/extract/extractors/string.js.map +1 -1
  341. package/dist/core/extract/extractors/symbol.d.ts +5 -2
  342. package/dist/core/extract/extractors/symbol.d.ts.map +1 -1
  343. package/dist/core/extract/extractors/symbol.js +5 -1
  344. package/dist/core/extract/extractors/symbol.js.map +1 -1
  345. package/dist/core/extract/extractors/template-literal.d.ts +6 -3
  346. package/dist/core/extract/extractors/template-literal.d.ts.map +1 -1
  347. package/dist/core/extract/extractors/template-literal.js +11 -6
  348. package/dist/core/extract/extractors/template-literal.js.map +1 -1
  349. package/dist/core/extract/extractors/tuple.d.ts +6 -3
  350. package/dist/core/extract/extractors/tuple.d.ts.map +1 -1
  351. package/dist/core/extract/extractors/tuple.js +10 -4
  352. package/dist/core/extract/extractors/tuple.js.map +1 -1
  353. package/dist/core/extract/extractors/undefined.d.ts +5 -2
  354. package/dist/core/extract/extractors/undefined.d.ts.map +1 -1
  355. package/dist/core/extract/extractors/undefined.js +5 -1
  356. package/dist/core/extract/extractors/undefined.js.map +1 -1
  357. package/dist/core/extract/extractors/union.d.ts +6 -3
  358. package/dist/core/extract/extractors/union.d.ts.map +1 -1
  359. package/dist/core/extract/extractors/union.js +38 -64
  360. package/dist/core/extract/extractors/union.js.map +1 -1
  361. package/dist/core/extract/extractors/unknown.d.ts +5 -2
  362. package/dist/core/extract/extractors/unknown.d.ts.map +1 -1
  363. package/dist/core/extract/extractors/unknown.js +5 -1
  364. package/dist/core/extract/extractors/unknown.js.map +1 -1
  365. package/dist/core/extract/extractors/void.d.ts +5 -2
  366. package/dist/core/extract/extractors/void.d.ts.map +1 -1
  367. package/dist/core/extract/extractors/void.js +5 -1
  368. package/dist/core/extract/extractors/void.js.map +1 -1
  369. package/dist/core/extract/fallback.d.ts +6 -3
  370. package/dist/core/extract/fallback.d.ts.map +1 -1
  371. package/dist/core/extract/fallback.js +21 -7
  372. package/dist/core/extract/fallback.js.map +1 -1
  373. package/dist/core/extract/index.d.ts +6 -4
  374. package/dist/core/extract/index.d.ts.map +1 -1
  375. package/dist/core/extract/index.js +15 -15
  376. package/dist/core/extract/index.js.map +1 -1
  377. package/dist/core/extract/registry.d.ts +39 -36
  378. package/dist/core/extract/registry.d.ts.map +1 -1
  379. package/dist/core/extract/registry.js +96 -123
  380. package/dist/core/extract/registry.js.map +1 -1
  381. package/dist/core/extract/types.d.ts +124 -120
  382. package/dist/core/extract/types.d.ts.map +1 -1
  383. package/dist/core/extract/types.js +0 -1
  384. package/dist/core/iife.d.ts +14 -15
  385. package/dist/core/iife.d.ts.map +1 -1
  386. package/dist/core/iife.js +182 -206
  387. package/dist/core/iife.js.map +1 -1
  388. package/dist/core/pipeline.d.ts +33 -30
  389. package/dist/core/pipeline.d.ts.map +1 -1
  390. package/dist/core/pipeline.js +67 -74
  391. package/dist/core/pipeline.js.map +1 -1
  392. package/dist/core/types.d.ts +430 -427
  393. package/dist/core/types.d.ts.map +1 -1
  394. package/dist/core/types.js +0 -5
  395. package/dist/discovery.d.ts +8 -5
  396. package/dist/discovery.d.ts.map +1 -1
  397. package/dist/discovery.js +31 -32
  398. package/dist/discovery.js.map +1 -1
  399. package/dist/index.d.ts +4 -4
  400. package/dist/index.js +2 -2
  401. package/dist/jit.d.ts +15 -42
  402. package/dist/jit.d.ts.map +1 -1
  403. package/dist/jit.js +187 -216
  404. package/dist/jit.js.map +1 -1
  405. package/dist/loader.d.ts +14 -11
  406. package/dist/loader.d.ts.map +1 -1
  407. package/dist/loader.js +226 -258
  408. package/dist/loader.js.map +1 -1
  409. package/dist/static-filter.d.ts +4 -1
  410. package/dist/static-filter.d.ts.map +1 -1
  411. package/dist/static-filter.js +240 -367
  412. package/dist/static-filter.js.map +1 -1
  413. package/dist/swc.d.ts +38 -35
  414. package/dist/swc.d.ts.map +1 -1
  415. package/dist/swc.js +83 -76
  416. package/dist/swc.js.map +1 -1
  417. package/dist/unplugin/bun.d.ts +5 -2
  418. package/dist/unplugin/bun.d.ts.map +1 -1
  419. package/dist/unplugin/bun.js +5 -1
  420. package/dist/unplugin/bun.js.map +1 -1
  421. package/dist/unplugin/dep-graph.d.ts +10 -7
  422. package/dist/unplugin/dep-graph.d.ts.map +1 -1
  423. package/dist/unplugin/dep-graph.js +216 -252
  424. package/dist/unplugin/dep-graph.js.map +1 -1
  425. package/dist/unplugin/disk-cache.d.ts +121 -92
  426. package/dist/unplugin/disk-cache.d.ts.map +1 -1
  427. package/dist/unplugin/disk-cache.js +425 -444
  428. package/dist/unplugin/disk-cache.js.map +1 -1
  429. package/dist/unplugin/edits.d.ts +15 -12
  430. package/dist/unplugin/edits.d.ts.map +1 -1
  431. package/dist/unplugin/edits.js +24 -37
  432. package/dist/unplugin/edits.js.map +1 -1
  433. package/dist/unplugin/esbuild.d.ts +5 -2
  434. package/dist/unplugin/esbuild.d.ts.map +1 -1
  435. package/dist/unplugin/esbuild.js +5 -1
  436. package/dist/unplugin/esbuild.js.map +1 -1
  437. package/dist/unplugin/farm.d.ts +5 -2
  438. package/dist/unplugin/farm.d.ts.map +1 -1
  439. package/dist/unplugin/farm.js +5 -1
  440. package/dist/unplugin/farm.js.map +1 -1
  441. package/dist/unplugin/hoist-compile.d.ts +14 -42
  442. package/dist/unplugin/hoist-compile.d.ts.map +1 -1
  443. package/dist/unplugin/hoist-compile.js +67 -112
  444. package/dist/unplugin/hoist-compile.js.map +1 -1
  445. package/dist/unplugin/hoist.d.ts +56 -54
  446. package/dist/unplugin/hoist.d.ts.map +1 -1
  447. package/dist/unplugin/hoist.js +945 -1170
  448. package/dist/unplugin/hoist.js.map +1 -1
  449. package/dist/unplugin/index.d.ts +5 -3
  450. package/dist/unplugin/index.d.ts.map +1 -1
  451. package/dist/unplugin/index.js +175 -250
  452. package/dist/unplugin/index.js.map +1 -1
  453. package/dist/unplugin/rolldown.d.ts +5 -2
  454. package/dist/unplugin/rolldown.d.ts.map +1 -1
  455. package/dist/unplugin/rolldown.js +5 -1
  456. package/dist/unplugin/rolldown.js.map +1 -1
  457. package/dist/unplugin/rollup.d.ts +5 -2
  458. package/dist/unplugin/rollup.d.ts.map +1 -1
  459. package/dist/unplugin/rollup.js +5 -1
  460. package/dist/unplugin/rollup.js.map +1 -1
  461. package/dist/unplugin/rsbuild.d.ts +6 -3
  462. package/dist/unplugin/rsbuild.d.ts.map +1 -1
  463. package/dist/unplugin/rsbuild.js +15 -11
  464. package/dist/unplugin/rsbuild.js.map +1 -1
  465. package/dist/unplugin/rspack.d.ts +5 -2
  466. package/dist/unplugin/rspack.d.ts.map +1 -1
  467. package/dist/unplugin/rspack.js +5 -1
  468. package/dist/unplugin/rspack.js.map +1 -1
  469. package/dist/unplugin/transform.d.ts +30 -27
  470. package/dist/unplugin/transform.d.ts.map +1 -1
  471. package/dist/unplugin/transform.js +433 -620
  472. package/dist/unplugin/transform.js.map +1 -1
  473. package/dist/unplugin/types.d.ts +189 -184
  474. package/dist/unplugin/types.d.ts.map +1 -1
  475. package/dist/unplugin/types.js +22 -18
  476. package/dist/unplugin/types.js.map +1 -1
  477. package/dist/unplugin/virtual.d.ts +11 -8
  478. package/dist/unplugin/virtual.d.ts.map +1 -1
  479. package/dist/unplugin/virtual.js +65 -83
  480. package/dist/unplugin/virtual.js.map +1 -1
  481. package/dist/unplugin/vite.d.ts +5 -2
  482. package/dist/unplugin/vite.d.ts.map +1 -1
  483. package/dist/unplugin/vite.js +5 -1
  484. package/dist/unplugin/vite.js.map +1 -1
  485. package/dist/unplugin/webpack.d.ts +5 -2
  486. package/dist/unplugin/webpack.d.ts.map +1 -1
  487. package/dist/unplugin/webpack.js +5 -1
  488. package/dist/unplugin/webpack.js.map +1 -1
  489. package/package.json +23 -14
  490. package/dist/cli/index.d.ts.map +0 -1
  491. package/dist/core/extract/types.js.map +0 -1
  492. package/dist/core/types.js.map +0 -1
  493. package/dist/index.d.ts.map +0 -1
  494. package/dist/index.js.map +0 -1
@@ -1,33 +1,39 @@
1
1
  import { hasUncompilableModifiers, resolveCheckMessage } from "../checks.js";
2
- export function extractSet(def, ctx) {
3
- const valueType = ctx.visit(def.valueType, "._zod.def.valueType");
4
- const setChecks = [];
5
- if (def.checks) {
6
- for (const check of def.checks) {
7
- const checkDef = check._zod?.def;
8
- if (!checkDef)
9
- continue;
10
- if (hasUncompilableModifiers(checkDef))
11
- return ctx.fallback("refine");
12
- const resolved = resolveCheckMessage(checkDef.error);
13
- if (resolved.kind === "dynamic")
14
- return ctx.fallback("refine");
15
- const message = resolved.kind === "static" ? { message: resolved.message } : {};
16
- if (checkDef.check === "min_size") {
17
- setChecks.push({ kind: "min_size", minimum: checkDef.minimum, ...message });
18
- }
19
- else if (checkDef.check === "max_size") {
20
- setChecks.push({ kind: "max_size", maximum: checkDef.maximum, ...message });
21
- }
22
- else if (checkDef.check === "size_equals") {
23
- setChecks.push({ kind: "size_equals", size: checkDef.size, ...message });
24
- }
25
- else {
26
- // Unknown check (custom refine, overwrite, ...) — never drop silently.
27
- return ctx.fallback("refine");
28
- }
29
- }
30
- }
31
- return { type: "set", valueType, ...(setChecks.length > 0 ? { checks: setChecks } : {}) };
2
+ //#region src/core/extract/extractors/set.ts
3
+ function extractSet(def, ctx) {
4
+ const valueType = ctx.visit(def.valueType, "._zod.def.valueType");
5
+ const setChecks = [];
6
+ if (def.checks) for (const check of def.checks) {
7
+ const checkDef = check._zod?.def;
8
+ if (!checkDef) continue;
9
+ if (hasUncompilableModifiers(checkDef)) return ctx.fallback("refine");
10
+ const resolved = resolveCheckMessage(checkDef.error);
11
+ if (resolved.kind === "dynamic") return ctx.fallback("refine");
12
+ const message = resolved.kind === "static" ? { message: resolved.message } : {};
13
+ if (checkDef.check === "min_size") setChecks.push({
14
+ kind: "min_size",
15
+ minimum: checkDef.minimum,
16
+ ...message
17
+ });
18
+ else if (checkDef.check === "max_size") setChecks.push({
19
+ kind: "max_size",
20
+ maximum: checkDef.maximum,
21
+ ...message
22
+ });
23
+ else if (checkDef.check === "size_equals") setChecks.push({
24
+ kind: "size_equals",
25
+ size: checkDef.size,
26
+ ...message
27
+ });
28
+ else return ctx.fallback("refine");
29
+ }
30
+ return {
31
+ type: "set",
32
+ valueType,
33
+ ...setChecks.length > 0 ? { checks: setChecks } : {}
34
+ };
32
35
  }
36
+ //#endregion
37
+ export { extractSet };
38
+
33
39
  //# sourceMappingURL=set.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"set.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/set.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAG7E,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,wBAAwB,CAAC,QAAQ,CAAC;gBAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACtE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrD,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,IAAI,QAAQ,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBAClC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;YAC9E,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,GAAG,OAAO,EAAE,CAAC,CAAC;YAC9E,CAAC;iBAAM,IAAI,QAAQ,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;gBAC5C,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACN,uEAAuE;gBACvE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,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","names":[],"sources":["../../../../src/core/extract/extractors/set.ts"],"sourcesContent":["import type { SchemaIR, SetCheckIR } from \"../../types.js\";\nimport { hasUncompilableModifiers, resolveCheckMessage } from \"../checks.js\";\nimport type { ExtractorContext, ZodDef } from \"../types.js\";\n\nexport function extractSet(def: ZodDef, ctx: ExtractorContext): SchemaIR {\n const valueType = ctx.visit(def.valueType, \"._zod.def.valueType\");\n const setChecks: SetCheckIR[] = [];\n if (def.checks) {\n for (const check of def.checks) {\n const checkDef = check._zod?.def;\n if (!checkDef) continue;\n if (hasUncompilableModifiers(checkDef)) return ctx.fallback(\"refine\");\n const resolved = resolveCheckMessage(checkDef.error);\n if (resolved.kind === \"dynamic\") return ctx.fallback(\"refine\");\n const message = resolved.kind === \"static\" ? { message: resolved.message } : {};\n if (checkDef.check === \"min_size\") {\n setChecks.push({ kind: \"min_size\", minimum: checkDef.minimum, ...message });\n } else if (checkDef.check === \"max_size\") {\n setChecks.push({ kind: \"max_size\", maximum: checkDef.maximum, ...message });\n } else if (checkDef.check === \"size_equals\") {\n setChecks.push({ kind: \"size_equals\", size: checkDef.size, ...message });\n } else {\n // Unknown check (custom refine, overwrite, ...) — never drop silently.\n return ctx.fallback(\"refine\");\n }\n }\n }\n return { type: \"set\", valueType, ...(setChecks.length > 0 ? { checks: setChecks } : {}) };\n}\n"],"mappings":";;AAIA,SAAgB,WAAW,KAAa,KAAiC;CACvE,MAAM,YAAY,IAAI,MAAM,IAAI,WAAW,qBAAqB;CAChE,MAAM,YAA0B,CAAC;CACjC,IAAI,IAAI,QACN,KAAK,MAAM,SAAS,IAAI,QAAQ;EAC9B,MAAM,WAAW,MAAM,MAAM;EAC7B,IAAI,CAAC,UAAU;EACf,IAAI,yBAAyB,QAAQ,GAAG,OAAO,IAAI,SAAS,QAAQ;EACpE,MAAM,WAAW,oBAAoB,SAAS,KAAK;EACnD,IAAI,SAAS,SAAS,WAAW,OAAO,IAAI,SAAS,QAAQ;EAC7D,MAAM,UAAU,SAAS,SAAS,WAAW,EAAE,SAAS,SAAS,QAAQ,IAAI,CAAC;EAC9E,IAAI,SAAS,UAAU,YACrB,UAAU,KAAK;GAAE,MAAM;GAAY,SAAS,SAAS;GAAS,GAAG;EAAQ,CAAC;OACrE,IAAI,SAAS,UAAU,YAC5B,UAAU,KAAK;GAAE,MAAM;GAAY,SAAS,SAAS;GAAS,GAAG;EAAQ,CAAC;OACrE,IAAI,SAAS,UAAU,eAC5B,UAAU,KAAK;GAAE,MAAM;GAAe,MAAM,SAAS;GAAM,GAAG;EAAQ,CAAC;OAGvE,OAAO,IAAI,SAAS,QAAQ;CAEhC;CAEF,OAAO;EAAE,MAAM;EAAO;EAAW,GAAI,UAAU,SAAS,IAAI,EAAE,QAAQ,UAAU,IAAI,CAAC;CAAG;AAC1F"}
@@ -1,10 +1,13 @@
1
- import type { StringBoolIR } from "../../types.js";
2
- import type { ExtractorContext, ZodDef } from "../types.js";
1
+ import { StringBoolIR } from "../../types.js";
2
+ import { ExtractorContext, ZodDef } from "../types.js";
3
+ //#region src/core/extract/extractors/string-bool.d.ts
3
4
  /** Detect whether a pipe def is a Codec with string→boolean (i.e. stringbool). */
4
- export declare function isStringBoolCodec(def: ZodDef): boolean;
5
+ declare function isStringBoolCodec(def: ZodDef): boolean;
5
6
  /**
6
7
  * Extract a StringBoolIR by probing the live schema with known test values.
7
8
  * Falls back if the discovered values don't fully cover the schema's accepted set.
8
9
  */
9
- export declare function extractStringBool(_def: ZodDef, ctx: ExtractorContext): StringBoolIR | null;
10
+ declare function extractStringBool(_def: ZodDef, ctx: ExtractorContext): StringBoolIR | null;
11
+ //#endregion
12
+ export { extractStringBool, isStringBoolCodec };
10
13
  //# sourceMappingURL=string-bool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"string-bool.d.ts","sourceRoot":"","sources":["../../../../src/core/extract/extractors/string-bool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAsB5D,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOtD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,YAAY,GAAG,IAAI,CA8D1F"}
1
+ {"version":3,"file":"string-bool.d.ts","names":[],"sources":["../../../../src/core/extract/extractors/string-bool.ts"],"mappings":";;;;iBAwBgB,kBAAkB,KAAK;;;;;iBAavB,kBAAkB,MAAM,QAAQ,KAAK,mBAAmB"}
@@ -1,92 +1,74 @@
1
+ //#region src/core/extract/extractors/string-bool.ts
1
2
  /**
2
- * Default probe values used to discover truthy/falsy mappings at build time.
3
- * Covers all Zod v4 stringbool defaults. Custom values outside this set
4
- * will cause the schema to fall back to Zod.
5
- */
3
+ * Default probe values used to discover truthy/falsy mappings at build time.
4
+ * Covers all Zod v4 stringbool defaults. Custom values outside this set
5
+ * will cause the schema to fall back to Zod.
6
+ */
6
7
  const PROBE_VALUES = [
7
- "true",
8
- "false",
9
- "1",
10
- "0",
11
- "yes",
12
- "no",
13
- "on",
14
- "off",
15
- "y",
16
- "n",
17
- "enabled",
18
- "disabled",
8
+ "true",
9
+ "false",
10
+ "1",
11
+ "0",
12
+ "yes",
13
+ "no",
14
+ "on",
15
+ "off",
16
+ "y",
17
+ "n",
18
+ "enabled",
19
+ "disabled"
19
20
  ];
20
21
  /** Detect whether a pipe def is a Codec with string→boolean (i.e. stringbool). */
21
- export function isStringBoolCodec(def) {
22
- return (typeof def.transform === "function" &&
23
- typeof def.reverseTransform === "function" &&
24
- def.in?._zod?.def?.type === "string" &&
25
- def.out?._zod?.def?.type === "boolean");
22
+ function isStringBoolCodec(def) {
23
+ return typeof def.transform === "function" && typeof def.reverseTransform === "function" && def.in?._zod?.def?.type === "string" && def.out?._zod?.def?.type === "boolean";
26
24
  }
27
25
  /**
28
- * Extract a StringBoolIR by probing the live schema with known test values.
29
- * Falls back if the discovered values don't fully cover the schema's accepted set.
30
- */
31
- export function extractStringBool(_def, ctx) {
32
- const schema = ctx.schema;
33
- const truthy = [];
34
- const falsy = [];
35
- for (const val of PROBE_VALUES) {
36
- try {
37
- const result = schema.safeParse(val);
38
- if (result.success) {
39
- if (result.data === true)
40
- truthy.push(val);
41
- else if (result.data === false)
42
- falsy.push(val);
43
- }
44
- }
45
- catch {
46
- // Skip values that throw
47
- }
48
- }
49
- // Both sets must be non-empty to generate correct code.
50
- if (truthy.length === 0 || falsy.length === 0) {
51
- return null;
52
- }
53
- // [P1] Verify completeness: trigger a validation error to extract the full list
54
- // of accepted values from Zod's error response. If the schema accepts values
55
- // we didn't discover via probing, fall back to avoid partial compilation.
56
- try {
57
- const probe = schema.safeParse("__zod_compiler_probe__");
58
- if (!probe.success) {
59
- const issues = probe
60
- .error?.issues;
61
- const valueIssue = issues?.find((i) => i.code === "invalid_value");
62
- if (valueIssue?.values) {
63
- const expectedSet = new Set(valueIssue.values);
64
- const discoveredSet = new Set([...truthy, ...falsy]);
65
- for (const v of expectedSet) {
66
- if (!discoveredSet.has(v))
67
- return null;
68
- }
69
- }
70
- }
71
- }
72
- catch {
73
- return null;
74
- }
75
- // [P2] Detect case sensitivity: search BOTH truthy and falsy for a value with
76
- // case variation, then test its opposite-case variant.
77
- let caseSensitive = false;
78
- for (const val of [...truthy, ...falsy]) {
79
- const upper = val.toUpperCase();
80
- if (upper !== val) {
81
- try {
82
- caseSensitive = !schema.safeParse(upper).success;
83
- }
84
- catch {
85
- // safeParse threw — can't determine, default to case-insensitive
86
- }
87
- break;
88
- }
89
- }
90
- return { type: "stringBool", truthy, falsy, caseSensitive };
26
+ * Extract a StringBoolIR by probing the live schema with known test values.
27
+ * Falls back if the discovered values don't fully cover the schema's accepted set.
28
+ */
29
+ function extractStringBool(_def, ctx) {
30
+ const schema = ctx.schema;
31
+ const truthy = [];
32
+ const falsy = [];
33
+ for (const val of PROBE_VALUES) try {
34
+ const result = schema.safeParse(val);
35
+ if (result.success) {
36
+ if (result.data === true) truthy.push(val);
37
+ else if (result.data === false) falsy.push(val);
38
+ }
39
+ } catch {}
40
+ if (truthy.length === 0 || falsy.length === 0) return null;
41
+ try {
42
+ const probe = schema.safeParse("__zod_compiler_probe__");
43
+ if (!probe.success) {
44
+ const valueIssue = (probe.error?.issues)?.find((i) => i.code === "invalid_value");
45
+ if (valueIssue?.values) {
46
+ const expectedSet = new Set(valueIssue.values);
47
+ const discoveredSet = /* @__PURE__ */ new Set([...truthy, ...falsy]);
48
+ for (const v of expectedSet) if (!discoveredSet.has(v)) return null;
49
+ }
50
+ }
51
+ } catch {
52
+ return null;
53
+ }
54
+ let caseSensitive = false;
55
+ for (const val of [...truthy, ...falsy]) {
56
+ const upper = val.toUpperCase();
57
+ if (upper !== val) {
58
+ try {
59
+ caseSensitive = !schema.safeParse(upper).success;
60
+ } catch {}
61
+ break;
62
+ }
63
+ }
64
+ return {
65
+ type: "stringBool",
66
+ truthy,
67
+ falsy,
68
+ caseSensitive
69
+ };
91
70
  }
71
+ //#endregion
72
+ export { extractStringBool, isStringBoolCodec };
73
+
92
74
  //# sourceMappingURL=string-bool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"string-bool.js","sourceRoot":"","sources":["../../../../src/core/extract/extractors/string-bool.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,YAAY,GAAG;IACnB,MAAM;IACN,OAAO;IACP,GAAG;IACH,GAAG;IACH,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,KAAK;IACL,GAAG;IACH,GAAG;IACH,SAAS;IACT,UAAU;CACX,CAAC;AAEF,kFAAkF;AAClF,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,OAAO,CACL,OAAO,GAAG,CAAC,SAAS,KAAK,UAAU;QACnC,OAAO,GAAG,CAAC,gBAAgB,KAAK,UAAU;QAC1C,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,KAAK,QAAQ;QACpC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,KAAK,SAAS,CACvC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,GAAqB;IACnE,MAAM,MAAM,GAAG,GAAG,CAAC,MAElB,CAAC;IAEF,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;oBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;qBACtC,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK;oBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gFAAgF;IAChF,6EAA6E;IAC7E,0EAA0E;IAC1E,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;QACzD,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,MAAM,GAAI,KAA6E;iBAC1F,KAAK,EAAE,MAAM,CAAC;YACjB,MAAM,UAAU,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;YACnE,IAAI,UAAU,EAAE,MAAM,EAAE,CAAC;gBACvB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAC/C,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;gBACrD,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;oBAC5B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;wBAAE,OAAO,IAAI,CAAC;gBACzC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8EAA8E;IAC9E,uDAAuD;IACvD,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,aAAa,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;YACnD,CAAC;YAAC,MAAM,CAAC;gBACP,iEAAiE;YACnE,CAAC;YACD,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"string-bool.js","names":[],"sources":["../../../../src/core/extract/extractors/string-bool.ts"],"sourcesContent":["import type { StringBoolIR } from \"../../types.js\";\nimport type { ExtractorContext, ZodDef } from \"../types.js\";\n\n/**\n * Default probe values used to discover truthy/falsy mappings at build time.\n * Covers all Zod v4 stringbool defaults. Custom values outside this set\n * will cause the schema to fall back to Zod.\n */\nconst PROBE_VALUES = [\n \"true\",\n \"false\",\n \"1\",\n \"0\",\n \"yes\",\n \"no\",\n \"on\",\n \"off\",\n \"y\",\n \"n\",\n \"enabled\",\n \"disabled\",\n];\n\n/** Detect whether a pipe def is a Codec with string→boolean (i.e. stringbool). */\nexport function isStringBoolCodec(def: ZodDef): boolean {\n return (\n typeof def.transform === \"function\" &&\n typeof def.reverseTransform === \"function\" &&\n def.in?._zod?.def?.type === \"string\" &&\n def.out?._zod?.def?.type === \"boolean\"\n );\n}\n\n/**\n * Extract a StringBoolIR by probing the live schema with known test values.\n * Falls back if the discovered values don't fully cover the schema's accepted set.\n */\nexport function extractStringBool(_def: ZodDef, ctx: ExtractorContext): StringBoolIR | null {\n const schema = ctx.schema as {\n safeParse(input: unknown): { success: boolean; data?: unknown };\n };\n\n const truthy: string[] = [];\n const falsy: string[] = [];\n\n for (const val of PROBE_VALUES) {\n try {\n const result = schema.safeParse(val);\n if (result.success) {\n if (result.data === true) truthy.push(val);\n else if (result.data === false) falsy.push(val);\n }\n } catch {\n // Skip values that throw\n }\n }\n\n // Both sets must be non-empty to generate correct code.\n if (truthy.length === 0 || falsy.length === 0) {\n return null;\n }\n\n // [P1] Verify completeness: trigger a validation error to extract the full list\n // of accepted values from Zod's error response. If the schema accepts values\n // we didn't discover via probing, fall back to avoid partial compilation.\n try {\n const probe = schema.safeParse(\"__zod_compiler_probe__\");\n if (!probe.success) {\n const issues = (probe as { error?: { issues?: Array<{ code: string; values?: string[] }> } })\n .error?.issues;\n const valueIssue = issues?.find((i) => i.code === \"invalid_value\");\n if (valueIssue?.values) {\n const expectedSet = new Set(valueIssue.values);\n const discoveredSet = new Set([...truthy, ...falsy]);\n for (const v of expectedSet) {\n if (!discoveredSet.has(v)) return null;\n }\n }\n }\n } catch {\n return null;\n }\n\n // [P2] Detect case sensitivity: search BOTH truthy and falsy for a value with\n // case variation, then test its opposite-case variant.\n let caseSensitive = false;\n for (const val of [...truthy, ...falsy]) {\n const upper = val.toUpperCase();\n if (upper !== val) {\n try {\n caseSensitive = !schema.safeParse(upper).success;\n } catch {\n // safeParse threw — can't determine, default to case-insensitive\n }\n break;\n }\n }\n\n return { type: \"stringBool\", truthy, falsy, caseSensitive };\n}\n"],"mappings":";;;;;;AAQA,MAAM,eAAe;CACnB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;;AAGA,SAAgB,kBAAkB,KAAsB;CACtD,OACE,OAAO,IAAI,cAAc,cACzB,OAAO,IAAI,qBAAqB,cAChC,IAAI,IAAI,MAAM,KAAK,SAAS,YAC5B,IAAI,KAAK,MAAM,KAAK,SAAS;AAEjC;;;;;AAMA,SAAgB,kBAAkB,MAAc,KAA4C;CAC1F,MAAM,SAAS,IAAI;CAInB,MAAM,SAAmB,CAAC;CAC1B,MAAM,QAAkB,CAAC;CAEzB,KAAK,MAAM,OAAO,cAChB,IAAI;EACF,MAAM,SAAS,OAAO,UAAU,GAAG;EACnC,IAAI,OAAO,SACL;OAAA,OAAO,SAAS,MAAM,OAAO,KAAK,GAAG;QACpC,IAAI,OAAO,SAAS,OAAO,MAAM,KAAK,GAAG;EAAA;CAElD,QAAQ,CAER;CAIF,IAAI,OAAO,WAAW,KAAK,MAAM,WAAW,GAC1C,OAAO;CAMT,IAAI;EACF,MAAM,QAAQ,OAAO,UAAU,wBAAwB;EACvD,IAAI,CAAC,MAAM,SAAS;GAGlB,MAAM,cAFU,MACb,OAAO,OAAA,EACiB,MAAM,MAAM,EAAE,SAAS,eAAe;GACjE,IAAI,YAAY,QAAQ;IACtB,MAAM,cAAc,IAAI,IAAI,WAAW,MAAM;IAC7C,MAAM,gCAAgB,IAAI,IAAI,CAAC,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnD,KAAK,MAAM,KAAK,aACd,IAAI,CAAC,cAAc,IAAI,CAAC,GAAG,OAAO;GAEtC;EACF;CACF,QAAQ;EACN,OAAO;CACT;CAIA,IAAI,gBAAgB;CACpB,KAAK,MAAM,OAAO,CAAC,GAAG,QAAQ,GAAG,KAAK,GAAG;EACvC,MAAM,QAAQ,IAAI,YAAY;EAC9B,IAAI,UAAU,KAAK;GACjB,IAAI;IACF,gBAAgB,CAAC,OAAO,UAAU,KAAK,CAAC,CAAC;GAC3C,QAAQ,CAER;GACA;EACF;CACF;CAEA,OAAO;EAAE,MAAM;EAAc;EAAQ;EAAO;CAAc;AAC5D"}
@@ -1,4 +1,7 @@
1
- import type { SchemaIR } from "../../types.js";
2
- import type { ExtractorContext, ZodDef } from "../types.js";
3
- export declare function extractString(def: ZodDef, ctx: ExtractorContext): SchemaIR;
1
+ import { SchemaIR } from "../../types.js";
2
+ import { ExtractorContext, ZodDef } from "../types.js";
3
+ //#region src/core/extract/extractors/string.d.ts
4
+ declare function extractString(def: ZodDef, ctx: ExtractorContext): SchemaIR;
5
+ //#endregion
6
+ export { extractString };
4
7
  //# 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,EAAmB,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,KAAK,EAAE,gBAAgB,EAAkB,MAAM,EAAE,MAAM,aAAa,CAAC;AAgB5E,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAgC1E"}
1
+ {"version":3,"file":"string.d.ts","names":[],"sources":["../../../../src/core/extract/extractors/string.ts"],"mappings":";;;iBAkBgB,cAAc,KAAK,QAAQ,KAAK,mBAAmB"}
@@ -1,42 +1,39 @@
1
1
  import { extractChecks, payloadCheckRef, refineRefRegistrar } from "../checks.js";
2
+ //#region src/core/extract/extractors/string.ts
2
3
  /** Check kinds the string codegen knows how to emit. Anything else → fallback. */
3
- const STRING_CHECK_KINDS = new Set([
4
- "min_length",
5
- "max_length",
6
- "length_equals",
7
- "includes",
8
- "starts_with",
9
- "ends_with",
10
- "string_format",
11
- "refine_effect",
12
- "super_refine_effect",
13
- "overwrite_effect",
4
+ const STRING_CHECK_KINDS = /* @__PURE__ */ new Set([
5
+ "min_length",
6
+ "max_length",
7
+ "length_equals",
8
+ "includes",
9
+ "starts_with",
10
+ "ends_with",
11
+ "string_format",
12
+ "refine_effect",
13
+ "super_refine_effect",
14
+ "overwrite_effect"
14
15
  ]);
15
- export function extractString(def, ctx) {
16
- const coerce = def.coerce ? { coerce: true } : {};
17
- const allChecks = [];
18
- // String format schemas (z.email(), z.url(), ...): the schema def doubles as
19
- // its own check def (check: "string_format"). Reuse extractChecks so pattern
20
- // flags, url constraints, and custom messages are handled uniformly.
21
- if (def.check === "string_format") {
22
- const { checkIRs, hasFallback } = extractChecks([
23
- { _zod: { def } },
24
- ]);
25
- if (hasFallback)
26
- return ctx.fallback("unsupported");
27
- allChecks.push(...checkIRs);
28
- }
29
- // Appended checks (.min(), .refine(), .trim(), ... — also present on format
30
- // schemas like z.email().min(5), which previously lost them entirely).
31
- if (def.checks && def.checks.length > 0) {
32
- const { checkIRs, hasFallback } = extractChecks(def.checks, refineRefRegistrar(ctx, def.checks), (index) => payloadCheckRef(ctx, def.checks, index));
33
- if (hasFallback)
34
- return ctx.fallback("refine");
35
- allChecks.push(...checkIRs);
36
- }
37
- if (allChecks.some((c) => !STRING_CHECK_KINDS.has(c.kind))) {
38
- return ctx.fallback("unsupported");
39
- }
40
- return { type: "string", checks: allChecks, ...coerce };
16
+ function extractString(def, ctx) {
17
+ const coerce = def.coerce ? { coerce: true } : {};
18
+ const allChecks = [];
19
+ if (def.check === "string_format") {
20
+ const { checkIRs, hasFallback } = extractChecks([{ _zod: { def } }]);
21
+ if (hasFallback) return ctx.fallback("unsupported");
22
+ allChecks.push(...checkIRs);
23
+ }
24
+ if (def.checks && def.checks.length > 0) {
25
+ const { checkIRs, hasFallback } = extractChecks(def.checks, refineRefRegistrar(ctx, def.checks), (index) => payloadCheckRef(ctx, def.checks, index));
26
+ if (hasFallback) return ctx.fallback("refine");
27
+ allChecks.push(...checkIRs);
28
+ }
29
+ if (allChecks.some((c) => !STRING_CHECK_KINDS.has(c.kind))) return ctx.fallback("unsupported");
30
+ return {
31
+ type: "string",
32
+ checks: allChecks,
33
+ ...coerce
34
+ };
41
35
  }
36
+ //#endregion
37
+ export { extractString };
38
+
42
39
  //# 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,eAAe,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGlF,kFAAkF;AAClF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,UAAU;IACV,aAAa;IACb,WAAW;IACX,eAAe;IACf,eAAe;IACf,qBAAqB;IACrB,kBAAkB;CACnB,CAAC,CAAC;AAEH,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,GAAqB;IAC9D,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,MAAM,SAAS,GAAsB,EAAE,CAAC;IAExC,6EAA6E;IAC7E,6EAA6E;IAC7E,qEAAqE;IACrE,IAAI,GAAG,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;QAClC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC;YAC9C,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAA+B;SAC/C,CAAC,CAAC;QACH,IAAI,WAAW;YAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACpD,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,4EAA4E;IAC5E,uEAAuE;IACvE,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,aAAa,CAC7C,GAAG,CAAC,MAAM,EACV,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,EACnC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CACnD,CAAC;QACF,IAAI,WAAW;YAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/C,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC3D,OAAO,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"string.js","names":[],"sources":["../../../../src/core/extract/extractors/string.ts"],"sourcesContent":["import type { CheckOrEffectIR, SchemaIR } from \"../../types.js\";\nimport { extractChecks, payloadCheckRef, refineRefRegistrar } from \"../checks.js\";\nimport type { ExtractorContext, ZodCheckSchema, ZodDef } from \"../types.js\";\n\n/** Check kinds the string codegen knows how to emit. Anything else → fallback. */\nconst STRING_CHECK_KINDS = new Set([\n \"min_length\",\n \"max_length\",\n \"length_equals\",\n \"includes\",\n \"starts_with\",\n \"ends_with\",\n \"string_format\",\n \"refine_effect\",\n \"super_refine_effect\",\n \"overwrite_effect\",\n]);\n\nexport function extractString(def: ZodDef, ctx: ExtractorContext): SchemaIR {\n const coerce = def.coerce ? { coerce: true as const } : {};\n const allChecks: CheckOrEffectIR[] = [];\n\n // String format schemas (z.email(), z.url(), ...): the schema def doubles as\n // its own check def (check: \"string_format\"). Reuse extractChecks so pattern\n // flags, url constraints, and custom messages are handled uniformly.\n if (def.check === \"string_format\") {\n const { checkIRs, hasFallback } = extractChecks([\n { _zod: { def } } as unknown as ZodCheckSchema,\n ]);\n if (hasFallback) return ctx.fallback(\"unsupported\");\n allChecks.push(...checkIRs);\n }\n\n // Appended checks (.min(), .refine(), .trim(), ... — also present on format\n // schemas like z.email().min(5), which previously lost them entirely).\n if (def.checks && def.checks.length > 0) {\n const { checkIRs, hasFallback } = extractChecks(\n def.checks,\n refineRefRegistrar(ctx, def.checks),\n (index) => payloadCheckRef(ctx, def.checks, index),\n );\n if (hasFallback) return ctx.fallback(\"refine\");\n allChecks.push(...checkIRs);\n }\n\n if (allChecks.some((c) => !STRING_CHECK_KINDS.has(c.kind))) {\n return ctx.fallback(\"unsupported\");\n }\n\n return { type: \"string\", checks: allChecks, ...coerce };\n}\n"],"mappings":";;;AAKA,MAAM,qCAAqB,IAAI,IAAI;CACjC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF,CAAC;AAED,SAAgB,cAAc,KAAa,KAAiC;CAC1E,MAAM,SAAS,IAAI,SAAS,EAAE,QAAQ,KAAc,IAAI,CAAC;CACzD,MAAM,YAA+B,CAAC;CAKtC,IAAI,IAAI,UAAU,iBAAiB;EACjC,MAAM,EAAE,UAAU,gBAAgB,cAAc,CAC9C,EAAE,MAAM,EAAE,IAAI,EAAE,CAClB,CAAC;EACD,IAAI,aAAa,OAAO,IAAI,SAAS,aAAa;EAClD,UAAU,KAAK,GAAG,QAAQ;CAC5B;CAIA,IAAI,IAAI,UAAU,IAAI,OAAO,SAAS,GAAG;EACvC,MAAM,EAAE,UAAU,gBAAgB,cAChC,IAAI,QACJ,mBAAmB,KAAK,IAAI,MAAM,IACjC,UAAU,gBAAgB,KAAK,IAAI,QAAQ,KAAK,CACnD;EACA,IAAI,aAAa,OAAO,IAAI,SAAS,QAAQ;EAC7C,UAAU,KAAK,GAAG,QAAQ;CAC5B;CAEA,IAAI,UAAU,MAAM,MAAM,CAAC,mBAAmB,IAAI,EAAE,IAAI,CAAC,GACvD,OAAO,IAAI,SAAS,aAAa;CAGnC,OAAO;EAAE,MAAM;EAAU,QAAQ;EAAW,GAAG;CAAO;AACxD"}
@@ -1,3 +1,6 @@
1
- import type { Extractor } from "../types.js";
2
- export declare const extractSymbol: Extractor;
1
+ import { Extractor } from "../types.js";
2
+ //#region src/core/extract/extractors/symbol.d.ts
3
+ declare const extractSymbol: Extractor;
4
+ //#endregion
5
+ export { extractSymbol };
3
6
  //# sourceMappingURL=symbol.d.ts.map
@@ -1 +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"}
1
+ {"version":3,"file":"symbol.d.ts","names":[],"sources":["../../../../src/core/extract/extractors/symbol.ts"],"mappings":";;cAEa,eAAe"}
@@ -1,2 +1,6 @@
1
- export const extractSymbol = () => ({ type: "symbol" });
1
+ //#region src/core/extract/extractors/symbol.ts
2
+ const extractSymbol = () => ({ type: "symbol" });
3
+ //#endregion
4
+ export { extractSymbol };
5
+
2
6
  //# sourceMappingURL=symbol.js.map
@@ -1 +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
+ {"version":3,"file":"symbol.js","names":[],"sources":["../../../../src/core/extract/extractors/symbol.ts"],"sourcesContent":["import type { Extractor } from \"../types.js\";\n\nexport const extractSymbol: Extractor = () => ({ type: \"symbol\" });\n"],"mappings":";AAEA,MAAa,uBAAkC,EAAE,MAAM,SAAS"}
@@ -1,4 +1,7 @@
1
- import type { SchemaIR } from "../../types.js";
2
- import type { ExtractorContext } from "../types.js";
3
- export declare function extractTemplateLiteral(_def: unknown, ctx: ExtractorContext): SchemaIR;
1
+ import { SchemaIR } from "../../types.js";
2
+ import { ExtractorContext } from "../types.js";
3
+ //#region src/core/extract/extractors/template-literal.d.ts
4
+ declare function extractTemplateLiteral(_def: unknown, ctx: ExtractorContext): SchemaIR;
5
+ //#endregion
6
+ export { extractTemplateLiteral };
4
7
  //# 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;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
+ {"version":3,"file":"template-literal.d.ts","names":[],"sources":["../../../../src/core/extract/extractors/template-literal.ts"],"mappings":";;;iBAGgB,uBAAuB,eAAe,KAAK,mBAAmB"}
@@ -1,8 +1,13 @@
1
- export function extractTemplateLiteral(_def, ctx) {
2
- const schema = ctx.schema;
3
- const pattern = schema._zod.pattern;
4
- if (!pattern)
5
- return ctx.fallback("unsupported");
6
- return { type: "templateLiteral", pattern: pattern.source };
1
+ //#region src/core/extract/extractors/template-literal.ts
2
+ function extractTemplateLiteral(_def, ctx) {
3
+ const pattern = ctx.schema._zod.pattern;
4
+ if (!pattern) return ctx.fallback("unsupported");
5
+ return {
6
+ type: "templateLiteral",
7
+ pattern: pattern.source
8
+ };
7
9
  }
10
+ //#endregion
11
+ export { extractTemplateLiteral };
12
+
8
13
  //# 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":"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"}
1
+ {"version":3,"file":"template-literal.js","names":[],"sources":["../../../../src/core/extract/extractors/template-literal.ts"],"sourcesContent":["import type { SchemaIR } from \"../../types.js\";\nimport type { ExtractorContext, ZodSchema } from \"../types.js\";\n\nexport function extractTemplateLiteral(_def: unknown, ctx: ExtractorContext): SchemaIR {\n const schema = ctx.schema as ZodSchema;\n const pattern = schema._zod.pattern;\n if (!pattern) return ctx.fallback(\"unsupported\");\n return { type: \"templateLiteral\", pattern: pattern.source };\n}\n"],"mappings":";AAGA,SAAgB,uBAAuB,MAAe,KAAiC;CAErF,MAAM,UADS,IAAI,OACI,KAAK;CAC5B,IAAI,CAAC,SAAS,OAAO,IAAI,SAAS,aAAa;CAC/C,OAAO;EAAE,MAAM;EAAmB,SAAS,QAAQ;CAAO;AAC5D"}
@@ -1,4 +1,7 @@
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;
1
+ import { SchemaIR } from "../../types.js";
2
+ import { ExtractorContext, ZodDef } from "../types.js";
3
+ //#region src/core/extract/extractors/tuple.d.ts
4
+ declare function extractTuple(def: ZodDef, ctx: ExtractorContext): SchemaIR;
5
+ //#endregion
6
+ export { extractTuple };
4
7
  //# sourceMappingURL=tuple.d.ts.map
@@ -1 +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"}
1
+ {"version":3,"file":"tuple.d.ts","names":[],"sources":["../../../../src/core/extract/extractors/tuple.ts"],"mappings":";;;iBAGgB,aAAa,KAAK,QAAQ,KAAK,mBAAmB"}
@@ -1,6 +1,12 @@
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 };
1
+ //#region src/core/extract/extractors/tuple.ts
2
+ function extractTuple(def, ctx) {
3
+ return {
4
+ type: "tuple",
5
+ items: def.items.map((item, i) => ctx.visit(item, `._zod.def.items[${i}]`)),
6
+ rest: def.rest ? ctx.visit(def.rest, "._zod.def.rest") : null
7
+ };
5
8
  }
9
+ //#endregion
10
+ export { extractTuple };
11
+
6
12
  //# sourceMappingURL=tuple.js.map
@@ -1 +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"}
1
+ {"version":3,"file":"tuple.js","names":[],"sources":["../../../../src/core/extract/extractors/tuple.ts"],"sourcesContent":["import type { SchemaIR } from \"../../types.js\";\nimport type { ExtractorContext, ZodDef } from \"../types.js\";\n\nexport function extractTuple(def: ZodDef, ctx: ExtractorContext): SchemaIR {\n const items = def.items.map((item, i) => ctx.visit(item, `._zod.def.items[${i}]`));\n const rest = def.rest ? ctx.visit(def.rest, \"._zod.def.rest\") : null;\n return { type: \"tuple\", items, rest };\n}\n"],"mappings":";AAGA,SAAgB,aAAa,KAAa,KAAiC;CAGzE,OAAO;EAAE,MAAM;EAAS,OAFV,IAAI,MAAM,KAAK,MAAM,MAAM,IAAI,MAAM,MAAM,mBAAmB,EAAE,EAAE,CAEpD;EAAG,MADlB,IAAI,OAAO,IAAI,MAAM,IAAI,MAAM,gBAAgB,IAAI;CAC5B;AACtC"}
@@ -1,3 +1,6 @@
1
- import type { Extractor } from "../types.js";
2
- export declare const extractUndefined: Extractor;
1
+ import { Extractor } from "../types.js";
2
+ //#region src/core/extract/extractors/undefined.d.ts
3
+ declare const extractUndefined: Extractor;
4
+ //#endregion
5
+ export { extractUndefined };
3
6
  //# sourceMappingURL=undefined.d.ts.map
@@ -1 +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"}
1
+ {"version":3,"file":"undefined.d.ts","names":[],"sources":["../../../../src/core/extract/extractors/undefined.ts"],"mappings":";;cAEa,kBAAkB"}
@@ -1,2 +1,6 @@
1
- export const extractUndefined = () => ({ type: "undefined" });
1
+ //#region src/core/extract/extractors/undefined.ts
2
+ const extractUndefined = () => ({ type: "undefined" });
3
+ //#endregion
4
+ export { extractUndefined };
5
+
2
6
  //# sourceMappingURL=undefined.js.map
@@ -1 +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
+ {"version":3,"file":"undefined.js","names":[],"sources":["../../../../src/core/extract/extractors/undefined.ts"],"sourcesContent":["import type { Extractor } from \"../types.js\";\n\nexport const extractUndefined: Extractor = () => ({ type: \"undefined\" });\n"],"mappings":";AAEA,MAAa,0BAAqC,EAAE,MAAM,YAAY"}
@@ -1,4 +1,7 @@
1
- import type { SchemaIR } from "../../types.js";
2
- import type { ExtractorContext, ZodDef } from "../types.js";
3
- export declare function extractUnion(def: ZodDef, ctx: ExtractorContext): SchemaIR;
1
+ import { SchemaIR } from "../../types.js";
2
+ import { ExtractorContext, ZodDef } from "../types.js";
3
+ //#region src/core/extract/extractors/union.d.ts
4
+ declare function extractUnion(def: ZodDef, ctx: ExtractorContext): SchemaIR;
5
+ //#endregion
6
+ export { extractUnion };
4
7
  //# 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,gBAAgB,EAAE,MAAM,EAAa,MAAM,aAAa,CAAC;AAEvE,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,QAAQ,CAoEzE"}
1
+ {"version":3,"file":"union.d.ts","names":[],"sources":["../../../../src/core/extract/extractors/union.ts"],"mappings":";;;iBAGgB,aAAa,KAAK,QAAQ,KAAK,mBAAmB"}