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,17 +1,17 @@
|
|
|
1
|
-
import { a as join, n as dirname } from "./dist-
|
|
2
|
-
import { o as TYPED_CONFIG_FILE, s as loadTypedVoidConfigFile } from "./project-paths-
|
|
3
|
-
import { h as validateConfig } from "./config-
|
|
4
|
-
import { t as parseJsoncObject } from "./generated-wrangler-config-
|
|
5
|
-
import { c as stashCloudflareDeployPointer, n as VOID_LOCK_FILE, r as ignoreMaterializedCloudflareConfig, s as seedCloudflareConfig } from "./cloudflare-config-
|
|
6
|
-
import { I as renderVoidConfig, P as GENERATED_MARKERS } from "./wrangler-
|
|
7
|
-
import { L as log } from "./dist-
|
|
8
|
-
import { m as printSuccess } from "./output-
|
|
1
|
+
import { a as join, n as dirname } from "./dist-DMYe8CZJ.mjs";
|
|
2
|
+
import { o as TYPED_CONFIG_FILE, s as loadTypedVoidConfigFile } from "./project-paths-CdGv9Tmi.mjs";
|
|
3
|
+
import { h as validateConfig } from "./config-BITKQ3O6.mjs";
|
|
4
|
+
import { t as parseJsoncObject } from "./generated-wrangler-config-CoDaaFsA.mjs";
|
|
5
|
+
import { c as stashCloudflareDeployPointer, l as ensureGitignoreLines, n as VOID_LOCK_FILE, r as ignoreMaterializedCloudflareConfig, s as seedCloudflareConfig } from "./cloudflare-config-eQunqX6A.mjs";
|
|
6
|
+
import { I as renderVoidConfig, P as GENERATED_MARKERS } from "./wrangler-DESSbN8L.mjs";
|
|
7
|
+
import { L as log } from "./dist-D23AAMxT.mjs";
|
|
8
|
+
import { m as printSuccess } from "./output-BCdLioKP.mjs";
|
|
9
9
|
import { existsSync, mkdirSync, readFileSync, renameSync, rmSync, unlinkSync, writeFileSync } from "node:fs";
|
|
10
10
|
import { parseSync } from "vite";
|
|
11
11
|
import { randomUUID } from "node:crypto";
|
|
12
12
|
import { isDeepStrictEqual } from "node:util";
|
|
13
13
|
import { parseTree } from "jsonc-parser";
|
|
14
|
-
|
|
14
|
+
// src/cli/framework-config-migrate.ts
|
|
15
15
|
const GENERATED_PATH = "./.void-wrangler.jsonc";
|
|
16
16
|
const CONFIG_FILES = [
|
|
17
17
|
"vite.config.ts",
|
|
@@ -197,8 +197,7 @@ function migrateFrameworkAdapterPaths(root) {
|
|
|
197
197
|
if (!existsSync(join(root, "void.config.ts"))) return false;
|
|
198
198
|
return applyFrameworkConfigMigration(root, planFrameworkConfigMigration(root));
|
|
199
199
|
}
|
|
200
|
-
|
|
201
|
-
//#region src/cli/migrate.ts
|
|
200
|
+
// src/cli/migrate.ts
|
|
202
201
|
const LEGACY_FILE = "void.json";
|
|
203
202
|
function parseWranglerJsonc(path, raw) {
|
|
204
203
|
const parsed = parseJsoncObject(raw);
|
|
@@ -301,10 +300,15 @@ function migrateLegacyVoidConfig(root) {
|
|
|
301
300
|
}
|
|
302
301
|
async function runMigrateCommand(root) {
|
|
303
302
|
console.log();
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
303
|
+
const migrated = migrateLegacyVoidConfig(root);
|
|
304
|
+
const updatedIgnore = ensureGitignoreLines(root, [".cloudflare"], { ".cloudflare": [
|
|
305
|
+
"/.cloudflare",
|
|
306
|
+
".cloudflare/",
|
|
307
|
+
"/.cloudflare/"
|
|
308
|
+
] }).length > 0;
|
|
309
|
+
if (migrated) log.step(`Migrated project settings to ${TYPED_CONFIG_FILE}. Commit it and ${VOID_LOCK_FILE} when present.`);
|
|
310
|
+
if (updatedIgnore) log.step("Added .cloudflare to .gitignore.");
|
|
311
|
+
if (migrated || updatedIgnore) printSuccess("Project migration complete.");
|
|
312
|
+
else log.info("No legacy project configuration found.");
|
|
308
313
|
}
|
|
309
|
-
//#endregion
|
|
310
314
|
export { migrateFrameworkAdapterPaths as i, runMigrateCommand as n, discoverFrameworkWranglerFiles as r, migrateLegacyVoidConfig as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { n as runMigrateCommand } from "./migrate-ChHHZBTi.mjs";
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { MigrationPlanHashInput } from "@void/deploy-core";
|
|
2
|
-
//#region src/migrations/plan.d.ts
|
|
3
2
|
type MigrationExecutionPlan = MigrationPlanHashInput & {
|
|
4
3
|
planHash: string;
|
|
5
4
|
warnings?: Array<string>;
|
|
@@ -11,8 +10,6 @@ type MigrationPlanBundle = {
|
|
|
11
10
|
destructiveValidation: "passed";
|
|
12
11
|
plans: Array<MigrationExecutionPlan>;
|
|
13
12
|
};
|
|
14
|
-
//#endregion
|
|
15
|
-
//#region src/runtime/migration-handler.d.ts
|
|
16
13
|
type MigrationEntry = {
|
|
17
14
|
name: string;
|
|
18
15
|
sql: string;
|
|
@@ -38,5 +35,4 @@ type MigrationResponse = {
|
|
|
38
35
|
};
|
|
39
36
|
declare function createMigrationHandler(env: Record<string, unknown>, migrations: Array<MigrationEntry> | undefined, runAuthMigrations?: () => Promise<void>, planBundle?: MigrationPlanBundle): (request: Request) => Promise<Response>;
|
|
40
37
|
declare function splitMigrationSql(sql: string): Array<string>;
|
|
41
|
-
//#endregion
|
|
42
38
|
export { splitMigrationSql as a, createMigrationHandler as i, MigrationResponse as n, MigrationResult as r, MigrationEntry as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { canonicalJson, canonicalSql, getMigrationPlanHashInput, isSingleStatement, splitSqlStatements } from "@void/deploy-core";
|
|
2
|
-
|
|
2
|
+
// src/runtime/migration-handler.ts
|
|
3
3
|
const SUPPORTED_CLASSIFIER_VERSION = 1;
|
|
4
4
|
function createMigrationHandler(env, migrations, runAuthMigrations, planBundle) {
|
|
5
5
|
return async (request) => {
|
|
@@ -466,5 +466,4 @@ function isStatementBreakpointLine(line) {
|
|
|
466
466
|
function hasInlineStatementBreakpoint(line) {
|
|
467
467
|
return /;\s*-->\s*statement-breakpoint\s*$/.test(line.trim());
|
|
468
468
|
}
|
|
469
|
-
//#endregion
|
|
470
469
|
export { splitMigrationSql as n, createMigrationHandler as t };
|
|
@@ -1,6 +1,125 @@
|
|
|
1
|
-
import { n as bytesToBase64 } from "./base64-
|
|
1
|
+
import { n as bytesToBase64 } from "./base64-ikl9yBy3.mjs";
|
|
2
2
|
import { validate } from "email-validator";
|
|
3
|
-
|
|
3
|
+
// src/runtime/email/threading.ts
|
|
4
|
+
/**
|
|
5
|
+
* Header-value checks shared by the MIME builder and the reply path, and the
|
|
6
|
+
* best-effort cleaning of `In-Reply-To` / `References` ids. Thread ids usually
|
|
7
|
+
* come from remote mail, so an id that cannot be sent is left out instead of
|
|
8
|
+
* failing the message. No imports, so both `mime.ts` and `inbound.ts` can use it.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Index of the first C0 control other than HTAB, or DEL; -1 when there is
|
|
12
|
+
* none. HTAB is folding whitespace (RFC 5322 §3.2.2).
|
|
13
|
+
*/
|
|
14
|
+
function indexOfControl(value) {
|
|
15
|
+
for (let i = 0; i < value.length; i++) {
|
|
16
|
+
const c = value.charCodeAt(i);
|
|
17
|
+
if (c < 32 && c !== 9 || c === 127) return i;
|
|
18
|
+
}
|
|
19
|
+
return -1;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* `value` without leading or trailing SP and HTAB, the only whitespace a
|
|
23
|
+
* `Headers` value is trimmed of. `String#trim` would also strip U+00A0.
|
|
24
|
+
*/
|
|
25
|
+
function trimFws(value) {
|
|
26
|
+
let start = 0;
|
|
27
|
+
let end = value.length;
|
|
28
|
+
while (start < end && (value.charCodeAt(start) === 32 || value.charCodeAt(start) === 9)) start++;
|
|
29
|
+
while (end > start && (value.charCodeAt(end - 1) === 32 || value.charCodeAt(end - 1) === 9)) end--;
|
|
30
|
+
return value.slice(start, end);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Whether `Name: value` fits RFC 5322's 998-octet line once folded. It
|
|
34
|
+
* follows `foldHeader`: a fold point is SP or HTAB outside a quoted string,
|
|
35
|
+
* so the widest run between fold points decides.
|
|
36
|
+
*/
|
|
37
|
+
function fitsHeaderLine(name, value) {
|
|
38
|
+
if (!value) return false;
|
|
39
|
+
const budget = 998 - (name.length + 2);
|
|
40
|
+
let run = 0;
|
|
41
|
+
let inQuotes = false;
|
|
42
|
+
let escape = false;
|
|
43
|
+
for (let i = 0; i < value.length; i++) {
|
|
44
|
+
const c = value.charCodeAt(i);
|
|
45
|
+
if (escape) escape = false;
|
|
46
|
+
else if (c === 92 && inQuotes) escape = true;
|
|
47
|
+
else if (c === 34) inQuotes = !inQuotes;
|
|
48
|
+
else if ((c === 32 || c === 9) && !inQuotes) {
|
|
49
|
+
run = 0;
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
if (c < 128) run += 1;
|
|
53
|
+
else if (c < 2048) run += 2;
|
|
54
|
+
else if (c >= 55296 && c <= 56319 && i + 1 < value.length && (value.charCodeAt(i + 1) & 64512) === 56320) {
|
|
55
|
+
run += 4;
|
|
56
|
+
i++;
|
|
57
|
+
} else run += 3;
|
|
58
|
+
if (run > budget) return false;
|
|
59
|
+
}
|
|
60
|
+
return true;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Longest `References` value, in UTF-16 code units. 8 KiB keeps any real
|
|
64
|
+
* thread whole; past it the newest ids are kept, since mail clients thread on
|
|
65
|
+
* any id they recognise and the parent is `In-Reply-To`.
|
|
66
|
+
*/
|
|
67
|
+
const MAX_REFERENCES_CHARS = 8192;
|
|
68
|
+
/**
|
|
69
|
+
* The newest whole ids of `chain` that fit `budget` code units, without the
|
|
70
|
+
* ids that hold a control character.
|
|
71
|
+
*/
|
|
72
|
+
function newestIds(chain, budget) {
|
|
73
|
+
if (chain.length > budget) {
|
|
74
|
+
let cut = chain.length - budget;
|
|
75
|
+
while (cut < chain.length) {
|
|
76
|
+
const c = chain.charCodeAt(cut);
|
|
77
|
+
if (c === 32 || c === 9) break;
|
|
78
|
+
cut++;
|
|
79
|
+
}
|
|
80
|
+
chain = chain.slice(cut);
|
|
81
|
+
}
|
|
82
|
+
return dropControlIds(chain);
|
|
83
|
+
}
|
|
84
|
+
/** `chain` without the ids that hold a control character, joined by single spaces. */
|
|
85
|
+
function dropControlIds(chain) {
|
|
86
|
+
if (indexOfControl(chain) === -1) return chain;
|
|
87
|
+
const kept = [];
|
|
88
|
+
let start = -1;
|
|
89
|
+
let tainted = false;
|
|
90
|
+
for (let i = 0; i <= chain.length; i++) {
|
|
91
|
+
const c = i < chain.length ? chain.charCodeAt(i) : 32;
|
|
92
|
+
if (c === 32 || c === 9) {
|
|
93
|
+
if (start >= 0 && !tainted) kept.push(chain.slice(start, i));
|
|
94
|
+
start = -1;
|
|
95
|
+
tainted = false;
|
|
96
|
+
} else {
|
|
97
|
+
if (start < 0) start = i;
|
|
98
|
+
if (c < 32 || c === 127) tainted = true;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return kept.join(" ");
|
|
102
|
+
}
|
|
103
|
+
/** `id` when it fits one `name:` line and holds no control character, else `''`. */
|
|
104
|
+
function threadingId(name, id) {
|
|
105
|
+
return fitsHeaderLine(name, id) && indexOfControl(id) === -1 ? id : "";
|
|
106
|
+
}
|
|
107
|
+
/** `References` cut to its newest whole ids, or `''` when an id cannot fit a line. */
|
|
108
|
+
function threadingReferences(chain) {
|
|
109
|
+
const kept = newestIds(chain, MAX_REFERENCES_CHARS).trim();
|
|
110
|
+
return fitsHeaderLine("References", kept) ? kept : "";
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* A reply's `References`, or `''`: the inbound chain plus the parent's id,
|
|
114
|
+
* trimmed to its newest whole ids, or the parent's id alone when an id
|
|
115
|
+
* cannot fit a line. `messageId` was already checked with `threadingId`.
|
|
116
|
+
*/
|
|
117
|
+
function replyReferences(originalReferences, messageId) {
|
|
118
|
+
const parent = messageId ? ` ${messageId}` : "";
|
|
119
|
+
const chain = `${newestIds(originalReferences, MAX_REFERENCES_CHARS - parent.length)}${parent}`.trim();
|
|
120
|
+
return fitsHeaderLine("References", chain) ? chain : messageId;
|
|
121
|
+
}
|
|
122
|
+
// src/runtime/email/mime.ts
|
|
4
123
|
/**
|
|
5
124
|
* Minimal RFC 5322 / 2047 / 2045 MIME builder for the void/email runtime.
|
|
6
125
|
*
|
|
@@ -29,17 +148,6 @@ function rejectCRLF(field, value) {
|
|
|
29
148
|
}
|
|
30
149
|
}
|
|
31
150
|
/**
|
|
32
|
-
* Index of the first C0 control other than HTAB, or DEL; -1 when there is
|
|
33
|
-
* none. HTAB is folding whitespace (RFC 5322 §3.2.2).
|
|
34
|
-
*/
|
|
35
|
-
function indexOfControl(value) {
|
|
36
|
-
for (let i = 0; i < value.length; i++) {
|
|
37
|
-
const c = value.charCodeAt(i);
|
|
38
|
-
if (c < 32 && c !== 9 || c === 127) return i;
|
|
39
|
-
}
|
|
40
|
-
return -1;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
151
|
* Refuse a control in a value rendered verbatim into a header (an
|
|
44
152
|
* attachment's filename, media type and Content-ID). Names the code point,
|
|
45
153
|
* never the value.
|
|
@@ -350,8 +458,7 @@ async function normalizeEmail(opts) {
|
|
|
350
458
|
if (attachmentBytes > MAX_ATTACHMENT_BYTES_TOTAL) throw attachmentsTooLargeError(attachmentBytes);
|
|
351
459
|
attachments.push(normalized);
|
|
352
460
|
}
|
|
353
|
-
|
|
354
|
-
if (opts.threading?.references) rejectCRLF("threading.references", opts.threading.references);
|
|
461
|
+
const threading = normalizeThreading(opts.threading);
|
|
355
462
|
return {
|
|
356
463
|
from,
|
|
357
464
|
to,
|
|
@@ -363,7 +470,28 @@ async function normalizeEmail(opts) {
|
|
|
363
470
|
html: opts.html,
|
|
364
471
|
headers: opts.headers ? { ...opts.headers } : {},
|
|
365
472
|
attachments,
|
|
366
|
-
threading
|
|
473
|
+
threading
|
|
474
|
+
};
|
|
475
|
+
}
|
|
476
|
+
/**
|
|
477
|
+
* `threading` from `sendEmail`, `createEmail` or `replyEmail`. A value that is
|
|
478
|
+
* not a string is a caller error. Thread ids often come from remote mail, so a
|
|
479
|
+
* bad id never fails the email: an `inReplyTo` with a control character or
|
|
480
|
+
* too long for one line is left out, and a `references` chain that cannot be
|
|
481
|
+
* sent falls back to `inReplyTo`.
|
|
482
|
+
*/
|
|
483
|
+
function normalizeThreading(threading) {
|
|
484
|
+
if (threading === void 0) return;
|
|
485
|
+
if (typeof threading !== "object" || threading === null || Array.isArray(threading)) throw new MimeError("MIME_ERROR", "threading: must be an object.");
|
|
486
|
+
const { inReplyTo = "", references = "" } = threading;
|
|
487
|
+
if (typeof inReplyTo !== "string") throw new MimeError("MIME_ERROR", "threading.inReplyTo: must be a string.");
|
|
488
|
+
if (typeof references !== "string") throw new MimeError("MIME_ERROR", "threading.references: must be a string.");
|
|
489
|
+
const parent = threadingId("In-Reply-To", trimFws(inReplyTo));
|
|
490
|
+
const chain = threadingReferences(references) || parent;
|
|
491
|
+
if (!parent && !chain) return;
|
|
492
|
+
return {
|
|
493
|
+
...parent ? { inReplyTo: parent } : {},
|
|
494
|
+
...chain ? { references: chain } : {}
|
|
367
495
|
};
|
|
368
496
|
}
|
|
369
497
|
/**
|
|
@@ -873,5 +1001,4 @@ function buildMime(email) {
|
|
|
873
1001
|
messageId
|
|
874
1002
|
};
|
|
875
1003
|
}
|
|
876
|
-
|
|
877
|
-
export { newId as a, validateAddressParts as c, indexOfControl as i, MimeError as n, normalizeEmail as o, buildMime as r, parseAddress as s, MAX_MESSAGE_BYTES as t };
|
|
1004
|
+
export { normalizeEmail as a, fitsHeaderLine as c, newId as i, replyReferences as l, MimeError as n, parseAddress as o, buildMime as r, validateAddressParts as s, MAX_MESSAGE_BYTES as t, threadingId as u };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { n as splitMigrationSql } from "./migration-handler-
|
|
1
|
+
import { n as splitMigrationSql } from "./migration-handler-DCehTlWs.mjs";
|
|
2
2
|
import { createHash, randomUUID } from "node:crypto";
|
|
3
|
-
|
|
3
|
+
// src/runtime/migration-lock-mysql.ts
|
|
4
4
|
/**
|
|
5
5
|
* Migration runs on one MySQL database exclude each other with two kinds of lock, and each run
|
|
6
6
|
* checks for the other kind after it takes its own:
|
|
@@ -120,8 +120,7 @@ function isMissingTable(error) {
|
|
|
120
120
|
function errnoOf(error) {
|
|
121
121
|
return typeof error === "object" && error !== null ? error.errno : void 0;
|
|
122
122
|
}
|
|
123
|
-
|
|
124
|
-
//#region src/runtime/mysql-migration-sql.ts
|
|
123
|
+
// src/runtime/mysql-migration-sql.ts
|
|
125
124
|
/**
|
|
126
125
|
* Splits a MySQL migration file into the statements Void runs one query at a time. Hyperdrive
|
|
127
126
|
* does not accept several statements in one query, and a file that runs statement by statement
|
|
@@ -237,5 +236,4 @@ function skipQuoted(sql, open, quote) {
|
|
|
237
236
|
}
|
|
238
237
|
return sql.length;
|
|
239
238
|
}
|
|
240
|
-
//#endregion
|
|
241
239
|
export { mySqlMigrationLockError as a, holdMySqlMigrationLease as i, splitMySqlMigrationStatements as n, mySqlMigrationLockName as o, acquireMySqlMigrationLease as r, readMySqlMigrationLease as s, splitMySqlMigrationSql as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as defineDatabaseProvider } from "./database-provider-
|
|
2
|
-
|
|
1
|
+
import { t as defineDatabaseProvider } from "./database-provider-DkZo4VwN.mjs";
|
|
2
|
+
// src/database-providers/neon.ts
|
|
3
3
|
function getConnectionString(payload) {
|
|
4
4
|
if (!payload || typeof payload !== "object") return;
|
|
5
5
|
const record = payload;
|
|
@@ -49,5 +49,4 @@ function createNeonDatabaseProvider(options = {}) {
|
|
|
49
49
|
}
|
|
50
50
|
});
|
|
51
51
|
}
|
|
52
|
-
//#endregion
|
|
53
52
|
export { createNeonDatabaseProvider };
|
package/dist/nitro.d.mts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//#region src/nitro.d.ts
|
|
2
1
|
/** The parts of a Nitro instance that the module uses. */
|
|
3
2
|
type NitroInstance = {
|
|
4
3
|
options: {
|
|
@@ -26,5 +25,4 @@ declare const voidNitroModule: {
|
|
|
26
25
|
name: string;
|
|
27
26
|
setup(nitro: NitroInstance): void;
|
|
28
27
|
};
|
|
29
|
-
//#endregion
|
|
30
28
|
export { voidNitroModule as default };
|
package/dist/nitro.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { a as join, n as dirname } from "./dist-
|
|
2
|
-
import { l as getDatabaseDialect, p as readConfig } from "./config-
|
|
3
|
-
import { c as voidDbBundlerPlugin } from "./dispatch-
|
|
4
|
-
import { n as bundleWorkerSqlDriver } from "./wrapper-
|
|
1
|
+
import { a as join, n as dirname } from "./dist-DMYe8CZJ.mjs";
|
|
2
|
+
import { l as getDatabaseDialect, p as readConfig } from "./config-BITKQ3O6.mjs";
|
|
3
|
+
import { c as voidDbBundlerPlugin } from "./dispatch-BNLB5_Gm.mjs";
|
|
4
|
+
import { n as bundleWorkerSqlDriver } from "./wrapper-C9SUxoj7.mjs";
|
|
5
5
|
import { normalizePath } from "vite";
|
|
6
6
|
import { fileURLToPath } from "node:url";
|
|
7
7
|
import { resolve } from "node:path/win32";
|
|
8
|
-
|
|
8
|
+
// src/nitro.ts
|
|
9
9
|
const envModuleFile = fileURLToPath(import.meta.resolve("#self/_env"));
|
|
10
10
|
const packageDistDir = `${normalizePath(dirname(dirname(envModuleFile)))}/`;
|
|
11
11
|
const REQUEST_SCOPE_PLUGIN = "#void/nitro-request-scope";
|
|
@@ -84,5 +84,4 @@ const voidNitroModule = {
|
|
|
84
84
|
rollupConfig.plugins = [...plugins, ...Array.isArray(existing) ? existing : existing ? [existing] : []];
|
|
85
85
|
}
|
|
86
86
|
};
|
|
87
|
-
//#endregion
|
|
88
87
|
export { voidNitroModule as default };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { n as dirname } from "./dist-
|
|
2
|
-
import { a as projectAuthConfigImporter, i as loadVoidAuthConfig, r as findVoidAuthConfig } from "./config-
|
|
3
|
-
import { p as readConfig } from "./config-
|
|
4
|
-
import { r as getMiniflareDatabasePath } from "./runner-
|
|
5
|
-
import { s as loadLocalEnv } from "./env-
|
|
6
|
-
import { a as pgMigrationRunner, i as mysqlMigrationRunner, n as applyPgAuthMigrations, r as applySqliteAuthMigrations, t as applyMySqlAuthMigrations } from "./auth-migrations-
|
|
7
|
-
import { r as resolveVoidAuthMigrationSchema } from "./drizzle-
|
|
1
|
+
import { n as dirname } from "./dist-DMYe8CZJ.mjs";
|
|
2
|
+
import { a as projectAuthConfigImporter, i as loadVoidAuthConfig, r as findVoidAuthConfig } from "./config-WlvEcL82.mjs";
|
|
3
|
+
import { p as readConfig } from "./config-BITKQ3O6.mjs";
|
|
4
|
+
import { r as getMiniflareDatabasePath } from "./runner-5MCSimKx.mjs";
|
|
5
|
+
import { s as loadLocalEnv } from "./env-CuzZZyjB.mjs";
|
|
6
|
+
import { a as pgMigrationRunner, i as mysqlMigrationRunner, n as applyPgAuthMigrations, r as applySqliteAuthMigrations, t as applyMySqlAuthMigrations } from "./auth-migrations-DDeifS3v.mjs";
|
|
7
|
+
import { r as resolveVoidAuthMigrationSchema } from "./drizzle-lFdzSEa9.mjs";
|
|
8
8
|
import { mkdirSync } from "node:fs";
|
|
9
|
-
|
|
9
|
+
// src/auth/node.ts
|
|
10
10
|
async function runLocalVoidAuthMigrations(root, dialect, persistRoot, databaseId, configPath = findVoidAuthConfig(root), databaseUrl, importModule) {
|
|
11
11
|
const authConfig = await loadVoidAuthConfig(configPath, importModule ?? projectAuthConfigImporter(root));
|
|
12
12
|
const runtime = {
|
|
@@ -61,5 +61,4 @@ async function runLocalVoidAuthMigrations(root, dialect, persistRoot, databaseId
|
|
|
61
61
|
await client.end();
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
|
-
//#endregion
|
|
65
64
|
export { runLocalVoidAuthMigrations };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { t as OPERATOR_MAX_TIMEOUT_MS } from "./operator-client-
|
|
1
|
+
import { t as OPERATOR_MAX_TIMEOUT_MS } from "./operator-client-BIY4-N_6.mjs";
|
|
2
2
|
import { parsePlatformLoginId } from "@void/platform";
|
|
3
|
-
|
|
3
|
+
// src/cli/operator-args.ts
|
|
4
4
|
const operatorCommands = [
|
|
5
5
|
{
|
|
6
6
|
group: "auth",
|
|
@@ -710,5 +710,4 @@ function parseOperatorArgs(args) {
|
|
|
710
710
|
}
|
|
711
711
|
return parsed;
|
|
712
712
|
}
|
|
713
|
-
//#endregion
|
|
714
713
|
export { operatorGroups as n, parseOperatorArgs as r, operatorCommands as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as deleteKeyringPassword, T as writeKeyringPassword, c as normalizePlatformApiUrl, i as getActivePlatformConnection, r as findPlatformConnections, u as platformCredentialAccount, w as readKeyringPassword } from "./platform-registry-
|
|
2
|
-
import { n as OperatorClient, r as OperatorClientError } from "./operator-client-
|
|
1
|
+
import { C as deleteKeyringPassword, T as writeKeyringPassword, c as normalizePlatformApiUrl, i as getActivePlatformConnection, r as findPlatformConnections, u as platformCredentialAccount, w as readKeyringPassword } from "./platform-registry-DZ_2Xuqd.mjs";
|
|
2
|
+
import { n as OperatorClient, r as OperatorClientError } from "./operator-client-BIY4-N_6.mjs";
|
|
3
3
|
/** Operator authority never comes from repository-controlled metadata. */
|
|
4
4
|
function resolveOperatorOrigin(connection = "") {
|
|
5
5
|
if (connection) {
|
|
@@ -44,5 +44,4 @@ async function exchangeOperatorSession(origin, apiToken) {
|
|
|
44
44
|
if (typeof session.token !== "string" || !session.token || session.apiVersion !== 1 || typeof session.expiresAt !== "string") throw new OperatorClientError("Operator API returned an invalid session.", "invalid_response");
|
|
45
45
|
return session;
|
|
46
46
|
}
|
|
47
|
-
//#endregion
|
|
48
47
|
export { resolveOperatorOrigin as a, removeOperatorToken as i, readOperatorApiTokenStdin as n, saveOperatorToken as o, readOperatorToken as r, exchangeOperatorSession as t };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { c as normalizePlatformApiUrl } from "./platform-registry-
|
|
2
|
-
import { t as cfAccessHeaders } from "./cf-access-
|
|
3
|
-
import { t as ensurePlatformAccessToken } from "./cf-access-
|
|
1
|
+
import { c as normalizePlatformApiUrl } from "./platform-registry-DZ_2Xuqd.mjs";
|
|
2
|
+
import { t as cfAccessHeaders } from "./cf-access-pejlJmuy.mjs";
|
|
3
|
+
import { t as ensurePlatformAccessToken } from "./cf-access-BmBT2h8_.mjs";
|
|
4
4
|
const OPERATOR_MAX_TIMEOUT_MS = 36e5;
|
|
5
5
|
var OperatorClientError = class extends Error {
|
|
6
6
|
code;
|
|
@@ -79,5 +79,4 @@ var OperatorClient = class {
|
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
};
|
|
82
|
-
//#endregion
|
|
83
82
|
export { OperatorClient as n, OperatorClientError as r, OPERATOR_MAX_TIMEOUT_MS as t };
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { h as sanitizeTerminalText, m as printSuccess } from "./output-
|
|
2
|
-
import { n as OperatorClient, r as OperatorClientError } from "./operator-client-
|
|
3
|
-
import {
|
|
1
|
+
import { h as sanitizeTerminalText, i as dim, m as printSuccess } from "./output-BCdLioKP.mjs";
|
|
2
|
+
import { n as OperatorClient, r as OperatorClientError } from "./operator-client-BIY4-N_6.mjs";
|
|
3
|
+
import { t as MINIMAL_RUNTIME_LOGS_NOTE } from "./platform-runtime-logs-CdJGnk3f.mjs";
|
|
4
|
+
import { a as resolveOperatorOrigin, i as removeOperatorToken, n as readOperatorApiTokenStdin, o as saveOperatorToken, r as readOperatorToken, t as exchangeOperatorSession } from "./operator-auth-CfDcmzpo.mjs";
|
|
4
5
|
import { createHash } from "node:crypto";
|
|
5
6
|
import { setTimeout } from "node:timers/promises";
|
|
6
7
|
import { createInterface } from "node:readline/promises";
|
|
7
|
-
|
|
8
|
+
// src/cli/operator-cmd.ts
|
|
8
9
|
const MAX_RUNTIME_FOLLOW_ROWS = 1e4;
|
|
9
10
|
const BUILD_LOG_DRAIN_TIMEOUT_MS = 12e4;
|
|
10
11
|
function printable(value) {
|
|
@@ -81,11 +82,16 @@ function outputMutation(result, args) {
|
|
|
81
82
|
if (args.json || result.ok === false || result.partial === true || result.complete === false || result.error || result.operationStatus && result.operationStatus !== "completed" || configuration?.status && configuration.status !== "ready" && configuration.status !== "disabled" || project?.state === "reconciling" || project?.state === "error" || project?.last_error) return;
|
|
82
83
|
printSuccess(`Platform ${args.group} ${args.action} completed.`);
|
|
83
84
|
}
|
|
84
|
-
function outputLogs(result, json) {
|
|
85
|
+
function outputLogs(result, json, state = {}) {
|
|
85
86
|
if (json) {
|
|
86
87
|
output(result, true);
|
|
87
88
|
return;
|
|
88
89
|
}
|
|
90
|
+
const minimal = result.runtimeLogs === "minimal";
|
|
91
|
+
if (minimal && !state.runtimeLogsNoted) {
|
|
92
|
+
state.runtimeLogsNoted = true;
|
|
93
|
+
console.log(dim(MINIMAL_RUNTIME_LOGS_NOTE));
|
|
94
|
+
}
|
|
89
95
|
if (Array.isArray(result.lines)) {
|
|
90
96
|
for (const entry of result.lines) if (entry && typeof entry === "object") {
|
|
91
97
|
const line = entry;
|
|
@@ -100,15 +106,26 @@ function outputLogs(result, json) {
|
|
|
100
106
|
continue;
|
|
101
107
|
}
|
|
102
108
|
const row = entry;
|
|
103
|
-
|
|
109
|
+
const parts = [
|
|
110
|
+
printable(row.timestamp ?? row.ts),
|
|
111
|
+
printable(row.method),
|
|
112
|
+
printable(row.url),
|
|
113
|
+
printable(row.status ?? row.statusCode ?? row.outcome)
|
|
114
|
+
];
|
|
115
|
+
console.log((minimal ? parts.filter((part) => part !== "") : parts).join(" "));
|
|
104
116
|
if (Array.isArray(row.logs)) for (const log of row.logs) if (log && typeof log === "object") {
|
|
105
117
|
const record = log;
|
|
106
|
-
|
|
118
|
+
const level = record.level ? `[${printable(record.level)}] ` : "";
|
|
119
|
+
if (minimal && Array.isArray(record.message) && record.message.length === 0) console.log(` ${level.trimEnd()}`);
|
|
120
|
+
else console.log(` ${level}${printable(record.message ?? log)}`);
|
|
107
121
|
} else console.log(` ${printable(log)}`);
|
|
108
122
|
if (Array.isArray(row.exceptions)) for (const exception of row.exceptions) if (exception && typeof exception === "object") {
|
|
109
123
|
const record = exception;
|
|
110
|
-
|
|
111
|
-
|
|
124
|
+
if (minimal && record.message === "" && record.name) console.log(` ${printable(record.name)}`);
|
|
125
|
+
else {
|
|
126
|
+
const name = record.name ? `${printable(record.name)}: ` : "";
|
|
127
|
+
console.log(` ${name}${printable(record.message ?? exception)}`);
|
|
128
|
+
}
|
|
112
129
|
} else console.log(` ${printable(exception)}`);
|
|
113
130
|
}
|
|
114
131
|
if (result.nextCursor) console.log(`Next cursor: ${printable(result.nextCursor)}`);
|
|
@@ -163,9 +180,9 @@ async function runAuth(origin, args) {
|
|
|
163
180
|
if (args.action === "login" || args.action === "token" && args.tokenStdin) {
|
|
164
181
|
if (!args.tokenStdin && !process.stdin.isTTY) throw new OperatorClientError("Browser login requires an interactive terminal. Use --token-stdin to exchange an API session.", "interactive_login_required");
|
|
165
182
|
const apiToken = args.tokenStdin ? await readOperatorApiTokenStdin() : await (async () => {
|
|
166
|
-
const { discoverPlatform } = await import("./platform-cmd-
|
|
167
|
-
const { selectPlatformLoginMethod } = await import("./login-
|
|
168
|
-
const { runPlatformLogin } = await import("./auth-
|
|
183
|
+
const { discoverPlatform } = await import("./platform-cmd-DpCHawGF.mjs");
|
|
184
|
+
const { selectPlatformLoginMethod } = await import("./login-BpbYeu-n.mjs");
|
|
185
|
+
const { runPlatformLogin } = await import("./auth-CL-p_rqV.mjs");
|
|
169
186
|
return runPlatformLogin(origin, (await selectPlatformLoginMethod(await discoverPlatform(origin), args.provider)).id, (url) => process.stderr.write(`Sign in at ${url}\n`));
|
|
170
187
|
})();
|
|
171
188
|
const session = await exchangeOperatorSession(origin, apiToken);
|
|
@@ -230,6 +247,7 @@ async function followOperatorLogs(client, args, signal, pollIntervalMs = 2e3) {
|
|
|
230
247
|
let previousRuntimeRows = /* @__PURE__ */ new Map();
|
|
231
248
|
let currentRuntimeRows = /* @__PURE__ */ new Map();
|
|
232
249
|
let currentRuntimeRowCount = 0;
|
|
250
|
+
const outputState = {};
|
|
233
251
|
try {
|
|
234
252
|
while (!combined.aborted) {
|
|
235
253
|
const result = await client.request(args.path, {
|
|
@@ -252,7 +270,7 @@ async function followOperatorLogs(client, args, signal, pollIntervalMs = 2e3) {
|
|
|
252
270
|
data
|
|
253
271
|
};
|
|
254
272
|
}
|
|
255
|
-
outputLogs(visibleResult, args.json);
|
|
273
|
+
outputLogs(visibleResult, args.json, outputState);
|
|
256
274
|
if (args.group === "build") {
|
|
257
275
|
if (typeof result.lastSeq !== "number" || !Number.isSafeInteger(result.lastSeq) || result.lastSeq < Number(query.since ?? 0)) throw new OperatorClientError("Build log response has an invalid cursor.", "invalid_response");
|
|
258
276
|
const previousSeq = Number(query.since ?? 0);
|
|
@@ -344,7 +362,7 @@ async function migrateDeploymentAssets(client, origin, args) {
|
|
|
344
362
|
}
|
|
345
363
|
async function runOperatorCommand(args) {
|
|
346
364
|
if (!args.action) {
|
|
347
|
-
const { printHelpPage } = await import("./help-
|
|
365
|
+
const { printHelpPage } = await import("./help-Ba8Dq5-r.mjs");
|
|
348
366
|
printHelpPage(["platform", args.group]);
|
|
349
367
|
return;
|
|
350
368
|
}
|
|
@@ -402,5 +420,4 @@ async function runOperatorCommand(args) {
|
|
|
402
420
|
if (result.allOk === false) process.exitCode = 1;
|
|
403
421
|
}
|
|
404
422
|
}
|
|
405
|
-
//#endregion
|
|
406
423
|
export { runOperatorCommand as a, humanLines as i, confirmOperatorMutation as n, followOperatorLogs as r, BUILD_LOG_DRAIN_TIMEOUT_MS as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { a as runOperatorCommand } from "./operator-cmd-BUqsdk2K.mjs";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { n as __toESM } from "./rolldown-runtime-
|
|
2
|
-
import { t as require_picocolors } from "./picocolors-
|
|
3
|
-
import { B as note$1, H as outro, L as log, P as isCI, nt as settings, q as spinner } from "./dist-
|
|
1
|
+
import { n as __toESM } from "./rolldown-runtime-uD8oG6U2.mjs";
|
|
2
|
+
import { t as require_picocolors } from "./picocolors-D1NxSLw-.mjs";
|
|
3
|
+
import { B as note$1, H as outro, L as log, P as isCI, nt as settings, q as spinner } from "./dist-D23AAMxT.mjs";
|
|
4
4
|
import { stripVTControlCharacters } from "node:util";
|
|
5
5
|
import terminalLink from "terminal-link";
|
|
6
|
-
|
|
6
|
+
// src/cli/output.ts
|
|
7
7
|
var import_picocolors = /* @__PURE__ */ __toESM(require_picocolors(), 1);
|
|
8
8
|
/** Keep the destination visible when the terminal cannot render a named hyperlink. */
|
|
9
9
|
function formatLink(text, url) {
|
|
@@ -170,5 +170,4 @@ function errorStackFrames(error) {
|
|
|
170
170
|
const frames = stack === header ? "" : stack.startsWith(`${header}\n`) ? stack.slice(header.length + 1) : stack;
|
|
171
171
|
return frames.trimEnd() ? frames.trimEnd().split("\n") : [];
|
|
172
172
|
}
|
|
173
|
-
//#endregion
|
|
174
173
|
export { tablePrefix as _, errorStackFrames as a, formatRelativeTime as c, helpLine as d, import_picocolors as f, sectionTitle as g, sanitizeTerminalText as h, dim as i, formatUrl as l, printSuccess as m, cliCommandName as n, formatCount as o, note as p, createSpinner as r, formatLink as s, categoryTitle as t, getErrorMessage as u };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { m as printSuccess } from "./output-BCdLioKP.mjs";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { a as join, n as dirname } from "./dist-
|
|
1
|
+
import { a as join, n as dirname } from "./dist-DMYe8CZJ.mjs";
|
|
2
2
|
import { existsSync, readFileSync } from "node:fs";
|
|
3
|
-
|
|
3
|
+
// src/shared/package-json.ts
|
|
4
4
|
const DEFAULT_DEPENDENCY_FIELDS = ["dependencies", "devDependencies"];
|
|
5
5
|
function isPackageJson(value) {
|
|
6
6
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
@@ -40,5 +40,4 @@ function getPackageDependencies(packageJson, fields = DEFAULT_DEPENDENCY_FIELDS)
|
|
|
40
40
|
function hasPackageDependency(packageJson, packageName, fields) {
|
|
41
41
|
return packageName in getPackageDependencies(packageJson, fields);
|
|
42
42
|
}
|
|
43
|
-
//#endregion
|
|
44
43
|
export { readPackageJson as i, hasPackageDependency as n, readNearestPackageJson as r, getPackageDependencies as t };
|