mcp-use 2.0.0-beta.4 → 2.0.0-beta.41

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 (1202) hide show
  1. package/dist/bin.js +1 -179
  2. package/dist/branding.d.ts +81 -0
  3. package/dist/chunk-GX6PGIEO.js +630 -0
  4. package/dist/chunk-JMDHTN6N.js +1 -0
  5. package/dist/chunk-OJF6B5EU.js +1 -0
  6. package/dist/chunk-PSKSL567.js +1 -0
  7. package/dist/chunk-WYBJYZJB.js +1 -0
  8. package/dist/chunk-Y26DNVWA.js +3 -0
  9. package/dist/chunk-YBGMCISI.js +2 -0
  10. package/dist/chunk-ZMU5USAZ.js +1 -0
  11. package/dist/completable.d.ts +9 -1
  12. package/dist/config.d.ts +134 -73
  13. package/dist/context.d.ts +147 -11
  14. package/dist/fetch-app.d.ts +26 -8
  15. package/dist/index.d.ts +39 -11
  16. package/dist/index.js +32 -1818
  17. package/dist/internal/resource-completion.js +1 -0
  18. package/dist/internal/usage.js +1 -0
  19. package/dist/landing-handler-TG6LVQBI.js +1 -0
  20. package/dist/landing-handler.d.ts +23 -0
  21. package/dist/landing.d.ts +66 -0
  22. package/dist/landing.js +1 -0
  23. package/dist/listen-address.d.ts +8 -0
  24. package/dist/logging.d.ts +0 -1
  25. package/dist/mcp-proxy-NETCUGUD.js +2 -0
  26. package/dist/mcp-proxy.d.ts +158 -0
  27. package/dist/middleware/cors.d.ts +10 -0
  28. package/dist/middleware/mcp-middleware.d.ts +183 -0
  29. package/dist/mount-mcp.d.ts +0 -5
  30. package/dist/next/config.d.ts +38 -0
  31. package/dist/next/handler.d.ts +16 -0
  32. package/dist/next/index.d.ts +4 -0
  33. package/dist/next/index.js +1 -0
  34. package/dist/node-bridge.d.ts +0 -1
  35. package/dist/node-bridge.js +1 -151
  36. package/dist/oauth/adapters.d.ts +0 -1
  37. package/dist/oauth/auth0.d.ts +0 -1
  38. package/dist/oauth/auth0.js +1 -61
  39. package/dist/oauth/better-auth.d.ts +28 -0
  40. package/dist/oauth/better-auth.js +1 -0
  41. package/dist/oauth/clerk.d.ts +0 -1
  42. package/dist/oauth/clerk.js +1 -70
  43. package/dist/oauth/guards.d.ts +0 -1
  44. package/dist/oauth/index.d.ts +0 -1
  45. package/dist/oauth/index.js +1 -27
  46. package/dist/oauth/internal.d.ts +0 -1
  47. package/dist/oauth/jwt.d.ts +0 -1
  48. package/dist/oauth/keycloak.d.ts +0 -1
  49. package/dist/oauth/keycloak.js +1 -94
  50. package/dist/oauth/provider.d.ts +0 -1
  51. package/dist/oauth/supabase.d.ts +0 -1
  52. package/dist/oauth/supabase.js +1 -101
  53. package/dist/oauth/workos.d.ts +0 -1
  54. package/dist/oauth/workos.js +1 -77
  55. package/dist/openapi/index.d.ts +0 -1
  56. package/dist/openapi/index.js +1 -7
  57. package/dist/openapi/types.d.ts +0 -1
  58. package/dist/prompts.d.ts +7 -4
  59. package/dist/public-route-DAQJGS6K.js +1 -0
  60. package/dist/react/components/error-boundary.d.ts +0 -1
  61. package/dist/react/components/image.d.ts +0 -1
  62. package/dist/react/components/model-context.d.ts +9 -15
  63. package/dist/react/components/theme-provider.d.ts +3 -1
  64. package/dist/react/components/view-controls.d.ts +0 -1
  65. package/dist/react/hooks/use-call-tool.d.ts +29 -12
  66. package/dist/react/hooks/use-display-mode.d.ts +0 -1
  67. package/dist/react/hooks/use-files.d.ts +24 -0
  68. package/dist/react/hooks/use-host-context.d.ts +5 -1
  69. package/dist/react/hooks/use-open-external.d.ts +0 -1
  70. package/dist/react/hooks/use-send-follow-up.d.ts +0 -1
  71. package/dist/react/hooks/use-send-size-changed.d.ts +0 -1
  72. package/dist/react/hooks/use-tool-context.d.ts +0 -1
  73. package/dist/react/hooks/use-view-state.d.ts +23 -0
  74. package/dist/react/hooks/use-view-theme.d.ts +0 -1
  75. package/dist/react/hooks/use-view-tool.d.ts +0 -1
  76. package/dist/react/index.d.ts +4 -2
  77. package/dist/react/index.js +346 -85
  78. package/dist/react/public-assets.d.ts +0 -1
  79. package/dist/react/runtime/bootstrap-view.d.ts +0 -1
  80. package/dist/react/runtime/model-context-store.d.ts +34 -69
  81. package/dist/react/runtime/view-config.d.ts +0 -1
  82. package/dist/react/runtime/view-runtime-context.d.ts +0 -1
  83. package/dist/react/runtime/view-runtime.d.ts +25 -3
  84. package/dist/react/types/file-types.d.ts +15 -0
  85. package/dist/react/types/host-types.d.ts +0 -1
  86. package/dist/react/types/register.d.ts +11 -4
  87. package/dist/react/types/result-types.d.ts +0 -1
  88. package/dist/resource-completion.d.ts +11 -0
  89. package/dist/resources.d.ts +72 -9
  90. package/dist/response-conversion.d.ts +25 -0
  91. package/dist/response-helpers.d.ts +223 -0
  92. package/dist/server.d.ts +166 -34
  93. package/dist/tools.d.ts +26 -15
  94. package/dist/usage.d.ts +11 -0
  95. package/dist/views/capabilities.d.ts +0 -1
  96. package/dist/views/constants.d.ts +1 -2
  97. package/dist/views/csp-env.d.ts +0 -1
  98. package/dist/views/document.d.ts +9 -11
  99. package/dist/views/index.d.ts +0 -1
  100. package/dist/views/origin.d.ts +0 -1
  101. package/dist/views/public-route.d.ts +10 -5
  102. package/dist/views/register.d.ts +1 -2
  103. package/dist/views/routes.d.ts +6 -3
  104. package/dist/views/types.d.ts +19 -15
  105. package/dist/views/wire.d.ts +14 -10
  106. package/package.json +34 -20
  107. package/dist/.tsbuildinfo +0 -1
  108. package/dist/bin/args.d.ts +0 -61
  109. package/dist/bin/args.d.ts.map +0 -1
  110. package/dist/bin/main.d.ts +0 -32
  111. package/dist/bin/main.d.ts.map +0 -1
  112. package/dist/bin/start.d.ts +0 -40
  113. package/dist/bin/start.d.ts.map +0 -1
  114. package/dist/bin.d.ts +0 -3
  115. package/dist/bin.d.ts.map +0 -1
  116. package/dist/bin.js.map +0 -1
  117. package/dist/chunk-AATFAERC.js +0 -384
  118. package/dist/chunk-AATFAERC.js.map +0 -1
  119. package/dist/chunk-AQ2ZZM2P.js +0 -193
  120. package/dist/chunk-AQ2ZZM2P.js.map +0 -1
  121. package/dist/chunk-DPL7OEXC.js +0 -518
  122. package/dist/chunk-DPL7OEXC.js.map +0 -1
  123. package/dist/chunk-IG2BCCMU.js +0 -98
  124. package/dist/chunk-IG2BCCMU.js.map +0 -1
  125. package/dist/chunk-RQRT27Q3.js +0 -454
  126. package/dist/chunk-RQRT27Q3.js.map +0 -1
  127. package/dist/chunk-SFI2T6TE.js +0 -171
  128. package/dist/chunk-SFI2T6TE.js.map +0 -1
  129. package/dist/chunk-VV2P4ZFZ.js +0 -187
  130. package/dist/chunk-VV2P4ZFZ.js.map +0 -1
  131. package/dist/chunk-XUD22N3Y.js +0 -156
  132. package/dist/chunk-XUD22N3Y.js.map +0 -1
  133. package/dist/chunk-ZMIKQPSO.js +0 -151
  134. package/dist/chunk-ZMIKQPSO.js.map +0 -1
  135. package/dist/cli/build.d.ts +0 -61
  136. package/dist/cli/build.d.ts.map +0 -1
  137. package/dist/cli/dev-api.d.ts +0 -49
  138. package/dist/cli/dev-api.d.ts.map +0 -1
  139. package/dist/cli/dev.d.ts +0 -101
  140. package/dist/cli/dev.d.ts.map +0 -1
  141. package/dist/cli/entry.d.ts +0 -31
  142. package/dist/cli/entry.d.ts.map +0 -1
  143. package/dist/cli/index.d.ts +0 -17
  144. package/dist/cli/index.d.ts.map +0 -1
  145. package/dist/cli/port.d.ts +0 -30
  146. package/dist/cli/port.d.ts.map +0 -1
  147. package/dist/cli/tunnel.d.ts +0 -46
  148. package/dist/cli/tunnel.d.ts.map +0 -1
  149. package/dist/cli/views-bindings.d.ts +0 -30
  150. package/dist/cli/views-bindings.d.ts.map +0 -1
  151. package/dist/cli/views-plugin.d.ts +0 -47
  152. package/dist/cli/views-plugin.d.ts.map +0 -1
  153. package/dist/cli/views.d.ts +0 -75
  154. package/dist/cli/views.d.ts.map +0 -1
  155. package/dist/cli/vite-config.d.ts +0 -21
  156. package/dist/cli/vite-config.d.ts.map +0 -1
  157. package/dist/cli/workspace.d.ts +0 -107
  158. package/dist/cli/workspace.d.ts.map +0 -1
  159. package/dist/commands/build.d.ts +0 -8
  160. package/dist/commands/build.d.ts.map +0 -1
  161. package/dist/commands/build.js +0 -363
  162. package/dist/commands/build.js.map +0 -1
  163. package/dist/commands/client.d.ts +0 -22
  164. package/dist/commands/client.d.ts.map +0 -1
  165. package/dist/commands/client.js +0 -14
  166. package/dist/commands/client.js.map +0 -1
  167. package/dist/commands/cloud-api.d.ts +0 -70
  168. package/dist/commands/cloud-api.d.ts.map +0 -1
  169. package/dist/commands/deploy.d.ts +0 -3
  170. package/dist/commands/deploy.d.ts.map +0 -1
  171. package/dist/commands/deploy.js +0 -242
  172. package/dist/commands/deploy.js.map +0 -1
  173. package/dist/commands/deployments.d.ts +0 -3
  174. package/dist/commands/deployments.d.ts.map +0 -1
  175. package/dist/commands/deployments.js +0 -213
  176. package/dist/commands/deployments.js.map +0 -1
  177. package/dist/commands/dev.d.ts +0 -8
  178. package/dist/commands/dev.d.ts.map +0 -1
  179. package/dist/commands/dev.js +0 -652
  180. package/dist/commands/dev.js.map +0 -1
  181. package/dist/commands/identity.d.ts +0 -3
  182. package/dist/commands/identity.d.ts.map +0 -1
  183. package/dist/commands/identity.js +0 -192
  184. package/dist/commands/identity.js.map +0 -1
  185. package/dist/commands/load-client.d.ts +0 -11
  186. package/dist/commands/load-client.d.ts.map +0 -1
  187. package/dist/commands/organizations.d.ts +0 -3
  188. package/dist/commands/organizations.d.ts.map +0 -1
  189. package/dist/commands/organizations.js +0 -97
  190. package/dist/commands/organizations.js.map +0 -1
  191. package/dist/commands/screenshot.d.ts +0 -3
  192. package/dist/commands/screenshot.d.ts.map +0 -1
  193. package/dist/commands/screenshot.js +0 -463
  194. package/dist/commands/screenshot.js.map +0 -1
  195. package/dist/commands/servers.d.ts +0 -3
  196. package/dist/commands/servers.d.ts.map +0 -1
  197. package/dist/commands/servers.js +0 -278
  198. package/dist/commands/servers.js.map +0 -1
  199. package/dist/commands/shared.d.ts +0 -44
  200. package/dist/commands/shared.d.ts.map +0 -1
  201. package/dist/commands/skills.d.ts +0 -3
  202. package/dist/commands/skills.d.ts.map +0 -1
  203. package/dist/commands/skills.js +0 -84
  204. package/dist/commands/skills.js.map +0 -1
  205. package/dist/commands/start.d.ts +0 -8
  206. package/dist/commands/start.d.ts.map +0 -1
  207. package/dist/commands/start.js +0 -72
  208. package/dist/commands/start.js.map +0 -1
  209. package/dist/completable.d.ts.map +0 -1
  210. package/dist/config.d.ts.map +0 -1
  211. package/dist/context.d.ts.map +0 -1
  212. package/dist/fetch-app.d.ts.map +0 -1
  213. package/dist/index.d.ts.map +0 -1
  214. package/dist/index.js.map +0 -1
  215. package/dist/inspector-shell.d.ts +0 -81
  216. package/dist/inspector-shell.d.ts.map +0 -1
  217. package/dist/logging.d.ts.map +0 -1
  218. package/dist/mount-mcp.d.ts.map +0 -1
  219. package/dist/node-bridge.d.ts.map +0 -1
  220. package/dist/node-bridge.js.map +0 -1
  221. package/dist/oauth/adapters.d.ts.map +0 -1
  222. package/dist/oauth/auth0.d.ts.map +0 -1
  223. package/dist/oauth/auth0.js.map +0 -1
  224. package/dist/oauth/clerk.d.ts.map +0 -1
  225. package/dist/oauth/clerk.js.map +0 -1
  226. package/dist/oauth/guards.d.ts.map +0 -1
  227. package/dist/oauth/index.d.ts.map +0 -1
  228. package/dist/oauth/index.js.map +0 -1
  229. package/dist/oauth/internal.d.ts.map +0 -1
  230. package/dist/oauth/jwt.d.ts.map +0 -1
  231. package/dist/oauth/keycloak.d.ts.map +0 -1
  232. package/dist/oauth/keycloak.js.map +0 -1
  233. package/dist/oauth/provider.d.ts.map +0 -1
  234. package/dist/oauth/supabase.d.ts.map +0 -1
  235. package/dist/oauth/supabase.js.map +0 -1
  236. package/dist/oauth/workos.d.ts.map +0 -1
  237. package/dist/oauth/workos.js.map +0 -1
  238. package/dist/openapi/index.d.ts.map +0 -1
  239. package/dist/openapi/index.js.map +0 -1
  240. package/dist/openapi/types.d.ts.map +0 -1
  241. package/dist/prompts.d.ts.map +0 -1
  242. package/dist/public-route-7IK5D7V7.js +0 -60
  243. package/dist/public-route-7IK5D7V7.js.map +0 -1
  244. package/dist/react/components/error-boundary.d.ts.map +0 -1
  245. package/dist/react/components/image.d.ts.map +0 -1
  246. package/dist/react/components/model-context.d.ts.map +0 -1
  247. package/dist/react/components/theme-provider.d.ts.map +0 -1
  248. package/dist/react/components/view-controls.d.ts.map +0 -1
  249. package/dist/react/hooks/use-call-tool.d.ts.map +0 -1
  250. package/dist/react/hooks/use-display-mode.d.ts.map +0 -1
  251. package/dist/react/hooks/use-host-context.d.ts.map +0 -1
  252. package/dist/react/hooks/use-open-external.d.ts.map +0 -1
  253. package/dist/react/hooks/use-send-follow-up.d.ts.map +0 -1
  254. package/dist/react/hooks/use-send-size-changed.d.ts.map +0 -1
  255. package/dist/react/hooks/use-tool-context.d.ts.map +0 -1
  256. package/dist/react/hooks/use-view-theme.d.ts.map +0 -1
  257. package/dist/react/hooks/use-view-tool.d.ts.map +0 -1
  258. package/dist/react/index.d.ts.map +0 -1
  259. package/dist/react/index.js.map +0 -1
  260. package/dist/react/public-assets.d.ts.map +0 -1
  261. package/dist/react/runtime/bootstrap-view.d.ts.map +0 -1
  262. package/dist/react/runtime/model-context-store.d.ts.map +0 -1
  263. package/dist/react/runtime/view-config.d.ts.map +0 -1
  264. package/dist/react/runtime/view-runtime-context.d.ts.map +0 -1
  265. package/dist/react/runtime/view-runtime.d.ts.map +0 -1
  266. package/dist/react/types/host-types.d.ts.map +0 -1
  267. package/dist/react/types/register.d.ts.map +0 -1
  268. package/dist/react/types/result-types.d.ts.map +0 -1
  269. package/dist/resources.d.ts.map +0 -1
  270. package/dist/server.d.ts.map +0 -1
  271. package/dist/tools.d.ts.map +0 -1
  272. package/dist/views/capabilities.d.ts.map +0 -1
  273. package/dist/views/constants.d.ts.map +0 -1
  274. package/dist/views/csp-env.d.ts.map +0 -1
  275. package/dist/views/document.d.ts.map +0 -1
  276. package/dist/views/index.d.ts.map +0 -1
  277. package/dist/views/origin.d.ts.map +0 -1
  278. package/dist/views/public-route.d.ts.map +0 -1
  279. package/dist/views/register.d.ts.map +0 -1
  280. package/dist/views/routes.d.ts.map +0 -1
  281. package/dist/views/types.d.ts.map +0 -1
  282. package/dist/views/wire.d.ts.map +0 -1
  283. package/node_modules/@modelcontextprotocol/client/LICENSE +0 -216
  284. package/node_modules/@modelcontextprotocol/client/README.md +0 -26
  285. package/node_modules/@modelcontextprotocol/client/dist/ajvProvider-Asx17_Co.mjs +0 -7069
  286. package/node_modules/@modelcontextprotocol/client/dist/ajvProvider-Asx17_Co.mjs.map +0 -1
  287. package/node_modules/@modelcontextprotocol/client/dist/ajvProvider-B7GnTXYx.d.mts +0 -1054
  288. package/node_modules/@modelcontextprotocol/client/dist/ajvProvider-B7GnTXYx.d.mts.map +0 -1
  289. package/node_modules/@modelcontextprotocol/client/dist/ajvProvider-B_4czhCS.d.cts +0 -1054
  290. package/node_modules/@modelcontextprotocol/client/dist/ajvProvider-B_4czhCS.d.cts.map +0 -1
  291. package/node_modules/@modelcontextprotocol/client/dist/ajvProvider-DNzBrkxq.cjs +0 -7086
  292. package/node_modules/@modelcontextprotocol/client/dist/ajvProvider-DNzBrkxq.cjs.map +0 -1
  293. package/node_modules/@modelcontextprotocol/client/dist/cfWorkerProvider-D9GAttn8.d.cts +0 -59
  294. package/node_modules/@modelcontextprotocol/client/dist/cfWorkerProvider-D9GAttn8.d.cts.map +0 -1
  295. package/node_modules/@modelcontextprotocol/client/dist/cfWorkerProvider-DbU8BxXO.mjs +0 -970
  296. package/node_modules/@modelcontextprotocol/client/dist/cfWorkerProvider-DbU8BxXO.mjs.map +0 -1
  297. package/node_modules/@modelcontextprotocol/client/dist/cfWorkerProvider-Djgwc46-.cjs +0 -976
  298. package/node_modules/@modelcontextprotocol/client/dist/cfWorkerProvider-Djgwc46-.cjs.map +0 -1
  299. package/node_modules/@modelcontextprotocol/client/dist/cfWorkerProvider-Xtj52JOa.d.mts +0 -59
  300. package/node_modules/@modelcontextprotocol/client/dist/cfWorkerProvider-Xtj52JOa.d.mts.map +0 -1
  301. package/node_modules/@modelcontextprotocol/client/dist/chunk-Bnu9O96Y.cjs +0 -60
  302. package/node_modules/@modelcontextprotocol/client/dist/chunk-Br0eD_fh.mjs +0 -42
  303. package/node_modules/@modelcontextprotocol/client/dist/index-ZagFkUbt.d.mts +0 -2675
  304. package/node_modules/@modelcontextprotocol/client/dist/index-ZagFkUbt.d.mts.map +0 -1
  305. package/node_modules/@modelcontextprotocol/client/dist/index-gN3EXmil.d.cts +0 -2678
  306. package/node_modules/@modelcontextprotocol/client/dist/index-gN3EXmil.d.cts.map +0 -1
  307. package/node_modules/@modelcontextprotocol/client/dist/index.cjs +0 -5427
  308. package/node_modules/@modelcontextprotocol/client/dist/index.cjs.map +0 -1
  309. package/node_modules/@modelcontextprotocol/client/dist/index.d.cts +0 -3196
  310. package/node_modules/@modelcontextprotocol/client/dist/index.d.cts.map +0 -1
  311. package/node_modules/@modelcontextprotocol/client/dist/index.d.mts +0 -3196
  312. package/node_modules/@modelcontextprotocol/client/dist/index.d.mts.map +0 -1
  313. package/node_modules/@modelcontextprotocol/client/dist/index.mjs +0 -5224
  314. package/node_modules/@modelcontextprotocol/client/dist/index.mjs.map +0 -1
  315. package/node_modules/@modelcontextprotocol/client/dist/shimsBrowser.cjs +0 -14
  316. package/node_modules/@modelcontextprotocol/client/dist/shimsBrowser.cjs.map +0 -1
  317. package/node_modules/@modelcontextprotocol/client/dist/shimsBrowser.d.cts +0 -13
  318. package/node_modules/@modelcontextprotocol/client/dist/shimsBrowser.d.cts.map +0 -1
  319. package/node_modules/@modelcontextprotocol/client/dist/shimsBrowser.d.mts +0 -13
  320. package/node_modules/@modelcontextprotocol/client/dist/shimsBrowser.d.mts.map +0 -1
  321. package/node_modules/@modelcontextprotocol/client/dist/shimsBrowser.mjs +0 -13
  322. package/node_modules/@modelcontextprotocol/client/dist/shimsBrowser.mjs.map +0 -1
  323. package/node_modules/@modelcontextprotocol/client/dist/shimsNode.cjs +0 -14
  324. package/node_modules/@modelcontextprotocol/client/dist/shimsNode.cjs.map +0 -1
  325. package/node_modules/@modelcontextprotocol/client/dist/shimsNode.d.cts +0 -13
  326. package/node_modules/@modelcontextprotocol/client/dist/shimsNode.d.cts.map +0 -1
  327. package/node_modules/@modelcontextprotocol/client/dist/shimsNode.d.mts +0 -13
  328. package/node_modules/@modelcontextprotocol/client/dist/shimsNode.d.mts.map +0 -1
  329. package/node_modules/@modelcontextprotocol/client/dist/shimsNode.mjs +0 -13
  330. package/node_modules/@modelcontextprotocol/client/dist/shimsNode.mjs.map +0 -1
  331. package/node_modules/@modelcontextprotocol/client/dist/shimsWorkerd.cjs +0 -21
  332. package/node_modules/@modelcontextprotocol/client/dist/shimsWorkerd.cjs.map +0 -1
  333. package/node_modules/@modelcontextprotocol/client/dist/shimsWorkerd.d.cts +0 -13
  334. package/node_modules/@modelcontextprotocol/client/dist/shimsWorkerd.d.cts.map +0 -1
  335. package/node_modules/@modelcontextprotocol/client/dist/shimsWorkerd.d.mts +0 -13
  336. package/node_modules/@modelcontextprotocol/client/dist/shimsWorkerd.d.mts.map +0 -1
  337. package/node_modules/@modelcontextprotocol/client/dist/shimsWorkerd.mjs +0 -20
  338. package/node_modules/@modelcontextprotocol/client/dist/shimsWorkerd.mjs.map +0 -1
  339. package/node_modules/@modelcontextprotocol/client/dist/src-BzzZSQyL.cjs +0 -7331
  340. package/node_modules/@modelcontextprotocol/client/dist/src-BzzZSQyL.cjs.map +0 -1
  341. package/node_modules/@modelcontextprotocol/client/dist/src-DGeA9On3.mjs +0 -6963
  342. package/node_modules/@modelcontextprotocol/client/dist/src-DGeA9On3.mjs.map +0 -1
  343. package/node_modules/@modelcontextprotocol/client/dist/stdio.cjs +0 -181
  344. package/node_modules/@modelcontextprotocol/client/dist/stdio.cjs.map +0 -1
  345. package/node_modules/@modelcontextprotocol/client/dist/stdio.d.cts +0 -87
  346. package/node_modules/@modelcontextprotocol/client/dist/stdio.d.cts.map +0 -1
  347. package/node_modules/@modelcontextprotocol/client/dist/stdio.d.mts +0 -87
  348. package/node_modules/@modelcontextprotocol/client/dist/stdio.d.mts.map +0 -1
  349. package/node_modules/@modelcontextprotocol/client/dist/stdio.mjs +0 -176
  350. package/node_modules/@modelcontextprotocol/client/dist/stdio.mjs.map +0 -1
  351. package/node_modules/@modelcontextprotocol/client/dist/types-BDNQEPSs.d.mts +0 -1099
  352. package/node_modules/@modelcontextprotocol/client/dist/types-BDNQEPSs.d.mts.map +0 -1
  353. package/node_modules/@modelcontextprotocol/client/dist/types-DsbMXNFL.d.cts +0 -1099
  354. package/node_modules/@modelcontextprotocol/client/dist/types-DsbMXNFL.d.cts.map +0 -1
  355. package/node_modules/@modelcontextprotocol/client/dist/validators/ajv.cjs +0 -5
  356. package/node_modules/@modelcontextprotocol/client/dist/validators/ajv.d.cts +0 -2
  357. package/node_modules/@modelcontextprotocol/client/dist/validators/ajv.d.mts +0 -2
  358. package/node_modules/@modelcontextprotocol/client/dist/validators/ajv.mjs +0 -3
  359. package/node_modules/@modelcontextprotocol/client/dist/validators/cfWorker.cjs +0 -3
  360. package/node_modules/@modelcontextprotocol/client/dist/validators/cfWorker.d.cts +0 -2
  361. package/node_modules/@modelcontextprotocol/client/dist/validators/cfWorker.d.mts +0 -2
  362. package/node_modules/@modelcontextprotocol/client/dist/validators/cfWorker.mjs +0 -3
  363. package/node_modules/@modelcontextprotocol/client/package.json +0 -166
  364. package/node_modules/@modelcontextprotocol/core/LICENSE +0 -216
  365. package/node_modules/@modelcontextprotocol/core/README.md +0 -40
  366. package/node_modules/@modelcontextprotocol/core/dist/auth-BUWfrB3C.d.cts +0 -8198
  367. package/node_modules/@modelcontextprotocol/core/dist/auth-BUWfrB3C.d.cts.map +0 -1
  368. package/node_modules/@modelcontextprotocol/core/dist/auth-CEFpHq32.cjs +0 -2862
  369. package/node_modules/@modelcontextprotocol/core/dist/auth-CEFpHq32.cjs.map +0 -1
  370. package/node_modules/@modelcontextprotocol/core/dist/auth-CNbu4K4a.d.mts +0 -8198
  371. package/node_modules/@modelcontextprotocol/core/dist/auth-CNbu4K4a.d.mts.map +0 -1
  372. package/node_modules/@modelcontextprotocol/core/dist/auth-DFgbUATV.mjs +0 -1653
  373. package/node_modules/@modelcontextprotocol/core/dist/auth-DFgbUATV.mjs.map +0 -1
  374. package/node_modules/@modelcontextprotocol/core/dist/index.cjs +0 -174
  375. package/node_modules/@modelcontextprotocol/core/dist/index.d.cts +0 -2
  376. package/node_modules/@modelcontextprotocol/core/dist/index.d.mts +0 -2
  377. package/node_modules/@modelcontextprotocol/core/dist/index.mjs +0 -3
  378. package/node_modules/@modelcontextprotocol/core/dist/internal.cjs +0 -199
  379. package/node_modules/@modelcontextprotocol/core/dist/internal.d.cts +0 -87
  380. package/node_modules/@modelcontextprotocol/core/dist/internal.d.cts.map +0 -1
  381. package/node_modules/@modelcontextprotocol/core/dist/internal.d.mts +0 -87
  382. package/node_modules/@modelcontextprotocol/core/dist/internal.d.mts.map +0 -1
  383. package/node_modules/@modelcontextprotocol/core/dist/internal.mjs +0 -3
  384. package/node_modules/@modelcontextprotocol/core/package.json +0 -85
  385. package/node_modules/jose/LICENSE.md +0 -21
  386. package/node_modules/jose/README.md +0 -153
  387. package/node_modules/jose/dist/types/index.d.ts +0 -55
  388. package/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +0 -31
  389. package/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +0 -65
  390. package/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +0 -31
  391. package/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +0 -83
  392. package/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +0 -31
  393. package/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +0 -74
  394. package/node_modules/jose/dist/types/jwk/embedded.d.ts +0 -17
  395. package/node_modules/jose/dist/types/jwk/thumbprint.d.ts +0 -32
  396. package/node_modules/jose/dist/types/jwks/local.d.ts +0 -29
  397. package/node_modules/jose/dist/types/jwks/remote.d.ts +0 -237
  398. package/node_modules/jose/dist/types/jws/compact/sign.d.ts +0 -36
  399. package/node_modules/jose/dist/types/jws/compact/verify.d.ts +0 -33
  400. package/node_modules/jose/dist/types/jws/flattened/sign.d.ts +0 -42
  401. package/node_modules/jose/dist/types/jws/flattened/verify.d.ts +0 -33
  402. package/node_modules/jose/dist/types/jws/general/sign.d.ts +0 -53
  403. package/node_modules/jose/dist/types/jws/general/verify.d.ts +0 -33
  404. package/node_modules/jose/dist/types/jwt/decrypt.d.ts +0 -35
  405. package/node_modules/jose/dist/types/jwt/encrypt.d.ts +0 -91
  406. package/node_modules/jose/dist/types/jwt/sign.d.ts +0 -43
  407. package/node_modules/jose/dist/types/jwt/unsecured.d.ts +0 -43
  408. package/node_modules/jose/dist/types/jwt/verify.d.ts +0 -37
  409. package/node_modules/jose/dist/types/key/export.d.ts +0 -33
  410. package/node_modules/jose/dist/types/key/generate_key_pair.d.ts +0 -47
  411. package/node_modules/jose/dist/types/key/generate_secret.d.ts +0 -35
  412. package/node_modules/jose/dist/types/key/import.d.ts +0 -83
  413. package/node_modules/jose/dist/types/types.d.ts +0 -841
  414. package/node_modules/jose/dist/types/util/base64url.d.ts +0 -9
  415. package/node_modules/jose/dist/types/util/decode_jwt.d.ts +0 -18
  416. package/node_modules/jose/dist/types/util/decode_protected_header.d.ts +0 -17
  417. package/node_modules/jose/dist/types/util/errors.d.ts +0 -213
  418. package/node_modules/jose/dist/webapi/index.js +0 -32
  419. package/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +0 -27
  420. package/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +0 -27
  421. package/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +0 -165
  422. package/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +0 -169
  423. package/node_modules/jose/dist/webapi/jwe/general/decrypt.js +0 -31
  424. package/node_modules/jose/dist/webapi/jwe/general/encrypt.js +0 -187
  425. package/node_modules/jose/dist/webapi/jwk/embedded.js +0 -17
  426. package/node_modules/jose/dist/webapi/jwk/thumbprint.js +0 -68
  427. package/node_modules/jose/dist/webapi/jwks/local.js +0 -119
  428. package/node_modules/jose/dist/webapi/jwks/remote.js +0 -179
  429. package/node_modules/jose/dist/webapi/jws/compact/sign.js +0 -18
  430. package/node_modules/jose/dist/webapi/jws/compact/verify.js +0 -21
  431. package/node_modules/jose/dist/webapi/jws/flattened/sign.js +0 -92
  432. package/node_modules/jose/dist/webapi/jws/flattened/verify.js +0 -120
  433. package/node_modules/jose/dist/webapi/jws/general/sign.js +0 -73
  434. package/node_modules/jose/dist/webapi/jws/general/verify.js +0 -24
  435. package/node_modules/jose/dist/webapi/jwt/decrypt.js +0 -23
  436. package/node_modules/jose/dist/webapi/jwt/encrypt.js +0 -108
  437. package/node_modules/jose/dist/webapi/jwt/sign.js +0 -52
  438. package/node_modules/jose/dist/webapi/jwt/unsecured.js +0 -63
  439. package/node_modules/jose/dist/webapi/jwt/verify.js +0 -15
  440. package/node_modules/jose/dist/webapi/key/export.js +0 -11
  441. package/node_modules/jose/dist/webapi/key/generate_key_pair.js +0 -97
  442. package/node_modules/jose/dist/webapi/key/generate_secret.js +0 -40
  443. package/node_modules/jose/dist/webapi/key/import.js +0 -57
  444. package/node_modules/jose/dist/webapi/lib/aesgcmkw.js +0 -16
  445. package/node_modules/jose/dist/webapi/lib/aeskw.js +0 -25
  446. package/node_modules/jose/dist/webapi/lib/asn1.js +0 -243
  447. package/node_modules/jose/dist/webapi/lib/base64.js +0 -22
  448. package/node_modules/jose/dist/webapi/lib/buffer_utils.js +0 -43
  449. package/node_modules/jose/dist/webapi/lib/cek.js +0 -19
  450. package/node_modules/jose/dist/webapi/lib/check_cek_length.js +0 -7
  451. package/node_modules/jose/dist/webapi/lib/check_iv_length.js +0 -7
  452. package/node_modules/jose/dist/webapi/lib/check_key_length.js +0 -8
  453. package/node_modules/jose/dist/webapi/lib/check_key_type.js +0 -122
  454. package/node_modules/jose/dist/webapi/lib/crypto_key.js +0 -143
  455. package/node_modules/jose/dist/webapi/lib/decrypt.js +0 -106
  456. package/node_modules/jose/dist/webapi/lib/decrypt_key_management.js +0 -127
  457. package/node_modules/jose/dist/webapi/lib/digest.js +0 -4
  458. package/node_modules/jose/dist/webapi/lib/ecdhes.js +0 -52
  459. package/node_modules/jose/dist/webapi/lib/encrypt.js +0 -74
  460. package/node_modules/jose/dist/webapi/lib/encrypt_key_management.js +0 -92
  461. package/node_modules/jose/dist/webapi/lib/get_sign_verify_key.js +0 -12
  462. package/node_modules/jose/dist/webapi/lib/invalid_key_input.js +0 -27
  463. package/node_modules/jose/dist/webapi/lib/is_disjoint.js +0 -21
  464. package/node_modules/jose/dist/webapi/lib/is_jwk.js +0 -6
  465. package/node_modules/jose/dist/webapi/lib/is_key_like.js +0 -17
  466. package/node_modules/jose/dist/webapi/lib/is_object.js +0 -14
  467. package/node_modules/jose/dist/webapi/lib/iv.js +0 -19
  468. package/node_modules/jose/dist/webapi/lib/jwk_to_key.js +0 -109
  469. package/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +0 -238
  470. package/node_modules/jose/dist/webapi/lib/key_to_jwk.js +0 -31
  471. package/node_modules/jose/dist/webapi/lib/normalize_key.js +0 -176
  472. package/node_modules/jose/dist/webapi/lib/pbes2kw.js +0 -39
  473. package/node_modules/jose/dist/webapi/lib/private_symbols.js +0 -1
  474. package/node_modules/jose/dist/webapi/lib/rsaes.js +0 -24
  475. package/node_modules/jose/dist/webapi/lib/sign.js +0 -9
  476. package/node_modules/jose/dist/webapi/lib/subtle_dsa.js +0 -31
  477. package/node_modules/jose/dist/webapi/lib/validate_algorithms.js +0 -10
  478. package/node_modules/jose/dist/webapi/lib/validate_crit.js +0 -33
  479. package/node_modules/jose/dist/webapi/lib/verify.js +0 -14
  480. package/node_modules/jose/dist/webapi/util/base64url.js +0 -30
  481. package/node_modules/jose/dist/webapi/util/decode_jwt.js +0 -32
  482. package/node_modules/jose/dist/webapi/util/decode_protected_header.js +0 -34
  483. package/node_modules/jose/dist/webapi/util/errors.js +0 -99
  484. package/node_modules/jose/package.json +0 -200
  485. package/node_modules/zod/LICENSE +0 -21
  486. package/node_modules/zod/README.md +0 -191
  487. package/node_modules/zod/index.cjs +0 -33
  488. package/node_modules/zod/index.d.cts +0 -4
  489. package/node_modules/zod/index.d.ts +0 -4
  490. package/node_modules/zod/index.js +0 -4
  491. package/node_modules/zod/locales/index.cjs +0 -17
  492. package/node_modules/zod/locales/index.d.cts +0 -1
  493. package/node_modules/zod/locales/index.d.ts +0 -1
  494. package/node_modules/zod/locales/index.js +0 -1
  495. package/node_modules/zod/locales/package.json +0 -7
  496. package/node_modules/zod/mini/index.cjs +0 -32
  497. package/node_modules/zod/mini/index.d.cts +0 -3
  498. package/node_modules/zod/mini/index.d.ts +0 -3
  499. package/node_modules/zod/mini/index.js +0 -3
  500. package/node_modules/zod/mini/package.json +0 -7
  501. package/node_modules/zod/package.json +0 -135
  502. package/node_modules/zod/src/index.ts +0 -4
  503. package/node_modules/zod/src/locales/index.ts +0 -1
  504. package/node_modules/zod/src/mini/index.ts +0 -3
  505. package/node_modules/zod/src/v3/ZodError.ts +0 -330
  506. package/node_modules/zod/src/v3/benchmarks/datetime.ts +0 -58
  507. package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +0 -80
  508. package/node_modules/zod/src/v3/benchmarks/index.ts +0 -59
  509. package/node_modules/zod/src/v3/benchmarks/ipv4.ts +0 -57
  510. package/node_modules/zod/src/v3/benchmarks/object.ts +0 -69
  511. package/node_modules/zod/src/v3/benchmarks/primitives.ts +0 -162
  512. package/node_modules/zod/src/v3/benchmarks/realworld.ts +0 -63
  513. package/node_modules/zod/src/v3/benchmarks/string.ts +0 -55
  514. package/node_modules/zod/src/v3/benchmarks/union.ts +0 -80
  515. package/node_modules/zod/src/v3/errors.ts +0 -13
  516. package/node_modules/zod/src/v3/external.ts +0 -6
  517. package/node_modules/zod/src/v3/helpers/enumUtil.ts +0 -17
  518. package/node_modules/zod/src/v3/helpers/errorUtil.ts +0 -8
  519. package/node_modules/zod/src/v3/helpers/parseUtil.ts +0 -176
  520. package/node_modules/zod/src/v3/helpers/partialUtil.ts +0 -34
  521. package/node_modules/zod/src/v3/helpers/typeAliases.ts +0 -2
  522. package/node_modules/zod/src/v3/helpers/util.ts +0 -224
  523. package/node_modules/zod/src/v3/index.ts +0 -4
  524. package/node_modules/zod/src/v3/locales/en.ts +0 -124
  525. package/node_modules/zod/src/v3/standard-schema.ts +0 -113
  526. package/node_modules/zod/src/v3/tests/Mocker.ts +0 -54
  527. package/node_modules/zod/src/v3/tests/all-errors.test.ts +0 -157
  528. package/node_modules/zod/src/v3/tests/anyunknown.test.ts +0 -28
  529. package/node_modules/zod/src/v3/tests/array.test.ts +0 -71
  530. package/node_modules/zod/src/v3/tests/async-parsing.test.ts +0 -388
  531. package/node_modules/zod/src/v3/tests/async-refinements.test.ts +0 -46
  532. package/node_modules/zod/src/v3/tests/base.test.ts +0 -29
  533. package/node_modules/zod/src/v3/tests/bigint.test.ts +0 -55
  534. package/node_modules/zod/src/v3/tests/branded.test.ts +0 -53
  535. package/node_modules/zod/src/v3/tests/catch.test.ts +0 -220
  536. package/node_modules/zod/src/v3/tests/coerce.test.ts +0 -133
  537. package/node_modules/zod/src/v3/tests/complex.test.ts +0 -70
  538. package/node_modules/zod/src/v3/tests/custom.test.ts +0 -31
  539. package/node_modules/zod/src/v3/tests/date.test.ts +0 -32
  540. package/node_modules/zod/src/v3/tests/deepmasking.test.ts +0 -186
  541. package/node_modules/zod/src/v3/tests/default.test.ts +0 -112
  542. package/node_modules/zod/src/v3/tests/description.test.ts +0 -33
  543. package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +0 -315
  544. package/node_modules/zod/src/v3/tests/enum.test.ts +0 -80
  545. package/node_modules/zod/src/v3/tests/error.test.ts +0 -551
  546. package/node_modules/zod/src/v3/tests/firstparty.test.ts +0 -87
  547. package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +0 -21
  548. package/node_modules/zod/src/v3/tests/function.test.ts +0 -261
  549. package/node_modules/zod/src/v3/tests/generics.test.ts +0 -48
  550. package/node_modules/zod/src/v3/tests/instanceof.test.ts +0 -37
  551. package/node_modules/zod/src/v3/tests/intersection.test.ts +0 -110
  552. package/node_modules/zod/src/v3/tests/language-server.source.ts +0 -76
  553. package/node_modules/zod/src/v3/tests/language-server.test.ts +0 -207
  554. package/node_modules/zod/src/v3/tests/literal.test.ts +0 -36
  555. package/node_modules/zod/src/v3/tests/map.test.ts +0 -110
  556. package/node_modules/zod/src/v3/tests/masking.test.ts +0 -4
  557. package/node_modules/zod/src/v3/tests/mocker.test.ts +0 -19
  558. package/node_modules/zod/src/v3/tests/nan.test.ts +0 -24
  559. package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +0 -87
  560. package/node_modules/zod/src/v3/tests/nullable.test.ts +0 -42
  561. package/node_modules/zod/src/v3/tests/number.test.ts +0 -176
  562. package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +0 -29
  563. package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +0 -29
  564. package/node_modules/zod/src/v3/tests/object.test.ts +0 -434
  565. package/node_modules/zod/src/v3/tests/optional.test.ts +0 -42
  566. package/node_modules/zod/src/v3/tests/parseUtil.test.ts +0 -23
  567. package/node_modules/zod/src/v3/tests/parser.test.ts +0 -41
  568. package/node_modules/zod/src/v3/tests/partials.test.ts +0 -243
  569. package/node_modules/zod/src/v3/tests/pickomit.test.ts +0 -111
  570. package/node_modules/zod/src/v3/tests/pipeline.test.ts +0 -29
  571. package/node_modules/zod/src/v3/tests/preprocess.test.ts +0 -186
  572. package/node_modules/zod/src/v3/tests/primitive.test.ts +0 -440
  573. package/node_modules/zod/src/v3/tests/promise.test.ts +0 -90
  574. package/node_modules/zod/src/v3/tests/readonly.test.ts +0 -194
  575. package/node_modules/zod/src/v3/tests/record.test.ts +0 -171
  576. package/node_modules/zod/src/v3/tests/recursive.test.ts +0 -197
  577. package/node_modules/zod/src/v3/tests/refine.test.ts +0 -313
  578. package/node_modules/zod/src/v3/tests/safeparse.test.ts +0 -27
  579. package/node_modules/zod/src/v3/tests/set.test.ts +0 -142
  580. package/node_modules/zod/src/v3/tests/standard-schema.test.ts +0 -83
  581. package/node_modules/zod/src/v3/tests/string.test.ts +0 -916
  582. package/node_modules/zod/src/v3/tests/transformer.test.ts +0 -233
  583. package/node_modules/zod/src/v3/tests/tuple.test.ts +0 -90
  584. package/node_modules/zod/src/v3/tests/unions.test.ts +0 -57
  585. package/node_modules/zod/src/v3/tests/validations.test.ts +0 -133
  586. package/node_modules/zod/src/v3/tests/void.test.ts +0 -15
  587. package/node_modules/zod/src/v3/types.ts +0 -5138
  588. package/node_modules/zod/src/v4/classic/checks.ts +0 -32
  589. package/node_modules/zod/src/v4/classic/coerce.ts +0 -27
  590. package/node_modules/zod/src/v4/classic/compat.ts +0 -70
  591. package/node_modules/zod/src/v4/classic/errors.ts +0 -82
  592. package/node_modules/zod/src/v4/classic/external.ts +0 -52
  593. package/node_modules/zod/src/v4/classic/from-json-schema.ts +0 -659
  594. package/node_modules/zod/src/v4/classic/index.ts +0 -5
  595. package/node_modules/zod/src/v4/classic/iso.ts +0 -90
  596. package/node_modules/zod/src/v4/classic/parse.ts +0 -82
  597. package/node_modules/zod/src/v4/classic/schemas.ts +0 -2672
  598. package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +0 -26
  599. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +0 -59
  600. package/node_modules/zod/src/v4/classic/tests/array.test.ts +0 -264
  601. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +0 -216
  602. package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +0 -381
  603. package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +0 -68
  604. package/node_modules/zod/src/v4/classic/tests/base.test.ts +0 -7
  605. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +0 -54
  606. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +0 -106
  607. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +0 -326
  608. package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +0 -20
  609. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +0 -573
  610. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +0 -703
  611. package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +0 -160
  612. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +0 -374
  613. package/node_modules/zod/src/v4/classic/tests/custom.test.ts +0 -40
  614. package/node_modules/zod/src/v4/classic/tests/date.test.ts +0 -62
  615. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +0 -302
  616. package/node_modules/zod/src/v4/classic/tests/default.test.ts +0 -409
  617. package/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +0 -27
  618. package/node_modules/zod/src/v4/classic/tests/description.test.ts +0 -32
  619. package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +0 -197
  620. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +0 -694
  621. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +0 -285
  622. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +0 -807
  623. package/node_modules/zod/src/v4/classic/tests/error.test.ts +0 -711
  624. package/node_modules/zod/src/v4/classic/tests/file.test.ts +0 -96
  625. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -179
  626. package/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +0 -26
  627. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +0 -895
  628. package/node_modules/zod/src/v4/classic/tests/function.test.ts +0 -360
  629. package/node_modules/zod/src/v4/classic/tests/generics.test.ts +0 -72
  630. package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +0 -39
  631. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +0 -68
  632. package/node_modules/zod/src/v4/classic/tests/index.test.ts +0 -939
  633. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +0 -60
  634. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +0 -198
  635. package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +0 -46
  636. package/node_modules/zod/src/v4/classic/tests/json.test.ts +0 -109
  637. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +0 -227
  638. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +0 -117
  639. package/node_modules/zod/src/v4/classic/tests/locales_ka.test.ts +0 -29
  640. package/node_modules/zod/src/v4/classic/tests/locales_ro.test.ts +0 -24
  641. package/node_modules/zod/src/v4/classic/tests/map.test.ts +0 -330
  642. package/node_modules/zod/src/v4/classic/tests/nan.test.ts +0 -21
  643. package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +0 -168
  644. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +0 -101
  645. package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +0 -22
  646. package/node_modules/zod/src/v4/classic/tests/number.test.ts +0 -325
  647. package/node_modules/zod/src/v4/classic/tests/object.test.ts +0 -717
  648. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +0 -333
  649. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +0 -450
  650. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +0 -211
  651. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +0 -101
  652. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +0 -74
  653. package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +0 -26
  654. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +0 -351
  655. package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +0 -175
  656. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +0 -81
  657. package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +0 -23
  658. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -252
  659. package/node_modules/zod/src/v4/classic/tests/record.test.ts +0 -717
  660. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +0 -631
  661. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +0 -633
  662. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +0 -243
  663. package/node_modules/zod/src/v4/classic/tests/set.test.ts +0 -181
  664. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +0 -134
  665. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +0 -125
  666. package/node_modules/zod/src/v4/classic/tests/string.test.ts +0 -1224
  667. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +0 -106
  668. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +0 -771
  669. package/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +0 -438
  670. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +0 -3125
  671. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +0 -378
  672. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +0 -496
  673. package/node_modules/zod/src/v4/classic/tests/union.test.ts +0 -273
  674. package/node_modules/zod/src/v4/classic/tests/url.test.ts +0 -13
  675. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +0 -283
  676. package/node_modules/zod/src/v4/classic/tests/void.test.ts +0 -12
  677. package/node_modules/zod/src/v4/core/api.ts +0 -1823
  678. package/node_modules/zod/src/v4/core/checks.ts +0 -1293
  679. package/node_modules/zod/src/v4/core/config.ts +0 -15
  680. package/node_modules/zod/src/v4/core/core.ts +0 -153
  681. package/node_modules/zod/src/v4/core/doc.ts +0 -44
  682. package/node_modules/zod/src/v4/core/errors.ts +0 -455
  683. package/node_modules/zod/src/v4/core/index.ts +0 -16
  684. package/node_modules/zod/src/v4/core/json-schema-generator.ts +0 -126
  685. package/node_modules/zod/src/v4/core/json-schema-processors.ts +0 -666
  686. package/node_modules/zod/src/v4/core/json-schema.ts +0 -147
  687. package/node_modules/zod/src/v4/core/parse.ts +0 -195
  688. package/node_modules/zod/src/v4/core/regexes.ts +0 -190
  689. package/node_modules/zod/src/v4/core/registries.ts +0 -105
  690. package/node_modules/zod/src/v4/core/schemas.ts +0 -4730
  691. package/node_modules/zod/src/v4/core/standard-schema.ts +0 -159
  692. package/node_modules/zod/src/v4/core/tests/extend.test.ts +0 -59
  693. package/node_modules/zod/src/v4/core/tests/index.test.ts +0 -46
  694. package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +0 -124
  695. package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +0 -215
  696. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +0 -22
  697. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +0 -181
  698. package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +0 -72
  699. package/node_modules/zod/src/v4/core/tests/locales/he.test.ts +0 -379
  700. package/node_modules/zod/src/v4/core/tests/locales/hr.test.ts +0 -163
  701. package/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +0 -46
  702. package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +0 -128
  703. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +0 -69
  704. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +0 -105
  705. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +0 -125
  706. package/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +0 -45
  707. package/node_modules/zod/src/v4/core/to-json-schema.ts +0 -622
  708. package/node_modules/zod/src/v4/core/util.ts +0 -983
  709. package/node_modules/zod/src/v4/core/versions.ts +0 -5
  710. package/node_modules/zod/src/v4/core/zsf.ts +0 -323
  711. package/node_modules/zod/src/v4/index.ts +0 -4
  712. package/node_modules/zod/src/v4/locales/ar.ts +0 -115
  713. package/node_modules/zod/src/v4/locales/az.ts +0 -111
  714. package/node_modules/zod/src/v4/locales/be.ts +0 -176
  715. package/node_modules/zod/src/v4/locales/bg.ts +0 -128
  716. package/node_modules/zod/src/v4/locales/ca.ts +0 -116
  717. package/node_modules/zod/src/v4/locales/cs.ts +0 -118
  718. package/node_modules/zod/src/v4/locales/da.ts +0 -123
  719. package/node_modules/zod/src/v4/locales/de.ts +0 -116
  720. package/node_modules/zod/src/v4/locales/el.ts +0 -121
  721. package/node_modules/zod/src/v4/locales/en.ts +0 -123
  722. package/node_modules/zod/src/v4/locales/eo.ts +0 -118
  723. package/node_modules/zod/src/v4/locales/es.ts +0 -141
  724. package/node_modules/zod/src/v4/locales/fa.ts +0 -126
  725. package/node_modules/zod/src/v4/locales/fi.ts +0 -121
  726. package/node_modules/zod/src/v4/locales/fr-CA.ts +0 -116
  727. package/node_modules/zod/src/v4/locales/fr.ts +0 -132
  728. package/node_modules/zod/src/v4/locales/he.ts +0 -246
  729. package/node_modules/zod/src/v4/locales/hr.ts +0 -131
  730. package/node_modules/zod/src/v4/locales/hu.ts +0 -117
  731. package/node_modules/zod/src/v4/locales/hy.ts +0 -164
  732. package/node_modules/zod/src/v4/locales/id.ts +0 -115
  733. package/node_modules/zod/src/v4/locales/index.ts +0 -52
  734. package/node_modules/zod/src/v4/locales/is.ts +0 -119
  735. package/node_modules/zod/src/v4/locales/it.ts +0 -116
  736. package/node_modules/zod/src/v4/locales/ja.ts +0 -114
  737. package/node_modules/zod/src/v4/locales/ka.ts +0 -123
  738. package/node_modules/zod/src/v4/locales/kh.ts +0 -7
  739. package/node_modules/zod/src/v4/locales/km.ts +0 -119
  740. package/node_modules/zod/src/v4/locales/ko.ts +0 -121
  741. package/node_modules/zod/src/v4/locales/lt.ts +0 -239
  742. package/node_modules/zod/src/v4/locales/mk.ts +0 -118
  743. package/node_modules/zod/src/v4/locales/ms.ts +0 -115
  744. package/node_modules/zod/src/v4/locales/nl.ts +0 -121
  745. package/node_modules/zod/src/v4/locales/no.ts +0 -116
  746. package/node_modules/zod/src/v4/locales/ota.ts +0 -117
  747. package/node_modules/zod/src/v4/locales/pl.ts +0 -118
  748. package/node_modules/zod/src/v4/locales/ps.ts +0 -126
  749. package/node_modules/zod/src/v4/locales/pt.ts +0 -116
  750. package/node_modules/zod/src/v4/locales/ro.ts +0 -129
  751. package/node_modules/zod/src/v4/locales/ru.ts +0 -176
  752. package/node_modules/zod/src/v4/locales/sl.ts +0 -118
  753. package/node_modules/zod/src/v4/locales/sv.ts +0 -119
  754. package/node_modules/zod/src/v4/locales/ta.ts +0 -118
  755. package/node_modules/zod/src/v4/locales/th.ts +0 -119
  756. package/node_modules/zod/src/v4/locales/tr.ts +0 -111
  757. package/node_modules/zod/src/v4/locales/ua.ts +0 -7
  758. package/node_modules/zod/src/v4/locales/uk.ts +0 -117
  759. package/node_modules/zod/src/v4/locales/ur.ts +0 -119
  760. package/node_modules/zod/src/v4/locales/uz.ts +0 -117
  761. package/node_modules/zod/src/v4/locales/vi.ts +0 -117
  762. package/node_modules/zod/src/v4/locales/yo.ts +0 -124
  763. package/node_modules/zod/src/v4/locales/zh-CN.ts +0 -116
  764. package/node_modules/zod/src/v4/locales/zh-TW.ts +0 -115
  765. package/node_modules/zod/src/v4/mini/checks.ts +0 -32
  766. package/node_modules/zod/src/v4/mini/coerce.ts +0 -27
  767. package/node_modules/zod/src/v4/mini/external.ts +0 -41
  768. package/node_modules/zod/src/v4/mini/index.ts +0 -3
  769. package/node_modules/zod/src/v4/mini/iso.ts +0 -66
  770. package/node_modules/zod/src/v4/mini/parse.ts +0 -14
  771. package/node_modules/zod/src/v4/mini/schemas.ts +0 -1947
  772. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +0 -24
  773. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +0 -129
  774. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +0 -94
  775. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +0 -144
  776. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +0 -548
  777. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +0 -36
  778. package/node_modules/zod/src/v4/mini/tests/error.test.ts +0 -22
  779. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +0 -5
  780. package/node_modules/zod/src/v4/mini/tests/index.test.ts +0 -993
  781. package/node_modules/zod/src/v4/mini/tests/number.test.ts +0 -95
  782. package/node_modules/zod/src/v4/mini/tests/object.test.ts +0 -227
  783. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +0 -43
  784. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +0 -325
  785. package/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +0 -50
  786. package/node_modules/zod/src/v4/mini/tests/string.test.ts +0 -352
  787. package/node_modules/zod/src/v4-mini/index.ts +0 -3
  788. package/node_modules/zod/v3/ZodError.cjs +0 -138
  789. package/node_modules/zod/v3/ZodError.d.cts +0 -164
  790. package/node_modules/zod/v3/ZodError.d.ts +0 -164
  791. package/node_modules/zod/v3/ZodError.js +0 -133
  792. package/node_modules/zod/v3/errors.cjs +0 -17
  793. package/node_modules/zod/v3/errors.d.cts +0 -5
  794. package/node_modules/zod/v3/errors.d.ts +0 -5
  795. package/node_modules/zod/v3/errors.js +0 -9
  796. package/node_modules/zod/v3/external.cjs +0 -22
  797. package/node_modules/zod/v3/external.d.cts +0 -6
  798. package/node_modules/zod/v3/external.d.ts +0 -6
  799. package/node_modules/zod/v3/external.js +0 -6
  800. package/node_modules/zod/v3/helpers/enumUtil.cjs +0 -2
  801. package/node_modules/zod/v3/helpers/enumUtil.d.cts +0 -8
  802. package/node_modules/zod/v3/helpers/enumUtil.d.ts +0 -8
  803. package/node_modules/zod/v3/helpers/enumUtil.js +0 -1
  804. package/node_modules/zod/v3/helpers/errorUtil.cjs +0 -9
  805. package/node_modules/zod/v3/helpers/errorUtil.d.cts +0 -9
  806. package/node_modules/zod/v3/helpers/errorUtil.d.ts +0 -9
  807. package/node_modules/zod/v3/helpers/errorUtil.js +0 -6
  808. package/node_modules/zod/v3/helpers/parseUtil.cjs +0 -124
  809. package/node_modules/zod/v3/helpers/parseUtil.d.cts +0 -78
  810. package/node_modules/zod/v3/helpers/parseUtil.d.ts +0 -78
  811. package/node_modules/zod/v3/helpers/parseUtil.js +0 -109
  812. package/node_modules/zod/v3/helpers/partialUtil.cjs +0 -2
  813. package/node_modules/zod/v3/helpers/partialUtil.d.cts +0 -8
  814. package/node_modules/zod/v3/helpers/partialUtil.d.ts +0 -8
  815. package/node_modules/zod/v3/helpers/partialUtil.js +0 -1
  816. package/node_modules/zod/v3/helpers/typeAliases.cjs +0 -2
  817. package/node_modules/zod/v3/helpers/typeAliases.d.cts +0 -2
  818. package/node_modules/zod/v3/helpers/typeAliases.d.ts +0 -2
  819. package/node_modules/zod/v3/helpers/typeAliases.js +0 -1
  820. package/node_modules/zod/v3/helpers/util.cjs +0 -137
  821. package/node_modules/zod/v3/helpers/util.d.cts +0 -85
  822. package/node_modules/zod/v3/helpers/util.d.ts +0 -85
  823. package/node_modules/zod/v3/helpers/util.js +0 -133
  824. package/node_modules/zod/v3/index.cjs +0 -33
  825. package/node_modules/zod/v3/index.d.cts +0 -4
  826. package/node_modules/zod/v3/index.d.ts +0 -4
  827. package/node_modules/zod/v3/index.js +0 -4
  828. package/node_modules/zod/v3/locales/en.cjs +0 -112
  829. package/node_modules/zod/v3/locales/en.d.cts +0 -3
  830. package/node_modules/zod/v3/locales/en.d.ts +0 -3
  831. package/node_modules/zod/v3/locales/en.js +0 -109
  832. package/node_modules/zod/v3/package.json +0 -7
  833. package/node_modules/zod/v3/standard-schema.cjs +0 -2
  834. package/node_modules/zod/v3/standard-schema.d.cts +0 -102
  835. package/node_modules/zod/v3/standard-schema.d.ts +0 -102
  836. package/node_modules/zod/v3/standard-schema.js +0 -1
  837. package/node_modules/zod/v3/types.cjs +0 -3777
  838. package/node_modules/zod/v3/types.d.cts +0 -1034
  839. package/node_modules/zod/v3/types.d.ts +0 -1034
  840. package/node_modules/zod/v3/types.js +0 -3695
  841. package/node_modules/zod/v4/classic/checks.cjs +0 -33
  842. package/node_modules/zod/v4/classic/checks.d.cts +0 -1
  843. package/node_modules/zod/v4/classic/checks.d.ts +0 -1
  844. package/node_modules/zod/v4/classic/checks.js +0 -1
  845. package/node_modules/zod/v4/classic/coerce.cjs +0 -47
  846. package/node_modules/zod/v4/classic/coerce.d.cts +0 -17
  847. package/node_modules/zod/v4/classic/coerce.d.ts +0 -17
  848. package/node_modules/zod/v4/classic/coerce.js +0 -17
  849. package/node_modules/zod/v4/classic/compat.cjs +0 -61
  850. package/node_modules/zod/v4/classic/compat.d.cts +0 -50
  851. package/node_modules/zod/v4/classic/compat.d.ts +0 -50
  852. package/node_modules/zod/v4/classic/compat.js +0 -31
  853. package/node_modules/zod/v4/classic/errors.cjs +0 -74
  854. package/node_modules/zod/v4/classic/errors.d.cts +0 -30
  855. package/node_modules/zod/v4/classic/errors.d.ts +0 -30
  856. package/node_modules/zod/v4/classic/errors.js +0 -48
  857. package/node_modules/zod/v4/classic/external.cjs +0 -73
  858. package/node_modules/zod/v4/classic/external.d.cts +0 -16
  859. package/node_modules/zod/v4/classic/external.d.ts +0 -16
  860. package/node_modules/zod/v4/classic/external.js +0 -20
  861. package/node_modules/zod/v4/classic/from-json-schema.cjs +0 -625
  862. package/node_modules/zod/v4/classic/from-json-schema.d.cts +0 -12
  863. package/node_modules/zod/v4/classic/from-json-schema.d.ts +0 -12
  864. package/node_modules/zod/v4/classic/from-json-schema.js +0 -599
  865. package/node_modules/zod/v4/classic/index.cjs +0 -33
  866. package/node_modules/zod/v4/classic/index.d.cts +0 -4
  867. package/node_modules/zod/v4/classic/index.d.ts +0 -4
  868. package/node_modules/zod/v4/classic/index.js +0 -4
  869. package/node_modules/zod/v4/classic/iso.cjs +0 -60
  870. package/node_modules/zod/v4/classic/iso.d.cts +0 -22
  871. package/node_modules/zod/v4/classic/iso.d.ts +0 -22
  872. package/node_modules/zod/v4/classic/iso.js +0 -30
  873. package/node_modules/zod/v4/classic/package.json +0 -7
  874. package/node_modules/zod/v4/classic/parse.cjs +0 -41
  875. package/node_modules/zod/v4/classic/parse.d.cts +0 -31
  876. package/node_modules/zod/v4/classic/parse.d.ts +0 -31
  877. package/node_modules/zod/v4/classic/parse.js +0 -15
  878. package/node_modules/zod/v4/classic/schemas.cjs +0 -1511
  879. package/node_modules/zod/v4/classic/schemas.d.cts +0 -767
  880. package/node_modules/zod/v4/classic/schemas.d.ts +0 -767
  881. package/node_modules/zod/v4/classic/schemas.js +0 -1395
  882. package/node_modules/zod/v4/core/api.cjs +0 -1227
  883. package/node_modules/zod/v4/core/api.d.cts +0 -325
  884. package/node_modules/zod/v4/core/api.d.ts +0 -325
  885. package/node_modules/zod/v4/core/api.js +0 -1087
  886. package/node_modules/zod/v4/core/checks.cjs +0 -601
  887. package/node_modules/zod/v4/core/checks.d.cts +0 -278
  888. package/node_modules/zod/v4/core/checks.d.ts +0 -278
  889. package/node_modules/zod/v4/core/checks.js +0 -575
  890. package/node_modules/zod/v4/core/core.cjs +0 -85
  891. package/node_modules/zod/v4/core/core.d.cts +0 -70
  892. package/node_modules/zod/v4/core/core.d.ts +0 -70
  893. package/node_modules/zod/v4/core/core.js +0 -78
  894. package/node_modules/zod/v4/core/doc.cjs +0 -39
  895. package/node_modules/zod/v4/core/doc.d.cts +0 -14
  896. package/node_modules/zod/v4/core/doc.d.ts +0 -14
  897. package/node_modules/zod/v4/core/doc.js +0 -35
  898. package/node_modules/zod/v4/core/errors.cjs +0 -216
  899. package/node_modules/zod/v4/core/errors.d.cts +0 -221
  900. package/node_modules/zod/v4/core/errors.d.ts +0 -221
  901. package/node_modules/zod/v4/core/errors.js +0 -185
  902. package/node_modules/zod/v4/core/index.cjs +0 -47
  903. package/node_modules/zod/v4/core/index.d.cts +0 -16
  904. package/node_modules/zod/v4/core/index.d.ts +0 -16
  905. package/node_modules/zod/v4/core/index.js +0 -16
  906. package/node_modules/zod/v4/core/json-schema-generator.cjs +0 -99
  907. package/node_modules/zod/v4/core/json-schema-generator.d.cts +0 -65
  908. package/node_modules/zod/v4/core/json-schema-generator.d.ts +0 -65
  909. package/node_modules/zod/v4/core/json-schema-generator.js +0 -95
  910. package/node_modules/zod/v4/core/json-schema-processors.cjs +0 -644
  911. package/node_modules/zod/v4/core/json-schema-processors.d.cts +0 -49
  912. package/node_modules/zod/v4/core/json-schema-processors.d.ts +0 -49
  913. package/node_modules/zod/v4/core/json-schema-processors.js +0 -601
  914. package/node_modules/zod/v4/core/json-schema.cjs +0 -2
  915. package/node_modules/zod/v4/core/json-schema.d.cts +0 -88
  916. package/node_modules/zod/v4/core/json-schema.d.ts +0 -88
  917. package/node_modules/zod/v4/core/json-schema.js +0 -1
  918. package/node_modules/zod/v4/core/package.json +0 -7
  919. package/node_modules/zod/v4/core/parse.cjs +0 -131
  920. package/node_modules/zod/v4/core/parse.d.cts +0 -49
  921. package/node_modules/zod/v4/core/parse.d.ts +0 -49
  922. package/node_modules/zod/v4/core/parse.js +0 -93
  923. package/node_modules/zod/v4/core/regexes.cjs +0 -172
  924. package/node_modules/zod/v4/core/regexes.d.cts +0 -85
  925. package/node_modules/zod/v4/core/regexes.d.ts +0 -85
  926. package/node_modules/zod/v4/core/regexes.js +0 -139
  927. package/node_modules/zod/v4/core/registries.cjs +0 -56
  928. package/node_modules/zod/v4/core/registries.d.cts +0 -35
  929. package/node_modules/zod/v4/core/registries.d.ts +0 -35
  930. package/node_modules/zod/v4/core/registries.js +0 -51
  931. package/node_modules/zod/v4/core/schemas.cjs +0 -2270
  932. package/node_modules/zod/v4/core/schemas.d.cts +0 -1184
  933. package/node_modules/zod/v4/core/schemas.d.ts +0 -1184
  934. package/node_modules/zod/v4/core/schemas.js +0 -2239
  935. package/node_modules/zod/v4/core/standard-schema.cjs +0 -2
  936. package/node_modules/zod/v4/core/standard-schema.d.cts +0 -126
  937. package/node_modules/zod/v4/core/standard-schema.d.ts +0 -126
  938. package/node_modules/zod/v4/core/standard-schema.js +0 -1
  939. package/node_modules/zod/v4/core/to-json-schema.cjs +0 -457
  940. package/node_modules/zod/v4/core/to-json-schema.d.cts +0 -114
  941. package/node_modules/zod/v4/core/to-json-schema.d.ts +0 -114
  942. package/node_modules/zod/v4/core/to-json-schema.js +0 -448
  943. package/node_modules/zod/v4/core/util.cjs +0 -734
  944. package/node_modules/zod/v4/core/util.d.cts +0 -200
  945. package/node_modules/zod/v4/core/util.d.ts +0 -200
  946. package/node_modules/zod/v4/core/util.js +0 -674
  947. package/node_modules/zod/v4/core/versions.cjs +0 -8
  948. package/node_modules/zod/v4/core/versions.d.cts +0 -5
  949. package/node_modules/zod/v4/core/versions.d.ts +0 -5
  950. package/node_modules/zod/v4/core/versions.js +0 -5
  951. package/node_modules/zod/v4/index.cjs +0 -22
  952. package/node_modules/zod/v4/index.d.cts +0 -3
  953. package/node_modules/zod/v4/index.d.ts +0 -3
  954. package/node_modules/zod/v4/index.js +0 -3
  955. package/node_modules/zod/v4/locales/ar.cjs +0 -133
  956. package/node_modules/zod/v4/locales/ar.d.cts +0 -5
  957. package/node_modules/zod/v4/locales/ar.d.ts +0 -4
  958. package/node_modules/zod/v4/locales/ar.js +0 -106
  959. package/node_modules/zod/v4/locales/az.cjs +0 -132
  960. package/node_modules/zod/v4/locales/az.d.cts +0 -5
  961. package/node_modules/zod/v4/locales/az.d.ts +0 -4
  962. package/node_modules/zod/v4/locales/az.js +0 -105
  963. package/node_modules/zod/v4/locales/be.cjs +0 -183
  964. package/node_modules/zod/v4/locales/be.d.cts +0 -5
  965. package/node_modules/zod/v4/locales/be.d.ts +0 -4
  966. package/node_modules/zod/v4/locales/be.js +0 -156
  967. package/node_modules/zod/v4/locales/bg.cjs +0 -147
  968. package/node_modules/zod/v4/locales/bg.d.cts +0 -5
  969. package/node_modules/zod/v4/locales/bg.d.ts +0 -4
  970. package/node_modules/zod/v4/locales/bg.js +0 -120
  971. package/node_modules/zod/v4/locales/ca.cjs +0 -134
  972. package/node_modules/zod/v4/locales/ca.d.cts +0 -5
  973. package/node_modules/zod/v4/locales/ca.d.ts +0 -4
  974. package/node_modules/zod/v4/locales/ca.js +0 -107
  975. package/node_modules/zod/v4/locales/cs.cjs +0 -138
  976. package/node_modules/zod/v4/locales/cs.d.cts +0 -5
  977. package/node_modules/zod/v4/locales/cs.d.ts +0 -4
  978. package/node_modules/zod/v4/locales/cs.js +0 -111
  979. package/node_modules/zod/v4/locales/da.cjs +0 -142
  980. package/node_modules/zod/v4/locales/da.d.cts +0 -5
  981. package/node_modules/zod/v4/locales/da.d.ts +0 -4
  982. package/node_modules/zod/v4/locales/da.js +0 -115
  983. package/node_modules/zod/v4/locales/de.cjs +0 -135
  984. package/node_modules/zod/v4/locales/de.d.cts +0 -5
  985. package/node_modules/zod/v4/locales/de.d.ts +0 -4
  986. package/node_modules/zod/v4/locales/de.js +0 -108
  987. package/node_modules/zod/v4/locales/el.cjs +0 -136
  988. package/node_modules/zod/v4/locales/el.d.cts +0 -5
  989. package/node_modules/zod/v4/locales/el.d.ts +0 -4
  990. package/node_modules/zod/v4/locales/el.js +0 -109
  991. package/node_modules/zod/v4/locales/en.cjs +0 -140
  992. package/node_modules/zod/v4/locales/en.d.cts +0 -5
  993. package/node_modules/zod/v4/locales/en.d.ts +0 -4
  994. package/node_modules/zod/v4/locales/en.js +0 -113
  995. package/node_modules/zod/v4/locales/eo.cjs +0 -136
  996. package/node_modules/zod/v4/locales/eo.d.cts +0 -5
  997. package/node_modules/zod/v4/locales/eo.d.ts +0 -4
  998. package/node_modules/zod/v4/locales/eo.js +0 -109
  999. package/node_modules/zod/v4/locales/es.cjs +0 -159
  1000. package/node_modules/zod/v4/locales/es.d.cts +0 -5
  1001. package/node_modules/zod/v4/locales/es.d.ts +0 -4
  1002. package/node_modules/zod/v4/locales/es.js +0 -132
  1003. package/node_modules/zod/v4/locales/fa.cjs +0 -141
  1004. package/node_modules/zod/v4/locales/fa.d.cts +0 -5
  1005. package/node_modules/zod/v4/locales/fa.d.ts +0 -4
  1006. package/node_modules/zod/v4/locales/fa.js +0 -114
  1007. package/node_modules/zod/v4/locales/fi.cjs +0 -139
  1008. package/node_modules/zod/v4/locales/fi.d.cts +0 -5
  1009. package/node_modules/zod/v4/locales/fi.d.ts +0 -4
  1010. package/node_modules/zod/v4/locales/fi.js +0 -112
  1011. package/node_modules/zod/v4/locales/fr-CA.cjs +0 -134
  1012. package/node_modules/zod/v4/locales/fr-CA.d.cts +0 -5
  1013. package/node_modules/zod/v4/locales/fr-CA.d.ts +0 -4
  1014. package/node_modules/zod/v4/locales/fr-CA.js +0 -107
  1015. package/node_modules/zod/v4/locales/fr.cjs +0 -152
  1016. package/node_modules/zod/v4/locales/fr.d.cts +0 -5
  1017. package/node_modules/zod/v4/locales/fr.d.ts +0 -4
  1018. package/node_modules/zod/v4/locales/fr.js +0 -125
  1019. package/node_modules/zod/v4/locales/he.cjs +0 -241
  1020. package/node_modules/zod/v4/locales/he.d.cts +0 -5
  1021. package/node_modules/zod/v4/locales/he.d.ts +0 -4
  1022. package/node_modules/zod/v4/locales/he.js +0 -214
  1023. package/node_modules/zod/v4/locales/hr.cjs +0 -149
  1024. package/node_modules/zod/v4/locales/hr.d.cts +0 -5
  1025. package/node_modules/zod/v4/locales/hr.d.ts +0 -4
  1026. package/node_modules/zod/v4/locales/hr.js +0 -122
  1027. package/node_modules/zod/v4/locales/hu.cjs +0 -135
  1028. package/node_modules/zod/v4/locales/hu.d.cts +0 -5
  1029. package/node_modules/zod/v4/locales/hu.d.ts +0 -4
  1030. package/node_modules/zod/v4/locales/hu.js +0 -108
  1031. package/node_modules/zod/v4/locales/hy.cjs +0 -174
  1032. package/node_modules/zod/v4/locales/hy.d.cts +0 -5
  1033. package/node_modules/zod/v4/locales/hy.d.ts +0 -4
  1034. package/node_modules/zod/v4/locales/hy.js +0 -147
  1035. package/node_modules/zod/v4/locales/id.cjs +0 -133
  1036. package/node_modules/zod/v4/locales/id.d.cts +0 -5
  1037. package/node_modules/zod/v4/locales/id.d.ts +0 -4
  1038. package/node_modules/zod/v4/locales/id.js +0 -106
  1039. package/node_modules/zod/v4/locales/index.cjs +0 -111
  1040. package/node_modules/zod/v4/locales/index.d.cts +0 -52
  1041. package/node_modules/zod/v4/locales/index.d.ts +0 -52
  1042. package/node_modules/zod/v4/locales/index.js +0 -52
  1043. package/node_modules/zod/v4/locales/is.cjs +0 -136
  1044. package/node_modules/zod/v4/locales/is.d.cts +0 -5
  1045. package/node_modules/zod/v4/locales/is.d.ts +0 -4
  1046. package/node_modules/zod/v4/locales/is.js +0 -109
  1047. package/node_modules/zod/v4/locales/it.cjs +0 -135
  1048. package/node_modules/zod/v4/locales/it.d.cts +0 -5
  1049. package/node_modules/zod/v4/locales/it.d.ts +0 -4
  1050. package/node_modules/zod/v4/locales/it.js +0 -108
  1051. package/node_modules/zod/v4/locales/ja.cjs +0 -134
  1052. package/node_modules/zod/v4/locales/ja.d.cts +0 -5
  1053. package/node_modules/zod/v4/locales/ja.d.ts +0 -4
  1054. package/node_modules/zod/v4/locales/ja.js +0 -107
  1055. package/node_modules/zod/v4/locales/ka.cjs +0 -139
  1056. package/node_modules/zod/v4/locales/ka.d.cts +0 -5
  1057. package/node_modules/zod/v4/locales/ka.d.ts +0 -4
  1058. package/node_modules/zod/v4/locales/ka.js +0 -112
  1059. package/node_modules/zod/v4/locales/kh.cjs +0 -12
  1060. package/node_modules/zod/v4/locales/kh.d.cts +0 -5
  1061. package/node_modules/zod/v4/locales/kh.d.ts +0 -5
  1062. package/node_modules/zod/v4/locales/kh.js +0 -5
  1063. package/node_modules/zod/v4/locales/km.cjs +0 -137
  1064. package/node_modules/zod/v4/locales/km.d.cts +0 -5
  1065. package/node_modules/zod/v4/locales/km.d.ts +0 -4
  1066. package/node_modules/zod/v4/locales/km.js +0 -110
  1067. package/node_modules/zod/v4/locales/ko.cjs +0 -138
  1068. package/node_modules/zod/v4/locales/ko.d.cts +0 -5
  1069. package/node_modules/zod/v4/locales/ko.d.ts +0 -4
  1070. package/node_modules/zod/v4/locales/ko.js +0 -111
  1071. package/node_modules/zod/v4/locales/lt.cjs +0 -230
  1072. package/node_modules/zod/v4/locales/lt.d.cts +0 -5
  1073. package/node_modules/zod/v4/locales/lt.d.ts +0 -4
  1074. package/node_modules/zod/v4/locales/lt.js +0 -203
  1075. package/node_modules/zod/v4/locales/mk.cjs +0 -136
  1076. package/node_modules/zod/v4/locales/mk.d.cts +0 -5
  1077. package/node_modules/zod/v4/locales/mk.d.ts +0 -4
  1078. package/node_modules/zod/v4/locales/mk.js +0 -109
  1079. package/node_modules/zod/v4/locales/ms.cjs +0 -134
  1080. package/node_modules/zod/v4/locales/ms.d.cts +0 -5
  1081. package/node_modules/zod/v4/locales/ms.d.ts +0 -4
  1082. package/node_modules/zod/v4/locales/ms.js +0 -107
  1083. package/node_modules/zod/v4/locales/nl.cjs +0 -137
  1084. package/node_modules/zod/v4/locales/nl.d.cts +0 -5
  1085. package/node_modules/zod/v4/locales/nl.d.ts +0 -4
  1086. package/node_modules/zod/v4/locales/nl.js +0 -110
  1087. package/node_modules/zod/v4/locales/no.cjs +0 -135
  1088. package/node_modules/zod/v4/locales/no.d.cts +0 -5
  1089. package/node_modules/zod/v4/locales/no.d.ts +0 -4
  1090. package/node_modules/zod/v4/locales/no.js +0 -108
  1091. package/node_modules/zod/v4/locales/ota.cjs +0 -136
  1092. package/node_modules/zod/v4/locales/ota.d.cts +0 -5
  1093. package/node_modules/zod/v4/locales/ota.d.ts +0 -4
  1094. package/node_modules/zod/v4/locales/ota.js +0 -109
  1095. package/node_modules/zod/v4/locales/package.json +0 -7
  1096. package/node_modules/zod/v4/locales/pl.cjs +0 -136
  1097. package/node_modules/zod/v4/locales/pl.d.cts +0 -5
  1098. package/node_modules/zod/v4/locales/pl.d.ts +0 -4
  1099. package/node_modules/zod/v4/locales/pl.js +0 -109
  1100. package/node_modules/zod/v4/locales/ps.cjs +0 -141
  1101. package/node_modules/zod/v4/locales/ps.d.cts +0 -5
  1102. package/node_modules/zod/v4/locales/ps.d.ts +0 -4
  1103. package/node_modules/zod/v4/locales/ps.js +0 -114
  1104. package/node_modules/zod/v4/locales/pt.cjs +0 -135
  1105. package/node_modules/zod/v4/locales/pt.d.cts +0 -5
  1106. package/node_modules/zod/v4/locales/pt.d.ts +0 -4
  1107. package/node_modules/zod/v4/locales/pt.js +0 -108
  1108. package/node_modules/zod/v4/locales/ro.cjs +0 -146
  1109. package/node_modules/zod/v4/locales/ro.d.cts +0 -5
  1110. package/node_modules/zod/v4/locales/ro.d.ts +0 -4
  1111. package/node_modules/zod/v4/locales/ro.js +0 -119
  1112. package/node_modules/zod/v4/locales/ru.cjs +0 -183
  1113. package/node_modules/zod/v4/locales/ru.d.cts +0 -5
  1114. package/node_modules/zod/v4/locales/ru.d.ts +0 -4
  1115. package/node_modules/zod/v4/locales/ru.js +0 -156
  1116. package/node_modules/zod/v4/locales/sl.cjs +0 -136
  1117. package/node_modules/zod/v4/locales/sl.d.cts +0 -5
  1118. package/node_modules/zod/v4/locales/sl.d.ts +0 -4
  1119. package/node_modules/zod/v4/locales/sl.js +0 -109
  1120. package/node_modules/zod/v4/locales/sv.cjs +0 -137
  1121. package/node_modules/zod/v4/locales/sv.d.cts +0 -5
  1122. package/node_modules/zod/v4/locales/sv.d.ts +0 -4
  1123. package/node_modules/zod/v4/locales/sv.js +0 -110
  1124. package/node_modules/zod/v4/locales/ta.cjs +0 -137
  1125. package/node_modules/zod/v4/locales/ta.d.cts +0 -5
  1126. package/node_modules/zod/v4/locales/ta.d.ts +0 -4
  1127. package/node_modules/zod/v4/locales/ta.js +0 -110
  1128. package/node_modules/zod/v4/locales/th.cjs +0 -137
  1129. package/node_modules/zod/v4/locales/th.d.cts +0 -5
  1130. package/node_modules/zod/v4/locales/th.d.ts +0 -4
  1131. package/node_modules/zod/v4/locales/th.js +0 -110
  1132. package/node_modules/zod/v4/locales/tr.cjs +0 -132
  1133. package/node_modules/zod/v4/locales/tr.d.cts +0 -5
  1134. package/node_modules/zod/v4/locales/tr.d.ts +0 -4
  1135. package/node_modules/zod/v4/locales/tr.js +0 -105
  1136. package/node_modules/zod/v4/locales/ua.cjs +0 -12
  1137. package/node_modules/zod/v4/locales/ua.d.cts +0 -5
  1138. package/node_modules/zod/v4/locales/ua.d.ts +0 -5
  1139. package/node_modules/zod/v4/locales/ua.js +0 -5
  1140. package/node_modules/zod/v4/locales/uk.cjs +0 -135
  1141. package/node_modules/zod/v4/locales/uk.d.cts +0 -5
  1142. package/node_modules/zod/v4/locales/uk.d.ts +0 -4
  1143. package/node_modules/zod/v4/locales/uk.js +0 -108
  1144. package/node_modules/zod/v4/locales/ur.cjs +0 -137
  1145. package/node_modules/zod/v4/locales/ur.d.cts +0 -5
  1146. package/node_modules/zod/v4/locales/ur.d.ts +0 -4
  1147. package/node_modules/zod/v4/locales/ur.js +0 -110
  1148. package/node_modules/zod/v4/locales/uz.cjs +0 -137
  1149. package/node_modules/zod/v4/locales/uz.d.cts +0 -5
  1150. package/node_modules/zod/v4/locales/uz.d.ts +0 -4
  1151. package/node_modules/zod/v4/locales/uz.js +0 -110
  1152. package/node_modules/zod/v4/locales/vi.cjs +0 -135
  1153. package/node_modules/zod/v4/locales/vi.d.cts +0 -5
  1154. package/node_modules/zod/v4/locales/vi.d.ts +0 -4
  1155. package/node_modules/zod/v4/locales/vi.js +0 -108
  1156. package/node_modules/zod/v4/locales/yo.cjs +0 -134
  1157. package/node_modules/zod/v4/locales/yo.d.cts +0 -5
  1158. package/node_modules/zod/v4/locales/yo.d.ts +0 -4
  1159. package/node_modules/zod/v4/locales/yo.js +0 -107
  1160. package/node_modules/zod/v4/locales/zh-CN.cjs +0 -136
  1161. package/node_modules/zod/v4/locales/zh-CN.d.cts +0 -5
  1162. package/node_modules/zod/v4/locales/zh-CN.d.ts +0 -4
  1163. package/node_modules/zod/v4/locales/zh-CN.js +0 -109
  1164. package/node_modules/zod/v4/locales/zh-TW.cjs +0 -134
  1165. package/node_modules/zod/v4/locales/zh-TW.d.cts +0 -5
  1166. package/node_modules/zod/v4/locales/zh-TW.d.ts +0 -4
  1167. package/node_modules/zod/v4/locales/zh-TW.js +0 -107
  1168. package/node_modules/zod/v4/mini/checks.cjs +0 -34
  1169. package/node_modules/zod/v4/mini/checks.d.cts +0 -1
  1170. package/node_modules/zod/v4/mini/checks.d.ts +0 -1
  1171. package/node_modules/zod/v4/mini/checks.js +0 -1
  1172. package/node_modules/zod/v4/mini/coerce.cjs +0 -52
  1173. package/node_modules/zod/v4/mini/coerce.d.cts +0 -7
  1174. package/node_modules/zod/v4/mini/coerce.d.ts +0 -7
  1175. package/node_modules/zod/v4/mini/coerce.js +0 -22
  1176. package/node_modules/zod/v4/mini/external.cjs +0 -63
  1177. package/node_modules/zod/v4/mini/external.d.cts +0 -13
  1178. package/node_modules/zod/v4/mini/external.d.ts +0 -13
  1179. package/node_modules/zod/v4/mini/external.js +0 -14
  1180. package/node_modules/zod/v4/mini/index.cjs +0 -32
  1181. package/node_modules/zod/v4/mini/index.d.cts +0 -3
  1182. package/node_modules/zod/v4/mini/index.d.ts +0 -3
  1183. package/node_modules/zod/v4/mini/index.js +0 -3
  1184. package/node_modules/zod/v4/mini/iso.cjs +0 -64
  1185. package/node_modules/zod/v4/mini/iso.d.cts +0 -22
  1186. package/node_modules/zod/v4/mini/iso.d.ts +0 -22
  1187. package/node_modules/zod/v4/mini/iso.js +0 -34
  1188. package/node_modules/zod/v4/mini/package.json +0 -7
  1189. package/node_modules/zod/v4/mini/parse.cjs +0 -16
  1190. package/node_modules/zod/v4/mini/parse.d.cts +0 -1
  1191. package/node_modules/zod/v4/mini/parse.d.ts +0 -1
  1192. package/node_modules/zod/v4/mini/parse.js +0 -1
  1193. package/node_modules/zod/v4/mini/schemas.cjs +0 -1083
  1194. package/node_modules/zod/v4/mini/schemas.d.cts +0 -445
  1195. package/node_modules/zod/v4/mini/schemas.d.ts +0 -445
  1196. package/node_modules/zod/v4/mini/schemas.js +0 -961
  1197. package/node_modules/zod/v4/package.json +0 -7
  1198. package/node_modules/zod/v4-mini/index.cjs +0 -32
  1199. package/node_modules/zod/v4-mini/index.d.cts +0 -3
  1200. package/node_modules/zod/v4-mini/index.d.ts +0 -3
  1201. package/node_modules/zod/v4-mini/index.js +0 -3
  1202. package/node_modules/zod/v4-mini/package.json +0 -7
