@psnext/slingcli 3.3.20260911-1 → 3.3.20260914-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 (420) hide show
  1. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/{chunk-VDBOM5UG.js → chunk-BRL3MDQL.js} +1 -1
  2. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js +1 -1
  3. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/index.js +1 -1
  4. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/rpc-entry.js +1 -1
  5. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js +79 -32
  6. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.browser.js +2 -0
  7. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +25 -8
  8. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.native.js +2 -0
  9. package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.browser.js +2 -0
  10. package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.js +23 -8
  11. package/node_modules/@smithy/core/package.json +1 -1
  12. package/node_modules/@types/node/README.md +2 -2
  13. package/node_modules/@types/node/assert/strict.d.ts +13 -56
  14. package/node_modules/@types/node/assert.d.ts +189 -190
  15. package/node_modules/@types/node/async_hooks.d.ts +151 -43
  16. package/node_modules/@types/node/buffer.buffer.d.ts +12 -13
  17. package/node_modules/@types/node/buffer.d.ts +103 -237
  18. package/node_modules/@types/node/child_process.d.ts +39 -154
  19. package/node_modules/@types/node/cluster.d.ts +238 -384
  20. package/node_modules/@types/node/console.d.ts +45 -404
  21. package/node_modules/@types/node/constants.d.ts +3 -10
  22. package/node_modules/@types/node/crypto.d.ts +1000 -1593
  23. package/node_modules/@types/node/dgram.d.ts +133 -81
  24. package/node_modules/@types/node/diagnostics_channel.d.ts +277 -59
  25. package/node_modules/@types/node/dns/promises.d.ts +9 -15
  26. package/node_modules/@types/node/dns.d.ts +136 -183
  27. package/node_modules/@types/node/domain.d.ts +12 -32
  28. package/node_modules/@types/node/events.d.ts +872 -840
  29. package/node_modules/@types/node/ffi.d.ts +486 -0
  30. package/node_modules/@types/node/fs/promises.d.ts +256 -85
  31. package/node_modules/@types/node/fs.d.ts +865 -525
  32. package/node_modules/@types/node/globals.d.ts +12 -34
  33. package/node_modules/@types/node/globals.typedarray.d.ts +63 -0
  34. package/node_modules/@types/node/http.d.ts +433 -312
  35. package/node_modules/@types/node/http2.d.ts +545 -891
  36. package/node_modules/@types/node/https.d.ts +64 -243
  37. package/node_modules/@types/node/index.d.ts +25 -7
  38. package/node_modules/@types/node/inspector/promises.d.ts +35 -0
  39. package/node_modules/@types/node/inspector.d.ts +70 -58
  40. package/node_modules/@types/node/inspector.generated.d.ts +764 -410
  41. package/node_modules/@types/node/module.d.ts +54 -219
  42. package/node_modules/@types/node/net.d.ts +208 -222
  43. package/node_modules/@types/node/os.d.ts +41 -49
  44. package/node_modules/@types/node/package.json +13 -3
  45. package/node_modules/@types/node/path/posix.d.ts +8 -0
  46. package/node_modules/@types/node/path/win32.d.ts +8 -0
  47. package/node_modules/@types/node/path.d.ts +119 -141
  48. package/node_modules/@types/node/perf_hooks.d.ts +339 -690
  49. package/node_modules/@types/node/process.d.ts +389 -205
  50. package/node_modules/@types/node/punycode.d.ts +3 -31
  51. package/node_modules/@types/node/querystring.d.ts +3 -16
  52. package/node_modules/@types/node/quic.d.ts +2153 -0
  53. package/node_modules/@types/node/readline/promises.d.ts +3 -6
  54. package/node_modules/@types/node/readline.d.ts +66 -152
  55. package/node_modules/@types/node/repl.d.ts +101 -109
  56. package/node_modules/@types/node/sea.d.ts +1 -116
  57. package/node_modules/@types/node/sqlite.d.ts +486 -68
  58. package/node_modules/@types/node/stream/consumers.d.ts +91 -15
  59. package/node_modules/@types/node/stream/iter.d.ts +452 -0
  60. package/node_modules/@types/node/stream/promises.d.ts +136 -15
  61. package/node_modules/@types/node/stream/web.d.ts +197 -454
  62. package/node_modules/@types/node/stream.d.ts +603 -491
  63. package/node_modules/@types/node/string_decoder.d.ts +3 -43
  64. package/node_modules/@types/node/test/reporters.d.ts +59 -0
  65. package/node_modules/@types/node/test.d.ts +513 -292
  66. package/node_modules/@types/node/timers/promises.d.ts +3 -18
  67. package/node_modules/@types/node/timers.d.ts +3 -141
  68. package/node_modules/@types/node/tls.d.ts +166 -257
  69. package/node_modules/@types/node/trace_events.d.ts +3 -97
  70. package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +7 -8
  71. package/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  72. package/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +2 -0
  73. package/node_modules/@types/node/ts5.6/index.d.ts +26 -6
  74. package/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  75. package/node_modules/@types/node/ts5.7/index.d.ts +118 -0
  76. package/node_modules/@types/node/tty.d.ts +61 -43
  77. package/node_modules/@types/node/url.d.ts +156 -584
  78. package/node_modules/@types/node/util/types.d.ts +558 -0
  79. package/node_modules/@types/node/util.d.ts +170 -1099
  80. package/node_modules/@types/node/v8.d.ts +175 -36
  81. package/node_modules/@types/node/vfs.d.ts +211 -0
  82. package/node_modules/@types/node/vm.d.ts +292 -209
  83. package/node_modules/@types/node/wasi.d.ts +24 -74
  84. package/node_modules/@types/node/web-globals/abortcontroller.d.ts +27 -2
  85. package/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  86. package/node_modules/@types/node/web-globals/console.d.ts +9 -0
  87. package/node_modules/@types/node/web-globals/crypto.d.ts +39 -0
  88. package/node_modules/@types/node/web-globals/domexception.d.ts +15 -0
  89. package/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  90. package/node_modules/@types/node/web-globals/events.d.ts +9 -0
  91. package/node_modules/@types/node/web-globals/fetch.d.ts +14 -0
  92. package/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  93. package/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  94. package/node_modules/@types/node/web-globals/navigator.d.ts +3 -0
  95. package/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  96. package/node_modules/@types/node/web-globals/streams.d.ts +97 -0
  97. package/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  98. package/node_modules/@types/node/web-globals/url.d.ts +24 -0
  99. package/node_modules/@types/node/worker_threads.d.ts +257 -407
  100. package/node_modules/@types/node/zlib/iter.d.ts +131 -0
  101. package/node_modules/@types/node/zlib.d.ts +24 -165
  102. package/node_modules/undici-types/agent.d.ts +12 -13
  103. package/node_modules/undici-types/api.d.ts +26 -26
  104. package/node_modules/undici-types/balanced-pool.d.ts +13 -12
  105. package/node_modules/undici-types/cache-interceptor.d.ts +179 -0
  106. package/node_modules/undici-types/client-stats.d.ts +15 -0
  107. package/node_modules/undici-types/client.d.ts +63 -37
  108. package/node_modules/undici-types/connector.d.ts +5 -2
  109. package/node_modules/undici-types/cookies.d.ts +3 -1
  110. package/node_modules/undici-types/diagnostics-channel.d.ts +18 -10
  111. package/node_modules/undici-types/dispatcher.d.ts +136 -139
  112. package/node_modules/undici-types/dispatcher1-wrapper.d.ts +7 -0
  113. package/node_modules/undici-types/env-http-proxy-agent.d.ts +4 -3
  114. package/node_modules/undici-types/errors.d.ts +92 -54
  115. package/node_modules/undici-types/eventsource.d.ts +9 -4
  116. package/node_modules/undici-types/fetch.d.ts +51 -25
  117. package/node_modules/undici-types/formdata.d.ts +7 -7
  118. package/node_modules/undici-types/global-dispatcher.d.ts +4 -4
  119. package/node_modules/undici-types/global-origin.d.ts +5 -5
  120. package/node_modules/undici-types/h2c-client.d.ts +73 -0
  121. package/node_modules/undici-types/handlers.d.ts +10 -9
  122. package/node_modules/undici-types/header.d.ts +162 -1
  123. package/node_modules/undici-types/index.d.ts +69 -47
  124. package/node_modules/undici-types/interceptors.d.ts +72 -9
  125. package/node_modules/undici-types/mock-agent.d.ts +36 -18
  126. package/node_modules/undici-types/mock-call-history.d.ts +111 -0
  127. package/node_modules/undici-types/mock-client.d.ts +6 -4
  128. package/node_modules/undici-types/mock-errors.d.ts +3 -3
  129. package/node_modules/undici-types/mock-interceptor.d.ts +26 -21
  130. package/node_modules/undici-types/mock-pool.d.ts +6 -4
  131. package/node_modules/undici-types/package.json +1 -1
  132. package/node_modules/undici-types/patch.d.ts +0 -4
  133. package/node_modules/undici-types/pool-stats.d.ts +8 -8
  134. package/node_modules/undici-types/pool.d.ts +14 -14
  135. package/node_modules/undici-types/proxy-agent.d.ts +14 -6
  136. package/node_modules/undici-types/readable.d.ts +19 -16
  137. package/node_modules/undici-types/retry-agent.d.ts +1 -1
  138. package/node_modules/undici-types/retry-handler.d.ts +19 -10
  139. package/node_modules/undici-types/round-robin-pool.d.ts +39 -0
  140. package/node_modules/undici-types/snapshot-agent.d.ts +113 -0
  141. package/node_modules/undici-types/socks5-proxy-agent.d.ts +25 -0
  142. package/node_modules/undici-types/util.d.ts +3 -3
  143. package/node_modules/undici-types/utility.d.ts +7 -0
  144. package/node_modules/undici-types/webidl.d.ts +148 -30
  145. package/node_modules/undici-types/websocket.d.ts +48 -10
  146. package/node_modules/zod/README.md +2 -2
  147. package/node_modules/zod/package.json +1 -1
  148. package/node_modules/zod/src/v4/classic/checks.ts +1 -0
  149. package/node_modules/zod/src/v4/classic/schemas.ts +14 -30
  150. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +1 -0
  151. package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +2 -11
  152. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -4
  153. package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +22 -0
  154. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +1 -1
  155. package/node_modules/zod/src/v4/classic/tests/number.test.ts +39 -0
  156. package/node_modules/zod/src/v4/classic/tests/properties.test.ts +53 -137
  157. package/node_modules/zod/src/v4/classic/tests/string.test.ts +70 -1
  158. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +87 -35
  159. package/node_modules/zod/src/v4/core/api.ts +21 -29
  160. package/node_modules/zod/src/v4/core/checks.ts +61 -1
  161. package/node_modules/zod/src/v4/core/compile.ts +35 -24
  162. package/node_modules/zod/src/v4/core/core.ts +1 -3
  163. package/node_modules/zod/src/v4/core/json-schema-processors.ts +9 -63
  164. package/node_modules/zod/src/v4/core/memoizer.ts +2 -5
  165. package/node_modules/zod/src/v4/core/regexes.ts +4 -0
  166. package/node_modules/zod/src/v4/core/schemas.ts +36 -109
  167. package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +35 -0
  168. package/node_modules/zod/src/v4/core/tests/compile.test.ts +177 -0
  169. package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +118 -16
  170. package/node_modules/zod/src/v4/core/to-json-schema.ts +1 -1
  171. package/node_modules/zod/src/v4/core/util.ts +0 -4
  172. package/node_modules/zod/src/v4/core/versions.ts +1 -1
  173. package/node_modules/zod/src/v4/core/visit.ts +0 -11
  174. package/node_modules/zod/src/v4/locales/ar.ts +1 -0
  175. package/node_modules/zod/src/v4/locales/az.ts +1 -0
  176. package/node_modules/zod/src/v4/locales/be.ts +1 -0
  177. package/node_modules/zod/src/v4/locales/bg.ts +1 -0
  178. package/node_modules/zod/src/v4/locales/bn.ts +1 -0
  179. package/node_modules/zod/src/v4/locales/ca.ts +1 -0
  180. package/node_modules/zod/src/v4/locales/ckb.ts +1 -0
  181. package/node_modules/zod/src/v4/locales/cs.ts +1 -0
  182. package/node_modules/zod/src/v4/locales/da.ts +1 -0
  183. package/node_modules/zod/src/v4/locales/de.ts +1 -0
  184. package/node_modules/zod/src/v4/locales/el.ts +1 -0
  185. package/node_modules/zod/src/v4/locales/en.ts +1 -0
  186. package/node_modules/zod/src/v4/locales/eo.ts +1 -0
  187. package/node_modules/zod/src/v4/locales/es.ts +1 -0
  188. package/node_modules/zod/src/v4/locales/fa.ts +1 -0
  189. package/node_modules/zod/src/v4/locales/fi.ts +1 -0
  190. package/node_modules/zod/src/v4/locales/fr-CA.ts +1 -0
  191. package/node_modules/zod/src/v4/locales/fr.ts +1 -0
  192. package/node_modules/zod/src/v4/locales/gu.ts +1 -0
  193. package/node_modules/zod/src/v4/locales/he.ts +1 -0
  194. package/node_modules/zod/src/v4/locales/hi.ts +1 -0
  195. package/node_modules/zod/src/v4/locales/hr.ts +1 -0
  196. package/node_modules/zod/src/v4/locales/hu.ts +1 -0
  197. package/node_modules/zod/src/v4/locales/hy.ts +1 -0
  198. package/node_modules/zod/src/v4/locales/id.ts +1 -0
  199. package/node_modules/zod/src/v4/locales/is.ts +1 -0
  200. package/node_modules/zod/src/v4/locales/it.ts +1 -0
  201. package/node_modules/zod/src/v4/locales/ja.ts +1 -0
  202. package/node_modules/zod/src/v4/locales/ka.ts +1 -0
  203. package/node_modules/zod/src/v4/locales/km.ts +1 -0
  204. package/node_modules/zod/src/v4/locales/kn.ts +1 -0
  205. package/node_modules/zod/src/v4/locales/ko.ts +1 -0
  206. package/node_modules/zod/src/v4/locales/lt.ts +1 -0
  207. package/node_modules/zod/src/v4/locales/mk.ts +1 -0
  208. package/node_modules/zod/src/v4/locales/ms.ts +1 -0
  209. package/node_modules/zod/src/v4/locales/ne.ts +1 -0
  210. package/node_modules/zod/src/v4/locales/nl.ts +1 -0
  211. package/node_modules/zod/src/v4/locales/nn.ts +1 -0
  212. package/node_modules/zod/src/v4/locales/no.ts +1 -0
  213. package/node_modules/zod/src/v4/locales/ota.ts +1 -0
  214. package/node_modules/zod/src/v4/locales/pl.ts +1 -0
  215. package/node_modules/zod/src/v4/locales/ps.ts +1 -0
  216. package/node_modules/zod/src/v4/locales/pt-BR.ts +1 -0
  217. package/node_modules/zod/src/v4/locales/pt.ts +1 -0
  218. package/node_modules/zod/src/v4/locales/ro.ts +1 -0
  219. package/node_modules/zod/src/v4/locales/ru.ts +1 -0
  220. package/node_modules/zod/src/v4/locales/sk.ts +1 -0
  221. package/node_modules/zod/src/v4/locales/sl.ts +1 -0
  222. package/node_modules/zod/src/v4/locales/sv.ts +1 -0
  223. package/node_modules/zod/src/v4/locales/ta.ts +1 -0
  224. package/node_modules/zod/src/v4/locales/tg.ts +1 -0
  225. package/node_modules/zod/src/v4/locales/th.ts +1 -0
  226. package/node_modules/zod/src/v4/locales/tk.ts +1 -0
  227. package/node_modules/zod/src/v4/locales/tr.ts +1 -0
  228. package/node_modules/zod/src/v4/locales/uk.ts +1 -0
  229. package/node_modules/zod/src/v4/locales/ur.ts +1 -0
  230. package/node_modules/zod/src/v4/locales/uz.ts +1 -0
  231. package/node_modules/zod/src/v4/locales/vi.ts +1 -0
  232. package/node_modules/zod/src/v4/locales/yo.ts +1 -0
  233. package/node_modules/zod/src/v4/locales/zh-CN.ts +1 -0
  234. package/node_modules/zod/src/v4/locales/zh-TW.ts +1 -0
  235. package/node_modules/zod/src/v4/mini/checks.ts +1 -0
  236. package/node_modules/zod/src/v4/mini/schemas.ts +12 -23
  237. package/node_modules/zod/src/v4/mini/tests/index.test.ts +56 -0
  238. package/node_modules/zod/src/v4/mini/tests/string.test.ts +7 -0
  239. package/node_modules/zod/v4/classic/checks.cjs +2 -1
  240. package/node_modules/zod/v4/classic/checks.d.cts +1 -1
  241. package/node_modules/zod/v4/classic/checks.d.ts +1 -1
  242. package/node_modules/zod/v4/classic/checks.js +1 -1
  243. package/node_modules/zod/v4/classic/schemas.cjs +11 -15
  244. package/node_modules/zod/v4/classic/schemas.d.cts +4 -6
  245. package/node_modules/zod/v4/classic/schemas.d.ts +4 -6
  246. package/node_modules/zod/v4/classic/schemas.js +9 -13
  247. package/node_modules/zod/v4/core/api.cjs +11 -23
  248. package/node_modules/zod/v4/core/api.d.cts +8 -4
  249. package/node_modules/zod/v4/core/api.d.ts +8 -4
  250. package/node_modules/zod/v4/core/api.js +11 -23
  251. package/node_modules/zod/v4/core/checks.cjs +32 -1
  252. package/node_modules/zod/v4/core/checks.d.cts +16 -0
  253. package/node_modules/zod/v4/core/checks.d.ts +16 -0
  254. package/node_modules/zod/v4/core/checks.js +31 -0
  255. package/node_modules/zod/v4/core/compile.cjs +12 -17
  256. package/node_modules/zod/v4/core/compile.js +13 -18
  257. package/node_modules/zod/v4/core/core.cjs +1 -1
  258. package/node_modules/zod/v4/core/core.js +1 -1
  259. package/node_modules/zod/v4/core/json-schema-processors.cjs +8 -44
  260. package/node_modules/zod/v4/core/json-schema-processors.d.cts +0 -1
  261. package/node_modules/zod/v4/core/json-schema-processors.d.ts +0 -1
  262. package/node_modules/zod/v4/core/json-schema-processors.js +8 -43
  263. package/node_modules/zod/v4/core/memoizer.cjs +2 -5
  264. package/node_modules/zod/v4/core/memoizer.js +2 -5
  265. package/node_modules/zod/v4/core/regexes.cjs +4 -2
  266. package/node_modules/zod/v4/core/regexes.d.cts +1 -0
  267. package/node_modules/zod/v4/core/regexes.d.ts +1 -0
  268. package/node_modules/zod/v4/core/regexes.js +2 -0
  269. package/node_modules/zod/v4/core/schemas.cjs +33 -73
  270. package/node_modules/zod/v4/core/schemas.d.cts +7 -22
  271. package/node_modules/zod/v4/core/schemas.d.ts +7 -22
  272. package/node_modules/zod/v4/core/schemas.js +30 -72
  273. package/node_modules/zod/v4/core/to-json-schema.cjs +0 -1
  274. package/node_modules/zod/v4/core/to-json-schema.d.cts +0 -3
  275. package/node_modules/zod/v4/core/to-json-schema.d.ts +0 -3
  276. package/node_modules/zod/v4/core/to-json-schema.js +1 -1
  277. package/node_modules/zod/v4/core/util.cjs +0 -4
  278. package/node_modules/zod/v4/core/util.js +0 -4
  279. package/node_modules/zod/v4/core/versions.cjs +1 -1
  280. package/node_modules/zod/v4/core/versions.js +1 -1
  281. package/node_modules/zod/v4/core/visit.cjs +0 -12
  282. package/node_modules/zod/v4/core/visit.js +0 -12
  283. package/node_modules/zod/v4/locales/ar.cjs +1 -0
  284. package/node_modules/zod/v4/locales/ar.js +1 -0
  285. package/node_modules/zod/v4/locales/az.cjs +1 -0
  286. package/node_modules/zod/v4/locales/az.js +1 -0
  287. package/node_modules/zod/v4/locales/be.cjs +1 -0
  288. package/node_modules/zod/v4/locales/be.js +1 -0
  289. package/node_modules/zod/v4/locales/bg.cjs +1 -0
  290. package/node_modules/zod/v4/locales/bg.js +1 -0
  291. package/node_modules/zod/v4/locales/bn.cjs +1 -0
  292. package/node_modules/zod/v4/locales/bn.js +1 -0
  293. package/node_modules/zod/v4/locales/ca.cjs +1 -0
  294. package/node_modules/zod/v4/locales/ca.js +1 -0
  295. package/node_modules/zod/v4/locales/ckb.cjs +1 -0
  296. package/node_modules/zod/v4/locales/ckb.js +1 -0
  297. package/node_modules/zod/v4/locales/cs.cjs +1 -0
  298. package/node_modules/zod/v4/locales/cs.js +1 -0
  299. package/node_modules/zod/v4/locales/da.cjs +1 -0
  300. package/node_modules/zod/v4/locales/da.js +1 -0
  301. package/node_modules/zod/v4/locales/de.cjs +1 -0
  302. package/node_modules/zod/v4/locales/de.js +1 -0
  303. package/node_modules/zod/v4/locales/el.cjs +1 -0
  304. package/node_modules/zod/v4/locales/el.js +1 -0
  305. package/node_modules/zod/v4/locales/en.cjs +1 -0
  306. package/node_modules/zod/v4/locales/en.js +1 -0
  307. package/node_modules/zod/v4/locales/eo.cjs +1 -0
  308. package/node_modules/zod/v4/locales/eo.js +1 -0
  309. package/node_modules/zod/v4/locales/es.cjs +1 -0
  310. package/node_modules/zod/v4/locales/es.js +1 -0
  311. package/node_modules/zod/v4/locales/fa.cjs +1 -0
  312. package/node_modules/zod/v4/locales/fa.js +1 -0
  313. package/node_modules/zod/v4/locales/fi.cjs +1 -0
  314. package/node_modules/zod/v4/locales/fi.js +1 -0
  315. package/node_modules/zod/v4/locales/fr-CA.cjs +1 -0
  316. package/node_modules/zod/v4/locales/fr-CA.js +1 -0
  317. package/node_modules/zod/v4/locales/fr.cjs +1 -0
  318. package/node_modules/zod/v4/locales/fr.js +1 -0
  319. package/node_modules/zod/v4/locales/gu.cjs +1 -0
  320. package/node_modules/zod/v4/locales/gu.js +1 -0
  321. package/node_modules/zod/v4/locales/he.cjs +1 -0
  322. package/node_modules/zod/v4/locales/he.js +1 -0
  323. package/node_modules/zod/v4/locales/hi.cjs +1 -0
  324. package/node_modules/zod/v4/locales/hi.js +1 -0
  325. package/node_modules/zod/v4/locales/hr.cjs +1 -0
  326. package/node_modules/zod/v4/locales/hr.js +1 -0
  327. package/node_modules/zod/v4/locales/hu.cjs +1 -0
  328. package/node_modules/zod/v4/locales/hu.js +1 -0
  329. package/node_modules/zod/v4/locales/hy.cjs +1 -0
  330. package/node_modules/zod/v4/locales/hy.js +1 -0
  331. package/node_modules/zod/v4/locales/id.cjs +1 -0
  332. package/node_modules/zod/v4/locales/id.js +1 -0
  333. package/node_modules/zod/v4/locales/is.cjs +1 -0
  334. package/node_modules/zod/v4/locales/is.js +1 -0
  335. package/node_modules/zod/v4/locales/it.cjs +1 -0
  336. package/node_modules/zod/v4/locales/it.js +1 -0
  337. package/node_modules/zod/v4/locales/ja.cjs +1 -0
  338. package/node_modules/zod/v4/locales/ja.js +1 -0
  339. package/node_modules/zod/v4/locales/ka.cjs +1 -0
  340. package/node_modules/zod/v4/locales/ka.js +1 -0
  341. package/node_modules/zod/v4/locales/km.cjs +1 -0
  342. package/node_modules/zod/v4/locales/km.js +1 -0
  343. package/node_modules/zod/v4/locales/kn.cjs +1 -0
  344. package/node_modules/zod/v4/locales/kn.js +1 -0
  345. package/node_modules/zod/v4/locales/ko.cjs +1 -0
  346. package/node_modules/zod/v4/locales/ko.js +1 -0
  347. package/node_modules/zod/v4/locales/lt.cjs +1 -0
  348. package/node_modules/zod/v4/locales/lt.js +1 -0
  349. package/node_modules/zod/v4/locales/mk.cjs +1 -0
  350. package/node_modules/zod/v4/locales/mk.js +1 -0
  351. package/node_modules/zod/v4/locales/ms.cjs +1 -0
  352. package/node_modules/zod/v4/locales/ms.js +1 -0
  353. package/node_modules/zod/v4/locales/ne.cjs +1 -0
  354. package/node_modules/zod/v4/locales/ne.js +1 -0
  355. package/node_modules/zod/v4/locales/nl.cjs +1 -0
  356. package/node_modules/zod/v4/locales/nl.js +1 -0
  357. package/node_modules/zod/v4/locales/nn.cjs +1 -0
  358. package/node_modules/zod/v4/locales/nn.js +1 -0
  359. package/node_modules/zod/v4/locales/no.cjs +1 -0
  360. package/node_modules/zod/v4/locales/no.js +1 -0
  361. package/node_modules/zod/v4/locales/ota.cjs +1 -0
  362. package/node_modules/zod/v4/locales/ota.js +1 -0
  363. package/node_modules/zod/v4/locales/pl.cjs +1 -0
  364. package/node_modules/zod/v4/locales/pl.js +1 -0
  365. package/node_modules/zod/v4/locales/ps.cjs +1 -0
  366. package/node_modules/zod/v4/locales/ps.js +1 -0
  367. package/node_modules/zod/v4/locales/pt-BR.cjs +1 -0
  368. package/node_modules/zod/v4/locales/pt-BR.js +1 -0
  369. package/node_modules/zod/v4/locales/pt.cjs +1 -0
  370. package/node_modules/zod/v4/locales/pt.js +1 -0
  371. package/node_modules/zod/v4/locales/ro.cjs +1 -0
  372. package/node_modules/zod/v4/locales/ro.js +1 -0
  373. package/node_modules/zod/v4/locales/ru.cjs +1 -0
  374. package/node_modules/zod/v4/locales/ru.js +1 -0
  375. package/node_modules/zod/v4/locales/sk.cjs +1 -0
  376. package/node_modules/zod/v4/locales/sk.js +1 -0
  377. package/node_modules/zod/v4/locales/sl.cjs +1 -0
  378. package/node_modules/zod/v4/locales/sl.js +1 -0
  379. package/node_modules/zod/v4/locales/sv.cjs +1 -0
  380. package/node_modules/zod/v4/locales/sv.js +1 -0
  381. package/node_modules/zod/v4/locales/ta.cjs +1 -0
  382. package/node_modules/zod/v4/locales/ta.js +1 -0
  383. package/node_modules/zod/v4/locales/tg.cjs +1 -0
  384. package/node_modules/zod/v4/locales/tg.js +1 -0
  385. package/node_modules/zod/v4/locales/th.cjs +1 -0
  386. package/node_modules/zod/v4/locales/th.js +1 -0
  387. package/node_modules/zod/v4/locales/tk.cjs +1 -0
  388. package/node_modules/zod/v4/locales/tk.js +1 -0
  389. package/node_modules/zod/v4/locales/tr.cjs +1 -0
  390. package/node_modules/zod/v4/locales/tr.js +1 -0
  391. package/node_modules/zod/v4/locales/uk.cjs +1 -0
  392. package/node_modules/zod/v4/locales/uk.js +1 -0
  393. package/node_modules/zod/v4/locales/ur.cjs +1 -0
  394. package/node_modules/zod/v4/locales/ur.js +1 -0
  395. package/node_modules/zod/v4/locales/uz.cjs +1 -0
  396. package/node_modules/zod/v4/locales/uz.js +1 -0
  397. package/node_modules/zod/v4/locales/vi.cjs +1 -0
  398. package/node_modules/zod/v4/locales/vi.js +1 -0
  399. package/node_modules/zod/v4/locales/yo.cjs +1 -0
  400. package/node_modules/zod/v4/locales/yo.js +1 -0
  401. package/node_modules/zod/v4/locales/zh-CN.cjs +1 -0
  402. package/node_modules/zod/v4/locales/zh-CN.js +1 -0
  403. package/node_modules/zod/v4/locales/zh-TW.cjs +1 -0
  404. package/node_modules/zod/v4/locales/zh-TW.js +1 -0
  405. package/node_modules/zod/v4/mini/checks.cjs +2 -1
  406. package/node_modules/zod/v4/mini/checks.d.cts +1 -1
  407. package/node_modules/zod/v4/mini/checks.d.ts +1 -1
  408. package/node_modules/zod/v4/mini/checks.js +1 -1
  409. package/node_modules/zod/v4/mini/schemas.cjs +11 -13
  410. package/node_modules/zod/v4/mini/schemas.d.cts +1 -4
  411. package/node_modules/zod/v4/mini/schemas.d.ts +1 -4
  412. package/node_modules/zod/v4/mini/schemas.js +9 -11
  413. package/package.json +2 -2
  414. package/slingshot/index.js +183 -182
  415. package/node_modules/@types/node/compatibility/disposable.d.ts +0 -14
  416. package/node_modules/@types/node/compatibility/index.d.ts +0 -9
  417. package/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
  418. package/node_modules/@types/node/compatibility/iterators.d.ts +0 -20
  419. package/node_modules/undici-types/file.d.ts +0 -39
  420. package/node_modules/undici-types/filereader.d.ts +0 -54
