@suveren/gateway 0.39.0 → 0.40.0

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 (751) hide show
  1. package/dist/mcp-server/http.mjs +1 -1
  2. package/dist/ui/assets/index-C-lA_7Lt.js +123 -0
  3. package/dist/ui/assets/index-DM9WXky8.css +1 -0
  4. package/dist/ui/index.html +2 -2
  5. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/server/mcp.d.ts.map +1 -1
  6. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/server/mcp.js +10 -0
  7. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/server/mcp.js.map +1 -1
  8. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/transport.d.ts +8 -8
  9. package/node_modules/@modelcontextprotocol/sdk/dist/cjs/shared/transport.d.ts.map +1 -1
  10. package/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.d.ts.map +1 -1
  11. package/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js +10 -0
  12. package/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js.map +1 -1
  13. package/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/transport.d.ts +8 -8
  14. package/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/transport.d.ts.map +1 -1
  15. package/node_modules/@modelcontextprotocol/sdk/package.json +1 -1
  16. package/node_modules/follow-redirects/README.md +27 -1
  17. package/node_modules/follow-redirects/index.js +1 -5
  18. package/node_modules/follow-redirects/package.json +1 -1
  19. package/node_modules/hono/README.md +2 -3
  20. package/node_modules/hono/dist/cjs/helper/css/common.js +8 -3
  21. package/node_modules/hono/dist/cjs/helper/css/index.js +1 -1
  22. package/node_modules/hono/dist/cjs/helper/route/index.js +3 -1
  23. package/node_modules/hono/dist/cjs/jsx/base.js +1 -1
  24. package/node_modules/hono/dist/cjs/middleware/bearer-auth/index.js +8 -0
  25. package/node_modules/hono/dist/cjs/middleware/serve-static/index.js +3 -1
  26. package/node_modules/hono/dist/cjs/router/trie-router/node.js +2 -2
  27. package/node_modules/hono/dist/cjs/utils/url.js +11 -6
  28. package/node_modules/hono/dist/helper/css/common.js +8 -3
  29. package/node_modules/hono/dist/helper/css/index.js +1 -1
  30. package/node_modules/hono/dist/helper/route/index.js +3 -1
  31. package/node_modules/hono/dist/jsx/base.js +1 -1
  32. package/node_modules/hono/dist/middleware/bearer-auth/index.js +8 -0
  33. package/node_modules/hono/dist/middleware/serve-static/index.js +3 -1
  34. package/node_modules/hono/dist/router/trie-router/node.js +2 -2
  35. package/node_modules/hono/dist/types/adapter/aws-lambda/conninfo.d.ts +1 -1
  36. package/node_modules/hono/dist/types/adapter/bun/conninfo.d.ts +1 -1
  37. package/node_modules/hono/dist/types/adapter/bun/ssg.d.ts +1 -1
  38. package/node_modules/hono/dist/types/adapter/cloudflare-pages/conninfo.d.ts +1 -1
  39. package/node_modules/hono/dist/types/adapter/cloudflare-workers/conninfo.d.ts +1 -1
  40. package/node_modules/hono/dist/types/adapter/deno/conninfo.d.ts +1 -1
  41. package/node_modules/hono/dist/types/adapter/deno/ssg.d.ts +1 -1
  42. package/node_modules/hono/dist/types/adapter/lambda-edge/conninfo.d.ts +1 -1
  43. package/node_modules/hono/dist/types/adapter/netlify/conninfo.d.ts +1 -1
  44. package/node_modules/hono/dist/types/adapter/vercel/conninfo.d.ts +1 -1
  45. package/node_modules/hono/dist/types/helper/testing/index.d.ts +2 -1
  46. package/node_modules/hono/dist/types/hono-base.d.ts +21 -9
  47. package/node_modules/hono/dist/types/index.d.ts +1 -1
  48. package/node_modules/hono/dist/types/jsx/components.d.ts +2 -2
  49. package/node_modules/hono/dist/types/jsx/context.d.ts +2 -2
  50. package/node_modules/hono/dist/types/jsx/dom/components.d.ts +2 -2
  51. package/node_modules/hono/dist/types/jsx/dom/css.d.ts +2 -2
  52. package/node_modules/hono/dist/types/jsx/streaming.d.ts +4 -3
  53. package/node_modules/hono/dist/types/middleware/bearer-auth/index.d.ts +2 -1
  54. package/node_modules/hono/dist/types/middleware/ip-restriction/index.d.ts +3 -3
  55. package/node_modules/hono/dist/types/middleware/jsx-renderer/index.d.ts +3 -3
  56. package/node_modules/hono/dist/types/utils/ipaddr.d.ts +1 -1
  57. package/node_modules/hono/dist/utils/url.js +11 -6
  58. package/node_modules/hono/package.json +1 -1
  59. package/node_modules/http-proxy-middleware/dist/handlers/fix-request-body.js +2 -2
  60. package/node_modules/http-proxy-middleware/package.json +1 -1
  61. package/node_modules/ip-address/dist/common.js +2 -2
  62. package/node_modules/ip-address/dist/common.js.map +1 -1
  63. package/node_modules/ip-address/package.json +2 -2
  64. package/node_modules/postcss/lib/input.js +1 -1
  65. package/node_modules/postcss/lib/lazy-result.js +1 -1
  66. package/node_modules/postcss/lib/no-work-result.js +1 -1
  67. package/node_modules/postcss/lib/node.js +2 -2
  68. package/node_modules/postcss/lib/processor.js +1 -1
  69. package/node_modules/postcss/lib/warning.js +1 -0
  70. package/node_modules/postcss/package.json +1 -1
  71. package/node_modules/zod/README.md +34 -24
  72. package/node_modules/zod/compile.cjs +96 -0
  73. package/node_modules/zod/compile.d.cts +1 -0
  74. package/node_modules/zod/compile.d.ts +1 -0
  75. package/node_modules/zod/compile.js +52 -0
  76. package/node_modules/zod/index.cjs +22 -3
  77. package/node_modules/zod/index.d.cts +3 -4
  78. package/node_modules/zod/index.d.ts +3 -4
  79. package/node_modules/zod/index.js +7 -4
  80. package/node_modules/zod/locales/index.cjs +36 -0
  81. package/node_modules/zod/locales/index.d.cts +1 -0
  82. package/node_modules/zod/locales/index.d.ts +1 -0
  83. package/node_modules/zod/locales/index.js +1 -0
  84. package/node_modules/zod/locales/package.json +7 -0
  85. package/node_modules/zod/mini/index.cjs +51 -0
  86. package/node_modules/zod/mini/index.d.cts +3 -0
  87. package/node_modules/zod/mini/index.d.ts +3 -0
  88. package/node_modules/zod/mini/index.js +3 -0
  89. package/node_modules/zod/mini/package.json +7 -0
  90. package/node_modules/zod/package.json +44 -15
  91. package/node_modules/zod/src/compile.ts +56 -0
  92. package/node_modules/zod/src/index.ts +7 -4
  93. package/node_modules/zod/src/locales/index.ts +1 -0
  94. package/node_modules/zod/src/mini/index.ts +3 -0
  95. package/node_modules/zod/src/v3/ZodError.ts +23 -13
  96. package/node_modules/zod/src/v3/helpers/errorUtil.ts +1 -1
  97. package/node_modules/zod/src/v3/tests/all-errors.test.ts +3 -3
  98. package/node_modules/zod/src/v3/tests/complex.test.ts +17 -3
  99. package/node_modules/zod/src/v3/tests/error.test.ts +35 -0
  100. package/node_modules/zod/src/v3/tests/function.test.ts +7 -3
  101. package/node_modules/zod/src/v3/tests/intersection.test.ts +18 -0
  102. package/node_modules/zod/src/v3/tests/language-server.test.ts +1 -2
  103. package/node_modules/zod/src/v3/tests/nan.test.ts +5 -2
  104. package/node_modules/zod/src/v3/tests/object.test.ts +10 -13
  105. package/node_modules/zod/src/v3/tests/partials.test.ts +3 -3
  106. package/node_modules/zod/src/v3/tests/readonly.test.ts +0 -80
  107. package/node_modules/zod/src/v3/tests/string.test.ts +8 -2
  108. package/node_modules/zod/src/v3/types.ts +8 -6
  109. package/node_modules/zod/src/v4/classic/checks.ts +3 -0
  110. package/node_modules/zod/src/v4/classic/compat.ts +30 -18
  111. package/node_modules/zod/src/v4/classic/deep-partial.ts +76 -0
  112. package/node_modules/zod/src/v4/classic/errors.ts +61 -39
  113. package/node_modules/zod/src/v4/classic/external.ts +18 -11
  114. package/node_modules/zod/src/v4/classic/from-json-schema.ts +944 -0
  115. package/node_modules/zod/src/v4/classic/in-out.ts +45 -0
  116. package/node_modules/zod/src/v4/classic/index.ts +2 -2
  117. package/node_modules/zod/src/v4/classic/iso.ts +2 -72
  118. package/node_modules/zod/src/v4/classic/parse.ts +57 -2
  119. package/node_modules/zod/src/v4/classic/schemas.ts +1258 -375
  120. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +86 -0
  121. package/node_modules/zod/src/v4/classic/tests/array.test.ts +35 -8
  122. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +192 -0
  123. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +36 -1
  124. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +43 -0
  125. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +357 -5
  126. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +572 -0
  127. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +704 -0
  128. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +27 -5
  129. package/node_modules/zod/src/v4/classic/tests/credit-card.test.ts +76 -0
  130. package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +985 -0
  131. package/node_modules/zod/src/v4/classic/tests/date.test.ts +67 -6
  132. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +37 -17
  133. package/node_modules/zod/src/v4/classic/tests/deep-partial.test.ts +380 -0
  134. package/node_modules/zod/src/v4/classic/tests/default-locale.test.ts +32 -0
  135. package/node_modules/zod/src/v4/classic/tests/default.test.ts +142 -0
  136. package/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +27 -0
  137. package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +221 -0
  138. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +333 -10
  139. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +20 -0
  140. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +394 -4
  141. package/node_modules/zod/src/v4/classic/tests/error.test.ts +403 -6
  142. package/node_modules/zod/src/v4/classic/tests/file.test.ts +9 -4
  143. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +4 -0
  144. package/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +26 -0
  145. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +1467 -0
  146. package/node_modules/zod/src/v4/classic/tests/function.test.ts +160 -37
  147. package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +32 -0
  148. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +67 -0
  149. package/node_modules/zod/src/v4/classic/tests/iban.test.ts +81 -0
  150. package/node_modules/zod/src/v4/classic/tests/in-out.test.ts +159 -0
  151. package/node_modules/zod/src/v4/classic/tests/index.test.ts +134 -5
  152. package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +319 -0
  153. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +93 -0
  154. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +168 -5
  155. package/node_modules/zod/src/v4/classic/tests/issue-schema.test.ts +215 -0
  156. package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +39 -0
  157. package/node_modules/zod/src/v4/classic/tests/json.test.ts +4 -3
  158. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +36 -1
  159. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +37 -1
  160. package/node_modules/zod/src/v4/classic/tests/locales_ka.test.ts +29 -0
  161. package/node_modules/zod/src/v4/classic/tests/locales_ro.test.ts +24 -0
  162. package/node_modules/zod/src/v4/classic/tests/map.test.ts +153 -0
  163. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +15 -0
  164. package/node_modules/zod/src/v4/classic/tests/number.test.ts +161 -7
  165. package/node_modules/zod/src/v4/classic/tests/object.test.ts +457 -14
  166. package/node_modules/zod/src/v4/classic/tests/optin-ladder.test.ts +235 -0
  167. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +255 -12
  168. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +350 -0
  169. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +89 -5
  170. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +25 -5
  171. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +107 -0
  172. package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +44 -0
  173. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +74 -21
  174. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +1 -1
  175. package/node_modules/zod/src/v4/classic/tests/properties.test.ts +141 -0
  176. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +1 -69
  177. package/node_modules/zod/src/v4/classic/tests/record.test.ts +553 -10
  178. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +352 -1
  179. package/node_modules/zod/src/v4/classic/tests/redos.test.ts +68 -0
  180. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +229 -68
  181. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +40 -1
  182. package/node_modules/zod/src/v4/classic/tests/set.test.ts +20 -3
  183. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +96 -0
  184. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +16 -0
  185. package/node_modules/zod/src/v4/classic/tests/string.test.ts +568 -9
  186. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +58 -0
  187. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +70 -16
  188. package/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +438 -0
  189. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +3409 -990
  190. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +128 -0
  191. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +353 -5
  192. package/node_modules/zod/src/v4/classic/tests/union.test.ts +219 -3
  193. package/node_modules/zod/src/v4/classic/tests/url.test.ts +13 -0
  194. package/node_modules/zod/src/v4/classic/tests/validate.test.ts +645 -0
  195. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +2 -2
  196. package/node_modules/zod/src/v4/core/api.ts +442 -161
  197. package/node_modules/zod/src/v4/core/checks.ts +134 -151
  198. package/node_modules/zod/src/v4/core/compile.ts +2322 -0
  199. package/node_modules/zod/src/v4/core/core.ts +146 -50
  200. package/node_modules/zod/src/v4/core/doc.ts +18 -10
  201. package/node_modules/zod/src/v4/core/errors.ts +221 -102
  202. package/node_modules/zod/src/v4/core/index.ts +5 -1
  203. package/node_modules/zod/src/v4/core/json-schema-generator.ts +131 -0
  204. package/node_modules/zod/src/v4/core/json-schema-processors.ts +934 -0
  205. package/node_modules/zod/src/v4/core/json-schema.ts +9 -4
  206. package/node_modules/zod/src/v4/core/memoizer.ts +331 -0
  207. package/node_modules/zod/src/v4/core/parse.ts +252 -37
  208. package/node_modules/zod/src/v4/core/regexes.ts +112 -30
  209. package/node_modules/zod/src/v4/core/registries.ts +19 -10
  210. package/node_modules/zod/src/v4/core/schemas.ts +1972 -588
  211. package/node_modules/zod/src/v4/core/standard-schema.ts +114 -19
  212. package/node_modules/zod/src/v4/core/tests/cached.test.ts +54 -0
  213. package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +1004 -0
  214. package/node_modules/zod/src/v4/core/tests/compile-generative.test.ts +445 -0
  215. package/node_modules/zod/src/v4/core/tests/compile-global.test.ts +89 -0
  216. package/node_modules/zod/src/v4/core/tests/compile-off-by-default.test.ts +26 -0
  217. package/node_modules/zod/src/v4/core/tests/compile-stats.test.ts +34 -0
  218. package/node_modules/zod/src/v4/core/tests/compile.test.ts +2036 -0
  219. package/node_modules/zod/src/v4/core/tests/email-regex.test.ts +140 -0
  220. package/node_modules/zod/src/v4/core/tests/extend.test.ts +59 -0
  221. package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +214 -0
  222. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +1 -1
  223. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +180 -0
  224. package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +72 -0
  225. package/node_modules/zod/src/v4/core/tests/locales/he.test.ts +379 -0
  226. package/node_modules/zod/src/v4/core/tests/locales/hr.test.ts +163 -0
  227. package/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +46 -0
  228. package/node_modules/zod/src/v4/core/tests/locales/parity.test.ts +42 -0
  229. package/node_modules/zod/src/v4/core/tests/locales/tg.test.ts +85 -0
  230. package/node_modules/zod/src/v4/core/tests/locales/tk.test.ts +69 -0
  231. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +2 -2
  232. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +105 -0
  233. package/node_modules/zod/src/v4/core/tests/polyfill-collision.test.ts +46 -0
  234. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +125 -0
  235. package/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +45 -0
  236. package/node_modules/zod/src/v4/core/tests/treeshake.test.ts +51 -0
  237. package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +133 -0
  238. package/node_modules/zod/src/v4/core/to-json-schema.ts +706 -826
  239. package/node_modules/zod/src/v4/core/util.ts +675 -157
  240. package/node_modules/zod/src/v4/core/versions.ts +2 -2
  241. package/node_modules/zod/src/v4/core/visit.ts +193 -0
  242. package/node_modules/zod/src/v4/index.ts +3 -3
  243. package/node_modules/zod/src/v4/locales/ar.ts +22 -27
  244. package/node_modules/zod/src/v4/locales/az.ts +22 -27
  245. package/node_modules/zod/src/v4/locales/be.ts +31 -27
  246. package/node_modules/zod/src/v4/locales/bg.ts +133 -0
  247. package/node_modules/zod/src/v4/locales/bn.ts +123 -0
  248. package/node_modules/zod/src/v4/locales/ca.ts +22 -28
  249. package/node_modules/zod/src/v4/locales/ckb.ts +140 -0
  250. package/node_modules/zod/src/v4/locales/cs.ts +26 -45
  251. package/node_modules/zod/src/v4/locales/da.ts +128 -0
  252. package/node_modules/zod/src/v4/locales/de.ts +24 -27
  253. package/node_modules/zod/src/v4/locales/el.ts +124 -0
  254. package/node_modules/zod/src/v4/locales/en.ts +38 -29
  255. package/node_modules/zod/src/v4/locales/eo.ts +25 -27
  256. package/node_modules/zod/src/v4/locales/es.ts +53 -33
  257. package/node_modules/zod/src/v4/locales/fa.ts +24 -27
  258. package/node_modules/zod/src/v4/locales/fi.ts +22 -27
  259. package/node_modules/zod/src/v4/locales/fr-CA.ts +22 -27
  260. package/node_modules/zod/src/v4/locales/fr.ts +58 -43
  261. package/node_modules/zod/src/v4/locales/gu.ts +123 -0
  262. package/node_modules/zod/src/v4/locales/he.ts +208 -80
  263. package/node_modules/zod/src/v4/locales/hi.ts +126 -0
  264. package/node_modules/zod/src/v4/locales/hr.ts +135 -0
  265. package/node_modules/zod/src/v4/locales/hu.ts +24 -28
  266. package/node_modules/zod/src/v4/locales/hy.ts +175 -0
  267. package/node_modules/zod/src/v4/locales/id.ts +22 -27
  268. package/node_modules/zod/src/v4/locales/index.ts +24 -0
  269. package/node_modules/zod/src/v4/locales/is.ts +124 -0
  270. package/node_modules/zod/src/v4/locales/it.ts +24 -28
  271. package/node_modules/zod/src/v4/locales/ja.ts +24 -27
  272. package/node_modules/zod/src/v4/locales/ka.ts +128 -0
  273. package/node_modules/zod/src/v4/locales/kh.ts +3 -122
  274. package/node_modules/zod/src/v4/locales/km.ts +124 -0
  275. package/node_modules/zod/src/v4/locales/kn.ts +126 -0
  276. package/node_modules/zod/src/v4/locales/ko.ts +22 -27
  277. package/node_modules/zod/src/v4/locales/lt.ts +243 -0
  278. package/node_modules/zod/src/v4/locales/mk.ts +24 -28
  279. package/node_modules/zod/src/v4/locales/ms.ts +23 -27
  280. package/node_modules/zod/src/v4/locales/ne.ts +128 -0
  281. package/node_modules/zod/src/v4/locales/nl.ts +37 -37
  282. package/node_modules/zod/src/v4/locales/nn.ts +121 -0
  283. package/node_modules/zod/src/v4/locales/no.ts +26 -29
  284. package/node_modules/zod/src/v4/locales/ota.ts +25 -28
  285. package/node_modules/zod/src/v4/locales/pl.ts +24 -27
  286. package/node_modules/zod/src/v4/locales/ps.ts +24 -26
  287. package/node_modules/zod/src/v4/locales/pt-BR.ts +161 -0
  288. package/node_modules/zod/src/v4/locales/pt.ts +107 -71
  289. package/node_modules/zod/src/v4/locales/ro.ts +132 -0
  290. package/node_modules/zod/src/v4/locales/ru.ts +31 -27
  291. package/node_modules/zod/src/v4/locales/sk.ts +123 -0
  292. package/node_modules/zod/src/v4/locales/sl.ts +24 -27
  293. package/node_modules/zod/src/v4/locales/sv.ts +26 -29
  294. package/node_modules/zod/src/v4/locales/ta.ts +25 -27
  295. package/node_modules/zod/src/v4/locales/tg.ts +135 -0
  296. package/node_modules/zod/src/v4/locales/th.ts +25 -27
  297. package/node_modules/zod/src/v4/locales/tk.ts +113 -0
  298. package/node_modules/zod/src/v4/locales/tr.ts +22 -27
  299. package/node_modules/zod/src/v4/locales/ua.ts +3 -122
  300. package/node_modules/zod/src/v4/locales/uk.ts +122 -0
  301. package/node_modules/zod/src/v4/locales/ur.ts +25 -27
  302. package/node_modules/zod/src/v4/locales/uz.ts +120 -0
  303. package/node_modules/zod/src/v4/locales/vi.ts +24 -27
  304. package/node_modules/zod/src/v4/locales/yo.ts +129 -0
  305. package/node_modules/zod/src/v4/locales/zh-CN.ts +25 -27
  306. package/node_modules/zod/src/v4/locales/zh-TW.ts +22 -27
  307. package/node_modules/zod/src/v4/mini/checks.ts +1 -0
  308. package/node_modules/zod/src/v4/mini/coerce.ts +5 -0
  309. package/node_modules/zod/src/v4/mini/deep-partial.ts +73 -0
  310. package/node_modules/zod/src/v4/mini/external.ts +15 -3
  311. package/node_modules/zod/src/v4/mini/in-out.ts +45 -0
  312. package/node_modules/zod/src/v4/mini/iso.ts +8 -4
  313. package/node_modules/zod/src/v4/mini/parse.ts +16 -1
  314. package/node_modules/zod/src/v4/mini/schemas.ts +586 -114
  315. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +57 -0
  316. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +63 -2
  317. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +43 -0
  318. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +14 -0
  319. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +582 -0
  320. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +12 -18
  321. package/node_modules/zod/src/v4/mini/tests/cyclic-data.test.ts +84 -0
  322. package/node_modules/zod/src/v4/mini/tests/deep-partial.test.ts +54 -0
  323. package/node_modules/zod/src/v4/mini/tests/error.test.ts +24 -5
  324. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +7 -36
  325. package/node_modules/zod/src/v4/mini/tests/index.test.ts +281 -6
  326. package/node_modules/zod/src/v4/mini/tests/number.test.ts +15 -1
  327. package/node_modules/zod/src/v4/mini/tests/object.test.ts +116 -9
  328. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +1 -1
  329. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +68 -2
  330. package/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +50 -0
  331. package/node_modules/zod/src/v4/mini/tests/string.test.ts +98 -1
  332. package/node_modules/zod/src/v4-mini/index.ts +3 -1
  333. package/node_modules/zod/v3/ZodError.cjs +42 -13
  334. package/node_modules/zod/v3/ZodError.d.cts +6 -6
  335. package/node_modules/zod/v3/ZodError.d.ts +6 -6
  336. package/node_modules/zod/v3/ZodError.js +23 -13
  337. package/node_modules/zod/v3/errors.cjs +19 -0
  338. package/node_modules/zod/v3/external.cjs +19 -0
  339. package/node_modules/zod/v3/helpers/enumUtil.cjs +19 -0
  340. package/node_modules/zod/v3/helpers/errorUtil.cjs +20 -1
  341. package/node_modules/zod/v3/helpers/errorUtil.js +1 -1
  342. package/node_modules/zod/v3/helpers/parseUtil.cjs +19 -0
  343. package/node_modules/zod/v3/helpers/partialUtil.cjs +19 -0
  344. package/node_modules/zod/v3/helpers/typeAliases.cjs +19 -0
  345. package/node_modules/zod/v3/helpers/util.cjs +19 -0
  346. package/node_modules/zod/v3/index.cjs +19 -0
  347. package/node_modules/zod/v3/locales/en.cjs +1 -0
  348. package/node_modules/zod/v3/locales/en.d.cts +1 -1
  349. package/node_modules/zod/v3/package.json +7 -0
  350. package/node_modules/zod/v3/standard-schema.cjs +19 -0
  351. package/node_modules/zod/v3/types.cjs +28 -5
  352. package/node_modules/zod/v3/types.d.cts +4 -1
  353. package/node_modules/zod/v3/types.d.ts +4 -1
  354. package/node_modules/zod/v3/types.js +9 -5
  355. package/node_modules/zod/v4/classic/checks.cjs +22 -1
  356. package/node_modules/zod/v4/classic/checks.d.cts +1 -1
  357. package/node_modules/zod/v4/classic/checks.d.ts +1 -1
  358. package/node_modules/zod/v4/classic/checks.js +1 -1
  359. package/node_modules/zod/v4/classic/coerce.cjs +19 -0
  360. package/node_modules/zod/v4/classic/compat.cjs +24 -1
  361. package/node_modules/zod/v4/classic/compat.d.cts +13 -11
  362. package/node_modules/zod/v4/classic/compat.d.ts +13 -11
  363. package/node_modules/zod/v4/classic/compat.js +4 -0
  364. package/node_modules/zod/v4/classic/deep-partial.cjs +58 -0
  365. package/node_modules/zod/v4/classic/deep-partial.d.cts +14 -0
  366. package/node_modules/zod/v4/classic/deep-partial.d.ts +14 -0
  367. package/node_modules/zod/v4/classic/deep-partial.js +13 -0
  368. package/node_modules/zod/v4/classic/errors.cjs +63 -28
  369. package/node_modules/zod/v4/classic/errors.d.cts +3 -4
  370. package/node_modules/zod/v4/classic/errors.d.ts +3 -4
  371. package/node_modules/zod/v4/classic/errors.js +45 -29
  372. package/node_modules/zod/v4/classic/external.cjs +55 -28
  373. package/node_modules/zod/v4/classic/external.d.cts +8 -2
  374. package/node_modules/zod/v4/classic/external.d.ts +8 -2
  375. package/node_modules/zod/v4/classic/external.js +7 -8
  376. package/node_modules/zod/v4/classic/from-json-schema.cjs +926 -0
  377. package/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
  378. package/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
  379. package/node_modules/zod/v4/classic/from-json-schema.js +881 -0
  380. package/node_modules/zod/v4/classic/in-out.cjs +82 -0
  381. package/node_modules/zod/v4/classic/in-out.d.cts +8 -0
  382. package/node_modules/zod/v4/classic/in-out.d.ts +8 -0
  383. package/node_modules/zod/v4/classic/in-out.js +36 -0
  384. package/node_modules/zod/v4/classic/index.cjs +21 -2
  385. package/node_modules/zod/v4/classic/index.d.cts +1 -2
  386. package/node_modules/zod/v4/classic/index.d.ts +1 -2
  387. package/node_modules/zod/v4/classic/index.js +2 -2
  388. package/node_modules/zod/v4/classic/iso.cjs +30 -22
  389. package/node_modules/zod/v4/classic/iso.d.cts +2 -17
  390. package/node_modules/zod/v4/classic/iso.d.ts +2 -17
  391. package/node_modules/zod/v4/classic/iso.js +2 -17
  392. package/node_modules/zod/v4/classic/package.json +7 -0
  393. package/node_modules/zod/v4/classic/parse.cjs +32 -1
  394. package/node_modules/zod/v4/classic/parse.d.cts +21 -0
  395. package/node_modules/zod/v4/classic/parse.d.ts +21 -0
  396. package/node_modules/zod/v4/classic/parse.js +10 -0
  397. package/node_modules/zod/v4/classic/schemas.cjs +805 -238
  398. package/node_modules/zod/v4/classic/schemas.d.cts +241 -55
  399. package/node_modules/zod/v4/classic/schemas.d.ts +241 -55
  400. package/node_modules/zod/v4/classic/schemas.js +766 -237
  401. package/node_modules/zod/v4/core/api.cjs +284 -54
  402. package/node_modules/zod/v4/core/api.d.cts +133 -82
  403. package/node_modules/zod/v4/core/api.d.ts +133 -82
  404. package/node_modules/zod/v4/core/api.js +255 -54
  405. package/node_modules/zod/v4/core/checks.cjs +100 -130
  406. package/node_modules/zod/v4/core/checks.d.cts +32 -16
  407. package/node_modules/zod/v4/core/checks.d.ts +32 -16
  408. package/node_modules/zod/v4/core/checks.js +80 -129
  409. package/node_modules/zod/v4/core/compile.cjs +1916 -0
  410. package/node_modules/zod/v4/core/compile.d.cts +65 -0
  411. package/node_modules/zod/v4/core/compile.d.ts +65 -0
  412. package/node_modules/zod/v4/core/compile.js +1866 -0
  413. package/node_modules/zod/v4/core/core.cjs +120 -20
  414. package/node_modules/zod/v4/core/core.d.cts +40 -7
  415. package/node_modules/zod/v4/core/core.d.ts +40 -7
  416. package/node_modules/zod/v4/core/core.js +101 -21
  417. package/node_modules/zod/v4/core/doc.cjs +31 -9
  418. package/node_modules/zod/v4/core/doc.d.cts +4 -2
  419. package/node_modules/zod/v4/core/doc.d.ts +4 -2
  420. package/node_modules/zod/v4/core/doc.js +12 -9
  421. package/node_modules/zod/v4/core/errors.cjs +151 -60
  422. package/node_modules/zod/v4/core/errors.d.cts +41 -24
  423. package/node_modules/zod/v4/core/errors.d.ts +41 -24
  424. package/node_modules/zod/v4/core/errors.js +132 -60
  425. package/node_modules/zod/v4/core/index.cjs +28 -2
  426. package/node_modules/zod/v4/core/index.d.cts +5 -1
  427. package/node_modules/zod/v4/core/index.d.ts +5 -1
  428. package/node_modules/zod/v4/core/index.js +5 -1
  429. package/node_modules/zod/v4/core/json-schema-generator.cjs +122 -0
  430. package/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
  431. package/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
  432. package/node_modules/zod/v4/core/json-schema-generator.js +99 -0
  433. package/node_modules/zod/v4/core/json-schema-processors.cjs +929 -0
  434. package/node_modules/zod/v4/core/json-schema-processors.d.cts +65 -0
  435. package/node_modules/zod/v4/core/json-schema-processors.d.ts +65 -0
  436. package/node_modules/zod/v4/core/json-schema-processors.js +843 -0
  437. package/node_modules/zod/v4/core/json-schema.cjs +19 -0
  438. package/node_modules/zod/v4/core/json-schema.d.cts +6 -4
  439. package/node_modules/zod/v4/core/json-schema.d.ts +6 -4
  440. package/node_modules/zod/v4/core/memoizer.cjs +360 -0
  441. package/node_modules/zod/v4/core/memoizer.d.cts +15 -0
  442. package/node_modules/zod/v4/core/memoizer.d.ts +15 -0
  443. package/node_modules/zod/v4/core/memoizer.js +311 -0
  444. package/node_modules/zod/v4/core/package.json +7 -0
  445. package/node_modules/zod/v4/core/parse.cjs +183 -37
  446. package/node_modules/zod/v4/core/parse.d.cts +34 -7
  447. package/node_modules/zod/v4/core/parse.d.ts +34 -7
  448. package/node_modules/zod/v4/core/parse.js +154 -36
  449. package/node_modules/zod/v4/core/regexes.cjs +137 -31
  450. package/node_modules/zod/v4/core/regexes.d.cts +30 -2
  451. package/node_modules/zod/v4/core/regexes.d.ts +30 -2
  452. package/node_modules/zod/v4/core/regexes.js +90 -29
  453. package/node_modules/zod/v4/core/registries.cjs +26 -7
  454. package/node_modules/zod/v4/core/registries.d.cts +2 -2
  455. package/node_modules/zod/v4/core/registries.d.ts +2 -2
  456. package/node_modules/zod/v4/core/registries.js +9 -9
  457. package/node_modules/zod/v4/core/schemas.cjs +1373 -422
  458. package/node_modules/zod/v4/core/schemas.d.cts +276 -42
  459. package/node_modules/zod/v4/core/schemas.d.ts +276 -42
  460. package/node_modules/zod/v4/core/schemas.js +1341 -422
  461. package/node_modules/zod/v4/core/standard-schema.cjs +19 -0
  462. package/node_modules/zod/v4/core/standard-schema.d.cts +90 -19
  463. package/node_modules/zod/v4/core/standard-schema.d.ts +90 -19
  464. package/node_modules/zod/v4/core/to-json-schema.cjs +628 -801
  465. package/node_modules/zod/v4/core/to-json-schema.d.cts +103 -37
  466. package/node_modules/zod/v4/core/to-json-schema.d.ts +103 -37
  467. package/node_modules/zod/v4/core/to-json-schema.js +602 -800
  468. package/node_modules/zod/v4/core/util.cjs +580 -155
  469. package/node_modules/zod/v4/core/util.d.cts +98 -1
  470. package/node_modules/zod/v4/core/util.d.ts +98 -1
  471. package/node_modules/zod/v4/core/util.js +536 -156
  472. package/node_modules/zod/v4/core/versions.cjs +21 -2
  473. package/node_modules/zod/v4/core/versions.d.cts +1 -1
  474. package/node_modules/zod/v4/core/versions.d.ts +1 -1
  475. package/node_modules/zod/v4/core/versions.js +2 -2
  476. package/node_modules/zod/v4/core/visit.cjs +214 -0
  477. package/node_modules/zod/v4/core/visit.d.cts +30 -0
  478. package/node_modules/zod/v4/core/visit.d.ts +30 -0
  479. package/node_modules/zod/v4/core/visit.js +169 -0
  480. package/node_modules/zod/v4/index.cjs +34 -5
  481. package/node_modules/zod/v4/index.d.cts +2 -2
  482. package/node_modules/zod/v4/index.d.ts +2 -2
  483. package/node_modules/zod/v4/index.js +3 -2
  484. package/node_modules/zod/v4/locales/ar.cjs +20 -24
  485. package/node_modules/zod/v4/locales/ar.d.cts +2 -1
  486. package/node_modules/zod/v4/locales/ar.js +19 -24
  487. package/node_modules/zod/v4/locales/az.cjs +20 -24
  488. package/node_modules/zod/v4/locales/az.d.cts +2 -1
  489. package/node_modules/zod/v4/locales/az.js +19 -24
  490. package/node_modules/zod/v4/locales/be.cjs +29 -24
  491. package/node_modules/zod/v4/locales/be.d.cts +2 -1
  492. package/node_modules/zod/v4/locales/be.js +28 -24
  493. package/node_modules/zod/v4/locales/bg.cjs +152 -0
  494. package/node_modules/zod/v4/locales/bg.d.cts +5 -0
  495. package/node_modules/zod/v4/locales/bg.d.ts +4 -0
  496. package/node_modules/zod/v4/locales/bg.js +125 -0
  497. package/node_modules/zod/v4/locales/bn.cjs +140 -0
  498. package/node_modules/zod/v4/locales/bn.d.cts +5 -0
  499. package/node_modules/zod/v4/locales/bn.d.ts +4 -0
  500. package/node_modules/zod/v4/locales/bn.js +113 -0
  501. package/node_modules/zod/v4/locales/ca.cjs +20 -25
  502. package/node_modules/zod/v4/locales/ca.d.cts +2 -1
  503. package/node_modules/zod/v4/locales/ca.js +19 -25
  504. package/node_modules/zod/v4/locales/ckb.cjs +160 -0
  505. package/node_modules/zod/v4/locales/ckb.d.cts +5 -0
  506. package/node_modules/zod/v4/locales/ckb.d.ts +4 -0
  507. package/node_modules/zod/v4/locales/ckb.js +133 -0
  508. package/node_modules/zod/v4/locales/cs.cjs +24 -42
  509. package/node_modules/zod/v4/locales/cs.d.cts +2 -1
  510. package/node_modules/zod/v4/locales/cs.js +23 -42
  511. package/node_modules/zod/v4/locales/da.cjs +147 -0
  512. package/node_modules/zod/v4/locales/da.d.cts +5 -0
  513. package/node_modules/zod/v4/locales/da.d.ts +4 -0
  514. package/node_modules/zod/v4/locales/da.js +120 -0
  515. package/node_modules/zod/v4/locales/de.cjs +22 -24
  516. package/node_modules/zod/v4/locales/de.d.cts +2 -1
  517. package/node_modules/zod/v4/locales/de.js +21 -24
  518. package/node_modules/zod/v4/locales/el.cjs +139 -0
  519. package/node_modules/zod/v4/locales/el.d.cts +5 -0
  520. package/node_modules/zod/v4/locales/el.d.ts +4 -0
  521. package/node_modules/zod/v4/locales/el.js +112 -0
  522. package/node_modules/zod/v4/locales/en.cjs +35 -28
  523. package/node_modules/zod/v4/locales/en.d.cts +2 -2
  524. package/node_modules/zod/v4/locales/en.d.ts +0 -1
  525. package/node_modules/zod/v4/locales/en.js +34 -26
  526. package/node_modules/zod/v4/locales/eo.cjs +23 -26
  527. package/node_modules/zod/v4/locales/eo.d.cts +2 -2
  528. package/node_modules/zod/v4/locales/eo.d.ts +0 -1
  529. package/node_modules/zod/v4/locales/eo.js +22 -24
  530. package/node_modules/zod/v4/locales/es.cjs +51 -31
  531. package/node_modules/zod/v4/locales/es.d.cts +2 -1
  532. package/node_modules/zod/v4/locales/es.js +50 -31
  533. package/node_modules/zod/v4/locales/fa.cjs +22 -24
  534. package/node_modules/zod/v4/locales/fa.d.cts +2 -1
  535. package/node_modules/zod/v4/locales/fa.js +21 -24
  536. package/node_modules/zod/v4/locales/fi.cjs +20 -24
  537. package/node_modules/zod/v4/locales/fi.d.cts +2 -1
  538. package/node_modules/zod/v4/locales/fi.js +19 -24
  539. package/node_modules/zod/v4/locales/fr-CA.cjs +20 -24
  540. package/node_modules/zod/v4/locales/fr-CA.d.cts +2 -1
  541. package/node_modules/zod/v4/locales/fr-CA.js +19 -24
  542. package/node_modules/zod/v4/locales/fr.cjs +53 -39
  543. package/node_modules/zod/v4/locales/fr.d.cts +2 -1
  544. package/node_modules/zod/v4/locales/fr.js +52 -39
  545. package/node_modules/zod/v4/locales/gu.cjs +140 -0
  546. package/node_modules/zod/v4/locales/gu.d.cts +5 -0
  547. package/node_modules/zod/v4/locales/gu.d.ts +4 -0
  548. package/node_modules/zod/v4/locales/gu.js +113 -0
  549. package/node_modules/zod/v4/locales/he.cjs +183 -78
  550. package/node_modules/zod/v4/locales/he.d.cts +2 -1
  551. package/node_modules/zod/v4/locales/he.js +182 -78
  552. package/node_modules/zod/v4/locales/hi.cjs +138 -0
  553. package/node_modules/zod/v4/locales/hi.d.cts +5 -0
  554. package/node_modules/zod/v4/locales/hi.d.ts +4 -0
  555. package/node_modules/zod/v4/locales/hi.js +111 -0
  556. package/node_modules/zod/v4/locales/hr.cjs +153 -0
  557. package/node_modules/zod/v4/locales/hr.d.cts +5 -0
  558. package/node_modules/zod/v4/locales/hr.d.ts +4 -0
  559. package/node_modules/zod/v4/locales/hr.js +126 -0
  560. package/node_modules/zod/v4/locales/hu.cjs +22 -25
  561. package/node_modules/zod/v4/locales/hu.d.cts +2 -1
  562. package/node_modules/zod/v4/locales/hu.js +21 -25
  563. package/node_modules/zod/v4/locales/hy.cjs +185 -0
  564. package/node_modules/zod/v4/locales/hy.d.cts +5 -0
  565. package/node_modules/zod/v4/locales/hy.d.ts +4 -0
  566. package/node_modules/zod/v4/locales/hy.js +158 -0
  567. package/node_modules/zod/v4/locales/id.cjs +20 -24
  568. package/node_modules/zod/v4/locales/id.d.cts +2 -1
  569. package/node_modules/zod/v4/locales/id.js +19 -24
  570. package/node_modules/zod/v4/locales/index.cjs +69 -1
  571. package/node_modules/zod/v4/locales/index.d.cts +24 -0
  572. package/node_modules/zod/v4/locales/index.d.ts +24 -0
  573. package/node_modules/zod/v4/locales/index.js +24 -0
  574. package/node_modules/zod/v4/locales/is.cjs +141 -0
  575. package/node_modules/zod/v4/locales/is.d.cts +5 -0
  576. package/node_modules/zod/v4/locales/is.d.ts +4 -0
  577. package/node_modules/zod/v4/locales/is.js +114 -0
  578. package/node_modules/zod/v4/locales/it.cjs +22 -25
  579. package/node_modules/zod/v4/locales/it.d.cts +2 -1
  580. package/node_modules/zod/v4/locales/it.js +21 -25
  581. package/node_modules/zod/v4/locales/ja.cjs +22 -24
  582. package/node_modules/zod/v4/locales/ja.d.cts +2 -1
  583. package/node_modules/zod/v4/locales/ja.js +21 -24
  584. package/node_modules/zod/v4/locales/ka.cjs +144 -0
  585. package/node_modules/zod/v4/locales/ka.d.cts +5 -0
  586. package/node_modules/zod/v4/locales/ka.d.ts +4 -0
  587. package/node_modules/zod/v4/locales/ka.js +117 -0
  588. package/node_modules/zod/v4/locales/kh.cjs +6 -137
  589. package/node_modules/zod/v4/locales/kh.d.cts +2 -1
  590. package/node_modules/zod/v4/locales/kh.d.ts +1 -0
  591. package/node_modules/zod/v4/locales/kh.js +3 -115
  592. package/node_modules/zod/v4/locales/km.cjs +142 -0
  593. package/node_modules/zod/v4/locales/km.d.cts +5 -0
  594. package/node_modules/zod/v4/locales/km.d.ts +4 -0
  595. package/node_modules/zod/v4/locales/km.js +115 -0
  596. package/node_modules/zod/v4/locales/kn.cjs +143 -0
  597. package/node_modules/zod/v4/locales/kn.d.cts +5 -0
  598. package/node_modules/zod/v4/locales/kn.d.ts +4 -0
  599. package/node_modules/zod/v4/locales/kn.js +116 -0
  600. package/node_modules/zod/v4/locales/ko.cjs +20 -24
  601. package/node_modules/zod/v4/locales/ko.d.cts +2 -1
  602. package/node_modules/zod/v4/locales/ko.js +19 -24
  603. package/node_modules/zod/v4/locales/lt.cjs +234 -0
  604. package/node_modules/zod/v4/locales/lt.d.cts +5 -0
  605. package/node_modules/zod/v4/locales/lt.d.ts +4 -0
  606. package/node_modules/zod/v4/locales/lt.js +207 -0
  607. package/node_modules/zod/v4/locales/mk.cjs +22 -25
  608. package/node_modules/zod/v4/locales/mk.d.cts +2 -1
  609. package/node_modules/zod/v4/locales/mk.js +21 -25
  610. package/node_modules/zod/v4/locales/ms.cjs +21 -24
  611. package/node_modules/zod/v4/locales/ms.d.cts +2 -1
  612. package/node_modules/zod/v4/locales/ms.js +20 -24
  613. package/node_modules/zod/v4/locales/ne.cjs +138 -0
  614. package/node_modules/zod/v4/locales/ne.d.cts +5 -0
  615. package/node_modules/zod/v4/locales/ne.d.ts +4 -0
  616. package/node_modules/zod/v4/locales/ne.js +111 -0
  617. package/node_modules/zod/v4/locales/nl.cjs +31 -32
  618. package/node_modules/zod/v4/locales/nl.d.cts +2 -1
  619. package/node_modules/zod/v4/locales/nl.js +30 -32
  620. package/node_modules/zod/v4/locales/nn.cjs +140 -0
  621. package/node_modules/zod/v4/locales/nn.d.cts +5 -0
  622. package/node_modules/zod/v4/locales/nn.d.ts +4 -0
  623. package/node_modules/zod/v4/locales/nn.js +113 -0
  624. package/node_modules/zod/v4/locales/no.cjs +24 -26
  625. package/node_modules/zod/v4/locales/no.d.cts +2 -1
  626. package/node_modules/zod/v4/locales/no.js +23 -26
  627. package/node_modules/zod/v4/locales/ota.cjs +23 -25
  628. package/node_modules/zod/v4/locales/ota.d.cts +2 -1
  629. package/node_modules/zod/v4/locales/ota.js +22 -25
  630. package/node_modules/zod/v4/locales/package.json +7 -0
  631. package/node_modules/zod/v4/locales/pl.cjs +22 -24
  632. package/node_modules/zod/v4/locales/pl.d.cts +2 -1
  633. package/node_modules/zod/v4/locales/pl.js +21 -24
  634. package/node_modules/zod/v4/locales/ps.cjs +22 -24
  635. package/node_modules/zod/v4/locales/ps.d.cts +2 -1
  636. package/node_modules/zod/v4/locales/ps.js +21 -24
  637. package/node_modules/zod/v4/locales/pt-BR.cjs +170 -0
  638. package/node_modules/zod/v4/locales/pt-BR.d.cts +5 -0
  639. package/node_modules/zod/v4/locales/pt-BR.d.ts +4 -0
  640. package/node_modules/zod/v4/locales/pt-BR.js +143 -0
  641. package/node_modules/zod/v4/locales/pt.cjs +95 -68
  642. package/node_modules/zod/v4/locales/pt.d.cts +2 -1
  643. package/node_modules/zod/v4/locales/pt.js +94 -68
  644. package/node_modules/zod/v4/locales/ro.cjs +149 -0
  645. package/node_modules/zod/v4/locales/ro.d.cts +5 -0
  646. package/node_modules/zod/v4/locales/ro.d.ts +4 -0
  647. package/node_modules/zod/v4/locales/ro.js +122 -0
  648. package/node_modules/zod/v4/locales/ru.cjs +29 -24
  649. package/node_modules/zod/v4/locales/ru.d.cts +2 -1
  650. package/node_modules/zod/v4/locales/ru.js +28 -24
  651. package/node_modules/zod/v4/locales/sk.cjs +143 -0
  652. package/node_modules/zod/v4/locales/sk.d.cts +5 -0
  653. package/node_modules/zod/v4/locales/sk.d.ts +4 -0
  654. package/node_modules/zod/v4/locales/sk.js +116 -0
  655. package/node_modules/zod/v4/locales/sl.cjs +22 -24
  656. package/node_modules/zod/v4/locales/sl.d.cts +2 -1
  657. package/node_modules/zod/v4/locales/sl.js +21 -24
  658. package/node_modules/zod/v4/locales/sv.cjs +24 -26
  659. package/node_modules/zod/v4/locales/sv.d.cts +2 -1
  660. package/node_modules/zod/v4/locales/sv.js +23 -26
  661. package/node_modules/zod/v4/locales/ta.cjs +23 -24
  662. package/node_modules/zod/v4/locales/ta.d.cts +2 -1
  663. package/node_modules/zod/v4/locales/ta.js +22 -24
  664. package/node_modules/zod/v4/locales/tg.cjs +144 -0
  665. package/node_modules/zod/v4/locales/tg.d.cts +5 -0
  666. package/node_modules/zod/v4/locales/tg.d.ts +4 -0
  667. package/node_modules/zod/v4/locales/tg.js +117 -0
  668. package/node_modules/zod/v4/locales/th.cjs +23 -24
  669. package/node_modules/zod/v4/locales/th.d.cts +2 -1
  670. package/node_modules/zod/v4/locales/th.js +22 -24
  671. package/node_modules/zod/v4/locales/tk.cjs +134 -0
  672. package/node_modules/zod/v4/locales/tk.d.cts +5 -0
  673. package/node_modules/zod/v4/locales/tk.d.ts +4 -0
  674. package/node_modules/zod/v4/locales/tk.js +107 -0
  675. package/node_modules/zod/v4/locales/tr.cjs +20 -26
  676. package/node_modules/zod/v4/locales/tr.d.cts +2 -2
  677. package/node_modules/zod/v4/locales/tr.d.ts +0 -1
  678. package/node_modules/zod/v4/locales/tr.js +19 -24
  679. package/node_modules/zod/v4/locales/ua.cjs +6 -137
  680. package/node_modules/zod/v4/locales/ua.d.cts +2 -1
  681. package/node_modules/zod/v4/locales/ua.d.ts +1 -0
  682. package/node_modules/zod/v4/locales/ua.js +3 -115
  683. package/node_modules/zod/v4/locales/uk.cjs +140 -0
  684. package/node_modules/zod/v4/locales/uk.d.cts +5 -0
  685. package/node_modules/zod/v4/locales/uk.d.ts +4 -0
  686. package/node_modules/zod/v4/locales/uk.js +113 -0
  687. package/node_modules/zod/v4/locales/ur.cjs +23 -24
  688. package/node_modules/zod/v4/locales/ur.d.cts +2 -1
  689. package/node_modules/zod/v4/locales/ur.js +22 -24
  690. package/node_modules/zod/v4/locales/uz.cjs +140 -0
  691. package/node_modules/zod/v4/locales/uz.d.cts +5 -0
  692. package/node_modules/zod/v4/locales/uz.d.ts +4 -0
  693. package/node_modules/zod/v4/locales/uz.js +113 -0
  694. package/node_modules/zod/v4/locales/vi.cjs +22 -24
  695. package/node_modules/zod/v4/locales/vi.d.cts +2 -1
  696. package/node_modules/zod/v4/locales/vi.js +21 -24
  697. package/node_modules/zod/v4/locales/yo.cjs +139 -0
  698. package/node_modules/zod/v4/locales/yo.d.cts +5 -0
  699. package/node_modules/zod/v4/locales/yo.d.ts +4 -0
  700. package/node_modules/zod/v4/locales/yo.js +112 -0
  701. package/node_modules/zod/v4/locales/zh-CN.cjs +23 -24
  702. package/node_modules/zod/v4/locales/zh-CN.d.cts +2 -1
  703. package/node_modules/zod/v4/locales/zh-CN.js +22 -24
  704. package/node_modules/zod/v4/locales/zh-TW.cjs +20 -24
  705. package/node_modules/zod/v4/locales/zh-TW.d.cts +2 -1
  706. package/node_modules/zod/v4/locales/zh-TW.js +19 -24
  707. package/node_modules/zod/v4/mini/checks.cjs +21 -1
  708. package/node_modules/zod/v4/mini/checks.d.cts +1 -1
  709. package/node_modules/zod/v4/mini/checks.d.ts +1 -1
  710. package/node_modules/zod/v4/mini/checks.js +1 -1
  711. package/node_modules/zod/v4/mini/coerce.cjs +24 -0
  712. package/node_modules/zod/v4/mini/coerce.js +5 -0
  713. package/node_modules/zod/v4/mini/deep-partial.cjs +58 -0
  714. package/node_modules/zod/v4/mini/deep-partial.d.cts +14 -0
  715. package/node_modules/zod/v4/mini/deep-partial.d.ts +14 -0
  716. package/node_modules/zod/v4/mini/deep-partial.js +13 -0
  717. package/node_modules/zod/v4/mini/external.cjs +36 -3
  718. package/node_modules/zod/v4/mini/external.d.cts +7 -2
  719. package/node_modules/zod/v4/mini/external.d.ts +7 -2
  720. package/node_modules/zod/v4/mini/external.js +4 -1
  721. package/node_modules/zod/v4/mini/in-out.cjs +82 -0
  722. package/node_modules/zod/v4/mini/in-out.d.cts +8 -0
  723. package/node_modules/zod/v4/mini/in-out.d.ts +8 -0
  724. package/node_modules/zod/v4/mini/in-out.js +36 -0
  725. package/node_modules/zod/v4/mini/index.cjs +19 -0
  726. package/node_modules/zod/v4/mini/iso.cjs +27 -4
  727. package/node_modules/zod/v4/mini/iso.js +8 -4
  728. package/node_modules/zod/v4/mini/package.json +7 -0
  729. package/node_modules/zod/v4/mini/parse.cjs +30 -1
  730. package/node_modules/zod/v4/mini/parse.d.cts +1 -1
  731. package/node_modules/zod/v4/mini/parse.d.ts +1 -1
  732. package/node_modules/zod/v4/mini/parse.js +1 -1
  733. package/node_modules/zod/v4/mini/schemas.cjs +390 -82
  734. package/node_modules/zod/v4/mini/schemas.d.cts +156 -32
  735. package/node_modules/zod/v4/mini/schemas.d.ts +156 -32
  736. package/node_modules/zod/v4/mini/schemas.js +329 -59
  737. package/node_modules/zod/v4/package.json +7 -0
  738. package/node_modules/zod/v4-mini/index.cjs +35 -1
  739. package/node_modules/zod/v4-mini/index.d.cts +3 -1
  740. package/node_modules/zod/v4-mini/index.d.ts +3 -1
  741. package/node_modules/zod/v4-mini/index.js +3 -1
  742. package/node_modules/zod/v4-mini/package.json +7 -0
  743. package/package.json +3 -3
  744. package/dist/ui/assets/index-DNNXeRpZ.js +0 -123
  745. package/dist/ui/assets/index-Osk4E49r.css +0 -1
  746. package/node_modules/zod/src/v4/core/config.ts +0 -15
  747. package/node_modules/zod/src/v4/core/function.ts +0 -176
  748. package/node_modules/zod/v4/core/function.cjs +0 -102
  749. package/node_modules/zod/v4/core/function.d.cts +0 -52
  750. package/node_modules/zod/v4/core/function.d.ts +0 -52
  751. package/node_modules/zod/v4/core/function.js +0 -75
