@psiclawops/hypermem 0.9.0 → 0.9.1

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 (926) hide show
  1. package/ARCHITECTURE.md +2 -2
  2. package/CHANGELOG.md +10 -1
  3. package/docs/ROADMAP.md +12 -3
  4. package/memory-plugin/package.json +3 -3
  5. package/package.json +2 -1
  6. package/plugin/package.json +4 -4
  7. package/dist/adaptive-lifecycle.d.ts +0 -81
  8. package/dist/adaptive-lifecycle.d.ts.map +0 -1
  9. package/dist/adaptive-lifecycle.js +0 -190
  10. package/dist/background-indexer.d.ts +0 -161
  11. package/dist/background-indexer.d.ts.map +0 -1
  12. package/dist/background-indexer.js +0 -1263
  13. package/dist/budget-policy.d.ts +0 -22
  14. package/dist/budget-policy.d.ts.map +0 -1
  15. package/dist/budget-policy.js +0 -32
  16. package/dist/cache.d.ts +0 -148
  17. package/dist/cache.d.ts.map +0 -1
  18. package/dist/cache.js +0 -571
  19. package/dist/compaction-fence.d.ts +0 -97
  20. package/dist/compaction-fence.d.ts.map +0 -1
  21. package/dist/compaction-fence.js +0 -174
  22. package/dist/composition-snapshot-integrity.d.ts +0 -36
  23. package/dist/composition-snapshot-integrity.d.ts.map +0 -1
  24. package/dist/composition-snapshot-integrity.js +0 -131
  25. package/dist/composition-snapshot-runtime.d.ts +0 -59
  26. package/dist/composition-snapshot-runtime.d.ts.map +0 -1
  27. package/dist/composition-snapshot-runtime.js +0 -250
  28. package/dist/composition-snapshot-store.d.ts +0 -44
  29. package/dist/composition-snapshot-store.d.ts.map +0 -1
  30. package/dist/composition-snapshot-store.js +0 -117
  31. package/dist/compositor-utils.d.ts +0 -31
  32. package/dist/compositor-utils.d.ts.map +0 -1
  33. package/dist/compositor-utils.js +0 -47
  34. package/dist/compositor.d.ts +0 -518
  35. package/dist/compositor.d.ts.map +0 -1
  36. package/dist/compositor.js +0 -4280
  37. package/dist/content-hash.d.ts +0 -43
  38. package/dist/content-hash.d.ts.map +0 -1
  39. package/dist/content-hash.js +0 -75
  40. package/dist/content-type-classifier.d.ts +0 -41
  41. package/dist/content-type-classifier.d.ts.map +0 -1
  42. package/dist/content-type-classifier.js +0 -181
  43. package/dist/context-backfill.d.ts +0 -46
  44. package/dist/context-backfill.d.ts.map +0 -1
  45. package/dist/context-backfill.js +0 -113
  46. package/dist/context-store.d.ts +0 -131
  47. package/dist/context-store.d.ts.map +0 -1
  48. package/dist/context-store.js +0 -279
  49. package/dist/contradiction-audit-store.d.ts +0 -54
  50. package/dist/contradiction-audit-store.d.ts.map +0 -1
  51. package/dist/contradiction-audit-store.js +0 -88
  52. package/dist/contradiction-detector.d.ts +0 -78
  53. package/dist/contradiction-detector.d.ts.map +0 -1
  54. package/dist/contradiction-detector.js +0 -362
  55. package/dist/contradiction-resolution-policy.d.ts +0 -21
  56. package/dist/contradiction-resolution-policy.d.ts.map +0 -1
  57. package/dist/contradiction-resolution-policy.js +0 -17
  58. package/dist/cross-agent.d.ts +0 -74
  59. package/dist/cross-agent.d.ts.map +0 -1
  60. package/dist/cross-agent.js +0 -271
  61. package/dist/db.d.ts +0 -131
  62. package/dist/db.d.ts.map +0 -1
  63. package/dist/db.js +0 -410
  64. package/dist/degradation.d.ts +0 -102
  65. package/dist/degradation.d.ts.map +0 -1
  66. package/dist/degradation.js +0 -141
  67. package/dist/desired-state-store.d.ts +0 -100
  68. package/dist/desired-state-store.d.ts.map +0 -1
  69. package/dist/desired-state-store.js +0 -222
  70. package/dist/doc-chunk-store.d.ts +0 -159
  71. package/dist/doc-chunk-store.d.ts.map +0 -1
  72. package/dist/doc-chunk-store.js +0 -441
  73. package/dist/doc-chunker.d.ts +0 -99
  74. package/dist/doc-chunker.d.ts.map +0 -1
  75. package/dist/doc-chunker.js +0 -324
  76. package/dist/dreaming-promoter.d.ts +0 -124
  77. package/dist/dreaming-promoter.d.ts.map +0 -1
  78. package/dist/dreaming-promoter.js +0 -447
  79. package/dist/episode-store.d.ts +0 -49
  80. package/dist/episode-store.d.ts.map +0 -1
  81. package/dist/episode-store.js +0 -135
  82. package/dist/expertise-store.d.ts +0 -129
  83. package/dist/expertise-store.d.ts.map +0 -1
  84. package/dist/expertise-store.js +0 -342
  85. package/dist/fact-store.d.ts +0 -90
  86. package/dist/fact-store.d.ts.map +0 -1
  87. package/dist/fact-store.js +0 -283
  88. package/dist/fleet-store.d.ts +0 -144
  89. package/dist/fleet-store.d.ts.map +0 -1
  90. package/dist/fleet-store.js +0 -276
  91. package/dist/fos-mod.d.ts +0 -178
  92. package/dist/fos-mod.d.ts.map +0 -1
  93. package/dist/fos-mod.js +0 -416
  94. package/dist/hybrid-retrieval.d.ts +0 -102
  95. package/dist/hybrid-retrieval.d.ts.map +0 -1
  96. package/dist/hybrid-retrieval.js +0 -429
  97. package/dist/image-eviction.d.ts +0 -49
  98. package/dist/image-eviction.d.ts.map +0 -1
  99. package/dist/image-eviction.js +0 -251
  100. package/dist/index.d.ts +0 -727
  101. package/dist/index.d.ts.map +0 -1
  102. package/dist/index.js +0 -1495
  103. package/dist/keystone-scorer.d.ts +0 -51
  104. package/dist/keystone-scorer.d.ts.map +0 -1
  105. package/dist/keystone-scorer.js +0 -52
  106. package/dist/knowledge-graph.d.ts +0 -110
  107. package/dist/knowledge-graph.d.ts.map +0 -1
  108. package/dist/knowledge-graph.js +0 -305
  109. package/dist/knowledge-lint.d.ts +0 -31
  110. package/dist/knowledge-lint.d.ts.map +0 -1
  111. package/dist/knowledge-lint.js +0 -155
  112. package/dist/knowledge-store.d.ts +0 -75
  113. package/dist/knowledge-store.d.ts.map +0 -1
  114. package/dist/knowledge-store.js +0 -270
  115. package/dist/library-schema.d.ts +0 -31
  116. package/dist/library-schema.d.ts.map +0 -1
  117. package/dist/library-schema.js +0 -1357
  118. package/dist/message-store.d.ts +0 -181
  119. package/dist/message-store.d.ts.map +0 -1
  120. package/dist/message-store.js +0 -577
  121. package/dist/metrics-dashboard.d.ts +0 -131
  122. package/dist/metrics-dashboard.d.ts.map +0 -1
  123. package/dist/metrics-dashboard.js +0 -298
  124. package/dist/obsidian-exporter.d.ts +0 -57
  125. package/dist/obsidian-exporter.d.ts.map +0 -1
  126. package/dist/obsidian-exporter.js +0 -274
  127. package/dist/obsidian-watcher.d.ts +0 -147
  128. package/dist/obsidian-watcher.d.ts.map +0 -1
  129. package/dist/obsidian-watcher.js +0 -403
  130. package/dist/open-domain.d.ts +0 -46
  131. package/dist/open-domain.d.ts.map +0 -1
  132. package/dist/open-domain.js +0 -125
  133. package/dist/preference-store.d.ts +0 -54
  134. package/dist/preference-store.d.ts.map +0 -1
  135. package/dist/preference-store.js +0 -109
  136. package/dist/preservation-gate.d.ts +0 -82
  137. package/dist/preservation-gate.d.ts.map +0 -1
  138. package/dist/preservation-gate.js +0 -150
  139. package/dist/proactive-pass.d.ts +0 -63
  140. package/dist/proactive-pass.d.ts.map +0 -1
  141. package/dist/proactive-pass.js +0 -293
  142. package/dist/profiles.d.ts +0 -46
  143. package/dist/profiles.d.ts.map +0 -1
  144. package/dist/profiles.js +0 -262
  145. package/dist/provider-translator.d.ts +0 -50
  146. package/dist/provider-translator.d.ts.map +0 -1
  147. package/dist/provider-translator.js +0 -403
  148. package/dist/rate-limiter.d.ts +0 -76
  149. package/dist/rate-limiter.d.ts.map +0 -1
  150. package/dist/rate-limiter.js +0 -179
  151. package/dist/repair-tool-pairs.d.ts +0 -38
  152. package/dist/repair-tool-pairs.d.ts.map +0 -1
  153. package/dist/repair-tool-pairs.js +0 -209
  154. package/dist/replay-recovery.d.ts +0 -29
  155. package/dist/replay-recovery.d.ts.map +0 -1
  156. package/dist/replay-recovery.js +0 -82
  157. package/dist/reranker.d.ts +0 -95
  158. package/dist/reranker.d.ts.map +0 -1
  159. package/dist/reranker.js +0 -308
  160. package/dist/retrieval-policy.d.ts +0 -51
  161. package/dist/retrieval-policy.d.ts.map +0 -1
  162. package/dist/retrieval-policy.js +0 -77
  163. package/dist/schema.d.ts +0 -15
  164. package/dist/schema.d.ts.map +0 -1
  165. package/dist/schema.js +0 -327
  166. package/dist/secret-scanner.d.ts +0 -51
  167. package/dist/secret-scanner.d.ts.map +0 -1
  168. package/dist/secret-scanner.js +0 -248
  169. package/dist/seed.d.ts +0 -108
  170. package/dist/seed.d.ts.map +0 -1
  171. package/dist/seed.js +0 -179
  172. package/dist/session-flusher.d.ts +0 -53
  173. package/dist/session-flusher.d.ts.map +0 -1
  174. package/dist/session-flusher.js +0 -69
  175. package/dist/session-topic-map.d.ts +0 -41
  176. package/dist/session-topic-map.d.ts.map +0 -1
  177. package/dist/session-topic-map.js +0 -77
  178. package/dist/spawn-context.d.ts +0 -54
  179. package/dist/spawn-context.d.ts.map +0 -1
  180. package/dist/spawn-context.js +0 -159
  181. package/dist/system-store.d.ts +0 -73
  182. package/dist/system-store.d.ts.map +0 -1
  183. package/dist/system-store.js +0 -182
  184. package/dist/temporal-store.d.ts +0 -81
  185. package/dist/temporal-store.d.ts.map +0 -1
  186. package/dist/temporal-store.js +0 -149
  187. package/dist/tool-artifact-store.d.ts +0 -98
  188. package/dist/tool-artifact-store.d.ts.map +0 -1
  189. package/dist/tool-artifact-store.js +0 -244
  190. package/dist/topic-detector.d.ts +0 -35
  191. package/dist/topic-detector.d.ts.map +0 -1
  192. package/dist/topic-detector.js +0 -249
  193. package/dist/topic-store.d.ts +0 -51
  194. package/dist/topic-store.d.ts.map +0 -1
  195. package/dist/topic-store.js +0 -175
  196. package/dist/topic-synthesizer.d.ts +0 -71
  197. package/dist/topic-synthesizer.d.ts.map +0 -1
  198. package/dist/topic-synthesizer.js +0 -426
  199. package/dist/trigger-registry.d.ts +0 -63
  200. package/dist/trigger-registry.d.ts.map +0 -1
  201. package/dist/trigger-registry.js +0 -171
  202. package/dist/types.d.ts +0 -1085
  203. package/dist/types.d.ts.map +0 -1
  204. package/dist/types.js +0 -9
  205. package/dist/vector-store.d.ts +0 -180
  206. package/dist/vector-store.d.ts.map +0 -1
  207. package/dist/vector-store.js +0 -1041
  208. package/dist/version.d.ts +0 -34
  209. package/dist/version.d.ts.map +0 -1
  210. package/dist/version.js +0 -44
  211. package/dist/wiki-page-emitter.d.ts +0 -65
  212. package/dist/wiki-page-emitter.d.ts.map +0 -1
  213. package/dist/wiki-page-emitter.js +0 -258
  214. package/dist/work-store.d.ts +0 -112
  215. package/dist/work-store.d.ts.map +0 -1
  216. package/dist/work-store.js +0 -273
  217. package/memory-plugin/dist/index.d.ts +0 -24
  218. package/memory-plugin/dist/index.d.ts.map +0 -1
  219. package/memory-plugin/dist/index.js +0 -350
  220. package/memory-plugin/dist/index.js.map +0 -1
  221. package/node_modules/sqlite-vec/README.md +0 -1
  222. package/node_modules/sqlite-vec/index.cjs +0 -46
  223. package/node_modules/sqlite-vec/index.d.ts +0 -17
  224. package/node_modules/sqlite-vec/index.mjs +0 -47
  225. package/node_modules/sqlite-vec/package.json +0 -1
  226. package/node_modules/sqlite-vec-linux-x64/README.md +0 -1
  227. package/node_modules/sqlite-vec-linux-x64/package.json +0 -1
  228. package/node_modules/sqlite-vec-linux-x64/vec0.so +0 -0
  229. package/node_modules/zod/LICENSE +0 -21
  230. package/node_modules/zod/README.md +0 -208
  231. package/node_modules/zod/index.cjs +0 -33
  232. package/node_modules/zod/index.d.cts +0 -4
  233. package/node_modules/zod/index.d.ts +0 -4
  234. package/node_modules/zod/index.js +0 -4
  235. package/node_modules/zod/locales/index.cjs +0 -17
  236. package/node_modules/zod/locales/index.d.cts +0 -1
  237. package/node_modules/zod/locales/index.d.ts +0 -1
  238. package/node_modules/zod/locales/index.js +0 -1
  239. package/node_modules/zod/locales/package.json +0 -6
  240. package/node_modules/zod/mini/index.cjs +0 -32
  241. package/node_modules/zod/mini/index.d.cts +0 -3
  242. package/node_modules/zod/mini/index.d.ts +0 -3
  243. package/node_modules/zod/mini/index.js +0 -3
  244. package/node_modules/zod/mini/package.json +0 -6
  245. package/node_modules/zod/package.json +0 -135
  246. package/node_modules/zod/src/index.ts +0 -4
  247. package/node_modules/zod/src/locales/index.ts +0 -1
  248. package/node_modules/zod/src/mini/index.ts +0 -3
  249. package/node_modules/zod/src/v3/ZodError.ts +0 -330
  250. package/node_modules/zod/src/v3/benchmarks/datetime.ts +0 -58
  251. package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +0 -80
  252. package/node_modules/zod/src/v3/benchmarks/index.ts +0 -59
  253. package/node_modules/zod/src/v3/benchmarks/ipv4.ts +0 -57
  254. package/node_modules/zod/src/v3/benchmarks/object.ts +0 -69
  255. package/node_modules/zod/src/v3/benchmarks/primitives.ts +0 -162
  256. package/node_modules/zod/src/v3/benchmarks/realworld.ts +0 -63
  257. package/node_modules/zod/src/v3/benchmarks/string.ts +0 -55
  258. package/node_modules/zod/src/v3/benchmarks/union.ts +0 -80
  259. package/node_modules/zod/src/v3/errors.ts +0 -13
  260. package/node_modules/zod/src/v3/external.ts +0 -6
  261. package/node_modules/zod/src/v3/helpers/enumUtil.ts +0 -17
  262. package/node_modules/zod/src/v3/helpers/errorUtil.ts +0 -8
  263. package/node_modules/zod/src/v3/helpers/parseUtil.ts +0 -176
  264. package/node_modules/zod/src/v3/helpers/partialUtil.ts +0 -34
  265. package/node_modules/zod/src/v3/helpers/typeAliases.ts +0 -2
  266. package/node_modules/zod/src/v3/helpers/util.ts +0 -224
  267. package/node_modules/zod/src/v3/index.ts +0 -4
  268. package/node_modules/zod/src/v3/locales/en.ts +0 -124
  269. package/node_modules/zod/src/v3/standard-schema.ts +0 -113
  270. package/node_modules/zod/src/v3/tests/Mocker.ts +0 -54
  271. package/node_modules/zod/src/v3/tests/all-errors.test.ts +0 -157
  272. package/node_modules/zod/src/v3/tests/anyunknown.test.ts +0 -28
  273. package/node_modules/zod/src/v3/tests/array.test.ts +0 -71
  274. package/node_modules/zod/src/v3/tests/async-parsing.test.ts +0 -388
  275. package/node_modules/zod/src/v3/tests/async-refinements.test.ts +0 -46
  276. package/node_modules/zod/src/v3/tests/base.test.ts +0 -29
  277. package/node_modules/zod/src/v3/tests/bigint.test.ts +0 -55
  278. package/node_modules/zod/src/v3/tests/branded.test.ts +0 -53
  279. package/node_modules/zod/src/v3/tests/catch.test.ts +0 -220
  280. package/node_modules/zod/src/v3/tests/coerce.test.ts +0 -133
  281. package/node_modules/zod/src/v3/tests/complex.test.ts +0 -70
  282. package/node_modules/zod/src/v3/tests/custom.test.ts +0 -31
  283. package/node_modules/zod/src/v3/tests/date.test.ts +0 -32
  284. package/node_modules/zod/src/v3/tests/deepmasking.test.ts +0 -186
  285. package/node_modules/zod/src/v3/tests/default.test.ts +0 -112
  286. package/node_modules/zod/src/v3/tests/description.test.ts +0 -33
  287. package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +0 -315
  288. package/node_modules/zod/src/v3/tests/enum.test.ts +0 -80
  289. package/node_modules/zod/src/v3/tests/error.test.ts +0 -551
  290. package/node_modules/zod/src/v3/tests/firstparty.test.ts +0 -87
  291. package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +0 -21
  292. package/node_modules/zod/src/v3/tests/function.test.ts +0 -261
  293. package/node_modules/zod/src/v3/tests/generics.test.ts +0 -48
  294. package/node_modules/zod/src/v3/tests/instanceof.test.ts +0 -37
  295. package/node_modules/zod/src/v3/tests/intersection.test.ts +0 -110
  296. package/node_modules/zod/src/v3/tests/language-server.source.ts +0 -76
  297. package/node_modules/zod/src/v3/tests/language-server.test.ts +0 -207
  298. package/node_modules/zod/src/v3/tests/literal.test.ts +0 -36
  299. package/node_modules/zod/src/v3/tests/map.test.ts +0 -110
  300. package/node_modules/zod/src/v3/tests/masking.test.ts +0 -4
  301. package/node_modules/zod/src/v3/tests/mocker.test.ts +0 -19
  302. package/node_modules/zod/src/v3/tests/nan.test.ts +0 -24
  303. package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +0 -87
  304. package/node_modules/zod/src/v3/tests/nullable.test.ts +0 -42
  305. package/node_modules/zod/src/v3/tests/number.test.ts +0 -176
  306. package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +0 -29
  307. package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +0 -29
  308. package/node_modules/zod/src/v3/tests/object.test.ts +0 -434
  309. package/node_modules/zod/src/v3/tests/optional.test.ts +0 -42
  310. package/node_modules/zod/src/v3/tests/parseUtil.test.ts +0 -23
  311. package/node_modules/zod/src/v3/tests/parser.test.ts +0 -41
  312. package/node_modules/zod/src/v3/tests/partials.test.ts +0 -243
  313. package/node_modules/zod/src/v3/tests/pickomit.test.ts +0 -111
  314. package/node_modules/zod/src/v3/tests/pipeline.test.ts +0 -29
  315. package/node_modules/zod/src/v3/tests/preprocess.test.ts +0 -186
  316. package/node_modules/zod/src/v3/tests/primitive.test.ts +0 -440
  317. package/node_modules/zod/src/v3/tests/promise.test.ts +0 -90
  318. package/node_modules/zod/src/v3/tests/readonly.test.ts +0 -194
  319. package/node_modules/zod/src/v3/tests/record.test.ts +0 -171
  320. package/node_modules/zod/src/v3/tests/recursive.test.ts +0 -197
  321. package/node_modules/zod/src/v3/tests/refine.test.ts +0 -313
  322. package/node_modules/zod/src/v3/tests/safeparse.test.ts +0 -27
  323. package/node_modules/zod/src/v3/tests/set.test.ts +0 -142
  324. package/node_modules/zod/src/v3/tests/standard-schema.test.ts +0 -83
  325. package/node_modules/zod/src/v3/tests/string.test.ts +0 -916
  326. package/node_modules/zod/src/v3/tests/transformer.test.ts +0 -233
  327. package/node_modules/zod/src/v3/tests/tuple.test.ts +0 -90
  328. package/node_modules/zod/src/v3/tests/unions.test.ts +0 -57
  329. package/node_modules/zod/src/v3/tests/validations.test.ts +0 -133
  330. package/node_modules/zod/src/v3/tests/void.test.ts +0 -15
  331. package/node_modules/zod/src/v3/types.ts +0 -5138
  332. package/node_modules/zod/src/v4/classic/checks.ts +0 -32
  333. package/node_modules/zod/src/v4/classic/coerce.ts +0 -27
  334. package/node_modules/zod/src/v4/classic/compat.ts +0 -70
  335. package/node_modules/zod/src/v4/classic/errors.ts +0 -82
  336. package/node_modules/zod/src/v4/classic/external.ts +0 -51
  337. package/node_modules/zod/src/v4/classic/from-json-schema.ts +0 -643
  338. package/node_modules/zod/src/v4/classic/index.ts +0 -5
  339. package/node_modules/zod/src/v4/classic/iso.ts +0 -90
  340. package/node_modules/zod/src/v4/classic/parse.ts +0 -82
  341. package/node_modules/zod/src/v4/classic/schemas.ts +0 -2409
  342. package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +0 -26
  343. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +0 -59
  344. package/node_modules/zod/src/v4/classic/tests/array.test.ts +0 -264
  345. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +0 -210
  346. package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +0 -381
  347. package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +0 -68
  348. package/node_modules/zod/src/v4/classic/tests/base.test.ts +0 -7
  349. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +0 -54
  350. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +0 -106
  351. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +0 -276
  352. package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +0 -20
  353. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +0 -573
  354. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +0 -562
  355. package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +0 -160
  356. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +0 -374
  357. package/node_modules/zod/src/v4/classic/tests/custom.test.ts +0 -40
  358. package/node_modules/zod/src/v4/classic/tests/date.test.ts +0 -62
  359. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +0 -302
  360. package/node_modules/zod/src/v4/classic/tests/default.test.ts +0 -365
  361. package/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +0 -27
  362. package/node_modules/zod/src/v4/classic/tests/description.test.ts +0 -32
  363. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +0 -661
  364. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +0 -285
  365. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +0 -595
  366. package/node_modules/zod/src/v4/classic/tests/error.test.ts +0 -711
  367. package/node_modules/zod/src/v4/classic/tests/file.test.ts +0 -96
  368. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -179
  369. package/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +0 -26
  370. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +0 -734
  371. package/node_modules/zod/src/v4/classic/tests/function.test.ts +0 -360
  372. package/node_modules/zod/src/v4/classic/tests/generics.test.ts +0 -72
  373. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +0 -68
  374. package/node_modules/zod/src/v4/classic/tests/index.test.ts +0 -939
  375. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +0 -60
  376. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +0 -198
  377. package/node_modules/zod/src/v4/classic/tests/json.test.ts +0 -109
  378. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +0 -227
  379. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +0 -117
  380. package/node_modules/zod/src/v4/classic/tests/map.test.ts +0 -330
  381. package/node_modules/zod/src/v4/classic/tests/nan.test.ts +0 -21
  382. package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +0 -168
  383. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +0 -101
  384. package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +0 -22
  385. package/node_modules/zod/src/v4/classic/tests/number.test.ts +0 -270
  386. package/node_modules/zod/src/v4/classic/tests/object.test.ts +0 -640
  387. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +0 -223
  388. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +0 -427
  389. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +0 -211
  390. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +0 -101
  391. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +0 -74
  392. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +0 -282
  393. package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +0 -175
  394. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +0 -81
  395. package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +0 -23
  396. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -252
  397. package/node_modules/zod/src/v4/classic/tests/record.test.ts +0 -632
  398. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +0 -582
  399. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +0 -570
  400. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +0 -243
  401. package/node_modules/zod/src/v4/classic/tests/set.test.ts +0 -181
  402. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +0 -134
  403. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +0 -125
  404. package/node_modules/zod/src/v4/classic/tests/string.test.ts +0 -1175
  405. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +0 -106
  406. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +0 -771
  407. package/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +0 -438
  408. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +0 -2990
  409. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +0 -361
  410. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +0 -183
  411. package/node_modules/zod/src/v4/classic/tests/union.test.ts +0 -219
  412. package/node_modules/zod/src/v4/classic/tests/url.test.ts +0 -13
  413. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +0 -283
  414. package/node_modules/zod/src/v4/classic/tests/void.test.ts +0 -12
  415. package/node_modules/zod/src/v4/core/api.ts +0 -1798
  416. package/node_modules/zod/src/v4/core/checks.ts +0 -1293
  417. package/node_modules/zod/src/v4/core/config.ts +0 -15
  418. package/node_modules/zod/src/v4/core/core.ts +0 -138
  419. package/node_modules/zod/src/v4/core/doc.ts +0 -44
  420. package/node_modules/zod/src/v4/core/errors.ts +0 -448
  421. package/node_modules/zod/src/v4/core/index.ts +0 -16
  422. package/node_modules/zod/src/v4/core/json-schema-generator.ts +0 -126
  423. package/node_modules/zod/src/v4/core/json-schema-processors.ts +0 -667
  424. package/node_modules/zod/src/v4/core/json-schema.ts +0 -147
  425. package/node_modules/zod/src/v4/core/parse.ts +0 -195
  426. package/node_modules/zod/src/v4/core/regexes.ts +0 -183
  427. package/node_modules/zod/src/v4/core/registries.ts +0 -105
  428. package/node_modules/zod/src/v4/core/schemas.ts +0 -4538
  429. package/node_modules/zod/src/v4/core/standard-schema.ts +0 -159
  430. package/node_modules/zod/src/v4/core/tests/extend.test.ts +0 -59
  431. package/node_modules/zod/src/v4/core/tests/index.test.ts +0 -46
  432. package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +0 -124
  433. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +0 -22
  434. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +0 -181
  435. package/node_modules/zod/src/v4/core/tests/locales/he.test.ts +0 -379
  436. package/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +0 -46
  437. package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +0 -128
  438. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +0 -69
  439. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +0 -83
  440. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +0 -67
  441. package/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +0 -45
  442. package/node_modules/zod/src/v4/core/to-json-schema.ts +0 -613
  443. package/node_modules/zod/src/v4/core/util.ts +0 -966
  444. package/node_modules/zod/src/v4/core/versions.ts +0 -5
  445. package/node_modules/zod/src/v4/core/zsf.ts +0 -323
  446. package/node_modules/zod/src/v4/index.ts +0 -4
  447. package/node_modules/zod/src/v4/locales/ar.ts +0 -115
  448. package/node_modules/zod/src/v4/locales/az.ts +0 -111
  449. package/node_modules/zod/src/v4/locales/be.ts +0 -176
  450. package/node_modules/zod/src/v4/locales/bg.ts +0 -128
  451. package/node_modules/zod/src/v4/locales/ca.ts +0 -116
  452. package/node_modules/zod/src/v4/locales/cs.ts +0 -118
  453. package/node_modules/zod/src/v4/locales/da.ts +0 -123
  454. package/node_modules/zod/src/v4/locales/de.ts +0 -116
  455. package/node_modules/zod/src/v4/locales/en.ts +0 -119
  456. package/node_modules/zod/src/v4/locales/eo.ts +0 -118
  457. package/node_modules/zod/src/v4/locales/es.ts +0 -141
  458. package/node_modules/zod/src/v4/locales/fa.ts +0 -126
  459. package/node_modules/zod/src/v4/locales/fi.ts +0 -121
  460. package/node_modules/zod/src/v4/locales/fr-CA.ts +0 -116
  461. package/node_modules/zod/src/v4/locales/fr.ts +0 -116
  462. package/node_modules/zod/src/v4/locales/he.ts +0 -246
  463. package/node_modules/zod/src/v4/locales/hu.ts +0 -117
  464. package/node_modules/zod/src/v4/locales/hy.ts +0 -164
  465. package/node_modules/zod/src/v4/locales/id.ts +0 -115
  466. package/node_modules/zod/src/v4/locales/index.ts +0 -49
  467. package/node_modules/zod/src/v4/locales/is.ts +0 -119
  468. package/node_modules/zod/src/v4/locales/it.ts +0 -116
  469. package/node_modules/zod/src/v4/locales/ja.ts +0 -114
  470. package/node_modules/zod/src/v4/locales/ka.ts +0 -123
  471. package/node_modules/zod/src/v4/locales/kh.ts +0 -7
  472. package/node_modules/zod/src/v4/locales/km.ts +0 -119
  473. package/node_modules/zod/src/v4/locales/ko.ts +0 -121
  474. package/node_modules/zod/src/v4/locales/lt.ts +0 -239
  475. package/node_modules/zod/src/v4/locales/mk.ts +0 -118
  476. package/node_modules/zod/src/v4/locales/ms.ts +0 -115
  477. package/node_modules/zod/src/v4/locales/nl.ts +0 -121
  478. package/node_modules/zod/src/v4/locales/no.ts +0 -116
  479. package/node_modules/zod/src/v4/locales/ota.ts +0 -117
  480. package/node_modules/zod/src/v4/locales/pl.ts +0 -118
  481. package/node_modules/zod/src/v4/locales/ps.ts +0 -126
  482. package/node_modules/zod/src/v4/locales/pt.ts +0 -116
  483. package/node_modules/zod/src/v4/locales/ru.ts +0 -176
  484. package/node_modules/zod/src/v4/locales/sl.ts +0 -118
  485. package/node_modules/zod/src/v4/locales/sv.ts +0 -119
  486. package/node_modules/zod/src/v4/locales/ta.ts +0 -118
  487. package/node_modules/zod/src/v4/locales/th.ts +0 -119
  488. package/node_modules/zod/src/v4/locales/tr.ts +0 -111
  489. package/node_modules/zod/src/v4/locales/ua.ts +0 -7
  490. package/node_modules/zod/src/v4/locales/uk.ts +0 -117
  491. package/node_modules/zod/src/v4/locales/ur.ts +0 -119
  492. package/node_modules/zod/src/v4/locales/uz.ts +0 -116
  493. package/node_modules/zod/src/v4/locales/vi.ts +0 -117
  494. package/node_modules/zod/src/v4/locales/yo.ts +0 -124
  495. package/node_modules/zod/src/v4/locales/zh-CN.ts +0 -116
  496. package/node_modules/zod/src/v4/locales/zh-TW.ts +0 -115
  497. package/node_modules/zod/src/v4/mini/checks.ts +0 -32
  498. package/node_modules/zod/src/v4/mini/coerce.ts +0 -27
  499. package/node_modules/zod/src/v4/mini/external.ts +0 -40
  500. package/node_modules/zod/src/v4/mini/index.ts +0 -3
  501. package/node_modules/zod/src/v4/mini/iso.ts +0 -66
  502. package/node_modules/zod/src/v4/mini/parse.ts +0 -14
  503. package/node_modules/zod/src/v4/mini/schemas.ts +0 -1916
  504. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +0 -24
  505. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +0 -129
  506. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +0 -94
  507. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +0 -144
  508. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +0 -529
  509. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +0 -36
  510. package/node_modules/zod/src/v4/mini/tests/error.test.ts +0 -22
  511. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +0 -5
  512. package/node_modules/zod/src/v4/mini/tests/index.test.ts +0 -963
  513. package/node_modules/zod/src/v4/mini/tests/number.test.ts +0 -95
  514. package/node_modules/zod/src/v4/mini/tests/object.test.ts +0 -227
  515. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +0 -43
  516. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +0 -275
  517. package/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +0 -50
  518. package/node_modules/zod/src/v4/mini/tests/string.test.ts +0 -347
  519. package/node_modules/zod/src/v4-mini/index.ts +0 -3
  520. package/node_modules/zod/v3/ZodError.cjs +0 -138
  521. package/node_modules/zod/v3/ZodError.d.cts +0 -164
  522. package/node_modules/zod/v3/ZodError.d.ts +0 -164
  523. package/node_modules/zod/v3/ZodError.js +0 -133
  524. package/node_modules/zod/v3/errors.cjs +0 -17
  525. package/node_modules/zod/v3/errors.d.cts +0 -5
  526. package/node_modules/zod/v3/errors.d.ts +0 -5
  527. package/node_modules/zod/v3/errors.js +0 -9
  528. package/node_modules/zod/v3/external.cjs +0 -22
  529. package/node_modules/zod/v3/external.d.cts +0 -6
  530. package/node_modules/zod/v3/external.d.ts +0 -6
  531. package/node_modules/zod/v3/external.js +0 -6
  532. package/node_modules/zod/v3/helpers/enumUtil.cjs +0 -2
  533. package/node_modules/zod/v3/helpers/enumUtil.d.cts +0 -8
  534. package/node_modules/zod/v3/helpers/enumUtil.d.ts +0 -8
  535. package/node_modules/zod/v3/helpers/enumUtil.js +0 -1
  536. package/node_modules/zod/v3/helpers/errorUtil.cjs +0 -9
  537. package/node_modules/zod/v3/helpers/errorUtil.d.cts +0 -9
  538. package/node_modules/zod/v3/helpers/errorUtil.d.ts +0 -9
  539. package/node_modules/zod/v3/helpers/errorUtil.js +0 -6
  540. package/node_modules/zod/v3/helpers/parseUtil.cjs +0 -124
  541. package/node_modules/zod/v3/helpers/parseUtil.d.cts +0 -78
  542. package/node_modules/zod/v3/helpers/parseUtil.d.ts +0 -78
  543. package/node_modules/zod/v3/helpers/parseUtil.js +0 -109
  544. package/node_modules/zod/v3/helpers/partialUtil.cjs +0 -2
  545. package/node_modules/zod/v3/helpers/partialUtil.d.cts +0 -8
  546. package/node_modules/zod/v3/helpers/partialUtil.d.ts +0 -8
  547. package/node_modules/zod/v3/helpers/partialUtil.js +0 -1
  548. package/node_modules/zod/v3/helpers/typeAliases.cjs +0 -2
  549. package/node_modules/zod/v3/helpers/typeAliases.d.cts +0 -2
  550. package/node_modules/zod/v3/helpers/typeAliases.d.ts +0 -2
  551. package/node_modules/zod/v3/helpers/typeAliases.js +0 -1
  552. package/node_modules/zod/v3/helpers/util.cjs +0 -137
  553. package/node_modules/zod/v3/helpers/util.d.cts +0 -85
  554. package/node_modules/zod/v3/helpers/util.d.ts +0 -85
  555. package/node_modules/zod/v3/helpers/util.js +0 -133
  556. package/node_modules/zod/v3/index.cjs +0 -33
  557. package/node_modules/zod/v3/index.d.cts +0 -4
  558. package/node_modules/zod/v3/index.d.ts +0 -4
  559. package/node_modules/zod/v3/index.js +0 -4
  560. package/node_modules/zod/v3/locales/en.cjs +0 -112
  561. package/node_modules/zod/v3/locales/en.d.cts +0 -3
  562. package/node_modules/zod/v3/locales/en.d.ts +0 -3
  563. package/node_modules/zod/v3/locales/en.js +0 -109
  564. package/node_modules/zod/v3/package.json +0 -6
  565. package/node_modules/zod/v3/standard-schema.cjs +0 -2
  566. package/node_modules/zod/v3/standard-schema.d.cts +0 -102
  567. package/node_modules/zod/v3/standard-schema.d.ts +0 -102
  568. package/node_modules/zod/v3/standard-schema.js +0 -1
  569. package/node_modules/zod/v3/types.cjs +0 -3777
  570. package/node_modules/zod/v3/types.d.cts +0 -1034
  571. package/node_modules/zod/v3/types.d.ts +0 -1034
  572. package/node_modules/zod/v3/types.js +0 -3695
  573. package/node_modules/zod/v4/classic/checks.cjs +0 -33
  574. package/node_modules/zod/v4/classic/checks.d.cts +0 -1
  575. package/node_modules/zod/v4/classic/checks.d.ts +0 -1
  576. package/node_modules/zod/v4/classic/checks.js +0 -1
  577. package/node_modules/zod/v4/classic/coerce.cjs +0 -47
  578. package/node_modules/zod/v4/classic/coerce.d.cts +0 -17
  579. package/node_modules/zod/v4/classic/coerce.d.ts +0 -17
  580. package/node_modules/zod/v4/classic/coerce.js +0 -17
  581. package/node_modules/zod/v4/classic/compat.cjs +0 -61
  582. package/node_modules/zod/v4/classic/compat.d.cts +0 -50
  583. package/node_modules/zod/v4/classic/compat.d.ts +0 -50
  584. package/node_modules/zod/v4/classic/compat.js +0 -31
  585. package/node_modules/zod/v4/classic/errors.cjs +0 -74
  586. package/node_modules/zod/v4/classic/errors.d.cts +0 -30
  587. package/node_modules/zod/v4/classic/errors.d.ts +0 -30
  588. package/node_modules/zod/v4/classic/errors.js +0 -48
  589. package/node_modules/zod/v4/classic/external.cjs +0 -73
  590. package/node_modules/zod/v4/classic/external.d.cts +0 -15
  591. package/node_modules/zod/v4/classic/external.d.ts +0 -15
  592. package/node_modules/zod/v4/classic/external.js +0 -20
  593. package/node_modules/zod/v4/classic/from-json-schema.cjs +0 -610
  594. package/node_modules/zod/v4/classic/from-json-schema.d.cts +0 -12
  595. package/node_modules/zod/v4/classic/from-json-schema.d.ts +0 -12
  596. package/node_modules/zod/v4/classic/from-json-schema.js +0 -584
  597. package/node_modules/zod/v4/classic/index.cjs +0 -33
  598. package/node_modules/zod/v4/classic/index.d.cts +0 -4
  599. package/node_modules/zod/v4/classic/index.d.ts +0 -4
  600. package/node_modules/zod/v4/classic/index.js +0 -4
  601. package/node_modules/zod/v4/classic/iso.cjs +0 -60
  602. package/node_modules/zod/v4/classic/iso.d.cts +0 -22
  603. package/node_modules/zod/v4/classic/iso.d.ts +0 -22
  604. package/node_modules/zod/v4/classic/iso.js +0 -30
  605. package/node_modules/zod/v4/classic/package.json +0 -6
  606. package/node_modules/zod/v4/classic/parse.cjs +0 -41
  607. package/node_modules/zod/v4/classic/parse.d.cts +0 -31
  608. package/node_modules/zod/v4/classic/parse.d.ts +0 -31
  609. package/node_modules/zod/v4/classic/parse.js +0 -15
  610. package/node_modules/zod/v4/classic/schemas.cjs +0 -1272
  611. package/node_modules/zod/v4/classic/schemas.d.cts +0 -739
  612. package/node_modules/zod/v4/classic/schemas.d.ts +0 -739
  613. package/node_modules/zod/v4/classic/schemas.js +0 -1157
  614. package/node_modules/zod/v4/core/api.cjs +0 -1222
  615. package/node_modules/zod/v4/core/api.d.cts +0 -304
  616. package/node_modules/zod/v4/core/api.d.ts +0 -304
  617. package/node_modules/zod/v4/core/api.js +0 -1082
  618. package/node_modules/zod/v4/core/checks.cjs +0 -601
  619. package/node_modules/zod/v4/core/checks.d.cts +0 -278
  620. package/node_modules/zod/v4/core/checks.d.ts +0 -278
  621. package/node_modules/zod/v4/core/checks.js +0 -575
  622. package/node_modules/zod/v4/core/core.cjs +0 -83
  623. package/node_modules/zod/v4/core/core.d.cts +0 -70
  624. package/node_modules/zod/v4/core/core.d.ts +0 -70
  625. package/node_modules/zod/v4/core/core.js +0 -76
  626. package/node_modules/zod/v4/core/doc.cjs +0 -39
  627. package/node_modules/zod/v4/core/doc.d.cts +0 -14
  628. package/node_modules/zod/v4/core/doc.d.ts +0 -14
  629. package/node_modules/zod/v4/core/doc.js +0 -35
  630. package/node_modules/zod/v4/core/errors.cjs +0 -213
  631. package/node_modules/zod/v4/core/errors.d.cts +0 -220
  632. package/node_modules/zod/v4/core/errors.d.ts +0 -220
  633. package/node_modules/zod/v4/core/errors.js +0 -182
  634. package/node_modules/zod/v4/core/index.cjs +0 -47
  635. package/node_modules/zod/v4/core/index.d.cts +0 -16
  636. package/node_modules/zod/v4/core/index.d.ts +0 -16
  637. package/node_modules/zod/v4/core/index.js +0 -16
  638. package/node_modules/zod/v4/core/json-schema-generator.cjs +0 -99
  639. package/node_modules/zod/v4/core/json-schema-generator.d.cts +0 -65
  640. package/node_modules/zod/v4/core/json-schema-generator.d.ts +0 -65
  641. package/node_modules/zod/v4/core/json-schema-generator.js +0 -95
  642. package/node_modules/zod/v4/core/json-schema-processors.cjs +0 -648
  643. package/node_modules/zod/v4/core/json-schema-processors.d.cts +0 -49
  644. package/node_modules/zod/v4/core/json-schema-processors.d.ts +0 -49
  645. package/node_modules/zod/v4/core/json-schema-processors.js +0 -605
  646. package/node_modules/zod/v4/core/json-schema.cjs +0 -2
  647. package/node_modules/zod/v4/core/json-schema.d.cts +0 -88
  648. package/node_modules/zod/v4/core/json-schema.d.ts +0 -88
  649. package/node_modules/zod/v4/core/json-schema.js +0 -1
  650. package/node_modules/zod/v4/core/package.json +0 -6
  651. package/node_modules/zod/v4/core/parse.cjs +0 -131
  652. package/node_modules/zod/v4/core/parse.d.cts +0 -49
  653. package/node_modules/zod/v4/core/parse.d.ts +0 -49
  654. package/node_modules/zod/v4/core/parse.js +0 -93
  655. package/node_modules/zod/v4/core/regexes.cjs +0 -166
  656. package/node_modules/zod/v4/core/regexes.d.cts +0 -79
  657. package/node_modules/zod/v4/core/regexes.d.ts +0 -79
  658. package/node_modules/zod/v4/core/regexes.js +0 -133
  659. package/node_modules/zod/v4/core/registries.cjs +0 -56
  660. package/node_modules/zod/v4/core/registries.d.cts +0 -35
  661. package/node_modules/zod/v4/core/registries.d.ts +0 -35
  662. package/node_modules/zod/v4/core/registries.js +0 -51
  663. package/node_modules/zod/v4/core/schemas.cjs +0 -2124
  664. package/node_modules/zod/v4/core/schemas.d.cts +0 -1146
  665. package/node_modules/zod/v4/core/schemas.d.ts +0 -1146
  666. package/node_modules/zod/v4/core/schemas.js +0 -2093
  667. package/node_modules/zod/v4/core/standard-schema.cjs +0 -2
  668. package/node_modules/zod/v4/core/standard-schema.d.cts +0 -126
  669. package/node_modules/zod/v4/core/standard-schema.d.ts +0 -126
  670. package/node_modules/zod/v4/core/standard-schema.js +0 -1
  671. package/node_modules/zod/v4/core/to-json-schema.cjs +0 -446
  672. package/node_modules/zod/v4/core/to-json-schema.d.cts +0 -114
  673. package/node_modules/zod/v4/core/to-json-schema.d.ts +0 -114
  674. package/node_modules/zod/v4/core/to-json-schema.js +0 -437
  675. package/node_modules/zod/v4/core/util.cjs +0 -710
  676. package/node_modules/zod/v4/core/util.d.cts +0 -199
  677. package/node_modules/zod/v4/core/util.d.ts +0 -199
  678. package/node_modules/zod/v4/core/util.js +0 -651
  679. package/node_modules/zod/v4/core/versions.cjs +0 -8
  680. package/node_modules/zod/v4/core/versions.d.cts +0 -5
  681. package/node_modules/zod/v4/core/versions.d.ts +0 -5
  682. package/node_modules/zod/v4/core/versions.js +0 -5
  683. package/node_modules/zod/v4/index.cjs +0 -22
  684. package/node_modules/zod/v4/index.d.cts +0 -3
  685. package/node_modules/zod/v4/index.d.ts +0 -3
  686. package/node_modules/zod/v4/index.js +0 -3
  687. package/node_modules/zod/v4/locales/ar.cjs +0 -133
  688. package/node_modules/zod/v4/locales/ar.d.cts +0 -5
  689. package/node_modules/zod/v4/locales/ar.d.ts +0 -4
  690. package/node_modules/zod/v4/locales/ar.js +0 -106
  691. package/node_modules/zod/v4/locales/az.cjs +0 -132
  692. package/node_modules/zod/v4/locales/az.d.cts +0 -5
  693. package/node_modules/zod/v4/locales/az.d.ts +0 -4
  694. package/node_modules/zod/v4/locales/az.js +0 -105
  695. package/node_modules/zod/v4/locales/be.cjs +0 -183
  696. package/node_modules/zod/v4/locales/be.d.cts +0 -5
  697. package/node_modules/zod/v4/locales/be.d.ts +0 -4
  698. package/node_modules/zod/v4/locales/be.js +0 -156
  699. package/node_modules/zod/v4/locales/bg.cjs +0 -147
  700. package/node_modules/zod/v4/locales/bg.d.cts +0 -5
  701. package/node_modules/zod/v4/locales/bg.d.ts +0 -4
  702. package/node_modules/zod/v4/locales/bg.js +0 -120
  703. package/node_modules/zod/v4/locales/ca.cjs +0 -134
  704. package/node_modules/zod/v4/locales/ca.d.cts +0 -5
  705. package/node_modules/zod/v4/locales/ca.d.ts +0 -4
  706. package/node_modules/zod/v4/locales/ca.js +0 -107
  707. package/node_modules/zod/v4/locales/cs.cjs +0 -138
  708. package/node_modules/zod/v4/locales/cs.d.cts +0 -5
  709. package/node_modules/zod/v4/locales/cs.d.ts +0 -4
  710. package/node_modules/zod/v4/locales/cs.js +0 -111
  711. package/node_modules/zod/v4/locales/da.cjs +0 -142
  712. package/node_modules/zod/v4/locales/da.d.cts +0 -5
  713. package/node_modules/zod/v4/locales/da.d.ts +0 -4
  714. package/node_modules/zod/v4/locales/da.js +0 -115
  715. package/node_modules/zod/v4/locales/de.cjs +0 -135
  716. package/node_modules/zod/v4/locales/de.d.cts +0 -5
  717. package/node_modules/zod/v4/locales/de.d.ts +0 -4
  718. package/node_modules/zod/v4/locales/de.js +0 -108
  719. package/node_modules/zod/v4/locales/en.cjs +0 -136
  720. package/node_modules/zod/v4/locales/en.d.cts +0 -5
  721. package/node_modules/zod/v4/locales/en.d.ts +0 -4
  722. package/node_modules/zod/v4/locales/en.js +0 -109
  723. package/node_modules/zod/v4/locales/eo.cjs +0 -136
  724. package/node_modules/zod/v4/locales/eo.d.cts +0 -5
  725. package/node_modules/zod/v4/locales/eo.d.ts +0 -4
  726. package/node_modules/zod/v4/locales/eo.js +0 -109
  727. package/node_modules/zod/v4/locales/es.cjs +0 -159
  728. package/node_modules/zod/v4/locales/es.d.cts +0 -5
  729. package/node_modules/zod/v4/locales/es.d.ts +0 -4
  730. package/node_modules/zod/v4/locales/es.js +0 -132
  731. package/node_modules/zod/v4/locales/fa.cjs +0 -141
  732. package/node_modules/zod/v4/locales/fa.d.cts +0 -5
  733. package/node_modules/zod/v4/locales/fa.d.ts +0 -4
  734. package/node_modules/zod/v4/locales/fa.js +0 -114
  735. package/node_modules/zod/v4/locales/fi.cjs +0 -139
  736. package/node_modules/zod/v4/locales/fi.d.cts +0 -5
  737. package/node_modules/zod/v4/locales/fi.d.ts +0 -4
  738. package/node_modules/zod/v4/locales/fi.js +0 -112
  739. package/node_modules/zod/v4/locales/fr-CA.cjs +0 -134
  740. package/node_modules/zod/v4/locales/fr-CA.d.cts +0 -5
  741. package/node_modules/zod/v4/locales/fr-CA.d.ts +0 -4
  742. package/node_modules/zod/v4/locales/fr-CA.js +0 -107
  743. package/node_modules/zod/v4/locales/fr.cjs +0 -135
  744. package/node_modules/zod/v4/locales/fr.d.cts +0 -5
  745. package/node_modules/zod/v4/locales/fr.d.ts +0 -4
  746. package/node_modules/zod/v4/locales/fr.js +0 -108
  747. package/node_modules/zod/v4/locales/he.cjs +0 -241
  748. package/node_modules/zod/v4/locales/he.d.cts +0 -5
  749. package/node_modules/zod/v4/locales/he.d.ts +0 -4
  750. package/node_modules/zod/v4/locales/he.js +0 -214
  751. package/node_modules/zod/v4/locales/hu.cjs +0 -135
  752. package/node_modules/zod/v4/locales/hu.d.cts +0 -5
  753. package/node_modules/zod/v4/locales/hu.d.ts +0 -4
  754. package/node_modules/zod/v4/locales/hu.js +0 -108
  755. package/node_modules/zod/v4/locales/hy.cjs +0 -174
  756. package/node_modules/zod/v4/locales/hy.d.cts +0 -5
  757. package/node_modules/zod/v4/locales/hy.d.ts +0 -4
  758. package/node_modules/zod/v4/locales/hy.js +0 -147
  759. package/node_modules/zod/v4/locales/id.cjs +0 -133
  760. package/node_modules/zod/v4/locales/id.d.cts +0 -5
  761. package/node_modules/zod/v4/locales/id.d.ts +0 -4
  762. package/node_modules/zod/v4/locales/id.js +0 -106
  763. package/node_modules/zod/v4/locales/index.cjs +0 -104
  764. package/node_modules/zod/v4/locales/index.d.cts +0 -49
  765. package/node_modules/zod/v4/locales/index.d.ts +0 -49
  766. package/node_modules/zod/v4/locales/index.js +0 -49
  767. package/node_modules/zod/v4/locales/is.cjs +0 -136
  768. package/node_modules/zod/v4/locales/is.d.cts +0 -5
  769. package/node_modules/zod/v4/locales/is.d.ts +0 -4
  770. package/node_modules/zod/v4/locales/is.js +0 -109
  771. package/node_modules/zod/v4/locales/it.cjs +0 -135
  772. package/node_modules/zod/v4/locales/it.d.cts +0 -5
  773. package/node_modules/zod/v4/locales/it.d.ts +0 -4
  774. package/node_modules/zod/v4/locales/it.js +0 -108
  775. package/node_modules/zod/v4/locales/ja.cjs +0 -134
  776. package/node_modules/zod/v4/locales/ja.d.cts +0 -5
  777. package/node_modules/zod/v4/locales/ja.d.ts +0 -4
  778. package/node_modules/zod/v4/locales/ja.js +0 -107
  779. package/node_modules/zod/v4/locales/ka.cjs +0 -139
  780. package/node_modules/zod/v4/locales/ka.d.cts +0 -5
  781. package/node_modules/zod/v4/locales/ka.d.ts +0 -4
  782. package/node_modules/zod/v4/locales/ka.js +0 -112
  783. package/node_modules/zod/v4/locales/kh.cjs +0 -12
  784. package/node_modules/zod/v4/locales/kh.d.cts +0 -5
  785. package/node_modules/zod/v4/locales/kh.d.ts +0 -5
  786. package/node_modules/zod/v4/locales/kh.js +0 -5
  787. package/node_modules/zod/v4/locales/km.cjs +0 -137
  788. package/node_modules/zod/v4/locales/km.d.cts +0 -5
  789. package/node_modules/zod/v4/locales/km.d.ts +0 -4
  790. package/node_modules/zod/v4/locales/km.js +0 -110
  791. package/node_modules/zod/v4/locales/ko.cjs +0 -138
  792. package/node_modules/zod/v4/locales/ko.d.cts +0 -5
  793. package/node_modules/zod/v4/locales/ko.d.ts +0 -4
  794. package/node_modules/zod/v4/locales/ko.js +0 -111
  795. package/node_modules/zod/v4/locales/lt.cjs +0 -230
  796. package/node_modules/zod/v4/locales/lt.d.cts +0 -5
  797. package/node_modules/zod/v4/locales/lt.d.ts +0 -4
  798. package/node_modules/zod/v4/locales/lt.js +0 -203
  799. package/node_modules/zod/v4/locales/mk.cjs +0 -136
  800. package/node_modules/zod/v4/locales/mk.d.cts +0 -5
  801. package/node_modules/zod/v4/locales/mk.d.ts +0 -4
  802. package/node_modules/zod/v4/locales/mk.js +0 -109
  803. package/node_modules/zod/v4/locales/ms.cjs +0 -134
  804. package/node_modules/zod/v4/locales/ms.d.cts +0 -5
  805. package/node_modules/zod/v4/locales/ms.d.ts +0 -4
  806. package/node_modules/zod/v4/locales/ms.js +0 -107
  807. package/node_modules/zod/v4/locales/nl.cjs +0 -137
  808. package/node_modules/zod/v4/locales/nl.d.cts +0 -5
  809. package/node_modules/zod/v4/locales/nl.d.ts +0 -4
  810. package/node_modules/zod/v4/locales/nl.js +0 -110
  811. package/node_modules/zod/v4/locales/no.cjs +0 -135
  812. package/node_modules/zod/v4/locales/no.d.cts +0 -5
  813. package/node_modules/zod/v4/locales/no.d.ts +0 -4
  814. package/node_modules/zod/v4/locales/no.js +0 -108
  815. package/node_modules/zod/v4/locales/ota.cjs +0 -136
  816. package/node_modules/zod/v4/locales/ota.d.cts +0 -5
  817. package/node_modules/zod/v4/locales/ota.d.ts +0 -4
  818. package/node_modules/zod/v4/locales/ota.js +0 -109
  819. package/node_modules/zod/v4/locales/package.json +0 -6
  820. package/node_modules/zod/v4/locales/pl.cjs +0 -136
  821. package/node_modules/zod/v4/locales/pl.d.cts +0 -5
  822. package/node_modules/zod/v4/locales/pl.d.ts +0 -4
  823. package/node_modules/zod/v4/locales/pl.js +0 -109
  824. package/node_modules/zod/v4/locales/ps.cjs +0 -141
  825. package/node_modules/zod/v4/locales/ps.d.cts +0 -5
  826. package/node_modules/zod/v4/locales/ps.d.ts +0 -4
  827. package/node_modules/zod/v4/locales/ps.js +0 -114
  828. package/node_modules/zod/v4/locales/pt.cjs +0 -135
  829. package/node_modules/zod/v4/locales/pt.d.cts +0 -5
  830. package/node_modules/zod/v4/locales/pt.d.ts +0 -4
  831. package/node_modules/zod/v4/locales/pt.js +0 -108
  832. package/node_modules/zod/v4/locales/ru.cjs +0 -183
  833. package/node_modules/zod/v4/locales/ru.d.cts +0 -5
  834. package/node_modules/zod/v4/locales/ru.d.ts +0 -4
  835. package/node_modules/zod/v4/locales/ru.js +0 -156
  836. package/node_modules/zod/v4/locales/sl.cjs +0 -136
  837. package/node_modules/zod/v4/locales/sl.d.cts +0 -5
  838. package/node_modules/zod/v4/locales/sl.d.ts +0 -4
  839. package/node_modules/zod/v4/locales/sl.js +0 -109
  840. package/node_modules/zod/v4/locales/sv.cjs +0 -137
  841. package/node_modules/zod/v4/locales/sv.d.cts +0 -5
  842. package/node_modules/zod/v4/locales/sv.d.ts +0 -4
  843. package/node_modules/zod/v4/locales/sv.js +0 -110
  844. package/node_modules/zod/v4/locales/ta.cjs +0 -137
  845. package/node_modules/zod/v4/locales/ta.d.cts +0 -5
  846. package/node_modules/zod/v4/locales/ta.d.ts +0 -4
  847. package/node_modules/zod/v4/locales/ta.js +0 -110
  848. package/node_modules/zod/v4/locales/th.cjs +0 -137
  849. package/node_modules/zod/v4/locales/th.d.cts +0 -5
  850. package/node_modules/zod/v4/locales/th.d.ts +0 -4
  851. package/node_modules/zod/v4/locales/th.js +0 -110
  852. package/node_modules/zod/v4/locales/tr.cjs +0 -132
  853. package/node_modules/zod/v4/locales/tr.d.cts +0 -5
  854. package/node_modules/zod/v4/locales/tr.d.ts +0 -4
  855. package/node_modules/zod/v4/locales/tr.js +0 -105
  856. package/node_modules/zod/v4/locales/ua.cjs +0 -12
  857. package/node_modules/zod/v4/locales/ua.d.cts +0 -5
  858. package/node_modules/zod/v4/locales/ua.d.ts +0 -5
  859. package/node_modules/zod/v4/locales/ua.js +0 -5
  860. package/node_modules/zod/v4/locales/uk.cjs +0 -135
  861. package/node_modules/zod/v4/locales/uk.d.cts +0 -5
  862. package/node_modules/zod/v4/locales/uk.d.ts +0 -4
  863. package/node_modules/zod/v4/locales/uk.js +0 -108
  864. package/node_modules/zod/v4/locales/ur.cjs +0 -137
  865. package/node_modules/zod/v4/locales/ur.d.cts +0 -5
  866. package/node_modules/zod/v4/locales/ur.d.ts +0 -4
  867. package/node_modules/zod/v4/locales/ur.js +0 -110
  868. package/node_modules/zod/v4/locales/uz.cjs +0 -136
  869. package/node_modules/zod/v4/locales/uz.d.cts +0 -5
  870. package/node_modules/zod/v4/locales/uz.d.ts +0 -4
  871. package/node_modules/zod/v4/locales/uz.js +0 -109
  872. package/node_modules/zod/v4/locales/vi.cjs +0 -135
  873. package/node_modules/zod/v4/locales/vi.d.cts +0 -5
  874. package/node_modules/zod/v4/locales/vi.d.ts +0 -4
  875. package/node_modules/zod/v4/locales/vi.js +0 -108
  876. package/node_modules/zod/v4/locales/yo.cjs +0 -134
  877. package/node_modules/zod/v4/locales/yo.d.cts +0 -5
  878. package/node_modules/zod/v4/locales/yo.d.ts +0 -4
  879. package/node_modules/zod/v4/locales/yo.js +0 -107
  880. package/node_modules/zod/v4/locales/zh-CN.cjs +0 -136
  881. package/node_modules/zod/v4/locales/zh-CN.d.cts +0 -5
  882. package/node_modules/zod/v4/locales/zh-CN.d.ts +0 -4
  883. package/node_modules/zod/v4/locales/zh-CN.js +0 -109
  884. package/node_modules/zod/v4/locales/zh-TW.cjs +0 -134
  885. package/node_modules/zod/v4/locales/zh-TW.d.cts +0 -5
  886. package/node_modules/zod/v4/locales/zh-TW.d.ts +0 -4
  887. package/node_modules/zod/v4/locales/zh-TW.js +0 -107
  888. package/node_modules/zod/v4/mini/checks.cjs +0 -34
  889. package/node_modules/zod/v4/mini/checks.d.cts +0 -1
  890. package/node_modules/zod/v4/mini/checks.d.ts +0 -1
  891. package/node_modules/zod/v4/mini/checks.js +0 -1
  892. package/node_modules/zod/v4/mini/coerce.cjs +0 -52
  893. package/node_modules/zod/v4/mini/coerce.d.cts +0 -7
  894. package/node_modules/zod/v4/mini/coerce.d.ts +0 -7
  895. package/node_modules/zod/v4/mini/coerce.js +0 -22
  896. package/node_modules/zod/v4/mini/external.cjs +0 -63
  897. package/node_modules/zod/v4/mini/external.d.cts +0 -12
  898. package/node_modules/zod/v4/mini/external.d.ts +0 -12
  899. package/node_modules/zod/v4/mini/external.js +0 -14
  900. package/node_modules/zod/v4/mini/index.cjs +0 -32
  901. package/node_modules/zod/v4/mini/index.d.cts +0 -3
  902. package/node_modules/zod/v4/mini/index.d.ts +0 -3
  903. package/node_modules/zod/v4/mini/index.js +0 -3
  904. package/node_modules/zod/v4/mini/iso.cjs +0 -64
  905. package/node_modules/zod/v4/mini/iso.d.cts +0 -22
  906. package/node_modules/zod/v4/mini/iso.d.ts +0 -22
  907. package/node_modules/zod/v4/mini/iso.js +0 -34
  908. package/node_modules/zod/v4/mini/package.json +0 -6
  909. package/node_modules/zod/v4/mini/parse.cjs +0 -16
  910. package/node_modules/zod/v4/mini/parse.d.cts +0 -1
  911. package/node_modules/zod/v4/mini/parse.d.ts +0 -1
  912. package/node_modules/zod/v4/mini/parse.js +0 -1
  913. package/node_modules/zod/v4/mini/schemas.cjs +0 -1046
  914. package/node_modules/zod/v4/mini/schemas.d.cts +0 -427
  915. package/node_modules/zod/v4/mini/schemas.d.ts +0 -427
  916. package/node_modules/zod/v4/mini/schemas.js +0 -925
  917. package/node_modules/zod/v4/package.json +0 -6
  918. package/node_modules/zod/v4-mini/index.cjs +0 -32
  919. package/node_modules/zod/v4-mini/index.d.cts +0 -3
  920. package/node_modules/zod/v4-mini/index.d.ts +0 -3
  921. package/node_modules/zod/v4-mini/index.js +0 -3
  922. package/node_modules/zod/v4-mini/package.json +0 -6
  923. package/plugin/dist/index.d.ts +0 -208
  924. package/plugin/dist/index.d.ts.map +0 -1
  925. package/plugin/dist/index.js +0 -3474
  926. package/plugin/dist/index.js.map +0 -1