@@ -1,4 +1,6 @@
1
1
  // These types are not exported, and are only used internally
2
+ import { BufferSource } from 'node:stream/web'
3
+ import * as undici from './index'
2
4
 
3
5
  /**
4
6
  * Take in an unknown value and return one that is of type T
@@ -9,15 +11,13 @@ type SequenceConverter<T> = (object: unknown, iterable?: IterableIterator<T>) =>
9
11
 
10
12
  type RecordConverter<K extends string, V> = (object: unknown) => Record<K, V>
11
13
 
12
- interface ConvertToIntOpts {
13
- clamp?: boolean
14
- enforceRange?: boolean
15
- }
16
-
17
14
  interface WebidlErrors {
15
+ /**
16
+ * @description Instantiate an error
17
+ */
18
18
  exception (opts: { header: string, message: string }): TypeError
19
19
  /**
20
- * @description Throw an error when conversion from one type to another has failed
20
+ * @description Instantiate an error when conversion from one type to another has failed
21
21
  */
22
22
  conversionFailed (opts: {
23
23
  prefix: string
@@ -34,11 +34,24 @@ interface WebidlErrors {
34
34
  }): TypeError
35
35
  }
36
36
 
37
+ interface WebIDLTypes {
38
+ UNDEFINED: 1,
39
+ BOOLEAN: 2,
40
+ STRING: 3,
41
+ SYMBOL: 4,
42
+ NUMBER: 5,
43
+ BIGINT: 6,
44
+ NULL: 7
45
+ OBJECT: 8
46
+ }
47
+
37
48
  interface WebidlUtil {
38
49
  /**
39
50
  * @see https://tc39.es/ecma262/#sec-ecmascript-data-types-and-values
40
51
  */
41
- Type (object: unknown):
52
+ Type (object: unknown): WebIDLTypes[keyof WebIDLTypes]
53
+
54
+ TypeValueToString (o: unknown):
42
55
  | 'Undefined'
43
56
  | 'Boolean'
44
57
  | 'String'
@@ -48,6 +61,8 @@ interface WebidlUtil {
48
61
  | 'Null'
49
62
  | 'Object'
50
63
 
64
+ Types: WebIDLTypes
65
+
51
66
  /**
52
67
  * @see https://webidl.spec.whatwg.org/#abstract-opdef-converttoint
53
68
  */
@@ -55,11 +70,11 @@ interface WebidlUtil {
55
70
  V: unknown,
56
71
  bitLength: number,
57
72
  signedness: 'signed' | 'unsigned',
58
- opts?: ConvertToIntOpts
73
+ flags?: number
59
74
  ): number
60
75
 
61
76
  /**
62
- * @see https://webidl.spec.whatwg.org/#abstract-opdef-converttoint
77
+ * @see https://webidl.spec.whatwg.org/#abstract-opdef-integerpart
63
78
  */
64
79
  IntegerPart (N: number): number
65
80
 
@@ -68,20 +83,28 @@ interface WebidlUtil {
68
83
  */
69
84
  Stringify (V: any): string
70
85
 
86
+ MakeTypeAssertion <I>(I: I): (arg: any) => arg is I
87
+
71
88
  /**
72
89
  * Mark a value as uncloneable for Node.js.
73
- * This is only effective in some newer Node.js versions.
74
90
  */
75
91
  markAsUncloneable (V: any): void
92
+
93
+ IsResizableArrayBuffer (V: ArrayBufferLike): boolean
94
+
95
+ HasFlag (flag: number, attributes: number): boolean
96
+
97
+ /**
98
+ * @see https://webidl.spec.whatwg.org/#dfn-get-buffer-source-copy
99
+ */
100
+ getCopyOfBytesHeldByBufferSource (bufferSource: BufferSource): Uint8Array
76
101
  }
77
102
 
78
103
  interface WebidlConverters {
79
104
  /**
80
105
  * @see https://webidl.spec.whatwg.org/#es-DOMString
81
106
  */
82
- DOMString (V: unknown, prefix: string, argument: string, opts?: {
83
- legacyNullToEmptyString: boolean
84
- }): string
107
+ DOMString (V: unknown, prefix: string, argument: string, flags?: number): string
85
108
 
86
109
  /**
87
110
  * @see https://webidl.spec.whatwg.org/#es-ByteString
@@ -121,59 +144,140 @@ interface WebidlConverters {
121
144
  /**
122
145
  * @see https://webidl.spec.whatwg.org/#es-unsigned-short
123
146
  */
124
- ['unsigned short'] (V: unknown, opts?: ConvertToIntOpts): number
147
+ ['unsigned short'] (V: unknown, flags?: number): number
125
148
 
126
149
  /**
127
150
  * @see https://webidl.spec.whatwg.org/#idl-ArrayBuffer
128
151
  */
129
- ArrayBuffer (V: unknown): ArrayBufferLike
130
- ArrayBuffer (V: unknown, opts: { allowShared: false }): ArrayBuffer
152
+ ArrayBuffer (
153
+ V: unknown,
154
+ prefix: string,
155
+ argument: string,
156
+ options?: { allowResizable: boolean }
157
+ ): ArrayBuffer
158
+
159
+ /**
160
+ * @see https://webidl.spec.whatwg.org/#idl-SharedArrayBuffer
161
+ */
162
+ SharedArrayBuffer (
163
+ V: unknown,
164
+ prefix: string,
165
+ argument: string,
166
+ options?: { allowResizable: boolean }
167
+ ): SharedArrayBuffer
131
168
 
132
169
  /**
133
170
  * @see https://webidl.spec.whatwg.org/#es-buffer-source-types
134
171
  */
135
172
  TypedArray (
136
173
  V: unknown,
137
- TypedArray: NodeJS.TypedArray | ArrayBufferLike
138
- ): NodeJS.TypedArray | ArrayBufferLike
139
- TypedArray (
174
+ T: new () => NodeJS.TypedArray,
175
+ prefix: string,
176
+ argument: string,
177
+ flags?: number
178
+ ): NodeJS.TypedArray
179
+
180
+ /**
181
+ * @see https://webidl.spec.whatwg.org/#es-buffer-source-types
182
+ */
183
+ DataView (
140
184
  V: unknown,
141
- TypedArray: NodeJS.TypedArray | ArrayBufferLike,
142
- opts?: { allowShared: false }
143
- ): NodeJS.TypedArray | ArrayBuffer
185
+ prefix: string,
186
+ argument: string,
187
+ flags?: number
188
+ ): DataView
144
189
 
145
190
  /**
146
191
  * @see https://webidl.spec.whatwg.org/#es-buffer-source-types
147
192
  */
148
- DataView (V: unknown, opts?: { allowShared: boolean }): DataView
193
+ ArrayBufferView (
194
+ V: unknown,
195
+ prefix: string,
196
+ argument: string,
197
+ flags?: number
198
+ ): NodeJS.ArrayBufferView
149
199
 
150
200
  /**
151
201
  * @see https://webidl.spec.whatwg.org/#BufferSource
152
202
  */
153
203
  BufferSource (
154
204
  V: unknown,
155
- opts?: { allowShared: boolean }
156
- ): NodeJS.TypedArray | ArrayBufferLike | DataView
205
+ prefix: string,
206
+ argument: string,
207
+ flags?: number
208
+ ): ArrayBuffer | NodeJS.ArrayBufferView
209
+
210
+ /**
211
+ * @see https://webidl.spec.whatwg.org/#AllowSharedBufferSource
212
+ */
213
+ AllowSharedBufferSource (
214
+ V: unknown,
215
+ prefix: string,
216
+ argument: string,
217
+ flags?: number
218
+ ): ArrayBuffer | SharedArrayBuffer | NodeJS.ArrayBufferView
157
219
 
158
220
  ['sequence<ByteString>']: SequenceConverter<string>
159
-
221
+
160
222
  ['sequence<sequence<ByteString>>']: SequenceConverter<string[]>
161
223
 
162
224
  ['record<ByteString, ByteString>']: RecordConverter<string, string>
163
225
 
226
+ /**
227
+ * @see https://fetch.spec.whatwg.org/#requestinfo
228
+ */
229
+ RequestInfo (V: unknown): undici.Request | string
230
+
231
+ /**
232
+ * @see https://fetch.spec.whatwg.org/#requestinit
233
+ */
234
+ RequestInit (V: unknown): undici.RequestInit
235
+
236
+ /**
237
+ * @see https://html.spec.whatwg.org/multipage/webappapis.html#eventhandlernonnull
238
+ */
239
+ EventHandlerNonNull (V: unknown): Function | null
240
+
241
+ WebSocketStreamWrite (V: unknown): ArrayBuffer | NodeJS.TypedArray | string
242
+
164
243
  [Key: string]: (...args: any[]) => unknown
165
244
  }
