void 0.10.13 → 0.20.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 (432) hide show
  1. package/AGENTS_TEMPLATE.md +6 -0
  2. package/{skills/void/docs/node_modules/void/node_modules/pglite-server/LICENSE.md → LICENSE} +1 -1
  3. package/README.md +34 -8
  4. package/dist/{auth-qgMlYp7Z.d.mts → auth-DkcFflXV.d.mts} +10 -11
  5. package/dist/auth-W9WII-mN.mjs +630 -0
  6. package/dist/{auth-cmd-BqsdZJp5.mjs → auth-cmd-CAH62yDU.mjs} +4 -3
  7. package/dist/{auth-migrations-BTZ-ATvQ.mjs → auth-migrations-9vif1uj8.mjs} +53 -12
  8. package/dist/{better-auth-shared-BQooDxbw.mjs → better-auth-shared-CYw1T3k4.mjs} +7 -10
  9. package/dist/{better-auth-shared-DealXecJ.d.mts → better-auth-shared-DSCeohOK.d.mts} +10 -5
  10. package/dist/{build-cmd-Bujrv5q-.mjs → build-cmd-CJvZvPQO.mjs} +6 -4
  11. package/dist/{cache-C11V8Fxq.mjs → cache-BlNeQjuP.mjs} +9 -5
  12. package/dist/{cancel-deploy-fwFYF04b.mjs → cancel-deploy-CmlAZ9P6.mjs} +3 -2
  13. package/dist/cf-access-AJ1ehiFR.mjs +42 -0
  14. package/dist/cf-access-DsSsZUPr.mjs +67 -0
  15. package/dist/cli/cli.d.mts +1 -1
  16. package/dist/cli/cli.mjs +1735 -165
  17. package/dist/cli/env-schema-probe.d.mts +48 -61
  18. package/dist/cli/env-schema-probe.mjs +10 -58
  19. package/dist/{client-Gb71-XkG.mjs → client-Clirrol3.mjs} +120 -463
  20. package/dist/cloudflare-auth-B1QtTO1b.mjs +217 -0
  21. package/dist/cloudflare-cmd-B6_OZx2V.mjs +62 -0
  22. package/dist/cloudflare-connect-j5D4hhrG.mjs +56 -0
  23. package/dist/cloudflare-operations-CPTpRW6d.mjs +566 -0
  24. package/dist/{config-qHGgPuWT.mjs → config-BQFq7QvD.mjs} +75 -41
  25. package/dist/{config-CutEMNGJ.mjs → config-NOG_U1aK.mjs} +10 -15
  26. package/dist/connect-C04Wdy_h.mjs +79 -0
  27. package/dist/{create-project-DsYvl3TB.mjs → create-project-ChGZ1DFd.mjs} +26 -16
  28. package/dist/database-provider.d.mts +21 -0
  29. package/dist/database-provider.mjs +6 -0
  30. package/dist/{db-C0i0sYMS.mjs → db-D2d_mUsB.mjs} +612 -117
  31. package/dist/{delete-mh6p-zkQ.mjs → delete-D8GigDk8.mjs} +9 -6
  32. package/dist/{deploy-jBJT1fUT.mjs → deploy-iXZ3F0N6.mjs} +3252 -1995
  33. package/dist/dev-inbox-DkgRWLkW.mjs +307 -0
  34. package/dist/{discover-CJHyvYfR.mjs → discover-xvfrgJeo.mjs} +3 -3
  35. package/dist/{magic-string.es-ZQjdJFFn.mjs → dist-BR1quN_w.mjs} +570 -216
  36. package/dist/{dist-DaKKDf8D.mjs → dist-BrsS7cai.mjs} +17 -2
  37. package/dist/{dist-BuiRJkTd.mjs → dist-m40_XgNh.mjs} +48 -33
  38. package/dist/{domain-DiaNQbrl.mjs → domain-B1VmoSr0.mjs} +41 -4
  39. package/dist/dotenv-VQxupEUv.mjs +181 -0
  40. package/dist/edge.d.mts +2 -0
  41. package/dist/edge.mjs +2 -0
  42. package/dist/email-Ce6SQq-i.mjs +182 -0
  43. package/dist/email-uKyQYUVY.mjs +1016 -0
  44. package/dist/{entry-D7yy4xVH.mjs → entry-DU3oDoQ3.mjs} +2 -2
  45. package/dist/env-BcQzYgoG.mjs +73 -0
  46. package/dist/env-D4Emu-M_.mjs +95 -0
  47. package/dist/env-helpers-CyKtOBpj.d.mts +22 -0
  48. package/dist/env-public-D_6u46fX.d.mts +135 -0
  49. package/dist/{env-types-QBj-ndax.mjs → env-types-BNPhro-M.mjs} +2 -2
  50. package/dist/{env-validation-Dea3v3ej.mjs → env-validation-ENpMy6Ez.mjs} +68 -122
  51. package/dist/{gen-BzXf3Jh2.mjs → gen-DI2YwdBM.mjs} +70 -15
  52. package/dist/generate-RTK8_kK1.mjs +47 -0
  53. package/dist/{github-cmd-DKcGUNsj.mjs → github-cmd-xItS5Zwf.mjs} +39 -31
  54. package/dist/{handler-Cjh8uM3Y.d.mts → handler-D1hLsObx.d.mts} +124 -122
  55. package/dist/{head-nmvOgFjd.d.mts → head-Do8P4puT.d.mts} +9 -8
  56. package/dist/{headers-ChAADPQu.mjs → headers-D8QfRX9Y.mjs} +12 -10
  57. package/dist/inbound-2d0zi2yS.mjs +706 -0
  58. package/dist/inbound-afAcWeQ9.d.mts +363 -0
  59. package/dist/index.d.mts +61 -34
  60. package/dist/index.mjs +1012 -293
  61. package/dist/{init-7JCAcKNQ.mjs → init-BD-9THgn.mjs} +329 -271
  62. package/dist/link-RMdgjF1v.mjs +52 -0
  63. package/dist/{list-CPwFDZ_c.mjs → list-3F52R_yO.mjs} +37 -5
  64. package/dist/{runner-kapo9aPs.mjs → local-d1-D2I6Ox5F.mjs} +116 -6
  65. package/dist/{login-BT3H8PN3.mjs → login-pV69H-ZO.mjs} +17 -15
  66. package/dist/{logs-Bt313ax7.mjs → logs-DFHHD6wE.mjs} +16 -2
  67. package/dist/mime-BJD7d_qL.mjs +1216 -0
  68. package/dist/neon-DHwd2zvC.mjs +54 -0
  69. package/dist/{node-pRg81HqV.mjs → node-Dk3H2jmU.mjs} +29 -8
  70. package/dist/operator-cmd-DYWRbWUA.mjs +348 -0
  71. package/dist/{agents-CtgBYqld.mjs → output-tFQLLj26.mjs} +676 -211
  72. package/dist/{package-json-Cx1osYo6.mjs → package-json-CPoWX79C.mjs} +1 -1
  73. package/dist/pages/client.d.mts +43 -41
  74. package/dist/pages/client.mjs +40 -33
  75. package/dist/pages/head-client.d.mts +10 -12
  76. package/dist/pages/head.d.mts +1 -1
  77. package/dist/pages/index.d.mts +37 -14
  78. package/dist/pages/index.mjs +5 -5
  79. package/dist/pages/islands-plugin.d.mts +25 -27
  80. package/dist/pages/islands-plugin.mjs +6 -4
  81. package/dist/pages/prefetch.d.mts +6 -7
  82. package/dist/pages/protocol.d.mts +2 -2
  83. package/dist/pages/protocol.mjs +2 -1
  84. package/dist/pages/serialize.d.mts +7 -8
  85. package/dist/platform-cmd-DxJ2FRwR.mjs +123 -0
  86. package/dist/platform-domain-ChvbJkdy.mjs +228 -0
  87. package/dist/platform-lifecycle-DN4MzJF_.mjs +4450 -0
  88. package/dist/platform-management-Db2PXw0B.mjs +698 -0
  89. package/dist/platform-recovery-C_YO-tIs.mjs +99 -0
  90. package/dist/{plugin-inference-DMeavIJ6.mjs → plugin-inference-BDRfZngg.mjs} +35 -19
  91. package/dist/prepare-BfJvFUtJ.mjs +14 -0
  92. package/dist/{prepare-BvvgAz-3.mjs → prepare-CBetXvsN.mjs} +15 -24
  93. package/dist/{preset-BjyR3lzz.mjs → preset-lAy0B0BQ.mjs} +25 -212
  94. package/dist/{project-cmd-D_w-4w5B.mjs → project-cmd-Mo0V9yKS.mjs} +25 -12
  95. package/dist/{project-paths-BQd7OmIo.mjs → project-paths-SK8nMHPp.mjs} +3 -1
  96. package/dist/{project-tsconfig-B-QtXjLQ.mjs → project-tsconfig-Ql2XsSQp.mjs} +2 -2
  97. package/dist/{protocol-Bnb0LFp3.d.mts → protocol-C-pqYJjE.d.mts} +3 -4
  98. package/dist/{provision-CPx2ZxsH.mjs → provision-Blnstcm2.mjs} +78 -45
  99. package/dist/r2-conditions-D1Wk8i7b.mjs +30 -0
  100. package/dist/{requests-B8sZxaFM.mjs → requests-BcKOVpRg.mjs} +5 -3
  101. package/dist/{resolve-project-BBMtLLV9.mjs → resolve-project--Vxawf7z.mjs} +2 -2
  102. package/dist/rollback-Bx85-0xh.mjs +166 -0
  103. package/dist/{rolldown-runtime-DJK8HYOj.mjs → rolldown-runtime-rQ84J-ij.mjs} +1 -1
  104. package/dist/{route-types-z1jtHEi_.mjs → route-types-Da-DpyUp.mjs} +77 -25
  105. package/dist/routes-stub.d.mts +22 -23
  106. package/dist/runner-mysql-7BPUNGmL.mjs +61 -0
  107. package/dist/{runner-pg-CHM76xuC.mjs → runner-pg-BkEza-dX.mjs} +18 -6
  108. package/dist/runtime/ai.d.mts +21 -14
  109. package/dist/runtime/ai.mjs +5 -4
  110. package/dist/runtime/auth-client-react.d.mts +3 -5
  111. package/dist/runtime/auth-client-solid.d.mts +3 -5
  112. package/dist/runtime/auth-client-svelte.d.mts +3 -5
  113. package/dist/runtime/auth-client-vue.d.mts +3 -5
  114. package/dist/runtime/auth-client.d.mts +3 -5
  115. package/dist/runtime/auth.d.mts +1 -1
  116. package/dist/runtime/better-auth-mysql.d.mts +10 -0
  117. package/dist/runtime/better-auth-mysql.mjs +49 -0
  118. package/dist/runtime/better-auth-pg.d.mts +8 -9
  119. package/dist/runtime/better-auth-pg.mjs +2 -2
  120. package/dist/runtime/better-auth.d.mts +8 -9
  121. package/dist/runtime/better-auth.mjs +2 -2
  122. package/dist/runtime/client-react.d.mts +1 -1
  123. package/dist/runtime/client-solid.d.mts +1 -1
  124. package/dist/runtime/client-svelte.d.mts +1 -1
  125. package/dist/runtime/client-vue.d.mts +1 -1
  126. package/dist/runtime/client.d.mts +1 -1
  127. package/dist/runtime/db-mysql.d.mts +2 -0
  128. package/dist/runtime/db-mysql.mjs +1 -0
  129. package/dist/runtime/db.d.mts +10 -11
  130. package/dist/runtime/durable.d.mts +47 -0
  131. package/dist/runtime/durable.mjs +146 -0
  132. package/dist/runtime/email/testing.d.mts +112 -0
  133. package/dist/runtime/email/testing.mjs +283 -0
  134. package/dist/runtime/email.d.mts +30 -0
  135. package/dist/runtime/email.mjs +573 -0
  136. package/dist/runtime/env-helpers.d.mts +2 -2
  137. package/dist/runtime/env-helpers.mjs +5 -42
  138. package/dist/runtime/env-public-client.d.mts +10 -11
  139. package/dist/runtime/env-public-client.mjs +1 -1
  140. package/dist/runtime/env-public.d.mts +2 -2
  141. package/dist/runtime/env-public.mjs +104 -49
  142. package/dist/runtime/env.d.mts +19 -18
  143. package/dist/runtime/env.mjs +15 -2
  144. package/dist/runtime/fetch-stream.d.mts +20 -21
  145. package/dist/runtime/fetch.d.mts +15 -16
  146. package/dist/runtime/handler.d.mts +1 -1
  147. package/dist/runtime/isr.d.mts +21 -22
  148. package/dist/runtime/isr.mjs +26 -8
  149. package/dist/runtime/kv.d.mts +9 -10
  150. package/dist/runtime/live-client.d.mts +5 -7
  151. package/dist/runtime/live-client.mjs +9 -7
  152. package/dist/runtime/live-server.d.mts +4 -5
  153. package/dist/runtime/live.d.mts +22 -24
  154. package/dist/runtime/live.mjs +1 -1
  155. package/dist/runtime/log.d.mts +16 -17
  156. package/dist/runtime/migration-handler-mysql.d.mts +4 -0
  157. package/dist/runtime/migration-handler-mysql.mjs +81 -0
  158. package/dist/runtime/migration-handler-pg.d.mts +2 -4
  159. package/dist/runtime/migration-handler.d.mts +5 -6
  160. package/dist/runtime/migration-handler.mjs +4 -3
  161. package/dist/runtime/queues.d.mts +3 -4
  162. package/dist/runtime/queues.mjs +2 -1
  163. package/dist/runtime/remote/binding-handler.d.mts +10 -12
  164. package/dist/runtime/remote/binding-handler.mjs +24 -3
  165. package/dist/runtime/remote/index.d.mts +5 -6
  166. package/dist/runtime/remote/index.mjs +21 -18
  167. package/dist/runtime/response.d.mts +10 -11
  168. package/dist/runtime/sandbox.d.mts +56 -55
  169. package/dist/runtime/sandbox.mjs +57 -49
  170. package/dist/runtime/schema-mysql.d.mts +1 -0
  171. package/dist/runtime/schema-mysql.mjs +2 -0
  172. package/dist/runtime/seed.d.mts +14 -9
  173. package/dist/runtime/sse-client.d.mts +6 -7
  174. package/dist/runtime/sse.d.mts +11 -12
  175. package/dist/runtime/storage.d.mts +3 -4
  176. package/dist/runtime/validator.d.mts +1 -1
  177. package/dist/runtime/ws-server.d.mts +12 -12
  178. package/dist/runtime/ws-server.mjs +32 -4
  179. package/dist/runtime/ws.d.mts +19 -21
  180. package/dist/{scan-ChWt4pX1.mjs → scan-BMH4rzlv.mjs} +42 -19
  181. package/dist/{scan-NU4xKGci.mjs → scan-CpK-57ug.mjs} +5 -4
  182. package/dist/{secret-Dt32J6RI.mjs → secret-ByhJ9AMl.mjs} +62 -5
  183. package/dist/{skills-CLjN0uUO.mjs → skills-Q46GZMO-.mjs} +6 -4
  184. package/dist/sqlite-validation-BzKMWnO4.mjs +25 -0
  185. package/dist/{standard-schema-DJ0HW7QP.d.mts → standard-schema-Fo_vCAZh.d.mts} +6 -6
  186. package/dist/{subcommand-prompt-BzV8iQZo.mjs → subcommand-prompt-WfySCQ7S.mjs} +67 -48
  187. package/dist/sveltekit.d.mts +12 -11
  188. package/dist/sveltekit.mjs +1 -1
  189. package/dist/types-BAp5AEBU.d.mts +79 -0
  190. package/dist/types-CKWnYgfy.d.mts +1 -0
  191. package/dist/{validate-Cw_RLeTj.mjs → validate-tBBN_dXH.mjs} +4 -3
  192. package/dist/wrangler--imS8n0d.mjs +1796 -0
  193. package/dist/{yarn-pnp-DJn3SAHF.mjs → yarn-pnp-DxSInkzL.mjs} +1 -1
  194. package/package.json +79 -65
  195. package/schema.json +22 -3
  196. package/skills/void/SKILL.md +59 -2
  197. package/skills/void/docs/guide/ai.md +32 -14
  198. package/skills/void/docs/guide/app-types.md +6 -6
  199. package/skills/void/docs/guide/auth.md +14 -16
  200. package/skills/void/docs/guide/database/d1.md +6 -0
  201. package/skills/void/docs/guide/database/mysql.md +60 -0
  202. package/skills/void/docs/guide/database/postgresql.md +14 -9
  203. package/skills/void/docs/guide/database.md +39 -26
  204. package/skills/void/docs/guide/deployment.md +99 -25
  205. package/skills/void/docs/guide/durable-state.md +140 -0
  206. package/skills/void/docs/guide/edge/headers.md +5 -5
  207. package/skills/void/docs/guide/edge/prerendering.md +2 -0
  208. package/skills/void/docs/guide/edge/revalidation.md +21 -6
  209. package/skills/void/docs/guide/edge/rewrites.md +18 -14
  210. package/skills/void/docs/guide/edge/static-assets.md +12 -10
  211. package/skills/void/docs/guide/email.md +640 -0
  212. package/skills/void/docs/guide/env-migration.md +109 -0
  213. package/skills/void/docs/guide/env-vars.md +70 -248
  214. package/skills/void/docs/guide/index.md +15 -17
  215. package/skills/void/docs/guide/jobs.md +8 -5
  216. package/skills/void/docs/guide/live.md +7 -15
  217. package/skills/void/docs/guide/pages-routing/actions-and-forms.md +8 -4
  218. package/skills/void/docs/guide/pages-routing/islands.md +3 -3
  219. package/skills/void/docs/guide/pages-routing/loaders.md +6 -4
  220. package/skills/void/docs/guide/pages-routing/overview.md +7 -7
  221. package/skills/void/docs/guide/platform-administration.md +212 -0
  222. package/skills/void/docs/guide/platform-development.md +264 -0
  223. package/skills/void/docs/guide/queues.md +10 -10
  224. package/skills/void/docs/guide/quickstart.md +46 -67
  225. package/skills/void/docs/guide/remote-dev.md +8 -6
  226. package/skills/void/docs/guide/sandboxes.md +33 -16
  227. package/skills/void/docs/guide/self-hosted-platform.md +553 -0
  228. package/skills/void/docs/guide/server-routing.md +5 -5
  229. package/skills/void/docs/guide/sse.md +4 -4
  230. package/skills/void/docs/guide/ssg.md +5 -3
  231. package/skills/void/docs/guide/storage.md +2 -2
  232. package/skills/void/docs/guide/websockets.md +15 -7
  233. package/skills/void/docs/index.md +3 -3
  234. package/skills/void/docs/integrations/agents.md +6 -64
  235. package/skills/void/docs/integrations/cloudflare.md +165 -146
  236. package/skills/void/docs/integrations/frameworks/analog.md +4 -4
  237. package/skills/void/docs/integrations/frameworks/astro.md +5 -5
  238. package/skills/void/docs/integrations/frameworks/nuxt.md +5 -5
  239. package/skills/void/docs/integrations/frameworks/overview.md +3 -3
  240. package/skills/void/docs/integrations/frameworks/react-router.md +3 -3
  241. package/skills/void/docs/integrations/frameworks/sveltekit.md +3 -3
  242. package/skills/void/docs/integrations/frameworks/tanstack-start.md +2 -2
  243. package/skills/void/docs/integrations/nodejs-bun-deno.md +11 -4
  244. package/skills/void/docs/reference/api.md +42 -6
  245. package/skills/void/docs/reference/cli.md +665 -160
  246. package/skills/void/docs/reference/config.md +67 -27
  247. package/skills/void/docs/reference/resource-inference.md +13 -9
  248. package/skills/void/docs/reference/structure.md +9 -11
  249. package/AGENT_PROMPT.md +0 -19
  250. package/dist/cf-access-Bqw81xAf.mjs +0 -22
  251. package/dist/env-CZy5MorI.mjs +0 -299
  252. package/dist/env-helpers-z4stu8uc.d.mts +0 -52
  253. package/dist/env-mask-Dd47NbR6.mjs +0 -90
  254. package/dist/env-public-BfiLcMBk.d.mts +0 -140
  255. package/dist/link-CdGHSIy-.mjs +0 -45
  256. package/dist/mcp-DoM3_nhd.mjs +0 -377
  257. package/dist/project-paths-GpziKeQQ.d.mts +0 -25
  258. package/dist/providers-BNKRacMr.d.mts +0 -7
  259. package/dist/proxy-D-3_D-Gl.mjs +0 -5
  260. package/dist/rollback-CkvTFXx5.mjs +0 -90
  261. package/dist/runtime/isr-cache.d.mts +0 -207
  262. package/dist/runtime/isr-cache.mjs +0 -523
  263. package/dist/types-lLjNE9Qp.d.mts +0 -51
  264. package/getting-started-prompt.txt +0 -28
  265. package/skills/void/command/void.md +0 -7
  266. package/skills/void/docs/integrations/auth-providers.md +0 -0
  267. package/skills/void/docs/integrations/payment-processors.md +0 -0
  268. package/skills/void/docs/node_modules/@iconify/vue/README.md +0 -408
  269. package/skills/void/docs/node_modules/@iconify/vue/offline/readme.md +0 -5
  270. package/skills/void/docs/node_modules/@voidzero-dev/vitepress-theme/README.md +0 -103
  271. package/skills/void/docs/node_modules/oxc-minify/README.md +0 -78
  272. package/skills/void/docs/node_modules/reka-ui/README.md +0 -80
  273. package/skills/void/docs/node_modules/vitepress/README.md +0 -28
  274. package/skills/void/docs/node_modules/vitepress/template/api-examples.md +0 -49
  275. package/skills/void/docs/node_modules/vitepress/template/index.md +0 -28
  276. package/skills/void/docs/node_modules/vitepress/template/markdown-examples.md +0 -85
  277. package/skills/void/docs/node_modules/vitepress-plugin-group-icons/README.md +0 -101
  278. package/skills/void/docs/node_modules/void/AGENT_PROMPT.md +0 -19
  279. package/skills/void/docs/node_modules/void/CLAUDE.md +0 -221
  280. package/skills/void/docs/node_modules/void/README.md +0 -90
  281. package/skills/void/docs/node_modules/void/node_modules/@clack/prompts/CHANGELOG.md +0 -685
  282. package/skills/void/docs/node_modules/void/node_modules/@clack/prompts/README.md +0 -396
  283. package/skills/void/docs/node_modules/void/node_modules/@cloudflare/sandbox/README.md +0 -219
  284. package/skills/void/docs/node_modules/void/node_modules/@cloudflare/vite-plugin/README.md +0 -37
  285. package/skills/void/docs/node_modules/void/node_modules/@cloudflare/workers-types/README.md +0 -135
  286. package/skills/void/docs/node_modules/void/node_modules/@electric-sql/pglite/README.md +0 -189
  287. package/skills/void/docs/node_modules/void/node_modules/@hono/oauth-providers/CHANGELOG.md +0 -143
  288. package/skills/void/docs/node_modules/void/node_modules/@hono/oauth-providers/README.md +0 -1272
  289. package/skills/void/docs/node_modules/void/node_modules/@napi-rs/keyring/README.md +0 -19
  290. package/skills/void/docs/node_modules/void/node_modules/@types/better-sqlite3/README.md +0 -15
  291. package/skills/void/docs/node_modules/void/node_modules/@types/node/README.md +0 -15
  292. package/skills/void/docs/node_modules/void/node_modules/@types/pg/README.md +0 -15
  293. package/skills/void/docs/node_modules/void/node_modules/@types/proper-lockfile/README.md +0 -51
  294. package/skills/void/docs/node_modules/void/node_modules/@typescript/native-preview/README.md +0 -22
  295. package/skills/void/docs/node_modules/void/node_modules/@typescript/native-preview/vendor/vscode-jsonrpc/README.md +0 -69
  296. package/skills/void/docs/node_modules/void/node_modules/@void/md/README.md +0 -153
  297. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@shikijs/engine-javascript/README.md +0 -9
  298. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@shikijs/transformers/README.md +0 -9
  299. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@types/node/README.md +0 -15
  300. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/gray-matter/CHANGELOG.md +0 -24
  301. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/gray-matter/README.md +0 -565
  302. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-exit/README.md +0 -127
  303. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-anchor/README.md +0 -600
  304. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-attrs/README.md +0 -386
  305. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-container/README.md +0 -95
  306. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-emoji/README.md +0 -101
  307. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-footnote/README.md +0 -135
  308. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/pathslash/README.md +0 -64
  309. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/shiki/README.md +0 -15
  310. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/tinyglobby/README.md +0 -25
  311. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/AGENTS.md +0 -16
  312. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/README.md +0 -220
  313. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/build.md +0 -21
  314. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/check.md +0 -35
  315. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/create.md +0 -70
  316. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/fmt.md +0 -20
  317. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/index.md +0 -35
  318. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/lint.md +0 -26
  319. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/pack.md +0 -17
  320. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/run.md +0 -364
  321. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/staged.md +0 -15
  322. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/test.md +0 -18
  323. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/automatic-data-tracking.md +0 -145
  324. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/build.md +0 -40
  325. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/cache.md +0 -107
  326. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/check.md +0 -60
  327. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/ci.md +0 -62
  328. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/commit-hooks.md +0 -60
  329. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/create.md +0 -341
  330. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/dev.md +0 -24
  331. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/docker.md +0 -175
  332. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/env.md +0 -167
  333. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/fmt.md +0 -41
  334. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/github-actions-cache.md +0 -165
  335. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/ide-integration.md +0 -101
  336. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/implode.md +0 -23
  337. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/index.md +0 -134
  338. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/install.md +0 -199
  339. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/lint.md +0 -50
  340. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/migrate-rules.md +0 -347
  341. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/migrate.md +0 -197
  342. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/monorepo.md +0 -176
  343. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/pack.md +0 -69
  344. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/run.md +0 -356
  345. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/test.md +0 -35
  346. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/troubleshooting.md +0 -108
  347. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/upgrade.md +0 -101
  348. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/vpx.md +0 -66
  349. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/why.md +0 -39
  350. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/index.md +0 -12
  351. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/team.md +0 -35
  352. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/templates/generator/README.md +0 -35
  353. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/templates/monorepo/README.md +0 -29
  354. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vue/README.md +0 -58
  355. package/skills/void/docs/node_modules/void/node_modules/arktype/README.md +0 -165
  356. package/skills/void/docs/node_modules/void/node_modules/better-auth/LICENSE.md +0 -20
  357. package/skills/void/docs/node_modules/void/node_modules/better-auth/README.md +0 -32
  358. package/skills/void/docs/node_modules/void/node_modules/better-sqlite3/README.md +0 -99
  359. package/skills/void/docs/node_modules/void/node_modules/blake3-jit/README.md +0 -108
  360. package/skills/void/docs/node_modules/void/node_modules/drizzle-arktype/README.md +0 -51
  361. package/skills/void/docs/node_modules/void/node_modules/drizzle-kit/README.md +0 -79
  362. package/skills/void/docs/node_modules/void/node_modules/drizzle-orm/README.md +0 -44
  363. package/skills/void/docs/node_modules/void/node_modules/drizzle-valibot/README.md +0 -51
  364. package/skills/void/docs/node_modules/void/node_modules/drizzle-zod/README.md +0 -65
  365. package/skills/void/docs/node_modules/void/node_modules/es-module-lexer/README.md +0 -403
  366. package/skills/void/docs/node_modules/void/node_modules/estree-walker/README.md +0 -48
  367. package/skills/void/docs/node_modules/void/node_modules/hono/README.md +0 -85
  368. package/skills/void/docs/node_modules/void/node_modules/ignore/README.md +0 -452
  369. package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/CHANGELOG.md +0 -76
  370. package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/LICENSE.md +0 -21
  371. package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/README.md +0 -364
  372. package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/SECURITY.md +0 -41
  373. package/skills/void/docs/node_modules/void/node_modules/magic-string/README.md +0 -325
  374. package/skills/void/docs/node_modules/void/node_modules/ofetch/README.md +0 -398
  375. package/skills/void/docs/node_modules/void/node_modules/pathslash/README.md +0 -64
  376. package/skills/void/docs/node_modules/void/node_modules/pg/README.md +0 -96
  377. package/skills/void/docs/node_modules/void/node_modules/pglite-server/README.md +0 -135
  378. package/skills/void/docs/node_modules/void/node_modules/picocolors/README.md +0 -21
  379. package/skills/void/docs/node_modules/void/node_modules/proper-lockfile/CHANGELOG.md +0 -108
  380. package/skills/void/docs/node_modules/void/node_modules/proper-lockfile/README.md +0 -183
  381. package/skills/void/docs/node_modules/void/node_modules/tinyglobby/README.md +0 -25
  382. package/skills/void/docs/node_modules/void/node_modules/valibot/LICENSE.md +0 -9
  383. package/skills/void/docs/node_modules/void/node_modules/valibot/README.md +0 -94
  384. package/skills/void/docs/node_modules/void/node_modules/vite-plus/AGENTS.md +0 -16
  385. package/skills/void/docs/node_modules/void/node_modules/vite-plus/README.md +0 -220
  386. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/build.md +0 -21
  387. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/check.md +0 -35
  388. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/create.md +0 -70
  389. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/fmt.md +0 -20
  390. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/index.md +0 -35
  391. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/lint.md +0 -26
  392. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/pack.md +0 -17
  393. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/run.md +0 -364
  394. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/staged.md +0 -15
  395. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/test.md +0 -18
  396. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/automatic-data-tracking.md +0 -145
  397. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/build.md +0 -40
  398. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/cache.md +0 -107
  399. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/check.md +0 -60
  400. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/ci.md +0 -62
  401. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/commit-hooks.md +0 -60
  402. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/create.md +0 -341
  403. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/dev.md +0 -24
  404. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/docker.md +0 -175
  405. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/env.md +0 -167
  406. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/fmt.md +0 -41
  407. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/github-actions-cache.md +0 -165
  408. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/ide-integration.md +0 -101
  409. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/implode.md +0 -23
  410. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/index.md +0 -134
  411. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/install.md +0 -199
  412. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/lint.md +0 -50
  413. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/migrate-rules.md +0 -347
  414. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/migrate.md +0 -197
  415. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/monorepo.md +0 -176
  416. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/pack.md +0 -69
  417. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/run.md +0 -356
  418. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/test.md +0 -35
  419. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/troubleshooting.md +0 -108
  420. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/upgrade.md +0 -101
  421. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/vpx.md +0 -66
  422. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/why.md +0 -39
  423. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/index.md +0 -12
  424. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/team.md +0 -35
  425. package/skills/void/docs/node_modules/void/node_modules/vite-plus/templates/generator/README.md +0 -35
  426. package/skills/void/docs/node_modules/void/node_modules/vite-plus/templates/monorepo/README.md +0 -29
  427. package/skills/void/docs/node_modules/void/node_modules/wrangler/README.md +0 -63
  428. package/skills/void/docs/node_modules/void/node_modules/zod/README.md +0 -191
  429. package/skills/void/docs/node_modules/void/skills/migrate-vite-cloudflare-to-void/SKILL.md +0 -175
  430. package/skills/void/docs/node_modules/void/skills/void/SKILL.md +0 -76
  431. package/skills/void/docs/node_modules/void/skills/void/command/void.md +0 -7
  432. package/skills/void/docs/node_modules/void/test/e2e/README.md +0 -85
