zod 3.25.0 → 3.25.3

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 (385) hide show
  1. package/dist/commonjs/index.d.ts +3 -0
  2. package/dist/commonjs/index.js +22 -0
  3. package/dist/commonjs/package.json +3 -0
  4. package/dist/commonjs/v3/ZodError.d.ts +164 -0
  5. package/dist/commonjs/v3/ZodError.js +137 -0
  6. package/dist/commonjs/v3/benchmarks/datetime.d.ts +5 -0
  7. package/dist/commonjs/v3/benchmarks/datetime.js +54 -0
  8. package/dist/commonjs/v3/benchmarks/discriminatedUnion.d.ts +5 -0
  9. package/dist/commonjs/v3/benchmarks/discriminatedUnion.js +79 -0
  10. package/dist/commonjs/v3/benchmarks/index.d.ts +1 -0
  11. package/dist/commonjs/v3/benchmarks/index.js +59 -0
  12. package/dist/commonjs/v3/benchmarks/ipv4.d.ts +5 -0
  13. package/dist/commonjs/v3/benchmarks/ipv4.js +54 -0
  14. package/dist/commonjs/v3/benchmarks/object.d.ts +5 -0
  15. package/dist/commonjs/v3/benchmarks/object.js +70 -0
  16. package/dist/commonjs/v3/benchmarks/primitives.d.ts +5 -0
  17. package/dist/commonjs/v3/benchmarks/primitives.js +159 -0
  18. package/dist/commonjs/v3/benchmarks/realworld.d.ts +5 -0
  19. package/dist/commonjs/v3/benchmarks/realworld.js +56 -0
  20. package/dist/commonjs/v3/benchmarks/string.d.ts +5 -0
  21. package/dist/commonjs/v3/benchmarks/string.js +55 -0
  22. package/dist/commonjs/v3/benchmarks/union.d.ts +5 -0
  23. package/dist/commonjs/v3/benchmarks/union.js +79 -0
  24. package/dist/commonjs/v3/errors.d.ts +5 -0
  25. package/dist/commonjs/v3/errors.js +17 -0
  26. package/dist/commonjs/v3/external.d.ts +6 -0
  27. package/dist/commonjs/v3/external.js +22 -0
  28. package/dist/commonjs/v3/helpers/enumUtil.d.ts +8 -0
  29. package/dist/commonjs/v3/helpers/enumUtil.js +2 -0
  30. package/dist/commonjs/v3/helpers/errorUtil.d.ts +9 -0
  31. package/dist/commonjs/v3/helpers/errorUtil.js +9 -0
  32. package/dist/commonjs/v3/helpers/parseUtil.d.ts +78 -0
  33. package/dist/commonjs/v3/helpers/parseUtil.js +124 -0
  34. package/dist/commonjs/v3/helpers/partialUtil.d.ts +8 -0
  35. package/dist/commonjs/v3/helpers/partialUtil.js +2 -0
  36. package/dist/commonjs/v3/helpers/typeAliases.d.ts +2 -0
  37. package/dist/commonjs/v3/helpers/typeAliases.js +2 -0
  38. package/dist/commonjs/v3/helpers/util.d.ts +85 -0
  39. package/dist/commonjs/v3/helpers/util.js +137 -0
  40. package/dist/commonjs/v3/index.d.ts +4 -0
  41. package/dist/commonjs/v3/index.js +43 -0
  42. package/dist/commonjs/v3/locales/en.d.ts +3 -0
  43. package/dist/commonjs/v3/locales/en.js +109 -0
  44. package/dist/commonjs/v3/standard-schema.d.ts +102 -0
  45. package/dist/commonjs/v3/standard-schema.js +2 -0
  46. package/dist/commonjs/v3/tests/Mocker.d.ts +17 -0
  47. package/dist/commonjs/v3/tests/Mocker.js +57 -0
  48. package/dist/commonjs/v3/tests/language-server.source.d.ts +70 -0
  49. package/dist/commonjs/v3/tests/language-server.source.js +81 -0
  50. package/dist/commonjs/v3/types.d.ts +1031 -0
  51. package/dist/commonjs/v3/types.js +3795 -0
  52. package/dist/commonjs/v4/classic/checks.d.ts +1 -0
  53. package/dist/commonjs/v4/classic/checks.js +32 -0
  54. package/dist/commonjs/v4/classic/coerce.d.ts +17 -0
  55. package/dist/commonjs/v4/classic/coerce.js +57 -0
  56. package/dist/commonjs/v4/classic/compat.d.ts +48 -0
  57. package/dist/commonjs/v4/classic/compat.js +73 -0
  58. package/dist/commonjs/v4/classic/errors.d.ts +30 -0
  59. package/dist/commonjs/v4/classic/errors.js +76 -0
  60. package/dist/commonjs/v4/classic/external.d.ts +8 -0
  61. package/dist/commonjs/v4/classic/external.js +68 -0
  62. package/dist/commonjs/v4/classic/index.d.ts +4 -0
  63. package/dist/commonjs/v4/classic/index.js +43 -0
  64. package/dist/commonjs/v4/classic/iso.d.ts +22 -0
  65. package/dist/commonjs/v4/classic/iso.js +70 -0
  66. package/dist/commonjs/v4/classic/parse.d.ts +23 -0
  67. package/dist/commonjs/v4/classic/parse.js +42 -0
  68. package/dist/commonjs/v4/classic/schemas.d.ts +653 -0
  69. package/dist/commonjs/v4/classic/schemas.js +1123 -0
  70. package/dist/commonjs/v4/core/api.d.ts +273 -0
  71. package/dist/commonjs/v4/core/api.js +1004 -0
  72. package/dist/commonjs/v4/core/checks.d.ts +277 -0
  73. package/dist/commonjs/v4/core/checks.js +571 -0
  74. package/dist/commonjs/v4/core/config.d.ts +9 -0
  75. package/dist/commonjs/v4/core/config.js +10 -0
  76. package/dist/commonjs/v4/core/core.d.ts +43 -0
  77. package/dist/commonjs/v4/core/core.js +59 -0
  78. package/dist/commonjs/v4/core/doc.d.ts +14 -0
  79. package/dist/commonjs/v4/core/doc.js +40 -0
  80. package/dist/commonjs/v4/core/errors.d.ts +204 -0
  81. package/dist/commonjs/v4/core/errors.js +203 -0
  82. package/dist/commonjs/v4/core/function.d.ts +35 -0
  83. package/dist/commonjs/v4/core/function.js +107 -0
  84. package/dist/commonjs/v4/core/index.d.ts +15 -0
  85. package/dist/commonjs/v4/core/index.js +54 -0
  86. package/dist/commonjs/v4/core/json-schema.d.ts +100 -0
  87. package/dist/commonjs/v4/core/json-schema.js +2 -0
  88. package/dist/commonjs/v4/core/parse.d.ts +25 -0
  89. package/dist/commonjs/v4/core/parse.js +97 -0
  90. package/dist/commonjs/v4/core/regexes.d.ts +62 -0
  91. package/dist/commonjs/v4/core/regexes.js +101 -0
  92. package/dist/commonjs/v4/core/registries.d.ts +32 -0
  93. package/dist/commonjs/v4/core/registries.js +47 -0
  94. package/dist/commonjs/v4/core/schemas.d.ts +975 -0
  95. package/dist/commonjs/v4/core/schemas.js +1781 -0
  96. package/dist/commonjs/v4/core/standard-schema.d.ts +55 -0
  97. package/dist/commonjs/v4/core/standard-schema.js +2 -0
  98. package/dist/commonjs/v4/core/to-json-schema.d.ts +84 -0
  99. package/dist/commonjs/v4/core/to-json-schema.js +670 -0
  100. package/dist/commonjs/v4/core/util.d.ts +186 -0
  101. package/dist/commonjs/v4/core/util.js +515 -0
  102. package/dist/commonjs/v4/core/versions.d.ts +5 -0
  103. package/dist/commonjs/v4/core/versions.js +8 -0
  104. package/dist/commonjs/v4/core/zsf.d.ts +91 -0
  105. package/dist/commonjs/v4/core/zsf.js +172 -0
  106. package/dist/commonjs/v4/index.d.ts +3 -0
  107. package/dist/commonjs/v4/index.js +22 -0
  108. package/dist/commonjs/v4/locales/ar.d.ts +7 -0
  109. package/dist/commonjs/v4/locales/ar.js +153 -0
  110. package/dist/commonjs/v4/locales/az.d.ts +7 -0
  111. package/dist/commonjs/v4/locales/az.js +152 -0
  112. package/dist/commonjs/v4/locales/be.d.ts +7 -0
  113. package/dist/commonjs/v4/locales/be.js +201 -0
  114. package/dist/commonjs/v4/locales/ca.d.ts +7 -0
  115. package/dist/commonjs/v4/locales/ca.js +155 -0
  116. package/dist/commonjs/v4/locales/cs.d.ts +7 -0
  117. package/dist/commonjs/v4/locales/cs.js +172 -0
  118. package/dist/commonjs/v4/locales/de.d.ts +7 -0
  119. package/dist/commonjs/v4/locales/de.js +153 -0
  120. package/dist/commonjs/v4/locales/en.d.ts +7 -0
  121. package/dist/commonjs/v4/locales/en.js +155 -0
  122. package/dist/commonjs/v4/locales/es.d.ts +7 -0
  123. package/dist/commonjs/v4/locales/es.js +154 -0
  124. package/dist/commonjs/v4/locales/fa.d.ts +7 -0
  125. package/dist/commonjs/v4/locales/fa.js +159 -0
  126. package/dist/commonjs/v4/locales/fi.d.ts +7 -0
  127. package/dist/commonjs/v4/locales/fi.js +159 -0
  128. package/dist/commonjs/v4/locales/fr.d.ts +7 -0
  129. package/dist/commonjs/v4/locales/fr.js +153 -0
  130. package/dist/commonjs/v4/locales/frCA.d.ts +7 -0
  131. package/dist/commonjs/v4/locales/frCA.js +154 -0
  132. package/dist/commonjs/v4/locales/he.d.ts +7 -0
  133. package/dist/commonjs/v4/locales/he.js +154 -0
  134. package/dist/commonjs/v4/locales/hu.d.ts +7 -0
  135. package/dist/commonjs/v4/locales/hu.js +154 -0
  136. package/dist/commonjs/v4/locales/id.d.ts +7 -0
  137. package/dist/commonjs/v4/locales/id.js +153 -0
  138. package/dist/commonjs/v4/locales/index.d.ts +34 -0
  139. package/dist/commonjs/v4/locales/index.js +74 -0
  140. package/dist/commonjs/v4/locales/it.d.ts +7 -0
  141. package/dist/commonjs/v4/locales/it.js +154 -0
  142. package/dist/commonjs/v4/locales/ja.d.ts +7 -0
  143. package/dist/commonjs/v4/locales/ja.js +152 -0
  144. package/dist/commonjs/v4/locales/ko.d.ts +7 -0
  145. package/dist/commonjs/v4/locales/ko.js +158 -0
  146. package/dist/commonjs/v4/locales/mk.d.ts +7 -0
  147. package/dist/commonjs/v4/locales/mk.js +155 -0
  148. package/dist/commonjs/v4/locales/ms.d.ts +7 -0
  149. package/dist/commonjs/v4/locales/ms.js +153 -0
  150. package/dist/commonjs/v4/locales/no.d.ts +7 -0
  151. package/dist/commonjs/v4/locales/no.js +153 -0
  152. package/dist/commonjs/v4/locales/ota.d.ts +7 -0
  153. package/dist/commonjs/v4/locales/ota.js +154 -0
  154. package/dist/commonjs/v4/locales/pl.d.ts +7 -0
  155. package/dist/commonjs/v4/locales/pl.js +154 -0
  156. package/dist/commonjs/v4/locales/pt.d.ts +7 -0
  157. package/dist/commonjs/v4/locales/pt.js +153 -0
  158. package/dist/commonjs/v4/locales/ru.d.ts +7 -0
  159. package/dist/commonjs/v4/locales/ru.js +201 -0
  160. package/dist/commonjs/v4/locales/sl.d.ts +7 -0
  161. package/dist/commonjs/v4/locales/sl.js +154 -0
  162. package/dist/commonjs/v4/locales/ta.d.ts +7 -0
  163. package/dist/commonjs/v4/locales/ta.js +154 -0
  164. package/dist/commonjs/v4/locales/th.d.ts +7 -0
  165. package/dist/commonjs/v4/locales/th.js +154 -0
  166. package/dist/commonjs/v4/locales/tr.d.ts +7 -0
  167. package/dist/commonjs/v4/locales/tr.js +152 -0
  168. package/dist/commonjs/v4/locales/ua.d.ts +7 -0
  169. package/dist/commonjs/v4/locales/ua.js +154 -0
  170. package/dist/commonjs/v4/locales/ur.d.ts +7 -0
  171. package/dist/commonjs/v4/locales/ur.js +154 -0
  172. package/dist/commonjs/v4/locales/vi.d.ts +7 -0
  173. package/dist/commonjs/v4/locales/vi.js +153 -0
  174. package/dist/commonjs/v4/locales/zh-CN.d.ts +7 -0
  175. package/dist/commonjs/v4/locales/zh-CN.js +153 -0
  176. package/dist/commonjs/v4/locales/zh-tw.d.ts +7 -0
  177. package/dist/commonjs/v4/locales/zh-tw.js +154 -0
  178. package/dist/commonjs/v4/mini/checks.d.ts +1 -0
  179. package/dist/commonjs/v4/mini/checks.js +34 -0
  180. package/dist/commonjs/v4/mini/coerce.d.ts +7 -0
  181. package/dist/commonjs/v4/mini/coerce.js +57 -0
  182. package/dist/commonjs/v4/mini/external.d.ts +7 -0
  183. package/dist/commonjs/v4/mini/external.js +61 -0
  184. package/dist/commonjs/v4/mini/index.d.ts +3 -0
  185. package/dist/commonjs/v4/mini/index.js +42 -0
  186. package/dist/commonjs/v4/mini/iso.d.ts +22 -0
  187. package/dist/commonjs/v4/mini/iso.js +70 -0
  188. package/dist/commonjs/v4/mini/parse.d.ts +1 -0
  189. package/dist/commonjs/v4/mini/parse.js +8 -0
  190. package/dist/commonjs/v4/mini/schemas.d.ts +405 -0
  191. package/dist/commonjs/v4/mini/schemas.js +852 -0
  192. package/dist/esm/index.d.ts +3 -0
  193. package/dist/esm/index.js +3 -0
  194. package/dist/esm/package.json +3 -0
  195. package/dist/esm/v3/ZodError.d.ts +164 -0
  196. package/dist/esm/v3/ZodError.js +132 -0
  197. package/dist/esm/v3/benchmarks/datetime.d.ts +5 -0
  198. package/dist/esm/v3/benchmarks/datetime.js +49 -0
  199. package/dist/esm/v3/benchmarks/discriminatedUnion.d.ts +5 -0
  200. package/dist/esm/v3/benchmarks/discriminatedUnion.js +74 -0
  201. package/dist/esm/v3/benchmarks/index.d.ts +1 -0
  202. package/dist/esm/v3/benchmarks/index.js +54 -0
  203. package/dist/esm/v3/benchmarks/ipv4.d.ts +5 -0
  204. package/dist/esm/v3/benchmarks/ipv4.js +49 -0
  205. package/dist/esm/v3/benchmarks/object.d.ts +5 -0
  206. package/dist/esm/v3/benchmarks/object.js +65 -0
  207. package/dist/esm/v3/benchmarks/primitives.d.ts +5 -0
  208. package/dist/esm/v3/benchmarks/primitives.js +154 -0
  209. package/dist/esm/v3/benchmarks/realworld.d.ts +5 -0
  210. package/dist/esm/v3/benchmarks/realworld.js +51 -0
  211. package/dist/esm/v3/benchmarks/string.d.ts +5 -0
  212. package/dist/esm/v3/benchmarks/string.js +50 -0
  213. package/dist/esm/v3/benchmarks/union.d.ts +5 -0
  214. package/dist/esm/v3/benchmarks/union.js +74 -0
  215. package/dist/esm/v3/errors.d.ts +5 -0
  216. package/dist/esm/v3/errors.js +9 -0
  217. package/dist/esm/v3/external.d.ts +6 -0
  218. package/dist/esm/v3/external.js +6 -0
  219. package/dist/esm/v3/helpers/enumUtil.d.ts +8 -0
  220. package/dist/esm/v3/helpers/enumUtil.js +1 -0
  221. package/dist/esm/v3/helpers/errorUtil.d.ts +9 -0
  222. package/dist/esm/v3/helpers/errorUtil.js +6 -0
  223. package/dist/esm/v3/helpers/parseUtil.d.ts +78 -0
  224. package/dist/esm/v3/helpers/parseUtil.js +109 -0
  225. package/dist/esm/v3/helpers/partialUtil.d.ts +8 -0
  226. package/dist/esm/v3/helpers/partialUtil.js +1 -0
  227. package/dist/esm/v3/helpers/typeAliases.d.ts +2 -0
  228. package/dist/esm/v3/helpers/typeAliases.js +1 -0
  229. package/dist/esm/v3/helpers/util.d.ts +85 -0
  230. package/dist/esm/v3/helpers/util.js +133 -0
  231. package/dist/esm/v3/index.d.ts +4 -0
  232. package/dist/esm/v3/index.js +4 -0
  233. package/dist/esm/v3/locales/en.d.ts +3 -0
  234. package/dist/esm/v3/locales/en.js +107 -0
  235. package/dist/esm/v3/standard-schema.d.ts +102 -0
  236. package/dist/esm/v3/standard-schema.js +1 -0
  237. package/dist/esm/v3/tests/Mocker.d.ts +17 -0
  238. package/dist/esm/v3/tests/Mocker.js +53 -0
  239. package/dist/esm/v3/tests/language-server.source.d.ts +70 -0
  240. package/dist/esm/v3/tests/language-server.source.js +45 -0
  241. package/dist/esm/v3/types.d.ts +1031 -0
  242. package/dist/esm/v3/types.js +3713 -0
  243. package/dist/esm/v4/classic/checks.d.ts +1 -0
  244. package/dist/esm/v4/classic/checks.js +1 -0
  245. package/dist/esm/v4/classic/coerce.d.ts +17 -0
  246. package/dist/esm/v4/classic/coerce.js +17 -0
  247. package/dist/esm/v4/classic/compat.d.ts +48 -0
  248. package/dist/esm/v4/classic/compat.js +33 -0
  249. package/dist/esm/v4/classic/errors.d.ts +30 -0
  250. package/dist/esm/v4/classic/errors.js +40 -0
  251. package/dist/esm/v4/classic/external.d.ts +8 -0
  252. package/dist/esm/v4/classic/external.js +11 -0
  253. package/dist/esm/v4/classic/index.d.ts +4 -0
  254. package/dist/esm/v4/classic/index.js +4 -0
  255. package/dist/esm/v4/classic/iso.d.ts +22 -0
  256. package/dist/esm/v4/classic/iso.js +30 -0
  257. package/dist/esm/v4/classic/parse.d.ts +23 -0
  258. package/dist/esm/v4/classic/parse.js +6 -0
  259. package/dist/esm/v4/classic/schemas.d.ts +653 -0
  260. package/dist/esm/v4/classic/schemas.js +1012 -0
  261. package/dist/esm/v4/core/api.d.ts +273 -0
  262. package/dist/esm/v4/core/api.js +867 -0
  263. package/dist/esm/v4/core/checks.d.ts +277 -0
  264. package/dist/esm/v4/core/checks.js +535 -0
  265. package/dist/esm/v4/core/config.d.ts +9 -0
  266. package/dist/esm/v4/core/config.js +6 -0
  267. package/dist/esm/v4/core/core.d.ts +43 -0
  268. package/dist/esm/v4/core/core.js +53 -0
  269. package/dist/esm/v4/core/doc.d.ts +14 -0
  270. package/dist/esm/v4/core/doc.js +36 -0
  271. package/dist/esm/v4/core/errors.d.ts +204 -0
  272. package/dist/esm/v4/core/errors.js +195 -0
  273. package/dist/esm/v4/core/function.d.ts +35 -0
  274. package/dist/esm/v4/core/function.js +70 -0
  275. package/dist/esm/v4/core/index.d.ts +15 -0
  276. package/dist/esm/v4/core/index.js +15 -0
  277. package/dist/esm/v4/core/json-schema.d.ts +100 -0
  278. package/dist/esm/v4/core/json-schema.js +1 -0
  279. package/dist/esm/v4/core/parse.d.ts +25 -0
  280. package/dist/esm/v4/core/parse.js +57 -0
  281. package/dist/esm/v4/core/regexes.d.ts +62 -0
  282. package/dist/esm/v4/core/regexes.js +93 -0
  283. package/dist/esm/v4/core/registries.d.ts +32 -0
  284. package/dist/esm/v4/core/registries.js +42 -0
  285. package/dist/esm/v4/core/schemas.d.ts +975 -0
  286. package/dist/esm/v4/core/schemas.js +1740 -0
  287. package/dist/esm/v4/core/standard-schema.d.ts +55 -0
  288. package/dist/esm/v4/core/standard-schema.js +1 -0
  289. package/dist/esm/v4/core/to-json-schema.d.ts +84 -0
  290. package/dist/esm/v4/core/to-json-schema.js +665 -0
  291. package/dist/esm/v4/core/util.d.ts +186 -0
  292. package/dist/esm/v4/core/util.js +469 -0
  293. package/dist/esm/v4/core/versions.d.ts +5 -0
  294. package/dist/esm/v4/core/versions.js +5 -0
  295. package/dist/esm/v4/core/zsf.d.ts +91 -0
  296. package/dist/esm/v4/core/zsf.js +171 -0
  297. package/dist/esm/v4/index.d.ts +3 -0
  298. package/dist/esm/v4/index.js +3 -0
  299. package/dist/esm/v4/locales/ar.d.ts +7 -0
  300. package/dist/esm/v4/locales/ar.js +115 -0
  301. package/dist/esm/v4/locales/az.d.ts +7 -0
  302. package/dist/esm/v4/locales/az.js +114 -0
  303. package/dist/esm/v4/locales/be.d.ts +7 -0
  304. package/dist/esm/v4/locales/be.js +163 -0
  305. package/dist/esm/v4/locales/ca.d.ts +7 -0
  306. package/dist/esm/v4/locales/ca.js +117 -0
  307. package/dist/esm/v4/locales/cs.d.ts +7 -0
  308. package/dist/esm/v4/locales/cs.js +134 -0
  309. package/dist/esm/v4/locales/de.d.ts +7 -0
  310. package/dist/esm/v4/locales/de.js +115 -0
  311. package/dist/esm/v4/locales/en.d.ts +7 -0
  312. package/dist/esm/v4/locales/en.js +117 -0
  313. package/dist/esm/v4/locales/es.d.ts +7 -0
  314. package/dist/esm/v4/locales/es.js +116 -0
  315. package/dist/esm/v4/locales/fa.d.ts +7 -0
  316. package/dist/esm/v4/locales/fa.js +121 -0
  317. package/dist/esm/v4/locales/fi.d.ts +7 -0
  318. package/dist/esm/v4/locales/fi.js +121 -0
  319. package/dist/esm/v4/locales/fr.d.ts +7 -0
  320. package/dist/esm/v4/locales/fr.js +115 -0
  321. package/dist/esm/v4/locales/frCA.d.ts +7 -0
  322. package/dist/esm/v4/locales/frCA.js +116 -0
  323. package/dist/esm/v4/locales/he.d.ts +7 -0
  324. package/dist/esm/v4/locales/he.js +116 -0
  325. package/dist/esm/v4/locales/hu.d.ts +7 -0
  326. package/dist/esm/v4/locales/hu.js +116 -0
  327. package/dist/esm/v4/locales/id.d.ts +7 -0
  328. package/dist/esm/v4/locales/id.js +115 -0
  329. package/dist/esm/v4/locales/index.d.ts +34 -0
  330. package/dist/esm/v4/locales/index.js +34 -0
  331. package/dist/esm/v4/locales/it.d.ts +7 -0
  332. package/dist/esm/v4/locales/it.js +116 -0
  333. package/dist/esm/v4/locales/ja.d.ts +7 -0
  334. package/dist/esm/v4/locales/ja.js +114 -0
  335. package/dist/esm/v4/locales/ko.d.ts +7 -0
  336. package/dist/esm/v4/locales/ko.js +120 -0
  337. package/dist/esm/v4/locales/mk.d.ts +7 -0
  338. package/dist/esm/v4/locales/mk.js +117 -0
  339. package/dist/esm/v4/locales/ms.d.ts +7 -0
  340. package/dist/esm/v4/locales/ms.js +115 -0
  341. package/dist/esm/v4/locales/no.d.ts +7 -0
  342. package/dist/esm/v4/locales/no.js +115 -0
  343. package/dist/esm/v4/locales/ota.d.ts +7 -0
  344. package/dist/esm/v4/locales/ota.js +116 -0
  345. package/dist/esm/v4/locales/pl.d.ts +7 -0
  346. package/dist/esm/v4/locales/pl.js +116 -0
  347. package/dist/esm/v4/locales/pt.d.ts +7 -0
  348. package/dist/esm/v4/locales/pt.js +115 -0
  349. package/dist/esm/v4/locales/ru.d.ts +7 -0
  350. package/dist/esm/v4/locales/ru.js +163 -0
  351. package/dist/esm/v4/locales/sl.d.ts +7 -0
  352. package/dist/esm/v4/locales/sl.js +116 -0
  353. package/dist/esm/v4/locales/ta.d.ts +7 -0
  354. package/dist/esm/v4/locales/ta.js +116 -0
  355. package/dist/esm/v4/locales/th.d.ts +7 -0
  356. package/dist/esm/v4/locales/th.js +116 -0
  357. package/dist/esm/v4/locales/tr.d.ts +7 -0
  358. package/dist/esm/v4/locales/tr.js +114 -0
  359. package/dist/esm/v4/locales/ua.d.ts +7 -0
  360. package/dist/esm/v4/locales/ua.js +116 -0
  361. package/dist/esm/v4/locales/ur.d.ts +7 -0
  362. package/dist/esm/v4/locales/ur.js +116 -0
  363. package/dist/esm/v4/locales/vi.d.ts +7 -0
  364. package/dist/esm/v4/locales/vi.js +115 -0
  365. package/dist/esm/v4/locales/zh-CN.d.ts +7 -0
  366. package/dist/esm/v4/locales/zh-CN.js +115 -0
  367. package/dist/esm/v4/locales/zh-tw.d.ts +7 -0
  368. package/dist/esm/v4/locales/zh-tw.js +116 -0
  369. package/dist/esm/v4/mini/checks.d.ts +1 -0
  370. package/dist/esm/v4/mini/checks.js +1 -0
  371. package/dist/esm/v4/mini/coerce.d.ts +7 -0
  372. package/dist/esm/v4/mini/coerce.js +17 -0
  373. package/dist/esm/v4/mini/external.d.ts +7 -0
  374. package/dist/esm/v4/mini/external.js +7 -0
  375. package/dist/esm/v4/mini/index.d.ts +3 -0
  376. package/dist/esm/v4/mini/index.js +3 -0
  377. package/dist/esm/v4/mini/iso.d.ts +22 -0
  378. package/dist/esm/v4/mini/iso.js +30 -0
  379. package/dist/esm/v4/mini/parse.d.ts +1 -0
  380. package/dist/esm/v4/mini/parse.js +1 -0
  381. package/dist/esm/v4/mini/schemas.d.ts +405 -0
  382. package/dist/esm/v4/mini/schemas.js +738 -0
  383. package/package.json +1 -1
  384. package/src/v4/core/schemas.ts +0 -2
  385. package/src/v4/core/to-json-schema.ts +1 -1
