void 0.26.1 → 0.28.0

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 (287) hide show
  1. package/README.md +3 -1
  2. package/dist/{account-cmd-CfUXh_nU.mjs → account-cmd-Ci00cncT.mjs} +5 -5
  3. package/dist/{agents-B_pX_HmQ.mjs → agents-CuNtT0D_.mjs} +5 -2
  4. package/dist/{application-analysis-DKy02UY0.mjs → application-analysis-D72ZQfMZ.mjs} +118 -135
  5. package/dist/{application-routing-DQyUh_5S.mjs → application-routing-Dy589Vgn.mjs} +1 -2
  6. package/dist/atomic-write-Dq6R0BPN.mjs +18 -0
  7. package/dist/{auth-B5_tZLxT.mjs → auth-B6iOCjKI.mjs} +23 -56
  8. package/dist/{auth-link-D5RmKnzh.mjs → auth-link-DWr6Afao.mjs} +10 -10
  9. package/dist/{auth-migrations-BwHgeEsD.mjs → auth-migrations-Cgs0k6lS.mjs} +28 -5
  10. package/dist/{auth-router-Bap-pvbn.mjs → auth-router-DP14wVkZ.mjs} +4 -4
  11. package/dist/auth-wn6F8dB8.mjs +2 -0
  12. package/dist/base64-DVrOndmI.mjs +16 -0
  13. package/dist/{better-auth-shared-CPvWD3nG.d.mts → better-auth-shared-B74NJIus.d.mts} +8 -13
  14. package/dist/{better-auth-shared-DPpj8zxc.mjs → better-auth-shared-CMXlZG7W.mjs} +56 -68
  15. package/dist/{build-cmd-B58c8iS8.mjs → build-cmd-Cr3FJxv0.mjs} +5 -5
  16. package/dist/{cache-Bo52trKF.mjs → cache-D0Tt28cn.mjs} +5 -5
  17. package/dist/{cancel-deploy-BZNz3Q26.mjs → cancel-deploy-CJKvk7AN.mjs} +4 -4
  18. package/dist/{cf-access-TWNzXltp.mjs → cf-access-BM9G0lhO.mjs} +4 -3
  19. package/dist/{cf-access-ngGqZpHZ.mjs → cf-access-CWP4avfP.mjs} +3 -7
  20. package/dist/cf-build-output-2u583yJK.mjs +2 -0
  21. package/dist/{cf-build-output-DjvB_872.mjs → cf-build-output-Bc8i3dzE.mjs} +2 -2
  22. package/dist/cf-user-agent-ChjQp2MU.mjs +33 -0
  23. package/dist/cli/cli.mjs +198 -311
  24. package/dist/cli/cloudflare-operation-process.mjs +46 -14
  25. package/dist/cli/env-schema-probe.d.mts +5 -43
  26. package/dist/cli/env-schema-probe.mjs +14 -80
  27. package/dist/client-C1BjRn3g.mjs +2 -0
  28. package/dist/{client-C2Prx_Bi.mjs → client-DM9Kcf4e.mjs} +161 -415
  29. package/dist/{cloudflare-auth-CuxfF6OA.mjs → cloudflare-auth-CqFBDo52.mjs} +12 -39
  30. package/dist/{cloudflare-cmd-lHqNlJGW.mjs → cloudflare-cmd-CTrn-lXJ.mjs} +6 -5
  31. package/dist/{cloudflare-config-BmhBv3HV.mjs → cloudflare-config-DV60XFFK.mjs} +16 -28
  32. package/dist/{cloudflare-connect-2G3rL2rP.mjs → cloudflare-connect-BosmCNlq.mjs} +3 -3
  33. package/dist/{cloudflare-operations-CwI1bChl.mjs → cloudflare-operations-BKdSfNBN.mjs} +26 -34
  34. package/dist/{cloudflare-operations-BlYLlowZ.mjs → cloudflare-operations-Ds-lX3Ts.mjs} +1 -1
  35. package/dist/{cloudflare-process-2-TfIEzB.mjs → cloudflare-process-CeDWJRhj.mjs} +12 -7
  36. package/dist/collect-NUlJMpLY.mjs +2 -0
  37. package/dist/{collect-DiTn9yr6.mjs → collect-xjffdCdk.mjs} +1 -1
  38. package/dist/{config-CSa15FvD.d.mts → config-7qoq2p9v.d.mts} +2 -2
  39. package/dist/{config-CLYAosnQ.mjs → config-BEm9vRvS.mjs} +11 -5
  40. package/dist/{config-DiowPT80.mjs → config-Bx_1SpnO.mjs} +87 -177
  41. package/dist/config-CNnrSMYm.mjs +2 -0
  42. package/dist/{config-DPByhVck.mjs → config-D0GY5ItR.mjs} +1 -1
  43. package/dist/config-entry.d.mts +1 -1
  44. package/dist/{connect-X0MUA1gk.mjs → connect-nukQSoEO.mjs} +8 -8
  45. package/dist/{create-project-DxiyW6iX.mjs → create-project-D4APeBwX.mjs} +7 -7
  46. package/dist/{create-project-iwkbqiBU.mjs → create-project-DL7YXpjj.mjs} +1 -1
  47. package/dist/{db-XnVMHzoV.mjs → db-27RztQLy.mjs} +173 -263
  48. package/dist/{delete-esYlMiSJ.mjs → delete-BbsZFZIw.mjs} +5 -5
  49. package/dist/deploy-B06EQq4t.mjs +6009 -0
  50. package/dist/deploy-Db2ALnQP.mjs +3 -0
  51. package/dist/deploy-managed-static-CGswbcay.mjs +2277 -0
  52. package/dist/deploy-transport-BiicfoQW.mjs +180 -0
  53. package/dist/deploy.d.mts +10 -0
  54. package/dist/deploy.mjs +82 -0
  55. package/dist/dev-inbox-Rd6j_8vM.mjs +217 -0
  56. package/dist/discover-CTUiSsfG.mjs +2 -0
  57. package/dist/{discover-CkCYv9T_.mjs → discover-D2PGT63u.mjs} +2 -2
  58. package/dist/{dist-BVqXeR_h.mjs → dist-ipQi0Q8y.mjs} +2 -3
  59. package/dist/{domain-CbbBWhWE.mjs → domain-Bfq9n03H.mjs} +7 -22
  60. package/dist/{dotenv-BfU6eqFt.mjs → dotenv-CNazY3-w.mjs} +4 -16
  61. package/dist/{email-d_Aux1vM.mjs → email-BcjSyAL0.mjs} +4 -20
  62. package/dist/{email-CpuT42g7.mjs → email-DIwaQU4P.mjs} +99 -191
  63. package/dist/email-cloudflare-CH053RxK.mjs +1096 -0
  64. package/dist/email-protocol-D9nTvhCp.mjs +82 -0
  65. package/dist/{entry-CMAkqBmU.mjs → entry-ehmBvs5w.mjs} +2 -2
  66. package/dist/{env-BxocywBB.mjs → env-BJjULvL0.mjs} +2 -2
  67. package/dist/{env-DMA3cXZt.mjs → env-BhdWMrNy.mjs} +2 -13
  68. package/dist/{env-w9jOyGZn.mjs → env-C6ipBLp3.mjs} +8 -8
  69. package/dist/{env-public-DR7ZM6d-.d.mts → env-public-CCdykygU.d.mts} +6 -23
  70. package/dist/{env-raw-jZpP5n47.mjs → env-raw-Cklzcde3.mjs} +3 -20
  71. package/dist/{env-types-CwXgeMgL.mjs → env-types-DS2_y4X8.mjs} +2 -2
  72. package/dist/{env-validation-CrVNjsPm.mjs → env-validation-CTn-HhG1.mjs} +1 -1
  73. package/dist/env-validation-cE0zcmzO.mjs +486 -0
  74. package/dist/{gen-DtkQhvQg.mjs → gen-CnN1Xidx.mjs} +131 -253
  75. package/dist/gen-F8pSZnhc.mjs +2 -0
  76. package/dist/{generate-GDbL7sUr.mjs → generate-Dat0UTry.mjs} +38 -4
  77. package/dist/generate-Rii9klHB.mjs +2 -0
  78. package/dist/generated-wrangler-config-DeWj5F9Y.mjs +18 -0
  79. package/dist/{github-cmd-D_FsOFxq.mjs → github-cmd-BdkU4Nhe.mjs} +27 -71
  80. package/dist/{handler-BHAn2fZJ.mjs → handler-BZ1t7-Rv.mjs} +2 -2
  81. package/dist/{handler-CNAwjRcW.d.mts → handler-_PqY82xe.d.mts} +1 -1
  82. package/dist/{headers-DlfR78Nu.mjs → headers-Di1FsD3e.mjs} +26 -81
  83. package/dist/{help-CVFBTmBx.mjs → help-Bug7pyK_.mjs} +18 -10
  84. package/dist/help-s9q7LTcu.mjs +2 -0
  85. package/dist/{inbound-PfQDLXc5.mjs → inbound-DmkTQeWp.mjs} +71 -222
  86. package/dist/{inbound-CH5Mksyy.d.mts → inbound-brj2-TM5.d.mts} +19 -58
  87. package/dist/index.d.mts +2 -18
  88. package/dist/index.mjs +200 -496
  89. package/dist/{info-PYWwkWyt.mjs → info-CujPwtMe.mjs} +5 -5
  90. package/dist/{init-Bw-fRKGp.mjs → init-ZWOJvc-Z.mjs} +179 -388
  91. package/dist/isr-config-DPjXM8J2.mjs +194 -0
  92. package/dist/{link-DlPG8iX3.mjs → link-UEc7bnF4.mjs} +8 -8
  93. package/dist/{list-2GN7_ueV.mjs → list-CuWeOnzk.mjs} +6 -17
  94. package/dist/{live-CgQuTpqD.mjs → live-BxLX-JqJ.mjs} +19 -17
  95. package/dist/{live-Du8jXwOW.d.mts → live-DJONVlQK.d.mts} +1 -1
  96. package/dist/load-user-env-DD5qveNU.mjs +49 -0
  97. package/dist/{local-d1-ga5O_idV.mjs → local-d1-BM3p74mm.mjs} +6 -6
  98. package/dist/{login-D-Q4xw3Q.mjs → login-CZ2Cqa-D.mjs} +11 -11
  99. package/dist/login-DhK7o1oJ.mjs +2 -0
  100. package/dist/{logs-rd8J-OFh.mjs → logs-TihRcLTk.mjs} +5 -5
  101. package/dist/migrate-BgT-hmu8.mjs +2 -0
  102. package/dist/{migrate-NLsjBbuM.mjs → migrate-uFwojusJ.mjs} +69 -21
  103. package/dist/migration-handler-Cg0Y4EPu.mjs +470 -0
  104. package/dist/{migration-handler-DM4clYj5.d.mts → migration-handler-CwlEQUoo.d.mts} +17 -26
  105. package/dist/{mime-DxCznlJq.mjs → mime-srOklVVv.mjs} +92 -395
  106. package/dist/{node-DJicPvPj.mjs → node-DoKbo1SZ.mjs} +8 -24
  107. package/dist/{operator-args-BNsW5gfp.mjs → operator-args-UnE8Y2eK.mjs} +27 -26
  108. package/dist/{operator-auth-AzVLbrr3.mjs → operator-auth-Cr2zCc-J.mjs} +2 -2
  109. package/dist/{operator-client-BQtzyG-g.mjs → operator-client-C-ROjk1I.mjs} +4 -4
  110. package/dist/{operator-cmd-B6f6Cg9Z.mjs → operator-cmd-C5lCctnc.mjs} +8 -8
  111. package/dist/operator-cmd-Cjk5DiRx.mjs +2 -0
  112. package/dist/{output-C50ag2r3.mjs → output-FNHKw5Ac.mjs} +36 -5
  113. package/dist/{package-json-DXfiT1jV.mjs → package-json-BjYqR-So.mjs} +1 -1
  114. package/dist/pages/client.d.mts +1 -1
  115. package/dist/pages/client.mjs +91 -5
  116. package/dist/pages/index.d.mts +1 -2
  117. package/dist/pages/index.mjs +6 -6
  118. package/dist/pages/islands-plugin.mjs +5 -83
  119. package/dist/pages/protocol.d.mts +2 -2
  120. package/dist/pages/protocol.mjs +1 -1
  121. package/dist/pages/serialize.mjs +1 -1
  122. package/dist/{platform-args-BoZkWQnJ.mjs → platform-args-C6Mb_I3a.mjs} +34 -58
  123. package/dist/platform-args-Cm7x-fot.mjs +2 -0
  124. package/dist/{platform-auth-config-n603OANg.mjs → platform-auth-config-CJmNkFT2.mjs} +10 -11
  125. package/dist/{platform-auth-protection-zxDr0hWW.mjs → platform-auth-protection-D5wvsI-Y.mjs} +36 -26
  126. package/dist/{platform-auth-recovery-tw9lgtgE.mjs → platform-auth-recovery-D_0I3n-1.mjs} +8 -9
  127. package/dist/{platform-cmd-C00YM14r.mjs → platform-cmd-Cuj4oUVo.mjs} +1 -1
  128. package/dist/{platform-cmd-B8-bCb7t.mjs → platform-cmd-DxxZO6e5.mjs} +17 -16
  129. package/dist/{platform-discovery-BC0HCKYt.mjs → platform-discovery-CHhNs8Nn.mjs} +1 -1
  130. package/dist/{platform-domain-p0kobLV8.mjs → platform-domain-zLXnW1G_.mjs} +5 -5
  131. package/dist/{platform-lifecycle-D_QEY32D.mjs → platform-lifecycle-DOW-wLfx.mjs} +1398 -2043
  132. package/dist/{platform-lifecycle-vFqtNPPa.mjs → platform-lifecycle-_gfnjUBr.mjs} +1 -1
  133. package/dist/{platform-management-oi-SvI3f.mjs → platform-management-CYrLvTGH.mjs} +1 -1
  134. package/dist/{platform-management-BdYblvvE.mjs → platform-management-t7HKy4-U.mjs} +632 -124
  135. package/dist/{platform-plans-config-CjiFv5J4.mjs → platform-plans-config-CNH6zbPX.mjs} +15 -11
  136. package/dist/{platform-recovery-PvNS9Nl2.mjs → platform-recovery-DeucI7A9.mjs} +6 -9
  137. package/dist/{platform-registry-P387v42A.mjs → platform-registry-B9mWX9LO.mjs} +18 -19
  138. package/dist/{platform-setup-DVe42Ws7.mjs → platform-setup-CTf6MMT9.mjs} +19 -26
  139. package/dist/{plugin-inference-BlQbOL0P.mjs → plugin-inference-DsARdQKE.mjs} +18 -33
  140. package/dist/{prepare-Dq9hTIbo.mjs → prepare-C4zfwks4.mjs} +3 -3
  141. package/dist/{prepare-Do96654b.mjs → prepare-CSH9dKTI.mjs} +11 -13
  142. package/dist/prepare-dr9uxQSV.mjs +2 -0
  143. package/dist/{prerender-render-Ct20jftc.mjs → prerender-render-Bfsumdkv.mjs} +8 -2
  144. package/dist/prerender-render.d.mts +2 -0
  145. package/dist/prerender-render.mjs +2 -2
  146. package/dist/project-DiiOBZPF.mjs +2 -0
  147. package/dist/{project-cmd-ti8_yTcA.mjs → project-cmd-Dq75AXzy.mjs} +19 -19
  148. package/dist/{project-paths-GgcMozYz.mjs → project-paths-DMvEeSau.mjs} +9 -14
  149. package/dist/{project-DQstYTxO.mjs → project-rqDnVsJN.mjs} +8 -4
  150. package/dist/{project-team-CDPE1Tsg.mjs → project-team-B3_QcStG.mjs} +6 -6
  151. package/dist/{project-token-CkZ1cN0Z.mjs → project-token-CvsRvv2I.mjs} +5 -5
  152. package/dist/{project-tsconfig-CVJhNMxs.mjs → project-tsconfig-bveqhlYA.mjs} +3 -5
  153. package/dist/{project-zero-trust-DdjLR61k.mjs → project-zero-trust-D1ICiwN_.mjs} +5 -5
  154. package/dist/{protocol-BPZaNqBo.d.mts → protocol-4H7V_3Os.d.mts} +1 -1
  155. package/dist/{protocol-CfaUwNs8.mjs → protocol-RNP0u7UY.mjs} +9 -3
  156. package/dist/{provision-BfaLiWbj.mjs → provision-DDh7ITVS.mjs} +118 -865
  157. package/dist/{requests-DFAqyYy8.mjs → requests-3CL3BuZh.mjs} +4 -4
  158. package/dist/resolve-project-B9Hr0D3n.mjs +2 -0
  159. package/dist/resolve-project-C_Cu7E8a.mjs +48 -0
  160. package/dist/{rollback-BKYXBduI.mjs → rollback-Ce1d_0J9.mjs} +7 -17
  161. package/dist/{route-types-CbtsIeFn.mjs → route-types-IrBuwJ7u.mjs} +35 -70
  162. package/dist/routing-assets-VkrKIbxE.mjs +139 -0
  163. package/dist/{runner-9wjsSZx-.mjs → runner-B5huK2eC.mjs} +1 -1
  164. package/dist/{runner-DMBKSrRk.mjs → runner-DcVDrzuR.mjs} +7 -28
  165. package/dist/{runner-mysql-CEzKtmFb.mjs → runner-mysql-CCtyI0p6.mjs} +4 -3
  166. package/dist/runner-mysql-CaJq-hd6.mjs +2 -0
  167. package/dist/runner-pg-BJhFZZG4.mjs +2 -0
  168. package/dist/{runner-pg-DV8p_zjA.mjs → runner-pg-CPd-CB_F.mjs} +1 -1
  169. package/dist/runtime/ai.mjs +9 -22
  170. package/dist/runtime/better-auth-mysql.d.mts +2 -5
  171. package/dist/runtime/better-auth-mysql.mjs +6 -31
  172. package/dist/runtime/better-auth-pg.d.mts +2 -5
  173. package/dist/runtime/better-auth-pg.mjs +6 -32
  174. package/dist/runtime/better-auth.d.mts +2 -4
  175. package/dist/runtime/better-auth.mjs +9 -19
  176. package/dist/runtime/db.mjs +1 -1
  177. package/dist/runtime/durable.d.mts +16 -0
  178. package/dist/runtime/durable.mjs +26 -2
  179. package/dist/runtime/email/testing.d.mts +1 -1
  180. package/dist/runtime/email/testing.mjs +9 -23
  181. package/dist/runtime/email-protocol.d.mts +12 -0
  182. package/dist/runtime/email-protocol.mjs +2 -70
  183. package/dist/runtime/email.d.mts +1 -1
  184. package/dist/runtime/email.mjs +79 -221
  185. package/dist/runtime/env-public.d.mts +1 -1
  186. package/dist/runtime/env-public.mjs +12 -38
  187. package/dist/runtime/env.d.mts +1 -12
  188. package/dist/runtime/env.mjs +1 -1
  189. package/dist/runtime/handler.d.mts +1 -1
  190. package/dist/runtime/handler.mjs +1 -1
  191. package/dist/runtime/isr.mjs +1 -1
  192. package/dist/runtime/kv.mjs +1 -1
  193. package/dist/runtime/live-client.d.mts +1 -1
  194. package/dist/runtime/live-server.mjs +1 -16
  195. package/dist/runtime/live.d.mts +1 -1
  196. package/dist/runtime/live.mjs +1 -1
  197. package/dist/runtime/migration-handler-mysql.d.mts +2 -2
  198. package/dist/runtime/migration-handler-mysql.mjs +3 -2
  199. package/dist/runtime/migration-handler-pg.d.mts +2 -2
  200. package/dist/runtime/migration-handler-pg.mjs +1 -1
  201. package/dist/runtime/migration-handler.d.mts +2 -2
  202. package/dist/runtime/migration-handler.mjs +2 -470
  203. package/dist/runtime/queues.mjs +1 -1
  204. package/dist/runtime/remote/binding-handler.mjs +62 -62
  205. package/dist/runtime/remote/index.mjs +16 -77
  206. package/dist/runtime/routing.d.mts +1 -4
  207. package/dist/runtime/routing.mjs +82 -218
  208. package/dist/runtime/sandbox-container.d.mts +2 -2
  209. package/dist/runtime/sandbox-container.mjs +2 -2
  210. package/dist/runtime/sandbox.d.mts +2 -2
  211. package/dist/runtime/sandbox.mjs +13 -6
  212. package/dist/runtime/storage.mjs +1 -1
  213. package/dist/runtime/validator.d.mts +1 -1
  214. package/dist/runtime/ws-server.d.mts +2 -3
  215. package/dist/runtime/ws-server.mjs +6 -28
  216. package/dist/runtime/ws.d.mts +1 -1
  217. package/dist/{sandbox-container-Bo0eiFKz.d.mts → sandbox-container-ChQRum-j.d.mts} +3 -1
  218. package/dist/{sandbox-container-C6ItmVuN.mjs → sandbox-container-DBKIqDEK.mjs} +12 -1
  219. package/dist/{sandbox-C5LFoJMf.d.mts → sandbox-q3waMc2T.d.mts} +1 -1
  220. package/dist/{scan-C3uDzz6J.mjs → scan-C0BMdmEd.mjs} +84 -7
  221. package/dist/{secret-BAt2KMmO.mjs → secret-B5J8bBsI.mjs} +62 -80
  222. package/dist/{serialize-BPvnNQuA.mjs → serialize-BtQyaYoC.mjs} +10 -4
  223. package/dist/{skills-BgVMvQdy.mjs → skills-BJsan98C.mjs} +2 -2
  224. package/dist/{subcommand-prompt-BSlnD1fI.mjs → subcommand-prompt-gQ-NDA-u.mjs} +38 -43
  225. package/dist/sveltekit.mjs +1 -1
  226. package/dist/validate-C9xtFOYR.mjs +2 -0
  227. package/dist/{validate-C9qJArv7.mjs → validate-CheZGRE7.mjs} +4 -8
  228. package/dist/version-metadata-DIrqEHQo.mjs +73 -0
  229. package/dist/{wrangler-D9KTuqnv.mjs → wrangler-BYs07Rxy.mjs} +119 -378
  230. package/dist/{ws-CChrrAU-.d.mts → ws-aKVYB-fA.d.mts} +1 -1
  231. package/dist/yarn-pnp-DLbEFMT0.mjs +92 -0
  232. package/docs/guide/auth.md +2 -0
  233. package/docs/guide/database/postgresql.md +2 -0
  234. package/docs/guide/database.md +2 -0
  235. package/docs/guide/deployment.md +2 -2
  236. package/docs/guide/durable-state.md +24 -0
  237. package/docs/guide/platform/administration/access.md +5 -1
  238. package/docs/guide/platform/administration/connected-apps.md +55 -0
  239. package/docs/guide/platform/installation/credentials.md +3 -1
  240. package/docs/guide/platform/installation/first-deployment.md +1 -1
  241. package/docs/guide/project-collaboration.md +1 -1
  242. package/docs/guide/quickstart.md +2 -0
  243. package/docs/guide/sandboxes.md +2 -0
  244. package/docs/reference/api/deploy.md +23 -0
  245. package/docs/reference/api/pages.md +2 -0
  246. package/docs/reference/api.md +2 -1
  247. package/docs/reference/cli/auth.md +1 -1
  248. package/docs/reference/cli/database.md +9 -3
  249. package/docs/reference/cli/deploy.md +1 -1
  250. package/docs/reference/cli/platform-installation.md +1 -1
  251. package/docs/reference/cli/setup.md +2 -0
  252. package/package.json +14 -17
  253. package/skills/void/SKILL.md +4 -2
  254. package/dist/auth-BgX2qYSY.mjs +0 -2
  255. package/dist/cf-build-output-H9a97vME.mjs +0 -2
  256. package/dist/client-By4JjMw_.mjs +0 -2
  257. package/dist/collect-DLyFDiKW.mjs +0 -2
  258. package/dist/config-5r-YpMC-.mjs +0 -2
  259. package/dist/config-B_ggY-IO.mjs +0 -89
  260. package/dist/config-BtSFvXZx.mjs +0 -2
  261. package/dist/config-write-AHGesphx.mjs +0 -61
  262. package/dist/deploy-BsEvnlJl.mjs +0 -10455
  263. package/dist/deploy-C1d-YTfp.mjs +0 -2
  264. package/dist/dev-inbox-CK-UuPob.mjs +0 -297
  265. package/dist/discover-EDUf6JJw.mjs +0 -2
  266. package/dist/dist-_UUlL6bg.mjs +0 -2
  267. package/dist/env-validation-Dxdx_5wo.mjs +0 -951
  268. package/dist/gen-dA9hW7AV.mjs +0 -2
  269. package/dist/head-client-DzmJGN4C.mjs +0 -90
  270. package/dist/help-DzKUrQvk.mjs +0 -2
  271. package/dist/login-Dc-wuTDq.mjs +0 -2
  272. package/dist/migrate-BHp07yJE.mjs +0 -2
  273. package/dist/operator-cmd-Cwn50lOV.mjs +0 -2
  274. package/dist/pages/head-client.d.mts +0 -13
  275. package/dist/pages/head-client.mjs +0 -2
  276. package/dist/platform-args-DYgITk0D.mjs +0 -2
  277. package/dist/prepare-DRUV-g3X.mjs +0 -2
  278. package/dist/project-BiaPQ7ur.mjs +0 -2
  279. package/dist/provision-Wu9ZBk9L.mjs +0 -2
  280. package/dist/resolve-project-BIeYs9Cw.mjs +0 -2
  281. package/dist/resolve-project-CP8rZs_p.mjs +0 -28
  282. package/dist/runner-mysql-CkFqZ6CE.mjs +0 -2
  283. package/dist/runner-pg-BGYRFdRp.mjs +0 -2
  284. package/dist/runtime/env-helpers.d.mts +0 -2
  285. package/dist/runtime/env-helpers.mjs +0 -2
  286. package/dist/validate-BJr9LfXy.mjs +0 -2
  287. package/dist/yarn-pnp-CUX_iTPA.mjs +0 -188