@@ -1,8 +1,7 @@
1
- import { t as StandardSchemaV1 } from "../standard-schema-DJ0HW7QP.mjs";
2
- import { r as AuthUser } from "../auth-qgMlYp7Z.mjs";
3
- import { a as CloudEnv } from "../handler-Cjh8uM3Y.mjs";
1
+ import { t as StandardSchemaV1 } from "../standard-schema-Fo_vCAZh.mjs";
2
+ import { r as AuthUser } from "../auth-DkcFflXV.mjs";
3
+ import { a as CloudEnv } from "../handler-D1hLsObx.mjs";
4
4
  import { WebSocketRouteMap } from "void/routes";
5
-
6
5
  //#region src/runtime/ws.d.ts
7
6
  type MaybePromise<T> = T | Promise<T>;
8
7
  type ParamsRecord = Record<string, string>;
@@ -17,19 +16,19 @@ type ServerEventOf<P extends keyof WebSocketRouteMap> = WsEntry<P> extends {
17
16
  server: infer T;
18
17
  } ? T : never;
19
18
  type HasParams<P extends keyof WebSocketRouteMap> = ParamsOf<P> extends Record<string, never> ? false : [keyof ParamsOf<P>] extends [never] ? false : true;
20
- type WebSocketConnection<ServerEvent = unknown> = {
19
+ export type WebSocketConnection<ServerEvent = unknown> = {
21
20
  readonly id: string;
22
21
  readonly state: unknown;
23
22
  send(event: ServerEvent): Promise<void>;
24
23
  close(code?: number, reason?: string): void;
25
24
  setState(data: unknown): void;
26
25
  };
27
- type RoomController<ServerEvent = unknown> = {
26
+ export type RoomController<ServerEvent = unknown> = {
28
27
  broadcast(event: ServerEvent, excludeIds?: Array<string>): Promise<void>;
29
28
  getConnections(): Iterable<WebSocketConnection<ServerEvent>>;
30
29
  getConnection(id: string): WebSocketConnection<ServerEvent> | undefined;
31
30
  };
32
- type WebSocketBaseContext = {
31
+ export type WebSocketBaseContext = {
33
32
  readonly id: string;
34
33
  readonly params: ParamsRecord;
35
34
  readonly user: AuthUser | null;
@@ -37,14 +36,14 @@ type WebSocketBaseContext = {
37
36
  readonly env: CloudEnv["Bindings"];
38
37
  readonly storage: DurableObjectStorage;
39
38
  };
40
- type RoomContext<ServerEvent = unknown> = WebSocketBaseContext & {
39
+ export type RoomContext<ServerEvent = unknown> = WebSocketBaseContext & {
41
40
  readonly room: RoomController<ServerEvent>;
42
41
  readonly connection: WebSocketConnection<ServerEvent>;
43
42
  };
44
- type SocketContext<ServerEvent = unknown> = WebSocketBaseContext & {
43
+ export type SocketContext<ServerEvent = unknown> = WebSocketBaseContext & {
45
44
  readonly socket: WebSocketConnection<ServerEvent>;
46
45
  };
47
- type RoomDefinition<ClientSchema extends StandardSchemaV1 = StandardSchemaV1, ServerSchema extends StandardSchemaV1 = StandardSchemaV1> = {
46
+ export type RoomDefinition<ClientSchema extends StandardSchemaV1 = StandardSchemaV1, ServerSchema extends StandardSchemaV1 = StandardSchemaV1> = {
48
47
  readonly __kind: "room";
49
48
  readonly messages: {
50
49
  client: ClientSchema;
@@ -60,7 +59,7 @@ type RoomDefinition<ClientSchema extends StandardSchemaV1 = StandardSchemaV1, Se
60
59
  }) => MaybePromise<void>;
61
60
  onRequest?: (ctx: RoomContext<StandardSchemaV1.InferInput<ServerSchema>>) => MaybePromise<Response>;
62
61
  };
63
- type SocketDefinition<ClientSchema extends StandardSchemaV1 = StandardSchemaV1, ServerSchema extends StandardSchemaV1 = StandardSchemaV1> = {
62
+ export type SocketDefinition<ClientSchema extends StandardSchemaV1 = StandardSchemaV1, ServerSchema extends StandardSchemaV1 = StandardSchemaV1> = {
64
63
  readonly __kind: "socket";
65
64
  readonly messages: {
66
65
  client: ClientSchema;
@@ -76,15 +75,15 @@ type SocketDefinition<ClientSchema extends StandardSchemaV1 = StandardSchemaV1,
76
75
  }) => MaybePromise<void>;
77
76
  onRequest?: (ctx: SocketContext<StandardSchemaV1.InferInput<ServerSchema>>) => MaybePromise<Response>;
78
77
  };
79
- type AnyWebSocketDefinition = RoomDefinition | SocketDefinition;
80
- declare function defineRoom<ClientSchema extends StandardSchemaV1, ServerSchema extends StandardSchemaV1>(definition: Omit<RoomDefinition<ClientSchema, ServerSchema>, "__kind">): RoomDefinition<ClientSchema, ServerSchema>;
81
- declare function defineWebSocket<ClientSchema extends StandardSchemaV1, ServerSchema extends StandardSchemaV1>(definition: Omit<SocketDefinition<ClientSchema, ServerSchema>, "__kind">): SocketDefinition<ClientSchema, ServerSchema>;
82
- type VoidSocketCloseEvent = {
78
+ export type AnyWebSocketDefinition = RoomDefinition | SocketDefinition;
79
+ export declare function defineRoom<ClientSchema extends StandardSchemaV1, ServerSchema extends StandardSchemaV1>(definition: Omit<RoomDefinition<ClientSchema, ServerSchema>, "__kind">): RoomDefinition<ClientSchema, ServerSchema>;
80
+ export declare function defineWebSocket<ClientSchema extends StandardSchemaV1, ServerSchema extends StandardSchemaV1>(definition: Omit<SocketDefinition<ClientSchema, ServerSchema>, "__kind">): SocketDefinition<ClientSchema, ServerSchema>;
81
+ export type VoidSocketCloseEvent = {
83
82
  code?: number;
84
83
  reason?: string;
85
84
  wasClean?: boolean;
86
85
  };
87
- type ConnectCommonOptions = {
86
+ export type ConnectCommonOptions = {
88
87
  baseURL?: string;
89
88
  reconnect?: boolean;
90
89
  reconnectDelayMs?: number;
@@ -102,7 +101,7 @@ type ListenerMap<ServerEvent> = {
102
101
  close: (event: VoidSocketCloseEvent) => void;
103
102
  error: (error: unknown) => void;
104
103
  };
105
- declare class VoidSocket<P extends keyof WebSocketRouteMap & string> {
104
+ export declare class VoidSocket<P extends keyof WebSocketRouteMap & string> {
106
105
  private readonly url;
107
106
  private readonly options;
108
107
  private socket;
@@ -117,7 +116,6 @@ declare class VoidSocket<P extends keyof WebSocketRouteMap & string> {
117
116
  close(code?: number, reason?: string): void;
118
117
  on<K extends keyof ListenerMap<ServerEventOf<P>>>(type: K, handler: ListenerMap<ServerEventOf<P>>[K]): () => void;
119
118
  }
120
- declare function connect<P extends keyof WebSocketRouteMap & string>(path: HasParams<P> extends false ? P : never): VoidSocket<P>;
121
- declare function connect<P extends keyof WebSocketRouteMap & string>(path: P, options: ConnectOptions<P>): VoidSocket<P>;
122
- //#endregion
123
- export { AnyWebSocketDefinition, ConnectCommonOptions, RoomContext, RoomController, RoomDefinition, SocketContext, SocketDefinition, VoidSocket, VoidSocketCloseEvent, WebSocketBaseContext, WebSocketConnection, connect, defineRoom, defineWebSocket };
119
+ export declare function connect<P extends keyof WebSocketRouteMap & string>(path: HasParams<P> extends false ? P : never): VoidSocket<P>;
120
+ export declare function connect<P extends keyof WebSocketRouteMap & string>(path: P, options: ConnectOptions<P>): VoidSocket<P>;
121
+ //#endregion
@@ -1,8 +1,9 @@
1
- import { a as join, i as isAbsolute, t as basename } from "./dist-DaKKDf8D.mjs";
2
- import { n as readProjectPaths } from "./project-paths-BQd7OmIo.mjs";
3
- import { n as globSync, t as glob } from "./dist-BuiRJkTd.mjs";
4
- import { c as isIdentifier, d as isObjectExpression, l as isLiteral, s as isCallExpression } from "./entry-D7yy4xVH.mjs";
5
- import { c as parseWebSocketFilename, o as isRouteEnabledForEnvironment, s as parseRouteFilename, t as scanPages } from "./scan-NU4xKGci.mjs";
1
+ import { a as isAbsolute, o as join, t as basename } from "./dist-BrsS7cai.mjs";
2
+ import { n as readProjectPaths } from "./project-paths-SK8nMHPp.mjs";
3
+ import { n as globSync, t as glob } from "./dist-m40_XgNh.mjs";
4
+ import { c as isIdentifier, d as isObjectExpression, l as isLiteral, s as isCallExpression } from "./entry-DU3oDoQ3.mjs";
5
+ import { c as parseWebSocketFilename, o as isRouteEnabledForEnvironment, s as parseRouteFilename, t as scanPages } from "./scan-CpK-57ug.mjs";
6
+ import { i as scanEmailHandlers } from "./email-Ce6SQq-i.mjs";
6
7
  import { existsSync, readFileSync } from "node:fs";
7
8
  import { pathToFileURL } from "node:url";
8
9
  import { parseSync } from "vite";
@@ -56,7 +57,8 @@ function resolveDir(root, dir) {
56
57
  function parseJobFiles(root, jobsDir, files) {
57
58
  const jobsDirPath = resolveDir(root, jobsDir);
58
59
  return files.filter((filePath) => !filePath.split("/").some((segment) => segment.startsWith("_"))).sort((leftFilePath, rightFilePath) => leftFilePath.localeCompare(rightFilePath)).map((filePath) => {
59
- const source = readFileSync(join(jobsDirPath, filePath), "utf-8");
60
+ const absPath = join(jobsDirPath, filePath);
61
+ const source = readFileSync(absPath, "utf-8");
60
62
  return {
61
63
  filePath,
62
64
  name: extractJobName(filePath),
@@ -65,7 +67,8 @@ function parseJobFiles(root, jobsDir, files) {
65
67
  });
66
68
  }
67
69
  async function scanJobs(root, jobsDir = "crons") {
68
- return parseJobFiles(root, jobsDir, await glob(`**/*.{${JOB_EXTENSIONS.join(",")}}`, {
70
+ const pattern = `**/*.{${JOB_EXTENSIONS.join(",")}}`;
71
+ return parseJobFiles(root, jobsDir, await glob(pattern, {
69
72
  cwd: resolveDir(root, jobsDir),
70
73
  absolute: false
71
74
  }).catch(() => []));
@@ -92,9 +95,9 @@ const QUEUE_EXTENSIONS = [
92
95
  "mjs"
93
96
  ];
94
97
  function extractName(filePath) {
95
- return filePath.replace(/\.[^.]+$/, "");
98
+ return filePath.replace(/\.[^.]+$/, "").replaceAll("/", "-");
96
99
  }
97
- function deriveBindingName(name) {
100
+ function deriveQueueBindingName(name) {
98
101
  return "QUEUE_" + name.toUpperCase().replace(/[^A-Z0-9]/g, "_");
99
102
  }
100
103
  function extractConsumerOption(source, name) {
@@ -104,23 +107,39 @@ function extractConsumerOption(source, name) {
104
107
  }
105
108
  function parseQueueFiles(root, queuesDir, files) {
106
109
  const queuesDirPath = isAbsolute(queuesDir) ? queuesDir : join(root, queuesDir);
107
- return files.filter((filePath) => !filePath.split("/").some((segment) => segment.startsWith("_"))).sort((leftFilePath, rightFilePath) => leftFilePath.localeCompare(rightFilePath)).map((filePath) => {
108
- const source = readFileSync(join(queuesDirPath, filePath), "utf-8");
110
+ const definitions = files.filter((filePath) => !filePath.split("/").some((segment) => segment.startsWith("_"))).sort().map((filePath) => {
111
+ const absPath = join(queuesDirPath, filePath);
112
+ const source = readFileSync(absPath, "utf-8");
109
113
  const name = extractName(filePath);
110
114
  return {
111
115
  filePath,
112
116
  name,
113
- bindingName: deriveBindingName(name),
117
+ bindingName: deriveQueueBindingName(name),
114
118
  maxBatchSize: extractConsumerOption(source, "maxBatchSize"),
115
119
  maxBatchTimeout: extractConsumerOption(source, "maxBatchTimeout"),
116
120
  maxRetries: extractConsumerOption(source, "maxRetries"),
117
121
  retryDelay: extractConsumerOption(source, "retryDelay")
118
122
  };
119
123
  });
124
+ const filesByName = /* @__PURE__ */ new Map();
125
+ for (const definition of definitions) {
126
+ const matchingFiles = filesByName.get(definition.name) ?? [];
127
+ matchingFiles.push(definition.filePath);
128
+ filesByName.set(definition.name, matchingFiles);
129
+ }
130
+ const collisions = [...filesByName].filter(([, matchingFiles]) => matchingFiles.length > 1).sort(([leftName], [rightName]) => leftName < rightName ? -1 : leftName > rightName ? 1 : 0).map(([name, matchingFiles]) => ` ${JSON.stringify(name)}: ${matchingFiles.map((file) => JSON.stringify(file)).join(", ")}`);
131
+ if (collisions.length > 0) throw new Error([
132
+ "queue: Multiple queue files resolve to the same queue name:",
133
+ ...collisions,
134
+ "Rename the conflicting files so each queue has a unique name."
135
+ ].join("\n"));
136
+ return definitions;
120
137
  }
121
138
  async function scanQueues(root, queuesDir = "queues") {
122
- return parseQueueFiles(root, queuesDir, await glob(`**/*.{${QUEUE_EXTENSIONS.join(",")}}`, {
123
- cwd: isAbsolute(queuesDir) ? queuesDir : join(root, queuesDir),
139
+ const pattern = `**/*.{${QUEUE_EXTENSIONS.join(",")}}`;
140
+ const queuesDirPath = isAbsolute(queuesDir) ? queuesDir : join(root, queuesDir);
141
+ return parseQueueFiles(root, queuesDir, await glob(pattern, {
142
+ cwd: queuesDirPath,
124
143
  absolute: false
125
144
  }).catch(() => []));
126
145
  }
@@ -128,8 +147,9 @@ function scanQueuesSync(root, queuesDir = "queues") {
128
147
  const pattern = `**/*.{${QUEUE_EXTENSIONS.join(",")}}`;
129
148
  let files;
130
149
  try {
150
+ const queuesDirPath = isAbsolute(queuesDir) ? queuesDir : join(root, queuesDir);
131
151
  files = globSync(pattern, {
132
- cwd: isAbsolute(queuesDir) ? queuesDir : join(root, queuesDir),
152
+ cwd: queuesDirPath,
133
153
  absolute: false
134
154
  });
135
155
  } catch {
@@ -268,7 +288,8 @@ function parseWebSocketFiles(root, files, paths = readProjectPaths(root), enviro
268
288
  });
269
289
  }
270
290
  async function scanWebSocketRoutes(root, paths = readProjectPaths(root), environment) {
271
- return parseWebSocketFiles(root, await glob(`**/*.{${HANDLER_EXTENSIONS.join(",")}}`, {
291
+ const pattern = `**/*.{${HANDLER_EXTENSIONS.join(",")}}`;
292
+ return parseWebSocketFiles(root, await glob(pattern, {
272
293
  cwd: paths.routesDir,
273
294
  absolute: false
274
295
  }).catch(() => []), paths, environment);
@@ -324,7 +345,7 @@ function compareRouteSpecificity(a, b) {
324
345
  */
325
346
  async function scanRoutes(root, options) {
326
347
  const paths = options?.paths ?? readProjectPaths(root);
327
- const [routeFiles, websockets, middlewareFiles, jobs, queues, pages] = await Promise.all([
348
+ const [routeFiles, websockets, middlewareFiles, jobs, queues, pages, email] = await Promise.all([
328
349
  glob(ROUTE_PATTERN, {
329
350
  cwd: paths.routesDir,
330
351
  absolute: false
@@ -339,7 +360,8 @@ async function scanRoutes(root, options) {
339
360
  scanPages(root, {
340
361
  output: options?.output,
341
362
  paths
342
- })
363
+ }),
364
+ scanEmailHandlers(paths.sourceRoot)
343
365
  ]);
344
366
  const routesDir = paths.routesDir;
345
367
  return {
@@ -351,7 +373,8 @@ async function scanRoutes(root, options) {
351
373
  middleware: parseMiddlewareDefinitions(middlewareFiles),
352
374
  jobs,
353
375
  queues,
354
- pages
376
+ pages,
377
+ email
355
378
  };
356
379
  }
357
380
  function scanMiddlewareSync(root, paths = readProjectPaths(root)) {
@@ -1,6 +1,6 @@
1
- import { a as join, n as dirname, r as extname, t as basename } from "./dist-DaKKDf8D.mjs";
2
- import { n as readProjectPaths } from "./project-paths-BQd7OmIo.mjs";
3
- import { t as glob } from "./dist-BuiRJkTd.mjs";
1
+ import { i as extname, n as dirname, o as join, t as basename } from "./dist-BrsS7cai.mjs";
2
+ import { n as readProjectPaths } from "./project-paths-SK8nMHPp.mjs";
3
+ import { t as glob } from "./dist-m40_XgNh.mjs";
4
4
  import { existsSync, readFileSync } from "node:fs";
5
5
  //#region src/router/parse-filename.ts
6
6
  const EXTENSIONS = [
@@ -194,7 +194,8 @@ async function scanPages(root, options) {
194
194
  layouts: [],
195
195
  namedLayouts: []
196
196
  };
197
- const files = await glob(`**/*.{${COMPONENT_EXTENSIONS.join(",")}}`, {
197
+ const pattern = `**/*.{${COMPONENT_EXTENSIONS.join(",")}}`;
198
+ const files = await glob(pattern, {
198
199
  cwd: pagesDir,
199
200
  absolute: false
200
201
  });
@@ -1,11 +1,16 @@
1
- import { D as outro, E as note, O as password, S as confirm, T as log, a as cliTitle, j as isCancel, w as intro, x as cancel } from "./agents-CtgBYqld.mjs";
2
- import { b as readProjectConfig, f as getToken, n as PlatformClient } from "./client-Gb71-XkG.mjs";
3
- import { r as resolveProjectBySlug, t as getRequestedProjectSlug } from "./resolve-project-BBMtLLV9.mjs";
1
+ import { A as password, C as cancel, D as log, E as intro, F as isCancel, O as note, k as outro, r as cliTitle, w as confirm } from "./output-tFQLLj26.mjs";
2
+ import { b as readDeploymentPlatform, c as getToken, x as readProjectConfig } from "./auth-W9WII-mN.mjs";
3
+ import { m as validateSecretValues } from "./env-validation-ENpMy6Ez.mjs";
4
+ import { n as PlatformClient } from "./client-Clirrol3.mjs";
5
+ import { r as resolveProjectBySlug, t as getRequestedProjectSlug } from "./resolve-project--Vxawf7z.mjs";
4
6
  import { readFileSync } from "node:fs";
5
7
  //#region src/cli/secret.ts
6
8
  async function runSecretCommand(root, args) {
7
9
  console.log();
8
10
  intro(cliTitle("secret"));
11
+ const platform = readDeploymentPlatform(root);
12
+ if (platform === "cloudflare") return runCloudflareSecretCommand(root, args);
13
+ if (platform === "none") throw new Error("secret: Deployment is disabled. Run `void init` to choose a platform.");
9
14
  const token = getToken(root);
10
15
  if (!token) {
11
16
  log.error("Not logged in. Run `void auth login` first.");
@@ -15,7 +20,8 @@ async function runSecretCommand(root, args) {
15
20
  const requestedProjectName = getRequestedProjectSlug({ projectSlug: args.projectName });
16
21
  let projectId;
17
22
  if (requestedProjectName) {
18
- const config = resolveProjectBySlug(await client.listProjects(), requestedProjectName);
23
+ const projects = await client.listProjects();
24
+ const config = resolveProjectBySlug(projects, requestedProjectName);
19
25
  if (!config) throw new Error(`secret: No project found with slug '${requestedProjectName}'.`);
20
26
  projectId = config.projectId;
21
27
  } else {
@@ -35,6 +41,10 @@ async function runSecretCommand(root, args) {
35
41
  }
36
42
  if (args.action === "put") {
37
43
  const value = args.value ?? await readSecretValue();
44
+ await validateSecretValues(root, [{
45
+ name: args.name,
46
+ value
47
+ }]);
38
48
  await client.setSecret(projectId, args.name, value);
39
49
  outro(`Secret ${args.name} set.`);
40
50
  return;
@@ -46,6 +56,7 @@ async function runSecretCommand(root, args) {
46
56
  outro("Nothing to sync.");
47
57
  return;
48
58
  }
59
+ await validateSecretValues(root, secrets);
49
60
  log.info(`Found ${secrets.length} secret(s):`);
50
61
  for (const s of secrets) log.message(` ${s.name}`);
51
62
  const proceed = await confirm({ message: `This will overwrite ${secrets.length} secret(s) in the remote environment. Continue?` });
@@ -63,6 +74,52 @@ async function runSecretCommand(root, args) {
63
74
  await client.deleteSecret(projectId, args.name);
64
75
  outro(`Secret ${args.name} deleted.`);
65
76
  }
77
+ async function runCloudflareSecretCommand(root, args) {
78
+ if (args.projectName) throw new Error("secret: --project selects a Void platform project and is not used for direct Cloudflare apps.");
79
+ const { deleteCloudflareSecret, listCloudflareSecrets, putCloudflareSecret, resolveCloudflareOperationContext, syncCloudflareSecrets } = await import("./cloudflare-operations-CPTpRW6d.mjs").then((n) => n.t);
80
+ const context = resolveCloudflareOperationContext(root);
81
+ if (args.action === "list") {
82
+ const secrets = await listCloudflareSecrets(context);
83
+ if (secrets.length === 0) {
84
+ outro("No secrets set.");
85
+ return;
86
+ }
87
+ note(secrets.map((name) => ` ${name}`).join("\n"), "Secrets");
88
+ outro(`${secrets.length} secret(s)`);
89
+ return;
90
+ }
91
+ if (args.action === "put") {
92
+ const value = args.value ?? await readSecretValue();
93
+ await validateSecretValues(root, [{
94
+ name: args.name,
95
+ value
96
+ }]);
97
+ await putCloudflareSecret(context, args.name, value);
98
+ outro(`Secret ${args.name} set.`);
99
+ return;
100
+ }
101
+ if (args.action === "sync") {
102
+ const secrets = parseDotenvFile(args.file);
103
+ if (secrets.length === 0) {
104
+ log.warn("No secrets found in file.");
105
+ outro("Nothing to sync.");
106
+ return;
107
+ }
108
+ await validateSecretValues(root, secrets);
109
+ log.info(`Found ${secrets.length} secret(s):`);
110
+ for (const secret of secrets) log.message(` ${secret.name}`);
111
+ const proceed = await confirm({ message: `This will overwrite ${secrets.length} secret(s) in the Cloudflare Worker. Continue?` });
112
+ if (isCancel(proceed) || !proceed) {
113
+ cancel("Secret sync cancelled.");
114
+ process.exit(0);
115
+ }
116
+ await syncCloudflareSecrets(context, secrets);
117
+ outro(`Synced ${secrets.length} secret(s).`);
118
+ return;
119
+ }
120
+ await deleteCloudflareSecret(context, args.name);
121
+ outro(`Secret ${args.name} deleted.`);
122
+ }
66
123
  const SECRET_KEY_RE = /^[A-Z][A-Z0-9_]*$/;
67
124
  function parseDotenvFile(filePath) {
68
125
  const content = readFileSync(filePath, "utf-8");
@@ -95,7 +152,7 @@ async function readSecretValue() {
95
152
  message: "Enter secret value:",
96
153
  mask: "*"
97
154
  });
98
- if (isCancel(result)) {
155
+ if (isCancel(result) || typeof result === "symbol") {
99
156
  cancel("Secret command cancelled.");
100
157
  process.exit(0);
101
158
  }
@@ -1,5 +1,5 @@
1
- import { a as join, s as relative } from "./dist-DaKKDf8D.mjs";
2
- import { T as log, r as getPackageDir } from "./agents-CtgBYqld.mjs";
1
+ import { c as relative, o as join } from "./dist-BrsS7cai.mjs";
2
+ import { D as log, p as getPackageDir } from "./output-tFQLLj26.mjs";
3
3
  import { existsSync, mkdirSync, readFileSync, readdirSync, readlinkSync, symlinkSync } from "node:fs";
4
4
  //#region src/cli/skills.ts
5
5
  function parseSkills(skillsDir) {
@@ -28,7 +28,8 @@ function linkSkills(root, skillsDir, skills, agentSkillsDir) {
28
28
  let linked = 0;
29
29
  for (const skill of skills) {
30
30
  const linkPath = join(targetDir, skill.dirName);
31
- const relativeTarget = relative(targetDir, join(skillsDir, skill.dirName));
31
+ const sourcePath = join(skillsDir, skill.dirName);
32
+ const relativeTarget = relative(targetDir, sourcePath);
32
33
  if (existsSync(linkPath)) {
33
34
  try {
34
35
  if (readlinkSync(linkPath) === relativeTarget) {
@@ -46,7 +47,8 @@ function linkSkills(root, skillsDir, skills, agentSkillsDir) {
46
47
  return linked;
47
48
  }
48
49
  function linkSkillsForSpecificAgents(root, agents) {
49
- const skillsDir = join(getPackageDir(), "skills");
50
+ const packageDir = getPackageDir();
51
+ const skillsDir = join(packageDir, "skills");
50
52
  const skills = parseSkills(skillsDir);
51
53
  if (skills.length === 0) return 0;
52
54
  if (agents.length === 0) return 0;
@@ -0,0 +1,25 @@
1
+ //#region src/migrations/sqlite-validation.ts
2
+ var SqliteMigrationError = class extends Error {
3
+ constructor(name, cause) {
4
+ super(`Migration ${name} could not be applied to a fresh SQLite database: ${cause instanceof Error ? cause.message : String(cause)}`, { cause });
5
+ this.name = "SqliteMigrationError";
6
+ }
7
+ };
8
+ /** Replay migration history without touching an application's database. Caller owns the result. */
9
+ async function openMigrationValidationDatabase(migrations) {
10
+ const { DatabaseSync } = await import("node:sqlite");
11
+ const db = new DatabaseSync(":memory:", { enableDoubleQuotedStringLiterals: false });
12
+ try {
13
+ for (const migration of migrations) try {
14
+ db.exec(migration.sql);
15
+ } catch (cause) {
16
+ throw new SqliteMigrationError(migration.name, cause);
17
+ }
18
+ return db;
19
+ } catch (error) {
20
+ db.close();
21
+ throw error;
22
+ }
23
+ }
24
+ //#endregion
25
+ export { openMigrationValidationDatabase as n, SqliteMigrationError as t };
@@ -1,11 +1,11 @@
1
1
  //#region src/standard-schema.d.ts
2
2
  /**
3
- * Standard Schema V1 types, inlined from the spec.
4
- * https://github.com/standard-schema/standard-schema
5
- *
6
- * Per the spec's design, libraries may copy these types directly
7
- * to avoid requiring `@standard-schema/spec` as a dependency.
8
- */
3
+ * Standard Schema V1 types, inlined from the spec.
4
+ * https://github.com/standard-schema/standard-schema
5
+ *
6
+ * Per the spec's design, libraries may copy these types directly
7
+ * to avoid requiring `@standard-schema/spec` as a dependency.
8
+ */
9
9
  type StandardSchemaV1<Input = unknown, Output = Input> = {
10
10
  readonly "~standard": StandardSchemaV1.Props<Input, Output>;
11
11
  };