@@ -1,4730 +0,0 @@
1
- import type { $ZodTypeDiscriminable } from "./api.js";
2
- import * as checks from "./checks.js";
3
- import * as core from "./core.js";
4
- import { Doc } from "./doc.js";
5
- import type * as errors from "./errors.js";
6
- import type * as JSONSchema from "./json-schema.js";
7
- import { parse, parseAsync, safeParse, safeParseAsync } from "./parse.js";
8
- import * as regexes from "./regexes.js";
9
- import type { StandardSchemaV1 } from "./standard-schema.js";
10
- import type { ProcessParams, ToJSONSchemaContext } from "./to-json-schema.js";
11
- import * as util from "./util.js";
12
- import { version } from "./versions.js";
13
-
14
- ///////////////////////////// PARSE //////////////////////////////
15
-
16
- export interface ParseContext<T extends errors.$ZodIssueBase = never> {
17
- /** Customize error messages. */
18
- readonly error?: errors.$ZodErrorMap<T>;
19
- /** Include the `input` field in issue objects. Default `false`. */
20
- readonly reportInput?: boolean;
21
- /** Skip eval-based fast path. Default `false`. */
22
- readonly jitless?: boolean;
23
- /** Abort validation after the first error. Default `false`. */
24
- // readonly abortEarly?: boolean;
25
- }
26
-
27
- /** @internal */
28
- export interface ParseContextInternal<T extends errors.$ZodIssueBase = never> extends ParseContext<T> {
29
- readonly async?: boolean | undefined;
30
- readonly direction?: "forward" | "backward";
31
- readonly skipChecks?: boolean;
32
- }
33
-
34
- export interface ParsePayload<T = unknown> {
35
- value: T;
36
- issues: errors.$ZodRawIssue[];
37
- /** A way to mark a whole payload as aborted. Used in codecs/pipes. */
38
- aborted?: boolean;
39
- /** @internal Marks a value as a fallback that an outer wrapper (e.g.
40
- * $ZodOptional) may override with its own interpretation when input was
41
- * undefined. Set by $ZodCatch when catchValue substitutes and by every
42
- * $ZodTransform invocation. */
43
- fallback?: boolean | undefined;
44
- }
45
-
46
- export type CheckFn<T> = (input: ParsePayload<T>) => util.MaybeAsync<void>;
47
-
48
- ///////////////////////////// SCHEMAS //////////////////////////////
49
-
50
- export interface $ZodTypeDef {
51
- type:
52
- | "string"
53
- | "number"
54
- | "int"
55
- | "boolean"
56
- | "bigint"
57
- | "symbol"
58
- | "null"
59
- | "undefined"
60
- | "void" // merge with undefined?
61
- | "never"
62
- | "any"
63
- | "unknown"
64
- | "date"
65
- | "object"
66
- | "record"
67
- | "file"
68
- | "array"
69
- | "tuple"
70
- | "union"
71
- | "intersection"
72
- | "map"
73
- | "set"
74
- | "enum"
75
- | "literal"
76
- | "nullable"
77
- | "optional"
78
- | "nonoptional"
79
- | "success"
80
- | "transform"
81
- | "default"
82
- | "prefault"
83
- | "catch"
84
- | "nan"
85
- | "pipe"
86
- | "readonly"
87
- | "template_literal"
88
- | "promise"
89
- | "lazy"
90
- | "function"
91
- | "custom";
92
- error?: errors.$ZodErrorMap<never> | undefined;
93
- checks?: checks.$ZodCheck<never>[];
94
- }
95
-
96
- export interface _$ZodTypeInternals {
97
- /** The `@zod/core` version of this schema */
98
- version: typeof version;
99
-
100
- /** Schema definition. */
101
- def: $ZodTypeDef;
102
- // types: Types;
103
-
104
- /** @internal Randomly generated ID for this schema. */
105
- // id: string;
106
-
107
- /** @internal List of deferred initializers. */
108
- deferred: util.AnyFunc[] | undefined;
109
-
110
- /** @internal Parses input and runs all checks (refinements). */
111
- run(payload: ParsePayload<any>, ctx: ParseContextInternal): util.MaybeAsync<ParsePayload>;
112
-
113
- /** @internal Parses input, doesn't run checks. */
114
- parse(payload: ParsePayload<any>, ctx: ParseContextInternal): util.MaybeAsync<ParsePayload>;
115
-
116
- /** @internal Stores identifiers for the set of traits implemented by this schema. */
117
- traits: Set<string>;
118
-
119
- /** @internal Indicates that a schema output type should be considered optional inside objects.
120
- * @default Required
121
- */
122
-
123
- /** @internal */
124
- optin?: "optional" | undefined;
125
- /** @internal */
126
- optout?: "optional" | undefined;
127
-
128
- /** @internal The set of literal values that will pass validation. Must be an exhaustive set. Used to determine optionality in z.record().
129
- *
130
- * Defined on: enum, const, literal, null, undefined
131
- * Passthrough: optional, nullable, branded, default, catch, pipe
132
- * Todo: unions?
133
- */
134
- values?: util.PrimitiveSet | undefined;
135
-
136
- /** Default value bubbled up from */
137
- // default?: unknown | undefined;
138
-
139
- /** @internal A set of literal discriminators used for the fast path in discriminated unions. */
140
- propValues?: util.PropValues | undefined;
141
-
142
- /** @internal This flag indicates that a schema validation can be represented with a regular expression. Used to determine allowable schemas in z.templateLiteral(). */
143
- pattern: RegExp | undefined;
144
-
145
- /** @internal The constructor function of this schema. */
146
- constr: new (
147
- def: any
148
- ) => $ZodType;
149
-
150
- /** @internal A catchall object for bag metadata related to this schema. Commonly modified by checks using `onattach`. */
151
- bag: Record<string, unknown>;
152
-
153
- /** @internal The set of issues this schema might throw during type checking. */
154
- isst: errors.$ZodIssueBase;
155
-
156
- /** @internal Subject to change, not a public API. */
157
- processJSONSchema?:
158
- | ((ctx: ToJSONSchemaContext, json: JSONSchema.BaseSchema, params: ProcessParams) => void)
159
- | undefined;
160
-
161
- /** An optional method used to override `toJSONSchema` logic. */
162
- toJSONSchema?: () => unknown;
163
-
164
- /** @internal The parent of this schema. Only set during certain clone operations. */
165
- parent?: $ZodType | undefined;
166
- }
167
- /** @internal */
168
- export interface $ZodTypeInternals<out O = unknown, out I = unknown> extends _$ZodTypeInternals {
169
- /** @internal The inferred output type */
170
- output: O; //extends { $out: infer O } ? O : Out;
171
- /** @internal The inferred input type */
172
- input: I; //extends { $in: infer I } ? I : In;
173
- }
174
-
175
- export type $ZodStandardSchema<T> = StandardSchemaV1.Props<core.input<T>, core.output<T>>;
176
-
177
- export type SomeType = { _zod: _$ZodTypeInternals };
178
-
179
- export interface $ZodType<
180
- O = unknown,
181
- I = unknown,
182
- Internals extends $ZodTypeInternals<O, I> = $ZodTypeInternals<O, I>,
183
- > {
184
- _zod: Internals;
185
- "~standard": $ZodStandardSchema<this>;
186
- }
187
- export interface _$ZodType<T extends $ZodTypeInternals = $ZodTypeInternals>
188
- extends $ZodType<T["output"], T["input"], T> {}
189
-
190
- export const $ZodType: core.$constructor<$ZodType> = /*@__PURE__*/ core.$constructor("$ZodType", (inst, def) => {
191
- inst ??= {} as any;
192
-
193
- inst._zod.def = def; // set _def property
194
- inst._zod.bag = inst._zod.bag || {}; // initialize _bag object
195
- inst._zod.version = version;
196
-
197
- const checks = [...(inst._zod.def.checks ?? [])];
198
-
199
- // if inst is itself a checks.$ZodCheck, run it as a check
200
- if (inst._zod.traits.has("$ZodCheck")) {
201
- checks.unshift(inst as any);
202
- }
203
-
204
- for (const ch of checks) {
205
- for (const fn of ch._zod.onattach) {
206
- fn(inst);
207
- }
208
- }
209
-
210
- if (checks.length === 0) {
211
- // deferred initializer
212
- // inst._zod.parse is not yet defined
213
- inst._zod.deferred ??= [];
214
- inst._zod.deferred?.push(() => {
215
- inst._zod.run = inst._zod.parse;
216
- });
217
- } else {
218
- const runChecks = (
219
- payload: ParsePayload,
220
- checks: checks.$ZodCheck<never>[],
221
- ctx?: ParseContextInternal | undefined
222
- ): util.MaybeAsync<ParsePayload> => {
223
- let isAborted = util.aborted(payload);
224
-
225
- let asyncResult!: Promise<unknown> | undefined;
226
- for (const ch of checks) {
227
- if (ch._zod.def.when) {
228
- if (util.explicitlyAborted(payload)) continue;
229
- const shouldRun = ch._zod.def.when(payload);
230
- if (!shouldRun) continue;
231
- } else if (isAborted) {
232
- continue;
233
- }
234
- const currLen = payload.issues.length;
235
- const _ = ch._zod.check(payload as any) as any as ParsePayload;
236
-
237
- if (_ instanceof Promise && ctx?.async === false) {
238
- throw new core.$ZodAsyncError();
239
- }
240
- if (asyncResult || _ instanceof Promise) {
241
- asyncResult = (asyncResult ?? Promise.resolve()).then(async () => {
242
- await _;
243
- const nextLen = payload.issues.length;
244
- if (nextLen === currLen) return;
245
- if (!isAborted) isAborted = util.aborted(payload, currLen);
246
- });
247
- } else {
248
- const nextLen = payload.issues.length;
249
- if (nextLen === currLen) continue;
250
- if (!isAborted) isAborted = util.aborted(payload, currLen);
251
- }
252
- }
253
-
254
- if (asyncResult) {
255
- return asyncResult.then(() => {
256
- return payload;
257
- });
258
- }
259
- return payload;
260
- };
261
-
262
- const handleCanaryResult = (canary: ParsePayload, payload: ParsePayload, ctx: ParseContextInternal) => {
263
- // abort if the canary is aborted
264
- if (util.aborted(canary)) {
265
- canary.aborted = true;
266
- return canary;
267
- }
268
-
269
- // run checks first, then
270
- const checkResult = runChecks(payload, checks, ctx);
271
- if (checkResult instanceof Promise) {
272
- if (ctx.async === false) throw new core.$ZodAsyncError();
273
- return checkResult.then((checkResult) => inst._zod.parse(checkResult, ctx));
274
- }
275
- return inst._zod.parse(checkResult, ctx);
276
- };
277
-
278
- inst._zod.run = (payload, ctx) => {
279
- if (ctx.skipChecks) {
280
- return inst._zod.parse(payload, ctx);
281
- }
282
- if (ctx.direction === "backward") {
283
- // run canary
284
- // initial pass (no checks)
285
- const canary = inst._zod.parse({ value: payload.value, issues: [] }, { ...ctx, skipChecks: true });
286
-
287
- if (canary instanceof Promise) {
288
- return canary.then((canary) => {
289
- return handleCanaryResult(canary, payload, ctx);
290
- });
291
- }
292
-
293
- return handleCanaryResult(canary, payload, ctx);
294
- }
295
-
296
- // forward
297
- const result = inst._zod.parse(payload, ctx);
298
- if (result instanceof Promise) {
299
- if (ctx.async === false) throw new core.$ZodAsyncError();
300
- return result.then((result) => runChecks(result, checks, ctx));
301
- }
302
-
303
- return runChecks(result, checks, ctx);
304
- };
305
- }
306
-
307
- // Lazy initialize ~standard to avoid creating objects for every schema
308
- util.defineLazy(inst, "~standard", () => ({
309
- validate: (value: unknown) => {
310
- try {
311
- const r = safeParse(inst, value);
312
- return r.success ? { value: r.data } : { issues: r.error?.issues };
313
- } catch (_) {
314
- return safeParseAsync(inst, value).then((r) => (r.success ? { value: r.data } : { issues: r.error?.issues }));
315
- }
316
- },
317
- vendor: "zod",
318
- version: 1 as const,
319
- }));
320
- });
321
-
322
- export { clone } from "./util.js";
323
-
324
- //////////////////////////////////////////
325
- //////////////////////////////////////////
326
- ////////// //////////
327
- ////////// $ZodString //////////
328
- ////////// //////////
329
- //////////////////////////////////////////
330
- //////////////////////////////////////////
331
- export interface $ZodStringDef extends $ZodTypeDef {
332
- type: "string";
333
- coerce?: boolean;
334
- checks?: checks.$ZodCheck<string>[];
335
- }
336
-
337
- export interface $ZodStringInternals<Input> extends $ZodTypeInternals<string, Input> {
338
- def: $ZodStringDef;
339
- /** @deprecated Internal API, use with caution (not deprecated) */
340
- pattern: RegExp;
341
-
342
- /** @deprecated Internal API, use with caution (not deprecated) */
343
- isst: errors.$ZodIssueInvalidType;
344
- bag: util.LoosePartial<{
345
- minimum: number;
346
- maximum: number;
347
- patterns: Set<RegExp>;
348
- format: string;
349
- contentEncoding: string;
350
- }>;
351
- }
352
-
353
- export interface $ZodString<Input = unknown> extends _$ZodType<$ZodStringInternals<Input>> {
354
- // _zod: $ZodStringInternals<Input>;
355
- }
356
-
357
- export const $ZodString: core.$constructor<$ZodString> = /*@__PURE__*/ core.$constructor("$ZodString", (inst, def) => {
358
- $ZodType.init(inst, def);
359
- inst._zod.pattern = [...(inst?._zod.bag?.patterns ?? [])].pop() ?? regexes.string(inst._zod.bag);
360
- inst._zod.parse = (payload, _) => {
361
- if (def.coerce)
362
- try {
363
- payload.value = String(payload.value);
364
- } catch (_) {}
365
-
366
- if (typeof payload.value === "string") return payload;
367
-
368
- payload.issues.push({
369
- expected: "string",
370
- code: "invalid_type",
371
-
372
- input: payload.value,
373
- inst,
374
- });
375
- return payload;
376
- };
377
- });
378
-
379
- ////////////////////////////// ZodStringFormat //////////////////////////////
380
-
381
- export interface $ZodStringFormatDef<Format extends string = string>
382
- extends $ZodStringDef,
383
- checks.$ZodCheckStringFormatDef<Format> {}
384
-
385
- export interface $ZodStringFormatInternals<Format extends string = string>
386
- extends $ZodStringInternals<string>,
387
- checks.$ZodCheckStringFormatInternals {
388
- def: $ZodStringFormatDef<Format>;
389
- }
390
- export interface $ZodStringFormat<Format extends string = string> extends $ZodType {
391
- _zod: $ZodStringFormatInternals<Format>;
392
- }
393
-
394
- export const $ZodStringFormat: core.$constructor<$ZodStringFormat> = /*@__PURE__*/ core.$constructor(
395
- "$ZodStringFormat",
396
- (inst, def): void => {
397
- // check initialization must come first
398
- checks.$ZodCheckStringFormat.init(inst, def);
399
- $ZodString.init(inst, def);
400
- }
401
- );
402
-
403
- ////////////////////////////// ZodGUID //////////////////////////////
404
- export interface $ZodGUIDDef extends $ZodStringFormatDef<"guid"> {}
405
- export interface $ZodGUIDInternals extends $ZodStringFormatInternals<"guid"> {}
406
-
407
- export interface $ZodGUID extends $ZodType {
408
- _zod: $ZodGUIDInternals;
409
- }
410
-
411
- export const $ZodGUID: core.$constructor<$ZodGUID> = /*@__PURE__*/ core.$constructor("$ZodGUID", (inst, def): void => {
412
- def.pattern ??= regexes.guid;
413
- $ZodStringFormat.init(inst, def);
414
- });
415
-
416
- ////////////////////////////// ZodUUID //////////////////////////////
417
-
418
- export interface $ZodUUIDDef extends $ZodStringFormatDef<"uuid"> {
419
- version?: "v1" | "v2" | "v3" | "v4" | "v5" | "v6" | "v7" | "v8";
420
- }
421
-
422
- export interface $ZodUUIDInternals extends $ZodStringFormatInternals<"uuid"> {
423
- def: $ZodUUIDDef;
424
- }
425
-
426
- export interface $ZodUUID extends $ZodType {
427
- _zod: $ZodUUIDInternals;
428
- }
429
-
430
- export const $ZodUUID: core.$constructor<$ZodUUID> = /*@__PURE__*/ core.$constructor("$ZodUUID", (inst, def): void => {
431
- if (def.version) {
432
- const versionMap: Record<string, number> = {
433
- v1: 1,
434
- v2: 2,
435
- v3: 3,
436
- v4: 4,
437
- v5: 5,
438
- v6: 6,
439
- v7: 7,
440
- v8: 8,
441
- };
442
- const v = versionMap[def.version];
443
- if (v === undefined) throw new Error(`Invalid UUID version: "${def.version}"`);
444
- def.pattern ??= regexes.uuid(v);
445
- } else def.pattern ??= regexes.uuid();
446
- $ZodStringFormat.init(inst, def);
447
- });
448
-
449
- ////////////////////////////// ZodEmail //////////////////////////////
450
-
451
- export interface $ZodEmailDef extends $ZodStringFormatDef<"email"> {}
452
- export interface $ZodEmailInternals extends $ZodStringFormatInternals<"email"> {}
453
- export interface $ZodEmail extends $ZodType {
454
- _zod: $ZodEmailInternals;
455
- }
456
-
457
- export const $ZodEmail: core.$constructor<$ZodEmail> = /*@__PURE__*/ core.$constructor(
458
- "$ZodEmail",
459
- (inst, def): void => {
460
- def.pattern ??= regexes.email;
461
- $ZodStringFormat.init(inst, def);
462
- }
463
- );
464
-
465
- ////////////////////////////// ZodURL //////////////////////////////
466
-
467
- export interface $ZodURLDef extends $ZodStringFormatDef<"url"> {
468
- hostname?: RegExp | undefined;
469
- protocol?: RegExp | undefined;
470
- normalize?: boolean | undefined;
471
- }
472
- export interface $ZodURLInternals extends $ZodStringFormatInternals<"url"> {
473
- def: $ZodURLDef;
474
- }
475
-
476
- export interface $ZodURL extends $ZodType {
477
- _zod: $ZodURLInternals;
478
- }
479
-
480
- export const $ZodURL: core.$constructor<$ZodURL> = /*@__PURE__*/ core.$constructor("$ZodURL", (inst, def) => {
481
- $ZodStringFormat.init(inst, def);
482
- inst._zod.check = (payload) => {
483
- try {
484
- // Trim whitespace from input
485
- const trimmed = payload.value.trim();
486
-
487
- // When normalize is off, require :// for http/https URLs
488
- // This prevents strings like "http:example.com" or "https:/path" from being silently accepted
489
- if (!def.normalize && def.protocol?.source === regexes.httpProtocol.source) {
490
- if (!/^https?:\/\//i.test(trimmed)) {
491
- payload.issues.push({
492
- code: "invalid_format",
493
- format: "url",
494
- note: "Invalid URL format",
495
- input: payload.value,
496
- inst,
497
- continue: !def.abort,
498
- });
499
- return;
500
- }
501
- }
502
-
503
- // @ts-ignore
504
- const url = new URL(trimmed);
505
-
506
- if (def.hostname) {
507
- def.hostname.lastIndex = 0;
508
- if (!def.hostname.test(url.hostname)) {
509
- payload.issues.push({
510
- code: "invalid_format",
511
- format: "url",
512
- note: "Invalid hostname",
513
- pattern: def.hostname.source,
514
- input: payload.value,
515
- inst,
516
- continue: !def.abort,
517
- });
518
- }
519
- }
520
-
521
- if (def.protocol) {
522
- def.protocol.lastIndex = 0;
523
- if (!def.protocol.test(url.protocol.endsWith(":") ? url.protocol.slice(0, -1) : url.protocol)) {
524
- payload.issues.push({
525
- code: "invalid_format",
526
- format: "url",
527
- note: "Invalid protocol",
528
- pattern: def.protocol.source,
529
- input: payload.value,
530
- inst,
531
- continue: !def.abort,
532
- });
533
- }
534
- }
535
-
536
- // Set the output value based on normalize flag
537
- if (def.normalize) {
538
- // Use normalized URL
539
- payload.value = url.href;
540
- } else {
541
- // Preserve the original input (trimmed)
542
- payload.value = trimmed;
543
- }
544
-
545
- return;
546
- } catch (_) {
547
- payload.issues.push({
548
- code: "invalid_format",
549
- format: "url",
550
- input: payload.value,
551
- inst,
552
- continue: !def.abort,
553
- });
554
- }
555
- };
556
- });
557
-
558
- ////////////////////////////// ZodEmoji //////////////////////////////
559
-
560
- export interface $ZodEmojiDef extends $ZodStringFormatDef<"emoji"> {}
561
- export interface $ZodEmojiInternals extends $ZodStringFormatInternals<"emoji"> {}
562
-
563
- export interface $ZodEmoji extends $ZodType {
564
- _zod: $ZodEmojiInternals;
565
- }
566
-
567
- export const $ZodEmoji: core.$constructor<$ZodEmoji> = /*@__PURE__*/ core.$constructor(
568
- "$ZodEmoji",
569
- (inst, def): void => {
570
- def.pattern ??= regexes.emoji();
571
- $ZodStringFormat.init(inst, def);
572
- }
573
- );
574
-
575
- ////////////////////////////// ZodNanoID //////////////////////////////
576
-
577
- export interface $ZodNanoIDDef extends $ZodStringFormatDef<"nanoid"> {}
578
- export interface $ZodNanoIDInternals extends $ZodStringFormatInternals<"nanoid"> {}
579
-
580
- export interface $ZodNanoID extends $ZodType {
581
- _zod: $ZodNanoIDInternals;
582
- }
583
-
584
- export const $ZodNanoID: core.$constructor<$ZodNanoID> = /*@__PURE__*/ core.$constructor(
585
- "$ZodNanoID",
586
- (inst, def): void => {
587
- def.pattern ??= regexes.nanoid;
588
- $ZodStringFormat.init(inst, def);
589
- }
590
- );
591
-
592
- ////////////////////////////// ZodCUID //////////////////////////////
593
-
594
- /**
595
- * @deprecated CUID v1 is deprecated by its authors due to information leakage
596
- * (timestamps embedded in the id). Use {@link $ZodCUID2} instead.
597
- * See https://github.com/paralleldrive/cuid.
598
- */
599
- export interface $ZodCUIDDef extends $ZodStringFormatDef<"cuid"> {}
600
- /**
601
- * @deprecated CUID v1 is deprecated by its authors due to information leakage
602
- * (timestamps embedded in the id). Use {@link $ZodCUID2} instead.
603
- * See https://github.com/paralleldrive/cuid.
604
- */
605
- export interface $ZodCUIDInternals extends $ZodStringFormatInternals<"cuid"> {}
606
-
607
- /**
608
- * @deprecated CUID v1 is deprecated by its authors due to information leakage
609
- * (timestamps embedded in the id). Use {@link $ZodCUID2} instead.
610
- * See https://github.com/paralleldrive/cuid.
611
- */
612
- export interface $ZodCUID extends $ZodType {
613
- _zod: $ZodCUIDInternals;
614
- }
615
-
616
- /**
617
- * @deprecated CUID v1 is deprecated by its authors due to information leakage
618
- * (timestamps embedded in the id). Use {@link $ZodCUID2} instead.
619
- * See https://github.com/paralleldrive/cuid.
620
- */
621
- export const $ZodCUID: core.$constructor<$ZodCUID> = /*@__PURE__*/ core.$constructor("$ZodCUID", (inst, def): void => {
622
- def.pattern ??= regexes.cuid;
623
- $ZodStringFormat.init(inst, def);
624
- });
625
-
626
- ////////////////////////////// ZodCUID2 //////////////////////////////
627
-
628
- export interface $ZodCUID2Def extends $ZodStringFormatDef<"cuid2"> {}
629
- export interface $ZodCUID2Internals extends $ZodStringFormatInternals<"cuid2"> {}
630
-
631
- export interface $ZodCUID2 extends $ZodType {
632
- _zod: $ZodCUID2Internals;
633
- }
634
-
635
- export const $ZodCUID2: core.$constructor<$ZodCUID2> = /*@__PURE__*/ core.$constructor(
636
- "$ZodCUID2",
637
- (inst, def): void => {
638
- def.pattern ??= regexes.cuid2;
639
- $ZodStringFormat.init(inst, def);
640
- }
641
- );
642
-
643
- ////////////////////////////// ZodULID //////////////////////////////
644
-
645
- export interface $ZodULIDDef extends $ZodStringFormatDef<"ulid"> {}
646
- export interface $ZodULIDInternals extends $ZodStringFormatInternals<"ulid"> {}
647
-
648
- export interface $ZodULID extends $ZodType {
649
- _zod: $ZodULIDInternals;
650
- }
651
-
652
- export const $ZodULID: core.$constructor<$ZodULID> = /*@__PURE__*/ core.$constructor("$ZodULID", (inst, def): void => {
653
- def.pattern ??= regexes.ulid;
654
- $ZodStringFormat.init(inst, def);
655
- });
656
-
657
- ////////////////////////////// ZodXID //////////////////////////////
658
-
659
- export interface $ZodXIDDef extends $ZodStringFormatDef<"xid"> {}
660
- export interface $ZodXIDInternals extends $ZodStringFormatInternals<"xid"> {}
661
-
662
- export interface $ZodXID extends $ZodType {
663
- _zod: $ZodXIDInternals;
664
- }
665
-
666
- export const $ZodXID: core.$constructor<$ZodXID> = /*@__PURE__*/ core.$constructor("$ZodXID", (inst, def): void => {
667
- def.pattern ??= regexes.xid;
668
- $ZodStringFormat.init(inst, def);
669
- });
670
-
671
- ////////////////////////////// ZodKSUID //////////////////////////////
672
-
673
- export interface $ZodKSUIDDef extends $ZodStringFormatDef<"ksuid"> {}
674
- export interface $ZodKSUIDInternals extends $ZodStringFormatInternals<"ksuid"> {}
675
-
676
- export interface $ZodKSUID extends $ZodType {
677
- _zod: $ZodKSUIDInternals;
678
- }
679
-
680
- export const $ZodKSUID: core.$constructor<$ZodKSUID> = /*@__PURE__*/ core.$constructor(
681
- "$ZodKSUID",
682
- (inst, def): void => {
683
- def.pattern ??= regexes.ksuid;
684
- $ZodStringFormat.init(inst, def);
685
- }
686
- );
687
-
688
- ////////////////////////////// ZodISODateTime //////////////////////////////
689
-
690
- export interface $ZodISODateTimeDef extends $ZodStringFormatDef<"datetime"> {
691
- precision: number | null;
692
- offset: boolean;
693
- local: boolean;
694
- }
695
-
696
- export interface $ZodISODateTimeInternals extends $ZodStringFormatInternals {
697
- def: $ZodISODateTimeDef;
698
- }
699
-
700
- export interface $ZodISODateTime extends $ZodType {
701
- _zod: $ZodISODateTimeInternals;
702
- }
703
-
704
- export const $ZodISODateTime: core.$constructor<$ZodISODateTime> = /*@__PURE__*/ core.$constructor(
705
- "$ZodISODateTime",
706
- (inst, def): void => {
707
- def.pattern ??= regexes.datetime(def);
708
- $ZodStringFormat.init(inst, def);
709
- }
710
- );
711
-
712
- ////////////////////////////// ZodISODate //////////////////////////////
713
-
714
- export interface $ZodISODateDef extends $ZodStringFormatDef<"date"> {}
715
- export interface $ZodISODateInternals extends $ZodStringFormatInternals<"date"> {}
716
-
717
- export interface $ZodISODate extends $ZodType {
718
- _zod: $ZodISODateInternals;
719
- }
720
-
721
- export const $ZodISODate: core.$constructor<$ZodISODate> = /*@__PURE__*/ core.$constructor(
722
- "$ZodISODate",
723
- (inst, def): void => {
724
- def.pattern ??= regexes.date;
725
- $ZodStringFormat.init(inst, def);
726
- }
727
- );
728
-
729
- ////////////////////////////// ZodISOTime //////////////////////////////
730
-
731
- export interface $ZodISOTimeDef extends $ZodStringFormatDef<"time"> {
732
- precision?: number | null;
733
- }
734
-
735
- export interface $ZodISOTimeInternals extends $ZodStringFormatInternals<"time"> {
736
- def: $ZodISOTimeDef;
737
- }
738
-
739
- export interface $ZodISOTime extends $ZodType {
740
- _zod: $ZodISOTimeInternals;
741
- }
742
-
743
- export const $ZodISOTime: core.$constructor<$ZodISOTime> = /*@__PURE__*/ core.$constructor(
744
- "$ZodISOTime",
745
- (inst, def): void => {
746
- def.pattern ??= regexes.time(def);
747
- $ZodStringFormat.init(inst, def);
748
- }
749
- );
750
-
751
- ////////////////////////////// ZodISODuration //////////////////////////////
752
-
753
- export interface $ZodISODurationDef extends $ZodStringFormatDef<"duration"> {}
754
- export interface $ZodISODurationInternals extends $ZodStringFormatInternals<"duration"> {}
755
-
756
- export interface $ZodISODuration extends $ZodType {
757
- _zod: $ZodISODurationInternals;
758
- }
759
-
760
- export const $ZodISODuration: core.$constructor<$ZodISODuration> = /*@__PURE__*/ core.$constructor(
761
- "$ZodISODuration",
762
- (inst, def): void => {
763
- def.pattern ??= regexes.duration;
764
- $ZodStringFormat.init(inst, def);
765
- }
766
- );
767
-
768
- ////////////////////////////// ZodIPv4 //////////////////////////////
769
-
770
- export interface $ZodIPv4Def extends $ZodStringFormatDef<"ipv4"> {
771
- version?: "v4";
772
- }
773
-
774
- export interface $ZodIPv4Internals extends $ZodStringFormatInternals<"ipv4"> {
775
- def: $ZodIPv4Def;
776
- }
777
-
778
- export interface $ZodIPv4 extends $ZodType {
779
- _zod: $ZodIPv4Internals;
780
- }
781
-
782
- export const $ZodIPv4: core.$constructor<$ZodIPv4> = /*@__PURE__*/ core.$constructor("$ZodIPv4", (inst, def): void => {
783
- def.pattern ??= regexes.ipv4;
784
- $ZodStringFormat.init(inst, def);
785
-
786
- inst._zod.bag.format = `ipv4`;
787
- });
788
-
789
- ////////////////////////////// ZodIPv6 //////////////////////////////
790
-
791
- export interface $ZodIPv6Def extends $ZodStringFormatDef<"ipv6"> {
792
- version?: "v6";
793
- }
794
-
795
- export interface $ZodIPv6Internals extends $ZodStringFormatInternals<"ipv6"> {
796
- def: $ZodIPv6Def;
797
- }
798
-
799
- export interface $ZodIPv6 extends $ZodType {
800
- _zod: $ZodIPv6Internals;
801
- }
802
-
803
- export const $ZodIPv6: core.$constructor<$ZodIPv6> = /*@__PURE__*/ core.$constructor("$ZodIPv6", (inst, def): void => {
804
- def.pattern ??= regexes.ipv6;
805
- $ZodStringFormat.init(inst, def);
806
-
807
- inst._zod.bag.format = `ipv6`;
808
-
809
- inst._zod.check = (payload) => {
810
- try {
811
- // @ts-ignore
812
- new URL(`http://[${payload.value}]`);
813
- // return;
814
- } catch {
815
- payload.issues.push({
816
- code: "invalid_format",
817
- format: "ipv6",
818
- input: payload.value,
819
- inst,
820
- continue: !def.abort,
821
- });
822
- }
823
- };
824
- });
825
-
826
- ////////////////////////////// ZodMAC //////////////////////////////
827
- export interface $ZodMACDef extends $ZodStringFormatDef<"mac"> {
828
- delimiter?: string;
829
- }
830
-
831
- export interface $ZodMACInternals extends $ZodStringFormatInternals<"mac"> {
832
- def: $ZodMACDef;
833
- }
834
-
835
- export interface $ZodMAC extends $ZodType {
836
- _zod: $ZodMACInternals;
837
- }
838
-
839
- export const $ZodMAC: core.$constructor<$ZodMAC> = /*@__PURE__*/ core.$constructor("$ZodMAC", (inst, def): void => {
840
- def.pattern ??= regexes.mac(def.delimiter);
841
- $ZodStringFormat.init(inst, def);
842
-
843
- inst._zod.bag.format = `mac`;
844
- });
845
-
846
- ////////////////////////////// ZodCIDRv4 //////////////////////////////
847
-
848
- export interface $ZodCIDRv4Def extends $ZodStringFormatDef<"cidrv4"> {
849
- version?: "v4";
850
- }
851
-
852
- export interface $ZodCIDRv4Internals extends $ZodStringFormatInternals<"cidrv4"> {
853
- def: $ZodCIDRv4Def;
854
- }
855
-
856
- export interface $ZodCIDRv4 extends $ZodType {
857
- _zod: $ZodCIDRv4Internals;
858
- }
859
-
860
- export const $ZodCIDRv4: core.$constructor<$ZodCIDRv4> = /*@__PURE__*/ core.$constructor(
861
- "$ZodCIDRv4",
862
- (inst, def): void => {
863
- def.pattern ??= regexes.cidrv4;
864
- $ZodStringFormat.init(inst, def);
865
- }
866
- );
867
-
868
- ////////////////////////////// ZodCIDRv6 //////////////////////////////
869
-
870
- export interface $ZodCIDRv6Def extends $ZodStringFormatDef<"cidrv6"> {
871
- version?: "v6";
872
- }
873
-
874
- export interface $ZodCIDRv6Internals extends $ZodStringFormatInternals<"cidrv6"> {
875
- def: $ZodCIDRv6Def;
876
- }
877
-
878
- export interface $ZodCIDRv6 extends $ZodType {
879
- _zod: $ZodCIDRv6Internals;
880
- }
881
-
882
- export const $ZodCIDRv6: core.$constructor<$ZodCIDRv6> = /*@__PURE__*/ core.$constructor(
883
- "$ZodCIDRv6",
884
- (inst, def): void => {
885
- def.pattern ??= regexes.cidrv6; // not used for validation
886
- $ZodStringFormat.init(inst, def);
887
-
888
- inst._zod.check = (payload) => {
889
- const parts = payload.value.split("/");
890
- try {
891
- if (parts.length !== 2) throw new Error();
892
- const [address, prefix] = parts;
893
- if (!prefix) throw new Error();
894
- const prefixNum = Number(prefix);
895
- if (`${prefixNum}` !== prefix) throw new Error();
896
- if (prefixNum < 0 || prefixNum > 128) throw new Error();
897
- // @ts-ignore
898
- new URL(`http://[${address}]`);
899
- } catch {
900
- payload.issues.push({
901
- code: "invalid_format",
902
- format: "cidrv6",
903
- input: payload.value,
904
- inst,
905
- continue: !def.abort,
906
- });
907
- }
908
- };
909
- }
910
- );
911
-
912
- ////////////////////////////// ZodBase64 //////////////////////////////
913
- export function isValidBase64(data: string): boolean {
914
- if (data === "") return true;
915
- // atob ignores whitespace, so reject it up front.
916
- if (/\s/.test(data)) return false;
917
- if (data.length % 4 !== 0) return false;
918
- try {
919
- // @ts-ignore
920
- atob(data);
921
- return true;
922
- } catch {
923
- return false;
924
- }
925
- }
926
-
927
- export interface $ZodBase64Def extends $ZodStringFormatDef<"base64"> {}
928
- export interface $ZodBase64Internals extends $ZodStringFormatInternals<"base64"> {}
929
-
930
- export interface $ZodBase64 extends $ZodType {
931
- _zod: $ZodBase64Internals;
932
- }
933
-
934
- export const $ZodBase64: core.$constructor<$ZodBase64> = /*@__PURE__*/ core.$constructor(
935
- "$ZodBase64",
936
- (inst, def): void => {
937
- def.pattern ??= regexes.base64;
938
- $ZodStringFormat.init(inst, def);
939
-
940
- inst._zod.bag.contentEncoding = "base64";
941
-
942
- inst._zod.check = (payload) => {
943
- if (isValidBase64(payload.value)) return;
944
-
945
- payload.issues.push({
946
- code: "invalid_format",
947
- format: "base64",
948
- input: payload.value,
949
- inst,
950
- continue: !def.abort,
951
- });
952
- };
953
- }
954
- );
955
-
956
- ////////////////////////////// ZodBase64 //////////////////////////////
957
- export function isValidBase64URL(data: string): boolean {
958
- if (!regexes.base64url.test(data)) return false;
959
- const base64 = data.replace(/[-_]/g, (c) => (c === "-" ? "+" : "/"));
960
- const padded = base64.padEnd(Math.ceil(base64.length / 4) * 4, "=");
961
- return isValidBase64(padded);
962
- }
963
-
964
- export interface $ZodBase64URLDef extends $ZodStringFormatDef<"base64url"> {}
965
- export interface $ZodBase64URLInternals extends $ZodStringFormatInternals<"base64url"> {}
966
-
967
- export interface $ZodBase64URL extends $ZodType {
968
- _zod: $ZodBase64URLInternals;
969
- }
970
-
971
- export const $ZodBase64URL: core.$constructor<$ZodBase64URL> = /*@__PURE__*/ core.$constructor(
972
- "$ZodBase64URL",
973
- (inst, def): void => {
974
- def.pattern ??= regexes.base64url;
975
- $ZodStringFormat.init(inst, def);
976
-
977
- inst._zod.bag.contentEncoding = "base64url";
978
-
979
- inst._zod.check = (payload) => {
980
- if (isValidBase64URL(payload.value)) return;
981
-
982
- payload.issues.push({
983
- code: "invalid_format",
984
- format: "base64url",
985
- input: payload.value,
986
- inst,
987
- continue: !def.abort,
988
- });
989
- };
990
- }
991
- );
992
-
993
- ////////////////////////////// ZodE164 //////////////////////////////
994
-
995
- export interface $ZodE164Def extends $ZodStringFormatDef<"e164"> {}
996
- export interface $ZodE164Internals extends $ZodStringFormatInternals<"e164"> {}
997
-
998
- export interface $ZodE164 extends $ZodType {
999
- _zod: $ZodE164Internals;
1000
- }
1001
-
1002
- export const $ZodE164: core.$constructor<$ZodE164> = /*@__PURE__*/ core.$constructor("$ZodE164", (inst, def): void => {
1003
- def.pattern ??= regexes.e164;
1004
- $ZodStringFormat.init(inst, def);
1005
- });
1006
-
1007
- ////////////////////////////// ZodJWT //////////////////////////////
1008
-
1009
- export function isValidJWT(token: string, algorithm: util.JWTAlgorithm | null = null): boolean {
1010
- try {
1011
- const tokensParts = token.split(".");
1012
- if (tokensParts.length !== 3) return false;
1013
- const [header] = tokensParts;
1014
- if (!header) return false;
1015
- // @ts-ignore
1016
- const parsedHeader = JSON.parse(atob(header));
1017
- if ("typ" in parsedHeader && parsedHeader?.typ !== "JWT") return false;
1018
- if (!parsedHeader.alg) return false;
1019
- if (algorithm && (!("alg" in parsedHeader) || parsedHeader.alg !== algorithm)) return false;
1020
- return true;
1021
- } catch {
1022
- return false;
1023
- }
1024
- }
1025
-
1026
- export interface $ZodJWTDef extends $ZodStringFormatDef<"jwt"> {
1027
- alg?: util.JWTAlgorithm | undefined;
1028
- }
1029
-
1030
- export interface $ZodJWTInternals extends $ZodStringFormatInternals<"jwt"> {
1031
- def: $ZodJWTDef;
1032
- }
1033
-
1034
- export interface $ZodJWT extends $ZodType {
1035
- _zod: $ZodJWTInternals;
1036
- }
1037
-
1038
- export const $ZodJWT: core.$constructor<$ZodJWT> = /*@__PURE__*/ core.$constructor("$ZodJWT", (inst, def): void => {
1039
- $ZodStringFormat.init(inst, def);
1040
- inst._zod.check = (payload) => {
1041
- if (isValidJWT(payload.value, def.alg)) return;
1042
-
1043
- payload.issues.push({
1044
- code: "invalid_format",
1045
- format: "jwt",
1046
- input: payload.value,
1047
- inst,
1048
- continue: !def.abort,
1049
- });
1050
- };
1051
- });
1052
-
1053
- ////////////////////////////// ZodCustomStringFormat //////////////////////////////
1054
-
1055
- export interface $ZodCustomStringFormatDef<Format extends string = string> extends $ZodStringFormatDef<Format> {
1056
- fn: (val: string) => unknown;
1057
- }
1058
-
1059
- export interface $ZodCustomStringFormatInternals<Format extends string = string>
1060
- extends $ZodStringFormatInternals<Format> {
1061
- def: $ZodCustomStringFormatDef<Format>;
1062
- }
1063
-
1064
- export interface $ZodCustomStringFormat<Format extends string = string> extends $ZodStringFormat<Format> {
1065
- _zod: $ZodCustomStringFormatInternals<Format>;
1066
- }
1067
-
1068
- export const $ZodCustomStringFormat: core.$constructor<$ZodCustomStringFormat> = /*@__PURE__*/ core.$constructor(
1069
- "$ZodCustomStringFormat",
1070
- (inst, def): void => {
1071
- $ZodStringFormat.init(inst, def);
1072
- inst._zod.check = (payload) => {
1073
- if (def.fn(payload.value)) return;
1074
-
1075
- payload.issues.push({
1076
- code: "invalid_format",
1077
- format: def.format,
1078
- input: payload.value,
1079
- inst,
1080
- continue: !def.abort,
1081
- });
1082
- };
1083
- }
1084
- );
1085
-
1086
- /////////////////////////////////////////
1087
- /////////////////////////////////////////
1088
- ////////// //////////
1089
- ////////// ZodNumber //////////
1090
- ////////// //////////
1091
- /////////////////////////////////////////
1092
- /////////////////////////////////////////
1093
-
1094
- export interface $ZodNumberDef extends $ZodTypeDef {
1095
- type: "number";
1096
- coerce?: boolean;
1097
- // checks: checks.$ZodCheck<number>[];
1098
- }
1099
-
1100
- export interface $ZodNumberInternals<Input = unknown> extends $ZodTypeInternals<number, Input> {
1101
- def: $ZodNumberDef;
1102
- /** @deprecated Internal API, use with caution (not deprecated) */
1103
- pattern: RegExp;
1104
- /** @deprecated Internal API, use with caution (not deprecated) */
1105
- isst: errors.$ZodIssueInvalidType;
1106
- bag: util.LoosePartial<{
1107
- minimum: number;
1108
- maximum: number;
1109
- exclusiveMinimum: number;
1110
- exclusiveMaximum: number;
1111
- format: string;
1112
- pattern: RegExp;
1113
- }>;
1114
- }
1115
-
1116
- export interface $ZodNumber<Input = unknown> extends $ZodType {
1117
- _zod: $ZodNumberInternals<Input>;
1118
- }
1119
-
1120
- export const $ZodNumber: core.$constructor<$ZodNumber> = /*@__PURE__*/ core.$constructor("$ZodNumber", (inst, def) => {
1121
- $ZodType.init(inst, def);
1122
-
1123
- inst._zod.pattern = inst._zod.bag.pattern ?? regexes.number;
1124
- inst._zod.parse = (payload, _ctx) => {
1125
- if (def.coerce)
1126
- try {
1127
- payload.value = Number(payload.value);
1128
- } catch (_) {}
1129
- const input = payload.value;
1130
- if (typeof input === "number" && !Number.isNaN(input) && Number.isFinite(input)) {
1131
- return payload;
1132
- }
1133
-
1134
- const received =
1135
- typeof input === "number"
1136
- ? Number.isNaN(input)
1137
- ? "NaN"
1138
- : !Number.isFinite(input)
1139
- ? "Infinity"
1140
- : undefined
1141
- : undefined;
1142
-
1143
- payload.issues.push({
1144
- expected: "number",
1145
- code: "invalid_type",
1146
-
1147
- input,
1148
- inst,
1149
- ...(received ? { received } : {}),
1150
- });
1151
- return payload;
1152
- };
1153
- });
1154
-
1155
- ///////////////////////////////////////////////
1156
- ////////// ZodNumberFormat //////////
1157
- ///////////////////////////////////////////////
1158
- export interface $ZodNumberFormatDef extends $ZodNumberDef, checks.$ZodCheckNumberFormatDef {}
1159
-
1160
- export interface $ZodNumberFormatInternals extends $ZodNumberInternals<number>, checks.$ZodCheckNumberFormatInternals {
1161
- def: $ZodNumberFormatDef;
1162
- isst: errors.$ZodIssueInvalidType;
1163
- }
1164
-
1165
- export interface $ZodNumberFormat extends $ZodType {
1166
- _zod: $ZodNumberFormatInternals;
1167
- }
1168
-
1169
- export const $ZodNumberFormat: core.$constructor<$ZodNumberFormat> = /*@__PURE__*/ core.$constructor(
1170
- "$ZodNumberFormat",
1171
- (inst, def) => {
1172
- checks.$ZodCheckNumberFormat.init(inst, def);
1173
- $ZodNumber.init(inst, def); // no format checks
1174
- }
1175
- );
1176
-
1177
- ///////////////////////////////////////////
1178
- ///////////////////////////////////////////
1179
- ////////// ///////////
1180
- ////////// $ZodBoolean //////////
1181
- ////////// ///////////
1182
- ///////////////////////////////////////////
1183
- ///////////////////////////////////////////
1184
-
1185
- export interface $ZodBooleanDef extends $ZodTypeDef {
1186
- type: "boolean";
1187
- coerce?: boolean;
1188
- checks?: checks.$ZodCheck<boolean>[];
1189
- }
1190
-
1191
- export interface $ZodBooleanInternals<T = unknown> extends $ZodTypeInternals<boolean, T> {
1192
- pattern: RegExp;
1193
- def: $ZodBooleanDef;
1194
- isst: errors.$ZodIssueInvalidType;
1195
- }
1196
-
1197
- export interface $ZodBoolean<T = unknown> extends $ZodType {
1198
- _zod: $ZodBooleanInternals<T>;
1199
- }
1200
-
1201
- export const $ZodBoolean: core.$constructor<$ZodBoolean> = /*@__PURE__*/ core.$constructor(
1202
- "$ZodBoolean",
1203
- (inst, def) => {
1204
- $ZodType.init(inst, def);
1205
- inst._zod.pattern = regexes.boolean;
1206
-
1207
- inst._zod.parse = (payload, _ctx) => {
1208
- if (def.coerce)
1209
- try {
1210
- payload.value = Boolean(payload.value);
1211
- } catch (_) {}
1212
- const input = payload.value;
1213
- if (typeof input === "boolean") return payload;
1214
- payload.issues.push({
1215
- expected: "boolean",
1216
- code: "invalid_type",
1217
-
1218
- input,
1219
- inst,
1220
- });
1221
- return payload;
1222
- };
1223
- }
1224
- );
1225
-
1226
- //////////////////////////////////////////
1227
- //////////////////////////////////////////
1228
- ////////// //////////
1229
- ////////// $ZodBigInt //////////
1230
- ////////// //////////
1231
- //////////////////////////////////////////
1232
- //////////////////////////////////////////
1233
-
1234
- export interface $ZodBigIntDef extends $ZodTypeDef {
1235
- type: "bigint";
1236
- coerce?: boolean;
1237
- // checks: checks.$ZodCheck<bigint>[];
1238
- }
1239
-
1240
- export interface $ZodBigIntInternals<T = unknown> extends $ZodTypeInternals<bigint, T> {
1241
- pattern: RegExp;
1242
- /** @internal Internal API, use with caution */
1243
- def: $ZodBigIntDef;
1244
- isst: errors.$ZodIssueInvalidType;
1245
- bag: util.LoosePartial<{
1246
- minimum: bigint;
1247
- maximum: bigint;
1248
- format: string;
1249
- }>;
1250
- }
1251
-
1252
- export interface $ZodBigInt<T = unknown> extends $ZodType {
1253
- _zod: $ZodBigIntInternals<T>;
1254
- }
1255
-
1256
- export const $ZodBigInt: core.$constructor<$ZodBigInt> = /*@__PURE__*/ core.$constructor("$ZodBigInt", (inst, def) => {
1257
- $ZodType.init(inst, def);
1258
- inst._zod.pattern = regexes.bigint;
1259
-
1260
- inst._zod.parse = (payload, _ctx) => {
1261
- if (def.coerce)
1262
- try {
1263
- payload.value = BigInt(payload.value);
1264
- } catch (_) {}
1265
-
1266
- if (typeof payload.value === "bigint") return payload;
1267
- payload.issues.push({
1268
- expected: "bigint",
1269
- code: "invalid_type",
1270
-
1271
- input: payload.value,
1272
- inst,
1273
- });
1274
- return payload;
1275
- };
1276
- });
1277
-
1278
- ///////////////////////////////////////////////
1279
- ////////// ZodBigIntFormat //////////
1280
- ///////////////////////////////////////////////
1281
- export interface $ZodBigIntFormatDef extends $ZodBigIntDef, checks.$ZodCheckBigIntFormatDef {
1282
- check: "bigint_format";
1283
- }
1284
-
1285
- export interface $ZodBigIntFormatInternals extends $ZodBigIntInternals<bigint>, checks.$ZodCheckBigIntFormatInternals {
1286
- def: $ZodBigIntFormatDef;
1287
- }
1288
-
1289
- export interface $ZodBigIntFormat extends $ZodType {
1290
- _zod: $ZodBigIntFormatInternals;
1291
- }
1292
-
1293
- export const $ZodBigIntFormat: core.$constructor<$ZodBigIntFormat> = /*@__PURE__*/ core.$constructor(
1294
- "$ZodBigIntFormat",
1295
- (inst, def) => {
1296
- checks.$ZodCheckBigIntFormat.init(inst, def);
1297
- $ZodBigInt.init(inst, def); // no format checks
1298
- }
1299
- );
1300
-
1301
- ////////////////////////////////////////////
1302
- ////////////////////////////////////////////
1303
- ////////// //////////
1304
- ////////// $ZodSymbol //////////
1305
- ////////// //////////
1306
- ////////////////////////////////////////////
1307
- ////////////////////////////////////////////
1308
- export interface $ZodSymbolDef extends $ZodTypeDef {
1309
- type: "symbol";
1310
- }
1311
-
1312
- export interface $ZodSymbolInternals extends $ZodTypeInternals<symbol, symbol> {
1313
- def: $ZodSymbolDef;
1314
- isst: errors.$ZodIssueInvalidType;
1315
- }
1316
-
1317
- export interface $ZodSymbol extends $ZodType {
1318
- _zod: $ZodSymbolInternals;
1319
- }
1320
-
1321
- export const $ZodSymbol: core.$constructor<$ZodSymbol> = /*@__PURE__*/ core.$constructor("$ZodSymbol", (inst, def) => {
1322
- $ZodType.init(inst, def);
1323
-
1324
- inst._zod.parse = (payload, _ctx) => {
1325
- const input = payload.value;
1326
- if (typeof input === "symbol") return payload;
1327
- payload.issues.push({
1328
- expected: "symbol",
1329
- code: "invalid_type",
1330
-
1331
- input,
1332
- inst,
1333
- });
1334
- return payload;
1335
- };
1336
- });
1337
-
1338
- ////////////////////////////////////////////
1339
- ////////////////////////////////////////////
1340
- ////////// //////////
1341
- ////////// $ZodUndefined //////////
1342
- ////////// //////////
1343
- ////////////////////////////////////////////
1344
- ////////////////////////////////////////////
1345
- export interface $ZodUndefinedDef extends $ZodTypeDef {
1346
- type: "undefined";
1347
- }
1348
-
1349
- export interface $ZodUndefinedInternals extends $ZodTypeInternals<undefined, undefined> {
1350
- pattern: RegExp;
1351
- def: $ZodUndefinedDef;
1352
- values: util.PrimitiveSet;
1353
- isst: errors.$ZodIssueInvalidType;
1354
- }
1355
-
1356
- export interface $ZodUndefined extends $ZodType {
1357
- _zod: $ZodUndefinedInternals;
1358
- }
1359
-
1360
- export const $ZodUndefined: core.$constructor<$ZodUndefined> = /*@__PURE__*/ core.$constructor(
1361
- "$ZodUndefined",
1362
- (inst, def) => {
1363
- $ZodType.init(inst, def);
1364
- inst._zod.pattern = regexes.undefined;
1365
- inst._zod.values = new Set([undefined]);
1366
-
1367
- inst._zod.parse = (payload, _ctx) => {
1368
- const input = payload.value;
1369
- if (typeof input === "undefined") return payload;
1370
- payload.issues.push({
1371
- expected: "undefined",
1372
- code: "invalid_type",
1373
-
1374
- input,
1375
- inst,
1376
- });
1377
- return payload;
1378
- };
1379
- }
1380
- );
1381
-
1382
- ///////////////////////////////////////
1383
- ///////////////////////////////////////
1384
- ////////// //////////
1385
- ////////// $ZodNull /////////
1386
- ////////// //////////
1387
- ///////////////////////////////////////
1388
- ///////////////////////////////////////
1389
-
1390
- export interface $ZodNullDef extends $ZodTypeDef {
1391
- type: "null";
1392
- }
1393
-
1394
- export interface $ZodNullInternals extends $ZodTypeInternals<null, null> {
1395
- pattern: RegExp;
1396
- def: $ZodNullDef;
1397
- values: util.PrimitiveSet;
1398
- isst: errors.$ZodIssueInvalidType;
1399
- }
1400
-
1401
- export interface $ZodNull extends $ZodType {
1402
- _zod: $ZodNullInternals;
1403
- }
1404
-
1405
- export const $ZodNull: core.$constructor<$ZodNull> = /*@__PURE__*/ core.$constructor("$ZodNull", (inst, def) => {
1406
- $ZodType.init(inst, def);
1407
- inst._zod.pattern = regexes.null;
1408
- inst._zod.values = new Set([null]);
1409
-
1410
- inst._zod.parse = (payload, _ctx) => {
1411
- const input = payload.value;
1412
- if (input === null) return payload;
1413
- payload.issues.push({
1414
- expected: "null",
1415
- code: "invalid_type",
1416
-
1417
- input,
1418
- inst,
1419
- });
1420
- return payload;
1421
- };
1422
- });
1423
-
1424
- //////////////////////////////////////
1425
- //////////////////////////////////////
1426
- ////////// //////////
1427
- ////////// $ZodAny //////////
1428
- ////////// //////////
1429
- //////////////////////////////////////
1430
- //////////////////////////////////////
1431
-
1432
- export interface $ZodAnyDef extends $ZodTypeDef {
1433
- type: "any";
1434
- }
1435
-
1436
- export interface $ZodAnyInternals extends $ZodTypeInternals<any, any> {
1437
- def: $ZodAnyDef;
1438
- isst: never;
1439
- }
1440
-
1441
- export interface $ZodAny extends $ZodType {
1442
- _zod: $ZodAnyInternals;
1443
- }
1444
-
1445
- export const $ZodAny: core.$constructor<$ZodAny> = /*@__PURE__*/ core.$constructor("$ZodAny", (inst, def) => {
1446
- $ZodType.init(inst, def);
1447
-
1448
- inst._zod.parse = (payload) => payload;
1449
- });
1450
-
1451
- //////////////////////////////////////////
1452
- //////////////////////////////////////////
1453
- ////////// //////////
1454
- ////////// $ZodUnknown //////////
1455
- ////////// //////////
1456
- //////////////////////////////////////////
1457
- //////////////////////////////////////////
1458
-
1459
- export interface $ZodUnknownDef extends $ZodTypeDef {
1460
- type: "unknown";
1461
- }
1462
-
1463
- export interface $ZodUnknownInternals extends $ZodTypeInternals<unknown, unknown> {
1464
- def: $ZodUnknownDef;
1465
- isst: never;
1466
- }
1467
-
1468
- export interface $ZodUnknown extends $ZodType {
1469
- _zod: $ZodUnknownInternals;
1470
- }
1471
-
1472
- export const $ZodUnknown: core.$constructor<$ZodUnknown> = /*@__PURE__*/ core.$constructor(
1473
- "$ZodUnknown",
1474
- (inst, def) => {
1475
- $ZodType.init(inst, def);
1476
-
1477
- inst._zod.parse = (payload) => payload;
1478
- }
1479
- );
1480
-
1481
- /////////////////////////////////////////
1482
- /////////////////////////////////////////
1483
- ////////// //////////
1484
- ////////// $ZodNever //////////
1485
- ////////// //////////
1486
- /////////////////////////////////////////
1487
- /////////////////////////////////////////
1488
-
1489
- export interface $ZodNeverDef extends $ZodTypeDef {
1490
- type: "never";
1491
- }
1492
-
1493
- export interface $ZodNeverInternals extends $ZodTypeInternals<never, never> {
1494
- def: $ZodNeverDef;
1495
- isst: errors.$ZodIssueInvalidType;
1496
- }
1497
-
1498
- export interface $ZodNever extends $ZodType {
1499
- _zod: $ZodNeverInternals;
1500
- }
1501
-
1502
- export const $ZodNever: core.$constructor<$ZodNever> = /*@__PURE__*/ core.$constructor("$ZodNever", (inst, def) => {
1503
- $ZodType.init(inst, def);
1504
- inst._zod.parse = (payload, _ctx) => {
1505
- payload.issues.push({
1506
- expected: "never",
1507
- code: "invalid_type",
1508
-
1509
- input: payload.value,
1510
- inst,
1511
- });
1512
- return payload;
1513
- };
1514
- });
1515
-
1516
- ////////////////////////////////////////
1517
- ////////////////////////////////////////
1518
- ////////// //////////
1519
- ////////// $ZodVoid //////////
1520
- ////////// //////////
1521
- ////////////////////////////////////////
1522
- ////////////////////////////////////////
1523
-
1524
- export interface $ZodVoidDef extends $ZodTypeDef {
1525
- type: "void";
1526
- }
1527
-
1528
- export interface $ZodVoidInternals extends $ZodTypeInternals<void, void> {
1529
- def: $ZodVoidDef;
1530
- isst: errors.$ZodIssueInvalidType;
1531
- }
1532
-
1533
- export interface $ZodVoid extends $ZodType {
1534
- _zod: $ZodVoidInternals;
1535
- }
1536
-
1537
- export const $ZodVoid: core.$constructor<$ZodVoid> = /*@__PURE__*/ core.$constructor("$ZodVoid", (inst, def) => {
1538
- $ZodType.init(inst, def);
1539
-
1540
- inst._zod.parse = (payload, _ctx) => {
1541
- const input = payload.value;
1542
- if (typeof input === "undefined") return payload;
1543
- payload.issues.push({
1544
- expected: "void",
1545
- code: "invalid_type",
1546
-
1547
- input,
1548
- inst,
1549
- });
1550
- return payload;
1551
- };
1552
- });
1553
-
1554
- ///////////////////////////////////////
1555
- ///////////////////////////////////////
1556
- ////////// ////////
1557
- ////////// $ZodDate ////////
1558
- ////////// ////////
1559
- ///////////////////////////////////////
1560
- ///////////////////////////////////////
1561
- export interface $ZodDateDef extends $ZodTypeDef {
1562
- type: "date";
1563
- coerce?: boolean;
1564
- }
1565
-
1566
- export interface $ZodDateInternals<T = unknown> extends $ZodTypeInternals<Date, T> {
1567
- def: $ZodDateDef;
1568
- isst: errors.$ZodIssueInvalidType; // | errors.$ZodIssueInvalidDate;
1569
- bag: util.LoosePartial<{
1570
- minimum: Date;
1571
- maximum: Date;
1572
- format: string;
1573
- }>;
1574
- }
1575
-
1576
- export interface $ZodDate<T = unknown> extends $ZodType {
1577
- _zod: $ZodDateInternals<T>;
1578
- }
1579
-
1580
- export const $ZodDate: core.$constructor<$ZodDate> = /*@__PURE__*/ core.$constructor("$ZodDate", (inst, def) => {
1581
- $ZodType.init(inst, def);
1582
-
1583
- inst._zod.parse = (payload, _ctx) => {
1584
- if (def.coerce) {
1585
- try {
1586
- payload.value = new Date(payload.value as string | number | Date);
1587
- } catch (_err: any) {}
1588
- }
1589
- const input = payload.value;
1590
-
1591
- const isDate = input instanceof Date;
1592
- const isValidDate = isDate && !Number.isNaN(input.getTime());
1593
- if (isValidDate) return payload;
1594
- payload.issues.push({
1595
- expected: "date",
1596
- code: "invalid_type",
1597
-
1598
- input,
1599
- ...(isDate ? { received: "Invalid Date" } : {}),
1600
- inst,
1601
- });
1602
-
1603
- return payload;
1604
- };
1605
- });
1606
-
1607
- /////////////////////////////////////////
1608
- /////////////////////////////////////////
1609
- ////////// //////////
1610
- ////////// $ZodArray //////////
1611
- ////////// //////////
1612
- /////////////////////////////////////////
1613
- /////////////////////////////////////////
1614
-
1615
- export interface $ZodArrayDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
1616
- type: "array";
1617
- element: T;
1618
- }
1619
-
1620
- export interface $ZodArrayInternals<T extends SomeType = $ZodType> extends _$ZodTypeInternals {
1621
- //$ZodTypeInternals<core.output<T>[], core.input<T>[]> {
1622
- def: $ZodArrayDef<T>;
1623
- isst: errors.$ZodIssueInvalidType;
1624
- output: core.output<T>[];
1625
- input: core.input<T>[];
1626
- }
1627
-
1628
- export interface $ZodArray<T extends SomeType = $ZodType> extends $ZodType<any, any, $ZodArrayInternals<T>> {}
1629
-
1630
- function handleArrayResult(result: ParsePayload<any>, final: ParsePayload<any[]>, index: number) {
1631
- if (result.issues.length) {
1632
- final.issues.push(...util.prefixIssues(index, result.issues));
1633
- }
1634
- final.value[index] = result.value;
1635
- }
1636
-
1637
- export const $ZodArray: core.$constructor<$ZodArray> = /*@__PURE__*/ core.$constructor("$ZodArray", (inst, def) => {
1638
- $ZodType.init(inst, def);
1639
-
1640
- inst._zod.parse = (payload, ctx) => {
1641
- const input = payload.value;
1642
-
1643
- if (!Array.isArray(input)) {
1644
- payload.issues.push({
1645
- expected: "array",
1646
- code: "invalid_type",
1647
-
1648
- input,
1649
- inst,
1650
- });
1651
- return payload;
1652
- }
1653
-
1654
- payload.value = Array(input.length);
1655
- const proms: Promise<any>[] = [];
1656
- for (let i = 0; i < input.length; i++) {
1657
- const item = input[i];
1658
- const result = def.element._zod.run(
1659
- {
1660
- value: item,
1661
- issues: [],
1662
- },
1663
- ctx
1664
- );
1665
-
1666
- if (result instanceof Promise) {
1667
- proms.push(result.then((result) => handleArrayResult(result, payload, i)));
1668
- } else {
1669
- handleArrayResult(result, payload, i);
1670
- }
1671
- }
1672
-
1673
- if (proms.length) {
1674
- return Promise.all(proms).then(() => payload);
1675
- }
1676
-
1677
- return payload; //handleArrayResultsAsync(parseResults, final);
1678
- };
1679
- });
1680
-
1681
- //////////////////////////////////////////
1682
- //////////////////////////////////////////
1683
- ////////// //////////
1684
- ////////// $ZodObject //////////
1685
- ////////// //////////
1686
- //////////////////////////////////////////
1687
- //////////////////////////////////////////
1688
-
1689
- type OptionalOutSchema = { _zod: { optout: "optional" } };
1690
- type OptionalInSchema = { _zod: { optin: "optional" } };
1691
-
1692
- export type $InferObjectOutput<T extends $ZodLooseShape, Extra extends Record<string, unknown>> = string extends keyof T
1693
- ? util.IsAny<T[keyof T]> extends true
1694
- ? Record<string, unknown>
1695
- : Record<string, core.output<T[keyof T]>>
1696
- : keyof (T & Extra) extends never
1697
- ? Record<string, never>
1698
- : util.Prettify<
1699
- {
1700
- -readonly [k in keyof T as T[k] extends OptionalOutSchema ? never : k]: T[k]["_zod"]["output"];
1701
- } & {
1702
- -readonly [k in keyof T as T[k] extends OptionalOutSchema ? k : never]?: T[k]["_zod"]["output"];
1703
- } & Extra
1704
- >;
1705
-
1706
- // experimental
1707
- // export type $InferObjectOutput<T extends $ZodLooseShape, Extra extends Record<string, unknown>> = keyof (T &
1708
- // Extra) extends never
1709
- // ? Record<string, never>
1710
- // : string extends keyof T
1711
- // ? util.Prettify<
1712
- // {
1713
- // [k: string]: util.IsAny<T[string]["_zod"]["output"]> extends true ? unknown : T[string]["_zod"]["output"];
1714
- // } & $InferObjectOutputNoIndex<util.OmitIndexSignature<T>, Extra>
1715
- // >
1716
- // : util.Prettify<$InferObjectOutputNoIndex<T, Extra>>;
1717
-
1718
- // export type $InferObjectOutputNoIndex<T extends $ZodLooseShape, Extra extends Record<string, unknown>> = {
1719
- // [k in keyof T as string extends k
1720
- // ? never
1721
- // : k extends string
1722
- // ? T[k] extends OptionalOutSchema
1723
- // ? never
1724
- // : k
1725
- // : never]: T[k]["_zod"]["output"];
1726
- // } & {
1727
- // [k in keyof T as string extends k
1728
- // ? never
1729
- // : k extends string
1730
- // ? T[k] extends OptionalOutSchema
1731
- // ? k
1732
- // : never
1733
- // : never]?: T[k]["_zod"]["output"];
1734
- // } & Extra;
1735
-
1736
- export type $InferObjectInput<T extends $ZodLooseShape, Extra extends Record<string, unknown>> = string extends keyof T
1737
- ? util.IsAny<T[keyof T]> extends true
1738
- ? Record<string, unknown>
1739
- : Record<string, core.input<T[keyof T]>>
1740
- : keyof (T & Extra) extends never
1741
- ? Record<string, never>
1742
- : util.Prettify<
1743
- {
1744
- -readonly [k in keyof T as T[k] extends OptionalInSchema ? never : k]: T[k]["_zod"]["input"];
1745
- } & {
1746
- -readonly [k in keyof T as T[k] extends OptionalInSchema ? k : never]?: T[k]["_zod"]["input"];
1747
- } & Extra
1748
- >;
1749
-
1750
- function handlePropertyResult(
1751
- result: ParsePayload,
1752
- final: ParsePayload,
1753
- key: PropertyKey,
1754
- input: any,
1755
- isOptionalIn: boolean,
1756
- isOptionalOut: boolean
1757
- ) {
1758
- const isPresent = key in input;
1759
- if (result.issues.length) {
1760
- // For optional-in/out schemas, ignore errors on absent keys.
1761
- if (isOptionalIn && isOptionalOut && !isPresent) {
1762
- return;
1763
- }
1764
- final.issues.push(...util.prefixIssues(key, result.issues));
1765
- }
1766
-
1767
- if (!isPresent && !isOptionalIn) {
1768
- if (!result.issues.length) {
1769
- final.issues.push({
1770
- code: "invalid_type",
1771
- expected: "nonoptional",
1772
- input: undefined,
1773
- path: [key],
1774
- });
1775
- }
1776
- return;
1777
- }
1778
-
1779
- if (result.value === undefined) {
1780
- if (isPresent) {
1781
- (final.value as any)[key] = undefined;
1782
- }
1783
- } else {
1784
- (final.value as any)[key] = result.value;
1785
- }
1786
- }
1787
-
1788
- export type $ZodObjectConfig = { out: Record<string, unknown>; in: Record<string, unknown> };
1789
-
1790
- export type $loose = {
1791
- out: Record<string, unknown>;
1792
- in: Record<string, unknown>;
1793
- };
1794
- export type $strict = {
1795
- out: {};
1796
- in: {};
1797
- };
1798
- export type $strip = {
1799
- out: {};
1800
- in: {};
1801
- };
1802
-
1803
- export type $catchall<T extends SomeType> = {
1804
- out: { [k: string]: core.output<T> };
1805
- in: { [k: string]: core.input<T> };
1806
- };
1807
-
1808
- export type $ZodShape = Readonly<{ [k: string]: $ZodType }>;
1809
-
1810
- export interface $ZodObjectDef<Shape extends $ZodShape = $ZodShape> extends $ZodTypeDef {
1811
- type: "object";
1812
- shape: Shape;
1813
- catchall?: $ZodType | undefined;
1814
- }
1815
-
1816
- export interface $ZodObjectInternals<
1817
- /** @ts-ignore Cast variance */
1818
- out Shape extends $ZodShape = $ZodShape,
1819
- out Config extends $ZodObjectConfig = $ZodObjectConfig,
1820
- > extends _$ZodTypeInternals {
1821
- def: $ZodObjectDef<Shape>;
1822
- config: Config;
1823
- isst: errors.$ZodIssueInvalidType | errors.$ZodIssueUnrecognizedKeys;
1824
- propValues: util.PropValues;
1825
- output: $InferObjectOutput<Shape, Config["out"]>;
1826
- input: $InferObjectInput<Shape, Config["in"]>;
1827
- optin?: "optional" | undefined;
1828
- optout?: "optional" | undefined;
1829
- }
1830
- export type $ZodLooseShape = Record<string, any>;
1831
-
1832
- export interface $ZodObject<
1833
- /** @ts-ignore Cast variance */
1834
- out Shape extends Readonly<$ZodShape> = Readonly<$ZodShape>,
1835
- out Params extends $ZodObjectConfig = $ZodObjectConfig,
1836
- > extends $ZodType<any, any, $ZodObjectInternals<Shape, Params>> {}
1837
-
1838
- function normalizeDef(def: $ZodObjectDef) {
1839
- const keys = Object.keys(def.shape);
1840
- for (const k of keys) {
1841
- if (!def.shape?.[k]?._zod?.traits?.has("$ZodType")) {
1842
- throw new Error(`Invalid element at key "${k}": expected a Zod schema`);
1843
- }
1844
- }
1845
- const okeys = util.optionalKeys(def.shape);
1846
-
1847
- return {
1848
- ...def,
1849
- keys,
1850
- keySet: new Set(keys),
1851
- numKeys: keys.length,
1852
- optionalKeys: new Set(okeys),
1853
- };
1854
- }
1855
-
1856
- function handleCatchall(
1857
- proms: Promise<any>[],
1858
- input: any,
1859
- payload: ParsePayload,
1860
- ctx: ParseContext,
1861
- def: ReturnType<typeof normalizeDef>,
1862
- inst: $ZodObject
1863
- ) {
1864
- const unrecognized: string[] = [];
1865
- const keySet = def.keySet;
1866
- const _catchall = def.catchall!._zod;
1867
- const t = _catchall.def.type;
1868
- const isOptionalIn = _catchall.optin === "optional";
1869
- const isOptionalOut = _catchall.optout === "optional";
1870
- for (const key in input) {
1871
- // skip __proto__ so it can't replace the result prototype via the
1872
- // assignment setter on the plain {} we build into
1873
- if (key === "__proto__") continue;
1874
- if (keySet.has(key)) continue;
1875
- if (t === "never") {
1876
- unrecognized.push(key);
1877
- continue;
1878
- }
1879
- const r = _catchall.run({ value: input[key], issues: [] }, ctx);
1880
-
1881
- if (r instanceof Promise) {
1882
- proms.push(r.then((r) => handlePropertyResult(r, payload, key, input, isOptionalIn, isOptionalOut)));
1883
- } else {
1884
- handlePropertyResult(r, payload, key, input, isOptionalIn, isOptionalOut);
1885
- }
1886
- }
1887
-
1888
- if (unrecognized.length) {
1889
- payload.issues.push({
1890
- code: "unrecognized_keys",
1891
- keys: unrecognized,
1892
- input,
1893
- inst,
1894
- });
1895
- }
1896
-
1897
- if (!proms.length) return payload;
1898
- return Promise.all(proms).then(() => {
1899
- return payload;
1900
- });
1901
- }
1902
-
1903
- export const $ZodObject: core.$constructor<$ZodObject> = /*@__PURE__*/ core.$constructor("$ZodObject", (inst, def) => {
1904
- // requires cast because technically $ZodObject doesn't extend
1905
- $ZodType.init(inst, def);
1906
- // const sh = def.shape;
1907
- const desc = Object.getOwnPropertyDescriptor(def, "shape");
1908
- if (!desc?.get) {
1909
- const sh = def.shape;
1910
- Object.defineProperty(def, "shape", {
1911
- get: () => {
1912
- const newSh = { ...sh };
1913
- Object.defineProperty(def, "shape", {
1914
- value: newSh,
1915
- });
1916
-
1917
- return newSh;
1918
- },
1919
- });
1920
- }
1921
-
1922
- const _normalized = util.cached(() => normalizeDef(def));
1923
-
1924
- util.defineLazy(inst._zod, "propValues", () => {
1925
- const shape = def.shape;
1926
- const propValues: util.PropValues = {};
1927
- for (const key in shape) {
1928
- const field = shape[key]!._zod;
1929
- if (field.values) {
1930
- propValues[key] ??= new Set();
1931
- for (const v of field.values) propValues[key].add(v);
1932
- }
1933
- }
1934
- return propValues;
1935
- });
1936
-
1937
- const isObject = util.isObject;
1938
- const catchall = def.catchall;
1939
-
1940
- let value!: typeof _normalized.value;
1941
-
1942
- inst._zod.parse = (payload, ctx) => {
1943
- value ??= _normalized.value;
1944
- const input = payload.value;
1945
- if (!isObject(input)) {
1946
- payload.issues.push({
1947
- expected: "object",
1948
- code: "invalid_type",
1949
- input,
1950
- inst,
1951
- });
1952
- return payload;
1953
- }
1954
-
1955
- payload.value = {};
1956
-
1957
- const proms: Promise<any>[] = [];
1958
- const shape = value.shape;
1959
-
1960
- for (const key of value.keys) {
1961
- const el = shape[key]!;
1962
- const isOptionalIn = el._zod.optin === "optional";
1963
- const isOptionalOut = el._zod.optout === "optional";
1964
-
1965
- const r = el._zod.run({ value: input[key], issues: [] }, ctx);
1966
- if (r instanceof Promise) {
1967
- proms.push(r.then((r) => handlePropertyResult(r, payload, key, input, isOptionalIn, isOptionalOut)));
1968
- } else {
1969
- handlePropertyResult(r, payload, key, input, isOptionalIn, isOptionalOut);
1970
- }
1971
- }
1972
-
1973
- if (!catchall) {
1974
- return proms.length ? Promise.all(proms).then(() => payload) : payload;
1975
- }
1976
-
1977
- return handleCatchall(proms, input, payload, ctx, _normalized.value, inst);
1978
- };
1979
- });
1980
-
1981
- export const $ZodObjectJIT: core.$constructor<$ZodObject> = /*@__PURE__*/ core.$constructor(
1982
- "$ZodObjectJIT",
1983
- (inst, def) => {
1984
- // requires cast because technically $ZodObject doesn't extend
1985
- $ZodObject.init(inst, def);
1986
-
1987
- const superParse = inst._zod.parse;
1988
- const _normalized = util.cached(() => normalizeDef(def));
1989
-
1990
- const generateFastpass = (shape: any) => {
1991
- const doc = new Doc(["shape", "payload", "ctx"]);
1992
- const normalized = _normalized.value;
1993
-
1994
- const parseStr = (key: string) => {
1995
- const k = util.esc(key);
1996
- return `shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`;
1997
- };
1998
-
1999
- doc.write(`const input = payload.value;`);
2000
-
2001
- const ids: any = Object.create(null);
2002
- let counter = 0;
2003
- for (const key of normalized.keys) {
2004
- ids[key] = `key_${counter++}`;
2005
- }
2006
-
2007
- // A: preserve key order {
2008
- doc.write(`const newResult = {};`);
2009
- for (const key of normalized.keys) {
2010
- const id = ids[key];
2011
- const k = util.esc(key);
2012
- const schema = shape[key];
2013
- const isOptionalIn = schema?._zod?.optin === "optional";
2014
- const isOptionalOut = schema?._zod?.optout === "optional";
2015
-
2016
- doc.write(`const ${id} = ${parseStr(key)};`);
2017
-
2018
- if (isOptionalIn && isOptionalOut) {
2019
- // For optional-in/out schemas, ignore errors on absent keys
2020
- doc.write(`
2021
- if (${id}.issues.length) {
2022
- if (${k} in input) {
2023
- payload.issues = payload.issues.concat(${id}.issues.map(iss => ({
2024
- ...iss,
2025
- path: iss.path ? [${k}, ...iss.path] : [${k}]
2026
- })));
2027
- }
2028
- }
2029
-
2030
- if (${id}.value === undefined) {
2031
- if (${k} in input) {
2032
- newResult[${k}] = undefined;
2033
- }
2034
- } else {
2035
- newResult[${k}] = ${id}.value;
2036
- }
2037
-
2038
- `);
2039
- } else if (!isOptionalIn) {
2040
- doc.write(`
2041
- const ${id}_present = ${k} in input;
2042
- if (${id}.issues.length) {
2043
- payload.issues = payload.issues.concat(${id}.issues.map(iss => ({
2044
- ...iss,
2045
- path: iss.path ? [${k}, ...iss.path] : [${k}]
2046
- })));
2047
- }
2048
- if (!${id}_present && !${id}.issues.length) {
2049
- payload.issues.push({
2050
- code: "invalid_type",
2051
- expected: "nonoptional",
2052
- input: undefined,
2053
- path: [${k}]
2054
- });
2055
- }
2056
-
2057
- if (${id}_present) {
2058
- if (${id}.value === undefined) {
2059
- newResult[${k}] = undefined;
2060
- } else {
2061
- newResult[${k}] = ${id}.value;
2062
- }
2063
- }
2064
-
2065
- `);
2066
- } else {
2067
- doc.write(`
2068
- if (${id}.issues.length) {
2069
- payload.issues = payload.issues.concat(${id}.issues.map(iss => ({
2070
- ...iss,
2071
- path: iss.path ? [${k}, ...iss.path] : [${k}]
2072
- })));
2073
- }
2074
-
2075
- if (${id}.value === undefined) {
2076
- if (${k} in input) {
2077
- newResult[${k}] = undefined;
2078
- }
2079
- } else {
2080
- newResult[${k}] = ${id}.value;
2081
- }
2082
-
2083
- `);
2084
- }
2085
- }
2086
-
2087
- doc.write(`payload.value = newResult;`);
2088
- doc.write(`return payload;`);
2089
- const fn = doc.compile();
2090
- return (payload: any, ctx: any) => fn(shape, payload, ctx);
2091
- };
2092
-
2093
- let fastpass!: ReturnType<typeof generateFastpass>;
2094
-
2095
- const isObject = util.isObject;
2096
- const jit = !core.globalConfig.jitless;
2097
- const allowsEval = util.allowsEval;
2098
-
2099
- const fastEnabled = jit && allowsEval.value; // && !def.catchall;
2100
- const catchall = def.catchall;
2101
-
2102
- let value!: typeof _normalized.value;
2103
-
2104
- inst._zod.parse = (payload, ctx) => {
2105
- value ??= _normalized.value;
2106
- const input = payload.value;
2107
- if (!isObject(input)) {
2108
- payload.issues.push({
2109
- expected: "object",
2110
- code: "invalid_type",
2111
- input,
2112
- inst,
2113
- });
2114
- return payload;
2115
- }
2116
-
2117
- if (jit && fastEnabled && ctx?.async === false && ctx.jitless !== true) {
2118
- // always synchronous
2119
- if (!fastpass) fastpass = generateFastpass(def.shape);
2120
- payload = fastpass(payload, ctx);
2121
-
2122
- if (!catchall) return payload;
2123
- return handleCatchall([], input, payload, ctx, value, inst);
2124
- }
2125
-
2126
- return superParse(payload, ctx);
2127
- };
2128
- }
2129
- );
2130
-
2131
- /////////////////////////////////////////
2132
- /////////////////////////////////////////
2133
- ////////// ///////////
2134
- ////////// $ZodUnion //////////
2135
- ////////// ///////////
2136
- /////////////////////////////////////////
2137
- /////////////////////////////////////////
2138
- // use generic to distribute union types
2139
- export type $InferUnionOutput<T extends SomeType> = T extends any ? core.output<T> : never;
2140
- export type $InferUnionInput<T extends SomeType> = T extends any ? core.input<T> : never;
2141
- export interface $ZodUnionDef<Options extends readonly SomeType[] = readonly $ZodType[]> extends $ZodTypeDef {
2142
- type: "union";
2143
- options: Options;
2144
- inclusive?: boolean;
2145
- }
2146
-
2147
- type IsOptionalIn<T extends SomeType> = T extends OptionalInSchema ? true : false;
2148
- type IsOptionalOut<T extends SomeType> = T extends OptionalOutSchema ? true : false;
2149
-
2150
- export interface $ZodUnionInternals<T extends readonly SomeType[] = readonly $ZodType[]> extends _$ZodTypeInternals {
2151
- def: $ZodUnionDef<T>;
2152
- isst: errors.$ZodIssueInvalidUnion;
2153
- pattern: T[number]["_zod"]["pattern"];
2154
- values: T[number]["_zod"]["values"]; //GetValues<T[number]>;
2155
- output: $InferUnionOutput<T[number]>;
2156
- input: $InferUnionInput<T[number]>;
2157
- // if any element in the union is optional, then the union is optional
2158
- optin: IsOptionalIn<T[number]> extends false ? "optional" | undefined : "optional";
2159
- optout: IsOptionalOut<T[number]> extends false ? "optional" | undefined : "optional";
2160
- }
2161
-
2162
- export interface $ZodUnion<T extends readonly SomeType[] = readonly $ZodType[]>
2163
- extends $ZodType<any, any, $ZodUnionInternals<T>> {
2164
- _zod: $ZodUnionInternals<T>;
2165
- }
2166
-
2167
- function handleUnionResults(results: ParsePayload[], final: ParsePayload, inst: $ZodUnion, ctx?: ParseContext) {
2168
- for (const result of results) {
2169
- if (result.issues.length === 0) {
2170
- final.value = result.value;
2171
- return final;
2172
- }
2173
- }
2174
-
2175
- const nonaborted = results.filter((r) => !util.aborted(r));
2176
- if (nonaborted.length === 1) {
2177
- final.value = nonaborted[0].value;
2178
- return nonaborted[0];
2179
- }
2180
-
2181
- final.issues.push({
2182
- code: "invalid_union",
2183
-
2184
- input: final.value,
2185
- inst,
2186
- errors: results.map((result) => result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config()))),
2187
- });
2188
-
2189
- return final;
2190
- }
2191
-
2192
- export const $ZodUnion: core.$constructor<$ZodUnion> = /*@__PURE__*/ core.$constructor("$ZodUnion", (inst, def) => {
2193
- $ZodType.init(inst, def);
2194
-
2195
- util.defineLazy(inst._zod, "optin", () =>
2196
- def.options.some((o) => o._zod.optin === "optional") ? "optional" : undefined
2197
- );
2198
-
2199
- util.defineLazy(inst._zod, "optout", () =>
2200
- def.options.some((o) => o._zod.optout === "optional") ? "optional" : undefined
2201
- );
2202
-
2203
- util.defineLazy(inst._zod, "values", () => {
2204
- if (def.options.every((o) => o._zod.values)) {
2205
- return new Set<util.Primitive>(def.options.flatMap((option) => Array.from(option._zod.values!)));
2206
- }
2207
- return undefined;
2208
- });
2209
-
2210
- util.defineLazy(inst._zod, "pattern", () => {
2211
- if (def.options.every((o) => o._zod.pattern)) {
2212
- const patterns = def.options.map((o) => o._zod.pattern);
2213
- return new RegExp(`^(${patterns.map((p) => util.cleanRegex(p!.source)).join("|")})$`);
2214
- }
2215
- return undefined;
2216
- });
2217
-
2218
- const first = def.options.length === 1 ? def.options[0]._zod.run : null;
2219
-
2220
- inst._zod.parse = (payload, ctx) => {
2221
- if (first) {
2222
- return first(payload, ctx);
2223
- }
2224
- let async = false;
2225
-
2226
- const results: util.MaybeAsync<ParsePayload>[] = [];
2227
- for (const option of def.options) {
2228
- const result = option._zod.run(
2229
- {
2230
- value: payload.value,
2231
- issues: [],
2232
- },
2233
- ctx
2234
- );
2235
- if (result instanceof Promise) {
2236
- results.push(result);
2237
- async = true;
2238
- } else {
2239
- if (result.issues.length === 0) return result;
2240
- results.push(result);
2241
- }
2242
- }
2243
-
2244
- if (!async) return handleUnionResults(results as ParsePayload[], payload, inst, ctx);
2245
- return Promise.all(results).then((results) => {
2246
- return handleUnionResults(results as ParsePayload[], payload, inst, ctx);
2247
- });
2248
- };
2249
- });
2250
-
2251
- function handleExclusiveUnionResults(
2252
- results: ParsePayload[],
2253
- final: ParsePayload,
2254
- inst: $ZodUnion,
2255
- ctx?: ParseContext
2256
- ) {
2257
- const successes = results.filter((r) => r.issues.length === 0);
2258
-
2259
- if (successes.length === 1) {
2260
- final.value = successes[0].value;
2261
- return final;
2262
- }
2263
-
2264
- if (successes.length === 0) {
2265
- // No matches - same as regular union
2266
- final.issues.push({
2267
- code: "invalid_union",
2268
- input: final.value,
2269
- inst,
2270
- errors: results.map((result) => result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config()))),
2271
- });
2272
- } else {
2273
- // Multiple matches - exclusive union failure
2274
- final.issues.push({
2275
- code: "invalid_union",
2276
- input: final.value,
2277
- inst,
2278
- errors: [],
2279
- inclusive: false,
2280
- });
2281
- }
2282
-
2283
- return final;
2284
- }
2285
-
2286
- export interface $ZodXorInternals<T extends readonly SomeType[] = readonly $ZodType[]> extends $ZodUnionInternals<T> {}
2287
-
2288
- export interface $ZodXor<T extends readonly SomeType[] = readonly $ZodType[]>
2289
- extends $ZodType<any, any, $ZodXorInternals<T>> {
2290
- _zod: $ZodXorInternals<T>;
2291
- }
2292
-
2293
- export const $ZodXor: core.$constructor<$ZodXor> = /*@__PURE__*/ core.$constructor("$ZodXor", (inst, def) => {
2294
- $ZodUnion.init(inst, def);
2295
- def.inclusive = false;
2296
-
2297
- const first = def.options.length === 1 ? def.options[0]._zod.run : null;
2298
-
2299
- inst._zod.parse = (payload, ctx) => {
2300
- if (first) {
2301
- return first(payload, ctx);
2302
- }
2303
- let async = false;
2304
-
2305
- const results: util.MaybeAsync<ParsePayload>[] = [];
2306
- for (const option of def.options) {
2307
- const result = option._zod.run(
2308
- {
2309
- value: payload.value,
2310
- issues: [],
2311
- },
2312
- ctx
2313
- );
2314
- if (result instanceof Promise) {
2315
- results.push(result);
2316
- async = true;
2317
- } else {
2318
- results.push(result);
2319
- }
2320
- }
2321
-
2322
- if (!async) return handleExclusiveUnionResults(results as ParsePayload[], payload, inst, ctx);
2323
- return Promise.all(results).then((results) => {
2324
- return handleExclusiveUnionResults(results as ParsePayload[], payload, inst, ctx);
2325
- });
2326
- };
2327
- });
2328
-
2329
- //////////////////////////////////////////////////////
2330
- //////////////////////////////////////////////////////
2331
- ////////// //////////
2332
- ////////// $ZodDiscriminatedUnion //////////
2333
- ////////// //////////
2334
- //////////////////////////////////////////////////////
2335
- //////////////////////////////////////////////////////
2336
-
2337
- export interface $ZodDiscriminatedUnionDef<
2338
- Options extends readonly SomeType[] = readonly $ZodType[],
2339
- Disc extends string = string,
2340
- > extends $ZodUnionDef<Options> {
2341
- discriminator: Disc;
2342
- unionFallback?: boolean;
2343
- }
2344
-
2345
- export interface $ZodDiscriminatedUnionInternals<
2346
- Options extends readonly SomeType[] = readonly $ZodType[],
2347
- Disc extends string = string,
2348
- > extends $ZodUnionInternals<Options> {
2349
- def: $ZodDiscriminatedUnionDef<Options, Disc>;
2350
- propValues: util.PropValues;
2351
- }
2352
-
2353
- export interface $ZodDiscriminatedUnion<
2354
- Options extends readonly SomeType[] = readonly $ZodType[],
2355
- Disc extends string = string,
2356
- > extends $ZodType {
2357
- _zod: $ZodDiscriminatedUnionInternals<Options, Disc>;
2358
- }
2359
-
2360
- export const $ZodDiscriminatedUnion: core.$constructor<$ZodDiscriminatedUnion> =
2361
- /*@__PURE__*/
2362
- core.$constructor("$ZodDiscriminatedUnion", (inst, def) => {
2363
- def.inclusive = false;
2364
-
2365
- $ZodUnion.init(inst, def);
2366
-
2367
- const _super = inst._zod.parse;
2368
- util.defineLazy(inst._zod, "propValues", () => {
2369
- const propValues: util.PropValues = {};
2370
- for (const option of def.options) {
2371
- const pv = option._zod.propValues;
2372
- if (!pv || Object.keys(pv).length === 0)
2373
- throw new Error(`Invalid discriminated union option at index "${def.options.indexOf(option)}"`);
2374
- for (const [k, v] of Object.entries(pv!)) {
2375
- if (!propValues[k]) propValues[k] = new Set();
2376
- for (const val of v) {
2377
- propValues[k].add(val);
2378
- }
2379
- }
2380
- }
2381
- return propValues;
2382
- });
2383
-
2384
- const disc = util.cached(() => {
2385
- const opts = def.options as $ZodTypeDiscriminable[];
2386
- const map: Map<util.Primitive, $ZodType> = new Map();
2387
- for (const o of opts) {
2388
- const values = o._zod.propValues?.[def.discriminator];
2389
- if (!values || values.size === 0)
2390
- throw new Error(`Invalid discriminated union option at index "${def.options.indexOf(o)}"`);
2391
- for (const v of values) {
2392
- if (map.has(v)) {
2393
- throw new Error(`Duplicate discriminator value "${String(v)}"`);
2394
- }
2395
- map.set(v, o);
2396
- }
2397
- }
2398
- return map;
2399
- });
2400
-
2401
- inst._zod.parse = (payload, ctx) => {
2402
- const input = payload.value;
2403
- if (!util.isObject(input)) {
2404
- payload.issues.push({
2405
- code: "invalid_type",
2406
-
2407
- expected: "object",
2408
- input,
2409
- inst,
2410
- });
2411
- return payload;
2412
- }
2413
-
2414
- const opt = disc.value.get(input?.[def.discriminator] as any);
2415
- if (opt) {
2416
- return opt._zod.run(payload, ctx) as any;
2417
- }
2418
-
2419
- // Fall back to union matching when the fast discriminator path fails:
2420
- // - explicitly enabled via unionFallback, or
2421
- // - during backward direction (encode), since codec-based discriminators
2422
- // have different values in forward vs backward directions
2423
- if (def.unionFallback || ctx.direction === "backward") {
2424
- return _super(payload, ctx);
2425
- }
2426
-
2427
- // no matching discriminator
2428
- payload.issues.push({
2429
- code: "invalid_union",
2430
- errors: [],
2431
- note: "No matching discriminator",
2432
- discriminator: def.discriminator,
2433
- options: Array.from(disc.value.keys()),
2434
- input,
2435
- path: [def.discriminator],
2436
- inst,
2437
- });
2438
-
2439
- return payload;
2440
- };
2441
- });
2442
-
2443
- ////////////////////////////////////////////////
2444
- ////////////////////////////////////////////////
2445
- ////////// //////////
2446
- ////////// $ZodIntersection //////////
2447
- ////////// //////////
2448
- ////////////////////////////////////////////////
2449
- ////////////////////////////////////////////////
2450
-
2451
- export interface $ZodIntersectionDef<Left extends SomeType = $ZodType, Right extends SomeType = $ZodType>
2452
- extends $ZodTypeDef {
2453
- type: "intersection";
2454
- left: Left;
2455
- right: Right;
2456
- }
2457
-
2458
- export interface $ZodIntersectionInternals<A extends SomeType = $ZodType, B extends SomeType = $ZodType>
2459
- extends _$ZodTypeInternals {
2460
- // $ZodTypeInternals<core.output<A> & core.output<B>, core.input<A> & core.input<B>>
2461
- def: $ZodIntersectionDef<A, B>;
2462
- isst: never;
2463
- optin: A["_zod"]["optin"] | B["_zod"]["optin"];
2464
- optout: A["_zod"]["optout"] | B["_zod"]["optout"];
2465
- output: core.output<A> & core.output<B>;
2466
- input: core.input<A> & core.input<B>;
2467
- }
2468
-
2469
- export interface $ZodIntersection<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodType {
2470
- _zod: $ZodIntersectionInternals<A, B>;
2471
- }
2472
-
2473
- export const $ZodIntersection: core.$constructor<$ZodIntersection> = /*@__PURE__*/ core.$constructor(
2474
- "$ZodIntersection",
2475
- (inst, def) => {
2476
- $ZodType.init(inst, def);
2477
-
2478
- inst._zod.parse = (payload, ctx) => {
2479
- const input = payload.value;
2480
- const left = def.left._zod.run({ value: input, issues: [] }, ctx);
2481
- const right = def.right._zod.run({ value: input, issues: [] }, ctx);
2482
- const async = left instanceof Promise || right instanceof Promise;
2483
-
2484
- if (async) {
2485
- return Promise.all([left, right]).then(([left, right]) => {
2486
- return handleIntersectionResults(payload, left, right);
2487
- });
2488
- }
2489
-
2490
- return handleIntersectionResults(payload, left, right);
2491
- };
2492
- }
2493
- );
2494
-
2495
- function mergeValues(
2496
- a: any,
2497
- b: any
2498
- ): { valid: true; data: any } | { valid: false; mergeErrorPath: (string | number)[] } {
2499
- // const aType = parse.t(a);
2500
- // const bType = parse.t(b);
2501
-
2502
- if (a === b) {
2503
- return { valid: true, data: a };
2504
- }
2505
- if (a instanceof Date && b instanceof Date && +a === +b) {
2506
- return { valid: true, data: a };
2507
- }
2508
- if (util.isPlainObject(a) && util.isPlainObject(b)) {
2509
- const bKeys = Object.keys(b);
2510
- const sharedKeys = Object.keys(a).filter((key) => bKeys.indexOf(key) !== -1);
2511
-
2512
- const newObj: any = { ...a, ...b };
2513
- for (const key of sharedKeys) {
2514
- const sharedValue = mergeValues(a[key], b[key]);
2515
- if (!sharedValue.valid) {
2516
- return {
2517
- valid: false,
2518
- mergeErrorPath: [key, ...sharedValue.mergeErrorPath],
2519
- };
2520
- }
2521
- newObj[key] = sharedValue.data;
2522
- }
2523
-
2524
- return { valid: true, data: newObj };
2525
- }
2526
- if (Array.isArray(a) && Array.isArray(b)) {
2527
- if (a.length !== b.length) {
2528
- return { valid: false, mergeErrorPath: [] };
2529
- }
2530
-
2531
- const newArray: unknown[] = [];
2532
- for (let index = 0; index < a.length; index++) {
2533
- const itemA = a[index];
2534
- const itemB = b[index];
2535
- const sharedValue = mergeValues(itemA, itemB);
2536
-
2537
- if (!sharedValue.valid) {
2538
- return {
2539
- valid: false,
2540
- mergeErrorPath: [index, ...sharedValue.mergeErrorPath],
2541
- };
2542
- }
2543
-
2544
- newArray.push(sharedValue.data);
2545
- }
2546
-
2547
- return { valid: true, data: newArray };
2548
- }
2549
-
2550
- return { valid: false, mergeErrorPath: [] };
2551
- }
2552
-
2553
- function handleIntersectionResults(result: ParsePayload, left: ParsePayload, right: ParsePayload): ParsePayload {
2554
- // Track which side(s) report each key as unrecognized
2555
- const unrecKeys = new Map<string, { l?: true; r?: true }>();
2556
- let unrecIssue: errors.$ZodRawIssue | undefined;
2557
-
2558
- for (const iss of left.issues) {
2559
- if (iss.code === "unrecognized_keys") {
2560
- unrecIssue ??= iss;
2561
- for (const k of iss.keys) {
2562
- if (!unrecKeys.has(k)) unrecKeys.set(k, {});
2563
- unrecKeys.get(k)!.l = true;
2564
- }
2565
- } else {
2566
- result.issues.push(iss);
2567
- }
2568
- }
2569
-
2570
- for (const iss of right.issues) {
2571
- if (iss.code === "unrecognized_keys") {
2572
- for (const k of iss.keys) {
2573
- if (!unrecKeys.has(k)) unrecKeys.set(k, {});
2574
- unrecKeys.get(k)!.r = true;
2575
- }
2576
- } else {
2577
- result.issues.push(iss);
2578
- }
2579
- }
2580
-
2581
- // Report only keys unrecognized by BOTH sides
2582
- const bothKeys = [...unrecKeys].filter(([, f]) => f.l && f.r).map(([k]) => k);
2583
- if (bothKeys.length && unrecIssue) {
2584
- result.issues.push({ ...unrecIssue, keys: bothKeys });
2585
- }
2586
-
2587
- if (util.aborted(result)) return result;
2588
-
2589
- const merged = mergeValues(left.value, right.value);
2590
-
2591
- if (!merged.valid) {
2592
- throw new Error(`Unmergable intersection. Error path: ` + `${JSON.stringify(merged.mergeErrorPath)}`);
2593
- }
2594
-
2595
- result.value = merged.data;
2596
- return result;
2597
- }
2598
-
2599
- /////////////////////////////////////////
2600
- /////////////////////////////////////////
2601
- ////////// //////////
2602
- ////////// $ZodTuple //////////
2603
- ////////// //////////
2604
- /////////////////////////////////////////
2605
- /////////////////////////////////////////
2606
-
2607
- export interface $ZodTupleDef<
2608
- T extends util.TupleItems = readonly $ZodType[],
2609
- Rest extends SomeType | null = $ZodType | null,
2610
- > extends $ZodTypeDef {
2611
- type: "tuple";
2612
- items: T;
2613
- rest: Rest;
2614
- }
2615
-
2616
- export type $InferTupleInputType<T extends util.TupleItems, Rest extends SomeType | null> = [
2617
- ...TupleInputTypeWithOptionals<T>,
2618
- ...(Rest extends SomeType ? core.input<Rest>[] : []),
2619
- ];
2620
- type TupleInputTypeNoOptionals<T extends util.TupleItems> = {
2621
- [k in keyof T]: core.input<T[k]>;
2622
- };
2623
- type TupleInputTypeWithOptionals<T extends util.TupleItems> = T extends readonly [
2624
- ...infer Prefix extends SomeType[],
2625
- infer Tail extends SomeType,
2626
- ]
2627
- ? Tail["_zod"]["optin"] extends "optional"
2628
- ? [...TupleInputTypeWithOptionals<Prefix>, core.input<Tail>?]
2629
- : TupleInputTypeNoOptionals<T>
2630
- : [];
2631
-
2632
- export type $InferTupleOutputType<T extends util.TupleItems, Rest extends SomeType | null> = [
2633
- ...TupleOutputTypeWithOptionals<T>,
2634
- ...(Rest extends SomeType ? core.output<Rest>[] : []),
2635
- ];
2636
- type TupleOutputTypeNoOptionals<T extends util.TupleItems> = {
2637
- [k in keyof T]: core.output<T[k]>;
2638
- };
2639
- type TupleOutputTypeWithOptionals<T extends util.TupleItems> = T extends readonly [
2640
- ...infer Prefix extends SomeType[],
2641
- infer Tail extends SomeType,
2642
- ]
2643
- ? Tail["_zod"]["optout"] extends "optional"
2644
- ? [...TupleOutputTypeWithOptionals<Prefix>, core.output<Tail>?]
2645
- : TupleOutputTypeNoOptionals<T>
2646
- : [];
2647
-
2648
- export interface $ZodTupleInternals<
2649
- T extends util.TupleItems = readonly $ZodType[],
2650
- Rest extends SomeType | null = $ZodType | null,
2651
- > extends _$ZodTypeInternals {
2652
- def: $ZodTupleDef<T, Rest>;
2653
- isst: errors.$ZodIssueInvalidType | errors.$ZodIssueTooBig<unknown[]> | errors.$ZodIssueTooSmall<unknown[]>;
2654
- // $ZodTypeInternals<$InferTupleOutputType<T, Rest>, $InferTupleInputType<T, Rest>>
2655
- output: $InferTupleOutputType<T, Rest>;
2656
- input: $InferTupleInputType<T, Rest>;
2657
- }
2658
-
2659
- export interface $ZodTuple<
2660
- T extends util.TupleItems = readonly $ZodType[],
2661
- Rest extends SomeType | null = $ZodType | null,
2662
- > extends $ZodType {
2663
- _zod: $ZodTupleInternals<T, Rest>;
2664
- }
2665
-
2666
- export const $ZodTuple: core.$constructor<$ZodTuple> = /*@__PURE__*/ core.$constructor("$ZodTuple", (inst, def) => {
2667
- $ZodType.init(inst, def);
2668
- const items = def.items;
2669
-
2670
- inst._zod.parse = (payload, ctx) => {
2671
- const input = payload.value;
2672
- if (!Array.isArray(input)) {
2673
- payload.issues.push({
2674
- input,
2675
- inst,
2676
- expected: "tuple",
2677
- code: "invalid_type",
2678
- });
2679
- return payload;
2680
- }
2681
-
2682
- payload.value = [];
2683
- const proms: Promise<any>[] = [];
2684
-
2685
- const optinStart = getTupleOptStart(items, "optin");
2686
- const optoutStart = getTupleOptStart(items, "optout");
2687
-
2688
- if (!def.rest) {
2689
- if (input.length < optinStart) {
2690
- payload.issues.push({
2691
- code: "too_small",
2692
- minimum: optinStart,
2693
- inclusive: true,
2694
- input,
2695
- inst,
2696
- origin: "array" as const,
2697
- });
2698
- return payload;
2699
- }
2700
- if (input.length > items.length) {
2701
- payload.issues.push({
2702
- code: "too_big",
2703
- maximum: items.length,
2704
- inclusive: true,
2705
- input,
2706
- inst,
2707
- origin: "array" as const,
2708
- });
2709
- }
2710
- }
2711
-
2712
- // Run every item in parallel, collecting results into an indexed
2713
- // array. The post-processing in `handleTupleResults` walks them in
2714
- // order so it can decide whether an absent optional-output error can
2715
- // truncate the tail or must be reported to preserve required output.
2716
- const itemResults: ParsePayload[] = new Array(items.length);
2717
- for (let i = 0; i < items.length; i++) {
2718
- const r = items[i]._zod.run({ value: input[i], issues: [] }, ctx);
2719
- if (r instanceof Promise) {
2720
- proms.push(
2721
- r.then((rr) => {
2722
- itemResults[i] = rr;
2723
- })
2724
- );
2725
- } else {
2726
- itemResults[i] = r;
2727
- }
2728
- }
2729
-
2730
- if (def.rest) {
2731
- let i = items.length - 1;
2732
- const rest = input.slice(items.length);
2733
- for (const el of rest) {
2734
- i++;
2735
- const result = def.rest._zod.run({ value: el, issues: [] }, ctx);
2736
- if (result instanceof Promise) {
2737
- proms.push(result.then((r) => handleTupleResult(r, payload, i)));
2738
- } else {
2739
- handleTupleResult(result, payload, i);
2740
- }
2741
- }
2742
- }
2743
-
2744
- if (proms.length) {
2745
- return Promise.all(proms).then(() => handleTupleResults(itemResults, payload, items, input, optoutStart));
2746
- }
2747
- return handleTupleResults(itemResults, payload, items, input, optoutStart);
2748
- };
2749
- });
2750
-
2751
- function getTupleOptStart(items: readonly $ZodType[], key: "optin" | "optout") {
2752
- for (let i = items.length - 1; i >= 0; i--) {
2753
- if (items[i]._zod[key] !== "optional") return i + 1;
2754
- }
2755
- return 0;
2756
- }
2757
-
2758
- function handleTupleResult(result: ParsePayload, final: ParsePayload<any[]>, index: number) {
2759
- if (result.issues.length) {
2760
- final.issues.push(...util.prefixIssues(index, result.issues));
2761
- }
2762
- final.value[index] = result.value;
2763
- }
2764
-
2765
- function handleTupleResults(
2766
- itemResults: ParsePayload[],
2767
- final: ParsePayload<any[]>,
2768
- items: readonly $ZodType[],
2769
- input: unknown[],
2770
- optoutStart: number
2771
- ) {
2772
- // Walk results in order. Mirror $ZodObject's swallow-on-absent-optional
2773
- // rule, but only after `optoutStart`: the first index where the output
2774
- // tuple tail can be absent.
2775
- for (let i = 0; i < items.length; i++) {
2776
- const r = itemResults[i];
2777
- const isPresent = i < input.length;
2778
- if (r.issues.length) {
2779
- if (!isPresent && i >= optoutStart) {
2780
- final.value.length = i;
2781
- break;
2782
- }
2783
- final.issues.push(...util.prefixIssues(i, r.issues));
2784
- }
2785
- final.value[i] = r.value;
2786
- }
2787
-
2788
- // Drop trailing slots that produced `undefined` for absent input
2789
- // (the array analog of an absent optional key on an object). The
2790
- // `i >= input.length` floor is critical: an explicit `undefined`
2791
- // *inside* the input must be preserved even when the schema is
2792
- // optional-out (e.g. `z.string().or(z.undefined())` accepting an
2793
- // explicit undefined value).
2794
- for (let i = final.value.length - 1; i >= input.length; i--) {
2795
- if (items[i]._zod.optout === "optional" && final.value[i] === undefined) {
2796
- final.value.length = i;
2797
- } else {
2798
- break;
2799
- }
2800
- }
2801
- return final;
2802
- }
2803
-
2804
- //////////////////////////////////////////
2805
- //////////////////////////////////////////
2806
- ////////// //////////
2807
- ////////// $ZodRecord //////////
2808
- ////////// //////////
2809
- //////////////////////////////////////////
2810
- //////////////////////////////////////////
2811
-
2812
- export type $ZodRecordKey = $ZodType<string | number | symbol, unknown>; // $HasValues | $HasPattern;
2813
- export interface $ZodRecordDef<Key extends $ZodRecordKey = $ZodRecordKey, Value extends SomeType = $ZodType>
2814
- extends $ZodTypeDef {
2815
- type: "record";
2816
- keyType: Key;
2817
- valueType: Value;
2818
- /** @default "strict" - errors on keys not matching keyType. "loose" passes through non-matching keys unchanged. */
2819
- mode?: "strict" | "loose";
2820
- }
2821
-
2822
- // export type $InferZodRecordOutput<
2823
- // Key extends $ZodRecordKey = $ZodRecordKey,
2824
- // Value extends SomeType = $ZodType,
2825
- // > = undefined extends Key["_zod"]["values"]
2826
- // ? string extends core.output<Key>
2827
- // ? Record<core.output<Key>, core.output<Value>>
2828
- // : number extends core.output<Key>
2829
- // ? Record<core.output<Key>, core.output<Value>>
2830
- // : symbol extends core.output<Key>
2831
- // ? Record<core.output<Key>, core.output<Value>>
2832
- // : Record<core.output<Key>, core.output<Value>>
2833
- // : Record<core.output<Key>, core.output<Value>>;
2834
- export type $InferZodRecordOutput<
2835
- Key extends $ZodRecordKey = $ZodRecordKey,
2836
- Value extends SomeType = $ZodType,
2837
- > = Key extends $partial
2838
- ? Partial<Record<core.output<Key>, core.output<Value>>>
2839
- : Record<core.output<Key>, core.output<Value>>;
2840
-
2841
- // export type $InferZodRecordInput<
2842
- // Key extends $ZodRecordKey = $ZodRecordKey,
2843
- // Value extends SomeType = $ZodType,
2844
- // > = undefined extends Key["_zod"]["values"]
2845
- // ? string extends core.input<Key>
2846
- // ? Record<core.input<Key>, core.input<Value>>
2847
- // : number extends core.input<Key>
2848
- // ? Record<core.input<Key>, core.input<Value>>
2849
- // : symbol extends core.input<Key>
2850
- // ? Record<core.input<Key>, core.input<Value>>
2851
- // : Record<core.input<Key>, core.input<Value>>
2852
- // : Record<core.input<Key>, core.input<Value>>;
2853
-
2854
- export type $InferZodRecordInput<
2855
- Key extends $ZodRecordKey = $ZodRecordKey,
2856
- Value extends SomeType = $ZodType,
2857
- > = Key extends $partial
2858
- ? Partial<Record<core.input<Key> & PropertyKey, core.input<Value>>>
2859
- : Record<core.input<Key> & PropertyKey, core.input<Value>>;
2860
-
2861
- export interface $ZodRecordInternals<Key extends $ZodRecordKey = $ZodRecordKey, Value extends SomeType = $ZodType>
2862
- extends $ZodTypeInternals<$InferZodRecordOutput<Key, Value>, $InferZodRecordInput<Key, Value>> {
2863
- def: $ZodRecordDef<Key, Value>;
2864
- isst: errors.$ZodIssueInvalidType | errors.$ZodIssueInvalidKey<Record<PropertyKey, unknown>>;
2865
- optin?: "optional" | undefined;
2866
- optout?: "optional" | undefined;
2867
- }
2868
-
2869
- export type $partial = { "~~partial": true };
2870
- export interface $ZodRecord<Key extends $ZodRecordKey = $ZodRecordKey, Value extends SomeType = $ZodType>
2871
- extends $ZodType {
2872
- _zod: $ZodRecordInternals<Key, Value>;
2873
- }
2874
-
2875
- export const $ZodRecord: core.$constructor<$ZodRecord> = /*@__PURE__*/ core.$constructor("$ZodRecord", (inst, def) => {
2876
- $ZodType.init(inst, def);
2877
-
2878
- inst._zod.parse = (payload, ctx) => {
2879
- const input = payload.value;
2880
-
2881
- if (!util.isPlainObject(input)) {
2882
- payload.issues.push({
2883
- expected: "record",
2884
- code: "invalid_type",
2885
-
2886
- input,
2887
- inst,
2888
- });
2889
- return payload;
2890
- }
2891
-
2892
- const proms: Promise<any>[] = [];
2893
-
2894
- const values = def.keyType._zod.values;
2895
- if (values) {
2896
- payload.value = {};
2897
- const recordKeys = new Set<string | symbol>();
2898
- for (const key of values) {
2899
- if (typeof key === "string" || typeof key === "number" || typeof key === "symbol") {
2900
- recordKeys.add(typeof key === "number" ? key.toString() : key);
2901
- const keyResult = def.keyType._zod.run({ value: key, issues: [] }, ctx);
2902
- if (keyResult instanceof Promise) {
2903
- throw new Error("Async schemas not supported in object keys currently");
2904
- }
2905
- if (keyResult.issues.length) {
2906
- payload.issues.push({
2907
- code: "invalid_key",
2908
- origin: "record",
2909
- issues: keyResult.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())),
2910
- input: key,
2911
- path: [key],
2912
- inst,
2913
- });
2914
- continue;
2915
- }
2916
- const outKey = keyResult.value as PropertyKey;
2917
- const result = def.valueType._zod.run({ value: input[key], issues: [] }, ctx);
2918
-
2919
- if (result instanceof Promise) {
2920
- proms.push(
2921
- result.then((result) => {
2922
- if (result.issues.length) {
2923
- payload.issues.push(...util.prefixIssues(key, result.issues));
2924
- }
2925
- payload.value[outKey] = result.value;
2926
- })
2927
- );
2928
- } else {
2929
- if (result.issues.length) {
2930
- payload.issues.push(...util.prefixIssues(key, result.issues));
2931
- }
2932
- payload.value[outKey] = result.value;
2933
- }
2934
- }
2935
- }
2936
-
2937
- let unrecognized!: string[];
2938
- for (const key in input) {
2939
- if (!recordKeys.has(key)) {
2940
- unrecognized = unrecognized ?? [];
2941
- unrecognized.push(key);
2942
- }
2943
- }
2944
- if (unrecognized && unrecognized.length > 0) {
2945
- payload.issues.push({
2946
- code: "unrecognized_keys",
2947
-
2948
- input,
2949
- inst,
2950
- keys: unrecognized,
2951
- });
2952
- }
2953
- } else {
2954
- payload.value = {};
2955
- // Reflect.ownKeys for Symbol-key support; filter non-enumerable to match z.object()
2956
- for (const key of Reflect.ownKeys(input)) {
2957
- if (key === "__proto__") continue;
2958
- if (!Object.prototype.propertyIsEnumerable.call(input, key)) continue;
2959
- let keyResult = def.keyType._zod.run({ value: key, issues: [] }, ctx);
2960
- if (keyResult instanceof Promise) {
2961
- throw new Error("Async schemas not supported in object keys currently");
2962
- }
2963
-
2964
- // Numeric string fallback: if key is a numeric string and failed, retry with Number(key)
2965
- // This handles z.number(), z.literal([1, 2, 3]), and unions containing numeric literals
2966
- const checkNumericKey = typeof key === "string" && regexes.number.test(key) && keyResult.issues.length;
2967
- if (checkNumericKey) {
2968
- const retryResult = def.keyType._zod.run({ value: Number(key), issues: [] }, ctx);
2969
- if (retryResult instanceof Promise) {
2970
- throw new Error("Async schemas not supported in object keys currently");
2971
- }
2972
- if (retryResult.issues.length === 0) {
2973
- keyResult = retryResult;
2974
- }
2975
- }
2976
-
2977
- if (keyResult.issues.length) {
2978
- if (def.mode === "loose") {
2979
- // Pass through unchanged
2980
- payload.value[key] = input[key];
2981
- } else {
2982
- // Default "strict" behavior: error on invalid key
2983
- payload.issues.push({
2984
- code: "invalid_key",
2985
- origin: "record",
2986
- issues: keyResult.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())),
2987
- input: key,
2988
- path: [key],
2989
- inst,
2990
- });
2991
- }
2992
- continue;
2993
- }
2994
-
2995
- const result = def.valueType._zod.run({ value: input[key], issues: [] }, ctx);
2996
-
2997
- if (result instanceof Promise) {
2998
- proms.push(
2999
- result.then((result) => {
3000
- if (result.issues.length) {
3001
- payload.issues.push(...util.prefixIssues(key, result.issues));
3002
- }
3003
- payload.value[keyResult.value as PropertyKey] = result.value;
3004
- })
3005
- );
3006
- } else {
3007
- if (result.issues.length) {
3008
- payload.issues.push(...util.prefixIssues(key, result.issues));
3009
- }
3010
- payload.value[keyResult.value as PropertyKey] = result.value;
3011
- }
3012
- }
3013
- }
3014
-
3015
- if (proms.length) {
3016
- return Promise.all(proms).then(() => payload);
3017
- }
3018
- return payload;
3019
- };
3020
- });
3021
-
3022
- ///////////////////////////////////////
3023
- ///////////////////////////////////////
3024
- ////////// //////////
3025
- ////////// $ZodMap //////////
3026
- ////////// //////////
3027
- ///////////////////////////////////////
3028
- ///////////////////////////////////////
3029
- export interface $ZodMapDef<Key extends SomeType = $ZodType, Value extends SomeType = $ZodType> extends $ZodTypeDef {
3030
- type: "map";
3031
- keyType: Key;
3032
- valueType: Value;
3033
- }
3034
-
3035
- export interface $ZodMapInternals<Key extends SomeType = $ZodType, Value extends SomeType = $ZodType>
3036
- extends $ZodTypeInternals<Map<core.output<Key>, core.output<Value>>, Map<core.input<Key>, core.input<Value>>> {
3037
- def: $ZodMapDef<Key, Value>;
3038
- isst: errors.$ZodIssueInvalidType | errors.$ZodIssueInvalidKey | errors.$ZodIssueInvalidElement<unknown>;
3039
- optin?: "optional" | undefined;
3040
- optout?: "optional" | undefined;
3041
- }
3042
-
3043
- export interface $ZodMap<Key extends SomeType = $ZodType, Value extends SomeType = $ZodType> extends $ZodType {
3044
- _zod: $ZodMapInternals<Key, Value>;
3045
- }
3046
-
3047
- export const $ZodMap: core.$constructor<$ZodMap> = /*@__PURE__*/ core.$constructor("$ZodMap", (inst, def) => {
3048
- $ZodType.init(inst, def);
3049
-
3050
- inst._zod.parse = (payload, ctx) => {
3051
- const input = payload.value;
3052
- if (!(input instanceof Map)) {
3053
- payload.issues.push({
3054
- expected: "map",
3055
- code: "invalid_type",
3056
-
3057
- input,
3058
- inst,
3059
- });
3060
- return payload;
3061
- }
3062
-
3063
- const proms: Promise<any>[] = [];
3064
- payload.value = new Map();
3065
-
3066
- for (const [key, value] of input) {
3067
- const keyResult = def.keyType._zod.run({ value: key, issues: [] }, ctx);
3068
- const valueResult = def.valueType._zod.run({ value: value, issues: [] }, ctx);
3069
-
3070
- if (keyResult instanceof Promise || valueResult instanceof Promise) {
3071
- proms.push(
3072
- Promise.all([keyResult, valueResult]).then(([keyResult, valueResult]) => {
3073
- handleMapResult(keyResult, valueResult, payload, key, input, inst, ctx);
3074
- })
3075
- );
3076
- } else {
3077
- handleMapResult(keyResult as ParsePayload, valueResult as ParsePayload, payload, key, input, inst, ctx);
3078
- }
3079
- }
3080
-
3081
- if (proms.length) return Promise.all(proms).then(() => payload);
3082
- return payload;
3083
- };
3084
- });
3085
-
3086
- function handleMapResult(
3087
- keyResult: ParsePayload,
3088
- valueResult: ParsePayload,
3089
- final: ParsePayload<Map<unknown, unknown>>,
3090
- key: unknown,
3091
- input: Map<any, any>,
3092
- inst: $ZodMap,
3093
- ctx?: ParseContext | undefined
3094
- ): void {
3095
- if (keyResult.issues.length) {
3096
- if (util.propertyKeyTypes.has(typeof key)) {
3097
- final.issues.push(...util.prefixIssues(key as PropertyKey, keyResult.issues));
3098
- } else {
3099
- final.issues.push({
3100
- code: "invalid_key",
3101
-
3102
- origin: "map",
3103
- input,
3104
- inst,
3105
- issues: keyResult.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())),
3106
- });
3107
- }
3108
- }
3109
- if (valueResult.issues.length) {
3110
- if (util.propertyKeyTypes.has(typeof key)) {
3111
- final.issues.push(...util.prefixIssues(key as PropertyKey, valueResult.issues));
3112
- } else {
3113
- final.issues.push({
3114
- origin: "map",
3115
- code: "invalid_element",
3116
-
3117
- input,
3118
- inst,
3119
- key: key,
3120
- issues: valueResult.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())),
3121
- });
3122
- }
3123
- }
3124
- final.value.set(keyResult.value, valueResult.value);
3125
- }
3126
-
3127
- ///////////////////////////////////////
3128
- ///////////////////////////////////////
3129
- ////////// //////////
3130
- ////////// $ZodSet //////////
3131
- ////////// //////////
3132
- ///////////////////////////////////////
3133
- ///////////////////////////////////////
3134
- export interface $ZodSetDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
3135
- type: "set";
3136
- valueType: T;
3137
- }
3138
-
3139
- export interface $ZodSetInternals<T extends SomeType = $ZodType>
3140
- extends $ZodTypeInternals<Set<core.output<T>>, Set<core.input<T>>> {
3141
- def: $ZodSetDef<T>;
3142
- isst: errors.$ZodIssueInvalidType;
3143
- optin?: "optional" | undefined;
3144
- optout?: "optional" | undefined;
3145
- }
3146
-
3147
- export interface $ZodSet<T extends SomeType = $ZodType> extends $ZodType {
3148
- _zod: $ZodSetInternals<T>;
3149
- }
3150
-
3151
- export const $ZodSet: core.$constructor<$ZodSet> = /*@__PURE__*/ core.$constructor("$ZodSet", (inst, def) => {
3152
- $ZodType.init(inst, def);
3153
-
3154
- inst._zod.parse = (payload, ctx) => {
3155
- const input = payload.value;
3156
- if (!(input instanceof Set)) {
3157
- payload.issues.push({
3158
- input,
3159
- inst,
3160
- expected: "set",
3161
- code: "invalid_type",
3162
- });
3163
- return payload;
3164
- }
3165
-
3166
- const proms: Promise<any>[] = [];
3167
- payload.value = new Set();
3168
- for (const item of input) {
3169
- const result = def.valueType._zod.run({ value: item, issues: [] }, ctx);
3170
- if (result instanceof Promise) {
3171
- proms.push(result.then((result) => handleSetResult(result, payload)));
3172
- } else handleSetResult(result, payload);
3173
- }
3174
-
3175
- if (proms.length) return Promise.all(proms).then(() => payload);
3176
- return payload;
3177
- };
3178
- });
3179
-
3180
- function handleSetResult(result: ParsePayload, final: ParsePayload<Set<any>>) {
3181
- if (result.issues.length) {
3182
- final.issues.push(...result.issues);
3183
- }
3184
- final.value.add(result.value);
3185
- }
3186
-
3187
- ////////////////////////////////////////
3188
- ////////////////////////////////////////
3189
- ////////// //////////
3190
- ////////// $ZodEnum //////////
3191
- ////////// //////////
3192
- ////////////////////////////////////////
3193
- ////////////////////////////////////////
3194
- export type $InferEnumOutput<T extends util.EnumLike> = T[keyof T] & {};
3195
- export type $InferEnumInput<T extends util.EnumLike> = T[keyof T] & {};
3196
-
3197
- export interface $ZodEnumDef<T extends util.EnumLike = util.EnumLike> extends $ZodTypeDef {
3198
- type: "enum";
3199
- entries: T;
3200
- }
3201
-
3202
- export interface $ZodEnumInternals<
3203
- /** @ts-ignore Cast variance */
3204
- out T extends util.EnumLike = util.EnumLike,
3205
- > extends $ZodTypeInternals<$InferEnumOutput<T>, $InferEnumInput<T>> {
3206
- // enum: T;
3207
-
3208
- def: $ZodEnumDef<T>;
3209
- /** @deprecated Internal API, use with caution (not deprecated) */
3210
- values: util.PrimitiveSet;
3211
- /** @deprecated Internal API, use with caution (not deprecated) */
3212
- pattern: RegExp;
3213
- isst: errors.$ZodIssueInvalidValue;
3214
- }
3215
-
3216
- export interface $ZodEnum<T extends util.EnumLike = util.EnumLike> extends $ZodType {
3217
- _zod: $ZodEnumInternals<T>;
3218
- }
3219
-
3220
- export const $ZodEnum: core.$constructor<$ZodEnum> = /*@__PURE__*/ core.$constructor("$ZodEnum", (inst, def) => {
3221
- $ZodType.init(inst, def);
3222
-
3223
- const values = util.getEnumValues(def.entries);
3224
- const valuesSet = new Set<util.Primitive>(values);
3225
- inst._zod.values = valuesSet;
3226
-
3227
- inst._zod.pattern = new RegExp(
3228
- `^(${values
3229
- .filter((k) => util.propertyKeyTypes.has(typeof k))
3230
- .map((o) => (typeof o === "string" ? util.escapeRegex(o) : o.toString()))
3231
- .join("|")})$`
3232
- );
3233
-
3234
- inst._zod.parse = (payload, _ctx) => {
3235
- const input = payload.value;
3236
- if (valuesSet.has(input)) {
3237
- return payload;
3238
- }
3239
- payload.issues.push({
3240
- code: "invalid_value",
3241
-
3242
- values,
3243
- input,
3244
- inst,
3245
- });
3246
- return payload;
3247
- };
3248
- });
3249
-
3250
- ////////////////////////////////////////
3251
- ////////////////////////////////////////
3252
- ////////// //////////
3253
- ////////// $ZodLiteral //////////
3254
- ////////// //////////
3255
- ////////////////////////////////////////
3256
- ////////////////////////////////////////
3257
-
3258
- export interface $ZodLiteralDef<T extends util.Literal> extends $ZodTypeDef {
3259
- type: "literal";
3260
- values: T[];
3261
- }
3262
-
3263
- export interface $ZodLiteralInternals<T extends util.Literal = util.Literal> extends $ZodTypeInternals<T, T> {
3264
- def: $ZodLiteralDef<T>;
3265
- values: Set<T>;
3266
- pattern: RegExp;
3267
- isst: errors.$ZodIssueInvalidValue;
3268
- }
3269
-
3270
- export interface $ZodLiteral<T extends util.Literal = util.Literal> extends $ZodType {
3271
- _zod: $ZodLiteralInternals<T>;
3272
- }
3273
-
3274
- export const $ZodLiteral: core.$constructor<$ZodLiteral> = /*@__PURE__*/ core.$constructor(
3275
- "$ZodLiteral",
3276
- (inst, def) => {
3277
- $ZodType.init(inst, def);
3278
- if (def.values.length === 0) {
3279
- throw new Error("Cannot create literal schema with no valid values");
3280
- }
3281
-
3282
- const values = new Set<util.Literal>(def.values);
3283
- inst._zod.values = values;
3284
- inst._zod.pattern = new RegExp(
3285
- `^(${def.values
3286
-
3287
- .map((o) => (typeof o === "string" ? util.escapeRegex(o) : o ? util.escapeRegex(o.toString()) : String(o)))
3288
- .join("|")})$`
3289
- );
3290
-
3291
- inst._zod.parse = (payload, _ctx) => {
3292
- const input = payload.value;
3293
- if (values.has(input)) {
3294
- return payload;
3295
- }
3296
- payload.issues.push({
3297
- code: "invalid_value",
3298
-
3299
- values: def.values,
3300
- input,
3301
- inst,
3302
- });
3303
- return payload;
3304
- };
3305
- }
3306
- );
3307
-
3308
- ////////////////////////////////////////
3309
- ////////////////////////////////////////
3310
- ////////// //////////
3311
- ////////// $ZodConst //////////
3312
- ////////// //////////
3313
- ////////////////////////////////////////
3314
- ////////////////////////////////////////
3315
-
3316
- // export interface $ZodConstDef extends $ZodTypeDef {
3317
- // type: "const";
3318
- // value: unknown;
3319
- // }
3320
-
3321
- // export _interface $ZodConstInternals<T extends util.Literal = util.Literal> extends $ZodTypeInternals<T, T> {
3322
- // _def: $ZodConstDef;
3323
- // _values: util.PrimitiveSet;
3324
- // _pattern: RegExp;
3325
- // _isst: errors.$ZodIssueInvalidValue;
3326
- // }
3327
-
3328
- // export const $ZodConst: core.$constructor<{_zod: $ZodConstInternals}> = /*@__PURE__*/ core.$constructor("$ZodConst", (inst, def) => {
3329
- // $ZodType.init(inst, def);
3330
-
3331
- // if (util.primitiveTypes.has(typeof def.value) || def.value === null) {
3332
- // inst._zod.values = new Set<util.Primitive>(def.value as any);
3333
- // }
3334
-
3335
- // if (util.propertyKeyTypes.has(typeof def.value)) {
3336
- // inst._zod.pattern = new RegExp(
3337
- // `^(${typeof def.value === "string" ? util.escapeRegex(def.value) : (def.value as any).toString()})$`
3338
- // );
3339
- // } else {
3340
- // throw new Error("Const value cannot be converted to regex");
3341
- // }
3342
-
3343
- // inst._zod.parse = (payload, _ctx) => {
3344
- // payload.value = def.value; // always override
3345
- // return payload;
3346
- // };
3347
- // });
3348
-
3349
- //////////////////////////////////////////
3350
- //////////////////////////////////////////
3351
- ////////// //////////
3352
- ////////// $ZodFile //////////
3353
- ////////// //////////
3354
- //////////////////////////////////////////
3355
- //////////////////////////////////////////
3356
-
3357
- // provide a fallback in case the File interface isn't provided in the environment
3358
- type _File = typeof globalThis extends { File: infer F extends new (...args: any[]) => any } ? InstanceType<F> : {};
3359
- /** Do not reference this directly. */
3360
- export interface File extends _File {
3361
- readonly type: string;
3362
- readonly size: number;
3363
- }
3364
-
3365
- export interface $ZodFileDef extends $ZodTypeDef {
3366
- type: "file";
3367
- }
3368
-
3369
- export interface $ZodFileInternals extends $ZodTypeInternals<File, File> {
3370
- def: $ZodFileDef;
3371
- isst: errors.$ZodIssueInvalidType;
3372
- bag: util.LoosePartial<{
3373
- minimum: number;
3374
- maximum: number;
3375
- mime: util.MimeTypes[];
3376
- }>;
3377
- }
3378
-
3379
- export interface $ZodFile extends $ZodType {
3380
- _zod: $ZodFileInternals;
3381
- }
3382
-
3383
- export const $ZodFile: core.$constructor<$ZodFile> = /*@__PURE__*/ core.$constructor("$ZodFile", (inst, def) => {
3384
- $ZodType.init(inst, def);
3385
-
3386
- inst._zod.parse = (payload, _ctx) => {
3387
- const input = payload.value;
3388
- // @ts-ignore
3389
- if (input instanceof File) return payload;
3390
- payload.issues.push({
3391
- expected: "file",
3392
- code: "invalid_type",
3393
-
3394
- input,
3395
- inst,
3396
- });
3397
- return payload;
3398
- };
3399
- });
3400
-
3401
- //////////////////////////////////////////////
3402
- //////////////////////////////////////////////
3403
- ////////// //////////
3404
- ////////// $ZodTransform //////////
3405
- ////////// //////////
3406
- //////////////////////////////////////////////
3407
- //////////////////////////////////////////////
3408
- export interface $ZodTransformDef extends $ZodTypeDef {
3409
- type: "transform";
3410
- transform: (input: unknown, payload: ParsePayload<unknown>) => util.MaybeAsync<unknown>;
3411
- }
3412
- export interface $ZodTransformInternals<O = unknown, I = unknown> extends $ZodTypeInternals<O, I> {
3413
- def: $ZodTransformDef;
3414
- isst: never;
3415
- }
3416
-
3417
- export interface $ZodTransform<O = unknown, I = unknown> extends $ZodType {
3418
- _zod: $ZodTransformInternals<O, I>;
3419
- }
3420
-
3421
- export const $ZodTransform: core.$constructor<$ZodTransform> = /*@__PURE__*/ core.$constructor(
3422
- "$ZodTransform",
3423
- (inst, def) => {
3424
- $ZodType.init(inst, def);
3425
- inst._zod.optin = "optional";
3426
- inst._zod.parse = (payload, ctx) => {
3427
- if (ctx.direction === "backward") {
3428
- throw new core.$ZodEncodeError(inst.constructor.name);
3429
- }
3430
-
3431
- const _out = def.transform(payload.value, payload);
3432
- if (ctx.async) {
3433
- const output = _out instanceof Promise ? _out : Promise.resolve(_out);
3434
- return output.then((output) => {
3435
- payload.value = output;
3436
- payload.fallback = true;
3437
- return payload;
3438
- });
3439
- }
3440
-
3441
- if (_out instanceof Promise) {
3442
- throw new core.$ZodAsyncError();
3443
- }
3444
-
3445
- payload.value = _out;
3446
- payload.fallback = true;
3447
- return payload;
3448
- };
3449
- }
3450
- );
3451
-
3452
- ////////////////////////////////////////////
3453
- ////////////////////////////////////////////
3454
- ////////// //////////
3455
- ////////// $ZodOptional //////////
3456
- ////////// //////////
3457
- ////////////////////////////////////////////
3458
- ////////////////////////////////////////////
3459
- export interface $ZodOptionalDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
3460
- type: "optional";
3461
- innerType: T;
3462
- }
3463
-
3464
- export interface $ZodOptionalInternals<T extends SomeType = $ZodType>
3465
- extends $ZodTypeInternals<core.output<T> | undefined, core.input<T> | undefined> {
3466
- def: $ZodOptionalDef<T>;
3467
- optin: "optional";
3468
- optout: "optional";
3469
- isst: never;
3470
- values: T["_zod"]["values"];
3471
- pattern: T["_zod"]["pattern"];
3472
- }
3473
-
3474
- export interface $ZodOptional<T extends SomeType = $ZodType> extends $ZodType {
3475
- _zod: $ZodOptionalInternals<T>;
3476
- }
3477
-
3478
- function handleOptionalResult(result: ParsePayload, input: unknown) {
3479
- if (input === undefined && (result.issues.length || result.fallback)) {
3480
- return { issues: [], value: undefined };
3481
- }
3482
- return result;
3483
- }
3484
-
3485
- export const $ZodOptional: core.$constructor<$ZodOptional> = /*@__PURE__*/ core.$constructor(
3486
- "$ZodOptional",
3487
- (inst, def) => {
3488
- $ZodType.init(inst, def);
3489
- inst._zod.optin = "optional";
3490
- inst._zod.optout = "optional";
3491
-
3492
- util.defineLazy(inst._zod, "values", () => {
3493
- return def.innerType._zod.values ? new Set([...def.innerType._zod.values, undefined]) : undefined;
3494
- });
3495
- util.defineLazy(inst._zod, "pattern", () => {
3496
- const pattern = def.innerType._zod.pattern;
3497
- return pattern ? new RegExp(`^(${util.cleanRegex(pattern.source)})?$`) : undefined;
3498
- });
3499
-
3500
- inst._zod.parse = (payload, ctx) => {
3501
- if (def.innerType._zod.optin === "optional") {
3502
- const input = payload.value;
3503
- const result = def.innerType._zod.run(payload, ctx);
3504
- if (result instanceof Promise) return result.then((r) => handleOptionalResult(r, input));
3505
- return handleOptionalResult(result, input);
3506
- }
3507
- if (payload.value === undefined) {
3508
- return payload;
3509
- }
3510
- return def.innerType._zod.run(payload, ctx);
3511
- };
3512
- }
3513
- );
3514
-
3515
- ////////////////////////////////////////////////
3516
- ////////////////////////////////////////////////
3517
- ////////// //////////
3518
- ////////// $ZodExactOptional //////////
3519
- ////////// //////////
3520
- ////////////////////////////////////////////////
3521
- ////////////////////////////////////////////////
3522
-
3523
- // Def extends $ZodOptionalDef (no additional fields needed)
3524
- export interface $ZodExactOptionalDef<T extends SomeType = $ZodType> extends $ZodOptionalDef<T> {}
3525
-
3526
- // Internals extends $ZodOptionalInternals but narrows output/input types (removes | undefined)
3527
- export interface $ZodExactOptionalInternals<T extends SomeType = $ZodType> extends $ZodOptionalInternals<T> {
3528
- def: $ZodExactOptionalDef<T>;
3529
- output: core.output<T>; // NO | undefined (narrowed from parent)
3530
- input: core.input<T>; // NO | undefined (narrowed from parent)
3531
- }
3532
-
3533
- export interface $ZodExactOptional<T extends SomeType = $ZodType> extends $ZodType {
3534
- _zod: $ZodExactOptionalInternals<T>;
3535
- }
3536
-
3537
- export const $ZodExactOptional: core.$constructor<$ZodExactOptional> = /*@__PURE__*/ core.$constructor(
3538
- "$ZodExactOptional",
3539
- (inst, def) => {
3540
- // Call parent init - inherits optin/optout = "optional"
3541
- $ZodOptional.init(inst, def);
3542
-
3543
- // Override values/pattern to NOT add undefined
3544
- util.defineLazy(inst._zod, "values", () => def.innerType._zod.values);
3545
- util.defineLazy(inst._zod, "pattern", () => def.innerType._zod.pattern);
3546
-
3547
- // Override parse to just delegate (no undefined handling)
3548
- inst._zod.parse = (payload, ctx) => {
3549
- return def.innerType._zod.run(payload, ctx);
3550
- };
3551
- }
3552
- );
3553
-
3554
- ////////////////////////////////////////////
3555
- ////////////////////////////////////////////
3556
- ////////// //////////
3557
- ////////// $ZodNullable //////////
3558
- ////////// //////////
3559
- ////////////////////////////////////////////
3560
- ////////////////////////////////////////////
3561
- export interface $ZodNullableDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
3562
- type: "nullable";
3563
- innerType: T;
3564
- }
3565
-
3566
- export interface $ZodNullableInternals<T extends SomeType = $ZodType>
3567
- extends $ZodTypeInternals<core.output<T> | null, core.input<T> | null> {
3568
- def: $ZodNullableDef<T>;
3569
- optin: T["_zod"]["optin"];
3570
- optout: T["_zod"]["optout"];
3571
- isst: never;
3572
- values: T["_zod"]["values"];
3573
- pattern: T["_zod"]["pattern"];
3574
- }
3575
-
3576
- export interface $ZodNullable<T extends SomeType = $ZodType> extends $ZodType {
3577
- _zod: $ZodNullableInternals<T>;
3578
- }
3579
-
3580
- export const $ZodNullable: core.$constructor<$ZodNullable> = /*@__PURE__*/ core.$constructor(
3581
- "$ZodNullable",
3582
- (inst, def) => {
3583
- $ZodType.init(inst, def);
3584
- util.defineLazy(inst._zod, "optin", () => def.innerType._zod.optin);
3585
- util.defineLazy(inst._zod, "optout", () => def.innerType._zod.optout);
3586
-
3587
- util.defineLazy(inst._zod, "pattern", () => {
3588
- const pattern = def.innerType._zod.pattern;
3589
- return pattern ? new RegExp(`^(${util.cleanRegex(pattern.source)}|null)$`) : undefined;
3590
- });
3591
-
3592
- util.defineLazy(inst._zod, "values", () => {
3593
- return def.innerType._zod.values ? new Set([...def.innerType._zod.values, null]) : undefined;
3594
- });
3595
-
3596
- inst._zod.parse = (payload, ctx) => {
3597
- // Forward direction (decode): allow null to pass through
3598
- if (payload.value === null) return payload;
3599
- return def.innerType._zod.run(payload, ctx);
3600
- };
3601
- }
3602
- );
3603
- // );
3604
-
3605
- ////////////////////////////////////////////
3606
- ////////////////////////////////////////////
3607
- ////////// //////////
3608
- ////////// $ZodDefault //////////
3609
- ////////// //////////
3610
- ////////////////////////////////////////////
3611
- ////////////////////////////////////////////
3612
- export interface $ZodDefaultDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
3613
- type: "default";
3614
- innerType: T;
3615
- /** The default value. May be a getter. */
3616
- defaultValue: util.NoUndefined<core.output<T>>;
3617
- }
3618
-
3619
- export interface $ZodDefaultInternals<T extends SomeType = $ZodType>
3620
- extends $ZodTypeInternals<util.NoUndefined<core.output<T>>, core.input<T> | undefined> {
3621
- def: $ZodDefaultDef<T>;
3622
- optin: "optional";
3623
- optout?: "optional" | undefined; // required
3624
- isst: never;
3625
- values: T["_zod"]["values"];
3626
- }
3627
-
3628
- export interface $ZodDefault<T extends SomeType = $ZodType> extends $ZodType {
3629
- _zod: $ZodDefaultInternals<T>;
3630
- }
3631
-
3632
- export const $ZodDefault: core.$constructor<$ZodDefault> = /*@__PURE__*/ core.$constructor(
3633
- "$ZodDefault",
3634
- (inst, def) => {
3635
- $ZodType.init(inst, def);
3636
-
3637
- // inst._zod.qin = "true";
3638
- inst._zod.optin = "optional";
3639
- util.defineLazy(inst._zod, "values", () => def.innerType._zod.values);
3640
-
3641
- inst._zod.parse = (payload, ctx) => {
3642
- if (ctx.direction === "backward") {
3643
- return def.innerType._zod.run(payload, ctx);
3644
- }
3645
-
3646
- // Forward direction (decode): apply defaults for undefined input
3647
- if (payload.value === undefined) {
3648
- payload.value = def.defaultValue;
3649
- /**
3650
- * $ZodDefault returns the default value immediately in forward direction.
3651
- * It doesn't pass the default value into the validator ("prefault"). There's no reason to pass the default value through validation. The validity of the default is enforced by TypeScript statically. Otherwise, it's the responsibility of the user to ensure the default is valid. In the case of pipes with divergent in/out types, you can specify the default on the `in` schema of your ZodPipe to set a "prefault" for the pipe. */
3652
- return payload;
3653
- }
3654
- // Forward direction: continue with default handling
3655
- const result = def.innerType._zod.run(payload, ctx);
3656
- if (result instanceof Promise) {
3657
- return result.then((result) => handleDefaultResult(result, def));
3658
- }
3659
- return handleDefaultResult(result, def);
3660
- };
3661
- }
3662
- );
3663
-
3664
- function handleDefaultResult(payload: ParsePayload, def: $ZodDefaultDef) {
3665
- if (payload.value === undefined) {
3666
- payload.value = def.defaultValue;
3667
- }
3668
- return payload;
3669
- }
3670
-
3671
- ////////////////////////////////////////////
3672
- ////////////////////////////////////////////
3673
- ////////// //////////
3674
- ////////// $ZodPrefault //////////
3675
- ////////// //////////
3676
- ////////////////////////////////////////////
3677
- ////////////////////////////////////////////
3678
-
3679
- export interface $ZodPrefaultDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
3680
- type: "prefault";
3681
- innerType: T;
3682
- /** The default value. May be a getter. */
3683
- defaultValue: core.input<T>;
3684
- }
3685
-
3686
- export interface $ZodPrefaultInternals<T extends SomeType = $ZodType>
3687
- extends $ZodTypeInternals<util.NoUndefined<core.output<T>>, core.input<T> | undefined> {
3688
- def: $ZodPrefaultDef<T>;
3689
- optin: "optional";
3690
- optout?: "optional" | undefined;
3691
- isst: never;
3692
- values: T["_zod"]["values"];
3693
- }
3694
-
3695
- export interface $ZodPrefault<T extends SomeType = $ZodType> extends $ZodType {
3696
- _zod: $ZodPrefaultInternals<T>;
3697
- }
3698
-
3699
- export const $ZodPrefault: core.$constructor<$ZodPrefault> = /*@__PURE__*/ core.$constructor(
3700
- "$ZodPrefault",
3701
- (inst, def) => {
3702
- $ZodType.init(inst, def);
3703
-
3704
- inst._zod.optin = "optional";
3705
- util.defineLazy(inst._zod, "values", () => def.innerType._zod.values);
3706
-
3707
- inst._zod.parse = (payload, ctx) => {
3708
- if (ctx.direction === "backward") {
3709
- return def.innerType._zod.run(payload, ctx);
3710
- }
3711
-
3712
- // Forward direction (decode): apply prefault for undefined input
3713
- if (payload.value === undefined) {
3714
- payload.value = def.defaultValue;
3715
- }
3716
- return def.innerType._zod.run(payload, ctx);
3717
- };
3718
- }
3719
- );
3720
-
3721
- ///////////////////////////////////////////////
3722
- ///////////////////////////////////////////////
3723
- ////////// //////////
3724
- ////////// $ZodNonOptional //////////
3725
- ////////// //////////
3726
- ///////////////////////////////////////////////
3727
- ///////////////////////////////////////////////
3728
- export interface $ZodNonOptionalDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
3729
- type: "nonoptional";
3730
- innerType: T;
3731
- }
3732
-
3733
- export interface $ZodNonOptionalInternals<T extends SomeType = $ZodType>
3734
- extends $ZodTypeInternals<util.NoUndefined<core.output<T>>, util.NoUndefined<core.input<T>>> {
3735
- def: $ZodNonOptionalDef<T>;
3736
- isst: errors.$ZodIssueInvalidType;
3737
- values: T["_zod"]["values"];
3738
- optin: "optional" | undefined;
3739
- optout: "optional" | undefined;
3740
- }
3741
-
3742
- export interface $ZodNonOptional<T extends SomeType = $ZodType> extends $ZodType {
3743
- _zod: $ZodNonOptionalInternals<T>;
3744
- }
3745
-
3746
- export const $ZodNonOptional: core.$constructor<$ZodNonOptional> = /*@__PURE__*/ core.$constructor(
3747
- "$ZodNonOptional",
3748
- (inst, def) => {
3749
- $ZodType.init(inst, def);
3750
-
3751
- util.defineLazy(inst._zod, "values", () => {
3752
- const v = def.innerType._zod.values;
3753
- return v ? new Set([...v].filter((x) => x !== undefined)) : undefined;
3754
- });
3755
-
3756
- inst._zod.parse = (payload, ctx) => {
3757
- const result = def.innerType._zod.run(payload, ctx);
3758
- if (result instanceof Promise) {
3759
- return result.then((result) => handleNonOptionalResult(result, inst));
3760
- }
3761
- return handleNonOptionalResult(result, inst);
3762
- };
3763
- }
3764
- );
3765
-
3766
- function handleNonOptionalResult(payload: ParsePayload, inst: $ZodNonOptional) {
3767
- if (!payload.issues.length && payload.value === undefined) {
3768
- payload.issues.push({
3769
- code: "invalid_type",
3770
- expected: "nonoptional",
3771
- input: payload.value,
3772
- inst,
3773
- });
3774
- }
3775
- return payload;
3776
- }
3777
-
3778
- ////////////////////////////////////////////
3779
- ////////////////////////////////////////////
3780
- ////////// //////////
3781
- ////////// $ZodCoalesce //////////
3782
- ////////// //////////
3783
- ////////////////////////////////////////////
3784
- ////////////////////////////////////////////
3785
- // export interface $ZodCoalesceDef<T extends $ZodType = $ZodType> extends $ZodTypeDef {
3786
- // type: "coalesce";
3787
- // innerType: T;
3788
- // defaultValue: () => NonNullable<T['_zod']["output"]>;
3789
- // }
3790
-
3791
- // export _interface $ZodCoalesceInternals<T extends $ZodType = $ZodType>
3792
- // extends $ZodTypeInternals<NonNullable<T['_zod']["output"]>, T['_zod']["input"] | undefined | null> {
3793
- // _def: $ZodCoalesceDef<T>;
3794
- // _isst: errors.$ZodIssueInvalidType;
3795
- // _qin: "true";
3796
- // }
3797
-
3798
- // function handleCoalesceResult(payload: ParsePayload, def: $ZodCoalesceDef) {
3799
- // payload.value ??= def.defaultValue();
3800
- // return payload;
3801
- // }
3802
-
3803
- // export const $ZodCoalesce: core.$constructor<{_zod: $ZodCoalesceInternals}> = /*@__PURE__*/ core.$constructor(
3804
- // "$ZodCoalesce",
3805
- // (inst, def) => {
3806
- // $ZodType.init(inst, def);
3807
- // inst._zod.qin = "true";
3808
- // inst._zod.parse = (payload, ctx) => {
3809
- // const result = def.innerType._zod.run(payload, ctx);
3810
- // if (result instanceof Promise) {
3811
- // return result.then((result) => handleCoalesceResult(result, def));
3812
- // }
3813
- // return handleCoalesceResult(result, def);
3814
- // };
3815
- // }
3816
- // );
3817
-
3818
- /////////////////////////////////////////////
3819
- /////////////////////////////////////////////
3820
- ////////// //////////
3821
- ////////// $ZodSuccess //////////
3822
- ////////// //////////
3823
- /////////////////////////////////////////////
3824
- /////////////////////////////////////////////
3825
- export interface $ZodSuccessDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
3826
- type: "success";
3827
- innerType: T;
3828
- }
3829
-
3830
- export interface $ZodSuccessInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<boolean, core.input<T>> {
3831
- def: $ZodSuccessDef<T>;
3832
- isst: never;
3833
- optin: T["_zod"]["optin"];
3834
- optout: "optional" | undefined;
3835
- }
3836
-
3837
- export interface $ZodSuccess<T extends SomeType = $ZodType> extends $ZodType {
3838
- _zod: $ZodSuccessInternals<T>;
3839
- }
3840
-
3841
- export const $ZodSuccess: core.$constructor<$ZodSuccess> = /*@__PURE__*/ core.$constructor(
3842
- "$ZodSuccess",
3843
- (inst, def) => {
3844
- $ZodType.init(inst, def);
3845
-
3846
- inst._zod.parse = (payload, ctx) => {
3847
- if (ctx.direction === "backward") {
3848
- throw new core.$ZodEncodeError("ZodSuccess");
3849
- }
3850
-
3851
- const result = def.innerType._zod.run(payload, ctx);
3852
- if (result instanceof Promise) {
3853
- return result.then((result) => {
3854
- payload.value = result.issues.length === 0;
3855
- return payload;
3856
- });
3857
- }
3858
- payload.value = result.issues.length === 0;
3859
- return payload;
3860
- };
3861
- }
3862
- );
3863
-
3864
- ////////////////////////////////////////////
3865
- ////////////////////////////////////////////
3866
- ////////// //////////
3867
- ////////// $ZodCatch //////////
3868
- ////////// //////////
3869
- ////////////////////////////////////////////
3870
- ////////////////////////////////////////////
3871
- export interface $ZodCatchCtx extends ParsePayload {
3872
- /** @deprecated Use `ctx.issues` */
3873
- error: { issues: errors.$ZodIssue[] };
3874
- /** @deprecated Use `ctx.value` */
3875
- input: unknown;
3876
- }
3877
- export interface $ZodCatchDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
3878
- type: "catch";
3879
- innerType: T;
3880
- catchValue: (ctx: $ZodCatchCtx) => unknown;
3881
- }
3882
-
3883
- export interface $ZodCatchInternals<T extends SomeType = $ZodType>
3884
- extends $ZodTypeInternals<core.output<T>, core.input<T>> {
3885
- def: $ZodCatchDef<T>;
3886
- optin: T["_zod"]["optin"];
3887
- optout: T["_zod"]["optout"];
3888
- isst: never;
3889
- values: T["_zod"]["values"];
3890
- }
3891
-
3892
- export interface $ZodCatch<T extends SomeType = $ZodType> extends $ZodType {
3893
- _zod: $ZodCatchInternals<T>;
3894
- }
3895
-
3896
- export const $ZodCatch: core.$constructor<$ZodCatch> = /*@__PURE__*/ core.$constructor("$ZodCatch", (inst, def) => {
3897
- $ZodType.init(inst, def);
3898
- inst._zod.optin = "optional";
3899
- util.defineLazy(inst._zod, "optout", () => def.innerType._zod.optout);
3900
- util.defineLazy(inst._zod, "values", () => def.innerType._zod.values);
3901
-
3902
- inst._zod.parse = (payload, ctx) => {
3903
- if (ctx.direction === "backward") {
3904
- return def.innerType._zod.run(payload, ctx);
3905
- }
3906
-
3907
- // Forward direction (decode): apply catch logic
3908
- const result = def.innerType._zod.run(payload, ctx);
3909
- if (result instanceof Promise) {
3910
- return result.then((result) => {
3911
- payload.value = result.value;
3912
- if (result.issues.length) {
3913
- payload.value = def.catchValue({
3914
- ...payload,
3915
- error: {
3916
- issues: result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())),
3917
- },
3918
- input: payload.value,
3919
- });
3920
- payload.issues = [];
3921
- payload.fallback = true;
3922
- }
3923
-
3924
- return payload;
3925
- });
3926
- }
3927
-
3928
- payload.value = result.value;
3929
- if (result.issues.length) {
3930
- payload.value = def.catchValue({
3931
- ...payload,
3932
- error: {
3933
- issues: result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())),
3934
- },
3935
- input: payload.value,
3936
- });
3937
-
3938
- payload.issues = [];
3939
- payload.fallback = true;
3940
- }
3941
-
3942
- return payload;
3943
- };
3944
- });
3945
-
3946
- ////////////////////////////////////////////
3947
- ////////////////////////////////////////////
3948
- ////////// //////////
3949
- ////////// $ZodNaN //////////
3950
- ////////// //////////
3951
- ////////////////////////////////////////////
3952
- ////////////////////////////////////////////
3953
- export interface $ZodNaNDef extends $ZodTypeDef {
3954
- type: "nan";
3955
- }
3956
-
3957
- export interface $ZodNaNInternals extends $ZodTypeInternals<number, number> {
3958
- def: $ZodNaNDef;
3959
- isst: errors.$ZodIssueInvalidType;
3960
- }
3961
-
3962
- export interface $ZodNaN extends $ZodType {
3963
- _zod: $ZodNaNInternals;
3964
- }
3965
-
3966
- export const $ZodNaN: core.$constructor<$ZodNaN> = /*@__PURE__*/ core.$constructor("$ZodNaN", (inst, def) => {
3967
- $ZodType.init(inst, def);
3968
-
3969
- inst._zod.parse = (payload, _ctx) => {
3970
- if (typeof payload.value !== "number" || !Number.isNaN(payload.value)) {
3971
- payload.issues.push({
3972
- input: payload.value,
3973
- inst,
3974
- expected: "nan",
3975
- code: "invalid_type",
3976
- });
3977
- return payload;
3978
- }
3979
- return payload;
3980
- };
3981
- });
3982
-
3983
- ////////////////////////////////////////////
3984
- ////////////////////////////////////////////
3985
- ////////// //////////
3986
- ////////// $ZodPipe //////////
3987
- ////////// //////////
3988
- ////////////////////////////////////////////
3989
- ////////////////////////////////////////////
3990
- export interface $ZodPipeDef<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodTypeDef {
3991
- type: "pipe";
3992
- in: A;
3993
- out: B;
3994
- /** Only defined inside $ZodCodec instances. */
3995
- transform?: (value: core.output<A>, payload: ParsePayload<core.output<A>>) => util.MaybeAsync<core.input<B>>;
3996
- /** Only defined inside $ZodCodec instances. */
3997
- reverseTransform?: (value: core.input<B>, payload: ParsePayload<core.input<B>>) => util.MaybeAsync<core.output<A>>;
3998
- }
3999
-
4000
- export interface $ZodPipeInternals<A extends SomeType = $ZodType, B extends SomeType = $ZodType>
4001
- extends $ZodTypeInternals<core.output<B>, core.input<A>> {
4002
- def: $ZodPipeDef<A, B>;
4003
- isst: never;
4004
- values: A["_zod"]["values"];
4005
- optin: A["_zod"]["optin"];
4006
- optout: B["_zod"]["optout"];
4007
- propValues: A["_zod"]["propValues"];
4008
- }
4009
-
4010
- export interface $ZodPipe<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodType {
4011
- _zod: $ZodPipeInternals<A, B>;
4012
- }
4013
-
4014
- export const $ZodPipe: core.$constructor<$ZodPipe> = /*@__PURE__*/ core.$constructor("$ZodPipe", (inst, def) => {
4015
- $ZodType.init(inst, def);
4016
- util.defineLazy(inst._zod, "values", () => def.in._zod.values);
4017
- util.defineLazy(inst._zod, "optin", () => def.in._zod.optin);
4018
- util.defineLazy(inst._zod, "optout", () => def.out._zod.optout);
4019
- util.defineLazy(inst._zod, "propValues", () => def.in._zod.propValues);
4020
-
4021
- inst._zod.parse = (payload, ctx) => {
4022
- if (ctx.direction === "backward") {
4023
- const right = def.out._zod.run(payload, ctx);
4024
- if (right instanceof Promise) {
4025
- return right.then((right) => handlePipeResult(right, def.in, ctx));
4026
- }
4027
- return handlePipeResult(right, def.in, ctx);
4028
- }
4029
-
4030
- const left = def.in._zod.run(payload, ctx);
4031
- if (left instanceof Promise) {
4032
- return left.then((left) => handlePipeResult(left, def.out, ctx));
4033
- }
4034
- return handlePipeResult(left, def.out, ctx);
4035
- };
4036
- });
4037
-
4038
- function handlePipeResult(left: ParsePayload, next: $ZodType, ctx: ParseContextInternal) {
4039
- if (left.issues.length) {
4040
- // prevent further checks
4041
- left.aborted = true;
4042
- return left;
4043
- }
4044
- return next._zod.run({ value: left.value, issues: left.issues, fallback: left.fallback }, ctx);
4045
- }
4046
-
4047
- ////////////////////////////////////////////
4048
- ////////////////////////////////////////////
4049
- ////////// //////////
4050
- ////////// $ZodCodec //////////
4051
- ////////// //////////
4052
- ////////////////////////////////////////////
4053
- ////////////////////////////////////////////
4054
- export interface $ZodCodecDef<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodPipeDef<A, B> {
4055
- transform: (value: core.output<A>, payload: ParsePayload<core.output<A>>) => util.MaybeAsync<core.input<B>>;
4056
- reverseTransform: (value: core.input<B>, payload: ParsePayload<core.input<B>>) => util.MaybeAsync<core.output<A>>;
4057
- }
4058
-
4059
- export interface $ZodCodecInternals<A extends SomeType = $ZodType, B extends SomeType = $ZodType>
4060
- extends $ZodTypeInternals<core.output<B>, core.input<A>> {
4061
- def: $ZodCodecDef<A, B>;
4062
- isst: never;
4063
- values: A["_zod"]["values"];
4064
- optin: A["_zod"]["optin"];
4065
- optout: B["_zod"]["optout"];
4066
- propValues: A["_zod"]["propValues"];
4067
- }
4068
-
4069
- export interface $ZodCodec<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodType {
4070
- _zod: $ZodCodecInternals<A, B>;
4071
- }
4072
-
4073
- export const $ZodCodec: core.$constructor<$ZodCodec> = /*@__PURE__*/ core.$constructor("$ZodCodec", (inst, def) => {
4074
- $ZodType.init(inst, def);
4075
- util.defineLazy(inst._zod, "values", () => def.in._zod.values);
4076
- util.defineLazy(inst._zod, "optin", () => def.in._zod.optin);
4077
- util.defineLazy(inst._zod, "optout", () => def.out._zod.optout);
4078
- util.defineLazy(inst._zod, "propValues", () => def.in._zod.propValues);
4079
-
4080
- inst._zod.parse = (payload, ctx) => {
4081
- const direction = ctx.direction || "forward";
4082
- if (direction === "forward") {
4083
- const left = def.in._zod.run(payload, ctx);
4084
- if (left instanceof Promise) {
4085
- return left.then((left) => handleCodecAResult(left, def, ctx));
4086
- }
4087
- return handleCodecAResult(left, def, ctx);
4088
- } else {
4089
- const right = def.out._zod.run(payload, ctx);
4090
- if (right instanceof Promise) {
4091
- return right.then((right) => handleCodecAResult(right, def, ctx));
4092
- }
4093
- return handleCodecAResult(right, def, ctx);
4094
- }
4095
- };
4096
- });
4097
-
4098
- function handleCodecAResult(result: ParsePayload, def: $ZodCodecDef, ctx: ParseContextInternal) {
4099
- if (result.issues.length) {
4100
- // prevent further checks
4101
- result.aborted = true;
4102
- return result;
4103
- }
4104
-
4105
- const direction = ctx.direction || "forward";
4106
-
4107
- if (direction === "forward") {
4108
- const transformed = def.transform(result.value, result);
4109
- if (transformed instanceof Promise) {
4110
- return transformed.then((value) => handleCodecTxResult(result, value, def.out, ctx));
4111
- }
4112
- return handleCodecTxResult(result, transformed, def.out, ctx);
4113
- } else {
4114
- const transformed = def.reverseTransform(result.value, result);
4115
- if (transformed instanceof Promise) {
4116
- return transformed.then((value) => handleCodecTxResult(result, value, def.in, ctx));
4117
- }
4118
- return handleCodecTxResult(result, transformed, def.in, ctx);
4119
- }
4120
- }
4121
-
4122
- function handleCodecTxResult(left: ParsePayload, value: any, nextSchema: SomeType, ctx: ParseContextInternal) {
4123
- // Check if transform added any issues
4124
- if (left.issues.length) {
4125
- left.aborted = true;
4126
- return left;
4127
- }
4128
-
4129
- return nextSchema._zod.run({ value, issues: left.issues }, ctx);
4130
- }
4131
-
4132
- /////////////////////////////////////////////////
4133
- /////////////////////////////////////////////////
4134
- ////////// //////////
4135
- ////////// $ZodPreprocess //////////
4136
- ////////// //////////
4137
- /////////////////////////////////////////////////
4138
- /////////////////////////////////////////////////
4139
- export interface $ZodPreprocessDef<B extends SomeType = $ZodType> extends $ZodPipeDef<$ZodTransform, B> {
4140
- in: $ZodTransform;
4141
- out: B;
4142
- }
4143
-
4144
- export interface $ZodPreprocessInternals<B extends SomeType = $ZodType> extends $ZodPipeInternals<$ZodTransform, B> {
4145
- def: $ZodPreprocessDef<B>;
4146
- optin: B["_zod"]["optin"];
4147
- optout: B["_zod"]["optout"];
4148
- }
4149
-
4150
- export interface $ZodPreprocess<B extends SomeType = $ZodType> extends $ZodPipe<$ZodTransform, B> {
4151
- _zod: $ZodPreprocessInternals<B>;
4152
- }
4153
-
4154
- export const $ZodPreprocess: core.$constructor<$ZodPreprocess> = /*@__PURE__*/ core.$constructor(
4155
- "$ZodPreprocess",
4156
- (inst, def) => {
4157
- $ZodPipe.init(inst, def);
4158
- }
4159
- );
4160
-
4161
- ////////////////////////////////////////////
4162
- ////////////////////////////////////////////
4163
- ////////// //////////
4164
- ////////// $ZodReadonly //////////
4165
- ////////// //////////
4166
- ////////////////////////////////////////////
4167
- ////////////////////////////////////////////
4168
-
4169
- export interface $ZodReadonlyDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
4170
- type: "readonly";
4171
- innerType: T;
4172
- }
4173
-
4174
- export interface $ZodReadonlyInternals<T extends SomeType = $ZodType>
4175
- extends $ZodTypeInternals<util.MakeReadonly<core.output<T>>, util.MakeReadonly<core.input<T>>> {
4176
- def: $ZodReadonlyDef<T>;
4177
- optin: T["_zod"]["optin"];
4178
- optout: T["_zod"]["optout"];
4179
- isst: never;
4180
- propValues: T["_zod"]["propValues"];
4181
- values: T["_zod"]["values"];
4182
- }
4183
-
4184
- export interface $ZodReadonly<T extends SomeType = $ZodType> extends $ZodType {
4185
- _zod: $ZodReadonlyInternals<T>;
4186
- }
4187
-
4188
- export const $ZodReadonly: core.$constructor<$ZodReadonly> = /*@__PURE__*/ core.$constructor(
4189
- "$ZodReadonly",
4190
- (inst, def) => {
4191
- $ZodType.init(inst, def);
4192
- util.defineLazy(inst._zod, "propValues", () => def.innerType._zod.propValues);
4193
- util.defineLazy(inst._zod, "values", () => def.innerType._zod.values);
4194
- util.defineLazy(inst._zod, "optin", () => def.innerType?._zod?.optin);
4195
- util.defineLazy(inst._zod, "optout", () => def.innerType?._zod?.optout);
4196
-
4197
- inst._zod.parse = (payload, ctx) => {
4198
- if (ctx.direction === "backward") {
4199
- return def.innerType._zod.run(payload, ctx);
4200
- }
4201
- const result = def.innerType._zod.run(payload, ctx);
4202
- if (result instanceof Promise) {
4203
- return result.then(handleReadonlyResult);
4204
- }
4205
- return handleReadonlyResult(result);
4206
- };
4207
- }
4208
- );
4209
-
4210
- function handleReadonlyResult(payload: ParsePayload): ParsePayload {
4211
- payload.value = Object.freeze(payload.value);
4212
- return payload;
4213
- }
4214
-
4215
- /////////////////////////////////////////////
4216
- /////////////////////////////////////////////
4217
- ////////// //////////
4218
- ////////// $ZodTemplateLiteral //////////
4219
- ////////// //////////
4220
- /////////////////////////////////////////////
4221
- /////////////////////////////////////////////
4222
-
4223
- export interface $ZodTemplateLiteralDef extends $ZodTypeDef {
4224
- type: "template_literal";
4225
- parts: $ZodTemplateLiteralPart[];
4226
- format?: string | undefined;
4227
- }
4228
- export interface $ZodTemplateLiteralInternals<Template extends string = string>
4229
- extends $ZodTypeInternals<Template, Template> {
4230
- pattern: RegExp;
4231
- def: $ZodTemplateLiteralDef;
4232
- isst: errors.$ZodIssueInvalidType;
4233
- }
4234
-
4235
- export interface $ZodTemplateLiteral<Template extends string = string> extends $ZodType {
4236
- _zod: $ZodTemplateLiteralInternals<Template>;
4237
- }
4238
-
4239
- type LiteralPart = Exclude<util.Literal, symbol>; //string | number | boolean | null | undefined;
4240
- interface SchemaPartInternals extends $ZodTypeInternals<LiteralPart, LiteralPart> {
4241
- pattern: RegExp;
4242
- }
4243
- interface SchemaPart extends $ZodType {
4244
- _zod: SchemaPartInternals;
4245
- }
4246
- export type $ZodTemplateLiteralPart = LiteralPart | SchemaPart;
4247
-
4248
- type UndefinedToEmptyString<T> = T extends undefined ? "" : T;
4249
- type AppendToTemplateLiteral<
4250
- Template extends string,
4251
- Suffix extends LiteralPart | $ZodType,
4252
- > = Suffix extends LiteralPart
4253
- ? `${Template}${UndefinedToEmptyString<Suffix>}`
4254
- : Suffix extends $ZodType
4255
- ? `${Template}${core.output<Suffix> extends infer T extends LiteralPart ? UndefinedToEmptyString<T> : never}`
4256
- : never;
4257
-
4258
- export type ConcatenateTupleOfStrings<T extends string[]> = T extends [
4259
- infer First extends string,
4260
- ...infer Rest extends string[],
4261
- ]
4262
- ? Rest extends string[]
4263
- ? First extends ""
4264
- ? ConcatenateTupleOfStrings<Rest>
4265
- : `${First}${ConcatenateTupleOfStrings<Rest>}`
4266
- : never
4267
- : "";
4268
- export type ConvertPartsToStringTuple<Parts extends $ZodTemplateLiteralPart[]> = {
4269
- [K in keyof Parts]: Parts[K] extends LiteralPart
4270
- ? `${UndefinedToEmptyString<Parts[K]>}`
4271
- : Parts[K] extends $ZodType
4272
- ? `${core.output<Parts[K]> extends infer T extends LiteralPart ? UndefinedToEmptyString<T> : never}`
4273
- : never;
4274
- };
4275
-
4276
- export type ToTemplateLiteral<Parts extends $ZodTemplateLiteralPart[]> = ConcatenateTupleOfStrings<
4277
- ConvertPartsToStringTuple<Parts>
4278
- >;
4279
- // type lkjasd = ConcatenateTupleOfStrings<["Hello", " ", "World", "!"]>; // "Hello World!"
4280
- export type $PartsToTemplateLiteral<Parts extends $ZodTemplateLiteralPart[]> = [] extends Parts
4281
- ? ``
4282
- : Parts extends [...infer Rest, infer Last extends $ZodTemplateLiteralPart]
4283
- ? Rest extends $ZodTemplateLiteralPart[]
4284
- ? AppendToTemplateLiteral<$PartsToTemplateLiteral<Rest>, Last>
4285
- : never
4286
- : never;
4287
-
4288
- export const $ZodTemplateLiteral: core.$constructor<$ZodTemplateLiteral> = /*@__PURE__*/ core.$constructor(
4289
- "$ZodTemplateLiteral",
4290
- (inst, def) => {
4291
- $ZodType.init(inst, def);
4292
- const regexParts: string[] = [];
4293
- for (const part of def.parts) {
4294
- if (typeof part === "object" && part !== null) {
4295
- // is Zod schema
4296
- if (!part._zod.pattern) {
4297
- // if (!source)
4298
- throw new Error(`Invalid template literal part, no pattern found: ${[...(part as any)._zod.traits].shift()}`);
4299
- }
4300
-
4301
- const source = part._zod.pattern instanceof RegExp ? part._zod.pattern.source : part._zod.pattern;
4302
-
4303
- if (!source) throw new Error(`Invalid template literal part: ${part._zod.traits}`);
4304
-
4305
- const start = source.startsWith("^") ? 1 : 0;
4306
- const end = source.endsWith("$") ? source.length - 1 : source.length;
4307
- regexParts.push(source.slice(start, end));
4308
- } else if (part === null || util.primitiveTypes.has(typeof part)) {
4309
- regexParts.push(util.escapeRegex(`${part}`));
4310
- } else {
4311
- throw new Error(`Invalid template literal part: ${part}`);
4312
- }
4313
- }
4314
- inst._zod.pattern = new RegExp(`^${regexParts.join("")}$`);
4315
-
4316
- inst._zod.parse = (payload, _ctx) => {
4317
- if (typeof payload.value !== "string") {
4318
- payload.issues.push({
4319
- input: payload.value,
4320
- inst,
4321
- expected: "string",
4322
- code: "invalid_type",
4323
- });
4324
- return payload;
4325
- }
4326
-
4327
- inst._zod.pattern.lastIndex = 0;
4328
-
4329
- if (!inst._zod.pattern.test(payload.value)) {
4330
- payload.issues.push({
4331
- input: payload.value,
4332
- inst,
4333
-
4334
- code: "invalid_format",
4335
- format: def.format ?? "template_literal",
4336
- pattern: inst._zod.pattern.source,
4337
- });
4338
- return payload;
4339
- }
4340
-
4341
- return payload;
4342
- };
4343
- }
4344
- );
4345
-
4346
- //////////////////////////////////////////
4347
- //////////////////////////////////////////
4348
- ////////// //////////
4349
- ////////// $ZodFunction //////////
4350
- ////////// //////////
4351
- //////////////////////////////////////////
4352
- //////////////////////////////////////////
4353
- export type $ZodFunctionArgs = $ZodType<unknown[], unknown[]>;
4354
- export type $ZodFunctionIn = $ZodFunctionArgs;
4355
- export type $ZodFunctionOut = $ZodType;
4356
-
4357
- export type $InferInnerFunctionType<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut> = (
4358
- ...args: $ZodFunctionIn extends Args ? never[] : core.output<Args>
4359
- ) => core.input<Returns>;
4360
-
4361
- export type $InferInnerFunctionTypeAsync<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut> = (
4362
- ...args: $ZodFunctionIn extends Args ? never[] : core.output<Args>
4363
- ) => util.MaybeAsync<core.input<Returns>>;
4364
-
4365
- export type $InferOuterFunctionType<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut> = (
4366
- ...args: $ZodFunctionIn extends Args ? never[] : core.input<Args>
4367
- ) => core.output<Returns>;
4368
-
4369
- export type $InferOuterFunctionTypeAsync<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut> = (
4370
- ...args: $ZodFunctionIn extends Args ? never[] : core.input<Args>
4371
- ) => Promise<core.output<Returns>>;
4372
-
4373
- export interface $ZodFunctionDef<
4374
- In extends $ZodFunctionIn = $ZodFunctionIn,
4375
- Out extends $ZodFunctionOut = $ZodFunctionOut,
4376
- > extends $ZodTypeDef {
4377
- type: "function";
4378
- input: In;
4379
- output: Out;
4380
- }
4381
-
4382
- export interface $ZodFunctionInternals<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut>
4383
- extends $ZodTypeInternals<$InferOuterFunctionType<Args, Returns>, $InferInnerFunctionType<Args, Returns>> {
4384
- def: $ZodFunctionDef<Args, Returns>;
4385
- isst: errors.$ZodIssueInvalidType;
4386
- }
4387
-
4388
- export interface $ZodFunction<
4389
- Args extends $ZodFunctionIn = $ZodFunctionIn,
4390
- Returns extends $ZodFunctionOut = $ZodFunctionOut,
4391
- > extends $ZodType<any, any, $ZodFunctionInternals<Args, Returns>> {
4392
- /** @deprecated */
4393
- _def: $ZodFunctionDef<Args, Returns>;
4394
- _input: $InferInnerFunctionType<Args, Returns>;
4395
- _output: $InferOuterFunctionType<Args, Returns>;
4396
-
4397
- implement<F extends $InferInnerFunctionType<Args, Returns>>(
4398
- func: F
4399
- ): // allow for return type inference
4400
- (
4401
- ...args: Parameters<this["_output"]>
4402
- ) => ReturnType<F> extends ReturnType<this["_output"]> ? ReturnType<F> : ReturnType<this["_output"]>;
4403
-
4404
- implementAsync<F extends $InferInnerFunctionTypeAsync<Args, Returns>>(
4405
- func: F
4406
- ): F extends $InferOuterFunctionTypeAsync<Args, Returns> ? F : $InferOuterFunctionTypeAsync<Args, Returns>;
4407
-
4408
- input<const Items extends util.TupleItems, const Rest extends $ZodFunctionOut = $ZodFunctionOut>(
4409
- args: Items,
4410
- rest?: Rest
4411
- ): $ZodFunction<$ZodTuple<Items, Rest>, Returns>;
4412
- input<NewArgs extends $ZodFunctionIn>(args: NewArgs): $ZodFunction<NewArgs, Returns>;
4413
- input(...args: any[]): $ZodFunction<any, Returns>;
4414
-
4415
- output<NewReturns extends $ZodType>(output: NewReturns): $ZodFunction<Args, NewReturns>;
4416
- }
4417
-
4418
- export interface $ZodFunctionParams<I extends $ZodFunctionIn, O extends $ZodType> {
4419
- input?: I;
4420
- output?: O;
4421
- }
4422
-
4423
- export const $ZodFunction: core.$constructor<$ZodFunction> = /*@__PURE__*/ core.$constructor(
4424
- "$ZodFunction",
4425
- (inst, def) => {
4426
- $ZodType.init(inst, def);
4427
- inst._def = def;
4428
- inst._zod.def = def;
4429
-
4430
- inst.implement = (func) => {
4431
- if (typeof func !== "function") {
4432
- throw new Error("implement() must be called with a function");
4433
- }
4434
- return function (this: any, ...args: never[]) {
4435
- const parsedArgs = inst._def.input ? parse(inst._def.input, args) : args;
4436
- const result = Reflect.apply(func, this, parsedArgs as never[]);
4437
- if (inst._def.output) {
4438
- return parse(inst._def.output, result);
4439
- }
4440
- return result as any;
4441
- };
4442
- };
4443
-
4444
- inst.implementAsync = (func) => {
4445
- if (typeof func !== "function") {
4446
- throw new Error("implementAsync() must be called with a function");
4447
- }
4448
- return async function (this: any, ...args: never[]) {
4449
- const parsedArgs = inst._def.input ? await parseAsync(inst._def.input, args) : args;
4450
- const result = await Reflect.apply(func, this, parsedArgs as never[]);
4451
- if (inst._def.output) {
4452
- return await parseAsync(inst._def.output, result);
4453
- }
4454
- return result;
4455
- } as any;
4456
- };
4457
-
4458
- inst._zod.parse = (payload, _ctx) => {
4459
- if (typeof payload.value !== "function") {
4460
- payload.issues.push({
4461
- code: "invalid_type",
4462
- expected: "function",
4463
- input: payload.value,
4464
- inst,
4465
- });
4466
- return payload;
4467
- }
4468
-
4469
- // Check if output is a promise type to determine if we should use async implementation
4470
- const hasPromiseOutput = inst._def.output && inst._def.output._zod.def.type === "promise";
4471
-
4472
- if (hasPromiseOutput) {
4473
- payload.value = inst.implementAsync(payload.value);
4474
- } else {
4475
- payload.value = inst.implement(payload.value);
4476
- }
4477
- return payload;
4478
- };
4479
-
4480
- inst.input = (...args: any[]): $ZodFunction<any, any> => {
4481
- const F: any = inst.constructor;
4482
- if (Array.isArray(args[0])) {
4483
- return new F({
4484
- type: "function",
4485
- input: new $ZodTuple({
4486
- type: "tuple",
4487
- items: args[0],
4488
- rest: args[1],
4489
- }),
4490
- output: inst._def.output,
4491
- });
4492
- }
4493
-
4494
- return new F({
4495
- type: "function",
4496
- input: args[0],
4497
- output: inst._def.output,
4498
- });
4499
- };
4500
-
4501
- inst.output = (output) => {
4502
- const F: any = inst.constructor;
4503
- return new F({
4504
- type: "function",
4505
- input: inst._def.input,
4506
- output,
4507
- });
4508
- };
4509
-
4510
- return inst;
4511
- }
4512
- );
4513
-
4514
- /////////////////////////////////////////
4515
- /////////////////////////////////////////
4516
- ////////// //////////
4517
- ////////// $ZodPromise //////////
4518
- ////////// //////////
4519
- /////////////////////////////////////////
4520
- /////////////////////////////////////////
4521
- export interface $ZodPromiseDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
4522
- type: "promise";
4523
- innerType: T;
4524
- }
4525
-
4526
- export interface $ZodPromiseInternals<T extends SomeType = $ZodType>
4527
- extends $ZodTypeInternals<Promise<core.output<T>>, util.MaybeAsync<core.input<T>>> {
4528
- def: $ZodPromiseDef<T>;
4529
- isst: never;
4530
- }
4531
-
4532
- export interface $ZodPromise<T extends SomeType = $ZodType> extends $ZodType {
4533
- _zod: $ZodPromiseInternals<T>;
4534
- }
4535
-
4536
- export const $ZodPromise: core.$constructor<$ZodPromise> = /*@__PURE__*/ core.$constructor(
4537
- "$ZodPromise",
4538
- (inst, def) => {
4539
- $ZodType.init(inst, def);
4540
-
4541
- inst._zod.parse = (payload, ctx) => {
4542
- return Promise.resolve(payload.value).then((inner) => def.innerType._zod.run({ value: inner, issues: [] }, ctx));
4543
- };
4544
- }
4545
- );
4546
-
4547
- //////////////////////////////////////////
4548
- //////////////////////////////////////////
4549
- ////////// //////////
4550
- ////////// $ZodLazy //////////
4551
- ////////// //////////
4552
- //////////////////////////////////////////
4553
- //////////////////////////////////////////
4554
-
4555
- export interface $ZodLazyDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
4556
- type: "lazy";
4557
- getter: () => T;
4558
- }
4559
-
4560
- export interface $ZodLazyInternals<T extends SomeType = $ZodType>
4561
- extends $ZodTypeInternals<core.output<T>, core.input<T>> {
4562
- def: $ZodLazyDef<T>;
4563
- isst: never;
4564
- /** Auto-cached way to retrieve the inner schema */
4565
- innerType: T;
4566
- pattern: T["_zod"]["pattern"];
4567
- propValues: T["_zod"]["propValues"];
4568
- optin: T["_zod"]["optin"];
4569
- optout: T["_zod"]["optout"];
4570
- }
4571
-
4572
- export interface $ZodLazy<T extends SomeType = $ZodType> extends $ZodType {
4573
- _zod: $ZodLazyInternals<T>;
4574
- }
4575
-
4576
- export const $ZodLazy: core.$constructor<$ZodLazy> = /*@__PURE__*/ core.$constructor("$ZodLazy", (inst, def) => {
4577
- $ZodType.init(inst, def);
4578
-
4579
- // Cache the resolved inner type on the shared `def` so all clones of this
4580
- // lazy (e.g. via `.describe()`/`.meta()`) share the same inner instance,
4581
- // preserving identity for cycle detection on recursive schemas.
4582
- util.defineLazy(inst._zod, "innerType", () => {
4583
- const d = def as $ZodLazyDef & { _cachedInner?: $ZodType };
4584
- if (!d._cachedInner) d._cachedInner = def.getter() as $ZodType;
4585
- return d._cachedInner;
4586
- });
4587
- util.defineLazy(inst._zod, "pattern", () => inst._zod.innerType?._zod?.pattern);
4588
- util.defineLazy(inst._zod, "propValues", () => inst._zod.innerType?._zod?.propValues);
4589
- util.defineLazy(inst._zod, "optin", () => inst._zod.innerType?._zod?.optin ?? undefined);
4590
- util.defineLazy(inst._zod, "optout", () => inst._zod.innerType?._zod?.optout ?? undefined);
4591
- inst._zod.parse = (payload, ctx) => {
4592
- const inner = inst._zod.innerType;
4593
- return inner._zod.run(payload, ctx);
4594
- };
4595
- });
4596
-
4597
- ////////////////////////////////////////
4598
- ////////////////////////////////////////
4599
- ////////// //////////
4600
- ////////// $ZodCustom //////////
4601
- ////////// //////////
4602
- ////////////////////////////////////////
4603
- ////////////////////////////////////////
4604
- export interface $ZodCustomDef<O = unknown> extends $ZodTypeDef, checks.$ZodCheckDef {
4605
- type: "custom";
4606
- check: "custom";
4607
- path?: PropertyKey[] | undefined;
4608
- error?: errors.$ZodErrorMap | undefined;
4609
- params?: Record<string, any> | undefined;
4610
- fn: (arg: O) => unknown;
4611
- }
4612
-
4613
- export interface $ZodCustomInternals<O = unknown, I = unknown>
4614
- extends $ZodTypeInternals<O, I>,
4615
- checks.$ZodCheckInternals<O> {
4616
- def: $ZodCustomDef;
4617
- issc: errors.$ZodIssue;
4618
- isst: never;
4619
- bag: util.LoosePartial<{
4620
- Class: typeof util.Class;
4621
- }>;
4622
- }
4623
-
4624
- export interface $ZodCustom<O = unknown, I = unknown> extends $ZodType {
4625
- _zod: $ZodCustomInternals<O, I>;
4626
- }
4627
-
4628
- export const $ZodCustom: core.$constructor<$ZodCustom> = /*@__PURE__*/ core.$constructor("$ZodCustom", (inst, def) => {
4629
- checks.$ZodCheck.init(inst, def);
4630
- $ZodType.init(inst, def);
4631
-
4632
- inst._zod.parse = (payload, _) => {
4633
- return payload;
4634
- };
4635
-
4636
- inst._zod.check = (payload) => {
4637
- const input = payload.value;
4638
- const r = def.fn(input as any);
4639
- if (r instanceof Promise) {
4640
- return r.then((r) => handleRefineResult(r, payload, input, inst));
4641
- }
4642
- handleRefineResult(r, payload, input, inst);
4643
- return;
4644
- };
4645
- });
4646
-
4647
- function handleRefineResult(result: unknown, payload: ParsePayload, input: unknown, inst: $ZodCustom): void {
4648
- if (!result) {
4649
- const _iss: any = {
4650
- code: "custom",
4651
- input,
4652
- inst, // incorporates params.error into issue reporting
4653
- path: [...(inst._zod.def.path ?? [])], // incorporates params.error into issue reporting
4654
- continue: !inst._zod.def.abort,
4655
- // params: inst._zod.def.params,
4656
- };
4657
- if (inst._zod.def.params) _iss.params = inst._zod.def.params;
4658
- payload.issues.push(util.issue(_iss));
4659
- }
4660
- }
4661
-
4662
- export type $ZodTypes =
4663
- | $ZodString
4664
- | $ZodNumber
4665
- | $ZodBigInt
4666
- | $ZodBoolean
4667
- | $ZodDate
4668
- | $ZodSymbol
4669
- | $ZodUndefined
4670
- | $ZodNullable
4671
- | $ZodNull
4672
- | $ZodAny
4673
- | $ZodUnknown
4674
- | $ZodNever
4675
- | $ZodVoid
4676
- | $ZodArray
4677
- | $ZodObject
4678
- | $ZodUnion
4679
- | $ZodIntersection
4680
- | $ZodTuple
4681
- | $ZodRecord
4682
- | $ZodMap
4683
- | $ZodSet
4684
- | $ZodLiteral
4685
- | $ZodEnum
4686
- | $ZodFunction
4687
- | $ZodPromise
4688
- | $ZodLazy
4689
- | $ZodOptional
4690
- | $ZodDefault
4691
- | $ZodPrefault
4692
- | $ZodTemplateLiteral
4693
- | $ZodCustom
4694
- | $ZodTransform
4695
- | $ZodNonOptional
4696
- | $ZodReadonly
4697
- | $ZodNaN
4698
- | $ZodPipe
4699
- | $ZodSuccess
4700
- | $ZodCatch
4701
- | $ZodFile;
4702
-
4703
- export type $ZodStringFormatTypes =
4704
- | $ZodGUID
4705
- | $ZodUUID
4706
- | $ZodEmail
4707
- | $ZodURL
4708
- | $ZodEmoji
4709
- | $ZodNanoID
4710
- | $ZodCUID
4711
- | $ZodCUID2
4712
- | $ZodULID
4713
- | $ZodXID
4714
- | $ZodKSUID
4715
- | $ZodISODateTime
4716
- | $ZodISODate
4717
- | $ZodISOTime
4718
- | $ZodISODuration
4719
- | $ZodIPv4
4720
- | $ZodIPv6
4721
- | $ZodMAC
4722
- | $ZodCIDRv4
4723
- | $ZodCIDRv6
4724
- | $ZodBase64
4725
- | $ZodBase64URL
4726
- | $ZodE164
4727
- | $ZodJWT
4728
- | $ZodCustomStringFormat<"hex">
4729
- | $ZodCustomStringFormat<util.HashFormat>
4730
- | $ZodCustomStringFormat<"hostname">;