@@ -1,18 +1,17 @@
1
- import { a as join, l as relative, n as dirname } from "./dist-BVqXeR_h.mjs";
2
- import { n as readProjectPaths } from "./project-paths-GgcMozYz.mjs";
3
- import { m as readConfig, u as getDatabaseDialect } from "./config-DiowPT80.mjs";
4
- import { n as readJournal, t as collectMigrations } from "./collect-DiTn9yr6.mjs";
1
+ import { a as join, n as dirname, s as relative } from "./dist-ipQi0Q8y.mjs";
2
+ import { n as readProjectPaths } from "./project-paths-DMvEeSau.mjs";
3
+ import { d as readConfig, s as getDatabaseDialect } from "./config-Bx_1SpnO.mjs";
4
+ import { n as readJournal, t as collectMigrations } from "./collect-xjffdCdk.mjs";
5
5
  import { K as select, L as log, O as cancel, tt as isCancel } from "./dist-D3m88sjf.mjs";
6
- import { d as printSuccess } from "./output-C50ag2r3.mjs";
7
- import { n as ensureProjectTsconfig } from "./project-tsconfig-CVJhNMxs.mjs";
8
- import { r as listDrizzleArtifacts, t as assertJournalCoherence } from "./validate-C9qJArv7.mjs";
9
- import { n as writeDrizzleConfig } from "./config-CLYAosnQ.mjs";
10
- import { t as buildDrizzleKitSpawnEnv } from "./yarn-pnp-CUX_iTPA.mjs";
11
- import { existsSync, mkdirSync, readFileSync, readdirSync, unlinkSync, writeFileSync } from "node:fs";
12
- import { fileURLToPath } from "node:url";
6
+ import { m as printSuccess } from "./output-FNHKw5Ac.mjs";
7
+ import { n as ensureProjectTsconfig } from "./project-tsconfig-bveqhlYA.mjs";
8
+ import { r as writeDrizzleConfig, t as PLACEHOLDER_DB_URL } from "./config-BEm9vRvS.mjs";
9
+ import { t as assertJournalCoherence } from "./validate-CheZGRE7.mjs";
10
+ import { n as drizzleKitBin, t as buildDrizzleKitSpawnEnv } from "./yarn-pnp-DLbEFMT0.mjs";
11
+ import { n as snapshotDrizzleOutputs } from "./generate-Dat0UTry.mjs";
12
+ import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "node:fs";
13
13
  import { spawnSync } from "node:child_process";
