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,13 +1,12 @@
1
1
  import { LiveClientEvent } from "./live.mjs";
2
-
3
2
  //#region src/runtime/live-client.d.ts
4
- type LiveSubscribeOptions<Data = unknown> = {
3
+ export type LiveSubscribeOptions<Data = unknown> = {
5
4
  id: string;
6
5
  topic: string;
7
6
  lastEventId?: string;
8
7
  onEvent?: (event: LiveClientEvent<Data>) => void;
9
8
  };
10
- type ConnectLiveStreamOptions = {
9
+ export type ConnectLiveStreamOptions = {
11
10
  withCredentials?: boolean;
12
11
  fetch?: typeof fetch;
13
12
  headers?: HeadersInit | (() => HeadersInit | Promise<HeadersInit>);
@@ -16,7 +15,7 @@ type ConnectLiveStreamOptions = {
16
15
  retryDelay?: number;
17
16
  onError?: (error: Event | Error) => void;
18
17
  };
19
- type LiveClient = {
18
+ export type LiveClient = {
20
19
  readonly connectionId: string;
21
20
  subscribe<Data = unknown>(options: LiveSubscribeOptions<Data>): Promise<() => Promise<void>>;
22
21
  close(): void;
@@ -29,6 +28,5 @@ type EventSourceLike = {
29
28
  type EventSourceConstructor = new (url: string, options?: {
30
29
  withCredentials?: boolean;
31
30
  }) => EventSourceLike;
32
- declare function connectLiveStream(url: string | URL, options?: ConnectLiveStreamOptions): LiveClient;
33
- //#endregion
34
- export { ConnectLiveStreamOptions, LiveClient, LiveSubscribeOptions, connectLiveStream };
31
+ export declare function connectLiveStream(url: string | URL, options?: ConnectLiveStreamOptions): LiveClient;
32
+ //#endregion
@@ -230,13 +230,15 @@ function connectLiveStream(url, options = {}) {
230
230
  ...subscription.lastEventId !== void 0 && { lastEventId: subscription.lastEventId }
231
231
  });
232
232
  } catch (error) {
233
- if (subscriptionVersions.get(subscription.id) === version) if (previousSubscription) {
234
- subscriptions.set(subscription.id, previousSubscription);
235
- if (previousVersion != null) subscriptionVersions.set(subscription.id, previousVersion);
236
- else subscriptionVersions.delete(subscription.id);
237
- } else {
238
- subscriptions.delete(subscription.id);
239
- subscriptionVersions.delete(subscription.id);
233
+ if (subscriptionVersions.get(subscription.id) === version) {
234
+ if (previousSubscription) {
235
+ subscriptions.set(subscription.id, previousSubscription);
236
+ if (previousVersion != null) subscriptionVersions.set(subscription.id, previousVersion);
237
+ else subscriptionVersions.delete(subscription.id);
238
+ } else {
239
+ subscriptions.delete(subscription.id);
240
+ subscriptionVersions.delete(subscription.id);
241
+ }
240
242
  }
241
243
  queueMicrotask(closeIfIdle);
242
244
  throw error;
@@ -1,13 +1,12 @@
1
1
  /// <reference types="@cloudflare/workers-types" />
2
2
  //#region src/runtime/live-server.d.ts
3
3
  type LiveDurableObjectEnv = Record<string, unknown>;
4
- type LiveDurableObjectInstance = {
4
+ export type LiveDurableObjectInstance = {
5
5
  fetch(request: Request): Promise<Response>;
6
6
  alarm?(): Promise<void>;
7
7
  };
8
- type LiveDurableObjectClass = {
8
+ export type LiveDurableObjectClass = {
9
9
  new (state: DurableObjectState, env: LiveDurableObjectEnv): LiveDurableObjectInstance;
10
10
  };
11
- declare function createLiveDurableObject(): LiveDurableObjectClass;
12
- //#endregion
13
- export { LiveDurableObjectClass, LiveDurableObjectInstance, createLiveDurableObject };
11
+ export declare function createLiveDurableObject(): LiveDurableObjectClass;
12
+ //#endregion
@@ -1,14 +1,13 @@
1
1
  /// <reference types="@cloudflare/workers-types" />
2
- import { r as AuthUser } from "../auth-qgMlYp7Z.mjs";
3
- import { a as CloudEnv, r as CloudContext } from "../handler-Cjh8uM3Y.mjs";
4
-
2
+ import { r as AuthUser } from "../auth-DkcFflXV.mjs";
3
+ import { a as CloudEnv, r as CloudContext } from "../handler-D1hLsObx.mjs";
5
4
  //#region src/runtime/live.d.ts
6
5
  type MaybePromise<T> = T | Promise<T>;
7
- type LiveControlRequest = {
6
+ export type LiveControlRequest = {
8
7
  connectionId: string;
9
8
  operations: Array<LiveControlOperation>;
10
9
  };
11
- type LiveControlOperation = {
10
+ export type LiveControlOperation = {
12
11
  kind: "subscribe";
13
12
  id: string;
14
13
  topic: string;
@@ -17,12 +16,12 @@ type LiveControlOperation = {
17
16
  kind: "unsubscribe";
18
17
  id: string;
19
18
  };
20
- type LiveControlErrorCode = "BAD_REQUEST" | "CONNECTION_CLOSED" | "CONNECTION_NOT_FOUND" | "FORBIDDEN" | "INVALID_SUBSCRIPTION_ID" | "INVALID_TOPIC" | "OWNER_MISMATCH" | "SUBSCRIPTION_LIMIT" | "TOPIC_FULL" | "PAYLOAD_TOO_LARGE" | "INTERNAL_ERROR";
21
- type LiveControlError = {
19
+ export type LiveControlErrorCode = "BAD_REQUEST" | "CONNECTION_CLOSED" | "CONNECTION_NOT_FOUND" | "FORBIDDEN" | "INVALID_SUBSCRIPTION_ID" | "INVALID_TOPIC" | "OWNER_MISMATCH" | "SUBSCRIPTION_LIMIT" | "TOPIC_FULL" | "PAYLOAD_TOO_LARGE" | "INTERNAL_ERROR";
20
+ export type LiveControlError = {
22
21
  code: LiveControlErrorCode;
23
22
  message: string;
24
23
  };
25
- type LiveControlOperationResult = {
24
+ export type LiveControlOperationResult = {
26
25
  ok: true;
27
26
  kind: "subscribe" | "unsubscribe";
28
27
  id: string;
@@ -33,7 +32,7 @@ type LiveControlOperationResult = {
33
32
  id: string;
34
33
  error: LiveControlError;
35
34
  };
36
- type LiveControlResponse = {
35
+ export type LiveControlResponse = {
37
36
  accepted: true;
38
37
  connectionId: string;
39
38
  results: Array<LiveControlOperationResult>;
@@ -41,34 +40,34 @@ type LiveControlResponse = {
41
40
  accepted: false;
42
41
  error: LiveControlError;
43
42
  };
44
- type LiveClientEvent<Data = unknown> = {
43
+ export type LiveClientEvent<Data = unknown> = {
45
44
  subscriptionId: string;
46
45
  topic: string;
47
46
  type?: string;
48
47
  eventId?: string;
49
48
  data: Data;
50
49
  };
51
- type LivePublishOptions = {
50
+ export type LivePublishOptions = {
52
51
  type?: string;
53
52
  eventId?: string;
54
53
  };
55
- type LiveConnectOptions = {
54
+ export type LiveConnectOptions = {
56
55
  owner?: string | null;
57
56
  user?: unknown;
58
57
  };
59
- type LiveControlOptions = LiveConnectOptions;
60
- type LiveHookContext = {
58
+ export type LiveControlOptions = LiveConnectOptions;
59
+ export type LiveHookContext = {
61
60
  request: Request;
62
61
  env: CloudEnv["Bindings"];
63
62
  user: AuthUser | unknown | null;
64
63
  owner: string | null;
65
64
  };
66
- type LiveConnectHookContext = LiveHookContext & {
65
+ export type LiveConnectHookContext = LiveHookContext & {
67
66
  connection: {
68
67
  id: string;
69
68
  };
70
69
  };
71
- type LiveSubscribeHookContext = LiveHookContext & {
70
+ export type LiveSubscribeHookContext = LiveHookContext & {
72
71
  connection: {
73
72
  id: string;
74
73
  };
@@ -78,7 +77,7 @@ type LiveSubscribeHookContext = LiveHookContext & {
78
77
  topic: string;
79
78
  lastEventId?: string;
80
79
  };
81
- type LiveStreamOptions = {
80
+ export type LiveStreamOptions = {
82
81
  id: string;
83
82
  allowAnonymousControl?: boolean;
84
83
  identifyConnection?: (ctx: LiveHookContext) => MaybePromise<string | null | undefined>;
@@ -86,7 +85,7 @@ type LiveStreamOptions = {
86
85
  onSubscribe?: (ctx: LiveSubscribeHookContext) => MaybePromise<Response | void>;
87
86
  limits?: Partial<LiveLimits>;
88
87
  };
89
- type LiveLimits = {
88
+ export type LiveLimits = {
90
89
  maxSubscriptionsPerConnection: number;
91
90
  maxSubscriptionsPerTopic: number;
92
91
  maxOperationsPerControlRequest: number;
@@ -94,14 +93,13 @@ type LiveLimits = {
94
93
  maxEncodedEventSize: number;
95
94
  deliveryAttemptTimeoutMs: number;
96
95
  };
97
- type LiveStream = {
96
+ export type LiveStream = {
98
97
  connect(ctx: CloudContext, options?: LiveConnectOptions): Promise<Response>;
99
98
  control(ctx: CloudContext, options?: LiveControlOptions): Promise<Response>;
100
99
  publish(topic: string, data: unknown, options?: LivePublishOptions): Promise<void>;
101
100
  withEnv(env: unknown): Pick<LiveStream, "publish">;
102
101
  };
103
- declare function __setLiveBindingName(name: string): void;
104
- declare function __getLiveBindingName(): string;
105
- declare function defineLiveStream(options: LiveStreamOptions): LiveStream;
106
- //#endregion
107
- export { LiveClientEvent, LiveConnectHookContext, LiveConnectOptions, LiveControlError, LiveControlErrorCode, LiveControlOperation, LiveControlOperationResult, LiveControlOptions, LiveControlRequest, LiveControlResponse, LiveHookContext, LiveLimits, LivePublishOptions, LiveStream, LiveStreamOptions, LiveSubscribeHookContext, __getLiveBindingName, __setLiveBindingName, defineLiveStream };
102
+ export declare function __setLiveBindingName(name: string): void;
103
+ export declare function __getLiveBindingName(): string;
104
+ export declare function defineLiveStream(options: LiveStreamOptions): LiveStream;
105
+ //#endregion
@@ -8,7 +8,7 @@ const DEFAULT_LIMITS = {
8
8
  maxSubscriptionsPerTopic: 256,
9
9
  maxOperationsPerControlRequest: 100,
10
10
  maxQueuedEventsPerConnection: 100,
11
- maxEncodedEventSize: 64 * 1024,
11
+ maxEncodedEventSize: 65536,
12
12
  deliveryAttemptTimeoutMs: 1500
13
13
  };
14
14
  const MAX_SUBSCRIPTIONS_PER_TOPIC = 256;
@@ -1,24 +1,23 @@
1
1
  //#region src/runtime/log.d.ts
2
2
  /**
3
- * Structured logger that emits each entry as a single stringified-JSON line
4
- * to `console.error/warn/info`. The shape `{ msg, ...fields }` is a stable
5
- * contract: Cloudflare Tail captures each call as one `logs[]` entry with
6
- * the right `level`, and platform-side log filtering can match on `msg` or
7
- * any custom field.
8
- *
9
- * @example
10
- * ```ts
11
- * import { logger } from "void/log";
12
- *
13
- * logger.error("websocket failed", { jobId, attempt: 3 });
14
- * logger.info("user signed in", { userId });
15
- * ```
16
- */
3
+ * Structured logger that emits each entry as a single stringified-JSON line
4
+ * to `console.error/warn/info`. The shape `{ msg, ...fields }` is a stable
5
+ * contract: Cloudflare Tail captures each call as one `logs[]` entry with
6
+ * the right `level`, and platform-side log filtering can match on `msg` or
7
+ * any custom field.
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * import { logger } from "void/log";
12
+ *
13
+ * logger.error("websocket failed", { jobId, attempt: 3 });
14
+ * logger.info("user signed in", { userId });
15
+ * ```
16
+ */
17
17
  type Fields = Record<string, unknown>;
18
- declare const logger: {
18
+ export declare const logger: {
19
19
  error(message: string, fields?: Fields): void;
20
20
  warn(message: string, fields?: Fields): void;
21
21
  info(message: string, fields?: Fields): void;
22
22
  };
23
- //#endregion
24
- export { logger };
23
+ //#endregion
@@ -0,0 +1,4 @@
1
+ import { MigrationEntry } from "./migration-handler.mjs";
2
+ //#region src/runtime/migration-handler-mysql.d.ts
3
+ export declare function createMigrationHandler(env: Record<string, unknown>, migrations: Array<MigrationEntry>, _dialect: "sqlite" | "postgresql" | "mysql", runAuthMigrations?: () => Promise<void>): (request: Request) => Promise<Response>;
4
+ //#endregion
@@ -0,0 +1,81 @@
1
+ //#region src/runtime/migration-handler-mysql.ts
2
+ function createMigrationHandler(env, migrations, _dialect, runAuthMigrations) {
3
+ return async (request) => {
4
+ const token = request.headers.get("x-void-internal");
5
+ if (!token || token !== env.__VOID_PROXY_TOKEN) return Response.json({
6
+ ok: false,
7
+ error: "unauthorized",
8
+ migrations: []
9
+ }, { status: 401 });
10
+ try {
11
+ const result = await runMySqlMigrations(env, migrations);
12
+ if (result.ok && runAuthMigrations) await runAuthMigrations();
13
+ return Response.json(result);
14
+ } catch (error) {
15
+ return Response.json({
16
+ ok: false,
17
+ error: error instanceof Error ? error.message : String(error),
18
+ migrations: []
19
+ }, { status: 500 });
20
+ }
21
+ };
22
+ }
23
+ async function runMySqlMigrations(env, migrations) {
24
+ const hyperdrive = env.HYPERDRIVE;
25
+ if (!hyperdrive?.connectionString) return {
26
+ ok: false,
27
+ error: "no HYPERDRIVE binding found",
28
+ migrations: []
29
+ };
30
+ const { createConnection } = await import("mysql2/promise");
31
+ const connection = await createConnection({
32
+ uri: hyperdrive.connectionString,
33
+ multipleStatements: true
34
+ });
35
+ try {
36
+ await connection.query("CREATE TABLE IF NOT EXISTS `_void_migrations` (`name` VARCHAR(255) PRIMARY KEY, `applied_at` VARCHAR(64) NOT NULL)");
37
+ const [rows] = await connection.query("SELECT `name` FROM `_void_migrations`");
38
+ const applied = new Set(rows.map((row) => String(row.name)));
39
+ const results = [];
40
+ for (const migration of migrations) {
41
+ if (applied.has(migration.name)) {
42
+ results.push({
43
+ name: migration.name,
44
+ applied: false,
45
+ durationMs: 0
46
+ });
47
+ continue;
48
+ }
49
+ const start = Date.now();
50
+ try {
51
+ await connection.query(migration.sql);
52
+ await connection.query("INSERT INTO `_void_migrations` (`name`, `applied_at`) VALUES (?, ?)", [migration.name, (/* @__PURE__ */ new Date()).toISOString()]);
53
+ results.push({
54
+ name: migration.name,
55
+ applied: true,
56
+ durationMs: Date.now() - start
57
+ });
58
+ } catch (error) {
59
+ results.push({
60
+ name: migration.name,
61
+ applied: false,
62
+ durationMs: Date.now() - start,
63
+ error: error instanceof Error ? error.message : String(error)
64
+ });
65
+ return {
66
+ ok: false,
67
+ migrations: results,
68
+ error: `migration ${migration.name} failed`
69
+ };
70
+ }
71
+ }
72
+ return {
73
+ ok: true,
74
+ migrations: results
75
+ };
76
+ } finally {
77
+ await connection.end();
78
+ }
79
+ }
80
+ //#endregion
81
+ export { createMigrationHandler };
@@ -1,6 +1,4 @@
1
1
  import { MigrationEntry } from "./migration-handler.mjs";
2
-
3
2
  //#region src/runtime/migration-handler-pg.d.ts
4
- declare function createMigrationHandler(env: Record<string, unknown>, migrations: Array<MigrationEntry>, _dialect: "sqlite" | "postgresql", runAuthMigrations?: () => Promise<void>): (request: Request) => Promise<Response>;
5
- //#endregion
6
- export { createMigrationHandler };
3
+ export declare function createMigrationHandler(env: Record<string, unknown>, migrations: Array<MigrationEntry>, _dialect: "sqlite" | "postgresql" | "mysql", runAuthMigrations?: () => Promise<void>): (request: Request) => Promise<Response>;
4
+ //#endregion
@@ -1,9 +1,9 @@
1
1
  //#region src/runtime/migration-handler.d.ts
2
- type MigrationEntry = {
2
+ export type MigrationEntry = {
3
3
  name: string;
4
4
  sql: string;
5
5
  };
6
- type MigrationResult = {
6
+ export type MigrationResult = {
7
7
  name: string;
8
8
  applied: boolean;
9
9
  durationMs: number;
@@ -11,7 +11,7 @@ type MigrationResult = {
11
11
  status?: "applied" | "skipped" | "failed";
12
12
  stability?: "stable" | "legacy";
13
13
  };
14
- type MigrationResponse = {
14
+ export type MigrationResponse = {
15
15
  ok: boolean;
16
16
  migrations: Array<MigrationResult>;
17
17
  error?: string;
@@ -46,6 +46,5 @@ type MigrationPlanBundle = {
46
46
  destructiveValidation: "passed";
47
47
  plans: Array<MigrationExecutionPlan>;
48
48
  };
49
- declare function createMigrationHandler(env: Record<string, unknown>, migrations: Array<MigrationEntry> | undefined, _dialect: "sqlite" | "postgresql", runAuthMigrations?: () => Promise<void>, planBundle?: MigrationPlanBundle): (request: Request) => Promise<Response>;
50
- //#endregion
51
- export { MigrationEntry, MigrationResponse, MigrationResult, createMigrationHandler };
49
+ export declare function createMigrationHandler(env: Record<string, unknown>, migrations: Array<MigrationEntry> | undefined, _dialect: "sqlite" | "postgresql" | "mysql", runAuthMigrations?: () => Promise<void>, planBundle?: MigrationPlanBundle): (request: Request) => Promise<Response>;
50
+ //#endregion
@@ -372,9 +372,10 @@ async function runD1LegacyMigrations(db, migrations) {
372
372
  const start = Date.now();
373
373
  try {
374
374
  const statements = splitMigrationSql(migration.sql);
375
- if (statements.length === 1) if (isSingleSqlStatement(statements[0])) await db.prepare(statements[0]).run();
376
- else await db.exec(migration.sql);
377
- else for (const statement of statements) await db.prepare(statement).run();
375
+ if (statements.length === 1) {
376
+ if (isSingleSqlStatement(statements[0])) await db.prepare(statements[0]).run();
377
+ else await db.exec(migration.sql);
378
+ } else for (const statement of statements) await db.prepare(statement).run();
378
379
  await db.prepare("INSERT OR IGNORE INTO _void_migrations (name, applied_at) VALUES (?, ?)").bind(migration.name, (/* @__PURE__ */ new Date()).toISOString()).run();
379
380
  migrationResults.push({
380
381
  name: migration.name,
@@ -1,7 +1,6 @@
1
1
  //#region src/runtime/queues.d.ts
2
2
  /** Stub interface augmented by generated .void/queues.d.ts */
3
- interface QueueMap {}
3
+ export interface QueueMap {}
4
4
  /** Typed queue producers — resolves `QUEUE_*` bindings from the active runtime environment. */
5
- declare const queues: QueueMap;
6
- //#endregion
7
- export { QueueMap, queues };
5
+ export declare const queues: QueueMap;
6
+ //#endregion
@@ -2,7 +2,8 @@ import { requireRuntimeBinding } from "./env.mjs";
2
2
  //#region src/runtime/queues.ts
3
3
  /** Typed queue producers — resolves `QUEUE_*` bindings from the active runtime environment. */
4
4
  const queues = new Proxy({}, { get(_, name) {
5
- return requireRuntimeBinding(`QUEUE_${name.toUpperCase().replace(/[^A-Z0-9]/g, "_")}`);
5
+ const bindingName = `QUEUE_${name.toUpperCase().replace(/[^A-Z0-9]/g, "_")}`;
6
+ return requireRuntimeBinding(bindingName);
6
7
  } });
7
8
  //#endregion
8
9
  export { queues };
@@ -1,15 +1,13 @@
1
1
  import { Hono } from "hono";
2
-
3
2
  //#region src/runtime/remote/binding-handler.d.ts
4
3
  /**
5
- * Creates a Hono app that handles `/__void/*` routes for native binding access.
6
- * Deployed user workers expose this so the proxy can dispatch D1/KV/R2 operations
7
- * via Workers for Platforms instead of the Cloudflare REST API (~1-5ms vs ~50-200ms).
8
- *
9
- * Authenticated via `x-void-internal` header against `env.__VOID_PROXY_TOKEN`.
10
- * Response formats match the proxy's existing REST API responses so the
11
- * ProxyClient doesn't need changes.
12
- */
13
- declare function createBindingHandler(env: Record<string, unknown>): Hono;
14
- //#endregion
15
- export { createBindingHandler };
4
+ * Creates a Hono app that handles `/__void/*` routes for native binding access.
5
+ * Deployed user workers expose this so the proxy can dispatch D1/KV/R2 operations
6
+ * via Workers for Platforms instead of the Cloudflare REST API (~1-5ms vs ~50-200ms).
7
+ *
8
+ * Authenticated via `x-void-internal` header against `env.__VOID_PROXY_TOKEN`.
9
+ * Response formats match the proxy's existing REST API responses so the
10
+ * ProxyClient doesn't need changes.
11
+ */
12
+ export declare function createBindingHandler(env: Record<string, unknown>): Hono;
13
+ //#endregion
@@ -1,3 +1,4 @@
1
+ import { t as parseR2Conditional } from "../../r2-conditions-D1Wk8i7b.mjs";
1
2
  import { Hono } from "hono";
2
3
  //#region src/runtime/remote/binding-handler.ts
3
4
  /**
@@ -147,14 +148,34 @@ function createBindingHandler(env) {
147
148
  if (obj.httpEtag) headers.set("etag", obj.httpEtag);
148
149
  return new Response(obj.body, { headers });
149
150
  });
150
- app.post("/r2/put", async (c) => {
151
+ app.on("POST", ["/r2/put", "/r2/put-conditional"], async (c) => {
151
152
  const body = await c.req.json();
152
153
  if (!body.binding || !body.key) return c.json({ error: "binding and key required" }, 400);
153
154
  const bucket = env[body.binding];
154
155
  if (!bucket) return c.json({ error: `unknown binding "${body.binding}"` }, 404);
155
156
  const data = body.base64 ? Uint8Array.from(atob(body.base64), (ch) => ch.charCodeAt(0)) : new TextEncoder().encode(body.value ?? "");
156
- await bucket.put(body.key, data, { httpMetadata: { contentType: body.contentType ?? "application/octet-stream" } });
157
- return c.json({ success: true });
157
+ let onlyIf;
158
+ try {
159
+ if (body.onlyIf !== void 0 || c.req.path.endsWith("/put-conditional")) onlyIf = parseR2Conditional(body.onlyIf);
160
+ } catch (error) {
161
+ return c.json({ error: String(error) }, 400);
162
+ }
163
+ const obj = await bucket.put(body.key, data, {
164
+ httpMetadata: { contentType: body.contentType ?? "application/octet-stream" },
165
+ customMetadata: body.customMetadata,
166
+ onlyIf
167
+ });
168
+ if (!obj) return c.json(null);
169
+ return c.json({
170
+ key: obj.key,
171
+ size: obj.size,
172
+ etag: obj.etag,
173
+ version: obj.version,
174
+ lastModified: obj.uploaded.toISOString(),
175
+ contentType: obj.httpMetadata?.contentType ?? "application/octet-stream",
176
+ httpMetadata: obj.httpMetadata,
177
+ customMetadata: obj.customMetadata
178
+ });
158
179
  });
159
180
  app.post("/r2/delete", async (c) => {
160
181
  const body = await c.req.json();
@@ -1,12 +1,11 @@
1
1
  //#region src/runtime/remote/index.d.ts
2
2
  /**
3
- * Replace local D1/KV/R2 bindings with proxy-backed versions.
4
- * Called from the generated worker entry point when `__VOID_REMOTE` is set.
5
- */
6
- declare function createRemoteEnv(env: Record<string, unknown>, bindingNames?: {
3
+ * Replace local D1/KV/R2 bindings with proxy-backed versions.
4
+ * Called from the generated worker entry point when `__VOID_REMOTE` is set.
5
+ */
6
+ export declare function createRemoteEnv(env: Record<string, unknown>, bindingNames?: {
7
7
  d1?: string;
8
8
  kv?: string;
9
9
  r2?: string;
10
10
  }): Record<string, unknown>;
11
- //#endregion
12
- export { createRemoteEnv };
11
+ //#endregion
@@ -1,4 +1,5 @@
1
- import { t as cfAccessHeaders } from "../../cf-access-Bqw81xAf.mjs";
1
+ import { t as cfAccessHeaders } from "../../cf-access-AJ1ehiFR.mjs";
2
+ import { n as serializeR2Conditional } from "../../r2-conditions-D1Wk8i7b.mjs";
2
3
  //#region src/runtime/remote/client.ts
3
4
  /**
4
5
  * HTTP client for the remote bindings proxy (proxy.void.cloud).
@@ -15,7 +16,7 @@ var ProxyClient = class {
15
16
  this.projectId = projectId;
16
17
  this.authHeaders = {
17
18
  Authorization: `Bearer ${token}`,
18
- ...cfAccessHeaders(env)
19
+ ...cfAccessHeaders(env, proxyUrl)
19
20
  };
20
21
  }
21
22
  /**
@@ -115,22 +116,21 @@ var ProxyD1Database = class {
115
116
  * D1PreparedStatement implementation backed by the remote proxy.
116
117
  * Accumulates SQL and params synchronously; terminal methods (all, first, run, raw) make the HTTP call.
117
118
  */
118
- var ProxyD1PreparedStatement = class {
119
+ var ProxyD1PreparedStatement = class ProxyD1PreparedStatement {
119
120
  client;
120
121
  binding;
121
122
  /** @internal */
122
123
  _sql;
123
124
  /** @internal */
124
125
  _params;
125
- constructor(client, binding, sql) {
126
+ constructor(client, binding, sql, params = []) {
126
127
  this.client = client;
127
128
  this.binding = binding;
128
129
  this._sql = sql;
129
- this._params = [];
130
+ this._params = params;
130
131
  }
131
132
  bind(...values) {
132
- this._params = values;
133
- return this;
133
+ return new ProxyD1PreparedStatement(this.client, this.binding, this._sql, values);
134
134
  }
135
135
  async all() {
136
136
  return await (await this.client.fetch("/d1/query", {
@@ -226,9 +226,7 @@ var ProxyKVNamespace = class {
226
226
  case "stream":
227
227
  value = await this.get(key, "stream");
228
228
  break;
229
- default:
230
- value = await this.get(key);
231
- break;
229
+ default: value = await this.get(key);
232
230
  }
233
231
  return {
234
232
  value,
@@ -333,7 +331,7 @@ var ProxyR2Bucket = class {
333
331
  if (typeof value === "string") textValue = value;
334
332
  else if (value === null) textValue = "";
335
333
  else if (value instanceof ArrayBuffer) base64 = arrayBufferToBase64(value);
336
- else if (ArrayBuffer.isView(value)) base64 = arrayBufferToBase64(value.buffer);
334
+ else if (ArrayBuffer.isView(value)) base64 = arrayBufferToBase64(value.buffer, value.byteOffset, value.byteLength);
337
335
  else if (value instanceof Blob) base64 = arrayBufferToBase64(await value.arrayBuffer());
338
336
  else {
339
337
  const reader = value.getReader();
@@ -356,7 +354,7 @@ var ProxyR2Bucket = class {
356
354
  binding: this.binding,
357
355
  key
358
356
  };
359
- if (base64) body.base64 = base64;
357
+ if (base64 !== void 0) body.base64 = base64;
360
358
  else body.value = textValue;
361
359
  if (options?.httpMetadata) {
362
360
  const meta = options.httpMetadata;
@@ -364,7 +362,12 @@ var ProxyR2Bucket = class {
364
362
  else body.contentType = meta.contentType;
365
363
  }
366
364
  if (options?.customMetadata) body.customMetadata = options.customMetadata;
367
- await this.client.fetch("/r2/put", body);
365
+ const conditional = options?.onlyIf !== void 0;
366
+ if (conditional) body.onlyIf = serializeR2Conditional(options.onlyIf);
367
+ const result = await (await this.client.fetch(conditional ? "/r2/put-conditional" : "/r2/put", body)).json();
368
+ if (result === null) return null;
369
+ if ("key" in result) return makeR2Object(result);
370
+ if (conditional) throw new Error("remote: R2 conditional put requires a compatible Void platform and deployment.");
368
371
  return makeR2Object({
369
372
  key,
370
373
  size: 0,
@@ -407,8 +410,8 @@ var ProxyR2Bucket = class {
407
410
  throw new Error("resumeMultipartUpload() is not supported with remote bindings");
408
411
  }
409
412
  };
410
- function arrayBufferToBase64(buffer) {
411
- const bytes = new Uint8Array(buffer);
413
+ function arrayBufferToBase64(buffer, byteOffset = 0, byteLength = buffer.byteLength) {
414
+ const bytes = new Uint8Array(buffer, byteOffset, byteLength);
412
415
  let binary = "";
413
416
  for (const byte of bytes) binary += String.fromCharCode(byte);
414
417
  return btoa(binary);
@@ -416,14 +419,14 @@ function arrayBufferToBase64(buffer) {
416
419
  function makeR2Object(data) {
417
420
  return {
418
421
  key: data.key,
419
- version: "",
422
+ version: data.version ?? "",
420
423
  size: data.size,
421
424
  etag: data.etag,
422
425
  httpEtag: data.etag ? `"${data.etag}"` : "",
423
426
  checksums: { toJSON: () => ({}) },
424
427
  uploaded: new Date(data.lastModified || Date.now()),
425
- httpMetadata: { contentType: data.contentType },
426
- customMetadata: {},
428
+ httpMetadata: data.httpMetadata ?? { contentType: data.contentType },
429
+ customMetadata: data.customMetadata ?? {},
427
430
  storageClass: "Standard",
428
431
  range: void 0,
429
432
  writeHttpMetadata(_headers) {}
@@ -1,14 +1,13 @@
1
1
  //#region src/runtime/response.d.ts
2
2
  /** Returns true if the value is a Response that was created by convertReturnValue. */
3
- declare function isConvertedResponse(value: unknown): boolean;
3
+ export declare function isConvertedResponse(value: unknown): boolean;
4
4
  /**
5
- * Convert a handler's return value to a Web Response.
6
- *
7
- * - Response → passthrough
8
- * - null/undefined → 204 No Content
9
- * - string → text/html
10
- * - object/array → JSON
11
- */
12
- declare function convertReturnValue(value: unknown): Response;
13
- //#endregion
14
- export { convertReturnValue, isConvertedResponse };
5
+ * Convert a handler's return value to a Web Response.
6
+ *
7
+ * - Response → passthrough
8
+ * - null/undefined → 204 No Content
9
+ * - string → text/html
10
+ * - object/array → JSON
11
+ */
12
+ export declare function convertReturnValue(value: unknown): Response;
13
+ //#endregion