166
245
 
246
+ type WebidlIsFunction<T> = (arg: any) => arg is T
247
+
248
+ interface WebidlIs {
249
+ Request: WebidlIsFunction<undici.Request>
250
+ Response: WebidlIsFunction<undici.Response>
251
+ ReadableStream: WebidlIsFunction<ReadableStream>
252
+ Blob: WebidlIsFunction<Blob>
253
+ URLSearchParams: WebidlIsFunction<URLSearchParams>
254
+ File: WebidlIsFunction<File>
255
+ FormData: WebidlIsFunction<undici.FormData>
256
+ URL: WebidlIsFunction<URL>
257
+ WebSocketError: WebidlIsFunction<undici.WebSocketError>
258
+ AbortSignal: WebidlIsFunction<AbortSignal>
259
+ MessagePort: WebidlIsFunction<MessagePort>
260
+ USVString: WebidlIsFunction<string>
261
+ /**
262
+ * @see https://webidl.spec.whatwg.org/#BufferSource
263
+ */
264
+ BufferSource: WebidlIsFunction<ArrayBuffer | NodeJS.TypedArray>
265
+ }
266
+
167
267
  export interface Webidl {
168
268
  errors: WebidlErrors
169
269
  util: WebidlUtil
170
270
  converters: WebidlConverters
271
+ is: WebidlIs
272
+ attributes: WebIDLExtendedAttributes
171
273
 
172
274
  /**
173
275
  * @description Performs a brand-check on {@param V} to ensure it is a
174
276
  * {@param cls} object.
175
277
  */
176
- brandCheck <Interface>(V: unknown, cls: Interface, opts?: { strict?: boolean }): asserts V is Interface
278
+ brandCheck <Interface extends new () => unknown>(V: unknown, cls: Interface): asserts V is Interface
279
+
280
+ brandCheckMultiple <Interfaces extends (new () => unknown)[]> (list: Interfaces): (V: any) => asserts V is Interfaces[number]
177
281
 
178
282
  /**
179
283
  * @see https://webidl.spec.whatwg.org/#es-sequence
@@ -196,10 +300,11 @@ export interface Webidl {
196
300
  * Similar to {@link Webidl.brandCheck} but allows skipping the check if third party
197
301
  * interfaces are allowed.
198
302
  */
199
- interfaceConverter <Interface>(cls: Interface): (
303
+ interfaceConverter <Interface>(typeCheck: WebidlIsFunction<Interface>, name: string): (
200
304
  V: unknown,
201
- opts?: { strict: boolean }
202
- ) => asserts V is typeof cls
305
+ prefix: string,
306
+ argument: string
307
+ ) => asserts V is Interface
203
308
 
204
309
  // TODO(@KhafraDev): a type could likely be implemented that can infer the return type
205
310
  // from the converters given?
@@ -226,3 +331,16 @@ export interface Webidl {
226
331
 
227
332
  argumentLengthCheck (args: { length: number }, min: number, context: string): void
228
333
  }
334
+
335
+ interface WebIDLExtendedAttributes {
336
+ /** https://webidl.spec.whatwg.org/#Clamp */
337
+ Clamp: number
338
+ /** https://webidl.spec.whatwg.org/#EnforceRange */
339
+ EnforceRange: number
340
+ /** https://webidl.spec.whatwg.org/#AllowShared */
341
+ AllowShared: number
342
+ /** https://webidl.spec.whatwg.org/#AllowResizable */
343
+ AllowResizable: number
344
+ /** https://webidl.spec.whatwg.org/#LegacyNullToEmptyString */
345
+ LegacyNullToEmptyString: number
346
+ }
@@ -1,7 +1,8 @@
1
1
  /// <reference types="node" />
2
2
 
3
- import type { Blob } from 'buffer'
4
- import type { MessagePort } from 'worker_threads'
3
+ import type { Blob } from 'node:buffer'
4
+ import type { ReadableStream, WritableStream } from 'node:stream/web'
5
+ import type { MessagePort } from 'node:worker_threads'
5
6
  import {
6
7
  EventInit,
7
8
  EventListenerOptions,
@@ -22,7 +23,7 @@ interface WebSocketEventMap {
22
23
 
23
24
  interface WebSocket extends EventTarget {
24
25
  binaryType: BinaryType
25
-
26
+
26
27
  readonly bufferedAmount: number
27
28
  readonly extensions: string
28
29
 
@@ -95,16 +96,16 @@ interface MessageEventInit<T = any> extends EventInit {
95
96
  data?: T
96
97
  lastEventId?: string
97
98
  origin?: string
98
- ports?: (typeof MessagePort)[]
99
- source?: typeof MessagePort | null
99
+ ports?: MessagePort[]
100
+ source?: MessagePort | null
100
101
  }
101
102
 
102
103
  interface MessageEvent<T = any> extends Event {
103
104
  readonly data: T
104
105
  readonly lastEventId: string
105
106
  readonly origin: string
106
- readonly ports: ReadonlyArray<typeof MessagePort>
107
- readonly source: typeof MessagePort | null
107
+ readonly ports: readonly MessagePort[]
108
+ readonly source: MessagePort | null
108
109
  initMessageEvent(
109
110
  type: string,
110
111
  bubbles?: boolean,
@@ -112,8 +113,8 @@ interface MessageEvent<T = any> extends Event {
112
113
  data?: any,
113
114
  origin?: string,
114
115
  lastEventId?: string,
115
- source?: typeof MessagePort | null,
116
- ports?: (typeof MessagePort)[]
116
+ source?: MessagePort | null,
117
+ ports?: MessagePort[]
117
118
  ): void;
118
119
  }
119
120
 
@@ -135,7 +136,7 @@ interface ErrorEvent extends Event {
135
136
  readonly filename: string
136
137
  readonly lineno: number
137
138
  readonly colno: number
138
- readonly error: any
139
+ readonly error: Error
139
140
  }
140
141
 
141
142
  export declare const ErrorEvent: {
@@ -148,3 +149,40 @@ interface WebSocketInit {
148
149
  dispatcher?: Dispatcher,
149
150
  headers?: HeadersInit
150
151
  }
152
+
153
+ interface WebSocketStreamOptions {
154
+ protocols?: string | string[]
155
+ signal?: AbortSignal
156
+ }
157
+
158
+ interface WebSocketCloseInfo {
159
+ closeCode: number
160
+ reason: string
161
+ }
162
+
163
+ interface WebSocketStream {
164
+ closed: Promise<WebSocketCloseInfo>
165
+ opened: Promise<{
166
+ extensions: string
167
+ protocol: string
168
+ readable: ReadableStream
169
+ writable: WritableStream
170
+ }>
171
+ url: string
172
+
173
+ close(options?: Partial<WebSocketCloseInfo>): void
174
+ }
175
+
176
+ export declare const WebSocketStream: {
177
+ prototype: WebSocketStream
178
+ new (url: string | URL, options?: WebSocketStreamOptions): WebSocketStream
179
+ }
180
+
181
+ interface WebSocketError extends Event, WebSocketCloseInfo {}
182
+
183
+ export declare const WebSocketError: {
184
+ prototype: WebSocketError
185
+ new (type: string, init?: WebSocketCloseInfo): WebSocketError
186
+ }
187
+
188
+ export declare const ping: (ws: WebSocket, body?: Buffer) => void
@@ -155,13 +155,13 @@ try {
155
155
  expected: 'string',
156
156
  code: 'invalid_type',
157
157
  path: [ 'username' ],
158
- message: 'Invalid input: expected string'
158
+ message: 'Invalid input: expected string, received number'
159
159
  },
160
160
  {
161
161
  expected: 'number',
162
162
  code: 'invalid_type',
163
163
  path: [ 'xp' ],
164
- message: 'Invalid input: expected number'
164
+ message: 'Invalid input: expected number, received string'
165
165
  }
166
166
  ] */
167
167
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zod",
3
- "version": "4.6.2",
3
+ "version": "4.6.5",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "author": "Colin McDonnell <zod@colinhacks.com>",
@@ -21,6 +21,7 @@ export {
21
21
  _startsWith as startsWith,
22
22
  _endsWith as endsWith,
23
23
  _property as property,
24
+ _properties as properties,
24
25
  _mime as mime,
25
26
  _overwrite as overwrite,
26
27
  _normalize as normalize,
@@ -2,6 +2,7 @@ import type { $ZodBigIntFormats } from "../core/checks.js";
2
2
  import * as core from "../core/index.js";
3
3
  import { util, type $ZodNumberFormats } from "../core/index.js";
4
4
  import * as processors from "../core/json-schema-processors.js";
5
+ import * as regexes from "../core/regexes.js";
5
6
  import type { StandardSchemaWithJSONProps } from "../core/standard-schema.js";
6
7
  import { createStandardJSONSchemaMethod, createToJSONSchemaMethod } from "../core/to-json-schema.js";
7
8
  import en from "../locales/en.js";
@@ -770,8 +771,8 @@ export function url(params?: string | core.$ZodURLParams): ZodURL {
770
771
 
771
772
  export function httpUrl(params?: string | Omit<core.$ZodURLParams, "protocol" | "hostname">): ZodURL {
772
773
  return core._url(ZodURL, {
773
- protocol: core.regexes.httpProtocol,
774
- hostname: core.regexes.domain,
774
+ protocol: regexes.httpProtocol,
775
+ hostname: regexes.domain,
775
776
  ...util.normalizeParams(params),
776
777
  });
777
778
  }
@@ -1081,11 +1082,15 @@ export function stringFormat<Format extends string>(
1081
1082
  }
1082
1083
 
1083
1084
  export function hostname(_params?: string | core.$ZodStringFormatParams): ZodCustomStringFormat<"hostname"> {
1084
- return core._stringFormat(ZodCustomStringFormat, "hostname", core.regexes.hostname, _params) as any;
1085
+ return core._stringFormat(ZodCustomStringFormat, "hostname", regexes.hostname, _params) as any;
1085
1086
  }
1086
1087
 
1087
1088
  export function hex(_params?: string | core.$ZodStringFormatParams): ZodCustomStringFormat<"hex"> {
1088
- return core._stringFormat(ZodCustomStringFormat, "hex", core.regexes.hex, _params) as any;
1089
+ return core._stringFormat(ZodCustomStringFormat, "hex", regexes.hex, _params) as any;
1090
+ }
1091
+
1092
+ export function currencyCode(_params?: string | core.$ZodStringFormatParams): ZodCustomStringFormat<"currency_code"> {
1093
+ return core._stringFormat(ZodCustomStringFormat, "currency_code", regexes.currencyCode, _params) as any;
1089
1094
  }
1090
1095
 
1091
1096
  export function hash<Alg extends util.HashAlgorithm, Enc extends util.HashEncoding = "hex">(
@@ -2791,28 +2796,6 @@ export const ZodCustom: core.$constructor<ZodCustom> = /*@__PURE__*/ core.$const
2791
2796
  inst._zod.processJSONSchema = (ctx, json, params) => processors.customProcessor(inst, ctx, json, params);
2792
2797
  });
2793
2798
 
2794
- // ZodProperties
2795
- export interface ZodProperties<Shape extends core.$ZodShape = core.$ZodShape>
2796
- extends _ZodType<core.$ZodPropertiesInternals<Shape>>,
2797
- core.$ZodProperties<Shape> {
2798
- "~standard": ZodStandardSchemaWithJSON<this>;
2799
- }
2800
- export const ZodProperties: core.$constructor<ZodProperties> = /*@__PURE__*/ core.$constructor(
2801
- "ZodProperties",
2802
- (inst, def) => {
2803
- _ensureDefaultMemoizer();
2804
- core.$ZodProperties.init(inst, def);
2805
- ZodType.init(inst, def);
2806
- }
2807
- );
2808
-
2809
- export function properties<Shape extends core.$ZodShape>(
2810
- shape: Shape,
2811
- params?: string | core.$ZodPropertiesParams
2812
- ): ZodProperties<Shape> {
2813
- return core._properties(ZodProperties, shape, params) as any;
2814
- }
2815
-
2816
2799
  // custom checks
2817
2800
  export function check<O = unknown>(fn: core.CheckFn<O>): core.$ZodCheck<O> {
2818
2801
  const ch = new core.$ZodCheck({
@@ -2858,9 +2841,10 @@ type ZodInstanceOfParams = core.Params<
2858
2841
 
2859
2842
  // ZodInstanceOf
2860
2843
  export interface ZodInstanceOf<T = unknown> extends ZodCustom<T, T> {
2861
- properties<Shape extends core.$ZodShape>(
2844
+ // the shape is keyed off the instance type, so keys autocomplete and a schema that can't accept the property's type is an error. Methods are excluded: every object literal inherits Object.prototype.toString, which would otherwise collide with the constraint's own toString entry and reject every shape.
2845
+ properties<Shape extends { [k in keyof T as T[k] extends Function ? never : k]?: core.$ZodType<unknown, T[k]> }>(
2862
2846
  shape: Shape,
2863
- params?: string | core.$ZodPropertiesParams
2847
+ params?: string | core.$ZodCheckPropertiesParams
2864
2848
  ): ZodInstanceOf<T & core.$InferObjectInput<Shape, {}>>;
2865
2849
  }
2866
2850
  export const ZodInstanceOf: core.$constructor<ZodInstanceOf> = /*@__PURE__*/ core.$constructor(
@@ -2869,9 +2853,9 @@ export const ZodInstanceOf: core.$constructor<ZodInstanceOf> = /*@__PURE__*/ cor
2869
2853
  ZodCustom.init(inst, def);
2870
2854
  },
2871
2855
  {
2872
- properties(shape: core.$ZodShape, params?: string | core.$ZodPropertiesParams) {
2856
+ properties(shape: core.$ZodShape, params?: string | core.$ZodCheckPropertiesParams) {
2873
2857
  // asserts in place, so the narrowed output type is truthful without a wrapper
2874
- return this.check(properties(shape, params)) as any;
2858
+ return this.check(core._properties(shape, params)) as any;
2875
2859
  },
2876
2860
  }
2877
2861
  );
@@ -352,6 +352,7 @@ test("checks", () => {
352
352
  const _b: z.core.$ZodCheck = {} as any as z.core.$ZodStringFormatChecks;
353
353
  const _c: z.core.$ZodType = {} as any as z.core.$ZodTypes;
354
354
  const _d: z.core.$ZodType = {} as any as z.core.$ZodStringFormatTypes;
355
+ z.currencyCode() satisfies z.core.$ZodStringFormatTypes;
355
356
  });
356
357
 
357
358
  test("assignability to $ZodType", () => {
@@ -924,17 +924,8 @@ test("a deferred edge stops being assumed a cycle once the graph resolves", () =
924
924
  expect(z.core.isRecursiveSchema(Cyclic)).toBe(true);
925
925
  });
926
926
 
927
- // `z.object` resolves its shape by spread, so a non-enumerable key is no part of it; `z.properties` reads every own key, so one there is still parsed and can still close a cycle
928
- test("a non-enumerable key counts for z.properties and not for z.object", () => {
929
- const props = (enumerable: boolean) => {
930
- const shape: Record<string, any> = { id: z.number() };
931
- const P = z.properties(shape);
932
- Object.defineProperty(shape, "next", { value: z.lazy(() => z.optional(P)), enumerable, configurable: true });
933
- return P;
934
- };
935
- expect(z.core.isRecursiveSchema(props(true) as any)).toBe(true);
936
- expect(z.core.isRecursiveSchema(props(false) as any)).toBe(true);
937
-
927
+ // `z.object` resolves its shape by spread, so a non-enumerable key is no part of it
928
+ test("a non-enumerable key does not count for z.object", () => {
938
929
  const object = (enumerable: boolean) => {
939
930
  const shape: Record<string, any> = { id: z.number() };
940
931
  const O: any = z.object(shape);
@@ -80,8 +80,6 @@ test("first party switch", () => {
80
80
  break;
81
81
  case "file":
82
82
  break;
83
- case "properties":
84
- break;
85
83
  case "lazy":
86
84
  break;
87
85
  case "function":
@@ -172,8 +170,6 @@ test("$ZodSchemaTypes", () => {
172
170
  break;
173
171
  case "lazy":
174
172
  break;
175
- case "properties":
176
- break;
177
173
  case "function":
178
174
  break;
179
175
 
@@ -105,6 +105,28 @@ test("deferred initializers are released after construction", () => {
105
105
  expect(z.object({ a: z.string() })._zod.deferred).toEqual(undefined);
106
106
  });
107
107
 
108
+ test("trait initializers run once per instance across repeated entry", () => {
109
+ const calls: string[] = [];
110
+ const Base: core.$constructor<any> = core.$constructor<any>("CountedBase", () => calls.push("base"));
111
+ const Child: core.$constructor<any> = core.$constructor<any>("CountedChild", (inst, def) => {
112
+ calls.push("child");
113
+ Base.init(inst, def);
114
+ Base.init(inst, def);
115
+ });
116
+ const constructed = new Child({});
117
+ Child.init(constructed, {});
118
+ const direct = Object.create({});
119
+ Child.init(direct, {});
120
+ Child.init(direct, {});
121
+ expect(calls).toEqual(["child", "base", "child", "base"]);
122
+ for (const inst of [constructed, direct]) {
123
+ expect([...inst._zod.traits]).toEqual(["CountedChild", "CountedBase"]);
124
+ expect(inst instanceof Base).toBe(true);
125
+ expect(inst instanceof Child).toBe(true);
126
+ }
127
+ expect(constructed._zod.traits).not.toBe(direct._zod.traits);
128
+ });
129
+
108
130
  test("a trait initializer called directly still installs its members", () => {
109
131
  // a direct `init` installs onto the receiver's own prototype, since it is not below the constructor's
110
132
  z.string();
@@ -90,7 +90,7 @@ test("z.properties", () => {
90
90
  expect(obj.safeParse(input).error!.issues.map((i) => [i.code, i.path])).toEqual([["invalid_type", []]]);
91
91
  }
92
92
 
93
- // Known looseness versus the longhand, pinned so it stays deliberate: the schema-as-check is typed over the whole shape, and `$ZodCheckInternals.check()` is a method, so TypeScript compares it bivariantly and accepts a check type that is a subtype of the target. Naming a key the target lacks therefore compiles here and fails at parse time, where the equivalent chain of `z.property()` calls rejects it outright.
93
+ // Known looseness versus the longhand, pinned so it stays deliberate: the check is typed over the whole shape, and `$ZodCheckInternals.check()` is a method, so TypeScript compares it bivariantly and accepts a check type that is a subtype of the target. Naming a key the target lacks therefore compiles here and fails at parse time, where the equivalent chain of `z.property()` calls rejects it outright.
94
94
  z.object({ a: z.string() }).check(...z.properties({ a: z.literal("x"), b: z.literal("y") }));
95
95
  expect(
96
96
  z
@@ -2,6 +2,45 @@ import { expect, expectTypeOf, test } from "vitest";
2
2
 
3
3
  import * as z from "zod/v4";
4
4
 
5
+ test("number factory checks", () => {
6
+ const schema = z.number({ checks: [z.gte(1), z.lte(3)] as const });
7
+ const chained = z.number().min(1).max(3);
8
+ expectTypeOf<z.output<typeof schema>>().toEqualTypeOf<number>();
9
+ for (const value of [0, 1, 3, 4, Number.NaN, "2", undefined]) {
10
+ expect(z.validate(schema, value)).toBe(z.validate(chained, value));
11
+ expect(schema.safeParse(value)).toEqual(chained.safeParse(value));
12
+ }
13
+ expect(z.toJSONSchema(schema)).toEqual(z.toJSONSchema(chained));
14
+ expect(schema.minValue).toBe(1);
15
+ expect(schema.maxValue).toBe(3);
16
+ expect(z.coerce.number({ checks: [z.gte(1)] }).parse("2")).toBe(2);
17
+ const overwritten = z.number({ checks: [z.overwrite<number>((value) => value + 1), z.gte(2)] });
18
+ expect(overwritten.parse(1)).toBe(2);
19
+ expect(z.validate(overwritten, 0)).toBe(false);
20
+ // @ts-expect-error length checks cannot validate numbers
21
+ z.number({ checks: [z.minLength(1)] });
22
+ });
23
+
24
+ test("number factory checks snapshot caller arrays", () => {
25
+ for (const factory of [z.number, z.coerce.number]) {
26
+ const checks = [z.gte(1)];
27
+ const schema = factory({ checks });
28
+ let reads = 0;
29
+ factory({
30
+ get checks() {
31
+ if (++reads > 1) throw new Error("checks read twice");
32
+ return checks;
33
+ },
34
+ });
35
+ expect(reads).toBe(1);
36
+ const before = z.toJSONSchema(schema);
37
+ checks.push(z.gte(10));
38
+ expect(z.validate(schema, 3)).toBe(true);
39
+ expect(z.validate(z.compile(schema), 3)).toBe(true);
40
+ expect(z.toJSONSchema(schema)).toEqual(before);
41
+ }
42
+ });
43
+
5
44
  test("z.number() basic validation", () => {
6
45
  const schema = z.number();
7
46
  expect(schema.parse(1234)).toEqual(1234);