14
14
  //#region src/cli/gen.ts
15
- const drizzleKitBin = join(fileURLToPath(import.meta.resolve("drizzle-kit")), "..", "bin.cjs");
16
15
  async function runGenCommand(root, args) {
17
16
  console.log();
18
17
  if (args.subcommand === "model") await runModel(root, args.name, args.columns);
@@ -56,105 +55,59 @@ function getNextMiddlewareNumber(middlewareDir) {
56
55
  }
57
56
  return String(max + 1).padStart(2, "0");
58
57
  }
59
- function drizzleColumnDef(col) {
60
- const { name, type } = col;
61
- const notNull = col.nullable ? "" : ".notNull()";
62
- switch (type) {
63
- case "string":
64
- case "text": return ` ${name}: text("${name}")${notNull},`;
65
- case "integer": return ` ${name}: integer("${name}")${notNull},`;
66
- case "boolean": return ` ${name}: integer("${name}", { mode: "boolean" })${notNull}.default(false),`;
67
- case "real": return ` ${name}: real("${name}")${notNull},`;
68
- default: return ` ${name}: text("${name}"),`;
69
- }
70
- }
71
- function drizzleImportsForColumns(columns) {
72
- const types = /* @__PURE__ */ new Set(["text", "integer"]);
73
- for (const col of columns) switch (col.type) {
74
- case "string":
75
- case "text":
76
- types.add("text");
77
- break;
78
- case "integer":
79
- types.add("integer");
80
- break;
81
- case "boolean":
82
- types.add("integer");
83
- break;
84
- case "real":
85
- types.add("real");
86
- break;
87
- default: types.add("text");
58
+ const TEXT_COLUMN = { fn: "text" };
59
+ const COLUMN_BUILDERS = {
60
+ sqlite: {
61
+ string: TEXT_COLUMN,
62
+ text: TEXT_COLUMN,
63
+ integer: { fn: "integer" },
64
+ boolean: {
65
+ fn: "integer",
66
+ options: "{ mode: \"boolean\" }"
67
+ },
68
+ real: { fn: "real" }
69
+ },
70
+ postgresql: {
71
+ string: TEXT_COLUMN,
72
+ text: TEXT_COLUMN,
73
+ integer: { fn: "integer" },
74
+ boolean: { fn: "boolean" },
75
+ real: { fn: "doublePrecision" }
76
+ },
77
+ mysql: {
78
+ string: TEXT_COLUMN,
79
+ text: TEXT_COLUMN,
80
+ integer: { fn: "int" },
81
+ boolean: { fn: "boolean" },
82
+ real: { fn: "double" }
88
83
  }
89
- return [...types].sort();
90
- }
91
- function drizzleColumnDefPg(col) {
92
- const { name, type } = col;
93
- const notNull = col.nullable ? "" : ".notNull()";
94
- switch (type) {
95
- case "string":
96
- case "text": return ` ${name}: text("${name}")${notNull},`;
97
- case "integer": return ` ${name}: integer("${name}")${notNull},`;
98
- case "boolean": return ` ${name}: boolean("${name}")${notNull}.default(false),`;
99
- case "real": return ` ${name}: doublePrecision("${name}")${notNull},`;
100
- default: return ` ${name}: text("${name}"),`;
101
- }
102
- }
103
- function drizzleImportsForColumnsPg(columns) {
104
- const types = /* @__PURE__ */ new Set([
84
+ };
85
+ const BASE_IMPORTS = {
86
+ sqlite: ["text", "integer"],
87
+ postgresql: [
105
88
  "text",
106
89
  "serial",
107
90
  "timestamp"
108
- ]);
109
- for (const col of columns) switch (col.type) {
110
- case "string":
111
- case "text":
112
- types.add("text");
113
- break;
114
- case "integer":
115
- types.add("integer");
116
- break;
117
- case "boolean":
118
- types.add("boolean");
119
- break;
120
- case "real":
121
- types.add("doublePrecision");
122
- break;
123
- default: types.add("text");
124
- }
125
- return [...types].sort();
126
- }
127
- function drizzleColumnDefMySql(col) {
128
- const { name, type } = col;
129
- const notNull = col.nullable ? "" : ".notNull()";
130
- switch (type) {
131
- case "string":
132
- case "text": return ` ${name}: text("${name}")${notNull},`;
133
- case "integer": return ` ${name}: int("${name}")${notNull},`;
134
- case "boolean": return ` ${name}: boolean("${name}")${notNull}.default(false),`;
135
- case "real": return ` ${name}: double("${name}")${notNull},`;
136
- default: return ` ${name}: text("${name}"),`;
137
- }
138
- }
139
- function drizzleImportsForColumnsMySql(columns) {
140
- const types = /* @__PURE__ */ new Set([
91
+ ],
92
+ mysql: [
141
93
  "int",
142
94
  "text",
143
95
  "timestamp"
144
- ]);
145
- for (const col of columns) switch (col.type) {
146
- case "integer":
147
- types.add("int");
148
- break;
149
- case "boolean":
150
- types.add("boolean");
151
- break;
152
- case "real":
153
- types.add("double");
154
- break;
155
- default: types.add("text");
156
- }
157
- return [...types].sort();
96
+ ]
97
+ };
98
+ function drizzleColumnDef(dialect, col) {
99
+ const { name } = col;
100
+ const builder = COLUMN_BUILDERS[dialect][col.type];
101
+ if (!builder) return ` ${name}: text("${name}"),`;
102
+ const args = builder.options ? `"${name}", ${builder.options}` : `"${name}"`;
103
+ const notNull = col.nullable ? "" : ".notNull()";
104
+ const defaultValue = col.type === "boolean" ? ".default(false)" : "";
105
+ return ` ${name}: ${builder.fn}(${args})${notNull}${defaultValue},`;
106
+ }
107
+ function drizzleImportsForColumns(dialect, columns) {
108
+ const imports = new Set(BASE_IMPORTS[dialect]);
109
+ for (const col of columns) imports.add(COLUMN_BUILDERS[dialect][col.type]?.fn ?? "text");
110
+ return [...imports].sort();
158
111
  }
159
112
  function detectValidator(root) {
160
113
  const pkgPath = join(root, "package.json");
@@ -203,76 +156,39 @@ async function resolveValidator(root) {
203
156
  if (choice !== "none") log.warn(`Remember to install ${choice}: npm install ${choice}`);
204
157
  return choice;
205
158
  }
206
- function validatorTypeFor(validator, col) {
207
- if (validator === "valibot") return valibotType(col);
208
- if (validator === "zod") return zodType(col);
209
- return arktypeType(col);
210
- }
211
- function valibotType(col) {
212
- let base;
213
- switch (col.type) {
214
- case "string":
215
- case "text":
216
- case "datetime":
217
- base = "v.string()";
218
- break;
219
- case "integer":
220
- case "real":
221
- base = "v.number()";
222
- break;
223
- case "boolean":
224
- base = "v.boolean()";
225
- break;
226
- case "blob":
227
- base = "v.instance(Blob)";
228
- break;
229
- default: base = "v.string()";
230
- }
231
- return col.nullable ? `v.optional(${base})` : base;
232
- }
233
- function zodType(col) {
234
- let base;
235
- switch (col.type) {
236
- case "string":
237
- case "text":
238
- case "datetime":
239
- base = "z.string()";
240
- break;
241
- case "integer":
242
- case "real":
243
- base = "z.number()";
244
- break;
245
- case "boolean":
246
- base = "z.boolean()";
247
- break;
248
- case "blob":
249
- base = "z.instanceof(Blob)";
250
- break;
251
- default: base = "z.string()";
252
- }
253
- return col.nullable ? `${base}.optional()` : base;
254
- }
255
- function arktypeType(col) {
256
- let base;
257
- switch (col.type) {
258
- case "string":
259
- case "text":
260
- case "datetime":
261
- base = "string";
262
- break;
263
- case "integer":
264
- case "real":
265
- base = "number";
266
- break;
267
- case "boolean":
268
- base = "boolean";
269
- break;
270
- case "blob":
271
- base = "instanceof Blob";
272
- break;
273
- default: base = "string";
159
+ const VALIDATOR_TYPES = {
160
+ valibot: {
161
+ string: "v.string()",
162
+ number: "v.number()",
163
+ boolean: "v.boolean()",
164
+ blob: "v.instance(Blob)",
165
+ optional: (base) => `v.optional(${base})`
166
+ },
167
+ zod: {
168
+ string: "z.string()",
169
+ number: "z.number()",
170
+ boolean: "z.boolean()",
171
+ blob: "z.instanceof(Blob)",
172
+ optional: (base) => `${base}.optional()`
173
+ },
174
+ arktype: {
175
+ string: "string",
176
+ number: "number",
177
+ boolean: "boolean",
178
+ blob: "instanceof Blob",
179
+ optional: (base) => `${base} | undefined`
274
180
  }
275
- return col.nullable ? `${base} | undefined` : base;
181
+ };
182
+ const VALUE_KINDS = {
183
+ integer: "number",
184
+ real: "number",
185
+ boolean: "boolean",
186
+ blob: "blob"
187
+ };
188
+ function validatorType(validator, col) {
189
+ const types = VALIDATOR_TYPES[validator];
190
+ const base = types[VALUE_KINDS[col.type] ?? "string"];
191
+ return col.nullable ? types.optional(base) : base;
276
192
  }
277
193
  function getImportLine(validator) {
278
194
  switch (validator) {
@@ -283,8 +199,8 @@ function getImportLine(validator) {
283
199
  }
284
200
  }
285
201
  function getBodySchema(validator, columns) {
286
- if (validator === "arktype") return `type({\n${columns.map((c) => ` ${c.name}: "${arktypeType(c)}",`).join("\n")}\n })`;
287
- const fields = columns.map((c) => ` ${c.name}: ${validatorTypeFor(validator, c)},`).join("\n");
202
+ if (validator === "arktype") return `type({\n${columns.map((c) => ` ${c.name}: "${validatorType(validator, c)}",`).join("\n")}\n })`;
203
+ const fields = columns.map((c) => ` ${c.name}: ${validatorType(validator, c)},`).join("\n");
288
204
  return `${validator === "valibot" ? "v" : "z"}.object({\n${fields}\n })`;
289
205
  }
290
206
  function getParamsSchema(validator) {
@@ -370,60 +286,43 @@ async function runModel(root, name, columns) {
370
286
  const schemaDir = paths.schemaDir;
371
287
  const barrelPath = paths.schemaFile;
372
288
  const modelPath = join(schemaDir, `${name}.ts`);
289
+ const colDefs = columns.map((col) => drizzleColumnDef(dialect, col));
290
+ const columnImports = drizzleImportsForColumns(dialect, columns).join(", ");
373
291
  let content;
374
- if (dialect === "postgresql") {
375
- const colDefs = columns.map((col) => drizzleColumnDefPg(col));
376
- const columnImports = drizzleImportsForColumnsPg(columns);
377
- const allCols = [
378
- ` id: serial("id").primaryKey(),`,
379
- ...colDefs,
380
- ` createdAt: timestamp("created_at").notNull().defaultNow(),`,
381
- ` updatedAt: timestamp("updated_at").notNull().defaultNow(),`
382
- ];
383
- content = [
384
- `import { pgTable, ${columnImports.join(", ")} } from "void/schema-pg";`,
385
- "",
386
- `export const ${name} = pgTable("${name}", {`,
387
- ...allCols,
388
- "});",
389
- ""
390
- ].join("\n");
391
- } else if (dialect === "mysql") {
392
- const colDefs = columns.map((col) => drizzleColumnDefMySql(col));
393
- const columnImports = drizzleImportsForColumnsMySql(columns);
394
- const allCols = [
395
- ` id: int("id").autoincrement().primaryKey(),`,
396
- ...colDefs,
397
- ` createdAt: timestamp("created_at").notNull().defaultNow(),`,
398
- ` updatedAt: timestamp("updated_at").notNull().defaultNow(),`
399
- ];
400
- content = [
401
- `import { mysqlTable, ${columnImports.join(", ")} } from "void/schema-mysql";`,
402
- "",
403
- `export const ${name} = mysqlTable("${name}", {`,
404
- ...allCols,
405
- "});",
406
- ""
407
- ].join("\n");
408
- } else {
409
- const colDefs = columns.map((col) => drizzleColumnDef(col));
410
- const columnImports = drizzleImportsForColumns(columns);
411
- const allCols = [
412
- ` id: integer("id").primaryKey({ autoIncrement: true }),`,
413
- ...colDefs,
414
- " createdAt: text(\"created_at\").notNull().default(sql`(datetime('now'))`),",
415
- " updatedAt: text(\"updated_at\").notNull().default(sql`(datetime('now'))`),"
416
- ];
417
- content = [
418
- `import { sqliteTable, ${columnImports.join(", ")} } from "void/schema-d1";`,
419
- `import { sql } from "void/db";`,
420
- "",
421
- `export const ${name} = sqliteTable("${name}", {`,
422
- ...allCols,
423
- "});",
424
- ""
425
- ].join("\n");
426
- }
292
+ if (dialect === "postgresql") content = [
293
+ `import { pgTable, ${columnImports} } from "void/schema-pg";`,
294
+ "",
295
+ `export const ${name} = pgTable("${name}", {`,
296
+ ` id: serial("id").primaryKey(),`,
297
+ ...colDefs,
298
+ ` createdAt: timestamp("created_at").notNull().defaultNow(),`,
299
+ ` updatedAt: timestamp("updated_at").notNull().defaultNow(),`,
300
+ "});",
301
+ ""
302
+ ].join("\n");
303
+ else if (dialect === "mysql") content = [
304
+ `import { mysqlTable, ${columnImports} } from "void/schema-mysql";`,
305
+ "",
306
+ `export const ${name} = mysqlTable("${name}", {`,
307
+ ` id: int("id").autoincrement().primaryKey(),`,
308
+ ...colDefs,
309
+ ` createdAt: timestamp("created_at").notNull().defaultNow(),`,
310
+ ` updatedAt: timestamp("updated_at").notNull().defaultNow(),`,
311
+ "});",
312
+ ""
313
+ ].join("\n");
314
+ else content = [
315
+ `import { sqliteTable, ${columnImports} } from "void/schema-d1";`,
316
+ `import { sql } from "void/db";`,
317
+ "",
318
+ `export const ${name} = sqliteTable("${name}", {`,
319
+ ` id: integer("id").primaryKey({ autoIncrement: true }),`,
320
+ ...colDefs,
321
+ " createdAt: text(\"created_at\").notNull().default(sql`(datetime('now'))`),",
322
+ " updatedAt: text(\"updated_at\").notNull().default(sql`(datetime('now'))`),",
323
+ "});",
324
+ ""
325
+ ].join("\n");
427
326
  mkdirSync(schemaDir, { recursive: true });
428
327
  writeIfNotExists(modelPath, content);
429
328
  const exportLine = `export * from "./schema/${name}";`;
@@ -464,9 +363,7 @@ function runMigration(root, name) {
464
363
  log.error("Restore the snapshot from version control, or regenerate migrations with `void db generate` before running `void gen migration`.");
465
364
  process.exit(1);
466
365
  }
467
- const journalPath = join(metaDir, "_journal.json");
468
- const originalJournalBytes = existsSync(journalPath) ? readFileSync(journalPath) : null;
469
- const snapshotsBefore = new Set(readdirSync(metaDir).filter((f) => f.endsWith("_snapshot.json")));
366
+ const rollBack = snapshotDrizzleOutputs(migrationsDir);
470
367
  const sqlFilesBefore = new Set(readdirSync(migrationsDir).filter((f) => f.endsWith(".sql")));
471
368
  let journalDialect;
472
369
  if (existingJournal.dialect === "sqlite") journalDialect = "sqlite";
@@ -485,8 +382,7 @@ function runMigration(root, name) {
485
382
  }
486
383
  const authSchemaPath = join(root, ".void", "better-auth-schema.ts");
487
384
  const additionalSchemas = existsSync(authSchemaPath) ? [authSchemaPath] : void 0;
488
- const configPath = writeDrizzleConfig(root, journalDialect === "postgresql" ? "postgresql://dummy" : journalDialect === "mysql" ? "mysql://dummy" : ":memory:", journalDialect, { additionalSchemas });
489
- const childEnv = buildDrizzleKitSpawnEnv(root);
385
+ const configPath = writeDrizzleConfig(root, PLACEHOLDER_DB_URL[journalDialect], journalDialect, { additionalSchemas });
490
386
  const result = spawnSync(process.execPath, [
491
387
  drizzleKitBin,
492
388
  "generate",
@@ -499,21 +395,10 @@ function runMigration(root, name) {
499
395
  cwd: root,
500
396
  stdio: "pipe",
501
397
  encoding: "utf-8",
502
- shell: process.platform === "win32",
503
- env: childEnv
398
+ env: buildDrizzleKitSpawnEnv(root)
504
399
  });
505
400
  if (result.error || result.status !== 0) {
506
- if (originalJournalBytes !== null) try {
507
- writeFileSync(journalPath, originalJournalBytes);
508
- } catch {}
509
- if (existsSync(metaDir)) {
510
- for (const f of readdirSync(metaDir)) if (f.endsWith("_snapshot.json") && !snapshotsBefore.has(f)) try {
511
- unlinkSync(join(metaDir, f));
512
- } catch {}
513
- }
514
- for (const f of readdirSync(migrationsDir)) if (f.endsWith(".sql") && !sqlFilesBefore.has(f)) try {
515
- unlinkSync(join(migrationsDir, f));
516
- } catch {}
401
+ rollBack();
517
402
  const detail = [result.stderr, result.stdout].filter(Boolean).join("\n").trim();
518
403
  log.error([
519
404
  `Failed to run \`drizzle-kit generate --custom --name ${name}\`.`,
@@ -528,13 +413,6 @@ function runMigration(root, name) {
528
413
  printSuccess("Migration created and journal updated.");
529
414
  return;
530
415
  }
531
- if (existingJournal !== void 0 && existingJournal.entries.length === 0) {
532
- if (listDrizzleArtifacts(migrationsDir).length > 0) {
533
- log.error("db/migrations/meta/_journal.json has empty entries but stale drizzle-kit snapshots are on disk.");
534
- log.error("Restore the journal entries from version control (or run `void db generate`), or delete the stale drizzle artifacts and rerun.");
535
- process.exit(1);
536
- }
537
- }
538
416
  const tag = `${getMigrationTimestamp(migrationsDir)}_${name}`;
539
417
  if (writeIfNotExists(join(migrationsDir, `${tag}.sql`), `-- ${name}\n`)) printSuccess("Migration created.");
540
418
  }
@@ -0,0 +1,2 @@
1
+ import { r as runGenCommand } from "./gen-CnN1Xidx.mjs";
2
+ export { runGenCommand };
@@ -1,7 +1,7 @@
1
- import { a as join, n as dirname } from "./dist-BVqXeR_h.mjs";
2
- import { t as collectMigrations } from "./collect-DiTn9yr6.mjs";
1
+ import { a as join, n as dirname } from "./dist-ipQi0Q8y.mjs";
2
+ import { t as collectMigrations } from "./collect-xjffdCdk.mjs";
3
3
  import { n as openMigrationValidationDatabase } from "./sqlite-validation-BzKMWnO4.mjs";
4
- import { existsSync, mkdirSync, readFileSync, readdirSync, rmSync, writeFileSync } from "node:fs";
4
+ import { existsSync, mkdirSync, readFileSync, readdirSync, rmSync, unlinkSync, writeFileSync } from "node:fs";
5
5
  //#region src/drizzle/generate.ts
6
6
  function snapshotFiles(root) {
7
7
  const files = /* @__PURE__ */ new Map();
@@ -16,6 +16,40 @@ function snapshotFiles(root) {
16
16
  }
17
17
  return files;
18
18
  }
19
+ function listFiles(dir, suffix) {
20
+ return new Set(existsSync(dir) ? readdirSync(dir).filter((file) => file.endsWith(suffix)) : []);
21
+ }
22
+ /**
23
+ * Record the Drizzle outputs under `migrationsDir` and return a rollback for a
24
+ * failed `drizzle-kit generate`, so partial files cannot fail the journal check
25
+ * of later `void db` commands.
26
+ */
27
+ function snapshotDrizzleOutputs(migrationsDir) {
28
+ const metaDir = join(migrationsDir, "meta");
29
+ const journalPath = join(metaDir, "_journal.json");
30
+ const metaDirExisted = existsSync(metaDir);
31
+ const journal = existsSync(journalPath) ? readFileSync(journalPath) : null;
32
+ const snapshots = listFiles(metaDir, "_snapshot.json");
33
+ const sqlFiles = listFiles(migrationsDir, ".sql");
34
+ const bestEffort = (step) => {
35
+ try {
36
+ step();
37
+ } catch {}
38
+ };
39
+ const removeNewFiles = (dir, suffix, before) => {
40
+ for (const file of listFiles(dir, suffix)) if (!before.has(file)) bestEffort(() => unlinkSync(join(dir, file)));
41
+ };
42
+ return () => {
43
+ if (metaDirExisted) {
44
+ if (journal !== null) bestEffort(() => writeFileSync(journalPath, journal));
45
+ bestEffort(() => removeNewFiles(metaDir, "_snapshot.json", snapshots));
46
+ } else bestEffort(() => rmSync(metaDir, {
47
+ recursive: true,
48
+ force: true
49
+ }));
50
+ bestEffort(() => removeNewFiles(migrationsDir, ".sql", sqlFiles));
51
+ };
52
+ }
19
53
  /** Keep SQL and Drizzle's snapshot/journal together when generation fails validation. */
20
54
  async function generateValidatedSqliteMigrations(migrationsDir, generate) {
21
55
  try {
@@ -44,4 +78,4 @@ async function generateValidatedSqliteMigrations(migrationsDir, generate) {
44
78
  }
45
79
  }
46
80
  //#endregion
47
- export { generateValidatedSqliteMigrations };
81
+ export { snapshotDrizzleOutputs as n, generateValidatedSqliteMigrations as t };
@@ -0,0 +1,2 @@
1
+ import { t as generateValidatedSqliteMigrations } from "./generate-Dat0UTry.mjs";
2
+ export { generateValidatedSqliteMigrations };
@@ -0,0 +1,18 @@
1
+ import { readFileSync } from "node:fs";
2
+ import { parse } from "jsonc-parser";
3
+ //#region src/cli/generated-wrangler-config.ts
4
+ /** Parse JSON/JSONC text with an optional BOM; undefined unless it is one valid object. */
5
+ function parseJsoncObject(text) {
6
+ const errors = [];
7
+ const parsed = parse(text.replace(/^\uFEFF/, ""), errors, { allowTrailingComma: true });
8
+ if (errors.length > 0 || parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) return;
9
+ return parsed;
10
+ }
11
+ /** Parse a generated Wrangler JSON/JSONC config without accepting a partial parse. */
12
+ function readGeneratedWranglerConfigFile(path) {
13
+ const parsed = parseJsoncObject(readFileSync(path, "utf8"));
14
+ if (!parsed) throw new Error("Invalid Wrangler JSON/JSONC config.");
15
+ return parsed;
16
+ }
17
+ //#endregion
18
+ export { readGeneratedWranglerConfigFile as n, parseJsoncObject as t };