@@ -1,4 +1,4 @@
1
- import { describe, expect, test } from "vitest";
1
+ import { describe, expect, expectTypeOf, test } from "vitest";
2
2
  import * as z from "zod/v4";
3
3
 
4
4
  describe("basic refinement functionality", () => {
@@ -167,8 +167,8 @@ describe("early termination options", () => {
167
167
  });
168
168
 
169
169
  describe("custom error paths", () => {
170
- test("should use custom path in error message", async () => {
171
- const result = await z
170
+ test("should use custom path in error message", () => {
171
+ const result = z
172
172
  .object({ password: z.string(), confirm: z.string() })
173
173
  .refine((data) => data.confirm === data.password, { path: ["confirm"] })
174
174
  .safeParse({ password: "asdf", confirm: "qewr" });
@@ -252,6 +252,79 @@ describe("superRefine functionality", () => {
252
252
  await expect(Strings.parseAsync(validArray)).resolves.toEqual(validArray);
253
253
  });
254
254
 
255
+ test("should test continuability of custom issues", () => {
256
+ // Default continue behavior - allows subsequent refinements
257
+ const defaultContinue = z
258
+ .string()
259
+ .superRefine((_, ctx) => {
260
+ ctx.addIssue({ code: "custom", message: "First issue" });
261
+ })
262
+ .refine(() => false, "Second issue");
263
+
264
+ expect(defaultContinue.safeParse("test")).toMatchInlineSnapshot(`
265
+ {
266
+ "error": [ZodError: [
267
+ {
268
+ "code": "custom",
269
+ "message": "First issue",
270
+ "path": []
271
+ },
272
+ {
273
+ "code": "custom",
274
+ "path": [],
275
+ "message": "Second issue"
276
+ }
277
+ ]],
278
+ "success": false,
279
+ }
280
+ `);
281
+
282
+ // Explicit continue: false - prevents subsequent refinements
283
+ const explicitContinueFalse = z
284
+ .string()
285
+ .superRefine((_, ctx) => {
286
+ ctx.addIssue({ code: "custom", message: "First issue", continue: false });
287
+ })
288
+ .refine(() => false, "Second issue");
289
+
290
+ expect(explicitContinueFalse.safeParse("test")).toMatchInlineSnapshot(`
291
+ {
292
+ "error": [ZodError: [
293
+ {
294
+ "code": "custom",
295
+ "message": "First issue",
296
+ "path": []
297
+ }
298
+ ]],
299
+ "success": false,
300
+ }
301
+ `);
302
+
303
+ // Multiple issues in same refinement - both always added regardless of continue
304
+ const multipleInSame = z.string().superRefine((_, ctx) => {
305
+ ctx.addIssue({ code: "custom", message: "First", continue: false });
306
+ ctx.addIssue({ code: "custom", message: "Second" });
307
+ });
308
+
309
+ expect(multipleInSame.safeParse("test")).toMatchInlineSnapshot(`
310
+ {
311
+ "error": [ZodError: [
312
+ {
313
+ "code": "custom",
314
+ "message": "First",
315
+ "path": []
316
+ },
317
+ {
318
+ "code": "custom",
319
+ "message": "Second",
320
+ "path": []
321
+ }
322
+ ]],
323
+ "success": false,
324
+ }
325
+ `);
326
+ });
327
+
255
328
  test("should accept string as shorthand for custom error message", () => {
256
329
  const schema = z.string().superRefine((_, ctx) => {
257
330
  ctx.addIssue("bad stuff");
@@ -265,6 +338,66 @@ describe("superRefine functionality", () => {
265
338
  }
266
339
  });
267
340
 
341
+ test("should preserve explicit nullish issue input", () => {
342
+ const schema = z.string().superRefine((_, ctx) => {
343
+ ctx.addIssue({ code: "custom", message: "default" });
344
+ ctx.addIssue({ code: "custom", message: "null", input: null });
345
+ ctx.addIssue({ code: "custom", message: "undefined", input: undefined });
346
+ });
347
+
348
+ const result = schema.safeParse("sensitive", { reportInput: true });
349
+ expect(result.success).toEqual(false);
350
+ if (!result.success) {
351
+ expect(result.error.issues).toHaveLength(3);
352
+ expect(result.error.issues[0].input).toEqual("sensitive");
353
+ expect(result.error.issues[1].input).toEqual(null);
354
+ expect(result.error.issues[2]).toHaveProperty("input");
355
+ expect(result.error.issues[2].input).toEqual(undefined);
356
+ }
357
+ });
358
+
359
+ test("should keep issue input aligned with the issue path", () => {
360
+ const nested = z.object({ a: z.string().nullable() }).superRefine((val, ctx) => {
361
+ if (val.a === null) ctx.addIssue({ code: "custom", path: ["a"], input: val.a, message: "no null" });
362
+ });
363
+
364
+ const direct = nested.safeParse({ a: null }, { reportInput: true });
365
+ expect(direct.success).toEqual(false);
366
+ if (!direct.success) {
367
+ expect(direct.error.issues[0].path).toEqual(["a"]);
368
+ expect(direct.error.issues[0].input).toEqual(null);
369
+ }
370
+
371
+ // Forwarding a nested parse's issues must not overwrite their input with the outer payload.
372
+ const inner = z.object({ x: z.string() });
373
+ const forwarding = z.unknown().superRefine((val, ctx) => {
374
+ const result = inner.safeParse(val, { reportInput: true });
375
+ if (!result.success) {
376
+ for (const iss of result.error.issues) {
377
+ ctx.addIssue({ code: "custom", path: iss.path, input: iss.input, message: iss.message });
378
+ }
379
+ }
380
+ });
381
+
382
+ const forwarded = forwarding.safeParse({}, { reportInput: true });
383
+ expect(forwarded.success).toEqual(false);
384
+ if (!forwarded.success) {
385
+ expect(forwarded.error.issues[0].path).toEqual(["x"]);
386
+ expect(forwarded.error.issues[0]).toHaveProperty("input");
387
+ expect(forwarded.error.issues[0].input).toEqual(undefined);
388
+ }
389
+ });
390
+
391
+ test("should surface an explicit undefined input to the error map", () => {
392
+ const schema = z.object({ a: z.string().optional() }).superRefine((val, ctx) => {
393
+ if (!val.a) ctx.addIssue({ code: "custom", path: ["a"], input: val.a });
394
+ });
395
+
396
+ const result = schema.safeParse({}, { error: (iss) => (iss.input === undefined ? "Required" : "Invalid") });
397
+ expect(result.success).toEqual(false);
398
+ if (!result.success) expect(result.error.issues[0].message).toEqual("Required");
399
+ });
400
+
268
401
  test("should respect fatal flag in superRefine", () => {
269
402
  const schema = z
270
403
  .string()
@@ -341,86 +474,114 @@ describe("chained refinements", () => {
341
474
  };
342
475
  expect(objectSchema.parse(validData)).toEqual(validData);
343
476
  });
344
- });
345
477
 
346
- // Commented tests can be uncommented once type-checking issues are resolved
347
- /*
348
- describe("type refinement", () => {
349
- test("refinement type guard", () => {
350
- const validationSchema = z.object({
351
- a: z.string().refine((s): s is "a" => s === "a"),
478
+ test("should run superRefine validation even when base schema validation fails when 'when' is defined and returns true", () => {
479
+ const baseSchema = z.object({
480
+ foo: z.number(),
481
+ bar: z.number(),
352
482
  });
353
- type Input = z.input<typeof validationSchema>;
354
- type Schema = z.infer<typeof validationSchema>;
355
-
356
- expectTypeOf<Input["a"]>().not.toEqualTypeOf<"a">();
357
- expectTypeOf<Input["a"]>().toEqualTypeOf<string>();
358
483
 
359
- expectTypeOf<Schema["a"]>().toEqualTypeOf<"a">();
360
- expectTypeOf<Schema["a"]>().not.toEqualTypeOf<string>();
361
- });
362
-
363
- test("superRefine - type narrowing", () => {
364
- type NarrowType = { type: string; age: number };
365
- const schema = z
366
- .object({
367
- type: z.string(),
368
- age: z.number(),
369
- })
370
- .nullable()
371
- .superRefine((arg, ctx): arg is NarrowType => {
372
- if (!arg) {
373
- // still need to make a call to ctx.addIssue
484
+ const schema = baseSchema.superRefine(
485
+ (data, ctx) => {
486
+ if (data.foo > 10) {
374
487
  ctx.addIssue({
375
- input: arg,
376
488
  code: "custom",
377
- message: "cannot be null",
378
- fatal: true,
489
+ message: "foo must be less than 10",
379
490
  });
380
- return false;
381
491
  }
382
- return true;
383
- });
492
+ },
493
+ {
494
+ when: ({ value }) => baseSchema.pick({ foo: true }).safeParse(value).success,
495
+ }
496
+ );
384
497
 
385
- expectTypeOf<z.infer<typeof schema>>().toEqualTypeOf<NarrowType>();
498
+ const result = schema.safeParse({
499
+ foo: 11,
500
+ });
501
+ expect(result.success).toEqual(false);
386
502
 
387
- expect(schema.safeParse({ type: "test", age: 0 }).success).toEqual(true);
388
- expect(schema.safeParse(null).success).toEqual(false);
503
+ if (!result.success) {
504
+ expect(result.error.issues.length).toEqual(2);
505
+ expect(result.error.issues[0].message).toEqual("Invalid input: expected number, received undefined");
506
+ expect(result.error.issues[1].message).toEqual("foo must be less than 10");
507
+ }
389
508
  });
390
509
 
391
- test("chained mixed refining types", () => {
392
- type firstRefinement = { first: string; second: number; third: true };
393
- type secondRefinement = { first: "bob"; second: number; third: true };
394
- type thirdRefinement = { first: "bob"; second: 33; third: true };
395
- const schema = z
396
- .object({
397
- first: z.string(),
398
- second: z.number(),
399
- third: z.boolean(),
400
- })
401
- .nullable()
402
- .refine((arg): arg is firstRefinement => !!arg?.third)
403
- .superRefine((arg, ctx): arg is secondRefinement => {
404
- expectTypeOf<typeof arg>().toEqualTypeOf<firstRefinement>();
405
- if (arg.first !== "bob") {
510
+ test("should not run superRefine validation when 'when' is defined and returns false", () => {
511
+ const baseSchema = z.object({
512
+ foo: z.number(),
513
+ bar: z.number(),
514
+ });
515
+
516
+ const schema = baseSchema.superRefine(
517
+ (data, ctx) => {
518
+ if (data.foo > 10) {
406
519
  ctx.addIssue({
407
- input: arg,
408
520
  code: "custom",
409
- message: "`first` property must be `bob`",
521
+ message: "foo must be less than 10",
410
522
  });
411
- return false;
412
523
  }
413
- return true;
414
- })
415
- .refine((arg): arg is thirdRefinement => {
416
- expectTypeOf<typeof arg>().toEqualTypeOf<secondRefinement>();
417
- return arg.second === 33;
418
- });
524
+ },
525
+ {
526
+ when: ({ value }) => baseSchema.safeParse(value).success,
527
+ }
528
+ );
529
+
530
+ const result = schema.safeParse({
531
+ foo: 11,
532
+ });
533
+ expect(result.success).toEqual(false);
419
534
 
420
- expectTypeOf<z.infer<typeof schema>>().toEqualTypeOf<thirdRefinement>();
535
+ if (!result.success) {
536
+ expect(result.error.issues.length).toEqual(1);
537
+ expect(result.error.issues[0].message).toEqual("Invalid input: expected number, received undefined");
538
+ }
421
539
  });
422
540
  });
423
- */
541
+
542
+ describe("type refinement with type guards", () => {
543
+ test("type guard narrows output type", () => {
544
+ const schema = z.string().refine((s): s is "a" => s === "a");
545
+
546
+ expectTypeOf<z.input<typeof schema>>().toEqualTypeOf<string>();
547
+ expectTypeOf<z.output<typeof schema>>().toEqualTypeOf<"a">();
548
+ });
549
+
550
+ test("non-type-guard refine does not narrow", () => {
551
+ const schema = z.string().refine((s) => s.length > 0);
552
+
553
+ expectTypeOf<z.input<typeof schema>>().toEqualTypeOf<string>();
554
+ expectTypeOf<z.output<typeof schema>>().toEqualTypeOf<string>();
555
+ });
556
+
557
+ // TODO: Implement type narrowing for superRefine
558
+ // test("superRefine - type narrowing", () => {
559
+ // type NarrowType = { type: string; age: number };
560
+ // const schema = z
561
+ // .object({
562
+ // type: z.string(),
563
+ // age: z.number(),
564
+ // })
565
+ // .nullable()
566
+ // .superRefine((arg, ctx): arg is NarrowType => {
567
+ // if (!arg) {
568
+ // ctx.addIssue({
569
+ // input: arg,
570
+ // code: "custom",
571
+ // message: "cannot be null",
572
+ // fatal: true,
573
+ // });
574
+ // return false;
575
+ // }
576
+ // return true;
577
+ // });
578
+ //
579
+ // expectTypeOf<z.infer<typeof schema>>().toEqualTypeOf<NarrowType>();
580
+ //
581
+ // expect(schema.safeParse({ type: "test", age: 0 }).success).toEqual(true);
582
+ // expect(schema.safeParse(null).success).toEqual(false);
583
+ // });
584
+ });
424
585
 
425
586
  test("when", () => {
426
587
  const schema = z
@@ -431,9 +592,9 @@ test("when", () => {
431
592
  })
432
593
  .refine(
433
594
  (data) => {
434
- console.log("running check...");
435
- console.log(data);
436
- console.log(data.password);
595
+ // console.log("running check...");
596
+ // console.log(data);
597
+ // console.log(data.password);
437
598
  return data.password === data.confirmPassword;
438
599
  },
439
600
  {
@@ -19,6 +19,10 @@ test("globalRegistry", () => {
19
19
  expect(z.globalRegistry.has(a)).toEqual(false);
20
20
  });
21
21
 
22
+ test("globalRegistry is singleton and attached to globalThis", () => {
23
+ expect(z.globalRegistry).toBe((globalThis as any).__zod_globalRegistry);
24
+ });
25
+
22
26
  test("z.registry", () => {
23
27
  const fieldRegistry = z.registry<{ name: string; description: string }>();
24
28
 
@@ -164,7 +168,7 @@ test("loose examples", () => {
164
168
  });
165
169
  });
166
170
 
167
- test("function meta witout replacement", () => {
171
+ test("function meta without replacement", () => {
168
172
  const myReg = z.registry<{
169
173
  defaulter: (arg: string, test: boolean) => number;
170
174
  }>();
@@ -202,3 +206,38 @@ test("test .clear()", () => {
202
206
  reg.clear();
203
207
  expect(reg.has(a)).toEqual(false);
204
208
  });
209
+
210
+ test("re-registering same id silently overwrites", () => {
211
+ const reg = z.registry<z.core.GlobalMeta>();
212
+ const a = z.string();
213
+ const b = z.number();
214
+
215
+ reg.add(a, { id: "shared-id" });
216
+ reg.add(b, { id: "shared-id" });
217
+
218
+ // No error thrown, b now owns the id
219
+ expect(reg._idmap.get("shared-id")).toBe(b);
220
+ });
221
+
222
+ test("toJSONSchema throws on duplicate id across different schemas", () => {
223
+ const reg = z.registry<z.core.GlobalMeta>();
224
+ const a = z.string().register(reg, { id: "duplicate-id" });
225
+ const b = z.number().register(reg, { id: "duplicate-id" });
226
+
227
+ const wrapper = z.object({ a, b });
228
+
229
+ expect(() => z.toJSONSchema(wrapper, { metadata: reg })).toThrow(
230
+ 'Duplicate schema id "duplicate-id" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.'
231
+ );
232
+ });
233
+
234
+ test("toJSONSchema allows same schema with same id", () => {
235
+ const reg = z.registry<z.core.GlobalMeta>();
236
+ const shared = z.string().register(reg, { id: "shared-id" });
237
+
238
+ const wrapper = z.object({ a: shared, b: shared });
239
+
240
+ // Should not throw - same schema instance used twice
241
+ const result = z.toJSONSchema(wrapper, { metadata: reg });
242
+ expect(result.$defs?.["shared-id"]).toBeDefined();
243
+ });
@@ -39,7 +39,7 @@ test("valid parse async", async () => {
39
39
  expect(result.data!.has("second")).toEqual(true);
40
40
  expect(result.data!.has("third")).toEqual(false);
41
41
 
42
- const asyncResult = await stringSet.safeParse(new Set(["first", "second"]));
42
+ const asyncResult = stringSet.safeParse(new Set(["first", "second"]));
43
43
  expect(asyncResult.success).toEqual(true);
44
44
  expect(asyncResult.data!.has("first")).toEqual(true);
45
45
  expect(asyncResult.data!.has("second")).toEqual(true);
@@ -83,6 +83,21 @@ test("failing when set is bigger than max() ", () => {
83
83
  expect(result.success).toEqual(false);
84
84
  expect(result.error!.issues.length).toEqual(1);
85
85
  expect(result.error!.issues[0].code).toEqual("too_big");
86
+ expect(
87
+ z
88
+ .set(z.string())
89
+ .max(1)
90
+ .safeParse(new Set([1, 2])).error!.issues
91
+ ).toMatchObject([{ code: "too_big" }]);
92
+ });
93
+
94
+ test("failing when set does not match size() ", () => {
95
+ expect(justTwo.safeParse(new Set(["one"])).error!.issues[0].message).toEqual(
96
+ "Too small: expected set to have exactly 2 items"
97
+ );
98
+ expect(justTwo.safeParse(new Set(["one", "two", "three"])).error!.issues[0].message).toEqual(
99
+ "Too big: expected set to have exactly 2 items"
100
+ );
86
101
  });
87
102
 
88
103
  test("doesn’t throw when an empty set is given", () => {
@@ -155,7 +170,8 @@ test("min/max", async () => {
155
170
  [
156
171
  {
157
172
  "code": "too_small",
158
- "message": "Too small: expected set to have >4 items",
173
+ "inclusive": true,
174
+ "message": "Too small: expected set to have >=4 items",
159
175
  "minimum": 4,
160
176
  "origin": "set",
161
177
  "path": [],
@@ -169,8 +185,9 @@ test("min/max", async () => {
169
185
  [
170
186
  {
171
187
  "code": "too_big",
188
+ "inclusive": true,
172
189
  "maximum": 5,
173
- "message": "Too big: expected set to have <5 items",
190
+ "message": "Too big: expected set to have <=5 items",
174
191
  "origin": "set",
175
192
  "path": [],
176
193
  },
@@ -55,3 +55,99 @@ test("length checks", async () => {
55
55
  }
56
56
  `);
57
57
  });
58
+
59
+ test("schemas conform to StandardJSONSchemaV1", async () => {
60
+ const schema = z.codec(z.string(), z.number(), {
61
+ decode: (str) => Number.parseFloat(str),
62
+ encode: (num) => num.toString(),
63
+ });
64
+ expect(schema["~standard"].validate).toBeTypeOf("function");
65
+ expect(await schema["~standard"].validate("42")).toMatchInlineSnapshot(`
66
+ {
67
+ "value": 42,
68
+ }
69
+ `);
70
+ expect(schema["~standard"].jsonSchema.input({ target: "draft-2020-12" })).toMatchInlineSnapshot(`
71
+ {
72
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
73
+ "type": "string",
74
+ }
75
+ `);
76
+ expect(schema["~standard"].jsonSchema.output({ target: "draft-2020-12" })).toMatchInlineSnapshot(`
77
+ {
78
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
79
+ "type": "number",
80
+ }
81
+ `);
82
+ });
83
+
84
+ test(".toJSONSchema() returns StandardJSONSchemaV1", async () => {
85
+ const codec = z.codec(z.string(), z.number(), {
86
+ decode: (str) => Number.parseFloat(str),
87
+ encode: (num) => num.toString(),
88
+ });
89
+ const result = codec.toJSONSchema();
90
+ expect(result["~standard"].validate).toBeTypeOf("function");
91
+ expect(await result["~standard"].validate("42")).toMatchInlineSnapshot(`
92
+ {
93
+ "value": 42,
94
+ }
95
+ `);
96
+ expect(result["~standard"].jsonSchema.input({ target: "draft-2020-12" })).toMatchInlineSnapshot(`
97
+ {
98
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
99
+ "type": "string",
100
+ }
101
+ `);
102
+ expect(result["~standard"].jsonSchema.output({ target: "draft-2020-12" })).toMatchInlineSnapshot(`
103
+ {
104
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
105
+ "type": "number",
106
+ }
107
+ `);
108
+ });
109
+
110
+ test("z.toJSONSchema() returns StandardJSONSchemaV1", async () => {
111
+ const codec = z.codec(z.string(), z.number(), {
112
+ decode: (str) => Number.parseFloat(str),
113
+ encode: (num) => num.toString(),
114
+ });
115
+ const result = z.toJSONSchema(codec);
116
+ expect(result["~standard"].validate).toBeTypeOf("function");
117
+ expect(await result["~standard"].validate("42")).toMatchInlineSnapshot(`
118
+ {
119
+ "value": 42,
120
+ }
121
+ `);
122
+ expect(result["~standard"].jsonSchema.input({ target: "draft-2020-12" })).toMatchInlineSnapshot(`
123
+ {
124
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
125
+ "type": "string",
126
+ }
127
+ `);
128
+ expect(result["~standard"].jsonSchema.output({ target: "draft-2020-12" })).toMatchInlineSnapshot(`
129
+ {
130
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
131
+ "type": "number",
132
+ }
133
+ `);
134
+ });
135
+
136
+ test("a failing validate reports the same issues as safeParse, without a ZodError", async () => {
137
+ const schema = z.object({ name: z.string().min(3), age: z.number().refine(async (n) => n > 0) });
138
+ const input = { name: "ab", age: -1 };
139
+ const result = (await schema["~standard"].validate(input)) as { issues: unknown[] };
140
+ expect(result.issues).toEqual((await schema.safeParseAsync(input)).error!.issues);
141
+ expect(result).not.toHaveProperty("error");
142
+ const sync = z.string().min(3)["~standard"].validate("ab") as { issues: unknown[] };
143
+ expect(sync.issues).toEqual(z.string().min(3).safeParse("ab").error!.issues);
144
+ });
145
+
146
+ test("a synchronously throwing check rejects through ~standard instead of throwing", async () => {
147
+ const schema = z.string().refine(() => {
148
+ throw new Error("boom");
149
+ });
150
+ const result = schema["~standard"].validate("abc");
151
+ expect(result).toBeInstanceOf(Promise);
152
+ await expect(result as Promise<unknown>).rejects.toThrow("boom");
153
+ });
@@ -107,3 +107,19 @@ test("z.stringFormat", () => {
107
107
  `/\\^\\(\\?:\\\\d\\{14,19\\}\\|\\\\d\\{4\\}\\(\\?: \\\\d\\{3,6\\}\\)\\{2,4\\}\\|\\\\d\\{4\\}\\(\\?:-\\\\d\\{3,6\\}\\)\\{2,4\\}\\)\\$/u`
108
108
  );
109
109
  });
110
+
111
+ test("z.hex", () => {
112
+ const hexSchema = z.hex();
113
+
114
+ // Valid hex strings
115
+ expect(hexSchema.safeParse("").success).toBe(true); // Empty string is valid hex
116
+ expect(hexSchema.safeParse("123abc").success).toBe(true);
117
+ expect(hexSchema.safeParse("DEADBEEF").success).toBe(true);
118
+ expect(hexSchema.safeParse("0123456789abcdefABCDEF").success).toBe(true);
119
+
120
+ // Invalid hex strings
121
+ expect(hexSchema.safeParse("xyz").success).toBe(false);
122
+ expect(hexSchema.safeParse("123g").success).toBe(false);
123
+ expect(hexSchema.safeParse("hello world").success).toBe(false);
124
+ expect(hexSchema.safeParse("123-abc").success).toBe(false);
125
+ });