void 1.1.12 → 1.2.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/dist/{account-cmd-Cj6sCMTk.mjs → account-cmd-CdUll_35.mjs} +5 -5
- package/dist/action-key-XZ9HkWAO.mjs +26 -0
- package/dist/{application-analysis-D7nNmNJb.mjs → application-analysis-fEqoSeMp.mjs} +11 -11
- package/dist/{application-routing-CZH66gXn.mjs → application-routing-DAhNP4u3.mjs} +1 -1
- package/dist/{ast-CPGPjb0V.mjs → ast-CsZ_q_gc.mjs} +6 -1
- package/dist/ast-bindings-C3yaPs1y.mjs +296 -0
- package/dist/{auth-link-Dj7lAC_K.mjs → auth-link-C87vGXM-.mjs} +5 -5
- package/dist/{auth-router-CNsMOFCa.mjs → auth-router-6I81r-ix.mjs} +3 -3
- package/dist/{better-auth-shared-Bv18bB-l.d.mts → better-auth-shared-DVk2DkTW.d.mts} +1 -1
- package/dist/{build-cmd-ByhegwRC.mjs → build-cmd-ex1g-j_e.mjs} +4 -4
- package/dist/{cache-CEFb5ban.mjs → cache-oHzrnY3z.mjs} +4 -4
- package/dist/{cancel-deploy-CaARY26n.mjs → cancel-deploy-viAMD0Q_.mjs} +3 -3
- package/dist/cf-build-output-BJHuSsVN.mjs +1 -0
- package/dist/{cf-build-output-ChEKWan2.mjs → cf-build-output-BhVxldCw.mjs} +4 -3
- package/dist/{cf-command-values-b8OqDoo9.mjs → cf-command-values-ByHk0xg4.mjs} +2 -1
- package/dist/cf-worker-settings-BECvvTVd.mjs +37 -0
- package/dist/cli/cli.mjs +32 -32
- package/dist/cli/cloudflare-operation-process.mjs +23 -13
- package/dist/cli/env-schema-probe.d.mts +1 -1
- package/dist/cli/env-schema-probe.mjs +3 -3
- package/dist/{client-BdzxubTS.mjs → client-BEkdj1kx.mjs} +1 -1
- package/dist/client-BiRDZTSd.mjs +1 -0
- package/dist/{cloudflare-auth-DSvBc1Gu.mjs → cloudflare-auth-Byo_0_N9.mjs} +1 -1
- package/dist/{cloudflare-cmd-D_2-Q-_i.mjs → cloudflare-cmd-DMzCv12s.mjs} +5 -5
- package/dist/{cloudflare-config-rdFOys4X.mjs → cloudflare-config-DchHxPTo.mjs} +1 -1
- package/dist/{cloudflare-connect-BN-k2kD-.mjs → cloudflare-connect-CCRTVg-I.mjs} +3 -3
- package/dist/{cloudflare-operations-D5PLrOqD.mjs → cloudflare-operations-Dh9dEHJj.mjs} +6 -6
- package/dist/{cloudflare-operations-BFLCpUCV.mjs → cloudflare-operations-DsSaw2BT.mjs} +1 -1
- package/dist/{cloudflare-process-CZJ4viYl.mjs → cloudflare-process-8jEYIeim.mjs} +3 -2
- package/dist/{config-DC5llZaI.mjs → config-BIaXIkkv.mjs} +8 -3
- package/dist/{config-DYJV8aEH.mjs → config-BU6hMu1W.mjs} +1 -1
- package/dist/{config-D26zcdKy.mjs → config-DHgSEWT7.mjs} +39 -6
- package/dist/{config-7qoq2p9v.d.mts → config-DQfHOKh9.d.mts} +10 -1
- package/dist/config-entry.d.mts +1 -1
- package/dist/{connect-C4_m2moF.mjs → connect-k7R2rPVA.mjs} +6 -6
- package/dist/{create-project-CvuYDD-l.mjs → create-project-DTuy-l0z.mjs} +1 -1
- package/dist/{create-project-D8jQTwVQ.mjs → create-project-DV71ol5d.mjs} +4 -4
- package/dist/{db-BsiOAa0A.mjs → db-DVOkLH5X.mjs} +30 -24
- package/dist/{delete-CAma7nFi.mjs → delete-BbP5eopu.mjs} +4 -4
- package/dist/{deploy-D1gIPiAq.mjs → deploy-7H32EnUs.mjs} +114 -71
- package/dist/deploy-CE0Ev0Ob.mjs +2 -0
- package/dist/{deploy-managed-static-B9KVxY3X.mjs → deploy-managed-static-DlvcvnQT.mjs} +15 -15
- package/dist/{deploy-transport-B3mtEi_q.mjs → deploy-transport-BzGEj0Ge.mjs} +2 -2
- package/dist/deploy.mjs +7 -7
- package/dist/{dev-inbox-Rd6j_8vM.mjs → dev-inbox-D0jxye_D.mjs} +1 -1
- package/dist/{dispatch-BAbbn3jg.mjs → dispatch-DoUnxTNo.mjs} +15 -11
- package/dist/{dist-CfgIkieS.mjs → dist-B1PLt4_8.mjs} +1 -1
- package/dist/{dist-BVdsO7Py.mjs → dist-Cor9XGoz.mjs} +94 -200
- package/dist/{dist-Bn8Kodjp.mjs → dist-D15hFhP0.mjs} +1 -1
- package/dist/{domain-BAdwm-QS.mjs → domain-CA2wBgra.mjs} +5 -5
- package/dist/drizzle-9TubSZvI.mjs +1 -0
- package/dist/{email-BcjSyAL0.mjs → email-B9ayYQEG.mjs} +1 -1
- package/dist/{email-MwjA7kaL.mjs → email-DXpCc77w.mjs} +10 -10
- package/dist/{email-cloudflare-etpKiITL.mjs → email-cloudflare-D03g2TkS.mjs} +7 -7
- package/dist/{entry-B_0IhV64.mjs → entry-BEM8ZuGP.mjs} +40 -12
- package/dist/{env-B163-G1s.mjs → env-DgOQ9_8S.mjs} +6 -6
- package/dist/{env-public-CCdykygU.d.mts → env-public-6lqiSD2b.d.mts} +1 -0
- package/dist/{env-types-GRchm5dw.mjs → env-types-BicfKBhV.mjs} +1 -1
- package/dist/{env-validation-CuGfWRJd.mjs → env-validation-BmsdCZEk.mjs} +1 -1
- package/dist/{env-validation-D_KyMdab.mjs → env-validation-Dwq3PJzK.mjs} +3 -3
- package/dist/{gen-CYN3wiov.mjs → gen-BfmcIi2g.mjs} +5 -5
- package/dist/gen-NrOlWZaG.mjs +1 -0
- package/dist/{github-cmd-C8QsnJQs.mjs → github-cmd-CY9LUqLh.mjs} +4 -4
- package/dist/{handler-D5K_yP6T.d.mts → handler-BbkSPzGF.d.mts} +90 -8
- package/dist/{headers-Bi4bOAwp.mjs → headers-D522zd0A.mjs} +2 -2
- package/dist/help-BeAFFE5C.mjs +1 -0
- package/dist/{help-B2sFwn9b.mjs → help-CxSlPpzJ.mjs} +40 -10
- package/dist/{inbound-BuTfm11U.mjs → inbound-VrOLqwZY.mjs} +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +91 -57
- package/dist/{info-Bxunp14X.mjs → info-7VDlhtyy.mjs} +4 -4
- package/dist/{init-DGFQMnbk.mjs → init-DxYyOs4-.mjs} +103 -43
- package/dist/{link-CwrfpjIM.mjs → link-Ddmod1dZ.mjs} +5 -5
- package/dist/{list-hKoW5z-b.mjs → list-MogaugiO.mjs} +5 -5
- package/dist/{live-JheIDZKc.d.mts → live-Bt8Y_0bg.d.mts} +1 -1
- package/dist/{local-d1-CpaPbd_L.mjs → local-d1-BHBnKWRb.mjs} +1 -1
- package/dist/{log-vqY3pqwI.mjs → log-BMwmN5Ae.mjs} +2 -2
- package/dist/{login-f2eu2TQh.mjs → login-Cttnagmm.mjs} +4 -4
- package/dist/login-DgDwlKc_.mjs +1 -0
- package/dist/{logs-CEWqD-_B.mjs → logs-CAszUWZI.mjs} +4 -4
- package/dist/{migrate-DYfdWBXt.mjs → migrate-DyT2jJ8y.mjs} +5 -5
- package/dist/migrate-n49ZeS1X.mjs +1 -0
- package/dist/{mime-srOklVVv.mjs → mime-BAyHPskU.mjs} +1 -1
- package/dist/nitro.mjs +3 -3
- package/dist/{node-uN8_zxJr.mjs → node-WB7c2N4L.mjs} +2 -2
- package/dist/operator-cmd-d2MvJOrl.mjs +1 -0
- package/dist/{operator-cmd-DCr_QGMH.mjs → operator-cmd-skshjMGl.mjs} +4 -4
- package/dist/output-BW9uK099.mjs +1 -0
- package/dist/{output-CKguMgr7.mjs → output-BpgYODYx.mjs} +3 -3
- package/dist/pages/client.d.mts +1 -1
- package/dist/pages/client.mjs +30 -20
- package/dist/pages/index.d.mts +1 -1
- package/dist/pages/index.mjs +3 -3
- package/dist/pages/islands-plugin.mjs +2 -1
- package/dist/pages/protocol.d.mts +2 -2
- package/dist/pages/protocol.mjs +1 -1
- package/dist/{parse-filename-CUbj-1MP.mjs → parse-filename-DioPHiR9.mjs} +1 -35
- package/dist/{picocolors-BTps1_gs.mjs → picocolors-BsDfhxIw.mjs} +1 -1
- package/dist/{platform-args-B7ke06up.mjs → platform-args-DVbVClZl.mjs} +12 -4
- package/dist/platform-args-kQrgxScY.mjs +1 -0
- package/dist/{platform-auth-config-qGvEuns3.mjs → platform-auth-config-C-pm5Qzx.mjs} +6 -6
- package/dist/{platform-auth-protection-CyLcD6ot.mjs → platform-auth-protection-SHhvim1L.mjs} +4 -4
- package/dist/{platform-auth-recovery-B2LKI8V2.mjs → platform-auth-recovery-DXVWs-wA.mjs} +4 -4
- package/dist/{platform-cmd-CX7phm7V.mjs → platform-cmd-D5I1beUX.mjs} +7 -7
- package/dist/{platform-cmd-B2ec5eFg.mjs → platform-cmd-PiNRkopU.mjs} +1 -1
- package/dist/{platform-domain-DDNK2y-4.mjs → platform-domain-jpmBfZeb.mjs} +4 -4
- package/dist/{platform-lifecycle-CWc5gr6c.mjs → platform-lifecycle-DH3Yr1qQ.mjs} +1 -1
- package/dist/{platform-lifecycle-3CR98Tg2.mjs → platform-lifecycle-DyKmuNY6.mjs} +28 -17
- package/dist/{platform-management-o3LCCeE4.mjs → platform-management--vDwSn35.mjs} +11 -5
- package/dist/{platform-management-DAE6g2QU.mjs → platform-management-7m-PLaPJ.mjs} +1 -1
- package/dist/{platform-plans-config-CBMZxCep.mjs → platform-plans-config-CeydDSj0.mjs} +2 -2
- package/dist/{platform-recovery-Dmsg7lWA.mjs → platform-recovery-BiNpZZab.mjs} +2 -2
- package/dist/{platform-setup-hFbnWAVQ.mjs → platform-setup-Ca53gtt0.mjs} +3 -2
- package/dist/{plugin-inference-Bekzjuqw.mjs → plugin-inference-DUjCd55H.mjs} +145 -218
- package/dist/{prepare-HKo7Rh5V.mjs → prepare-BcAE5Sdj.mjs} +3 -3
- package/dist/prepare-C4I0f--h.mjs +1 -0
- package/dist/{prepare-DepAGBcV.mjs → prepare-DA-17DhO.mjs} +5 -5
- package/dist/{prerender-render-Bfsumdkv.mjs → prerender-render-Cijv7UFo.mjs} +11 -6
- package/dist/prerender-render.mjs +1 -1
- package/dist/{project-cmd-8ylYGx-O.mjs → project-cmd-DA4K5faU.mjs} +17 -17
- package/dist/{project-team-Bvpl78we.mjs → project-team-CQBNveX3.mjs} +4 -4
- package/dist/{project-token-QWHoJH2t.mjs → project-token-CCalFyQf.mjs} +4 -4
- package/dist/{project-zero-trust-8tJ-RFvu.mjs → project-zero-trust-DPnkiEuT.mjs} +4 -4
- package/dist/{protocol-Ssc_LhHj.d.mts → protocol-BBDpJz3G.d.mts} +3 -1
- package/dist/{protocol-bAUUkx70.mjs → protocol-DimNxVRr.mjs} +41 -16
- package/dist/{provision-BgXFDv0d.mjs → provision-BFLCrnUp.mjs} +1 -1
- package/dist/{provision-DZKYCEJg.mjs → provision-DtROpNNI.mjs} +3 -3
- package/dist/{requests-Vk5Zyhcy.mjs → requests-BpH0kImL.mjs} +3 -3
- package/dist/resolve-project-DD1vu8s9.mjs +1 -0
- package/dist/{resolve-project-WpwkCB_c.mjs → resolve-project-Xoi6eTWY.mjs} +1 -1
- package/dist/{rollback-CH4yMQys.mjs → rollback-CXS1tAa-.mjs} +4 -4
- package/dist/{rolldown-runtime-DXIUcv95.mjs → rolldown-runtime-3h0WiCiA.mjs} +1 -1
- package/dist/{routing-assets-VkrKIbxE.mjs → routing-assets-DdSFxoLp.mjs} +10 -4
- package/dist/runtime/better-auth-mysql.d.mts +1 -1
- package/dist/runtime/better-auth-pg.d.mts +1 -1
- package/dist/runtime/better-auth.d.mts +1 -1
- package/dist/runtime/email/testing.mjs +4 -4
- package/dist/runtime/email.mjs +3 -3
- package/dist/runtime/env-public.d.mts +1 -1
- package/dist/runtime/handler.d.mts +1 -1
- package/dist/runtime/live-client.d.mts +1 -1
- package/dist/runtime/live.d.mts +1 -1
- package/dist/runtime/routing.d.mts +17 -76
- package/dist/runtime/routing.mjs +277 -216
- package/dist/runtime/validator.d.mts +1 -1
- package/dist/runtime/ws-server.d.mts +2 -2
- package/dist/runtime/ws.d.mts +1 -1
- package/dist/{scan-D2-FcLHs.mjs → scan-8IzYXiU_.mjs} +12 -11
- package/dist/{secret-wr6Sn4Xa.mjs → secret-BbXHfLAt.mjs} +6 -6
- package/dist/{skills-C_yRTg0g.mjs → skills-CrUO3PJ0.mjs} +1 -1
- package/dist/{subcommand-prompt-CNZc4XUd.mjs → subcommand-prompt-D9OhhbGG.mjs} +2 -2
- package/dist/{version-metadata-B1Bm2wSq.mjs → version-metadata-tS39iW09.mjs} +1 -1
- package/dist/wrangler-BLb3_luP.mjs +1 -0
- package/dist/{wrangler-C9XSzrju.mjs → wrangler-F96NnLyb.mjs} +13 -5
- package/dist/{wrapper-DGsYwNi6.mjs → wrapper-D3sZyh2C.mjs} +3 -3
- package/dist/{ws-nnFnAyQb.d.mts → ws-BH-im_tX.d.mts} +1 -1
- package/docs/guide/ai.md +1 -1
- package/docs/guide/database/postgresql.md +1 -1
- package/docs/guide/database.md +26 -0
- package/docs/guide/email/domains.md +1 -1
- package/docs/guide/pages-routing/actions-and-forms.md +1 -1
- package/docs/guide/platform/installation/credentials.md +1 -1
- package/docs/guide/platform/installation/domains.md +16 -0
- package/docs/guide/self-hosted-platform.md +1 -1
- package/docs/guide/server-routing.md +1 -1
- package/docs/integrations/cloudflare.md +1 -0
- package/docs/reference/api/env.md +1 -1
- package/docs/reference/api/rewrites.md +1 -1
- package/docs/reference/api/types.md +1 -0
- package/docs/reference/cli/platform-installation.md +3 -2
- package/docs/reference/cli/setup.md +17 -0
- package/docs/reference/config.md +13 -0
- package/docs/reference/resource-inference.md +4 -0
- package/package.json +22 -22
- package/sandbox.Dockerfile +1 -1
- package/schema.json +23 -3
- package/dist/cf-build-output-Dcmxa-Zm.mjs +0 -1
- package/dist/cf-user-agent-BkEHPDLA.mjs +0 -16
- package/dist/client-DAnfyMe9.mjs +0 -1
- package/dist/deploy-Dc0XsCQj.mjs +0 -2
- package/dist/gen-Cf-RBVg4.mjs +0 -1
- package/dist/help-w-xlx_kq.mjs +0 -1
- package/dist/login-08mBwZfI.mjs +0 -1
- package/dist/migrate-Di-4EuoE.mjs +0 -1
- package/dist/operator-cmd-Bv20yLu2.mjs +0 -1
- package/dist/platform-args-B_LrqEZB.mjs +0 -1
- package/dist/prepare-EVEbQ9n2.mjs +0 -1
- package/dist/resolve-project-PnhzMtY6.mjs +0 -1
- package/dist/wrangler-DAdxHEzh.mjs +0 -1
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { a as join, c as resolve, n as dirname, r as extname, s as relative, t as basename } from "./dist-ipQi0Q8y.mjs";
|
|
2
|
-
import { r as detectFramework } from "./plugin-inference-
|
|
2
|
+
import { r as detectFramework } from "./plugin-inference-DUjCd55H.mjs";
|
|
3
3
|
import { n as readProjectPaths } from "./project-paths-DGu_QZ_Q.mjs";
|
|
4
|
-
import {
|
|
4
|
+
import { c as getDatabaseCasing, l as getDatabaseDialect, m as resolveBindingNames, p as readConfig } from "./config-DHgSEWT7.mjs";
|
|
5
5
|
import { i as writeJournal, n as readJournal, r as stripSqlExt, t as collectMigrations } from "./collect-Dew86qce.mjs";
|
|
6
6
|
import { n as readDeploymentPlatform, r as readProjectConfig } from "./project-rqDnVsJN.mjs";
|
|
7
|
-
import { t as resolveLocalD1Target } from "./local-d1-
|
|
7
|
+
import { t as resolveLocalD1Target } from "./local-d1-BHBnKWRb.mjs";
|
|
8
8
|
import { t as cfAccessHeaders } from "./cf-access-BM9G0lhO.mjs";
|
|
9
9
|
import { n as ensurePlatformProxyAccess, r as isCloudflareAccessChallenge, t as ensurePlatformAccessToken } from "./cf-access-CWP4avfP.mjs";
|
|
10
10
|
import { c as getToken, o as getProxyUrl } from "./auth-B6iOCjKI.mjs";
|
|
11
|
-
import { A as confirm, H as outro, L as log, X as text, tt as isCancel } from "./dist-BVdsO7Py.mjs";
|
|
12
|
-
import { f as import_picocolors, i as dim, l as formatUrl, m as printSuccess, o as formatCount, u as getErrorMessage } from "./output-CKguMgr7.mjs";
|
|
13
11
|
import { o as loadLocalEnv } from "./env-BJjULvL0.mjs";
|
|
14
12
|
import { i as validateMigrations, t as assertJournalCoherence } from "./validate-CnZPMq4q.mjs";
|
|
15
|
-
import {
|
|
13
|
+
import { A as confirm, H as outro, L as log, X as text, tt as isCancel } from "./dist-Cor9XGoz.mjs";
|
|
14
|
+
import { n as PlatformApiError, r as PlatformClient } from "./client-BEkdj1kx.mjs";
|
|
15
|
+
import { f as import_picocolors, i as dim, l as formatUrl, m as printSuccess, o as formatCount, u as getErrorMessage } from "./output-BpgYODYx.mjs";
|
|
16
16
|
import { n as drizzleKitBin } from "./yarn-pnp-DLbEFMT0.mjs";
|
|
17
|
-
import { n as formatTimestamp } from "./gen-
|
|
17
|
+
import { n as formatTimestamp } from "./gen-BfmcIi2g.mjs";
|
|
18
18
|
import { createRequire } from "node:module";
|
|
19
19
|
import { existsSync, mkdirSync, readFileSync, readdirSync, renameSync, rmSync, writeFileSync } from "node:fs";
|
|
20
20
|
import { pathToFileURL } from "node:url";
|
|
@@ -156,7 +156,7 @@ function runDrizzleKit(root, args) {
|
|
|
156
156
|
* already printed its own error.
|
|
157
157
|
*/
|
|
158
158
|
async function runDrizzleKitWithDatabaseUrl(root, url, dialect, command) {
|
|
159
|
-
const { withPrivateDrizzleConfig } = await import("./config-
|
|
159
|
+
const { withPrivateDrizzleConfig } = await import("./config-BU6hMu1W.mjs");
|
|
160
160
|
if (!withPrivateDrizzleConfig(root, url, dialect, (configPath) => {
|
|
161
161
|
try {
|
|
162
162
|
runDrizzleKit(root, [
|
|
@@ -312,7 +312,7 @@ async function runPush(root, dialect) {
|
|
|
312
312
|
printSuccess("Database schema pushed.");
|
|
313
313
|
return;
|
|
314
314
|
}
|
|
315
|
-
const { writeDrizzleConfig } = await import("./config-
|
|
315
|
+
const { writeDrizzleConfig } = await import("./config-BU6hMu1W.mjs");
|
|
316
316
|
const { databasePath: dbPath } = getLocalD1Target(root);
|
|
317
317
|
mkdirSync(dirname(dbPath), { recursive: true });
|
|
318
318
|
const configPath = writeDrizzleConfig(root, dbPath);
|
|
@@ -328,8 +328,8 @@ async function runPush(root, dialect) {
|
|
|
328
328
|
printSuccess("Database schema pushed.");
|
|
329
329
|
}
|
|
330
330
|
async function runGenerate(root, dialect) {
|
|
331
|
-
const { prepareProject } = await import("./prepare-
|
|
332
|
-
const { PLACEHOLDER_DB_URL, writeDrizzleConfig } = await import("./config-
|
|
331
|
+
const { prepareProject } = await import("./prepare-C4I0f--h.mjs");
|
|
332
|
+
const { PLACEHOLDER_DB_URL, writeDrizzleConfig } = await import("./config-BU6hMu1W.mjs");
|
|
333
333
|
await prepareProject(root);
|
|
334
334
|
const authSchemaPath = join(root, ".void", "better-auth-schema.ts");
|
|
335
335
|
const additionalSchemas = existsSync(authSchemaPath) ? [authSchemaPath] : void 0;
|
|
@@ -399,7 +399,7 @@ async function runStatus(root, dialect) {
|
|
|
399
399
|
applied_at: ""
|
|
400
400
|
}));
|
|
401
401
|
} else {
|
|
402
|
-
const { readCloudflareD1Migrations, resolveCloudflareD1Context } = await import("./cloudflare-operations-
|
|
402
|
+
const { readCloudflareD1Migrations, resolveCloudflareD1Context } = await import("./cloudflare-operations-DsSaw2BT.mjs");
|
|
403
403
|
remoteApplied = (await readCloudflareD1Migrations(resolveCloudflareD1Context(root, configuredD1Binding(root)))).map((name) => ({
|
|
404
404
|
name,
|
|
405
405
|
applied_at: ""
|
|
@@ -711,7 +711,7 @@ async function runExecute(root, command, file, dialect, remote) {
|
|
|
711
711
|
process.exit(0);
|
|
712
712
|
}
|
|
713
713
|
if (dialect === "sqlite") {
|
|
714
|
-
const { executeCloudflareD1Sql, resolveCloudflareD1Context } = await import("./cloudflare-operations-
|
|
714
|
+
const { executeCloudflareD1Sql, resolveCloudflareD1Context } = await import("./cloudflare-operations-DsSaw2BT.mjs");
|
|
715
715
|
const rows = await executeCloudflareD1Sql(resolveCloudflareD1Context(root, configuredD1Binding(root)), sql);
|
|
716
716
|
if (rows.length > 0) printTable(rows);
|
|
717
717
|
} else {
|
|
@@ -905,7 +905,7 @@ async function runMigrate(root, dialect, remote) {
|
|
|
905
905
|
log.info(`No migration files found in ${paths.sourceRelative("db/migrations")}/`);
|
|
906
906
|
return;
|
|
907
907
|
}
|
|
908
|
-
const { applyCloudflareD1Migrations, readCloudflareD1Migrations, resolveCloudflareD1Context } = await import("./cloudflare-operations-
|
|
908
|
+
const { applyCloudflareD1Migrations, readCloudflareD1Migrations, resolveCloudflareD1Context } = await import("./cloudflare-operations-DsSaw2BT.mjs");
|
|
909
909
|
const binding = configuredD1Binding(root);
|
|
910
910
|
const context = resolveCloudflareD1Context(root, binding);
|
|
911
911
|
const remoteBefore = new Set(await readCloudflareD1Migrations(context));
|
|
@@ -925,7 +925,7 @@ async function runMigrate(root, dialect, remote) {
|
|
|
925
925
|
log.error(`db: D1 binding ${binding} has no "migrations_dir", so Cloudflare would apply ./migrations instead of ${dir}/. Add "migrations_dir": "./${dir}" to that D1 binding in your Cloudflare config, then run the command again.`);
|
|
926
926
|
process.exit(1);
|
|
927
927
|
}
|
|
928
|
-
const { checkWranglerMigrationApplySet, parseRootWranglerConfig } = await import("./deploy-
|
|
928
|
+
const { checkWranglerMigrationApplySet, parseRootWranglerConfig } = await import("./deploy-CE0Ev0Ob.mjs");
|
|
929
929
|
const applySet = await checkWranglerMigrationApplySet(context.operation.configPath, parseRootWranglerConfig(context.operation.configPath), binding, context.migrationsDir, rawMigrations, paths.sourceRelative("db/migrations"));
|
|
930
930
|
if (!applySet.ok) {
|
|
931
931
|
log.error(applySet.reason);
|
|
@@ -1052,7 +1052,7 @@ async function runRestore(root, dialect, { target, platform: explicitPlatform, y
|
|
|
1052
1052
|
log.error("db: `void db restore` restores the D1 database of a direct Cloudflare deploy. After a one-off `void deploy --platform cloudflare`, run it with `--platform cloudflare`.");
|
|
1053
1053
|
process.exit(1);
|
|
1054
1054
|
}
|
|
1055
|
-
const { readCloudflareD1Migrations, resolveCloudflareD1Context, restoreCloudflareD1Database } = await import("./cloudflare-operations-
|
|
1055
|
+
const { readCloudflareD1Migrations, resolveCloudflareD1Context, restoreCloudflareD1Database } = await import("./cloudflare-operations-DsSaw2BT.mjs");
|
|
1056
1056
|
const binding = configuredD1Binding(root);
|
|
1057
1057
|
const context = resolveCloudflareD1Context(root, binding);
|
|
1058
1058
|
const database = `D1 database ${context.migrateToken} (${binding})`;
|
|
@@ -1126,7 +1126,7 @@ async function runStudio(root, dialect, remote) {
|
|
|
1126
1126
|
await runDrizzleKitWithDatabaseUrl(root, url, dialect, "studio");
|
|
1127
1127
|
return;
|
|
1128
1128
|
}
|
|
1129
|
-
const { writeDrizzleConfig } = await import("./config-
|
|
1129
|
+
const { writeDrizzleConfig } = await import("./config-BU6hMu1W.mjs");
|
|
1130
1130
|
const { databasePath: dbPath } = getLocalD1Target(root);
|
|
1131
1131
|
if (!existsSync(dbPath)) {
|
|
1132
1132
|
log.error("No local database found. Start the dev server first.");
|
|
@@ -1146,8 +1146,8 @@ async function runStudio(root, dialect, remote) {
|
|
|
1146
1146
|
}
|
|
1147
1147
|
/** A direct Cloudflare deploy records its D1 or Hyperdrive id in the checked-in Cloudflare config. */
|
|
1148
1148
|
async function hasDeployedCloudflareDatabase(root) {
|
|
1149
|
-
const { readRootWranglerConfig } = await import("./wrangler-
|
|
1150
|
-
const { isRealD1Id, isRealHyperdriveId } = await import("./provision-
|
|
1149
|
+
const { readRootWranglerConfig } = await import("./wrangler-BLb3_luP.mjs");
|
|
1150
|
+
const { isRealD1Id, isRealHyperdriveId } = await import("./provision-BFLCrnUp.mjs");
|
|
1151
1151
|
const config = readRootWranglerConfig(root)?.config;
|
|
1152
1152
|
const entries = (key) => {
|
|
1153
1153
|
const value = config?.[key];
|
|
@@ -1643,10 +1643,11 @@ function toSeedTarget(root, seedPath, displayPath) {
|
|
|
1643
1643
|
}
|
|
1644
1644
|
async function runSeedModule(root, seed, dialect) {
|
|
1645
1645
|
const schema = await loadSeedSchema(root);
|
|
1646
|
+
const casing = getDatabaseCasing(readConfig(root));
|
|
1646
1647
|
if (dialect === "postgresql") {
|
|
1647
1648
|
const { drizzle } = await import("drizzle-orm/node-postgres");
|
|
1648
1649
|
await withPgClient(root, async (client) => {
|
|
1649
|
-
const options = getDrizzleSchemaOptions(schema);
|
|
1650
|
+
const options = getDrizzleSchemaOptions(schema, casing);
|
|
1650
1651
|
const drizzleClient = client;
|
|
1651
1652
|
await seed({
|
|
1652
1653
|
dialect,
|
|
@@ -1661,7 +1662,7 @@ async function runSeedModule(root, seed, dialect) {
|
|
|
1661
1662
|
const { createConnection } = await import("mysql2/promise");
|
|
1662
1663
|
const connection = await createConnection(getLocalDatabaseUrl(root, "mysql"));
|
|
1663
1664
|
try {
|
|
1664
|
-
const options = getDrizzleSchemaOptions(schema);
|
|
1665
|
+
const options = getDrizzleSchemaOptions(schema, casing);
|
|
1665
1666
|
await seed({
|
|
1666
1667
|
dialect,
|
|
1667
1668
|
db: options ? drizzle(connection, {
|
|
@@ -1680,7 +1681,7 @@ async function runSeedModule(root, seed, dialect) {
|
|
|
1680
1681
|
const { databasePath: dbPath } = getLocalD1Target(root);
|
|
1681
1682
|
const sqlite = await openSqliteDatabase(dbPath);
|
|
1682
1683
|
try {
|
|
1683
|
-
const options = getDrizzleSchemaOptions(schema);
|
|
1684
|
+
const options = getDrizzleSchemaOptions(schema, casing);
|
|
1684
1685
|
await seed({
|
|
1685
1686
|
dialect,
|
|
1686
1687
|
db: options ? drizzle(sqlite, options) : drizzle(sqlite),
|
|
@@ -1727,8 +1728,13 @@ async function importLocalModule(modulePath) {
|
|
|
1727
1728
|
interopDefault: false
|
|
1728
1729
|
}).import(modulePath);
|
|
1729
1730
|
}
|
|
1730
|
-
|
|
1731
|
-
|
|
1731
|
+
/** The schema and casing that `void/db` gives drizzle, or undefined when neither is set. */
|
|
1732
|
+
function getDrizzleSchemaOptions(schema, casing) {
|
|
1733
|
+
const options = {
|
|
1734
|
+
...Object.keys(schema).length > 0 ? { schema } : {},
|
|
1735
|
+
...casing ? { casing } : {}
|
|
1736
|
+
};
|
|
1737
|
+
return Object.keys(options).length > 0 ? options : void 0;
|
|
1732
1738
|
}
|
|
1733
1739
|
//#endregion
|
|
1734
1740
|
export { runDbCommand };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { o as removeProjectConfig, r as readProjectConfig } from "./project-rqDnVsJN.mjs";
|
|
2
2
|
import { c as getToken } from "./auth-B6iOCjKI.mjs";
|
|
3
|
-
import { L as log, O as cancel, X as text, tt as isCancel } from "./dist-
|
|
4
|
-
import {
|
|
5
|
-
import { r as
|
|
6
|
-
import { a as resolveProjectBySlug } from "./resolve-project-
|
|
3
|
+
import { L as log, O as cancel, X as text, tt as isCancel } from "./dist-Cor9XGoz.mjs";
|
|
4
|
+
import { r as PlatformClient } from "./client-BEkdj1kx.mjs";
|
|
5
|
+
import { m as printSuccess, p as note, r as createSpinner } from "./output-BpgYODYx.mjs";
|
|
6
|
+
import { a as resolveProjectBySlug } from "./resolve-project-Xoi6eTWY.mjs";
|
|
7
7
|
//#region src/cli/delete.ts
|
|
8
8
|
async function runDeleteCommand(root, slug, options) {
|
|
9
9
|
console.log();
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
import { n as __toESM, t as __commonJSMin } from "./rolldown-runtime-
|
|
1
|
+
import { n as __toESM, t as __commonJSMin } from "./rolldown-runtime-3h0WiCiA.mjs";
|
|
2
2
|
import { a as join, c as resolve, n as dirname, o as normalize, r as extname, s as relative, t as basename } from "./dist-ipQi0Q8y.mjs";
|
|
3
|
-
import { t as require_picocolors } from "./picocolors-
|
|
4
|
-
import { r as detectFramework } from "./plugin-inference-
|
|
3
|
+
import { t as require_picocolors } from "./picocolors-BsDfhxIw.mjs";
|
|
4
|
+
import { r as detectFramework } from "./plugin-inference-DUjCd55H.mjs";
|
|
5
5
|
import { n as readProjectPaths, t as assertNoRootSourceConventionConflicts } from "./project-paths-DGu_QZ_Q.mjs";
|
|
6
|
-
import {
|
|
7
|
-
import { a as hasSandboxSqliteMigration, c as sandboxContainerConfig, i as assertSandboxNamespaceConfig, o as requiresSandboxPlatformImage, r as SANDBOX_MIGRATION_TAG, s as resolveSandboxConfig, t as analyzeApplicationSync } from "./application-analysis-
|
|
6
|
+
import { m as resolveBindingNames, p as readConfig, u as isNodeTarget } from "./config-DHgSEWT7.mjs";
|
|
7
|
+
import { a as hasSandboxSqliteMigration, c as sandboxContainerConfig, i as assertSandboxNamespaceConfig, o as requiresSandboxPlatformImage, r as SANDBOX_MIGRATION_TAG, s as resolveSandboxConfig, t as analyzeApplicationSync } from "./application-analysis-fEqoSeMp.mjs";
|
|
8
8
|
import { t as collectMigrations } from "./collect-Dew86qce.mjs";
|
|
9
|
-
import { o as validateSsrEntry } from "./entry-
|
|
10
|
-
import { r as hasEmailHandlers } from "./email-
|
|
11
|
-
import { i as voidWarn } from "./log-
|
|
9
|
+
import { o as validateSsrEntry } from "./entry-BEM8ZuGP.mjs";
|
|
10
|
+
import { r as hasEmailHandlers } from "./email-B9ayYQEG.mjs";
|
|
11
|
+
import { i as voidWarn } from "./log-BMwmN5Ae.mjs";
|
|
12
12
|
import { a as resolveDistDir, c as hasDocumentRoutes, l as resolveAssetConfig, n as collectRevalidate, o as resolveWorkerDirName, r as hasRevalidate, s as hasApiRoutes } from "./isr-config-fZaJJ8t7.mjs";
|
|
13
13
|
import { t as writeFileAtomic } from "./atomic-write-Dq6R0BPN.mjs";
|
|
14
14
|
import { s as listPlatformConnections } from "./platform-registry-B9mWX9LO.mjs";
|
|
15
15
|
import { c as writeDeploymentPlatform, n as readDeploymentPlatform, r as readProjectConfig } from "./project-rqDnVsJN.mjs";
|
|
16
16
|
import { n as readGeneratedWranglerConfigFile } from "./generated-wrangler-config-DeWj5F9Y.mjs";
|
|
17
|
-
import { i as persistCloudflareConfig, r as materializeCloudflareConfig, s as stashCloudflareDeployPointer } from "./cloudflare-config-
|
|
18
|
-
import { C as readWranglerManagedQueueCleanupCandidates, E as resolveLiveBindingConfig, M as
|
|
17
|
+
import { i as persistCloudflareConfig, r as materializeCloudflareConfig, s as stashCloudflareDeployPointer } from "./cloudflare-config-DchHxPTo.mjs";
|
|
18
|
+
import { A as syncWranglerWebSockets, C as readWranglerManagedQueueCleanupCandidates, D as sameMigrationsDir, E as resolveLiveBindingConfig, M as writeProvisionedWranglerConfig, N as writeWranglerPublishedTrafficSnapshot, a as LIVE_MIGRATION_TAG, c as bindingEntriesForField, h as nextDurableObjectMigrationTag, k as syncWranglerDurableObjects, m as hasDurableObjectSqliteMigration, o as acknowledgeWranglerManagedQueueRemovals, r as FRIENDLY_BINDING_NAMES, v as readExistingLiveBindingConfig, w as readWranglerPublishedTrafficSnapshot } from "./wrangler-F96NnLyb.mjs";
|
|
19
19
|
import { r as trustedCloudflareWorkerAccessHeaders, t as cfAccessHeaders } from "./cf-access-BM9G0lhO.mjs";
|
|
20
20
|
import { t as ensurePlatformAccessToken } from "./cf-access-CWP4avfP.mjs";
|
|
21
21
|
import { a as getApiUrl, c as getToken, l as getTokenSource } from "./auth-B6iOCjKI.mjs";
|
|
22
|
-
import { A as confirm, K as select, L as log, tt as isCancel } from "./dist-BVdsO7Py.mjs";
|
|
23
|
-
import { o as formatCount, p as note, r as createSpinner, u as getErrorMessage } from "./output-CKguMgr7.mjs";
|
|
24
22
|
import { c as resolveRemoteMode, t as CLOUDFLARE_DEPLOY_BUILD_ENV } from "./env-BJjULvL0.mjs";
|
|
25
|
-
import { a as buildEnv, n as readVersionMetadataBinding, r as selectNativeVersionMetadataBinding, t as CLOUDFLARE_PRESERVE_BINDINGS_BUILD_ENV } from "./version-metadata-
|
|
26
|
-
import { a as emailConfigInputs, c as renderAddressMap, d as collectPrerenderPathsNode, f as prerenderPages, i as createNodeEmailDns, l as renderEmailChecklist, n as SEND_EMAIL_BINDING, o as preflightEmail, p as prerenderPagesNode, r as applyEmailSetup, t as EMAIL_FROM_VAR, u as collectPrerenderPaths } from "./email-cloudflare-
|
|
27
|
-
import { n as completeApplicationAnalysis, t as analyzeApplication } from "./application-routing-
|
|
28
|
-
import { a as record, i as migrateBuiltWranglerConfig, n as prepareCfFrameworkBuildOutput, r as prepareCfStaticBuildOutput, t as prepareCfBuildOutput } from "./cf-build-output-
|
|
23
|
+
import { a as buildEnv, n as readVersionMetadataBinding, r as selectNativeVersionMetadataBinding, t as CLOUDFLARE_PRESERVE_BINDINGS_BUILD_ENV } from "./version-metadata-tS39iW09.mjs";
|
|
24
|
+
import { a as emailConfigInputs, c as renderAddressMap, d as collectPrerenderPathsNode, f as prerenderPages, i as createNodeEmailDns, l as renderEmailChecklist, n as SEND_EMAIL_BINDING, o as preflightEmail, p as prerenderPagesNode, r as applyEmailSetup, t as EMAIL_FROM_VAR, u as collectPrerenderPaths } from "./email-cloudflare-D03g2TkS.mjs";
|
|
25
|
+
import { n as completeApplicationAnalysis, t as analyzeApplication } from "./application-routing-DAhNP4u3.mjs";
|
|
26
|
+
import { a as record, i as migrateBuiltWranglerConfig, n as prepareCfFrameworkBuildOutput, r as prepareCfStaticBuildOutput, t as prepareCfBuildOutput } from "./cf-build-output-BhVxldCw.mjs";
|
|
29
27
|
import { i as validateMigrations, t as assertJournalCoherence } from "./validate-CnZPMq4q.mjs";
|
|
28
|
+
import { A as confirm, K as select, L as log, tt as isCancel } from "./dist-Cor9XGoz.mjs";
|
|
30
29
|
import { r as getPackageDir } from "./agents-CuNtT0D_.mjs";
|
|
31
|
-
import { a as isExpiredTokenError, r as PlatformClient } from "./client-
|
|
32
|
-
import {
|
|
33
|
-
import {
|
|
34
|
-
import {
|
|
35
|
-
import { a as
|
|
36
|
-
import {
|
|
37
|
-
import { a as
|
|
38
|
-
import { c as
|
|
39
|
-
import {
|
|
40
|
-
import { n as
|
|
30
|
+
import { a as isExpiredTokenError, r as PlatformClient } from "./client-BEkdj1kx.mjs";
|
|
31
|
+
import { o as formatCount, p as note, r as createSpinner, u as getErrorMessage } from "./output-BpgYODYx.mjs";
|
|
32
|
+
import { t as getRequestedProjectSlug } from "./resolve-project-Xoi6eTWY.mjs";
|
|
33
|
+
import { i as safePositional, r as readCfUploadOutput, t as CF_VERSION_SOURCE_MAX_OUTPUT_BYTES } from "./cf-command-values-ByHk0xg4.mjs";
|
|
34
|
+
import { a as FRAMEWORK_PRESETS, c as hasBackendFiles, i as isCleanCloudflareExit, l as resolveCloudflareOperationArgv, o as detectPreset, s as formatProjectCommand, t as createCloudflareProcessRunner, u as resolveProjectCommand } from "./cloudflare-process-8jEYIeim.mjs";
|
|
35
|
+
import { f as listSelfHostSecretNames, h as selfHostSchemaFailureMessage, i as SelfHostSecretListError, l as dischargeSelfHostEnvContext, n as SelfHostFirstDeployError, p as readEmittedWorkerVars, r as SelfHostSchemaError, s as deriveSelfHostEnvContextFromVars, t as SelfHostEnvValidationError } from "./env-validation-Dwq3PJzK.mjs";
|
|
36
|
+
import { a as needsWrapper, r as cleanupWrapper, t as bundleEntry } from "./wrapper-D3sZyh2C.mjs";
|
|
37
|
+
import { A as resolveDeployLiveBindingConfig, C as generateDeployWrapperIfNeeded, D as hasPrerenderSources, E as hasNonPageBackend, F as resolveStaticDeployPreset, I as toManifestSchedulesAndQueues, L as validateDeployMigrations, M as resolveDeployWranglerCompat, N as resolveFullDeployBuildCommand, O as log$1, P as resolveStaticBuildCommand, S as ensureManagedHyperdrive, T as getGitCommit, _ as hasDeploySchemaDrift, a as collectAndHashAssets, b as assertWorkerMainUploaded, c as formatDeploySummary, d as mergeAndLintRoutingRules, f as streamDirectR2Deploy, g as getDeploySchemaDriftMessage, h as assertDeploySchemaDriftFree, i as buildStaticManifest, j as resolveDeployWorkerMain, k as promptDeployProjectConfig, l as printDeployContext, m as warnUnpublishedRouting, n as runStaticDeploy, o as collectWorkerFiles, p as warnIgnoredNotFoundForFramework, r as buildFrameworkManifest, s as detectNonSpaFallbackWarning, t as assembleVoidManifest, u as printDeploySuccess, v as assertEnvSchemaValid, w as getExitCode, x as createProjectFromSlug, y as assertProjectDeployAccess } from "./deploy-managed-static-DlvcvnQT.mjs";
|
|
38
|
+
import { a as checkCloudflareProvisionDrift, d as isQueueConfirmedAbsent, f as isRealD1Id, g as provisionCloudflareResources, i as assertValidResourceName, m as isRealKvId, s as deleteEnvVarCaseAware } from "./provision-DtROpNNI.mjs";
|
|
39
|
+
import { c as scrubWranglerAuthCredentials, n as buildSchemaProbeEnv, o as resolveDeployTransport, r as deployChildEnv, s as scrubManagedDeployBuildMarkers, t as MANAGED_DEPLOY_BUILD_ENV } from "./deploy-transport-BzGEj0Ge.mjs";
|
|
40
|
+
import { n as getCfCliVersion, r as getVoidUserAgent, t as publishCloudflareObservability } from "./cf-worker-settings-BECvvTVd.mjs";
|
|
41
41
|
import { t as sanitizeTerminalLogText } from "./terminal-log-text-D9ACPOuG.mjs";
|
|
42
|
-
import { t as promptForLoginToken } from "./login-
|
|
43
|
-
import { a as parseCloudflareAuthSession, i as ensureCloudflareAuthentication, n as cloudflareCredentialOverrides, t as CloudflareAuthenticationError } from "./cloudflare-auth-
|
|
44
|
-
import { a as createCloudflareEmptyDomainPublisher, i as createCloudflareEmptyCronPublisher } from "./cloudflare-operations-
|
|
42
|
+
import { t as promptForLoginToken } from "./login-Cttnagmm.mjs";
|
|
43
|
+
import { a as parseCloudflareAuthSession, i as ensureCloudflareAuthentication, n as cloudflareCredentialOverrides, t as CloudflareAuthenticationError } from "./cloudflare-auth-Byo_0_N9.mjs";
|
|
44
|
+
import { a as createCloudflareEmptyDomainPublisher, i as createCloudflareEmptyCronPublisher } from "./cloudflare-operations-Dh9dEHJj.mjs";
|
|
45
45
|
import { n as openMigrationValidationDatabase, t as SqliteMigrationError } from "./sqlite-validation-BzKMWnO4.mjs";
|
|
46
|
-
import { a as discoverFrameworkWranglerFiles, i as writeVoidProjectConfig, t as migrateLegacyVoidConfig } from "./migrate-
|
|
46
|
+
import { a as discoverFrameworkWranglerFiles, i as writeVoidProjectConfig, t as migrateLegacyVoidConfig } from "./migrate-DyT2jJ8y.mjs";
|
|
47
47
|
import { a as runMySqlMigrations } from "./runner-mysql-BWmbk5IE.mjs";
|
|
48
48
|
import { i as runPgMigrations } from "./runner-pg-Cr3qrqi4.mjs";
|
|
49
49
|
import { t as collectGitDeployMetadata } from "./git-metadata-D-gurjzG.mjs";
|
|
@@ -57,6 +57,7 @@ import { isDeepStrictEqual } from "node:util";
|
|
|
57
57
|
import { applyEdits, modify, parse } from "jsonc-parser";
|
|
58
58
|
import { execFile, execSync, spawn } from "node:child_process";
|
|
59
59
|
import { getWorkerAssetsDir, getWorkerBundleDir, getWorkerConfigPath, readBuildOutput } from "@cloudflare/build-output-utils";
|
|
60
|
+
import { convertToWranglerConfig } from "@cloudflare/config";
|
|
60
61
|
import ignore from "ignore";
|
|
61
62
|
import { CloudflareWorkerInspectionError, activateCloudflareVersion, assertCloudflareBindingsPreserved, assertCloudflareDurableObjectLifecycleSupported, assertExistingCloudflareConfig, cloudflareCommandDiagnostic, encodeCloudflareVersionMessage, extractWorkersDevSubdomain, normalizeWorkersDevSubdomain, parseRootWranglerConfig, parseRootWranglerConfig as parseRootWranglerConfig$1, readBindingFieldPresence, readCloudflareTriggerConfig, readConfigEntryString, readExistingCloudflareWorker, readStoredResourceName, readWranglerTopLevelString, renderCloudflareStaticEntry, resolveD1MigrateTarget, stageCloudflareStaticAssets, writeCloudflareFrameworkDeployConfig, writeCloudflareStaticDeployConfig } from "@void/deploy-cloudflare";
|
|
62
63
|
import { setTimeout as setTimeout$1 } from "node:timers/promises";
|
|
@@ -1900,6 +1901,14 @@ function bindingsFromOutput(env, workerName, activeSecrets, explicitSecrets) {
|
|
|
1900
1901
|
...value.deliveryDelay === void 0 ? {} : { delivery_delay: value.deliveryDelay }
|
|
1901
1902
|
});
|
|
1902
1903
|
break;
|
|
1904
|
+
case "rate-limit":
|
|
1905
|
+
bindings.push({
|
|
1906
|
+
name,
|
|
1907
|
+
type: "ratelimit",
|
|
1908
|
+
namespace_id: requiredString(value.namespace, name),
|
|
1909
|
+
simple: value.simple
|
|
1910
|
+
});
|
|
1911
|
+
break;
|
|
1903
1912
|
case "ai":
|
|
1904
1913
|
case "browser":
|
|
1905
1914
|
case "images":
|
|
@@ -1985,11 +1994,25 @@ function bindingsFromOutput(env, workerName, activeSecrets, explicitSecrets) {
|
|
|
1985
1994
|
}
|
|
1986
1995
|
return bindings;
|
|
1987
1996
|
}
|
|
1997
|
+
const durableObjectStates = /* @__PURE__ */ new Set([
|
|
1998
|
+
"created",
|
|
1999
|
+
"deleted",
|
|
2000
|
+
"renamed",
|
|
2001
|
+
"transferred",
|
|
2002
|
+
"expecting-transfer"
|
|
2003
|
+
]);
|
|
2004
|
+
/**
|
|
2005
|
+
* The `exports` that cf uploads for the same Build Output. cf converts them with
|
|
2006
|
+
* `@cloudflare/config`'s `convertToWranglerConfig` (cf `build-*.mjs`), and its
|
|
2007
|
+
* `resolveExportsUploadPayload` (cf `containers-*.mjs`) sends Worker entrypoints,
|
|
2008
|
+
* then Durable Objects, then Workflows reduced to their identity. Cloudflare
|
|
2009
|
+
* stages a version at 0% only when its exports are identical to the live
|
|
2010
|
+
* version's, and that version may have been uploaded by cf.
|
|
2011
|
+
*/
|
|
1988
2012
|
function exportsFromOutput(exports, bindings) {
|
|
1989
2013
|
if (exports === void 0) return;
|
|
1990
2014
|
const entries = record(exports);
|
|
1991
2015
|
if (!entries) throw new Error("Cloudflare Durable Object exports were not readable.");
|
|
1992
|
-
const result = {};
|
|
1993
2016
|
const workflows = /* @__PURE__ */ new Map();
|
|
1994
2017
|
for (const [name, raw] of Object.entries(entries)) {
|
|
1995
2018
|
const value = record(raw);
|
|
@@ -1997,48 +2020,42 @@ function exportsFromOutput(exports, bindings) {
|
|
|
1997
2020
|
const workflowName = requiredString(value.name, `Workflow export ${name} name`);
|
|
1998
2021
|
if (workflows.has(workflowName)) throw new Error(`Cloudflare Workflow ${workflowName} has multiple local exports.`);
|
|
1999
2022
|
workflows.set(workflowName, name);
|
|
2000
|
-
result[name] = {
|
|
2001
|
-
type: "workflow",
|
|
2002
|
-
name: workflowName
|
|
2003
|
-
};
|
|
2004
|
-
continue;
|
|
2005
|
-
}
|
|
2006
|
-
if (value?.type === "worker") {
|
|
2007
|
-
result[name] = {
|
|
2008
|
-
type: "worker",
|
|
2009
|
-
...value.cache === void 0 ? {} : { cache: value.cache }
|
|
2010
|
-
};
|
|
2011
2023
|
continue;
|
|
2012
2024
|
}
|
|
2025
|
+
if (value?.type === "worker") continue;
|
|
2013
2026
|
if (!value || value.type !== "durable-object") throw new Error(`Cloudflare export ${name} cannot be uploaded with pinned secrets.`);
|
|
2014
|
-
|
|
2015
|
-
|
|
2016
|
-
|
|
2017
|
-
|
|
2018
|
-
|
|
2019
|
-
|
|
2020
|
-
|
|
2021
|
-
|
|
2022
|
-
state: value.state,
|
|
2023
|
-
[renamed ? "renamed_to" : "transferred_to"]: requiredString(value[renamed ? "renamedTo" : "transferredTo"], name)
|
|
2024
|
-
};
|
|
2025
|
-
} else if (value.storage === "sqlite" || value.storage === "legacy-kv") {
|
|
2026
|
-
if (value.state !== void 0 && !["created", "expecting-transfer"].includes(String(value.state))) throw new Error(`Cloudflare Durable Object export ${name} has an unsupported state.`);
|
|
2027
|
-
result[name] = {
|
|
2028
|
-
type: "durable-object",
|
|
2029
|
-
storage: value.storage,
|
|
2030
|
-
state: value.state ?? "created",
|
|
2031
|
-
...value.container === void 0 ? {} : { container: requiredString(value.container, name) },
|
|
2032
|
-
...value.state === "expecting-transfer" ? { transfer_from: requiredString(value.transferFrom, name) } : {}
|
|
2033
|
-
};
|
|
2034
|
-
} else throw new Error(`Cloudflare Durable Object export ${name} has no storage type.`);
|
|
2027
|
+
const state = value.state ?? "created";
|
|
2028
|
+
if (!durableObjectStates.has(String(state))) throw new Error(`Cloudflare Durable Object export ${name} has an unsupported state.`);
|
|
2029
|
+
if (state === "renamed" || state === "transferred") requiredString(value[state === "renamed" ? "renamedTo" : "transferredTo"], name);
|
|
2030
|
+
else if (state !== "deleted") {
|
|
2031
|
+
if (value.storage !== "sqlite" && value.storage !== "legacy-kv") throw new Error(`Cloudflare Durable Object export ${name} has no storage type.`);
|
|
2032
|
+
if (value.container !== void 0) requiredString(value.container, name);
|
|
2033
|
+
if (state === "expecting-transfer") requiredString(value.transferFrom, name);
|
|
2034
|
+
}
|
|
2035
2035
|
}
|
|
2036
2036
|
for (const binding of bindings) {
|
|
2037
2037
|
if (binding.type !== "workflow") continue;
|
|
2038
2038
|
const localExport = workflows.get(String(binding.workflow_name));
|
|
2039
2039
|
if (localExport !== void 0 && (binding.script_name !== void 0 || binding.class_name !== localExport)) throw new Error(`Cloudflare Workflow binding ${binding.name} conflicts with its local export.`);
|
|
2040
2040
|
}
|
|
2041
|
-
|
|
2041
|
+
const converted = record(convertToWranglerConfig({
|
|
2042
|
+
worker: { exports: entries },
|
|
2043
|
+
containers: []
|
|
2044
|
+
}).exports) ?? {};
|
|
2045
|
+
const result = {};
|
|
2046
|
+
for (const type of [
|
|
2047
|
+
"worker",
|
|
2048
|
+
"durable-object",
|
|
2049
|
+
"workflow"
|
|
2050
|
+
]) for (const [name, value] of Object.entries(converted)) {
|
|
2051
|
+
const entry = record(value);
|
|
2052
|
+
if (entry?.type !== type) continue;
|
|
2053
|
+
result[name] = type === "workflow" ? {
|
|
2054
|
+
type,
|
|
2055
|
+
name: entry.name
|
|
2056
|
+
} : entry;
|
|
2057
|
+
}
|
|
2058
|
+
return Object.keys(result).length > 0 ? result : void 0;
|
|
2042
2059
|
}
|
|
2043
2060
|
async function preflightWorkflowExports(options) {
|
|
2044
2061
|
for (const raw of Object.values(options.exports ?? {})) {
|
|
@@ -2906,7 +2923,7 @@ function createCfVersionRunner(options) {
|
|
|
2906
2923
|
cwd: output.directory,
|
|
2907
2924
|
capture: true,
|
|
2908
2925
|
timeoutMs: 3e4,
|
|
2909
|
-
maxOutputBytes:
|
|
2926
|
+
maxOutputBytes: CF_VERSION_SOURCE_MAX_OUTPUT_BYTES
|
|
2910
2927
|
}) : await run(args, true);
|
|
2911
2928
|
const result = {
|
|
2912
2929
|
...called,
|
|
@@ -3015,12 +3032,30 @@ function createCfVersionRunner(options) {
|
|
|
3015
3032
|
await readBuildOutput(directory);
|
|
3016
3033
|
const verified = await verifyResources(directory);
|
|
3017
3034
|
if (!isCleanCloudflareExit(verified)) return verified;
|
|
3018
|
-
|
|
3035
|
+
const deployed = await run([
|
|
3019
3036
|
"workers",
|
|
3020
3037
|
"triggers",
|
|
3021
3038
|
"deploy",
|
|
3022
3039
|
"--prebuilt"
|
|
3023
3040
|
], command.capture, directory);
|
|
3041
|
+
if (isCleanCloudflareExit(deployed) && raw.observability !== void 0) {
|
|
3042
|
+
const credentials = options.pinnedUpload;
|
|
3043
|
+
if (!credentials || !credentials.verifyUploader()) return failed("The Cloudflare settings publisher is unavailable.");
|
|
3044
|
+
try {
|
|
3045
|
+
const token = await credentials.getToken();
|
|
3046
|
+
if (!token || !credentials.verifyUploader()) return failed("Cloudflare session is unavailable for publishing Worker settings.");
|
|
3047
|
+
await publishCloudflareObservability({
|
|
3048
|
+
apiBaseUrl: credentials.apiBaseUrl,
|
|
3049
|
+
accountId: credentials.accountId,
|
|
3050
|
+
workerName,
|
|
3051
|
+
observability: raw.observability,
|
|
3052
|
+
headers: { Authorization: `Bearer ${token}` }
|
|
3053
|
+
});
|
|
3054
|
+
} catch (cause) {
|
|
3055
|
+
return failed(cause instanceof Error ? cause.message : "Cloudflare settings update failed.");
|
|
3056
|
+
}
|
|
3057
|
+
}
|
|
3058
|
+
return deployed;
|
|
3024
3059
|
} finally {
|
|
3025
3060
|
rmSync(directory, {
|
|
3026
3061
|
recursive: true,
|
|
@@ -3383,7 +3418,7 @@ function formatCloudflareActivationError(result) {
|
|
|
3383
3418
|
"Set CLOUDFLARE_WORKERS_SUBDOMAIN to your account subdomain (for example \"my-team\")",
|
|
3384
3419
|
"and retry. Void caches it after a successful workers.dev deployment; production traffic is unchanged."
|
|
3385
3420
|
].join("\n");
|
|
3386
|
-
case "readiness-staging-failed": return `deploy: Cloudflare could not stage the uploaded Worker Version at zero-percent traffic${status}; production traffic is unchanged.${cloudflareCode}${diagnostic}${result.cloudflareErrorCode === 10210 &&
|
|
3421
|
+
case "readiness-staging-failed": return `deploy: Cloudflare could not stage the uploaded Worker Version at zero-percent traffic${status}; production traffic is unchanged.${cloudflareCode}${diagnostic}${result.cloudflareErrorCode === 10210 && (result.diagnostic ?? "").toLowerCase().includes("durable object migration") ? "\n\nReview the Durable Object migration, then run `void deploy --platform cloudflare --atomic`. For future deploys, set deploy.cloudflare.mode to \"atomic\" in void.config.ts." : result.cloudflareErrorCode === 100405 ? "\n\nThe new version declares different exports from the live version (for example a Durable Object or Workflow class), so Cloudflare cannot split traffic between them. Run `void deploy --platform cloudflare --atomic` once to publish it at 100% directly; it receives traffic before readiness is checked." : ""}`;
|
|
3387
3422
|
case "atomic-failed": return `deploy: Cloudflare could not publish the Worker atomically${status}; inspect production status before retrying.${cloudflareCode}${diagnostic}`;
|
|
3388
3423
|
case "atomic-output-invalid": return "deploy: Cloudflare published atomically but did not report a version id or URL. Inspect `void project status` immediately.";
|
|
3389
3424
|
case "atomic-readiness-failed":
|
|
@@ -4645,8 +4680,16 @@ async function prepareCloudflareDeploySource(root, options, voidConfig) {
|
|
|
4645
4680
|
].join("\n"));
|
|
4646
4681
|
return null;
|
|
4647
4682
|
}
|
|
4683
|
+
const storedDir = desired.d1 && readStoredResourceName(parseRootWranglerConfig(configPath), "d1_databases", desired.d1.binding, "migrations_dir");
|
|
4684
|
+
if (!(options.reuseExistingWorker || readCloudflareLink(root)) && desired.d1?.migrationsDir !== void 0 && storedDir !== void 0 && !sameMigrationsDir(configPath, storedDir, desired.d1.migrationsDir)) {
|
|
4685
|
+
const expected = JSON.stringify(desired.d1.migrationsDir);
|
|
4686
|
+
let fix = `Set migrations_dir to ${expected} in d1_databases of ${basename(configPath)}, or remove it and Void will fill it in.`;
|
|
4687
|
+
if (basename(configPath) === ".void-wrangler.jsonc") fix = `Set migrations_dir to ${expected} in cloudflare.d1_databases of void.config.ts${readStoredResourceName(voidConfig.cloudflare ?? {}, "d1_databases", desired.d1.binding, "migrations_dir") === void 0 ? "." : ", or remove it and Void will fill it in."}`;
|
|
4688
|
+
log$1.error(`deploy: D1 binding ${JSON.stringify(desired.d1.binding)} sets migrations_dir ${JSON.stringify(storedDir)}, but Void generates and applies migrations from ${expected}. ${fix}`);
|
|
4689
|
+
return null;
|
|
4690
|
+
}
|
|
4648
4691
|
if (desired.d1) {
|
|
4649
|
-
const migrationsPattern = resolveWranglerMigrationPattern(parseRootWranglerConfig(configPath), desired.d1.binding, desired.d1.migrationsDir ?? relative(dirname(configPath), migrationsDir));
|
|
4692
|
+
const migrationsPattern = resolveWranglerMigrationPattern(parseRootWranglerConfig(configPath), desired.d1.binding, storedDir ?? desired.d1.migrationsDir ?? relative(dirname(configPath), migrationsDir));
|
|
4650
4693
|
if (!migrationsPattern.ok) {
|
|
4651
4694
|
log$1.error(migrationsPattern.reason);
|
|
4652
4695
|
return null;
|
|
@@ -4805,7 +4848,7 @@ async function preflightCloudflareWorker(input) {
|
|
|
4805
4848
|
}
|
|
4806
4849
|
cliLog.info("cloudflare_sandbox_available");
|
|
4807
4850
|
}
|
|
4808
|
-
const
|
|
4851
|
+
const d1MigrationsDirMissing = () => desired.d1?.migrationsDir !== void 0 && readStoredResourceName(parseRootWranglerConfig(configPath), "d1_databases", desired.d1.binding, "migrations_dir") === void 0;
|
|
4809
4852
|
const provisionAndVerify = async () => {
|
|
4810
4853
|
if (existingWorker) {
|
|
4811
4854
|
const { missing } = checkCloudflareProvisionDrift(configPath, desired);
|
|
@@ -4847,13 +4890,13 @@ async function preflightCloudflareWorker(input) {
|
|
|
4847
4890
|
log$1.error(formatCloudflareDriftMessage(missing, reasons, "deploy: provisioning did not satisfy every required resource:", "Retry `void deploy --platform cloudflare`, or provision the listed resources manually."));
|
|
4848
4891
|
return exit(1);
|
|
4849
4892
|
}
|
|
4850
|
-
if (desired.d1 &&
|
|
4893
|
+
if (desired.d1 && d1MigrationsDirMissing()) {
|
|
4851
4894
|
log$1.error(`deploy: provisioning did not set migrations_dir for D1 binding ${desired.d1.binding}. Retry \`void deploy --platform cloudflare\`.`);
|
|
4852
4895
|
return exit(1);
|
|
4853
4896
|
}
|
|
4854
4897
|
};
|
|
4855
4898
|
const { missing: initiallyMissing } = checkCloudflareProvisionDrift(configPath, desired);
|
|
4856
|
-
const d1NeedsConfigReconciliation = !existingWorker &&
|
|
4899
|
+
const d1NeedsConfigReconciliation = !existingWorker && d1MigrationsDirMissing();
|
|
4857
4900
|
if (options.provision || initiallyMissing.length > 0 || d1NeedsConfigReconciliation) await provisionAndVerify();
|
|
4858
4901
|
else {
|
|
4859
4902
|
const invalidQueues = desired.queues.filter((name) => {
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
import { a as join, c as resolve, n as dirname, r as extname, s as relative } from "./dist-ipQi0Q8y.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { m as needsApplicationDatabase } from "./plugin-inference-DUjCd55H.mjs";
|
|
3
3
|
import { n as readProjectPaths } from "./project-paths-DGu_QZ_Q.mjs";
|
|
4
|
-
import {
|
|
4
|
+
import { u as isNodeTarget } from "./config-DHgSEWT7.mjs";
|
|
5
5
|
import { t as collectMigrations } from "./collect-Dew86qce.mjs";
|
|
6
6
|
import { i as collectFiles, t as collectPages } from "./isr-config-fZaJJ8t7.mjs";
|
|
7
|
-
import { n as mergeRoutingRules, t as lintRoutingPhases } from "./headers-
|
|
7
|
+
import { n as mergeRoutingRules, t as lintRoutingPhases } from "./headers-D522zd0A.mjs";
|
|
8
8
|
import { s as shouldLinkDeployProject, t as attachSelectedPlatform, u as writeProjectConfig } from "./project-rqDnVsJN.mjs";
|
|
9
|
-
import {
|
|
9
|
+
import { E as resolveLiveBindingConfig, O as syncWranglerBindings, a as LIVE_MIGRATION_TAG, g as normalizeWranglerCompatibilityFlags, u as ensureWranglerCompat, v as readExistingLiveBindingConfig } from "./wrangler-F96NnLyb.mjs";
|
|
10
10
|
import { n as buildMigrationPlanBundle } from "./plan-BhLO2p4w.mjs";
|
|
11
11
|
import { l as getTokenSource } from "./auth-B6iOCjKI.mjs";
|
|
12
|
-
import { L as log$1, N as intro, X as text, tt as isCancel } from "./dist-BVdsO7Py.mjs";
|
|
13
|
-
import { f as import_picocolors, h as sanitizeTerminalText, m as printSuccess, o as formatCount, p as note, r as createSpinner, u as getErrorMessage } from "./output-CKguMgr7.mjs";
|
|
14
12
|
import { t as discoverSchema } from "./discover-LaV0tbIu.mjs";
|
|
15
|
-
import { t as findEnvFile } from "./env-types-
|
|
16
|
-
import { a as buildEnv } from "./version-metadata-
|
|
17
|
-
import { r as writeDrizzleConfig, t as PLACEHOLDER_DB_URL } from "./config-
|
|
13
|
+
import { t as findEnvFile } from "./env-types-BicfKBhV.mjs";
|
|
14
|
+
import { a as buildEnv } from "./version-metadata-tS39iW09.mjs";
|
|
15
|
+
import { r as writeDrizzleConfig, t as PLACEHOLDER_DB_URL } from "./config-BIaXIkkv.mjs";
|
|
18
16
|
import { i as validateMigrations, r as listDrizzleArtifacts, t as assertJournalCoherence } from "./validate-CnZPMq4q.mjs";
|
|
17
|
+
import { L as log$1, N as intro, X as text, tt as isCancel } from "./dist-Cor9XGoz.mjs";
|
|
19
18
|
import { t as formatCloudflareUserMessage } from "./cloudflare-user-output-Q-k0QoNQ.mjs";
|
|
20
|
-
import { c as platformErrorMessage, i as isCliOutdatedError, n as PlatformApiError, o as isHeadersTimeoutError, s as parsePlatformErrorBody } from "./client-
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
19
|
+
import { c as platformErrorMessage, i as isCliOutdatedError, n as PlatformApiError, o as isHeadersTimeoutError, s as parsePlatformErrorBody } from "./client-BEkdj1kx.mjs";
|
|
20
|
+
import { f as import_picocolors, h as sanitizeTerminalText, m as printSuccess, o as formatCount, p as note, r as createSpinner, u as getErrorMessage } from "./output-BpgYODYx.mjs";
|
|
21
|
+
import { a as promptProjectSelection, i as reportProjectCreationWarnings, o as promptProjectSetupAction, r as promptAndCreateProject } from "./create-project-DV71ol5d.mjs";
|
|
22
|
+
import { o as detectPreset, s as formatProjectCommand, u as resolveProjectCommand } from "./cloudflare-process-8jEYIeim.mjs";
|
|
23
|
+
import { d as formatEnvReport, g as validateProdEnv, u as fetchRemoteSecretNames } from "./env-validation-Dwq3PJzK.mjs";
|
|
24
|
+
import { a as needsWrapper, i as generateWrapper } from "./wrapper-D3sZyh2C.mjs";
|
|
25
25
|
import { n as drizzleKitBin } from "./yarn-pnp-DLbEFMT0.mjs";
|
|
26
|
-
import { t as MANAGED_DEPLOY_BUILD_ENV } from "./deploy-transport-
|
|
26
|
+
import { t as MANAGED_DEPLOY_BUILD_ENV } from "./deploy-transport-BzGEj0Ge.mjs";
|
|
27
27
|
import { cpSync, existsSync, mkdirSync, mkdtempSync, readFileSync, readdirSync, rmSync } from "node:fs";
|
|
28
28
|
import { createDeployArtifact, createDeployUploadPayload } from "@void/deploy-core";
|
|
29
29
|
import { createHash } from "node:crypto";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { a as join } from "./dist-ipQi0Q8y.mjs";
|
|
2
2
|
import { n as scanWranglerDotenvKeys } from "./dotenv-CNazY3-w.mjs";
|
|
3
3
|
import { t as CLOUDFLARE_DEPLOY_BUILD_ENV } from "./env-BJjULvL0.mjs";
|
|
4
|
-
import { i as WRANGLER_AUTH_CREDENTIAL_ENV_VARS, t as CLOUDFLARE_PRESERVE_BINDINGS_BUILD_ENV } from "./version-metadata-
|
|
5
|
-
import { _ as provisionEnv, r as assertNoTransportRedirectInProjectDotenv, s as deleteEnvVarCaseAware, v as resolvePinnedApiBaseUrl } from "./provision-
|
|
4
|
+
import { i as WRANGLER_AUTH_CREDENTIAL_ENV_VARS, t as CLOUDFLARE_PRESERVE_BINDINGS_BUILD_ENV } from "./version-metadata-tS39iW09.mjs";
|
|
5
|
+
import { _ as provisionEnv, r as assertNoTransportRedirectInProjectDotenv, s as deleteEnvVarCaseAware, v as resolvePinnedApiBaseUrl } from "./provision-DtROpNNI.mjs";
|
|
6
6
|
import { readWranglerTopLevelString } from "@void/deploy-cloudflare";
|
|
7
7
|
//#region src/cli/deploy-transport.ts
|
|
8
8
|
/**
|
package/dist/deploy.mjs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { a as join, c as resolve } from "./dist-ipQi0Q8y.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import { o as validateSsrEntry } from "./entry-
|
|
4
|
-
import { r as hasEmailHandlers } from "./email-
|
|
2
|
+
import { p as readConfig, u as isNodeTarget } from "./config-DHgSEWT7.mjs";
|
|
3
|
+
import { o as validateSsrEntry } from "./entry-BEM8ZuGP.mjs";
|
|
4
|
+
import { r as hasEmailHandlers } from "./email-B9ayYQEG.mjs";
|
|
5
5
|
import { a as resolveDistDir, c as hasDocumentRoutes, l as resolveAssetConfig, n as collectRevalidate, o as resolveWorkerDirName, s as hasApiRoutes } from "./isr-config-fZaJJ8t7.mjs";
|
|
6
|
-
import { t as analyzeApplication } from "./application-routing-
|
|
7
|
-
import { t as prepareCfBuildOutput$1 } from "./cf-build-output-
|
|
8
|
-
import { o as detectPreset } from "./cloudflare-process-
|
|
9
|
-
import { F as resolveStaticDeployPreset, I as toManifestSchedulesAndQueues, L as validateDeployMigrations, M as resolveDeployWranglerCompat, a as collectAndHashAssets, b as assertWorkerMainUploaded, d as mergeAndLintRoutingRules, h as assertDeploySchemaDriftFree, i as buildStaticManifest, j as resolveDeployWorkerMain, o as collectWorkerFiles, t as assembleVoidManifest } from "./deploy-managed-static-
|
|
6
|
+
import { t as analyzeApplication } from "./application-routing-DAhNP4u3.mjs";
|
|
7
|
+
import { t as prepareCfBuildOutput$1 } from "./cf-build-output-BhVxldCw.mjs";
|
|
8
|
+
import { o as detectPreset } from "./cloudflare-process-8jEYIeim.mjs";
|
|
9
|
+
import { F as resolveStaticDeployPreset, I as toManifestSchedulesAndQueues, L as validateDeployMigrations, M as resolveDeployWranglerCompat, a as collectAndHashAssets, b as assertWorkerMainUploaded, d as mergeAndLintRoutingRules, h as assertDeploySchemaDriftFree, i as buildStaticManifest, j as resolveDeployWorkerMain, o as collectWorkerFiles, t as assembleVoidManifest } from "./deploy-managed-static-DlvcvnQT.mjs";
|
|
10
10
|
import { existsSync } from "node:fs";
|
|
11
11
|
import { createDeployArtifact } from "@void/deploy-core";
|
|
12
12
|
//#region src/deploy.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as bytesToBase64, t as base64ToBytes } from "./base64-DVrOndmI.mjs";
|
|
2
|
-
import { a as newId, t as MAX_MESSAGE_BYTES } from "./mime-
|
|
2
|
+
import { a as newId, t as MAX_MESSAGE_BYTES } from "./mime-BAyHPskU.mjs";
|
|
3
3
|
//#region src/runtime/email/dev-inbox.ts
|
|
4
4
|
/**
|
|
5
5
|
* In-memory email capture for `void dev` and tests. The inbox buffer lives in
|