void 1.4.0 → 1.6.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.
- package/README.md +1 -1
- package/dist/{account-cmd-HP8bixYo.mjs → account-cmd-DRhmCWcm.mjs} +7 -8
- package/dist/{action-key-XZ9HkWAO.mjs → action-key-XtKKbbsi.mjs} +1 -2
- package/dist/{agents-CuNtT0D_.mjs → agents-DRo8gzni.mjs} +2 -3
- package/dist/{application-analysis-DDOQwiXk.mjs → application-analysis-HRFsZOv3.mjs} +18 -24
- package/dist/{application-routing-4719u_kf.mjs → application-routing-P4TggvWp.mjs} +2 -3
- package/dist/{ast-CsZ_q_gc.mjs → ast-Cv0JwXqb.mjs} +1 -2
- package/dist/{ast-bindings-C3yaPs1y.mjs → ast-bindings-BkivMJIo.mjs} +6 -11
- package/dist/{atomic-write-Dq6R0BPN.mjs → atomic-write-DA6eD1Kp.mjs} +1 -2
- package/dist/{auth-g2TQbDLD.d.mts → auth-CH4PLAX1.d.mts} +0 -2
- package/dist/{auth-Cbqi1iVX.mjs → auth-CL-p_rqV.mjs} +1 -1
- package/dist/{auth-B6iOCjKI.mjs → auth-Dy8svcqQ.mjs} +6 -7
- package/dist/{auth-3sGB0zJ1.mjs → auth-YVjBX5NY.mjs} +1 -2
- package/dist/{auth-client-Bawdj38n.d.mts → auth-client-6-Ft9i9T.d.mts} +0 -2
- package/dist/{auth-client-BWBT8HLp.mjs → auth-client-DwCdwKbw.mjs} +1 -2
- package/dist/{auth-client-react-CMLwT2xI.mjs → auth-client-react-CJdeErvM.mjs} +1 -2
- package/dist/{auth-client-react-7GFffu8R.d.mts → auth-client-react-DvQLe5Zb.d.mts} +0 -2
- package/dist/{auth-client-solid-UoreJWZG.mjs → auth-client-solid-BRvgvp6h.mjs} +1 -2
- package/dist/{auth-client-solid-DyTFL4cq.d.mts → auth-client-solid-P9pEtKGp.d.mts} +0 -2
- package/dist/{auth-client-svelte-zetW0KIH.d.mts → auth-client-svelte-B5j8irT6.d.mts} +0 -2
- package/dist/{auth-client-svelte-Cv_WvrRk.mjs → auth-client-svelte-BSqUCEed.mjs} +1 -2
- package/dist/{auth-client-vue-bChShbQP.d.mts → auth-client-vue-BEiAfavk.d.mts} +0 -2
- package/dist/{auth-client-vue-CFk7Xbv3.mjs → auth-client-vue-CPkbRtOO.mjs} +1 -2
- package/dist/{auth-link-CedYpDCy.mjs → auth-link-CVXP1G6G.mjs} +7 -8
- package/dist/{auth-migrations-BO27GDNr.mjs → auth-migrations-DDeifS3v.mjs} +1 -2
- package/dist/{auth-router-vafo7x8w.mjs → auth-router-D1pGdbvB.mjs} +6 -7
- package/dist/{base64-DVrOndmI.mjs → base64-ikl9yBy3.mjs} +1 -2
- package/dist/{better-auth-shared-BHB8kiTE.d.mts → better-auth-shared-BJyG2mH0.d.mts} +2 -6
- package/dist/{better-auth-shared-7FM3Uk2N.mjs → better-auth-shared-C958aM7W.mjs} +31 -7
- package/dist/{build-cmd-9vUAQ1_V.mjs → build-cmd-DmjbuT6d.mjs} +7 -8
- package/dist/{cache-jvwLNb0h.mjs → cache-2khBO1MR.mjs} +7 -8
- package/dist/{cancel-deploy-Dw0UmWKO.mjs → cancel-deploy-_itbbvY3.mjs} +6 -7
- package/dist/{cf-access-CWP4avfP.mjs → cf-access-BmBT2h8_.mjs} +3 -4
- package/dist/{cf-access-BM9G0lhO.mjs → cf-access-pejlJmuy.mjs} +1 -2
- package/dist/{cf-build-output-XpNR9zoh.mjs → cf-build-output-B1C8U83u.mjs} +41 -314
- package/dist/cf-build-output-CmDOcA7K.mjs +1 -0
- package/dist/{cf-command-values-ByHk0xg4.mjs → cf-command-values-Ccl-zRhl.mjs} +10 -7
- package/dist/cf-config-migrate-Dy8MrKgF.mjs +326 -0
- package/dist/{cf-worker-settings-Dg27RzyT.mjs → cf-worker-settings-CARs4Wy9.mjs} +3 -5
- package/dist/cli/cli.mjs +66 -76
- package/dist/cli/cloudflare-operation-process.mjs +14 -18
- package/dist/cli/env-schema-probe.d.mts +1 -5
- package/dist/cli/env-schema-probe.mjs +4 -5
- package/dist/client-CEtr5UOR.mjs +1 -0
- package/dist/{client-B3LnB_bE.mjs → client-CoxPEhJq.mjs} +15 -13
- package/dist/{cloudflare-auth-DyD_kVFr.mjs → cloudflare-auth-CEu-1Ps_.mjs} +2 -3
- package/dist/{cloudflare-cmd-D-b_u3T4.mjs → cloudflare-cmd-fZ6AMSWk.mjs} +7 -8
- package/dist/{cloudflare-config-CH1AylZT.mjs → cloudflare-config-eQunqX6A.mjs} +22 -17
- package/dist/{cloudflare-connect-zTJh8UnN.mjs → cloudflare-connect-9OZe4XVQ.mjs} +5 -6
- package/dist/{cloudflare-operations-Bc-7fN44.mjs → cloudflare-operations-CrskD4_O.mjs} +8 -9
- package/dist/{cloudflare-operations-BtulCNOg.mjs → cloudflare-operations-oLvAd9Nd.mjs} +1 -1
- package/dist/{cloudflare-process-8jEYIeim.mjs → cloudflare-process-DjJ638A-.mjs} +7 -9
- package/dist/{cloudflare-user-output-Q-k0QoNQ.mjs → cloudflare-user-output-zEwuGrEJ.mjs} +1 -2
- package/dist/collect-8i0wU63d.mjs +1 -0
- package/dist/{collect-Dew86qce.mjs → collect-C6Blu9yw.mjs} +2 -3
- package/dist/{config-tqMM6DwY.mjs → config-BBlVXZCU.mjs} +5 -6
- package/dist/{config-OFOAimzt.mjs → config-BITKQ3O6.mjs} +5 -5
- package/dist/{config-BV2ASlpn.mjs → config-BgysUhnm.mjs} +1 -1
- package/dist/{config-CAdZVTLN.d.mts → config-CPxJmt4M.d.mts} +4 -6
- package/dist/{config-D-6q7EBH.mjs → config-WlvEcL82.mjs} +3 -4
- package/dist/config-entry.d.mts +1 -3
- package/dist/config-entry.mjs +1 -2
- package/dist/{connect-BOM6zvFX.mjs → connect-CKvmkl2R.mjs} +10 -11
- package/dist/{create-project-C2K0DN2O.mjs → create-project-BiMmR5wA.mjs} +1 -1
- package/dist/{create-project-Bxd02EHN.mjs → create-project-Bq0M8MtO.mjs} +9 -11
- package/dist/{database-provider-Cx525bwX.mjs → database-provider-DkZo4VwN.mjs} +1 -2
- package/dist/database-provider.d.mts +1 -3
- package/dist/database-provider.mjs +1 -1
- package/dist/{db-Cdvr3zwG.mjs → db-cq5RW4Vy.mjs} +52 -54
- package/dist/{db-types-0eCiqYb1.mjs → db-types-C_8amnB0.mjs} +3 -4
- package/dist/{delete-lETE6Tpt.mjs → delete-CY4L8fi2.mjs} +7 -8
- package/dist/deploy-B029oHlE.mjs +2 -0
- package/dist/{deploy-CdM-LAxX.mjs → deploy-D_gEojD2.mjs} +144 -136
- package/dist/{deploy-managed-static-DjeBFG2c.mjs → deploy-managed-static-BHVbB_-A.mjs} +33 -40
- package/dist/{deploy-transport-DIq_gFTP.mjs → deploy-transport-DEyOUfac.mjs} +6 -7
- package/dist/deploy.d.mts +1 -3
- package/dist/deploy.mjs +11 -11
- package/dist/{dev-inbox-D0jxye_D.mjs → dev-inbox-CUUS6iUg.mjs} +3 -4
- package/dist/discover-D4mQthao.mjs +1 -0
- package/dist/{discover-LaV0tbIu.mjs → discover-Dhkzxgdt.mjs} +3 -4
- package/dist/{dispatch-CLa2LThw.mjs → dispatch-BNLB5_Gm.mjs} +12 -15
- package/dist/{dist-Cegxq8gs.mjs → dist-B6eN80gc.mjs} +199 -118
- package/dist/{dist-D15hFhP0.mjs → dist-BWNkVq50.mjs} +8 -15
- package/dist/{dist-Cor9XGoz.mjs → dist-D23AAMxT.mjs} +9 -16
- package/dist/{dist-ipQi0Q8y.mjs → dist-DMYe8CZJ.mjs} +1 -2
- package/dist/{dist-B1PLt4_8.mjs → dist-eV_Ep60B.mjs} +1 -1
- package/dist/{domain-DyhNtdYf.mjs → domain-BlH90Ods.mjs} +8 -9
- package/dist/{dotenv-CNazY3-w.mjs → dotenv-CEI8hapP.mjs} +1 -2
- package/dist/{drizzle-9TubSZvI.mjs → drizzle-C8MPqt5m.mjs} +1 -1
- package/dist/{drizzle-BQfyvQKX.mjs → drizzle-lFdzSEa9.mjs} +2 -3
- package/dist/{email-B9ayYQEG.mjs → email-BHY72ixO.mjs} +3 -4
- package/dist/{email-DM2wDcBN.mjs → email-Bkq8ZL1p.mjs} +14 -15
- package/dist/{email-cloudflare-PMbAev9Q.mjs → email-cloudflare-MvJIxrwx.mjs} +18 -123
- package/dist/{email-protocol-D9nTvhCp.mjs → email-protocol-DTs_TjCS.mjs} +1 -2
- package/dist/{entry-BEM8ZuGP.mjs → entry-CBZsCy3O.mjs} +5 -6
- package/dist/{env-78hbN-oI.mjs → env-AvuCSeCH.mjs} +10 -11
- package/dist/{env-BaMz0j7H.mjs → env-CuzZZyjB.mjs} +3 -4
- package/dist/{env-0jrMQJI_.mjs → env-DtKg5G26.mjs} +2 -3
- package/dist/{env-helpers--wFmQ_5Q.mjs → env-helpers-Dj_SIwPu.mjs} +1 -2
- package/dist/{env-helpers-CyKtOBpj.d.mts → env-helpers-U56xuFgL.d.mts} +1 -3
- package/dist/{env-public-6lqiSD2b.d.mts → env-public-CeNeO_AT.d.mts} +2 -4
- package/dist/{env-raw-D74P4ebM.mjs → env-raw-e8qgqAzQ.mjs} +1 -2
- package/dist/{env-types-BicfKBhV.mjs → env-types-DqzVBKnS.mjs} +4 -5
- package/dist/{env-validation-BUfFZ6bt.mjs → env-validation-C8Cmvas0.mjs} +1 -1
- package/dist/{env-validation-B3VobvXm.mjs → env-validation-GV1oD4EV.mjs} +9 -10
- package/dist/{error-pages-CLIJ7aYq.mjs → error-pages-COVBnzK7.mjs} +6 -12
- package/dist/{fetch-CUX0tB78.d.mts → fetch-B-gLGYVl.d.mts} +0 -4
- package/dist/{fetch-CtESUYWd.mjs → fetch-C8yhLoF3.mjs} +3 -4
- package/dist/{fetch-error-Bw0n-IY-.mjs → fetch-error-DmlRM6e4.mjs} +2 -4
- package/dist/{fetch-stream-BspOeTAI.mjs → fetch-stream-DafNtVJC.mjs} +4 -5
- package/dist/{fetch-stream-DfkAzZf-.d.mts → fetch-stream-DuwxWmBM.d.mts} +1 -3
- package/dist/{gen-CFmsUsW1.mjs → gen-BD-dfjxY.mjs} +12 -13
- package/dist/gen-CIHXh9I8.mjs +1 -0
- package/dist/{generate-DkEb9rL-.mjs → generate-BOp1g1H_.mjs} +1 -1
- package/dist/{generate-B1m4Cm4n.mjs → generate-CWb8aOsm.mjs} +4 -5
- package/dist/{generated-wrangler-config-DeWj5F9Y.mjs → generated-wrangler-config-CoDaaFsA.mjs} +1 -2
- package/dist/{git-metadata-D-gurjzG.mjs → git-metadata-Cukp5kV5.mjs} +1 -2
- package/dist/{github-cmd-De-_IWbM.mjs → github-cmd-CA-lBdkn.mjs} +8 -9
- package/dist/{handler-BHktmuTL.d.mts → handler-BR6Tvjkp.d.mts} +18 -26
- package/dist/{handler-BZ1t7-Rv.mjs → handler-CKeTtYID.mjs} +6 -17
- package/dist/{head-D2VF4ApL.mjs → head-5XPcnG-j.mjs} +1 -2
- package/dist/{head-C8K_iGe6.d.mts → head-MeF_5M_3.d.mts} +0 -2
- package/dist/headers-CuTEdP9C.mjs +445 -0
- package/dist/{help-CKbrhZha.mjs → help-1OCFDsRr.mjs} +28 -12
- package/dist/help-Ba8Dq5-r.mjs +1 -0
- package/dist/{inbound-Da7XsjH3.d.mts → inbound-BHt4dIlL.d.mts} +16 -9
- package/dist/{inbound-VrOLqwZY.mjs → inbound-CdO-qY0w.mjs} +6 -81
- package/dist/index.d.mts +23 -13
- package/dist/index.mjs +495 -223
- package/dist/{info-Yg0-V5Rs.mjs → info-CJxua_db.mjs} +6 -7
- package/dist/{init-CDiJQycf.mjs → init-B-4CluYx.mjs} +43 -59
- package/dist/{isr-config-fZaJJ8t7.mjs → isr-config-Czzb4mIq.mjs} +5 -55
- package/dist/{limits-D0vD1M9A.mjs → limits-CrHLm5Tk.mjs} +1 -2
- package/dist/{limits-CFsDKQvU.d.mts → limits-_xIf5z_P.d.mts} +0 -2
- package/dist/{link-Dllip08S.mjs → link-DAXOT-G_.mjs} +8 -9
- package/dist/{list-BYRP6am0.mjs → list-BYSOo9fm.mjs} +8 -9
- package/dist/{live-BllfDuzA.d.mts → live-0xrcVpyq.d.mts} +2 -4
- package/dist/{live-BcHoTDFe.mjs → live-DF4HUl2m.mjs} +5 -7
- package/dist/{load-user-env-DD5qveNU.mjs → load-user-env-CSwdofj0.mjs} +1 -2
- package/dist/{local-d1-CAwAs9GH.mjs → local-d1-BLgsNUj9.mjs} +4 -5
- package/dist/{log-BMwmN5Ae.mjs → log-D9hwSySP.mjs} +3 -4
- package/dist/login-BpbYeu-n.mjs +1 -0
- package/dist/{login-PcFy5mlC.mjs → login-CJopTWX4.mjs} +6 -7
- package/dist/{logs-DmJTBhed.mjs → logs-DE0weBsR.mjs} +19 -18
- package/dist/{migrate-B8S2xTcb.mjs → migrate-ChHHZBTi.mjs} +20 -16
- package/dist/migrate-HdA6Kh2p.mjs +1 -0
- package/dist/{migration-handler-CwlEQUoo.d.mts → migration-handler-D8mDx3Ew.d.mts} +0 -4
- package/dist/{migration-handler-Cg0Y4EPu.mjs → migration-handler-DCehTlWs.mjs} +1 -2
- package/dist/{mime-BAyHPskU.mjs → mime-CtP6-qAF.mjs} +145 -18
- package/dist/{mysql-migration-sql-BIS5vbNk.mjs → mysql-migration-sql-CI9VTwjt.mjs} +3 -5
- package/dist/{neon-DTZr7Bu7.mjs → neon-CJzQSycr.mjs} +2 -3
- package/dist/nitro.d.mts +0 -2
- package/dist/nitro.mjs +5 -6
- package/dist/{node-CDOPrGSl.mjs → node-CZ6lGNLn.mjs} +8 -9
- package/dist/{operator-args-BsJIYXaT.mjs → operator-args-D79WQP70.mjs} +2 -3
- package/dist/{operator-auth-Cr2zCc-J.mjs → operator-auth-CfDcmzpo.mjs} +2 -3
- package/dist/{operator-client-C-ROjk1I.mjs → operator-client-BIY4-N_6.mjs} +3 -4
- package/dist/{operator-cmd-DmkmS2wL.mjs → operator-cmd-BUqsdk2K.mjs} +32 -15
- package/dist/operator-cmd-wBYyp8iQ.mjs +1 -0
- package/dist/{output-BpgYODYx.mjs → output-BCdLioKP.mjs} +4 -5
- package/dist/output-E6gecbbV.mjs +1 -0
- package/dist/{package-json-BjYqR-So.mjs → package-json-DvS6IFRv.mjs} +2 -3
- package/dist/pages/client.d.mts +147 -31
- package/dist/pages/client.mjs +199 -43
- package/dist/pages/head.d.mts +1 -1
- package/dist/pages/head.mjs +1 -1
- package/dist/pages/index.d.mts +25 -18
- package/dist/pages/index.mjs +24 -12
- package/dist/pages/islands-plugin.d.mts +75 -13
- package/dist/pages/islands-plugin.mjs +92 -7
- package/dist/pages/prefetch.d.mts +2 -2
- package/dist/pages/prefetch.mjs +1 -1
- package/dist/pages/protocol.d.mts +2 -2
- package/dist/pages/protocol.mjs +2 -2
- package/dist/pages/serialize.d.mts +1 -1
- package/dist/pages/serialize.mjs +1 -1
- package/dist/{pg-J2HbZIkX.mjs → pg-DoyPxa_X.mjs} +1 -2
- package/dist/{picocolors-BsDfhxIw.mjs → picocolors-D1NxSLw-.mjs} +2 -3
- package/dist/{plan-BhLO2p4w.mjs → plan-BOD70XGS.mjs} +1 -2
- package/dist/plan-CQ-N4gws.mjs +1 -0
- package/dist/platform-args-C7XUw9mw.mjs +1 -0
- package/dist/{platform-args-BMD2gjc_.mjs → platform-args-Cx1M-7bq.mjs} +22 -11
- package/dist/{platform-auth-config-CImnfohz.mjs → platform-auth-config-K4m_LE8b.mjs} +10 -11
- package/dist/{platform-auth-protection-BogLhtHi.mjs → platform-auth-protection-KF5Vo-1I.mjs} +10 -11
- package/dist/{platform-auth-recovery-B-mEaWEi.mjs → platform-auth-recovery-BOdFrl7R.mjs} +9 -11
- package/dist/{platform-cmd-CV8NxIIn.mjs → platform-cmd-DpCHawGF.mjs} +1 -1
- package/dist/{platform-cmd-DZK2ixMl.mjs → platform-cmd-Ds3EAV5t.mjs} +13 -13
- package/dist/{platform-discovery-CHhNs8Nn.mjs → platform-discovery-B0eZjZ3B.mjs} +2 -3
- package/dist/{platform-domain-CRvelPGE.mjs → platform-domain-rWJshybd.mjs} +7 -8
- package/dist/{platform-lifecycle-DwXq7kZt.mjs → platform-lifecycle-BH34I0rh.mjs} +1 -1
- package/dist/{platform-lifecycle-CPYY7E9B.mjs → platform-lifecycle-D9RdGub1.mjs} +110 -110
- package/dist/{platform-management-BOnGbMSM.mjs → platform-management-BRefdHGD.mjs} +27 -11
- package/dist/{platform-management-lXdgGgAM.mjs → platform-management-BfLW0Zlo.mjs} +1 -1
- package/dist/{platform-plans-config-CeydDSj0.mjs → platform-plans-config-Dx1agneU.mjs} +5 -6
- package/dist/{platform-recovery-noaALXnE.mjs → platform-recovery-DZuZGJtt.mjs} +5 -6
- package/dist/{platform-registry-B9mWX9LO.mjs → platform-registry-DZ_2Xuqd.mjs} +4 -6
- package/dist/platform-runtime-logs-CdJGnk3f.mjs +68 -0
- package/dist/{platform-setup-Ca53gtt0.mjs → platform-setup-Vw1AaUN8.mjs} +19 -7
- package/dist/{plugin-inference-CeiB6BG5.mjs → plugin-inference-CdLbxZL_.mjs} +16 -24
- package/dist/{prefetch-Bsc_Pb6c.mjs → prefetch-Dx2jIbtg.mjs} +20 -3
- package/dist/{prefetch-Ce6la4EI.d.mts → prefetch-NdNeubbH.d.mts} +7 -3
- package/dist/{prepare-D604Yiyr.mjs → prepare-BJW-f1f1.mjs} +13 -14
- package/dist/{prepare-BuOS18AM.mjs → prepare-BMGeKL16.mjs} +4 -5
- package/dist/prepare-BdxJJCMv.mjs +1 -0
- package/dist/{prerender-render-CaShbHJ3.mjs → prerender-render-RlAj6hh8.mjs} +2 -3
- package/dist/prerender-render.d.mts +1 -3
- package/dist/prerender-render.mjs +1 -1
- package/dist/{project-rqDnVsJN.mjs → project-CLwxcEdq.mjs} +3 -4
- package/dist/{project-zdB3fs9G.mjs → project-DVsTAWFh.mjs} +1 -1
- package/dist/{project-cmd-DBYqAIbe.mjs → project-cmd-B_bUyZ3J.mjs} +21 -23
- package/dist/{project-paths-DGu_QZ_Q.mjs → project-paths-CdGv9Tmi.mjs} +3 -5
- package/dist/project-slug-BUy0lmyR.mjs +1 -0
- package/dist/{project-slug-23TpquG4.mjs → project-slug-CO6ci9XG.mjs} +0 -1
- package/dist/{project-team-BjCLgTRC.mjs → project-team-MjT5K4rQ.mjs} +7 -8
- package/dist/{project-token-BB6PwaA9.mjs → project-token-BKHGwY3k.mjs} +7 -8
- package/dist/{project-tsconfig-CVvk6Z_e.mjs → project-tsconfig-Cf2NFjlM.mjs} +4 -6
- package/dist/{project-zero-trust-CWDh1P_t.mjs → project-zero-trust-Bzdd05-h.mjs} +7 -8
- package/dist/{protocol-DimNxVRr.mjs → protocol-COyySMki.mjs} +135 -113
- package/dist/{protocol-D5XDySYu.d.mts → protocol-CkwjASep.d.mts} +4 -6
- package/dist/{providers-BNKRacMr.d.mts → providers-D5P8j_8D.d.mts} +0 -2
- package/dist/{providers-BUHwJlmM.mjs → providers-ZARwX2cL.mjs} +1 -2
- package/dist/{provision-DztLJ97X.mjs → provision-BbCzpbXs.mjs} +6 -7
- package/dist/{provision-DfxLCg-d.mjs → provision-DQF6Kw-6.mjs} +1 -1
- package/dist/{queues-BWKt1Xo4.d.mts → queues-DdM42xXW.d.mts} +0 -2
- package/dist/{r2-conditions-B8xUgJRc.mjs → r2-conditions-BqkQNt2n.mjs} +1 -2
- package/dist/{requests-D_pbzDyz.mjs → requests-daJmVpjk.mjs} +6 -7
- package/dist/resolve-project-CgfjtOwz.mjs +1 -0
- package/dist/{resolve-project-Xoi6eTWY.mjs → resolve-project-D0YNnJfm.mjs} +4 -5
- package/dist/{resource-name-C7LVpcRm.mjs → resource-name-DlJ9QXzg.mjs} +1 -2
- package/dist/{response-Tn7rU0MV.mjs → response-HmNjB30w.mjs} +1 -2
- package/dist/{rollback-CjfIYsJx.mjs → rollback-BgL0wY1J.mjs} +7 -8
- package/dist/{rolldown-runtime-3h0WiCiA.mjs → rolldown-runtime-uD8oG6U2.mjs} +1 -2
- package/dist/{route-types-DvEGmPif.mjs → route-types-CZc1YXjF.mjs} +80 -9
- package/dist/route-url-CRDF-I0I.mjs +57 -0
- package/dist/route-url-C_YIH_zO.d.mts +37 -0
- package/dist/routes-stub.d.mts +8 -3
- package/dist/routes-stub.mjs +1 -1
- package/dist/{routing-assets-DdSFxoLp.mjs → routing-assets-DJIVOrCh.mjs} +1 -2
- package/dist/{runner-3uGC-oLF.mjs → runner-5MCSimKx.mjs} +5 -6
- package/dist/{runner-WCdfeI0q.mjs → runner-QMeOpScZ.mjs} +1 -1
- package/dist/{runner-mysql-BcHnLUuM.mjs → runner-mysql-0zVmB1JW.mjs} +1 -1
- package/dist/{runner-mysql-BWmbk5IE.mjs → runner-mysql-Bdmsp_x4.mjs} +3 -4
- package/dist/{runner-pg-Cgp-cr_p.mjs → runner-pg-2pjltt0t.mjs} +1 -1
- package/dist/{runner-pg-Cr3qrqi4.mjs → runner-pg-mYc75KfH.mjs} +2 -3
- package/dist/runtime/ai.d.mts +0 -4
- package/dist/runtime/ai.mjs +6 -8
- package/dist/runtime/auth-client-react.d.mts +1 -1
- package/dist/runtime/auth-client-react.mjs +1 -1
- package/dist/runtime/auth-client-solid.d.mts +1 -1
- package/dist/runtime/auth-client-solid.mjs +1 -1
- package/dist/runtime/auth-client-svelte.d.mts +1 -1
- package/dist/runtime/auth-client-svelte.mjs +1 -1
- package/dist/runtime/auth-client-vue.d.mts +1 -1
- package/dist/runtime/auth-client-vue.mjs +1 -1
- package/dist/runtime/auth-client.d.mts +1 -1
- package/dist/runtime/auth-client.mjs +1 -1
- package/dist/runtime/auth.d.mts +1 -1
- package/dist/runtime/auth.mjs +1 -1
- package/dist/runtime/better-auth-mysql.d.mts +2 -4
- package/dist/runtime/better-auth-mysql.mjs +3 -4
- package/dist/runtime/better-auth-pg.d.mts +2 -4
- package/dist/runtime/better-auth-pg.mjs +4 -5
- package/dist/runtime/better-auth.d.mts +2 -4
- package/dist/runtime/better-auth.mjs +3 -4
- package/dist/runtime/client-react.d.mts +4 -4
- package/dist/runtime/client-react.mjs +4 -4
- package/dist/runtime/client-solid.d.mts +4 -4
- package/dist/runtime/client-solid.mjs +4 -4
- package/dist/runtime/client-svelte.d.mts +4 -4
- package/dist/runtime/client-svelte.mjs +4 -4
- package/dist/runtime/client-vue.d.mts +4 -4
- package/dist/runtime/client-vue.mjs +4 -4
- package/dist/runtime/client.d.mts +4 -4
- package/dist/runtime/client.mjs +4 -4
- package/dist/runtime/db.d.mts +0 -2
- package/dist/runtime/db.mjs +2 -3
- package/dist/runtime/durable.d.mts +0 -2
- package/dist/runtime/durable.mjs +3 -4
- package/dist/runtime/email/testing.d.mts +1 -5
- package/dist/runtime/email/testing.mjs +5 -6
- package/dist/runtime/email-protocol.d.mts +0 -2
- package/dist/runtime/email-protocol.mjs +1 -1
- package/dist/runtime/email.d.mts +1 -5
- package/dist/runtime/email.mjs +6 -7
- package/dist/runtime/env-public-client.d.mts +1 -3
- package/dist/runtime/env-public-client.mjs +2 -3
- package/dist/runtime/env-public.d.mts +2 -2
- package/dist/runtime/env-public.mjs +5 -7
- package/dist/runtime/env.d.mts +0 -4
- package/dist/runtime/env.mjs +1 -1
- package/dist/runtime/fetch-server.d.mts +1 -3
- package/dist/runtime/fetch-server.mjs +3 -4
- package/dist/runtime/fetch-stream.d.mts +2 -2
- package/dist/runtime/fetch-stream.mjs +2 -2
- package/dist/runtime/fetch.d.mts +1 -1
- package/dist/runtime/fetch.mjs +2 -2
- package/dist/runtime/handler.d.mts +1 -1
- package/dist/runtime/handler.mjs +2 -2
- package/dist/runtime/isr.d.mts +1 -3
- package/dist/runtime/isr.mjs +2 -3
- package/dist/runtime/kv.d.mts +1 -3
- package/dist/runtime/kv.mjs +2 -3
- package/dist/runtime/limits.d.mts +1 -1
- package/dist/runtime/limits.mjs +1 -1
- package/dist/runtime/live-client.d.mts +1 -3
- package/dist/runtime/live-client.mjs +1 -2
- package/dist/runtime/live-server.d.mts +0 -2
- package/dist/runtime/live-server.mjs +3 -4
- package/dist/runtime/live.d.mts +1 -1
- package/dist/runtime/live.mjs +1 -1
- package/dist/runtime/log.d.mts +3 -3
- package/dist/runtime/log.mjs +26 -18
- package/dist/runtime/migration-handler-mysql.d.mts +2 -4
- package/dist/runtime/migration-handler-mysql.mjs +2 -3
- package/dist/runtime/migration-handler-pg.d.mts +2 -4
- package/dist/runtime/migration-handler-pg.mjs +2 -3
- package/dist/runtime/migration-handler.d.mts +1 -1
- package/dist/runtime/migration-handler.mjs +1 -1
- package/dist/runtime/queues.d.mts +1 -1
- package/dist/runtime/queues.mjs +2 -3
- package/dist/runtime/remote/binding-handler.d.mts +1 -3
- package/dist/runtime/remote/binding-handler.mjs +3 -4
- package/dist/runtime/remote/index.d.mts +1 -3
- package/dist/runtime/remote/index.mjs +8 -13
- package/dist/runtime/response.d.mts +1 -3
- package/dist/runtime/response.mjs +1 -1
- package/dist/runtime/route-url.d.mts +2 -2
- package/dist/runtime/route-url.mjs +1 -1
- package/dist/runtime/routing.d.mts +8 -11
- package/dist/runtime/routing.mjs +52 -32
- package/dist/runtime/sandbox-container.d.mts +1 -1
- package/dist/runtime/sandbox-container.mjs +1 -1
- package/dist/runtime/sandbox.d.mts +2 -2
- package/dist/runtime/sandbox.mjs +5 -6
- package/dist/runtime/seed.d.mts +0 -2
- package/dist/runtime/seed.mjs +1 -2
- package/dist/runtime/sse-client.d.mts +1 -3
- package/dist/runtime/sse-client.mjs +1 -2
- package/dist/runtime/sse.d.mts +1 -3
- package/dist/runtime/sse.mjs +1 -1
- package/dist/runtime/storage.d.mts +1 -3
- package/dist/runtime/storage.mjs +2 -3
- package/dist/runtime/validator.d.mts +1 -1
- package/dist/runtime/validator.mjs +1 -1
- package/dist/runtime/ws-server.d.mts +3 -5
- package/dist/runtime/ws-server.mjs +3 -4
- package/dist/runtime/ws.d.mts +1 -1
- package/dist/runtime/ws.mjs +3 -4
- package/dist/{sandbox-q3waMc2T.d.mts → sandbox-DE1WsxuB.d.mts} +2 -4
- package/dist/{sandbox-container-a9LRUtii.mjs → sandbox-container-BuxhwCgt.mjs} +1 -2
- package/dist/{sandbox-container-ChQRum-j.d.mts → sandbox-container-CZFZdMso.d.mts} +0 -2
- package/dist/{scan-N9WzdcAl.mjs → scan-X2rDDRNa.mjs} +49 -35
- package/dist/{secret-3X0PxmuX.mjs → secret-CPq-B_vp.mjs} +17 -15
- package/dist/{serialize-YHvlcG3Q.mjs → serialize-DUuYuaY3.mjs} +2 -4
- package/dist/{serialize-DtR8Vwa_.d.mts → serialize-I4EmS-Wf.d.mts} +0 -2
- package/dist/{skills-CrUO3PJ0.mjs → skills-D393E4lB.mjs} +4 -5
- package/dist/{sqlite-validation-BzKMWnO4.mjs → sqlite-validation-CLJXXN93.mjs} +1 -2
- package/dist/{sse-CMvCgjNk.mjs → sse-CxR30yMF.mjs} +1 -2
- package/dist/{standard-schema-Fo_vCAZh.d.mts → standard-schema-CuDawHOC.d.mts} +0 -2
- package/dist/{static-asset-marker-Btf-6oCD.mjs → static-asset-marker-DsQKz6lt.mjs} +9 -3
- package/dist/{subcommand-prompt-D9OhhbGG.mjs → subcommand-prompt-CxJXporl.mjs} +3 -4
- package/dist/sveltekit.d.mts +0 -2
- package/dist/sveltekit.mjs +2 -3
- package/dist/{terminal-log-text-D9ACPOuG.mjs → terminal-log-text-DNsWJREL.mjs} +1 -2
- package/dist/{types-w72dljaA.d.mts → types-agfx0alu.d.mts} +0 -4
- package/dist/validate-DY1U9rET.mjs +1 -0
- package/dist/{validate-CnZPMq4q.mjs → validate-Ddzl-IwT.mjs} +4 -5
- package/dist/validation-error-uAAjlsiW.mjs +82 -0
- package/dist/{validator-BTOu0fB0.mjs → validator-CTfmzZYb.mjs} +2 -5
- package/dist/{version-metadata-D2vfMQzv.mjs → version-metadata-C8hLzQkv.mjs} +4 -6
- package/dist/{worker-conditions-AWFRcFxR.mjs → worker-conditions-CBZ0RYsZ.mjs} +1 -2
- package/dist/{wrangler-I-scB_1t.mjs → wrangler-DESSbN8L.mjs} +6 -8
- package/dist/wrangler-DUB3MGHV.mjs +1 -0
- package/dist/{wrapper-BBl1rC32.mjs → wrapper-C9SUxoj7.mjs} +17 -14
- package/dist/{ws-B3ClMVDh.d.mts → ws-Dmjg5NH2.d.mts} +3 -5
- package/dist/{yarn-pnp-DLbEFMT0.mjs → yarn-pnp-DgWbE7z5.mjs} +2 -3
- package/docs/guide/database.md +4 -4
- package/docs/guide/deployment.md +1 -1
- package/docs/guide/edge/headers.md +4 -6
- package/docs/guide/edge/redirects.md +4 -4
- package/docs/guide/edge/rewrites.md +1 -1
- package/docs/guide/edge/static-assets.md +0 -10
- package/docs/guide/email/domains.md +3 -1
- package/docs/guide/email/receiving.md +4 -4
- package/docs/guide/email/sending.md +43 -13
- package/docs/guide/pages-routing/actions-and-forms.md +26 -9
- package/docs/guide/pages-routing/islands.md +5 -5
- package/docs/guide/pages-routing/layouts.md +16 -2
- package/docs/guide/pages-routing/loaders.md +5 -5
- package/docs/guide/pages-routing/markdown.md +7 -7
- package/docs/guide/pages-routing/overview.md +137 -27
- package/docs/guide/platform/administration/connected-apps.md +4 -2
- package/docs/guide/platform/administration/email.md +6 -8
- package/docs/guide/platform/installation/credentials.md +12 -10
- package/docs/guide/platform/installation/maintenance.md +18 -21
- package/docs/guide/platform/installation/prerequisites.md +1 -1
- package/docs/guide/platform/installation/setup.md +23 -2
- package/docs/guide/platform/installation/uninstall.md +1 -1
- package/docs/guide/queues.md +4 -8
- package/docs/guide/self-hosted-platform.md +3 -3
- package/docs/guide/server-routing.md +7 -7
- package/docs/guide/ssg.md +3 -3
- package/docs/guide/type-safety.md +84 -1
- package/docs/guide/typed-fetch.md +1 -1
- package/docs/guide/websockets.md +1 -1
- package/docs/integrations/cloudflare.md +2 -2
- package/docs/integrations/frameworks/analog.md +1 -1
- package/docs/integrations/frameworks/astro.md +17 -12
- package/docs/integrations/frameworks/nuxt.md +1 -1
- package/docs/integrations/frameworks/overview.md +2 -2
- package/docs/integrations/frameworks/sveltekit.md +1 -1
- package/docs/integrations/frameworks/tanstack-start.md +1 -1
- package/docs/integrations/hono.md +5 -5
- package/docs/reference/api/auth.md +1 -1
- package/docs/reference/api/deploy.md +6 -6
- package/docs/reference/api/pages.md +109 -50
- package/docs/reference/api/plugin.md +4 -4
- package/docs/reference/api/resources.md +4 -1
- package/docs/reference/api/rewrites.md +24 -3
- package/docs/reference/api/types.md +45 -0
- package/docs/reference/api.md +2 -2
- package/docs/reference/cli/database.md +15 -9
- package/docs/reference/cli/email.md +4 -2
- package/docs/reference/cli/platform-installation.md +6 -3
- package/docs/reference/cli/project.md +2 -2
- package/docs/reference/cli/secrets.md +3 -1
- package/docs/reference/cli/setup.md +4 -4
- package/docs/reference/cli.md +1 -1
- package/docs/reference/config.md +12 -2
- package/package.json +36 -32
- package/sandbox.Dockerfile +1 -1
- package/schema.json +4 -0
- package/skills/void/SKILL.md +5 -0
- package/dist/cf-build-output-bd8Uwv1P.mjs +0 -1
- package/dist/client-BZb9j66F.mjs +0 -1
- package/dist/collect-BWhkgtAn.mjs +0 -1
- package/dist/deploy-CX94CmKa.mjs +0 -2
- package/dist/discover-D4TPKo57.mjs +0 -1
- package/dist/gen-BhWBT4iu.mjs +0 -1
- package/dist/headers--vaK_chu.mjs +0 -226
- package/dist/help-qOZr3wng.mjs +0 -1
- package/dist/login-BAPmYnb7.mjs +0 -1
- package/dist/migrate-BIYTPQE6.mjs +0 -1
- package/dist/operator-cmd-CjazwOyb.mjs +0 -1
- package/dist/output-BW9uK099.mjs +0 -1
- package/dist/plan-CKX_jWnD.mjs +0 -1
- package/dist/platform-args-BC8_hsDj.mjs +0 -1
- package/dist/prepare-DU-tOpS5.mjs +0 -1
- package/dist/project-slug-6cyz8E7k.mjs +0 -1
- package/dist/resolve-project-DD1vu8s9.mjs +0 -1
- package/dist/route-url-BgPja1GS.d.mts +0 -5
- package/dist/route-url-BjGv_KKY.mjs +0 -28
- package/dist/validate-D7Wn8PUX.mjs +0 -1
- package/dist/validation-error-Dg9Recn1.mjs +0 -49
- package/dist/wrangler-UnwdISay.mjs +0 -1
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { S as writePendingInstallationSecrets, _ as removePlatformConnectionForInstallation, g as removeInstallationRecoverySecrets, h as readPendingInstallationSecrets, m as readInstallationRecoverySecrets, o as listInstallationManifests, t as acquirePlatformLifecycleLock, v as resolveInstallationManifest, x as writeInstallationManifest } from "./platform-registry-
|
|
2
|
-
import { t as ensurePlatformAccessToken } from "./cf-access-
|
|
3
|
-
import { A as confirm, H as outro, K as select, L as log, tt as isCancel } from "./dist-
|
|
4
|
-
import { f as import_picocolors, l as formatUrl, m as printSuccess, p as note, r as createSpinner } from "./output-
|
|
5
|
-
import {
|
|
1
|
+
import { S as writePendingInstallationSecrets, _ as removePlatformConnectionForInstallation, g as removeInstallationRecoverySecrets, h as readPendingInstallationSecrets, m as readInstallationRecoverySecrets, o as listInstallationManifests, t as acquirePlatformLifecycleLock, v as resolveInstallationManifest, x as writeInstallationManifest } from "./platform-registry-DZ_2Xuqd.mjs";
|
|
2
|
+
import { t as ensurePlatformAccessToken } from "./cf-access-BmBT2h8_.mjs";
|
|
3
|
+
import { A as confirm, H as outro, K as select, L as log, tt as isCancel } from "./dist-D23AAMxT.mjs";
|
|
4
|
+
import { f as import_picocolors, l as formatUrl, m as printSuccess, p as note, r as createSpinner } from "./output-BCdLioKP.mjs";
|
|
5
|
+
import { i as updateProjectWorkerRuntimeLogs, n as assertPlatformRuntimeLogsSupported, r as shouldUpdateProjectWorkerRuntimeLogs } from "./platform-runtime-logs-CdJGnk3f.mjs";
|
|
6
|
+
import { $ as hyperdriveOriginMatches, A as dnsRecordConfigHash, B as turnOffInstalledProjectZeroTrust, C as createPlatformHealthProbeToken, D as platformTrafficAttachmentWorker, F as platformAdoptionIntentHash, H as resolvePlatformCloudflareCredential, I as r2BucketConfigHash, J as PlatformCloudflareApiError, L as resourceMarkerProblem, M as hasProvisionIntentStep, N as legacyResourceConfigHash, P as matchesRecordedR2Fingerprint, Q as hyperdriveOriginFromConnectionString, R as revalidatePlatformInstallAction, S as loadPlatformRuntime, T as resolveBootstrapGitHubId, U as verifyPlatformCloudflareCredential, V as assertPlatformOperatorCredentialCanApplyPlan, W as activatePlatformAccessCredentials, X as PlatformRuntimeTokenEmailPermissionError, Y as PlatformCloudflareClient, Z as hyperdriveOriginConfigHash, _ as readPlatformProjectSlugs, a as findPlatformWorkerOutsideChanges, b as formatZeroTrustApplications, c as uploadPlatformWorkerOutsideChanges, d as replacePendingInstallationAuthentication, et as verifyPlatformRuntimeTokenEmailPermissions, f as REMOTE_INSTALLATION_MANIFEST_KEY, j as formatPlatformInstallPlan, k as createPlatformInstallPlan, l as authenticationSetupRequestHash, m as acquirePlatformDatabaseLifecycleLock, n as resolvePlatformInstallDatabaseUrl, o as formatPlatformWorkerOutsideChanges, p as installPlatform, s as reviewPlatformWorkerOutsideChanges, t as assertNoninteractivePlatformMutationAcknowledged, tt as verifyPlatformRuntimeTokenPermissions, u as readLoginReplacementFile, v as readPlatformProjectZeroTrustState, w as createPlatformInstallationSecrets, x as readPlatformDatabase, y as assertProjectZeroTrustAllowsUninstall, z as platformDatabaseNameFromOwnerUrl } from "./platform-lifecycle-D9RdGub1.mjs";
|
|
6
7
|
import { PLATFORM_DISABLED_KEY, PLATFORM_DISABLED_VALUE, PLATFORM_R2_OWNERSHIP_MARKER_KEY, parsePlatformInstallationManifest, recordInstallationResource, recordInstallationStep, setInstallationDesiredState, transitionInstallation } from "@void/platform";
|
|
7
8
|
import { setTimeout } from "node:timers/promises";
|
|
8
|
-
|
|
9
|
+
// src/cli/platform-teardown.ts
|
|
9
10
|
/**
|
|
10
11
|
* `void platform uninstall --purge-resources` deletes every Cloudflare resource the
|
|
11
12
|
* installation created, in an order Cloudflare accepts:
|
|
@@ -591,8 +592,7 @@ async function runPurgeResourcesTeardown(context, initial) {
|
|
|
591
592
|
await markDeleted(bucket.key);
|
|
592
593
|
}
|
|
593
594
|
}
|
|
594
|
-
|
|
595
|
-
//#region src/cli/platform-management.ts
|
|
595
|
+
// src/cli/platform-management.ts
|
|
596
596
|
async function verifyPlatformInstallationOwnership(client, manifest, options = {}) {
|
|
597
597
|
const ready = manifest.resources.filter((resource) => resource.state === "ready" && isOwnershipVerifiableKind(resource.kind) && !options.retainedReplacementKeys?.has(resource.key));
|
|
598
598
|
if (!ready.find((resource) => resource.key === "routing-kv")) {
|
|
@@ -625,6 +625,7 @@ function platformLifecycleResumeCommand(args, installationId) {
|
|
|
625
625
|
if (args.subcommand === "rollback" && args.fromRuntime) command.push("--from-runtime", commandArgument(args.fromRuntime));
|
|
626
626
|
if ("dashboardUrl" in args && args.dashboardUrl) command.push("--dashboard-url", commandArgument(args.dashboardUrl));
|
|
627
627
|
if ("customDomains" in args && args.customDomains) command.push("--custom-domains");
|
|
628
|
+
if ("runtimeLogs" in args && args.runtimeLogs) command.push("--runtime-logs", args.runtimeLogs);
|
|
628
629
|
if (args.yes) command.push("--yes");
|
|
629
630
|
return command.join(" ");
|
|
630
631
|
}
|
|
@@ -716,6 +717,7 @@ async function runInstalledPlatformCommand(args) {
|
|
|
716
717
|
controlPlaneDomain: deployment.controlPlane.apiHostname ?? "",
|
|
717
718
|
...args.subcommand !== "rollback" && args.dashboardUrl !== void 0 ? { dashboardUrl: args.dashboardUrl } : {},
|
|
718
719
|
...args.subcommand !== "rollback" && args.customDomains ? { customDomains: true } : {},
|
|
720
|
+
...args.subcommand === "upgrade" && args.runtimeLogs !== void 0 ? { runtimeLogs: args.runtimeLogs } : {},
|
|
719
721
|
dedicatedZone: deployment.application.dedicatedZone,
|
|
720
722
|
displayName: deployment.displayName,
|
|
721
723
|
installationSlug: deployment.installationSlug,
|
|
@@ -727,10 +729,12 @@ async function runInstalledPlatformCommand(args) {
|
|
|
727
729
|
allowUnverifiedAiGateway: args.plan,
|
|
728
730
|
includeEmailGateway: runtime.manifest.artifacts.emailGateway !== void 0,
|
|
729
731
|
enableSandbox: runtime.manifest.safetyProtocols.sandboxDrain >= 3,
|
|
730
|
-
deploymentExecution: runtime.manifest.deploymentExecution === 1
|
|
732
|
+
deploymentExecution: runtime.manifest.deploymentExecution === 1,
|
|
733
|
+
allowRuntimeLogsChange: args.subcommand === "upgrade"
|
|
731
734
|
});
|
|
735
|
+
assertPlatformRuntimeLogsSupported(plan.deployment, runtime.manifest);
|
|
732
736
|
markPhase("plan");
|
|
733
|
-
note(formatPlatformInstallPlan(plan), args.subcommand === "upgrade" ? "Upgrade plan" : args.subcommand === "rollback" ? "Rollback plan" : args.subcommand === "enable" ? "Enable plan" : "Repair plan");
|
|
737
|
+
note(formatPlatformInstallPlan(plan, manifest.deployment), args.subcommand === "upgrade" ? "Upgrade plan" : args.subcommand === "rollback" ? "Rollback plan" : args.subcommand === "enable" ? "Enable plan" : "Repair plan");
|
|
734
738
|
note([
|
|
735
739
|
`Version: ${manifest.platformVersion} → ${runtime.manifest.platformVersion}`,
|
|
736
740
|
`Source: ${runtime.source}`,
|
|
@@ -873,6 +877,7 @@ async function runInstalledPlatformCommand(args) {
|
|
|
873
877
|
runtime,
|
|
874
878
|
operation: args.subcommand,
|
|
875
879
|
replanWorkers: async (recoveryManifest) => (await createPlatformInstallPlan(client, planInput, recoveryManifest, {
|
|
880
|
+
allowRuntimeLogsChange: args.subcommand === "upgrade",
|
|
876
881
|
authoritativeProvisionIntents: true,
|
|
877
882
|
repairMissing: true,
|
|
878
883
|
includeEmailGateway: runtime.manifest.artifacts.emailGateway !== void 0,
|
|
@@ -888,6 +893,16 @@ async function runInstalledPlatformCommand(args) {
|
|
|
888
893
|
});
|
|
889
894
|
progress.message("Finalizing platform changes");
|
|
890
895
|
markPhase("installer complete");
|
|
896
|
+
const runtimeLogsWarning = !result.waitingForDns && !result.waitingForSandboxDrain && shouldUpdateProjectWorkerRuntimeLogs({
|
|
897
|
+
previous: manifest.deployment,
|
|
898
|
+
next: result.manifest.deployment,
|
|
899
|
+
explicit: args.subcommand === "upgrade" && args.runtimeLogs !== void 0
|
|
900
|
+
}) ? await updateProjectWorkerRuntimeLogs(client, {
|
|
901
|
+
accountId: manifest.account.id,
|
|
902
|
+
namespace: result.manifest.deployment.resources.dispatchNamespace,
|
|
903
|
+
minimal: !!result.manifest.deployment.runtimeLogs,
|
|
904
|
+
installationId: manifest.id
|
|
905
|
+
}) : void 0;
|
|
891
906
|
reportResult = () => {
|
|
892
907
|
progress?.stop(result.waitingForDns || result.waitingForSandboxDrain ? "Platform operation paused; progress is saved." : `Platform ${args.subcommand} complete.`);
|
|
893
908
|
progress = void 0;
|
|
@@ -917,6 +932,7 @@ async function runInstalledPlatformCommand(args) {
|
|
|
917
932
|
log.info(`If sign-in fails, run \`void platform repair ${commandArgument(manifest.id)}\` to change the login settings.`);
|
|
918
933
|
}
|
|
919
934
|
}
|
|
935
|
+
if (runtimeLogsWarning) log.warn(runtimeLogsWarning);
|
|
920
936
|
printSuccess(`${deployment.displayName}: runtime ${runtime.manifest.platformVersion} ${args.subcommand === "rollback" ? "restored" : "ready"}.`);
|
|
921
937
|
};
|
|
922
938
|
};
|
|
@@ -965,6 +981,7 @@ async function runInstalledPlatformCommand(args) {
|
|
|
965
981
|
}
|
|
966
982
|
function assertPlatformRollbackCompatibility(installation, target, source) {
|
|
967
983
|
if (target.manifest.emailProtocolVersion !== 1 && (installation.deployment.capabilities.email || installation.resources.some((resource) => resource.key === "email-gateway-worker" && resource.state === "ready"))) throw new Error("platform: The rollback target predates the email gateway and cannot safely replace this installation. Use a runtime with email protocol version 1.");
|
|
984
|
+
if (installation.deployment.runtimeLogs && target.manifest.runtimeLogs !== 1) throw new Error("platform: The rollback target cannot keep runtime logs minimal. Run `void platform upgrade --runtime-logs full` first, then roll back.");
|
|
968
985
|
if (!installation.runtime) throw new Error("platform: The installed runtime has no artifact provenance, so post-success rollback cannot identify its compatibility manifest.");
|
|
969
986
|
if (source.manifest.platformVersion !== installation.platformVersion || source.manifestSha256 !== installation.runtime.manifestSha256) throw new Error("platform: --from-runtime does not exactly match the installed runtime artifact digest. Supply the runtime used by the current successful deployment.");
|
|
970
987
|
if (target.manifestSha256 === source.manifestSha256) throw new Error("platform: The rollback target is already the installed runtime artifact.");
|
|
@@ -1578,5 +1595,4 @@ async function promptForConfirmation(message, initialValue) {
|
|
|
1578
1595
|
if (isCancel(answer) || typeof answer === "symbol") throw new Error("platform: Cancelled.");
|
|
1579
1596
|
return answer;
|
|
1580
1597
|
}
|
|
1581
|
-
//#endregion
|
|
1582
1598
|
export { recoverDurablyMarkedProvisionIntents as a, runInstalledPlatformCommand as c, verifyPlatformInstallationOwnership as d, platformLifecycleResumeCommand as i, selectAuthoritativePlatformManifest as l, disablePlatform as n, resolveInstalledPlatformManifest as o, isPlatformManifestMonotonicExtension as r, resolvePlatformRuntimeTokenToPreflight as s, assertPlatformRollbackCompatibility as t, uninstallPlatform as u };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { c as runInstalledPlatformCommand, l as selectAuthoritativePlatformManifest, d as verifyPlatformInstallationOwnership } from "./platform-management-
|
|
1
|
+
export { c as runInstalledPlatformCommand, l as selectAuthoritativePlatformManifest, d as verifyPlatformInstallationOwnership } from "./platform-management-BRefdHGD.mjs";
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { A as confirm, K as select, X as text, tt as isCancel } from "./dist-
|
|
2
|
-
import { m as printSuccess } from "./output-
|
|
3
|
-
import { n as OperatorClient, r as OperatorClientError } from "./operator-client-
|
|
4
|
-
import { a as resolveOperatorOrigin, r as readOperatorToken } from "./operator-auth-
|
|
1
|
+
import { A as confirm, K as select, X as text, tt as isCancel } from "./dist-D23AAMxT.mjs";
|
|
2
|
+
import { m as printSuccess } from "./output-BCdLioKP.mjs";
|
|
3
|
+
import { n as OperatorClient, r as OperatorClientError } from "./operator-client-BIY4-N_6.mjs";
|
|
4
|
+
import { a as resolveOperatorOrigin, r as readOperatorToken } from "./operator-auth-CfDcmzpo.mjs";
|
|
5
5
|
import { stripVTControlCharacters } from "node:util";
|
|
6
6
|
import { PLAN_EDITABLE_LIMIT_KEYS, PLAN_LIMITS, parseBuildInstanceType, parsePlanLimitsPatch, parsePlanName, parsePlatformPlanId } from "@void/platform/plans";
|
|
7
7
|
import { readFile } from "node:fs/promises";
|
|
8
|
-
|
|
8
|
+
// src/cli/platform-plans-config.ts
|
|
9
9
|
const limitLabels = {
|
|
10
10
|
requestsPerMonth: "Requests per billing month",
|
|
11
11
|
cpuMsPerRequest: "Default CPU per request (ms)",
|
|
@@ -360,5 +360,4 @@ async function runPlatformPlansConfig(args) {
|
|
|
360
360
|
}
|
|
361
361
|
await apply(client, path, body, args, catalog);
|
|
362
362
|
}
|
|
363
|
-
//#endregion
|
|
364
363
|
export { runPlatformPlansConfig };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { o as listInstallationManifests, t as acquirePlatformLifecycleLock, x as writeInstallationManifest, y as savePlatformConnection } from "./platform-registry-
|
|
2
|
-
import { t as cfAccessHeaders } from "./cf-access-
|
|
3
|
-
import { f as REMOTE_INSTALLATION_MANIFEST_KEY, k as createPlatformInstallPlan } from "./platform-lifecycle-
|
|
4
|
-
import { a as recoverDurablyMarkedProvisionIntents, d as verifyPlatformInstallationOwnership, r as isPlatformManifestMonotonicExtension } from "./platform-management-
|
|
1
|
+
import { o as listInstallationManifests, t as acquirePlatformLifecycleLock, x as writeInstallationManifest, y as savePlatformConnection } from "./platform-registry-DZ_2Xuqd.mjs";
|
|
2
|
+
import { t as cfAccessHeaders } from "./cf-access-pejlJmuy.mjs";
|
|
3
|
+
import { f as REMOTE_INSTALLATION_MANIFEST_KEY, k as createPlatformInstallPlan } from "./platform-lifecycle-D9RdGub1.mjs";
|
|
4
|
+
import { a as recoverDurablyMarkedProvisionIntents, d as verifyPlatformInstallationOwnership, r as isPlatformManifestMonotonicExtension } from "./platform-management-BRefdHGD.mjs";
|
|
5
5
|
import { parsePlatformInstallationManifest, setInstallationEndpoints } from "@void/platform";
|
|
6
|
-
|
|
6
|
+
// src/cli/platform-recovery.ts
|
|
7
7
|
async function recoverPlatformInstallations(client, accountId, verifyEndpoint = verifyInstallationEndpoint, selector = "") {
|
|
8
8
|
const namespaces = await client.listKvNamespaces(accountId);
|
|
9
9
|
const recovered = [];
|
|
@@ -93,5 +93,4 @@ async function verifyInstallationEndpoint(manifest, fetcher = fetch) {
|
|
|
93
93
|
if (!response.ok) throw new Error(`platform: Installation ${manifest.id} is not reachable (HTTP ${response.status}).`);
|
|
94
94
|
if ((await response.json()).installationId !== manifest.id) throw new Error(`platform: Installation ${manifest.id} endpoint identity does not match.`);
|
|
95
95
|
}
|
|
96
|
-
//#endregion
|
|
97
96
|
export { recoverPlatformInstallations };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { a as join, c as resolve } from "./dist-
|
|
2
|
-
import { t as writeFileAtomic } from "./atomic-write-
|
|
1
|
+
import { a as join, c as resolve } from "./dist-DMYe8CZJ.mjs";
|
|
2
|
+
import { t as writeFileAtomic } from "./atomic-write-DA6eD1Kp.mjs";
|
|
3
3
|
import { closeSync, mkdirSync, openSync, readFileSync, readdirSync, rmSync, statSync, writeFileSync } from "node:fs";
|
|
4
4
|
import { parsePlatformInstallationManifest } from "@void/platform";
|
|
5
5
|
import { createCipheriv, createDecipheriv, createHash, randomBytes } from "node:crypto";
|
|
6
6
|
import { homedir, hostname } from "node:os";
|
|
7
7
|
import { Entry } from "@napi-rs/keyring";
|
|
8
|
-
|
|
8
|
+
// src/cli/keyring.ts
|
|
9
9
|
function readKeyringPassword(service, account) {
|
|
10
10
|
try {
|
|
11
11
|
return new Entry(service, account).getPassword();
|
|
@@ -29,8 +29,7 @@ function deleteKeyringPassword(service, account) {
|
|
|
29
29
|
return false;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
|
|
33
|
-
//#region src/cli/platform-registry.ts
|
|
32
|
+
// src/cli/platform-registry.ts
|
|
34
33
|
const PLATFORM_REGISTRY_SCHEMA_VERSION = 1;
|
|
35
34
|
const DEFAULT_REGISTRY = {
|
|
36
35
|
activeConnectionId: null,
|
|
@@ -433,5 +432,4 @@ function removePlatformConnectionForInstallation(installationId, directory = pla
|
|
|
433
432
|
});
|
|
434
433
|
});
|
|
435
434
|
}
|
|
436
|
-
//#endregion
|
|
437
435
|
export { deleteKeyringPassword as C, writePendingInstallationSecrets as S, writeKeyringPassword as T, removePlatformConnectionForInstallation as _, latestPlatformWorkerCutoverGeneration as a, selectPlatformConnection as b, normalizePlatformApiUrl as c, platformRegistryDirectory as d, platformWorkerSecretUpdateIntentState as f, removeInstallationRecoverySecrets as g, readPendingInstallationSecrets as h, getActivePlatformConnection as i, platformConnectionSlug as l, readInstallationRecoverySecrets as m, assertPlatformInstallationSlugAvailable as n, listInstallationManifests as o, promoteInstallationSecrets as p, findPlatformConnections as r, listPlatformConnections as s, acquirePlatformLifecycleLock as t, platformCredentialAccount as u, resolveInstallationManifest as v, readKeyringPassword as w, writeInstallationManifest as x, savePlatformConnection as y };
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
// src/cli/platform-runtime-logs.ts
|
|
2
|
+
/**
|
|
3
|
+
* Namespace scripts that run project code: one `user-<slug>-<deployment>` per
|
|
4
|
+
* deployment, and `void-do-<project>-<hash>` hosts for custom Durable Objects.
|
|
5
|
+
*/
|
|
6
|
+
const PROJECT_WORKER_PREFIXES = ["user-", "void-do-"];
|
|
7
|
+
const CONCURRENCY = 4;
|
|
8
|
+
/** Printed by log readers when the platform answers `runtimeLogs: 'minimal'`. */
|
|
9
|
+
const MINIMAL_RUNTIME_LOGS_NOTE = "Log messages, exception messages and URLs are not recorded on this platform.";
|
|
10
|
+
/** Same `observability` the API sends when it uploads a project Worker. */
|
|
11
|
+
function projectWorkerObservability(minimal) {
|
|
12
|
+
return minimal ? { enabled: false } : {
|
|
13
|
+
enabled: true,
|
|
14
|
+
logs: {
|
|
15
|
+
invocation_logs: true,
|
|
16
|
+
head_sampling_rate: 1
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
function assertPlatformRuntimeLogsSupported(deployment, runtime) {
|
|
21
|
+
if (deployment.runtimeLogs && runtime.runtimeLogs !== 1) throw new Error("platform: This platform runtime cannot keep runtime logs minimal. Upgrade Void or use a current platform runtime.");
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Project Workers keep the settings they were uploaded with, so a changed
|
|
25
|
+
* mode is pushed to them. While minimal, every operation pushes it again, so
|
|
26
|
+
* a run that stopped before this step is finished by the next one.
|
|
27
|
+
*/
|
|
28
|
+
function shouldUpdateProjectWorkerRuntimeLogs(input) {
|
|
29
|
+
const minimal = !!input.next.runtimeLogs;
|
|
30
|
+
return minimal || input.explicit || minimal !== !!input.previous?.runtimeLogs;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Update every project Worker's `observability` setting. Never throws: returns
|
|
34
|
+
* a warning to print when some Workers could not be updated.
|
|
35
|
+
*/
|
|
36
|
+
async function updateProjectWorkerRuntimeLogs(client, input) {
|
|
37
|
+
const finish = input.minimal ? ` Run \`void platform repair ${input.installationId}\` to finish.` : ` Run \`void platform upgrade ${input.installationId} --runtime-logs full\` again to finish.`;
|
|
38
|
+
let scripts;
|
|
39
|
+
try {
|
|
40
|
+
scripts = (await client.listDispatchNamespaceScripts(input.accountId, input.namespace)).filter((name) => PROJECT_WORKER_PREFIXES.some((prefix) => name.startsWith(prefix)));
|
|
41
|
+
} catch (error) {
|
|
42
|
+
return `Could not list project Workers to update their Workers Logs setting: ${errorMessage(error)}.${finish}`;
|
|
43
|
+
}
|
|
44
|
+
const settings = { observability: projectWorkerObservability(input.minimal) };
|
|
45
|
+
const failed = [];
|
|
46
|
+
let next = 0;
|
|
47
|
+
const work = async () => {
|
|
48
|
+
while (next < scripts.length) {
|
|
49
|
+
const script = scripts[next++];
|
|
50
|
+
try {
|
|
51
|
+
await client.patchDispatchNamespaceScriptSettings(input.accountId, input.namespace, script, settings);
|
|
52
|
+
} catch {
|
|
53
|
+
failed.push(script);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
await Promise.all(Array.from({ length: Math.min(CONCURRENCY, scripts.length) }, work));
|
|
58
|
+
if (failed.length === 0) return;
|
|
59
|
+
failed.sort();
|
|
60
|
+
const shown = failed.slice(0, 5).join(", ");
|
|
61
|
+
const more = failed.length > 5 ? ` and ${failed.length - 5} more` : "";
|
|
62
|
+
return `Could not update the Workers Logs setting of ${failed.length} project Worker${failed.length === 1 ? "" : "s"} (${shown}${more}).${finish}`;
|
|
63
|
+
}
|
|
64
|
+
function errorMessage(error) {
|
|
65
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
66
|
+
return message.endsWith(".") ? message.slice(0, -1) : message;
|
|
67
|
+
}
|
|
68
|
+
export { updateProjectWorkerRuntimeLogs as i, assertPlatformRuntimeLogsSupported as n, shouldUpdateProjectWorkerRuntimeLogs as r, MINIMAL_RUNTIME_LOGS_NOTE as t };
|
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import { u as openBrowser } from "./auth-
|
|
2
|
-
import { L as log, tt as isCancel } from "./dist-
|
|
3
|
-
import { f as import_picocolors, s as formatLink } from "./output-
|
|
4
|
-
|
|
1
|
+
import { u as openBrowser } from "./auth-Dy8svcqQ.mjs";
|
|
2
|
+
import { L as log, tt as isCancel } from "./dist-D23AAMxT.mjs";
|
|
3
|
+
import { f as import_picocolors, s as formatLink } from "./output-BCdLioKP.mjs";
|
|
4
|
+
// src/cli/platform-plan-writes.ts
|
|
5
|
+
function planCreatesZone(plan) {
|
|
6
|
+
return plan.actions.some((action) => action.kind === "zone" && action.action === "create");
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Whether applying the plan writes a DNS record, which needs Zone → DNS → Edit.
|
|
10
|
+
* 'reuse' changes nothing and 'adopt' only records an existing record in the
|
|
11
|
+
* manifest; only 'create' calls the DNS API.
|
|
12
|
+
*/
|
|
13
|
+
function planWritesDns(plan) {
|
|
14
|
+
return plan.actions.some((action) => action.kind === "dns-record" && action.action !== "reuse" && action.action !== "adopt");
|
|
15
|
+
}
|
|
16
|
+
// src/cli/platform-setup.ts
|
|
5
17
|
/** Return a prompt answer, or stop the platform command when the prompt was cancelled. */
|
|
6
18
|
function platformPromptAnswer(value) {
|
|
7
19
|
if (isCancel(value) || typeof value === "symbol") throw new Error("platform: Cancelled.");
|
|
@@ -215,7 +227,7 @@ function platformSetupPages(plan) {
|
|
|
215
227
|
};
|
|
216
228
|
}
|
|
217
229
|
function formatPlatformSetupPlan(plan, options = {}) {
|
|
218
|
-
const writesDns = plan
|
|
230
|
+
const writesDns = planCreatesZone(plan) || planWritesDns(plan);
|
|
219
231
|
return [
|
|
220
232
|
"The installation will guide you through setting up the following credentials:",
|
|
221
233
|
"",
|
|
@@ -268,6 +280,7 @@ function platformInstallCommandArguments(options) {
|
|
|
268
280
|
}
|
|
269
281
|
flag("--dashboard-url", options.dashboardUrl ?? "");
|
|
270
282
|
flag("--runtime", options.runtime);
|
|
283
|
+
flag("--runtime-logs", options.runtimeLogs ?? "");
|
|
271
284
|
if (options.yes) parts.push("--yes");
|
|
272
285
|
return parts;
|
|
273
286
|
}
|
|
@@ -289,5 +302,4 @@ function openPlatformSetupPage(page, dependencies = {}) {
|
|
|
289
302
|
log.info("Could not open the browser. Use the link above.");
|
|
290
303
|
}
|
|
291
304
|
}
|
|
292
|
-
|
|
293
|
-
export { platformManagementSetupPage as a, platformSetupLink as c, platformInstallCommandArguments as i, platformSetupPages as l, formatPlatformSetupPlan as n, platformPromptAnswer as o, openPlatformSetupPage as r, platformSetupFieldHelp as s, formatPlatformInstallCommand as t };
|
|
305
|
+
export { platformManagementSetupPage as a, platformSetupLink as c, planWritesDns as d, platformInstallCommandArguments as i, platformSetupPages as l, formatPlatformSetupPlan as n, platformPromptAnswer as o, openPlatformSetupPage as r, platformSetupFieldHelp as s, formatPlatformInstallCommand as t, planCreatesZone as u };
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { a as join, l as toSlash, s as relative } from "./dist-
|
|
2
|
-
import { n as readProjectPaths } from "./project-paths-
|
|
3
|
-
import { n as globSync } from "./dist-
|
|
4
|
-
import { d as deriveFromSource, g as ROUTE_EXTENSIONS, h as parseWebSocketFilename, m as parseRouteFilename, p as isRouteEnabledForEnvironment, t as pageFileEnvironment } from "./scan-
|
|
5
|
-
import { a as isObjectExpression, i as isMemberExpression, n as isIdentifier, r as isLiteral, t as isCallExpression } from "./ast-
|
|
6
|
-
import { a as staticLiteral, n as bindingResolver, o as unwrapStaticExpression, r as walk } from "./ast-bindings-
|
|
7
|
-
import { n as resourceNameWords, t as isResourceName } from "./resource-name-
|
|
8
|
-
import { r as getSsrServerEntryPath } from "./entry-
|
|
1
|
+
import { a as join, l as toSlash, s as relative } from "./dist-DMYe8CZJ.mjs";
|
|
2
|
+
import { n as readProjectPaths } from "./project-paths-CdGv9Tmi.mjs";
|
|
3
|
+
import { n as globSync } from "./dist-BWNkVq50.mjs";
|
|
4
|
+
import { d as deriveFromSource, g as ROUTE_EXTENSIONS, h as parseWebSocketFilename, m as parseRouteFilename, p as isRouteEnabledForEnvironment, t as pageFileEnvironment } from "./scan-X2rDDRNa.mjs";
|
|
5
|
+
import { a as isObjectExpression, i as isMemberExpression, n as isIdentifier, r as isLiteral, t as isCallExpression } from "./ast-Cv0JwXqb.mjs";
|
|
6
|
+
import { a as staticLiteral, n as bindingResolver, o as unwrapStaticExpression, r as walk } from "./ast-bindings-BkivMJIo.mjs";
|
|
7
|
+
import { n as resourceNameWords, t as isResourceName } from "./resource-name-DlJ9QXzg.mjs";
|
|
8
|
+
import { r as getSsrServerEntryPath } from "./entry-CBZsCy3O.mjs";
|
|
9
9
|
import { existsSync, readFileSync } from "node:fs";
|
|
10
10
|
import { parseSync } from "vite";
|
|
11
|
-
|
|
11
|
+
// src/application-features.ts
|
|
12
12
|
/** Apply explicitly named overrides while preserving unrelated source features. */
|
|
13
13
|
function applyBindingOverrides(inferred, overrides) {
|
|
14
14
|
const bindings = { ...inferred };
|
|
@@ -28,8 +28,7 @@ function applyBindingOverrides(inferred, overrides) {
|
|
|
28
28
|
function needsApplicationDatabase(bindings, migrationCount) {
|
|
29
29
|
return bindings.needsD1 || bindings.needsAuth || migrationCount > 0;
|
|
30
30
|
}
|
|
31
|
-
|
|
32
|
-
//#region src/shared/convention-files.ts
|
|
31
|
+
// src/shared/convention-files.ts
|
|
33
32
|
const WELL_KNOWN_DIR = ".well-known";
|
|
34
33
|
/** Include the convention directory's .well-known files when it is inside the scan directory. */
|
|
35
34
|
function conventionFileGlobs(scanDir, pattern, conventionDir = scanDir) {
|
|
@@ -63,8 +62,7 @@ function listConventionFiles(dir) {
|
|
|
63
62
|
function listRouteFiles(dir) {
|
|
64
63
|
return listFilesWithExtensions(dir, ROUTE_EXTENSIONS);
|
|
65
64
|
}
|
|
66
|
-
|
|
67
|
-
//#region src/shared/resource-definition.ts
|
|
65
|
+
// src/shared/resource-definition.ts
|
|
68
66
|
/** Inspect default helper definitions without running application code. */
|
|
69
67
|
function readResourceDefinition(filename, source, helpers) {
|
|
70
68
|
let program;
|
|
@@ -178,8 +176,7 @@ function readResourceDefinition(filename, source, helpers) {
|
|
|
178
176
|
...name === void 0 ? {} : { name }
|
|
179
177
|
};
|
|
180
178
|
}
|
|
181
|
-
|
|
182
|
-
//#region src/shared/module-references.ts
|
|
179
|
+
// src/shared/module-references.ts
|
|
183
180
|
/** Runtime imports and re-exports, in source order, including empty export lists. */
|
|
184
181
|
function staticModuleReferences(parsed, code) {
|
|
185
182
|
const { staticImports, staticExports } = parsed.module;
|
|
@@ -205,8 +202,7 @@ function staticModuleReferences(parsed, code) {
|
|
|
205
202
|
}];
|
|
206
203
|
});
|
|
207
204
|
}
|
|
208
|
-
|
|
209
|
-
//#region src/inference/client-auth.ts
|
|
205
|
+
// src/inference/client-auth.ts
|
|
210
206
|
const CLIENT_MODULES = /* @__PURE__ */ new Set([
|
|
211
207
|
"void/client",
|
|
212
208
|
"void/client/react",
|
|
@@ -301,8 +297,7 @@ function inferNamespaceAuth(program) {
|
|
|
301
297
|
}
|
|
302
298
|
return reads.some(isClientNamespace);
|
|
303
299
|
}
|
|
304
|
-
|
|
305
|
-
//#region src/inference/walk.ts
|
|
300
|
+
// src/inference/walk.ts
|
|
306
301
|
const ENV_BINDING_RE = /\benv\b|\\(?:u|x|[0-7\r\n\u2028\u2029])/;
|
|
307
302
|
const RESOURCE_BINDING_RE = /\b(?:DB\b|KV\b|STORAGE\b|AI\b|SANDBOX\b|QUEUE_)|\\(?:u|x|[0-7A-Z_\r\n\u2028\u2029])/;
|
|
308
303
|
/**
|
|
@@ -436,8 +431,7 @@ function mergeBindings(bindings) {
|
|
|
436
431
|
needsEmail: bindings.some((b) => b.needsEmail)
|
|
437
432
|
};
|
|
438
433
|
}
|
|
439
|
-
|
|
440
|
-
//#region src/router/websocket.ts
|
|
434
|
+
// src/router/websocket.ts
|
|
441
435
|
const WEBSOCKET_ROUTE_RE = new RegExp(`(?:\\.(?:dev|prod))?\\.ws\\.(?:${ROUTE_EXTENSIONS.join("|")})$`);
|
|
442
436
|
function isWebSocketRouteFile(filePath) {
|
|
443
437
|
return WEBSOCKET_ROUTE_RE.test(filePath.replace(/\\/g, "/"));
|
|
@@ -508,8 +502,7 @@ function scanWebSocketRoutesSync(root, paths = readProjectPaths(root), environme
|
|
|
508
502
|
function isWebSocketPatternFile(filePath) {
|
|
509
503
|
return isWebSocketRouteFile(filePath);
|
|
510
504
|
}
|
|
511
|
-
|
|
512
|
-
//#region src/plugin-inference.ts
|
|
505
|
+
// src/plugin-inference.ts
|
|
513
506
|
const SOURCE_GLOB = "**/*.{ts,tsx,mts,js,jsx,mjs,astro}";
|
|
514
507
|
/** Directories to scan for binding inference in framework mode. */
|
|
515
508
|
const FRAMEWORK_SCAN_DIRS = [
|
|
@@ -668,5 +661,4 @@ function inferProjectBindings(root, options, scanDirs) {
|
|
|
668
661
|
}
|
|
669
662
|
return applyBindingOverrides(mergeBindings(allBindings), options?.bindings);
|
|
670
663
|
}
|
|
671
|
-
//#endregion
|
|
672
664
|
export { deriveWebSocketClassNameFromName as a, scanWebSocketRoutesSync as c, readResourceDefinition as d, listConventionFiles as f, needsApplicationDatabase as h, inferProjectBindings as i, inferBindingsFromSource as l, applyBindingOverrides as m, FRAMEWORK_SCAN_DIRS as n, inferWebSocketResourceName as o, listRouteFiles as p, detectFramework as r, isWebSocketPatternFile as s, DEFAULT_SCAN_DIRS as t, staticModuleReferences as u };
|
|
@@ -1,4 +1,22 @@
|
|
|
1
|
-
|
|
1
|
+
// src/pages/prefetch.ts
|
|
2
|
+
const LINK_PREFETCH_STRATEGIES = [
|
|
3
|
+
"hover",
|
|
4
|
+
"click",
|
|
5
|
+
"mount",
|
|
6
|
+
"visible"
|
|
7
|
+
];
|
|
8
|
+
function isLinkPrefetchStrategy(value) {
|
|
9
|
+
return LINK_PREFETCH_STRATEGIES.includes(value);
|
|
10
|
+
}
|
|
11
|
+
/** Rejects an invalid `prefetch.defaultStrategy` when the plugin is configured. */
|
|
12
|
+
function assertLinkPrefetchValue(value, name) {
|
|
13
|
+
if (typeof value === "boolean") return;
|
|
14
|
+
const strategies = Array.isArray(value) ? value : [value];
|
|
15
|
+
for (const strategy of strategies) if (!isLinkPrefetchStrategy(strategy)) {
|
|
16
|
+
const allowed = LINK_PREFETCH_STRATEGIES.map((s) => `'${s}'`).join(", ");
|
|
17
|
+
throw new Error(`${name}: Invalid prefetch strategy ${JSON.stringify(strategy)}. Use true, false, ${allowed}, or an array of strategies.`);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
2
20
|
const UNITS = {
|
|
3
21
|
ms: 1,
|
|
4
22
|
s: 1e3,
|
|
@@ -86,5 +104,4 @@ var PrefetchCache = class {
|
|
|
86
104
|
this.entries.clear();
|
|
87
105
|
}
|
|
88
106
|
};
|
|
89
|
-
|
|
90
|
-
export { parseCacheFor as n, PrefetchCache as t };
|
|
107
|
+
export { assertLinkPrefetchValue as n, parseCacheFor as r, PrefetchCache as t };
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
declare const LINK_PREFETCH_STRATEGIES: readonly ["hover", "click", "mount", "visible"];
|
|
2
|
+
type LinkPrefetchStrategy = (typeof LINK_PREFETCH_STRATEGIES)[number];
|
|
3
|
+
/** A Link's `prefetch` prop, and the `prefetch.defaultStrategy` of an adapter plugin. */
|
|
4
|
+
type LinkPrefetchValue = boolean | LinkPrefetchStrategy | ReadonlyArray<LinkPrefetchStrategy>;
|
|
2
5
|
type CacheForResult = {
|
|
3
6
|
stale: number;
|
|
4
7
|
expires: number;
|
|
5
8
|
};
|
|
6
9
|
type CacheForInput = number | string | [string, string];
|
|
10
|
+
/** Rejects an invalid `prefetch.defaultStrategy` when the plugin is configured. */
|
|
11
|
+
declare function assertLinkPrefetchValue(value: unknown, name: string): asserts value is LinkPrefetchValue;
|
|
7
12
|
declare function parseCacheFor(value: CacheForInput): CacheForResult;
|
|
8
13
|
type CacheEntry = {
|
|
9
14
|
url: string;
|
|
@@ -27,5 +32,4 @@ declare class PrefetchCache {
|
|
|
27
32
|
flush(url: string, method?: string): void;
|
|
28
33
|
flushAll(): void;
|
|
29
34
|
}
|
|
30
|
-
|
|
31
|
-
export { parseCacheFor as a, PrefetchCache as i, CacheForInput as n, CacheForResult as r, CacheEntry as t };
|
|
35
|
+
export { LinkPrefetchValue as a, parseCacheFor as c, LinkPrefetchStrategy as i, CacheForInput as n, PrefetchCache as o, CacheForResult as r, assertLinkPrefetchValue as s, CacheEntry as t };
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { a as join } from "./dist-
|
|
2
|
-
import { t as discoverSchema } from "./discover-
|
|
3
|
-
import { a as projectAuthConfigImporter, i as loadVoidAuthConfig } from "./config-
|
|
4
|
-
import { c as getDatabaseCasing, p as readConfig } from "./config-
|
|
5
|
-
import {
|
|
6
|
-
import { n as
|
|
7
|
-
import {
|
|
8
|
-
import { n as findEnvFileForPaths, r as generateEnvTypes } from "./env-types-
|
|
9
|
-
import { t as analyzeApplication } from "./application-routing-
|
|
10
|
-
import { n as generateQueueTypes, r as generateAuthTypes, t as generateRouteTypes } from "./route-types-
|
|
11
|
-
import { n as generateVoidAuthDrizzleSchema, t as generateVoidAuthDatabaseModule } from "./drizzle-
|
|
1
|
+
import { a as join } from "./dist-DMYe8CZJ.mjs";
|
|
2
|
+
import { t as discoverSchema } from "./discover-Dhkzxgdt.mjs";
|
|
3
|
+
import { a as projectAuthConfigImporter, i as loadVoidAuthConfig } from "./config-WlvEcL82.mjs";
|
|
4
|
+
import { c as getDatabaseCasing, p as readConfig } from "./config-BITKQ3O6.mjs";
|
|
5
|
+
import { s as loadLocalEnv } from "./env-CuzZZyjB.mjs";
|
|
6
|
+
import { i as writeFileIfChanged, n as ensureProjectTsconfig } from "./project-tsconfig-Cf2NFjlM.mjs";
|
|
7
|
+
import { n as generateDbDts } from "./db-types-C_8amnB0.mjs";
|
|
8
|
+
import { n as findEnvFileForPaths, r as generateEnvTypes } from "./env-types-DqzVBKnS.mjs";
|
|
9
|
+
import { t as analyzeApplication } from "./application-routing-P4TggvWp.mjs";
|
|
10
|
+
import { n as generateQueueTypes, r as generateAuthTypes, t as generateRouteTypes } from "./route-types-CZc1YXjF.mjs";
|
|
11
|
+
import { n as generateVoidAuthDrizzleSchema, t as generateVoidAuthDatabaseModule } from "./drizzle-lFdzSEa9.mjs";
|
|
12
12
|
import { existsSync, rmSync } from "node:fs";
|
|
13
13
|
import { fileURLToPath } from "node:url";
|
|
14
|
-
|
|
14
|
+
// src/codegen/prepare.ts
|
|
15
15
|
function writeGeneratedFile(outDir, fileName, content, written) {
|
|
16
16
|
if (writeFileIfChanged(join(outDir, fileName), content)) written.push(join(".void", fileName));
|
|
17
17
|
}
|
|
@@ -38,7 +38,7 @@ async function prepareProject(root) {
|
|
|
38
38
|
} else removeGeneratedFile(outDir, "auth.d.ts", removed);
|
|
39
39
|
const hasRouteTypes = scan.routes.length > 0 || (scan.websockets?.length ?? 0) > 0 || scan.pages.pages.length > 0;
|
|
40
40
|
if (hasRouteTypes) {
|
|
41
|
-
const { dts } = generateRouteTypes(scan, paths.routesDir, outDir, paths.pagesDir);
|
|
41
|
+
const { dts } = generateRouteTypes(scan, paths.routesDir, outDir, paths.pagesDir, { typedRoutes: config.routing?.typedRoutes });
|
|
42
42
|
writeGeneratedFile(outDir, "routes.d.ts", dts, written);
|
|
43
43
|
} else removeGeneratedFile(outDir, "routes.d.ts", removed);
|
|
44
44
|
if (existsSync(paths.queuesDir)) writeGeneratedFile(outDir, "queues.d.ts", generateQueueTypes(scan.queues, paths.queuesDir, outDir), written);
|
|
@@ -77,5 +77,4 @@ async function prepareProject(root) {
|
|
|
77
77
|
removed
|
|
78
78
|
};
|
|
79
79
|
}
|
|
80
|
-
//#endregion
|
|
81
80
|
export { prepareProject as t };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { L as log } from "./dist-
|
|
2
|
-
import { m as printSuccess, p as note } from "./output-
|
|
3
|
-
import { t as prepareProject } from "./prepare-
|
|
4
|
-
|
|
1
|
+
import { L as log } from "./dist-D23AAMxT.mjs";
|
|
2
|
+
import { m as printSuccess, p as note } from "./output-BCdLioKP.mjs";
|
|
3
|
+
import { t as prepareProject } from "./prepare-BJW-f1f1.mjs";
|
|
4
|
+
// src/cli/prepare.ts
|
|
5
5
|
async function runPrepareCommand(root) {
|
|
6
6
|
console.log();
|
|
7
7
|
const result = await prepareProject(root);
|
|
@@ -10,5 +10,4 @@ async function runPrepareCommand(root) {
|
|
|
10
10
|
if (result.written.length === 0 && result.removed.length === 0) log.info("No generated files changed.");
|
|
11
11
|
printSuccess("Project codegen is ready.");
|
|
12
12
|
}
|
|
13
|
-
//#endregion
|
|
14
13
|
export { runPrepareCommand };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { t as prepareProject } from "./prepare-BJW-f1f1.mjs";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { a as join, i as isAbsolute, n as dirname, s as relative } from "./dist-
|
|
1
|
+
import { a as join, i as isAbsolute, n as dirname, s as relative } from "./dist-DMYe8CZJ.mjs";
|
|
2
2
|
import { mkdirSync, writeFileSync } from "node:fs";
|
|
3
3
|
import { extractPageDataFromHtml } from "@void/isr/core";
|
|
4
|
-
|
|
4
|
+
// src/prerender-render.ts
|
|
5
5
|
const PAGE_DATA_SCRIPT_ID = "__VOID_PAGE_DATA__";
|
|
6
6
|
function assertNoPrerenderFailures(failed) {
|
|
7
7
|
if (failed.length === 0) return;
|
|
@@ -144,5 +144,4 @@ async function renderPrerenderPaths(paths, clientDir, fetchPath, fetchPageData,
|
|
|
144
144
|
failed: results.flatMap((result) => result.failed)
|
|
145
145
|
};
|
|
146
146
|
}
|
|
147
|
-
//#endregion
|
|
148
147
|
export { renderPrerenderPaths as i, outputFileForPath as n, readPrerenderPathsResponse as r, assertNoPrerenderFailures as t };
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//#region src/prerender-render.d.ts
|
|
2
1
|
export type PrerenderResult = {
|
|
3
2
|
rendered: Array<string>;
|
|
4
3
|
failed: Array<{
|
|
@@ -10,5 +9,4 @@ export declare function assertNoPrerenderFailures(failed: PrerenderResult["faile
|
|
|
10
9
|
export declare function outputFileForPath(path: string): string;
|
|
11
10
|
export declare function readPrerenderPathsResponse(response: Response): Promise<Array<string>>;
|
|
12
11
|
/** Shared renderer for local Workers and the isolated Node prerender child. */
|
|
13
|
-
export declare function renderPrerenderPaths(paths: Array<string>, clientDir: string, fetchPath: (path: string) => Promise<Response>, fetchPageData?: (path: string) => Promise<Response>, onResult?: (path: string, outputFile: string, error?: string) => void): Promise<PrerenderResult>;
|
|
14
|
-
//#endregion
|
|
12
|
+
export declare function renderPrerenderPaths(paths: Array<string>, clientDir: string, fetchPath: (path: string) => Promise<Response>, fetchPageData?: (path: string) => Promise<Response>, onResult?: (path: string, outputFile: string, error?: string) => void): Promise<PrerenderResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { t as assertNoPrerenderFailures, n as outputFileForPath, r as readPrerenderPathsResponse, i as renderPrerenderPaths } from "./prerender-render-
|
|
1
|
+
export { t as assertNoPrerenderFailures, n as outputFileForPath, r as readPrerenderPathsResponse, i as renderPrerenderPaths } from "./prerender-render-RlAj6hh8.mjs";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as join, n as dirname } from "./dist-
|
|
2
|
-
import { c as normalizePlatformApiUrl, s as listPlatformConnections } from "./platform-registry-
|
|
1
|
+
import { a as join, n as dirname } from "./dist-DMYe8CZJ.mjs";
|
|
2
|
+
import { c as normalizePlatformApiUrl, s as listPlatformConnections } from "./platform-registry-DZ_2Xuqd.mjs";
|
|
3
3
|
import { mkdirSync, readFileSync, rmSync, writeFileSync } from "node:fs";
|
|
4
4
|
import { normalizeApplicationDomain } from "@void/platform";
|
|
5
|
-
|
|
5
|
+
// src/cli/project.ts
|
|
6
6
|
const PROJECT_FILE = ".void/project.json";
|
|
7
7
|
function readProjectConfigFile(root) {
|
|
8
8
|
const filePath = join(root, PROJECT_FILE);
|
|
@@ -142,5 +142,4 @@ function removeProjectConfig(root) {
|
|
|
142
142
|
return false;
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
|
-
//#endregion
|
|
146
145
|
export { readProjectPlatformUrl as a, writeDeploymentPlatform as c, readProjectIdField as i, writePlatformSelection as l, readDeploymentPlatform as n, removeProjectConfig as o, readProjectConfig as r, shouldLinkDeployProject as s, attachSelectedPlatform as t, writeProjectConfig as u };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { t as attachSelectedPlatform, u as writeProjectConfig } from "./project-
|
|
1
|
+
export { t as attachSelectedPlatform, u as writeProjectConfig } from "./project-CLwxcEdq.mjs";
|