@@ -0,0 +1,163 @@
1
+ import * as util from "../core/util.js";
2
+ function getBelarusianPlural(count, one, few, many) {
3
+ const absCount = Math.abs(count);
4
+ const lastDigit = absCount % 10;
5
+ const lastTwoDigits = absCount % 100;
6
+ if (lastTwoDigits >= 11 && lastTwoDigits <= 19) {
7
+ return many;
8
+ }
9
+ if (lastDigit === 1) {
10
+ return one;
11
+ }
12
+ if (lastDigit >= 2 && lastDigit <= 4) {
13
+ return few;
14
+ }
15
+ return many;
16
+ }
17
+ const Sizable = {
18
+ string: {
19
+ unit: {
20
+ one: "сімвал",
21
+ few: "сімвалы",
22
+ many: "сімвалаў",
23
+ },
24
+ verb: "мець",
25
+ },
26
+ array: {
27
+ unit: {
28
+ one: "элемент",
29
+ few: "элементы",
30
+ many: "элементаў",
31
+ },
32
+ verb: "мець",
33
+ },
34
+ set: {
35
+ unit: {
36
+ one: "элемент",
37
+ few: "элементы",
38
+ many: "элементаў",
39
+ },
40
+ verb: "мець",
41
+ },
42
+ file: {
43
+ unit: {
44
+ one: "байт",
45
+ few: "байты",
46
+ many: "байтаў",
47
+ },
48
+ verb: "мець",
49
+ },
50
+ };
51
+ function getSizing(origin) {
52
+ return Sizable[origin] ?? null;
53
+ }
54
+ export const parsedType = (data) => {
55
+ const t = typeof data;
56
+ switch (t) {
57
+ case "number": {
58
+ return Number.isNaN(data) ? "NaN" : "лік";
59
+ }
60
+ case "object": {
61
+ if (Array.isArray(data)) {
62
+ return "масіў";
63
+ }
64
+ if (data === null) {
65
+ return "null";
66
+ }
67
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
68
+ return data.constructor.name;
69
+ }
70
+ }
71
+ }
72
+ return t;
73
+ };
74
+ const Nouns = {
75
+ regex: "увод",
76
+ email: "email адрас",
77
+ url: "URL",
78
+ emoji: "эмодзі",
79
+ uuid: "UUID",
80
+ uuidv4: "UUIDv4",
81
+ uuidv6: "UUIDv6",
82
+ nanoid: "nanoid",
83
+ guid: "GUID",
84
+ cuid: "cuid",
85
+ cuid2: "cuid2",
86
+ ulid: "ULID",
87
+ xid: "XID",
88
+ ksuid: "KSUID",
89
+ datetime: "ISO дата і час",
90
+ date: "ISO дата",
91
+ time: "ISO час",
92
+ duration: "ISO працягласць",
93
+ ipv4: "IPv4 адрас",
94
+ ipv6: "IPv6 адрас",
95
+ cidrv4: "IPv4 дыяпазон",
96
+ cidrv6: "IPv6 дыяпазон",
97
+ base64: "радок у фармаце base64",
98
+ base64url: "радок у фармаце base64url",
99
+ json_string: "JSON радок",
100
+ e164: "нумар E.164",
101
+ jwt: "JWT",
102
+ template_literal: "увод",
103
+ };
104
+ const error = (issue) => {
105
+ switch (issue.code) {
106
+ case "invalid_type":
107
+ return `Няправільны ўвод: чакаўся ${issue.expected}, атрымана ${parsedType(issue.input)}`;
108
+ case "invalid_value":
109
+ if (issue.values.length === 1)
110
+ return `Няправільны ўвод: чакалася ${util.stringifyPrimitive(issue.values[0])}`;
111
+ return `Няправільны варыянт: чакаўся адзін з ${util.joinValues(issue.values, "|")}`;
112
+ case "too_big": {
113
+ const adj = issue.inclusive ? "<=" : "<";
114
+ const sizing = getSizing(issue.origin);
115
+ if (sizing) {
116
+ const maxValue = Number(issue.maximum);
117
+ const unit = getBelarusianPlural(maxValue, sizing.unit.one, sizing.unit.few, sizing.unit.many);
118
+ return `Занадта вялікі: чакалася, што ${issue.origin ?? "значэнне"} павінна ${sizing.verb} ${adj}${issue.maximum.toString()} ${unit}`;
119
+ }
120
+ return `Занадта вялікі: чакалася, што ${issue.origin ?? "значэнне"} павінна быць ${adj}${issue.maximum.toString()}`;
121
+ }
122
+ case "too_small": {
123
+ const adj = issue.inclusive ? ">=" : ">";
124
+ const sizing = getSizing(issue.origin);
125
+ if (sizing) {
126
+ const minValue = Number(issue.minimum);
127
+ const unit = getBelarusianPlural(minValue, sizing.unit.one, sizing.unit.few, sizing.unit.many);
128
+ return `Занадта малы: чакалася, што ${issue.origin} павінна ${sizing.verb} ${adj}${issue.minimum.toString()} ${unit}`;
129
+ }
130
+ return `Занадта малы: чакалася, што ${issue.origin} павінна быць ${adj}${issue.minimum.toString()}`;
131
+ }
132
+ case "invalid_format": {
133
+ const _issue = issue;
134
+ if (_issue.format === "starts_with")
135
+ return `Няправільны радок: павінен пачынацца з "${_issue.prefix}"`;
136
+ if (_issue.format === "ends_with")
137
+ return `Няправільны радок: павінен заканчвацца на "${_issue.suffix}"`;
138
+ if (_issue.format === "includes")
139
+ return `Няправільны радок: павінен змяшчаць "${_issue.includes}"`;
140
+ if (_issue.format === "regex")
141
+ return `Няправільны радок: павінен адпавядаць шаблону ${_issue.pattern}`;
142
+ return `Няправільны ${Nouns[_issue.format] ?? issue.format}`;
143
+ }
144
+ case "not_multiple_of":
145
+ return `Няправільны лік: павінен быць кратным ${issue.divisor}`;
146
+ case "unrecognized_keys":
147
+ return `Нераспазнаны ${issue.keys.length > 1 ? "ключы" : "ключ"}: ${util.joinValues(issue.keys, ", ")}`;
148
+ case "invalid_key":
149
+ return `Няправільны ключ у ${issue.origin}`;
150
+ case "invalid_union":
151
+ return "Няправільны ўвод";
152
+ case "invalid_element":
153
+ return `Няправільнае значэнне ў ${issue.origin}`;
154
+ default:
155
+ return `Няправільны ўвод`;
156
+ }
157
+ };
158
+ export { error };
159
+ export default function () {
160
+ return {
161
+ localeError: error,
162
+ };
163
+ }
@@ -0,0 +1,7 @@
1
+ import type * as errors from "../core/errors.js";
2
+ export declare const parsedType: (data: any) => string;
3
+ declare const error: errors.$ZodErrorMap;
4
+ export { error };
5
+ export default function (): {
6
+ localeError: errors.$ZodErrorMap;
7
+ };
@@ -0,0 +1,117 @@
1
+ import * as util from "../core/util.js";
2
+ const Sizable = {
3
+ string: { unit: "caràcters", verb: "contenir" },
4
+ file: { unit: "bytes", verb: "contenir" },
5
+ array: { unit: "elements", verb: "contenir" },
6
+ set: { unit: "elements", verb: "contenir" },
7
+ };
8
+ function getSizing(origin) {
9
+ return Sizable[origin] ?? null;
10
+ }
11
+ export const parsedType = (data) => {
12
+ const t = typeof data;
13
+ switch (t) {
14
+ case "number": {
15
+ return Number.isNaN(data) ? "NaN" : "number";
16
+ }
17
+ case "object": {
18
+ if (Array.isArray(data)) {
19
+ return "array";
20
+ }
21
+ if (data === null) {
22
+ return "null";
23
+ }
24
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
25
+ return data.constructor.name;
26
+ }
27
+ }
28
+ }
29
+ return t;
30
+ };
31
+ const Nouns = {
32
+ regex: "entrada",
33
+ email: "adreça electrònica",
34
+ url: "URL",
35
+ emoji: "emoji",
36
+ uuid: "UUID",
37
+ uuidv4: "UUIDv4",
38
+ uuidv6: "UUIDv6",
39
+ nanoid: "nanoid",
40
+ guid: "GUID",
41
+ cuid: "cuid",
42
+ cuid2: "cuid2",
43
+ ulid: "ULID",
44
+ xid: "XID",
45
+ ksuid: "KSUID",
46
+ datetime: "data i hora ISO",
47
+ date: "data ISO",
48
+ time: "hora ISO",
49
+ duration: "durada ISO",
50
+ ipv4: "adreça IPv4",
51
+ ipv6: "adreça IPv6",
52
+ cidrv4: "rang IPv4",
53
+ cidrv6: "rang IPv6",
54
+ base64: "cadena codificada en base64",
55
+ base64url: "cadena codificada en base64url",
56
+ json_string: "cadena JSON",
57
+ e164: "número E.164",
58
+ jwt: "JWT",
59
+ template_literal: "entrada",
60
+ };
61
+ const error = (issue) => {
62
+ switch (issue.code) {
63
+ case "invalid_type":
64
+ return `Tipus invàlid: s'esperava ${issue.expected}, s'ha rebut ${parsedType(issue.input)}`;
65
+ // return `Tipus invàlid: s'esperava ${issue.expected}, s'ha rebut ${util.getParsedType(issue.input)}`;
66
+ case "invalid_value":
67
+ if (issue.values.length === 1)
68
+ return `Valor invàlid: s'esperava ${util.stringifyPrimitive(issue.values[0])}`;
69
+ return `Opció invàlida: s'esperava una de ${util.joinValues(issue.values, " o ")}`;
70
+ case "too_big": {
71
+ const adj = issue.inclusive ? "com a màxim" : "menys de";
72
+ const sizing = getSizing(issue.origin);
73
+ if (sizing)
74
+ return `Massa gran: s'esperava que ${issue.origin ?? "el valor"} contingués ${adj} ${issue.maximum.toString()} ${sizing.unit ?? "elements"}`;
75
+ return `Massa gran: s'esperava que ${issue.origin ?? "el valor"} fos ${adj} ${issue.maximum.toString()}`;
76
+ }
77
+ case "too_small": {
78
+ const adj = issue.inclusive ? "com a mínim" : "més de";
79
+ const sizing = getSizing(issue.origin);
80
+ if (sizing) {
81
+ return `Massa petit: s'esperava que ${issue.origin} contingués ${adj} ${issue.minimum.toString()} ${sizing.unit}`;
82
+ }
83
+ return `Massa petit: s'esperava que ${issue.origin} fos ${adj} ${issue.minimum.toString()}`;
84
+ }
85
+ case "invalid_format": {
86
+ const _issue = issue;
87
+ if (_issue.format === "starts_with") {
88
+ return `Format invàlid: ha de començar amb "${_issue.prefix}"`;
89
+ }
90
+ if (_issue.format === "ends_with")
91
+ return `Format invàlid: ha d'acabar amb "${_issue.suffix}"`;
92
+ if (_issue.format === "includes")
93
+ return `Format invàlid: ha d'incloure "${_issue.includes}"`;
94
+ if (_issue.format === "regex")
95
+ return `Format invàlid: ha de coincidir amb el patró ${_issue.pattern}`;
96
+ return `Format invàlid per a ${Nouns[_issue.format] ?? issue.format}`;
97
+ }
98
+ case "not_multiple_of":
99
+ return `Número invàlid: ha de ser múltiple de ${issue.divisor}`;
100
+ case "unrecognized_keys":
101
+ return `Clau${issue.keys.length > 1 ? "s" : ""} no reconeguda${issue.keys.length > 1 ? "s" : ""}: ${util.joinValues(issue.keys, ", ")}`;
102
+ case "invalid_key":
103
+ return `Clau invàlida a ${issue.origin}`;
104
+ case "invalid_union":
105
+ return "Entrada invàlida"; // Could also be "Tipus d'unió invàlid" but "Entrada invàlida" is more general
106
+ case "invalid_element":
107
+ return `Element invàlid a ${issue.origin}`;
108
+ default:
109
+ return `Entrada invàlida`;
110
+ }
111
+ };
112
+ export { error };
113
+ export default function () {
114
+ return {
115
+ localeError: error,
116
+ };
117
+ }
@@ -0,0 +1,7 @@
1
+ import type * as errors from "../core/errors.js";
2
+ export declare const parsedType: (data: any) => string;
3
+ declare const error: errors.$ZodErrorMap;
4
+ export { error };
5
+ export default function (): {
6
+ localeError: errors.$ZodErrorMap;
7
+ };
@@ -0,0 +1,134 @@
1
+ import * as util from "../core/util.js";
2
+ const Sizable = {
3
+ string: { unit: "znaků", verb: "mít" },
4
+ file: { unit: "bajtů", verb: "mít" },
5
+ array: { unit: "prvků", verb: "mít" },
6
+ set: { unit: "prvků", verb: "mít" },
7
+ };
8
+ function getSizing(origin) {
9
+ return Sizable[origin] ?? null;
10
+ }
11
+ export const parsedType = (data) => {
12
+ const t = typeof data;
13
+ switch (t) {
14
+ case "number": {
15
+ return Number.isNaN(data) ? "NaN" : "číslo";
16
+ }
17
+ case "string": {
18
+ return "řetězec";
19
+ }
20
+ case "boolean": {
21
+ return "boolean";
22
+ }
23
+ case "bigint": {
24
+ return "bigint";
25
+ }
26
+ case "function": {
27
+ return "funkce";
28
+ }
29
+ case "symbol": {
30
+ return "symbol";
31
+ }
32
+ case "undefined": {
33
+ return "undefined";
34
+ }
35
+ case "object": {
36
+ if (Array.isArray(data)) {
37
+ return "pole";
38
+ }
39
+ if (data === null) {
40
+ return "null";
41
+ }
42
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
43
+ return data.constructor.name;
44
+ }
45
+ }
46
+ }
47
+ return t;
48
+ };
49
+ const Nouns = {
50
+ regex: "regulární výraz",
51
+ email: "e-mailová adresa",
52
+ url: "URL",
53
+ emoji: "emoji",
54
+ uuid: "UUID",
55
+ uuidv4: "UUIDv4",
56
+ uuidv6: "UUIDv6",
57
+ nanoid: "nanoid",
58
+ guid: "GUID",
59
+ cuid: "cuid",
60
+ cuid2: "cuid2",
61
+ ulid: "ULID",
62
+ xid: "XID",
63
+ ksuid: "KSUID",
64
+ datetime: "datum a čas ve formátu ISO",
65
+ date: "datum ve formátu ISO",
66
+ time: "čas ve formátu ISO",
67
+ duration: "doba trvání ISO",
68
+ ipv4: "IPv4 adresa",
69
+ ipv6: "IPv6 adresa",
70
+ cidrv4: "rozsah IPv4",
71
+ cidrv6: "rozsah IPv6",
72
+ base64: "řetězec zakódovaný ve formátu base64",
73
+ base64url: "řetězec zakódovaný ve formátu base64url",
74
+ json_string: "řetězec ve formátu JSON",
75
+ e164: "číslo E.164",
76
+ jwt: "JWT",
77
+ template_literal: "vstup",
78
+ };
79
+ const error = (issue) => {
80
+ switch (issue.code) {
81
+ case "invalid_type":
82
+ return `Neplatný vstup: očekáváno ${issue.expected}, obdrženo ${parsedType(issue.input)}`;
83
+ case "invalid_value":
84
+ if (issue.values.length === 1)
85
+ return `Neplatný vstup: očekáváno ${util.stringifyPrimitive(issue.values[0])}`;
86
+ return `Neplatná možnost: očekávána jedna z hodnot ${util.joinValues(issue.values, "|")}`;
87
+ case "too_big": {
88
+ const adj = issue.inclusive ? "<=" : "<";
89
+ const sizing = getSizing(issue.origin);
90
+ if (sizing) {
91
+ return `Hodnota je příliš velká: ${issue.origin ?? "hodnota"} musí mít ${adj}${issue.maximum.toString()} ${sizing.unit ?? "prvků"}`;
92
+ }
93
+ return `Hodnota je příliš velká: ${issue.origin ?? "hodnota"} musí být ${adj}${issue.maximum.toString()}`;
94
+ }
95
+ case "too_small": {
96
+ const adj = issue.inclusive ? ">=" : ">";
97
+ const sizing = getSizing(issue.origin);
98
+ if (sizing) {
99
+ return `Hodnota je příliš malá: ${issue.origin ?? "hodnota"} musí mít ${adj}${issue.minimum.toString()} ${sizing.unit ?? "prvků"}`;
100
+ }
101
+ return `Hodnota je příliš malá: ${issue.origin ?? "hodnota"} musí být ${adj}${issue.minimum.toString()}`;
102
+ }
103
+ case "invalid_format": {
104
+ const _issue = issue;
105
+ if (_issue.format === "starts_with")
106
+ return `Neplatný řetězec: musí začínat na "${_issue.prefix}"`;
107
+ if (_issue.format === "ends_with")
108
+ return `Neplatný řetězec: musí končit na "${_issue.suffix}"`;
109
+ if (_issue.format === "includes")
110
+ return `Neplatný řetězec: musí obsahovat "${_issue.includes}"`;
111
+ if (_issue.format === "regex")
112
+ return `Neplatný řetězec: musí odpovídat vzoru ${_issue.pattern}`;
113
+ return `Neplatný formát ${Nouns[_issue.format] ?? issue.format}`;
114
+ }
115
+ case "not_multiple_of":
116
+ return `Neplatné číslo: musí být násobkem ${issue.divisor}`;
117
+ case "unrecognized_keys":
118
+ return `Neznámé klíče: ${util.joinValues(issue.keys, ", ")}`;
119
+ case "invalid_key":
120
+ return `Neplatný klíč v ${issue.origin}`;
121
+ case "invalid_union":
122
+ return "Neplatný vstup";
123
+ case "invalid_element":
124
+ return `Neplatná hodnota v ${issue.origin}`;
125
+ default:
126
+ return `Neplatný vstup`;
127
+ }
128
+ };
129
+ export { error };
130
+ export default function () {
131
+ return {
132
+ localeError: error,
133
+ };
134
+ }
@@ -0,0 +1,7 @@
1
+ import type * as errors from "../core/errors.js";
2
+ export declare const parsedType: (data: any) => string;
3
+ declare const error: errors.$ZodErrorMap;
4
+ export { error };
5
+ export default function (): {
6
+ localeError: errors.$ZodErrorMap;
7
+ };
@@ -0,0 +1,115 @@
1
+ import * as util from "../core/util.js";
2
+ const Sizable = {
3
+ string: { unit: "Zeichen", verb: "zu haben" },
4
+ file: { unit: "Bytes", verb: "zu haben" },
5
+ array: { unit: "Elemente", verb: "zu haben" },
6
+ set: { unit: "Elemente", verb: "zu haben" },
7
+ };
8
+ function getSizing(origin) {
9
+ return Sizable[origin] ?? null;
10
+ }
11
+ export const parsedType = (data) => {
12
+ const t = typeof data;
13
+ switch (t) {
14
+ case "number": {
15
+ return Number.isNaN(data) ? "NaN" : "Zahl";
16
+ }
17
+ case "object": {
18
+ if (Array.isArray(data)) {
19
+ return "Array";
20
+ }
21
+ if (data === null) {
22
+ return "null";
23
+ }
24
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
25
+ return data.constructor.name;
26
+ }
27
+ }
28
+ }
29
+ return t;
30
+ };
31
+ const Nouns = {
32
+ regex: "Eingabe",
33
+ email: "E-Mail-Adresse",
34
+ url: "URL",
35
+ emoji: "Emoji",
36
+ uuid: "UUID",
37
+ uuidv4: "UUIDv4",
38
+ uuidv6: "UUIDv6",
39
+ nanoid: "nanoid",
40
+ guid: "GUID",
41
+ cuid: "cuid",
42
+ cuid2: "cuid2",
43
+ ulid: "ULID",
44
+ xid: "XID",
45
+ ksuid: "KSUID",
46
+ datetime: "ISO-Datum und -Uhrzeit",
47
+ date: "ISO-Datum",
48
+ time: "ISO-Uhrzeit",
49
+ duration: "ISO-Dauer",
50
+ ipv4: "IPv4-Adresse",
51
+ ipv6: "IPv6-Adresse",
52
+ cidrv4: "IPv4-Bereich",
53
+ cidrv6: "IPv6-Bereich",
54
+ base64: "Base64-codierter String",
55
+ base64url: "Base64-URL-codierter String",
56
+ json_string: "JSON-String",
57
+ e164: "E.164-Nummer",
58
+ jwt: "JWT",
59
+ template_literal: "Eingabe",
60
+ };
61
+ const error = (issue) => {
62
+ switch (issue.code) {
63
+ case "invalid_type":
64
+ return `Ungültige Eingabe: erwartet ${issue.expected}, erhalten ${parsedType(issue.input)}`;
65
+ case "invalid_value":
66
+ if (issue.values.length === 1)
67
+ return `Ungültige Eingabe: erwartet ${util.stringifyPrimitive(issue.values[0])}`;
68
+ return `Ungültige Option: erwartet eine von ${util.joinValues(issue.values, "|")}`;
69
+ case "too_big": {
70
+ const adj = issue.inclusive ? "<=" : "<";
71
+ const sizing = getSizing(issue.origin);
72
+ if (sizing)
73
+ return `Zu groß: erwartet, dass ${issue.origin ?? "Wert"} ${adj}${issue.maximum.toString()} ${sizing.unit ?? "Elemente"} hat`;
74
+ return `Zu groß: erwartet, dass ${issue.origin ?? "Wert"} ${adj}${issue.maximum.toString()} ist`;
75
+ }
76
+ case "too_small": {
77
+ const adj = issue.inclusive ? ">=" : ">";
78
+ const sizing = getSizing(issue.origin);
79
+ if (sizing) {
80
+ return `Zu klein: erwartet, dass ${issue.origin} ${adj}${issue.minimum.toString()} ${sizing.unit} hat`;
81
+ }
82
+ return `Zu klein: erwartet, dass ${issue.origin} ${adj}${issue.minimum.toString()} ist`;
83
+ }
84
+ case "invalid_format": {
85
+ const _issue = issue;
86
+ if (_issue.format === "starts_with")
87
+ return `Ungültiger String: muss mit "${_issue.prefix}" beginnen`;
88
+ if (_issue.format === "ends_with")
89
+ return `Ungültiger String: muss mit "${_issue.suffix}" enden`;
90
+ if (_issue.format === "includes")
91
+ return `Ungültiger String: muss "${_issue.includes}" enthalten`;
92
+ if (_issue.format === "regex")
93
+ return `Ungültiger String: muss dem Muster ${_issue.pattern} entsprechen`;
94
+ return `Ungültig: ${Nouns[_issue.format] ?? issue.format}`;
95
+ }
96
+ case "not_multiple_of":
97
+ return `Ungültige Zahl: muss ein Vielfaches von ${issue.divisor} sein`;
98
+ case "unrecognized_keys":
99
+ return `${issue.keys.length > 1 ? "Unbekannte Schlüssel" : "Unbekannter Schlüssel"}: ${util.joinValues(issue.keys, ", ")}`;
100
+ case "invalid_key":
101
+ return `Ungültiger Schlüssel in ${issue.origin}`;
102
+ case "invalid_union":
103
+ return "Ungültige Eingabe";
104
+ case "invalid_element":
105
+ return `Ungültiger Wert in ${issue.origin}`;
106
+ default:
107
+ return `Ungültige Eingabe`;
108
+ }
109
+ };
110
+ export { error };
111
+ export default function () {
112
+ return {
113
+ localeError: error,
114
+ };
115
+ }
@@ -0,0 +1,7 @@
1
+ import type * as errors from "../core/errors.js";
2
+ export declare const parsedType: (data: any) => string;
3
+ declare const error: errors.$ZodErrorMap;
4
+ export { error };
5
+ export default function (): {
6
+ localeError: errors.$ZodErrorMap;
7
+ };
@@ -0,0 +1,117 @@
1
+ import * as util from "../core/util.js";
2
+ const Sizable = {
3
+ string: { unit: "characters", verb: "to have" },
4
+ file: { unit: "bytes", verb: "to have" },
5
+ array: { unit: "items", verb: "to have" },
6
+ set: { unit: "items", verb: "to have" },
7
+ };
8
+ function getSizing(origin) {
9
+ return Sizable[origin] ?? null;
10
+ }
11
+ export const parsedType = (data) => {
12
+ const t = typeof data;
13
+ switch (t) {
14
+ case "number": {
15
+ return Number.isNaN(data) ? "NaN" : "number";
16
+ }
17
+ case "object": {
18
+ if (Array.isArray(data)) {
19
+ return "array";
20
+ }
21
+ if (data === null) {
22
+ return "null";
23
+ }
24
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
25
+ return data.constructor.name;
26
+ }
27
+ }
28
+ }
29
+ return t;
30
+ };
31
+ const Nouns = {
32
+ regex: "input",
33
+ email: "email address",
34
+ url: "URL",
35
+ emoji: "emoji",
36
+ uuid: "UUID",
37
+ uuidv4: "UUIDv4",
38
+ uuidv6: "UUIDv6",
39
+ nanoid: "nanoid",
40
+ guid: "GUID",
41
+ cuid: "cuid",
42
+ cuid2: "cuid2",
43
+ ulid: "ULID",
44
+ xid: "XID",
45
+ ksuid: "KSUID",
46
+ datetime: "ISO datetime",
47
+ date: "ISO date",
48
+ time: "ISO time",
49
+ duration: "ISO duration",
50
+ ipv4: "IPv4 address",
51
+ ipv6: "IPv6 address",
52
+ cidrv4: "IPv4 range",
53
+ cidrv6: "IPv6 range",
54
+ base64: "base64-encoded string",
55
+ base64url: "base64url-encoded string",
56
+ json_string: "JSON string",
57
+ e164: "E.164 number",
58
+ jwt: "JWT",
59
+ template_literal: "input",
60
+ };
61
+ const error = (issue) => {
62
+ switch (issue.code) {
63
+ case "invalid_type":
64
+ return `Invalid input: expected ${issue.expected}, received ${parsedType(issue.input)}`;
65
+ // return `Invalid input: expected ${issue.expected}, received ${util.getParsedType(issue.input)}`;
66
+ case "invalid_value":
67
+ if (issue.values.length === 1)
68
+ return `Invalid input: expected ${util.stringifyPrimitive(issue.values[0])}`;
69
+ return `Invalid option: expected one of ${util.joinValues(issue.values, "|")}`;
70
+ case "too_big": {
71
+ const adj = issue.inclusive ? "<=" : "<";
72
+ const sizing = getSizing(issue.origin);
73
+ if (sizing)
74
+ return `Too big: expected ${issue.origin ?? "value"} to have ${adj}${issue.maximum.toString()} ${sizing.unit ?? "elements"}`;
75
+ return `Too big: expected ${issue.origin ?? "value"} to be ${adj}${issue.maximum.toString()}`;
76
+ }
77
+ case "too_small": {
78
+ const adj = issue.inclusive ? ">=" : ">";
79
+ const sizing = getSizing(issue.origin);
80
+ if (sizing) {
81
+ return `Too small: expected ${issue.origin} to have ${adj}${issue.minimum.toString()} ${sizing.unit}`;
82
+ }
83
+ return `Too small: expected ${issue.origin} to be ${adj}${issue.minimum.toString()}`;
84
+ }
85
+ case "invalid_format": {
86
+ const _issue = issue;
87
+ if (_issue.format === "starts_with") {
88
+ return `Invalid string: must start with "${_issue.prefix}"`;
89
+ }
90
+ if (_issue.format === "ends_with")
91
+ return `Invalid string: must end with "${_issue.suffix}"`;
92
+ if (_issue.format === "includes")
93
+ return `Invalid string: must include "${_issue.includes}"`;
94
+ if (_issue.format === "regex")
95
+ return `Invalid string: must match pattern ${_issue.pattern}`;
96
+ return `Invalid ${Nouns[_issue.format] ?? issue.format}`;
97
+ }
98
+ case "not_multiple_of":
99
+ return `Invalid number: must be a multiple of ${issue.divisor}`;
100
+ case "unrecognized_keys":
101
+ return `Unrecognized key${issue.keys.length > 1 ? "s" : ""}: ${util.joinValues(issue.keys, ", ")}`;
102
+ case "invalid_key":
103
+ return `Invalid key in ${issue.origin}`;
104
+ case "invalid_union":
105
+ return "Invalid input";
106
+ case "invalid_element":
107
+ return `Invalid value in ${issue.origin}`;
108
+ default:
109
+ return `Invalid input`;
110
+ }
111
+ };
112
+ export { error };
113
+ export default function () {
114
+ return {
115
+ localeError: error,
116
+ };
117
+ }