@@ -1,963 +0,0 @@
1
- import { expect, expectTypeOf, test } from "vitest";
2
- import * as z from "zod/mini";
3
- import type { util } from "zod/v4/core";
4
-
5
- test("z.boolean", () => {
6
- const a = z.boolean();
7
- expect(z.parse(a, true)).toEqual(true);
8
- expect(z.parse(a, false)).toEqual(false);
9
- expect(() => z.parse(a, 123)).toThrow();
10
- expect(() => z.parse(a, "true")).toThrow();
11
- type a = z.output<typeof a>;
12
- expectTypeOf<a>().toEqualTypeOf<boolean>();
13
- });
14
-
15
- test("z.bigint", () => {
16
- const a = z.bigint();
17
- expect(z.parse(a, BigInt(123))).toEqual(BigInt(123));
18
- expect(() => z.parse(a, 123)).toThrow();
19
- expect(() => z.parse(a, "123")).toThrow();
20
- });
21
-
22
- test("z.symbol", () => {
23
- const a = z.symbol();
24
- const sym = Symbol();
25
- expect(z.parse(a, sym)).toEqual(sym);
26
- expect(() => z.parse(a, "symbol")).toThrow();
27
- });
28
-
29
- test("z.date", () => {
30
- const a = z.date();
31
- const date = new Date();
32
- expect(z.parse(a, date)).toEqual(date);
33
- expect(() => z.parse(a, "date")).toThrow();
34
- });
35
-
36
- test("z.coerce.string", () => {
37
- const a = z.coerce.string();
38
- expect(z.parse(a, 123)).toEqual("123");
39
- expect(z.parse(a, true)).toEqual("true");
40
- expect(z.parse(a, null)).toEqual("null");
41
- expect(z.parse(a, undefined)).toEqual("undefined");
42
- });
43
-
44
- test("z.coerce.number", () => {
45
- const a = z.coerce.number();
46
- expect(z.parse(a, "123")).toEqual(123);
47
- expect(z.parse(a, "123.45")).toEqual(123.45);
48
- expect(z.parse(a, true)).toEqual(1);
49
- expect(z.parse(a, false)).toEqual(0);
50
- expect(() => z.parse(a, "abc")).toThrow();
51
- });
52
-
53
- test("z.coerce.boolean", () => {
54
- const a = z.coerce.boolean();
55
- // test booleans
56
- expect(z.parse(a, true)).toEqual(true);
57
- expect(z.parse(a, false)).toEqual(false);
58
- expect(z.parse(a, "true")).toEqual(true);
59
- expect(z.parse(a, "false")).toEqual(true);
60
- expect(z.parse(a, 1)).toEqual(true);
61
- expect(z.parse(a, 0)).toEqual(false);
62
- expect(z.parse(a, {})).toEqual(true);
63
- expect(z.parse(a, [])).toEqual(true);
64
- expect(z.parse(a, undefined)).toEqual(false);
65
- expect(z.parse(a, null)).toEqual(false);
66
- expect(z.parse(a, "")).toEqual(false);
67
- });
68
-
69
- test("z.coerce.bigint", () => {
70
- const a = z.coerce.bigint();
71
- expect(z.parse(a, "123")).toEqual(BigInt(123));
72
- expect(z.parse(a, 123)).toEqual(BigInt(123));
73
- expect(() => z.parse(a, "abc")).toThrow();
74
- });
75
-
76
- test("z.coerce.date", () => {
77
- const a = z.coerce.date();
78
- const date = new Date();
79
- expect(z.parse(a, date.toISOString())).toEqual(date);
80
- expect(z.parse(a, date.getTime())).toEqual(date);
81
- expect(() => z.parse(a, "invalid date")).toThrow();
82
- });
83
-
84
- test("z.iso.datetime", () => {
85
- const d1 = "2021-01-01T00:00:00Z";
86
- const d2 = "2021-01-01T00:00:00.123Z";
87
- const d3 = "2021-01-01T00:00:00";
88
- const d4 = "2021-01-01T00:00:00+07:00";
89
- const d5 = "bad data";
90
-
91
- // local: false, offset: false, precision: null
92
- const a = z.iso.datetime();
93
- expect(z.safeParse(a, d1).success).toEqual(true);
94
- expect(z.safeParse(a, d2).success).toEqual(true);
95
- expect(z.safeParse(a, d3).success).toEqual(false);
96
- expect(z.safeParse(a, d4).success).toEqual(false);
97
- expect(z.safeParse(a, d5).success).toEqual(false);
98
-
99
- const b = z.iso.datetime({ local: true });
100
- expect(z.safeParse(b, d1).success).toEqual(true);
101
- expect(z.safeParse(b, d2).success).toEqual(true);
102
- expect(z.safeParse(b, d3).success).toEqual(true);
103
- expect(z.safeParse(b, d4).success).toEqual(false);
104
- expect(z.safeParse(b, d5).success).toEqual(false);
105
-
106
- const c = z.iso.datetime({ offset: true });
107
- expect(z.safeParse(c, d1).success).toEqual(true);
108
- expect(z.safeParse(c, d2).success).toEqual(true);
109
- expect(z.safeParse(c, d3).success).toEqual(false);
110
- expect(z.safeParse(c, d4).success).toEqual(true);
111
- expect(z.safeParse(c, d5).success).toEqual(false);
112
-
113
- const d = z.iso.datetime({ precision: 3 });
114
- expect(z.safeParse(d, d1).success).toEqual(false);
115
- expect(z.safeParse(d, d2).success).toEqual(true);
116
- expect(z.safeParse(d, d3).success).toEqual(false);
117
- expect(z.safeParse(d, d4).success).toEqual(false);
118
- expect(z.safeParse(d, d5).success).toEqual(false);
119
- });
120
-
121
- test("z.iso.date", () => {
122
- const d1 = "2021-01-01";
123
- const d2 = "bad data";
124
-
125
- const a = z.iso.date();
126
- expect(z.safeParse(a, d1).success).toEqual(true);
127
- expect(z.safeParse(a, d2).success).toEqual(false);
128
-
129
- const b = z.string().check(z.iso.date());
130
- expect(z.safeParse(b, d1).success).toEqual(true);
131
- expect(z.safeParse(b, d2).success).toEqual(false);
132
- });
133
-
134
- test("z.iso.time", () => {
135
- const d1 = "00:00:00";
136
- const d2 = "00:00:00.123";
137
- const d3 = "bad data";
138
-
139
- const a = z.iso.time();
140
- expect(z.safeParse(a, d1).success).toEqual(true);
141
- expect(z.safeParse(a, d2).success).toEqual(true);
142
- expect(z.safeParse(a, d3).success).toEqual(false);
143
-
144
- const b = z.iso.time({ precision: 3 });
145
- expect(z.safeParse(b, d1).success).toEqual(false);
146
- expect(z.safeParse(b, d2).success).toEqual(true);
147
- expect(z.safeParse(b, d3).success).toEqual(false);
148
-
149
- const c = z.string().check(z.iso.time());
150
- expect(z.safeParse(c, d1).success).toEqual(true);
151
- expect(z.safeParse(c, d2).success).toEqual(true);
152
- expect(z.safeParse(c, d3).success).toEqual(false);
153
- });
154
-
155
- test("z.iso.duration", () => {
156
- const d1 = "P3Y6M4DT12H30M5S";
157
- const d2 = "bad data";
158
-
159
- const a = z.iso.duration();
160
- expect(z.safeParse(a, d1).success).toEqual(true);
161
- expect(z.safeParse(a, d2).success).toEqual(false);
162
-
163
- const b = z.string().check(z.iso.duration());
164
- expect(z.safeParse(b, d1).success).toEqual(true);
165
- expect(z.safeParse(b, d2).success).toEqual(false);
166
- });
167
-
168
- test("z.undefined", () => {
169
- const a = z.undefined();
170
- expect(z.parse(a, undefined)).toEqual(undefined);
171
- expect(() => z.parse(a, "undefined")).toThrow();
172
- });
173
-
174
- test("z.null", () => {
175
- const a = z.null();
176
- expect(z.parse(a, null)).toEqual(null);
177
- expect(() => z.parse(a, "null")).toThrow();
178
- });
179
-
180
- test("z.any", () => {
181
- const a = z.any();
182
- expect(z.parse(a, "hello")).toEqual("hello");
183
- expect(z.parse(a, 123)).toEqual(123);
184
- expect(z.parse(a, true)).toEqual(true);
185
- expect(z.parse(a, null)).toEqual(null);
186
- expect(z.parse(a, undefined)).toEqual(undefined);
187
- z.parse(a, {});
188
- z.parse(a, []);
189
- z.parse(a, Symbol());
190
- z.parse(a, new Date());
191
- });
192
-
193
- test("z.unknown", () => {
194
- const a = z.unknown();
195
- expect(z.parse(a, "hello")).toEqual("hello");
196
- expect(z.parse(a, 123)).toEqual(123);
197
- expect(z.parse(a, true)).toEqual(true);
198
- expect(z.parse(a, null)).toEqual(null);
199
- expect(z.parse(a, undefined)).toEqual(undefined);
200
- z.parse(a, {});
201
- z.parse(a, []);
202
- z.parse(a, Symbol());
203
- z.parse(a, new Date());
204
- });
205
-
206
- test("z.never", () => {
207
- const a = z.never();
208
- expect(() => z.parse(a, "hello")).toThrow();
209
- });
210
-
211
- test("z.void", () => {
212
- const a = z.void();
213
- expect(z.parse(a, undefined)).toEqual(undefined);
214
- expect(() => z.parse(a, null)).toThrow();
215
- });
216
-
217
- test("z.array", () => {
218
- const a = z.array(z.string());
219
- expect(z.parse(a, ["hello", "world"])).toEqual(["hello", "world"]);
220
- expect(() => z.parse(a, [123])).toThrow();
221
- expect(() => z.parse(a, "hello")).toThrow();
222
- });
223
-
224
- test("z.union", () => {
225
- const a = z.union([z.string(), z.number()]);
226
- expect(z.parse(a, "hello")).toEqual("hello");
227
- expect(z.parse(a, 123)).toEqual(123);
228
- expect(() => z.parse(a, true)).toThrow();
229
- });
230
-
231
- test("z.intersection", () => {
232
- const a = z.intersection(z.object({ a: z.string() }), z.object({ b: z.number() }));
233
- expect(z.parse(a, { a: "hello", b: 123 })).toEqual({ a: "hello", b: 123 });
234
- expect(() => z.parse(a, { a: "hello" })).toThrow();
235
- expect(() => z.parse(a, { b: 123 })).toThrow();
236
- expect(() => z.parse(a, "hello")).toThrow();
237
- });
238
-
239
- test("z.tuple", () => {
240
- const a = z.tuple([z.string(), z.number()]);
241
- expect(z.parse(a, ["hello", 123])).toEqual(["hello", 123]);
242
- expect(() => z.parse(a, ["hello", "world"])).toThrow();
243
- expect(() => z.parse(a, [123, 456])).toThrow();
244
- expect(() => z.parse(a, "hello")).toThrow();
245
-
246
- // tuple with rest
247
- const b = z.tuple([z.string(), z.number(), z.optional(z.string())], z.boolean());
248
- type b = z.output<typeof b>;
249
-
250
- expectTypeOf<b>().toEqualTypeOf<[string, number, string?, ...boolean[]]>();
251
- const datas = [
252
- ["hello", 123],
253
- ["hello", 123, "world"],
254
- ["hello", 123, "world", true],
255
- ["hello", 123, "world", true, false, true],
256
- ];
257
- for (const data of datas) {
258
- expect(z.parse(b, data)).toEqual(data);
259
- }
260
-
261
- expect(() => z.parse(b, ["hello", 123, 123])).toThrow();
262
- expect(() => z.parse(b, ["hello", 123, "world", 123])).toThrow();
263
-
264
- // tuple with readonly args
265
- const cArgs = [z.string(), z.number(), z.optional(z.string())] as const;
266
- const c = z.tuple(cArgs, z.boolean());
267
- type c = z.output<typeof c>;
268
- expectTypeOf<c>().toEqualTypeOf<[string, number, string?, ...boolean[]]>();
269
- });
270
-
271
- test("z.record", () => {
272
- // record schema with enum keys
273
- const a = z.record(z.string(), z.string());
274
- type a = z.output<typeof a>;
275
- expectTypeOf<a>().toEqualTypeOf<Record<string, string>>();
276
-
277
- const b = z.record(z.union([z.string(), z.number(), z.symbol()]), z.string());
278
- type b = z.output<typeof b>;
279
- expectTypeOf<b>().toEqualTypeOf<Record<string | number | symbol, string>>();
280
- expect(z.parse(b, { a: "hello", 1: "world", [Symbol.for("asdf")]: "symbol" })).toEqual({
281
- a: "hello",
282
- 1: "world",
283
- [Symbol.for("asdf")]: "symbol",
284
- });
285
-
286
- // enum keys
287
- const c = z.record(z.enum(["a", "b", "c"]), z.string());
288
- type c = z.output<typeof c>;
289
- expectTypeOf<c>().toEqualTypeOf<Record<"a" | "b" | "c", string>>();
290
- expect(z.parse(c, { a: "hello", b: "world", c: "world" })).toEqual({
291
- a: "hello",
292
- b: "world",
293
- c: "world",
294
- });
295
- // missing keys
296
- expect(() => z.parse(c, { a: "hello", b: "world" })).toThrow();
297
- // extra keys
298
- expect(() => z.parse(c, { a: "hello", b: "world", c: "world", d: "world" })).toThrow();
299
-
300
- // literal union keys
301
- const d = z.record(z.union([z.literal("a"), z.literal(0)]), z.string());
302
- type d = z.output<typeof d>;
303
- expectTypeOf<d>().toEqualTypeOf<Record<"a" | 0, string>>();
304
- expect(z.parse(d, { a: "hello", 0: "world" })).toEqual({
305
- a: "hello",
306
- 0: "world",
307
- });
308
-
309
- // TypeScript enum keys
310
- enum Enum {
311
- A = 0,
312
- B = "hi",
313
- }
314
-
315
- const e = z.record(z.enum(Enum), z.string());
316
- type e = z.output<typeof e>;
317
- expectTypeOf<e>().toEqualTypeOf<Record<Enum, string>>();
318
- expect(z.parse(e, { [Enum.A]: "hello", [Enum.B]: "world" })).toEqual({
319
- [Enum.A]: "hello",
320
- [Enum.B]: "world",
321
- });
322
- });
323
-
324
- test("z.map", () => {
325
- const a = z.map(z.string(), z.number());
326
- type a = z.output<typeof a>;
327
- expectTypeOf<a>().toEqualTypeOf<Map<string, number>>();
328
- expect(z.parse(a, new Map([["hello", 123]]))).toEqual(new Map([["hello", 123]]));
329
- expect(() => z.parse(a, new Map([["hello", "world"]]))).toThrow();
330
- expect(() => z.parse(a, new Map([[1243, "world"]]))).toThrow();
331
- expect(() => z.parse(a, "hello")).toThrow();
332
-
333
- const r1 = z.safeParse(a, new Map([[123, 123]]));
334
- expect(r1.error?.issues[0].code).toEqual("invalid_type");
335
- expect(r1.error?.issues[0].path).toEqual([123]);
336
-
337
- const r2: any = z.safeParse(a, new Map([[BigInt(123), 123]]));
338
- expect(r2.error!.issues[0].code).toEqual("invalid_key");
339
- expect(r2.error!.issues[0].path).toEqual([]);
340
-
341
- const r3: any = z.safeParse(a, new Map([["hello", "world"]]));
342
- expect(r3.error!.issues[0].code).toEqual("invalid_type");
343
- expect(r3.error!.issues[0].path).toEqual(["hello"]);
344
- });
345
-
346
- test("z.map invalid_element", () => {
347
- const a = z.map(z.bigint(), z.number());
348
- const r1 = z.safeParse(a, new Map([[BigInt(123), BigInt(123)]]));
349
-
350
- expect(r1.error!.issues[0].code).toEqual("invalid_element");
351
- expect(r1.error!.issues[0].path).toEqual([]);
352
- });
353
-
354
- test("z.map async", async () => {
355
- const a = z.map(z.string().check(z.refine(async () => true)), z.number().check(z.refine(async () => true)));
356
- const d1 = new Map([["hello", 123]]);
357
- expect(await z.parseAsync(a, d1)).toEqual(d1);
358
-
359
- await expect(z.parseAsync(a, new Map([[123, 123]]))).rejects.toThrow();
360
- await expect(z.parseAsync(a, new Map([["hi", "world"]]))).rejects.toThrow();
361
- await expect(z.parseAsync(a, new Map([[1243, "world"]]))).rejects.toThrow();
362
- await expect(z.parseAsync(a, "hello")).rejects.toThrow();
363
-
364
- const r = await z.safeParseAsync(a, new Map([[123, 123]]));
365
- expect(r.success).toEqual(false);
366
- expect(r.error!.issues[0].code).toEqual("invalid_type");
367
- expect(r.error!.issues[0].path).toEqual([123]);
368
- });
369
-
370
- test("z.set", () => {
371
- const a = z.set(z.string());
372
- type a = z.output<typeof a>;
373
- expectTypeOf<a>().toEqualTypeOf<Set<string>>();
374
- expect(z.parse(a, new Set(["hello", "world"]))).toEqual(new Set(["hello", "world"]));
375
- expect(() => z.parse(a, new Set([123]))).toThrow();
376
- expect(() => z.parse(a, ["hello", "world"])).toThrow();
377
- expect(() => z.parse(a, "hello")).toThrow();
378
-
379
- const b = z.set(z.number());
380
- expect(z.parse(b, new Set([1, 2, 3]))).toEqual(new Set([1, 2, 3]));
381
- expect(() => z.parse(b, new Set(["hello"]))).toThrow();
382
- expect(() => z.parse(b, [1, 2, 3])).toThrow();
383
- expect(() => z.parse(b, 123)).toThrow();
384
- });
385
-
386
- test("z.enum", () => {
387
- const a = z.enum(["A", "B", "C"]);
388
- type a = z.output<typeof a>;
389
- expectTypeOf<a>().toEqualTypeOf<"A" | "B" | "C">();
390
- expect(z.parse(a, "A")).toEqual("A");
391
- expect(z.parse(a, "B")).toEqual("B");
392
- expect(z.parse(a, "C")).toEqual("C");
393
- expect(() => z.parse(a, "D")).toThrow();
394
- expect(() => z.parse(a, 123)).toThrow();
395
-
396
- // expect(a.enum.A).toEqual("A");
397
- // expect(a.enum.B).toEqual("B");
398
- // expect(a.enum.C).toEqual("C");
399
- // expect((a.enum as any).D).toEqual(undefined);
400
- });
401
-
402
- test("z.enum - native", () => {
403
- enum NativeEnum {
404
- A = "A",
405
- B = "B",
406
- C = "C",
407
- }
408
- const a = z.enum(NativeEnum);
409
- type a = z.output<typeof a>;
410
- expectTypeOf<a>().toEqualTypeOf<NativeEnum>();
411
- expect(z.parse(a, NativeEnum.A)).toEqual(NativeEnum.A);
412
- expect(z.parse(a, NativeEnum.B)).toEqual(NativeEnum.B);
413
- expect(z.parse(a, NativeEnum.C)).toEqual(NativeEnum.C);
414
- expect(() => z.parse(a, "D")).toThrow();
415
- expect(() => z.parse(a, 123)).toThrow();
416
-
417
- // test a.enum
418
- a;
419
- // expect(a.enum.A).toEqual(NativeEnum.A);
420
- // expect(a.enum.B).toEqual(NativeEnum.B);
421
- // expect(a.enum.C).toEqual(NativeEnum.C);
422
- });
423
-
424
- test("z.nativeEnum", () => {
425
- enum NativeEnum {
426
- A = "A",
427
- B = "B",
428
- C = "C",
429
- }
430
- const a = z.nativeEnum(NativeEnum);
431
- type a = z.output<typeof a>;
432
- expectTypeOf<a>().toEqualTypeOf<NativeEnum>();
433
- expect(z.parse(a, NativeEnum.A)).toEqual(NativeEnum.A);
434
- expect(z.parse(a, NativeEnum.B)).toEqual(NativeEnum.B);
435
- expect(z.parse(a, NativeEnum.C)).toEqual(NativeEnum.C);
436
- expect(() => z.parse(a, "D")).toThrow();
437
- expect(() => z.parse(a, 123)).toThrow();
438
-
439
- // test a.enum
440
- a;
441
- // expect(a.enum.A).toEqual(NativeEnum.A);
442
- // expect(a.enum.B).toEqual(NativeEnum.B);
443
- // expect(a.enum.C).toEqual(NativeEnum.C);
444
- });
445
-
446
- test("z.literal", () => {
447
- const a = z.literal("hello");
448
- type a = z.output<typeof a>;
449
- expectTypeOf<a>().toEqualTypeOf<"hello">();
450
- expect(z.parse(a, "hello")).toEqual("hello");
451
- expect(() => z.parse(a, "world")).toThrow();
452
- expect(() => z.parse(a, 123)).toThrow();
453
-
454
- z.literal(["adf"] as const);
455
- });
456
-
457
- test("z.file", () => {
458
- const a = z.file();
459
- const file = new File(["content"], "filename.txt", { type: "text/plain" });
460
- expect(z.parse(a, file)).toEqual(file);
461
- expect(() => z.parse(a, "file")).toThrow();
462
- expect(() => z.parse(a, 123)).toThrow();
463
- });
464
-
465
- test("z.transform", () => {
466
- const a = z.pipe(
467
- z.string(),
468
- z.transform((val) => val.toUpperCase())
469
- );
470
- type a = z.output<typeof a>;
471
- expectTypeOf<a>().toEqualTypeOf<string>();
472
- expect(z.parse(a, "hello")).toEqual("HELLO");
473
- expect(() => z.parse(a, 123)).toThrow();
474
- });
475
-
476
- test("z.transform async", async () => {
477
- const a = z.pipe(
478
- z.string(),
479
- z.transform(async (val) => val.toUpperCase())
480
- );
481
- type a = z.output<typeof a>;
482
- expectTypeOf<a>().toEqualTypeOf<string>();
483
- expect(await z.parseAsync(a, "hello")).toEqual("HELLO");
484
- await expect(() => z.parseAsync(a, 123)).rejects.toThrow();
485
- });
486
-
487
- test("z.preprocess", () => {
488
- const a = z.pipe(
489
- z.transform((val) => String(val).toUpperCase()),
490
- z.string()
491
- );
492
- type a = z.output<typeof a>;
493
- expectTypeOf<a>().toEqualTypeOf<string>();
494
- expect(z.parse(a, 123)).toEqual("123");
495
- expect(z.parse(a, true)).toEqual("TRUE");
496
- expect(z.parse(a, BigInt(1234))).toEqual("1234");
497
- // expect(() => z.parse(a, Symbol("asdf"))).toThrow();
498
- });
499
-
500
- // test("z.preprocess async", () => {
501
- // const a = z.preprocess(async (val) => String(val), z.string());
502
- // type a = z.output<typeof a>;
503
- // expectTypeOf<a>().toEqualTypeOf<string>();
504
- // expect(z.parse(a, 123)).toEqual("123");
505
- // expect(z.parse(a, true)).toEqual("true");
506
- // expect(() => z.parse(a, {})).toThrow();
507
- // });
508
-
509
- test("z.optional", () => {
510
- const a = z.optional(z.string());
511
- type a = z.output<typeof a>;
512
- expectTypeOf<a>().toEqualTypeOf<string | undefined>();
513
- expect(z.parse(a, "hello")).toEqual("hello");
514
- expect(z.parse(a, undefined)).toEqual(undefined);
515
- expect(() => z.parse(a, 123)).toThrow();
516
- });
517
-
518
- test("z.nullable", () => {
519
- const a = z.nullable(z.string());
520
- type a = z.output<typeof a>;
521
- expectTypeOf<a>().toEqualTypeOf<string | null>();
522
- expect(z.parse(a, "hello")).toEqual("hello");
523
- expect(z.parse(a, null)).toEqual(null);
524
- expect(() => z.parse(a, 123)).toThrow();
525
- });
526
-
527
- test("z.default", () => {
528
- const a = z._default(z.string(), "default");
529
- type a = z.output<typeof a>;
530
- expectTypeOf<a>().toEqualTypeOf<string>();
531
- expect(z.parse(a, undefined)).toEqual("default");
532
- expect(z.parse(a, "hello")).toEqual("hello");
533
- expect(() => z.parse(a, 123)).toThrow();
534
-
535
- const b = z._default(z.string(), () => "default");
536
- expect(z.parse(b, undefined)).toEqual("default");
537
- expect(z.parse(b, "hello")).toEqual("hello");
538
- expect(() => z.parse(b, 123)).toThrow();
539
- });
540
-
541
- test("z.catch", () => {
542
- const a = z.catch(z.string(), "default");
543
- type a = z.output<typeof a>;
544
- expectTypeOf<a>().toEqualTypeOf<string>();
545
- expect(z.parse(a, "hello")).toEqual("hello");
546
- expect(z.parse(a, 123)).toEqual("default");
547
-
548
- const b = z.catch(z.string(), () => "default");
549
- expect(z.parse(b, "hello")).toEqual("hello");
550
- expect(z.parse(b, 123)).toEqual("default");
551
-
552
- const c = z.catch(z.string(), (ctx) => {
553
- return `${ctx.error.issues.length}issues`;
554
- });
555
- expect(z.parse(c, 1234)).toEqual("1issues");
556
- });
557
-
558
- test("z.nan", () => {
559
- const a = z.nan();
560
- type a = z.output<typeof a>;
561
- expectTypeOf<a>().toEqualTypeOf<number>();
562
- expect(z.parse(a, Number.NaN)).toEqual(Number.NaN);
563
- expect(() => z.parse(a, 123)).toThrow();
564
- expect(() => z.parse(a, "NaN")).toThrow();
565
- });
566
-
567
- test("z.pipe", () => {
568
- const a = z.pipe(
569
- z.pipe(
570
- z.string(),
571
- z.transform((val) => val.length)
572
- ),
573
- z.number()
574
- );
575
- type a_in = z.input<typeof a>;
576
- expectTypeOf<a_in>().toEqualTypeOf<string>();
577
- type a_out = z.output<typeof a>;
578
- expectTypeOf<a_out>().toEqualTypeOf<number>();
579
-
580
- expect(z.parse(a, "123")).toEqual(3);
581
- expect(z.parse(a, "hello")).toEqual(5);
582
- expect(() => z.parse(a, 123)).toThrow();
583
- });
584
-
585
- test("z.readonly", () => {
586
- const a = z.readonly(z.string());
587
- type a = z.output<typeof a>;
588
- expectTypeOf<a>().toEqualTypeOf<Readonly<string>>();
589
- expect(z.parse(a, "hello")).toEqual("hello");
590
- expect(() => z.parse(a, 123)).toThrow();
591
- });
592
-
593
- test("z.templateLiteral", () => {
594
- const a = z.templateLiteral([z.string(), z.number()]);
595
- type a = z.output<typeof a>;
596
- expectTypeOf<a>().toEqualTypeOf<`${string}${number}`>();
597
- expect(z.parse(a, "hello123")).toEqual("hello123");
598
- expect(() => z.parse(a, "hello")).toThrow();
599
- expect(() => z.parse(a, 123)).toThrow();
600
-
601
- // multipart
602
- const b = z.templateLiteral([z.string(), z.number(), z.string()]);
603
- type b = z.output<typeof b>;
604
- expectTypeOf<b>().toEqualTypeOf<`${string}${number}${string}`>();
605
- expect(z.parse(b, "hello123world")).toEqual("hello123world");
606
- expect(z.parse(b, "123")).toEqual("123");
607
- expect(() => z.parse(b, "hello")).toThrow();
608
- expect(() => z.parse(b, 123)).toThrow();
609
-
610
- // include boolean
611
- const c = z.templateLiteral([z.string(), z.boolean()]);
612
- type c = z.output<typeof c>;
613
- expectTypeOf<c>().toEqualTypeOf<`${string}${boolean}`>();
614
- expect(z.parse(c, "hellotrue")).toEqual("hellotrue");
615
- expect(z.parse(c, "hellofalse")).toEqual("hellofalse");
616
- expect(() => z.parse(c, "hello")).toThrow();
617
- expect(() => z.parse(c, 123)).toThrow();
618
-
619
- // include literal prefix
620
- const d = z.templateLiteral([z.literal("hello"), z.number()]);
621
- type d = z.output<typeof d>;
622
- expectTypeOf<d>().toEqualTypeOf<`hello${number}`>();
623
- expect(z.parse(d, "hello123")).toEqual("hello123");
624
- expect(() => z.parse(d, 123)).toThrow();
625
- expect(() => z.parse(d, "world123")).toThrow();
626
-
627
- // include literal union
628
- const e = z.templateLiteral([z.literal(["aa", "bb"]), z.number()]);
629
- type e = z.output<typeof e>;
630
- expectTypeOf<e>().toEqualTypeOf<`aa${number}` | `bb${number}`>();
631
- expect(z.parse(e, "aa123")).toEqual("aa123");
632
- expect(z.parse(e, "bb123")).toEqual("bb123");
633
- expect(() => z.parse(e, "cc123")).toThrow();
634
- expect(() => z.parse(e, 123)).toThrow();
635
- });
636
-
637
- // this returns both a schema and a check
638
- test("z.custom", () => {
639
- const a = z.custom((val) => {
640
- return typeof val === "string";
641
- });
642
- expect(z.parse(a, "hello")).toEqual("hello");
643
- expect(() => z.parse(a, 123)).toThrow();
644
-
645
- const b = z.string().check(z.custom((val) => val.length > 3));
646
-
647
- expect(z.parse(b, "hello")).toEqual("hello");
648
- expect(() => z.parse(b, "hi")).toThrow();
649
- });
650
-
651
- test("z.check", () => {
652
- // this is a more flexible version of z.custom that accepts an arbitrary _parse logic
653
- // the function should return core.$ZodResult
654
- const a = z.any().check(
655
- z.check<string>((ctx) => {
656
- if (typeof ctx.value === "string") return;
657
- ctx.issues.push({
658
- code: "custom",
659
- origin: "custom",
660
- message: "Expected a string",
661
- input: ctx.value,
662
- });
663
- })
664
- );
665
- expect(z.safeParse(a, "hello")).toMatchObject({
666
- success: true,
667
- data: "hello",
668
- });
669
- expect(z.safeParse(a, 123)).toMatchObject({
670
- success: false,
671
- error: { issues: [{ code: "custom", message: "Expected a string" }] },
672
- });
673
- });
674
-
675
- test("z.with (alias for z.check)", () => {
676
- // .with() should work exactly the same as .check()
677
- const a = z.any().with(
678
- z.check<string>((ctx) => {
679
- if (typeof ctx.value === "string") return;
680
- ctx.issues.push({
681
- code: "custom",
682
- origin: "custom",
683
- message: "Expected a string",
684
- input: ctx.value,
685
- });
686
- })
687
- );
688
- expect(z.safeParse(a, "hello")).toMatchObject({
689
- success: true,
690
- data: "hello",
691
- });
692
- expect(z.safeParse(a, 123)).toMatchObject({
693
- success: false,
694
- error: { issues: [{ code: "custom", message: "Expected a string" }] },
695
- });
696
-
697
- // Test with refine
698
- const b = z.string().with(z.refine((val) => val.length > 3, "Must be longer than 3"));
699
- expect(z.safeParse(b, "hello").success).toBe(true);
700
- expect(z.safeParse(b, "hi").success).toBe(false);
701
-
702
- // Test with function
703
- const c = z.string().with(({ value, issues }) => {
704
- if (value.length <= 3) {
705
- issues.push({
706
- code: "custom",
707
- input: value,
708
- message: "Must be longer than 3",
709
- });
710
- }
711
- });
712
- expect(z.safeParse(c, "hello").success).toBe(true);
713
- expect(z.safeParse(c, "hi").success).toBe(false);
714
- });
715
-
716
- test("z.instanceof", () => {
717
- class A {}
718
-
719
- const a = z.instanceof(A);
720
- expect(z.parse(a, new A())).toBeInstanceOf(A);
721
- expect(() => z.parse(a, {})).toThrow();
722
- });
723
-
724
- test("z.refine", () => {
725
- const a = z.number().check(
726
- z.refine((val) => val > 3),
727
- z.refine((val) => val < 10)
728
- );
729
- expect(z.parse(a, 5)).toEqual(5);
730
- expect(() => z.parse(a, 2)).toThrow();
731
- expect(() => z.parse(a, 11)).toThrow();
732
- expect(() => z.parse(a, "hi")).toThrow();
733
- });
734
-
735
- // test("z.superRefine", () => {
736
- // const a = z.number([
737
- // z.superRefine((val, ctx) => {
738
- // if (val < 3) {
739
- // return ctx.addIssue({
740
- // code: "custom",
741
- // origin: "custom",
742
- // message: "Too small",
743
- // input: val,
744
- // });
745
- // }
746
- // if (val > 10) {
747
- // return ctx.addIssue("Too big");
748
- // }
749
- // }),
750
- // ]);
751
-
752
- // expect(z.parse(a, 5)).toEqual(5);
753
- // expect(() => z.parse(a, 2)).toThrow();
754
- // expect(() => z.parse(a, 11)).toThrow();
755
- // expect(() => z.parse(a, "hi")).toThrow();
756
- // });
757
-
758
- test("z.transform", () => {
759
- const a = z.transform((val: number) => {
760
- return `${val}`;
761
- });
762
- type a_in = z.input<typeof a>;
763
- expectTypeOf<a_in>().toEqualTypeOf<number>();
764
- type a_out = z.output<typeof a>;
765
- expectTypeOf<a_out>().toEqualTypeOf<string>();
766
- expect(z.parse(a, 123)).toEqual("123");
767
- });
768
-
769
- test("z.$brand()", () => {
770
- const a = z.string().brand<"my-brand">();
771
- type a = z.output<typeof a>;
772
- const branded = (_: a) => {};
773
- // @ts-expect-error
774
- branded("asdf");
775
- });
776
-
777
- test("z.lazy", () => {
778
- const a = z.lazy(() => z.string());
779
- type a = z.output<typeof a>;
780
- expectTypeOf<a>().toEqualTypeOf<string>();
781
- expect(z.parse(a, "hello")).toEqual("hello");
782
- expect(() => z.parse(a, 123)).toThrow();
783
- });
784
-
785
- // schema that validates JSON-like data
786
- test("z.json", () => {
787
- const a = z.json();
788
- type a = z.output<typeof a>;
789
- a._zod.output;
790
-
791
- expectTypeOf<a>().toEqualTypeOf<util.JSONType>();
792
-
793
- expect(z.parse(a, "hello")).toEqual("hello");
794
- expect(z.parse(a, 123)).toEqual(123);
795
- expect(z.parse(a, true)).toEqual(true);
796
- expect(z.parse(a, null)).toEqual(null);
797
- expect(z.parse(a, {})).toEqual({});
798
- expect(z.parse(a, { a: "hello" })).toEqual({ a: "hello" });
799
- expect(z.parse(a, [1, 2, 3])).toEqual([1, 2, 3]);
800
- expect(z.parse(a, [{ a: "hello" }])).toEqual([{ a: "hello" }]);
801
-
802
- // fail cases
803
- expect(() => z.parse(a, new Date())).toThrow();
804
- expect(() => z.parse(a, Symbol())).toThrow();
805
- expect(() => z.parse(a, { a: new Date() })).toThrow();
806
- expect(() => z.parse(a, undefined)).toThrow();
807
- expect(() => z.parse(a, { a: undefined })).toThrow();
808
- });
809
-
810
- test("z.stringbool", () => {
811
- const a = z.stringbool();
812
-
813
- expect(z.parse(a, "true")).toEqual(true);
814
- expect(z.parse(a, "yes")).toEqual(true);
815
- expect(z.parse(a, "1")).toEqual(true);
816
- expect(z.parse(a, "on")).toEqual(true);
817
- expect(z.parse(a, "y")).toEqual(true);
818
- expect(z.parse(a, "enabled")).toEqual(true);
819
- expect(z.parse(a, "TRUE")).toEqual(true);
820
-
821
- expect(z.parse(a, "false")).toEqual(false);
822
- expect(z.parse(a, "no")).toEqual(false);
823
- expect(z.parse(a, "0")).toEqual(false);
824
- expect(z.parse(a, "off")).toEqual(false);
825
- expect(z.parse(a, "n")).toEqual(false);
826
- expect(z.parse(a, "disabled")).toEqual(false);
827
- expect(z.parse(a, "FALSE")).toEqual(false);
828
-
829
- expect(z.safeParse(a, "other")).toMatchObject({ success: false });
830
- expect(z.safeParse(a, "")).toMatchObject({ success: false });
831
- expect(z.safeParse(a, undefined)).toMatchObject({ success: false });
832
- expect(z.safeParse(a, {})).toMatchObject({ success: false });
833
- expect(z.safeParse(a, true)).toMatchObject({ success: false });
834
- expect(z.safeParse(a, false)).toMatchObject({ success: false });
835
-
836
- const b = z.stringbool({
837
- truthy: ["y"],
838
- falsy: ["n"],
839
- });
840
- expect(z.parse(b, "y")).toEqual(true);
841
- expect(z.parse(b, "n")).toEqual(false);
842
- expect(z.safeParse(b, "true")).toMatchObject({ success: false });
843
- expect(z.safeParse(b, "false")).toMatchObject({ success: false });
844
-
845
- const c = z.stringbool({
846
- case: "sensitive",
847
- });
848
- expect(z.parse(c, "true")).toEqual(true);
849
- expect(z.safeParse(c, "TRUE")).toMatchObject({ success: false });
850
- });
851
-
852
- // promise
853
- test("z.promise", async () => {
854
- const a = z.promise(z.string());
855
- type a = z.output<typeof a>;
856
- expectTypeOf<a>().toEqualTypeOf<Promise<string>>();
857
-
858
- expect(await z.safeParseAsync(a, Promise.resolve("hello"))).toMatchObject({
859
- success: true,
860
- data: "hello",
861
- });
862
- expect(await z.safeParseAsync(a, Promise.resolve(123))).toMatchObject({
863
- success: false,
864
- });
865
-
866
- const b = z.string();
867
- expect(() => z.parse(b, Promise.resolve("hello"))).toThrow();
868
- });
869
-
870
- // test("type assertions", () => {
871
- // const schema = z.pipe(
872
- // z.string(),
873
- // z.transform((val) => val.length)
874
- // );
875
- // schema.assertInput<string>();
876
- // // @ts-expect-error
877
- // schema.assertInput<number>();
878
-
879
- // schema.assertOutput<number>();
880
- // // @ts-expect-error
881
- // schema.assertOutput<string>();
882
- // });
883
-
884
- test("z.pipe type enforcement", () => {
885
- z.pipe(
886
- z.pipe(
887
- z.string().check(z.regex(/asdf/)),
888
- z.transform((v) => new Date(v))
889
- ),
890
- z.date().check(z.maximum(new Date()))
891
- );
892
- });
893
-
894
- test("def typing", () => {
895
- z.string().def.type satisfies "string";
896
- z.email().def.format satisfies "email";
897
- z.number().def.type satisfies "number";
898
- z.float64().def.format satisfies z.core.$ZodNumberFormats;
899
- z.bigint().def.type satisfies "bigint";
900
- z.boolean().def.type satisfies "boolean";
901
- z.date().def.type satisfies "date";
902
- z.symbol().def.type satisfies "symbol";
903
- z.undefined().def.type satisfies "undefined";
904
- z.nullable(z.string()).def.type satisfies "nullable";
905
- z.null().def.type satisfies "null";
906
- z.any().def.type satisfies "any";
907
- z.unknown().def.type satisfies "unknown";
908
- z.never().def.type satisfies "never";
909
- z.void().def.type satisfies "void";
910
- z.array(z.string()).def.type satisfies "array";
911
- z.object({ key: z.string() }).def.type satisfies "object";
912
- z.union([z.string(), z.number()]).def.type satisfies "union";
913
- z.intersection(z.string(), z.number()).def.type satisfies "intersection";
914
- z.tuple([z.string(), z.number()]).def.type satisfies "tuple";
915
- z.record(z.string(), z.number()).def.type satisfies "record";
916
- z.map(z.string(), z.number()).def.type satisfies "map";
917
- z.set(z.string()).def.type satisfies "set";
918
- z.literal("example").def.type satisfies "literal";
919
- expectTypeOf(z.literal("example").def.values).toEqualTypeOf<"example"[]>();
920
- z.enum(["a", "b", "c"]).def.type satisfies "enum";
921
- z.promise(z.string()).def.type satisfies "promise";
922
- z.lazy(() => z.string()).def.type satisfies "lazy";
923
- z.optional(z.string()).def.type satisfies "optional";
924
- z._default(z.string(), "default").def.type satisfies "default";
925
- z.templateLiteral([z.literal("a"), z.literal("b")]).def.type satisfies "template_literal";
926
- z.custom<string>((val) => typeof val === "string").def.type satisfies "custom";
927
- z.transform((val) => val as string).def.type satisfies "transform";
928
- z.nonoptional(z.string()).def.type satisfies "nonoptional";
929
- z.readonly(z.unknown()).def.type satisfies "readonly";
930
- z.nan().def.type satisfies "nan";
931
- z.pipe(z.unknown(), z.number()).def.type satisfies "pipe";
932
- z.success(z.string()).def.type satisfies "success";
933
- z.catch(z.string(), "fallback").def.type satisfies "catch";
934
- z.file().def.type satisfies "file";
935
- });
936
-
937
- test("defaulted object schema returns shallow clone", () => {
938
- const schema = z._default(
939
- z.object({
940
- a: z.string(),
941
- }),
942
- { a: "x" }
943
- );
944
- const result1 = schema.parse(undefined);
945
- const result2 = schema.parse(undefined);
946
- expect(result1).not.toBe(result2);
947
- expect(result1).toEqual(result2);
948
- });
949
-
950
- test("runtime type property exists and returns correct values", () => {
951
- const stringSchema = z.string();
952
- expect(stringSchema.type).toBe("string");
953
- });
954
-
955
- test("type narrowing works with type property", () => {
956
- type ArrayOrRecord = z.ZodMiniArray<z.ZodMiniString> | z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniAny>;
957
- const arraySchema = z.array(z.string()) as ArrayOrRecord;
958
-
959
- if (arraySchema.type === "array") {
960
- expectTypeOf(arraySchema).toEqualTypeOf<z.ZodMiniArray<z.ZodMiniString<unknown>>>();
961
- expect(arraySchema.def.element).toBeDefined();
962
- }
963
- });