void 0.23.0 → 0.25.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/AGENTS_TEMPLATE.md +1 -1
- package/README.md +19 -106
- package/dist/{account-cmd-C84Ee8cO.mjs → account-cmd-DcR1ywt8.mjs} +5 -5
- package/dist/{auth-CSkdO2Bb.mjs → auth-7wuZ5ob8.mjs} +22 -49
- package/dist/auth-CdgZ9uag.mjs +2 -0
- package/dist/{auth-link-CioEg6uY.mjs → auth-link-Z6E5DYvM.mjs} +5 -6
- package/dist/{auth-router-BsR981d4.mjs → auth-router-BdM4avI8.mjs} +7 -7
- package/dist/{build-cmd-LzvNJORH.mjs → build-cmd-CEE7D-hM.mjs} +7 -8
- package/dist/{cache-C4MvnrMH.mjs → cache-TcZnBLtH.mjs} +6 -7
- package/dist/{cancel-deploy-abUxpP2n.mjs → cancel-deploy-CYoZmcmR.mjs} +4 -6
- package/dist/{cf-access-P0iZnu0q.mjs → cf-access-AHKBzmuu.mjs} +4 -48
- package/dist/{cf-access-DRsQRe6k.mjs → cf-access-TWNzXltp.mjs} +3 -11
- package/dist/cf-build-output-ChY6-XWP.mjs +2 -0
- package/dist/cli/cli.mjs +49 -46
- package/dist/cli/cloudflare-operation-process.mjs +16 -7
- package/dist/cli/env-schema-probe.mjs +3 -3
- package/dist/client-B4Me-9HE.mjs +2 -0
- package/dist/{client-RV8NVeB8.mjs → client-RsPo8wsP.mjs} +129 -33
- package/dist/{cloudflare-cmd-BcrVyTmJ.mjs → cloudflare-cmd-bhwCxAN6.mjs} +2 -2
- package/dist/{cloudflare-connect-B8uPZ4nx.mjs → cloudflare-connect-CuhRgk3k.mjs} +2 -2
- package/dist/{cloudflare-operations-AiWashgg.mjs → cloudflare-operations-BhbK6yTq.mjs} +1 -1
- package/dist/{cloudflare-operations-fxHb-byx.mjs → cloudflare-operations-CjaV4lZi.mjs} +2 -2
- package/dist/{connect-Bd4kJd9U.mjs → connect-DCvUmPXY.mjs} +13 -10
- package/dist/{create-project-Boczwj5r.mjs → create-project-C734I-Mu.mjs} +1 -1
- package/dist/{create-project-bMf6ffLZ.mjs → create-project-eAPgYq35.mjs} +13 -13
- package/dist/{db-8uG64XLl.mjs → db-C07GEdKF.mjs} +27 -30
- package/dist/{delete-NvbiyeJf.mjs → delete-pKMVsrpJ.mjs} +5 -6
- package/dist/deploy-BDu1vhSH.mjs +2 -0
- package/dist/{deploy-DzAIwqNU.mjs → deploy-DfsAe-T0.mjs} +9567 -9215
- package/dist/{dev-inbox-P0u4tM8Y.mjs → dev-inbox-D64ZKUod.mjs} +5 -6
- package/dist/{domain-y5Tvydvo.mjs → domain-D3uA9ize.mjs} +8 -8
- package/dist/{email-B3umsW75.mjs → email-z3o2cwjH.mjs} +8 -8
- package/dist/{env-BS6qYHDb.mjs → env-3Q8-_2IH.mjs} +7 -9
- package/dist/{env-types-C2_bIk_b.mjs → env-types-D5kds_OZ.mjs} +1 -1
- package/dist/{env-validation-DbTg7-ar.mjs → env-validation-cZBvGWaP.mjs} +1 -1
- package/dist/{env-validation-BPn7vk-V.mjs → env-validation-vBSQ8gw5.mjs} +3 -3
- package/dist/gen-ById9r2j.mjs +2 -0
- package/dist/{gen-B580--vC.mjs → gen-NjwoG9FK.mjs} +2 -4
- package/dist/{github-cmd-v45BdfKX.mjs → github-cmd-DquUq-b1.mjs} +15 -24
- package/dist/{headers-DWi2IXWx.mjs → headers-2rKda9Y6.mjs} +1 -1
- package/dist/help-DPGBwomV.mjs +2 -0
- package/dist/{help-daGKjXGk.mjs → help-DRZXC4fj.mjs} +8 -4
- package/dist/{inbound-aVHEUhKo.mjs → inbound-fRkqcXaC.mjs} +1 -1
- package/dist/index.d.mts +18 -14
- package/dist/index.mjs +2176 -2110
- package/dist/{info-B97bTX9N.mjs → info-BmA3_IFZ.mjs} +1 -3
- package/dist/{init-Bvy7zrBo.mjs → init-DT7yuuyl.mjs} +28 -27
- package/dist/{link-CDqqCjFl.mjs → link-CXOlqh2F.mjs} +6 -7
- package/dist/{list-CZj0dzKY.mjs → list-eEWVJEPn.mjs} +8 -9
- package/dist/{local-d1-2CMnpuW_.mjs → local-d1-Df4XpwhW.mjs} +1 -1
- package/dist/log-vqY3pqwI.mjs +29 -0
- package/dist/login-C98-sw79.mjs +2 -0
- package/dist/{login-UZKFM_u7.mjs → login-pWQHYVu2.mjs} +12 -10
- package/dist/{logs-CUZ6t9t3.mjs → logs-DnxVX7TR.mjs} +11 -13
- package/dist/migrate-CEu2X5DB.mjs +2 -0
- package/dist/{migrate-DHul7PRV.mjs → migrate-CV1on-yJ.mjs} +2 -4
- package/dist/{operator-args-CLgKGlwU.mjs → operator-args-CAVcmwUt.mjs} +12 -5
- package/dist/{operator-auth-8KnOVXVd.mjs → operator-auth-CkmTE3rt.mjs} +2 -2
- package/dist/{operator-client-DUwumHpQ.mjs → operator-client-LmwjxT6q.mjs} +3 -3
- package/dist/{operator-cmd-DBA6dl0m.mjs → operator-cmd-d-IEKgNk.mjs} +6 -6
- package/dist/{output-Dm_A4Tbv.mjs → output-BBsUwdyT.mjs} +22 -14
- package/dist/pages/client.d.mts +3 -0
- package/dist/pages/client.mjs +120 -29
- package/dist/pages/index.mjs +1 -1
- package/dist/{platform-args-BJdRtlLq.mjs → platform-args-Bzf8JPc2.mjs} +11 -3
- package/dist/platform-args-Cq6EjQro.mjs +2 -0
- package/dist/{platform-auth-config-B56E9YP1.mjs → platform-auth-config-0V0lA3pF.mjs} +7 -7
- package/dist/{platform-auth-protection-BDWO_aER.mjs → platform-auth-protection-DFeJ-JkK.mjs} +9 -9
- package/dist/{platform-auth-recovery-1gg4CSRe.mjs → platform-auth-recovery-ICy4muq6.mjs} +7 -7
- package/dist/{platform-cmd-Bt-1w6pY.mjs → platform-cmd-BPySFOew.mjs} +1 -1
- package/dist/{platform-cmd-DMcQStSc.mjs → platform-cmd-D7vSWMvV.mjs} +38 -28
- package/dist/platform-discovery-DDDUvnqp.mjs +27 -0
- package/dist/{platform-domain-BNkcz0OB.mjs → platform-domain-CUdY064e.mjs} +5 -5
- package/dist/{platform-lifecycle-BE6C_jxh.mjs → platform-lifecycle-BaUdTRPU.mjs} +1 -1
- package/dist/{platform-lifecycle-9OyBALhH.mjs → platform-lifecycle-Dm09JNkn.mjs} +4404 -3297
- package/dist/{platform-management-CjwLVQwN.mjs → platform-management-BSEc_ZeG.mjs} +48 -11
- package/dist/platform-management-Bp6aoH2C.mjs +2 -0
- package/dist/{platform-plans-config-BNGKGr4P.mjs → platform-plans-config-B0pOVQyW.mjs} +3 -3
- package/dist/{platform-recovery-D6KSpuFm.mjs → platform-recovery-WOZ95Uze.mjs} +4 -4
- package/dist/{platform-registry-QBa4DK32.mjs → platform-registry-KfNEF84O.mjs} +3 -3
- package/dist/{prepare-B5Mkic5u.mjs → prepare-39EvOhI6.mjs} +2 -4
- package/dist/prepare-CnjcTV2s.mjs +2 -0
- package/dist/{prepare-DOsL0CC9.mjs → prepare-DnaKBi--.mjs} +1 -1
- package/dist/{project-C0Fqu05O.mjs → project-BkbfDs0V.mjs} +15 -82
- package/dist/project-IOjBU8R6.mjs +2 -0
- package/dist/{project-cmd-CNzrqvBv.mjs → project-cmd-Bs5A392E.mjs} +21 -22
- package/dist/{project-team-DQOWPfQT.mjs → project-team-ohAWWaew.mjs} +8 -9
- package/dist/{project-token-CTDYU0Cc.mjs → project-token-CP01Jna6.mjs} +6 -9
- package/dist/{project-zero-trust-BNAkW-_0.mjs → project-zero-trust-BzkVgx35.mjs} +5 -6
- package/dist/prompts-6OSVA7DJ.mjs +2087 -0
- package/dist/prompts-ZAuJlyCj.mjs +2 -0
- package/dist/{provision-C4ORE7G7.mjs → provision-BEv0k-qz.mjs} +1 -1
- package/dist/{provision-CJFgTZY8.mjs → provision-Btj1jppf.mjs} +5 -7
- package/dist/{requests-MhxYnau8.mjs → requests-B3PBuGlX.mjs} +5 -6
- package/dist/{rollback-CJ6iSDoU.mjs → rollback-DDub9GsO.mjs} +9 -10
- package/dist/runtime/ai.mjs +3 -5
- package/dist/runtime/email/testing.mjs +2 -2
- package/dist/runtime/email.mjs +36 -18
- package/dist/runtime/remote/index.mjs +2 -2
- package/dist/runtime/routing.mjs +1 -1
- package/dist/{secret-Dli5fP0B.mjs → secret-3c72lY1U.mjs} +15 -16
- package/dist/{skills-D1II1Juz.mjs → skills-BPQUGClu.mjs} +1 -1
- package/dist/{subcommand-prompt-CY1C4fvl.mjs → subcommand-prompt-Dhom39bd.mjs} +40 -32
- package/dist/sveltekit.d.mts +1 -1
- package/dist/sveltekit.mjs +4 -9
- package/dist/{wrangler-7K-bW_DL.mjs → wrangler-DhUerFkW.mjs} +10 -15
- package/package.json +22 -23
- package/sandbox.Dockerfile +1 -1
- package/skills/void/SKILL.md +6 -1
- package/skills/void/docs/guide/ai.md +24 -86
- package/skills/void/docs/guide/auth.md +0 -2
- package/skills/void/docs/guide/database/d1.md +7 -7
- package/skills/void/docs/guide/deployment.md +58 -102
- package/skills/void/docs/guide/edge/headers.md +1 -1
- package/skills/void/docs/guide/email/domains.md +5 -1
- package/skills/void/docs/guide/email/sending.md +1 -1
- package/skills/void/docs/guide/env-vars.md +1 -5
- package/skills/void/docs/guide/index.md +19 -18
- package/skills/void/docs/guide/kv.md +0 -2
- package/skills/void/docs/guide/pages-routing/actions-and-forms.md +49 -47
- package/skills/void/docs/guide/pages-routing/overview.md +2 -2
- package/skills/void/docs/guide/platform/administration/email.md +0 -2
- package/skills/void/docs/guide/platform/administration/operations.md +11 -22
- package/skills/void/docs/guide/platform/administration/plans.md +1 -5
- package/skills/void/docs/guide/platform/administration/zero-trust.md +24 -9
- package/skills/void/docs/guide/platform/development/schema-ci.md +7 -1
- package/skills/void/docs/guide/platform/installation/ci.md +1 -1
- package/skills/void/docs/guide/platform/installation/credentials.md +10 -3
- package/skills/void/docs/guide/platform/installation/domains.md +8 -3
- package/skills/void/docs/guide/platform/installation/first-deployment.md +2 -2
- package/skills/void/docs/guide/platform/installation/maintenance.md +37 -5
- package/skills/void/docs/guide/platform/installation/prerequisites.md +87 -14
- package/skills/void/docs/guide/platform/installation/setup.md +80 -10
- package/skills/void/docs/guide/quickstart.md +37 -80
- package/skills/void/docs/guide/remote-dev.md +1 -1
- package/skills/void/docs/guide/sandboxes.md +36 -46
- package/skills/void/docs/guide/self-hosted-platform.md +20 -0
- package/skills/void/docs/guide/websockets.md +0 -2
- package/skills/void/docs/integrations/frameworks/overview.md +2 -2
- package/skills/void/docs/integrations/frameworks/sveltekit.md +40 -25
- package/skills/void/docs/integrations/nodejs-bun-deno.md +7 -2
- package/skills/void/docs/reference/api/resources.md +27 -0
- package/skills/void/docs/reference/api.md +1 -1
- package/skills/void/docs/reference/cli/auth.md +4 -3
- package/skills/void/docs/reference/cli/database.md +1 -1
- package/skills/void/docs/reference/cli/deploy.md +21 -1
- package/skills/void/docs/reference/cli/platform-installation.md +42 -27
- package/skills/void/docs/reference/cli/platform-operations.md +4 -8
- package/skills/void/docs/reference/cli/platform-zero-trust.md +14 -0
- package/skills/void/docs/reference/cli/platform.md +5 -0
- package/skills/void/docs/reference/config.md +1 -1
- package/skills/void/docs/reference/resource-inference.md +11 -8
- package/dist/auth-CCjt0hcq.mjs +0 -2
- package/dist/cf-build-output-_0HNWysu.mjs +0 -2
- package/dist/client-Cu7jWiF1.mjs +0 -2
- package/dist/deploy-bjXdFCtn.mjs +0 -2
- package/dist/dist-BuDuKZJv.mjs +0 -2
- package/dist/dist-CTBk70IR.mjs +0 -1310
- package/dist/gen-BVaUUumi.mjs +0 -2
- package/dist/help-DofyZuY7.mjs +0 -2
- package/dist/log-ChfPKsVd.mjs +0 -26
- package/dist/login-DYt_An22.mjs +0 -2
- package/dist/migrate-8_2u55MD.mjs +0 -2
- package/dist/platform-args-D3RXyR6h.mjs +0 -2
- package/dist/platform-management-CnyTdcWX.mjs +0 -2
- package/dist/prepare-cgvDMtSb.mjs +0 -2
- package/dist/project-BuUwfj6f.mjs +0 -2
- package/skills/void/docs/guide/env-migration.md +0 -109
- package/dist/{cf-build-output-BPqOT964.mjs → cf-build-output-U8o1Gl6X.mjs} +1 -1
package/dist/pages/client.mjs
CHANGED
|
@@ -60,6 +60,103 @@ async function createActionErrorFromResponse(response, url) {
|
|
|
60
60
|
});
|
|
61
61
|
}
|
|
62
62
|
//#endregion
|
|
63
|
+
//#region src/pages/scroll-restoration.ts
|
|
64
|
+
const STORAGE_PREFIX = "void:scroll:";
|
|
65
|
+
function readKey(state) {
|
|
66
|
+
return typeof state?.__voidScrollKey === "string" ? state.__voidScrollKey : null;
|
|
67
|
+
}
|
|
68
|
+
function readPosition(value) {
|
|
69
|
+
if (!value || typeof value !== "object") return null;
|
|
70
|
+
const { x, y } = value;
|
|
71
|
+
return typeof x === "number" && Number.isFinite(x) && typeof y === "number" && Number.isFinite(y) ? {
|
|
72
|
+
x,
|
|
73
|
+
y
|
|
74
|
+
} : null;
|
|
75
|
+
}
|
|
76
|
+
function newKey() {
|
|
77
|
+
return crypto.getRandomValues(/* @__PURE__ */ new Uint32Array(4)).join("-");
|
|
78
|
+
}
|
|
79
|
+
function currentUrl$1() {
|
|
80
|
+
return window.location.pathname + window.location.search + window.location.hash;
|
|
81
|
+
}
|
|
82
|
+
/** Positions belong to the rendered entry, even after the browser starts a traversal. */
|
|
83
|
+
function createScrollRestoration() {
|
|
84
|
+
const positions = /* @__PURE__ */ new Map();
|
|
85
|
+
let renderedKey = null;
|
|
86
|
+
let renderedUrl = currentUrl$1();
|
|
87
|
+
let ready = false;
|
|
88
|
+
function read(key) {
|
|
89
|
+
if (!key) return null;
|
|
90
|
+
const position = positions.get(key);
|
|
91
|
+
if (position) return position;
|
|
92
|
+
try {
|
|
93
|
+
const saved = readPosition(JSON.parse(sessionStorage.getItem(STORAGE_PREFIX + key) || "null"));
|
|
94
|
+
if (saved) return saved;
|
|
95
|
+
} catch {}
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
function save() {
|
|
99
|
+
if (!ready || !renderedKey) return;
|
|
100
|
+
const position = {
|
|
101
|
+
x: window.scrollX,
|
|
102
|
+
y: window.scrollY
|
|
103
|
+
};
|
|
104
|
+
positions.set(renderedKey, position);
|
|
105
|
+
try {
|
|
106
|
+
sessionStorage.setItem(STORAGE_PREFIX + renderedKey, JSON.stringify(position));
|
|
107
|
+
} catch {}
|
|
108
|
+
}
|
|
109
|
+
return {
|
|
110
|
+
get ready() {
|
|
111
|
+
return ready;
|
|
112
|
+
},
|
|
113
|
+
start() {
|
|
114
|
+
renderedKey = readKey(history.state);
|
|
115
|
+
if (!renderedKey) {
|
|
116
|
+
renderedKey = newKey();
|
|
117
|
+
history.replaceState({
|
|
118
|
+
...history.state,
|
|
119
|
+
__voidScrollKey: renderedKey
|
|
120
|
+
}, "");
|
|
121
|
+
}
|
|
122
|
+
history.scrollRestoration = "manual";
|
|
123
|
+
window.addEventListener("pagehide", save);
|
|
124
|
+
return read(renderedKey);
|
|
125
|
+
},
|
|
126
|
+
save,
|
|
127
|
+
writeHistory(url, replace) {
|
|
128
|
+
renderedKey = newKey();
|
|
129
|
+
const state = {
|
|
130
|
+
...replace ? history.state : {},
|
|
131
|
+
__voidScrollKey: renderedKey
|
|
132
|
+
};
|
|
133
|
+
if (replace) history.replaceState(state, "", url);
|
|
134
|
+
else history.pushState(state, "", url);
|
|
135
|
+
},
|
|
136
|
+
commit() {
|
|
137
|
+
renderedKey = readKey(history.state) ?? renderedKey;
|
|
138
|
+
renderedUrl = currentUrl$1();
|
|
139
|
+
ready = true;
|
|
140
|
+
},
|
|
141
|
+
pop(state) {
|
|
142
|
+
save();
|
|
143
|
+
let key = readKey(state);
|
|
144
|
+
const newFragment = key === renderedKey && currentUrl$1() !== renderedUrl;
|
|
145
|
+
if (!key || newFragment) {
|
|
146
|
+
key = newKey();
|
|
147
|
+
history.replaceState({
|
|
148
|
+
...state,
|
|
149
|
+
__voidScrollKey: key
|
|
150
|
+
}, "");
|
|
151
|
+
}
|
|
152
|
+
return newFragment ? null : read(key) ?? readPosition({
|
|
153
|
+
x: state?.scrollX,
|
|
154
|
+
y: state?.scrollY
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
//#endregion
|
|
63
160
|
//#region src/pages/navigation-engine.ts
|
|
64
161
|
const PAGE_DATA_SCRIPT_ID = "__VOID_PAGE_DATA__";
|
|
65
162
|
const STATIC_PAGE_DATA_PREFIX = "/_void/pages";
|
|
@@ -138,6 +235,9 @@ async function createPageNavigationEngine(config) {
|
|
|
138
235
|
let _htmlDeferredRegistry = null;
|
|
139
236
|
let _currentFetchUrl = window.location.pathname + window.location.search;
|
|
140
237
|
let popStateHandler = null;
|
|
238
|
+
let initialScrollPosition = null;
|
|
239
|
+
const initialUrl = window.location.pathname + window.location.search + window.location.hash;
|
|
240
|
+
const scrollRestoration = createScrollRestoration();
|
|
141
241
|
function getPageDataCacheKey(url, method = "GET") {
|
|
142
242
|
return `${method}:${url}`;
|
|
143
243
|
}
|
|
@@ -329,16 +429,8 @@ async function createPageNavigationEngine(config) {
|
|
|
329
429
|
deferredWindow.__rejectDeferred = (group, error) => _htmlDeferredRegistry?.resolve(group, void 0, error);
|
|
330
430
|
function commitHashNavigation(effectiveFetchUrl, hash, options, writeHistory) {
|
|
331
431
|
_currentFetchUrl = effectiveFetchUrl;
|
|
332
|
-
if (writeHistory)
|
|
333
|
-
|
|
334
|
-
else {
|
|
335
|
-
history.replaceState({
|
|
336
|
-
scrollX: window.scrollX,
|
|
337
|
-
scrollY: window.scrollY
|
|
338
|
-
}, "");
|
|
339
|
-
history.pushState({}, "", effectiveFetchUrl + hash);
|
|
340
|
-
}
|
|
341
|
-
}
|
|
432
|
+
if (writeHistory) scrollRestoration.writeHistory(effectiveFetchUrl + hash, !!options.replace);
|
|
433
|
+
scrollRestoration.commit();
|
|
342
434
|
if (options._scrollPosition) {
|
|
343
435
|
window.scrollTo(options._scrollPosition.x, options._scrollPosition.y);
|
|
344
436
|
return;
|
|
@@ -536,15 +628,9 @@ async function createPageNavigationEngine(config) {
|
|
|
536
628
|
_currentFetchUrl = commitTarget.fetchUrl;
|
|
537
629
|
if (!options.preserveState) {
|
|
538
630
|
const historyUrl = commitTarget.fetchUrl + commitTarget.hash;
|
|
539
|
-
|
|
540
|
-
else {
|
|
541
|
-
history.replaceState({
|
|
542
|
-
scrollX: window.scrollX,
|
|
543
|
-
scrollY: window.scrollY
|
|
544
|
-
}, "");
|
|
545
|
-
history.pushState({}, "", historyUrl);
|
|
546
|
-
}
|
|
631
|
+
scrollRestoration.writeHistory(historyUrl, !!options.replace);
|
|
547
632
|
}
|
|
633
|
+
scrollRestoration.commit();
|
|
548
634
|
const doScroll = () => {
|
|
549
635
|
if (options.preserveScroll) return;
|
|
550
636
|
if (options._scrollPosition) window.scrollTo(options._scrollPosition.x, options._scrollPosition.y);
|
|
@@ -570,6 +656,7 @@ async function createPageNavigationEngine(config) {
|
|
|
570
656
|
initialComponent,
|
|
571
657
|
initialLayouts,
|
|
572
658
|
prepareVisit(url, options = {}) {
|
|
659
|
+
if (!options._popstate) scrollRestoration.save();
|
|
573
660
|
const hashIndex = url.indexOf("#");
|
|
574
661
|
const hash = hashIndex !== -1 ? url.slice(hashIndex) : "";
|
|
575
662
|
const fetchUrl = hashIndex !== -1 ? url.slice(0, hashIndex) : url;
|
|
@@ -686,12 +773,14 @@ async function createPageNavigationEngine(config) {
|
|
|
686
773
|
setPopStateHandler(handler) {
|
|
687
774
|
popStateHandler = handler;
|
|
688
775
|
},
|
|
776
|
+
commitInitialRender() {
|
|
777
|
+
const saved = initialScrollPosition;
|
|
778
|
+
initialScrollPosition = null;
|
|
779
|
+
scrollRestoration.commit();
|
|
780
|
+
if (saved && _nextNavigationId === 0) window.scrollTo(saved.x, saved.y);
|
|
781
|
+
},
|
|
689
782
|
start() {
|
|
690
|
-
|
|
691
|
-
history.replaceState({
|
|
692
|
-
scrollX: window.scrollX,
|
|
693
|
-
scrollY: window.scrollY
|
|
694
|
-
}, "");
|
|
783
|
+
initialScrollPosition = scrollRestoration.start();
|
|
695
784
|
initClientHead(initialPageData.head);
|
|
696
785
|
if (deferredWindow.__deferredQueue) {
|
|
697
786
|
for (const entry of deferredWindow.__deferredQueue) if (entry.length === 3) _htmlDeferredRegistry?.resolve(entry[0], void 0, entry[2]);
|
|
@@ -699,14 +788,15 @@ async function createPageNavigationEngine(config) {
|
|
|
699
788
|
delete deferredWindow.__deferredQueue;
|
|
700
789
|
}
|
|
701
790
|
window.addEventListener("popstate", (e) => {
|
|
702
|
-
const saved = e.state;
|
|
703
791
|
const url = window.location.pathname + window.location.search + window.location.hash;
|
|
792
|
+
const saved = scrollRestoration.pop(e.state);
|
|
793
|
+
if (!scrollRestoration.ready && url === initialUrl) {
|
|
794
|
+
initialScrollPosition = saved;
|
|
795
|
+
return;
|
|
796
|
+
}
|
|
704
797
|
const options = {
|
|
705
798
|
preserveState: true,
|
|
706
|
-
_scrollPosition: saved
|
|
707
|
-
x: saved.scrollX ?? 0,
|
|
708
|
-
y: saved.scrollY ?? 0
|
|
709
|
-
} : null,
|
|
799
|
+
_scrollPosition: saved,
|
|
710
800
|
_popstate: true
|
|
711
801
|
};
|
|
712
802
|
if (popStateHandler) popStateHandler(url, options);
|
|
@@ -1020,7 +1110,8 @@ async function createVoidRouter(config) {
|
|
|
1020
1110
|
initialPageData: engine.initialPageData,
|
|
1021
1111
|
initialComponent: engine.initialComponent,
|
|
1022
1112
|
initialLayouts: engine.initialLayouts,
|
|
1023
|
-
start: engine.start
|
|
1113
|
+
start: engine.start,
|
|
1114
|
+
commitInitialRender: engine.commitInitialRender
|
|
1024
1115
|
};
|
|
1025
1116
|
}
|
|
1026
1117
|
}
|
package/dist/pages/index.mjs
CHANGED
|
@@ -2,7 +2,7 @@ import { a as join } from "../dist-BVqXeR_h.mjs";
|
|
|
2
2
|
import { r as resolvePagesDir } from "../project-paths-GgcMozYz.mjs";
|
|
3
3
|
import { m as readConfig } from "../config-Br_JZD6u.mjs";
|
|
4
4
|
import { a as resolveNamedLayout, i as resolveLayoutIds, n as resolveEffectiveLayoutChain, r as resolveLayoutChain, t as scanPages } from "../scan-C7okrLyM.mjs";
|
|
5
|
-
import { i as parseRedirectsFile } from "../headers-
|
|
5
|
+
import { i as parseRedirectsFile } from "../headers-2rKda9Y6.mjs";
|
|
6
6
|
import { i as resolveHead, n as renderHeadToString, r as renderHtmlAttrs, t as renderBodyAttrs } from "../head-D_QRR5Yd.mjs";
|
|
7
7
|
import { t as serializePageData } from "../serialize-BPvnNQuA.mjs";
|
|
8
8
|
//#region src/pages/manifest.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as operatorGroups, r as parseOperatorArgs } from "./operator-args-
|
|
1
|
+
import { n as operatorGroups, r as parseOperatorArgs } from "./operator-args-CAVcmwUt.mjs";
|
|
2
2
|
import { PLATFORM_LOGIN_KINDS, normalizePlatformDashboardUrl, parsePlatformLoginId } from "@void/platform";
|
|
3
3
|
import { parsePlatformPlanId } from "@void/platform/plans";
|
|
4
4
|
//#region src/cli/platform-config-args.ts
|
|
@@ -212,8 +212,8 @@ const platformSubcommands = [
|
|
|
212
212
|
},
|
|
213
213
|
{
|
|
214
214
|
name: "install",
|
|
215
|
-
hint: "Preview choices with --plan, then
|
|
216
|
-
description: "Install a Void platform
|
|
215
|
+
hint: "Preview and save choices with --plan, then select the saved plan to install",
|
|
216
|
+
description: "Install a Void platform and choose who can access its apps"
|
|
217
217
|
},
|
|
218
218
|
{
|
|
219
219
|
name: "upgrade",
|
|
@@ -442,6 +442,7 @@ function parsePlatformArgs(args) {
|
|
|
442
442
|
"--account",
|
|
443
443
|
"--auth-config",
|
|
444
444
|
"--login-methods",
|
|
445
|
+
"--app-access",
|
|
445
446
|
"--hyperdrive",
|
|
446
447
|
"--application-domain",
|
|
447
448
|
"--control-plane-domain",
|
|
@@ -474,6 +475,12 @@ function parsePlatformArgs(args) {
|
|
|
474
475
|
if (noControlPlaneDomain && values.has("--control-plane-domain")) throw new Error("platform: Choose either --control-plane-domain or --no-control-plane-domain.");
|
|
475
476
|
if (noDedicatedZone && dedicatedZone) throw new Error("platform: Choose either --dedicated-zone or --no-dedicated-zone.");
|
|
476
477
|
if (values.has("--auth-config") && (values.has("--login-methods") || accessProtection !== void 0)) throw new Error("platform: --auth-config cannot be combined with login or Access protection options.");
|
|
478
|
+
const appAccess = values.get("--app-access");
|
|
479
|
+
if (appAccess !== void 0 && ![
|
|
480
|
+
"public",
|
|
481
|
+
"platform",
|
|
482
|
+
"custom"
|
|
483
|
+
].includes(appAccess)) throw new Error("platform: --app-access accepts public, platform, or custom.");
|
|
477
484
|
const loginMethods = values.get("--login-methods")?.split(",");
|
|
478
485
|
if (loginMethods && loginMethods.some((method) => !PLATFORM_LOGIN_KINDS.includes(method))) throw new Error("platform: --login-methods accepts github, google, oidc, and cloudflare-access.");
|
|
479
486
|
if (workersDev && (values.has("--application-domain") || values.has("--zone") || dedicatedZone)) throw new Error("platform: --workers-dev cannot be combined with a domain, zone, or --dedicated-zone.");
|
|
@@ -484,6 +491,7 @@ function parsePlatformArgs(args) {
|
|
|
484
491
|
...values.has("--hyperdrive") ? { hyperdrive: values.get("--hyperdrive") } : {},
|
|
485
492
|
...loginMethods ? { loginMethods: [...new Set(loginMethods)] } : {},
|
|
486
493
|
...accessProtection !== void 0 ? { accessProtection } : {},
|
|
494
|
+
...appAccess !== void 0 ? { appAccess } : {},
|
|
487
495
|
...workersDev ? { workersDev: true } : {},
|
|
488
496
|
...values.has("--auth-config") ? { authConfig: values.get("--auth-config") } : {},
|
|
489
497
|
account: values.get("--account") ?? "",
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { n as OperatorClient } from "./operator-client-
|
|
4
|
-
import { a as resolveOperatorOrigin, r as readOperatorToken } from "./operator-auth-
|
|
5
|
-
import { execFile } from "node:child_process";
|
|
1
|
+
import { u as openBrowser } from "./auth-7wuZ5ob8.mjs";
|
|
2
|
+
import { A as confirm, K as select, U as password, X as text, tt as isCancel, z as multiselect } from "./prompts-6OSVA7DJ.mjs";
|
|
3
|
+
import { n as OperatorClient } from "./operator-client-LmwjxT6q.mjs";
|
|
4
|
+
import { a as resolveOperatorOrigin, r as readOperatorToken } from "./operator-auth-CkmTE3rt.mjs";
|
|
6
5
|
import { parsePlatformAdmissionPolicy, parsePlatformLoginConfiguration } from "@void/platform";
|
|
7
6
|
import { stripVTControlCharacters } from "node:util";
|
|
7
|
+
import { execFile } from "node:child_process";
|
|
8
8
|
import { setTimeout } from "node:timers/promises";
|
|
9
9
|
import { readFile } from "node:fs/promises";
|
|
10
10
|
//#region src/cli/platform-auth-config.ts
|
|
@@ -140,11 +140,11 @@ async function configurationInput(args, existing) {
|
|
|
140
140
|
}
|
|
141
141
|
async function runPlatformAuthConfig(args) {
|
|
142
142
|
if (args.action === "recover") {
|
|
143
|
-
const { runPlatformAuthRecovery } = await import("./platform-auth-recovery-
|
|
143
|
+
const { runPlatformAuthRecovery } = await import("./platform-auth-recovery-ICy4muq6.mjs");
|
|
144
144
|
return runPlatformAuthRecovery(args);
|
|
145
145
|
}
|
|
146
146
|
if (args.action === "protection") {
|
|
147
|
-
const { runPlatformProtectionConfig } = await import("./platform-auth-protection-
|
|
147
|
+
const { runPlatformProtectionConfig } = await import("./platform-auth-protection-DFeJ-JkK.mjs");
|
|
148
148
|
return runPlatformProtectionConfig(args);
|
|
149
149
|
}
|
|
150
150
|
const origin = resolveOperatorOrigin(args.connection);
|
package/dist/{platform-auth-protection-BDWO_aER.mjs → platform-auth-protection-DFeJ-JkK.mjs}
RENAMED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { t as
|
|
2
|
-
import {
|
|
3
|
-
import { n as ensurePlatformAccessToken } from "./cf-access-
|
|
4
|
-
import {
|
|
5
|
-
import { n as OperatorClient } from "./operator-client-
|
|
6
|
-
import { a as resolveOperatorOrigin, r as readOperatorToken } from "./operator-auth-
|
|
7
|
-
import { A as PlatformCloudflareClient, D as checkpointPlatformAccessResources, E as resolvePlatformCloudflareCredential, O as parsePlatformAccessSetupSpec, k as preparePlatformAccessSetup, n as resolvePlatformInstallDatabaseUrl,
|
|
8
|
-
import {
|
|
9
|
-
import { createHmac } from "node:crypto";
|
|
1
|
+
import { b as writePendingInstallationSecrets, d as promoteInstallationSecrets, f as readInstallationRecoverySecrets, g as resolveInstallationManifest, s as normalizePlatformApiUrl, t as acquirePlatformLifecycleLock, y as writeInstallationManifest } from "./platform-registry-KfNEF84O.mjs";
|
|
2
|
+
import { t as cfAccessHeaders } from "./cf-access-TWNzXltp.mjs";
|
|
3
|
+
import { n as ensurePlatformAccessToken } from "./cf-access-AHKBzmuu.mjs";
|
|
4
|
+
import { A as confirm, tt as isCancel } from "./prompts-6OSVA7DJ.mjs";
|
|
5
|
+
import { n as OperatorClient } from "./operator-client-LmwjxT6q.mjs";
|
|
6
|
+
import { a as resolveOperatorOrigin, r as readOperatorToken } from "./operator-auth-CkmTE3rt.mjs";
|
|
7
|
+
import { A as PlatformCloudflareClient, D as checkpointPlatformAccessResources, E as resolvePlatformCloudflareCredential, O as parsePlatformAccessSetupSpec, k as preparePlatformAccessSetup, n as resolvePlatformInstallDatabaseUrl, s as acquirePlatformDatabaseLifecycleLock } from "./platform-lifecycle-Dm09JNkn.mjs";
|
|
8
|
+
import { d as verifyPlatformInstallationOwnership, l as selectAuthoritativePlatformManifest } from "./platform-management-BSEc_ZeG.mjs";
|
|
10
9
|
import { parsePlatformAccessProtection, platformProtectionProofMessage } from "@void/platform";
|
|
10
|
+
import { createHmac } from "node:crypto";
|
|
11
11
|
import { readFile } from "node:fs/promises";
|
|
12
12
|
//#region src/cli/platform-auth-protection.ts
|
|
13
13
|
/** Read every externally routed control-plane Worker before changing its preview settings. */
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { a as resolveOperatorOrigin } from "./operator-auth-
|
|
5
|
-
import { A as PlatformCloudflareClient, E as resolvePlatformCloudflareCredential,
|
|
6
|
-
import {
|
|
1
|
+
import { f as readInstallationRecoverySecrets, g as resolveInstallationManifest, t as acquirePlatformLifecycleLock } from "./platform-registry-KfNEF84O.mjs";
|
|
2
|
+
import { u as openBrowser } from "./auth-7wuZ5ob8.mjs";
|
|
3
|
+
import { A as confirm, tt as isCancel } from "./prompts-6OSVA7DJ.mjs";
|
|
4
|
+
import { a as resolveOperatorOrigin } from "./operator-auth-CkmTE3rt.mjs";
|
|
5
|
+
import { A as PlatformCloudflareClient, E as resolvePlatformCloudflareCredential, c as acquirePlatformDatabaseLifecycleLockConnection, l as platformDatabaseClientUrl, n as resolvePlatformInstallDatabaseUrl } from "./platform-lifecycle-Dm09JNkn.mjs";
|
|
6
|
+
import { d as verifyPlatformInstallationOwnership, l as selectAuthoritativePlatformManifest } from "./platform-management-BSEc_ZeG.mjs";
|
|
7
|
+
import { parsePlatformAccessProtection, parsePlatformAdmissionPolicy, parsePlatformLoginConfiguration, platformAuthenticationRecoveryMessage, validatePlatformAdmissionPolicy } from "@void/platform";
|
|
7
8
|
import { createCipheriv, createDecipheriv, createHash, createHmac, hkdfSync, randomBytes, randomUUID } from "node:crypto";
|
|
8
9
|
import { execFile } from "node:child_process";
|
|
9
|
-
import { parsePlatformAccessProtection, parsePlatformAdmissionPolicy, parsePlatformLoginConfiguration, platformAuthenticationRecoveryMessage, validatePlatformAdmissionPolicy } from "@void/platform";
|
|
10
10
|
import { setTimeout } from "node:timers/promises";
|
|
11
11
|
import { readFile } from "node:fs/promises";
|
|
12
12
|
//#region src/cli/platform-auth-recovery-core.ts
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { r as runPlatformCommand, t as discoverPlatform } from "./platform-cmd-
|
|
1
|
+
import { r as runPlatformCommand, t as discoverPlatform } from "./platform-cmd-D7vSWMvV.mjs";
|
|
2
2
|
export { discoverPlatform, runPlatformCommand };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { i as isCloudflareAccessChallenge, n as ensurePlatformAccessToken, t as ensureCloudflaredToken } from "./cf-access-
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
1
|
+
import { _ as savePlatformConnection, a as listInstallationManifests, o as listPlatformConnections, r as getActivePlatformConnection, s as normalizePlatformApiUrl, v as selectPlatformConnection } from "./platform-registry-KfNEF84O.mjs";
|
|
2
|
+
import { t as cfAccessHeaders } from "./cf-access-TWNzXltp.mjs";
|
|
3
|
+
import { i as isCloudflareAccessChallenge, n as ensurePlatformAccessToken, t as ensureCloudflaredToken } from "./cf-access-AHKBzmuu.mjs";
|
|
4
|
+
import { K as select, L as log, X as text, tt as isCancel } from "./prompts-6OSVA7DJ.mjs";
|
|
5
|
+
import { t as readPlatformDiscoveryResponse } from "./platform-discovery-DDDUvnqp.mjs";
|
|
6
|
+
import { c as import_picocolors } from "./output-BBsUwdyT.mjs";
|
|
7
7
|
//#region src/cli/platform-cmd.ts
|
|
8
8
|
async function discoverPlatform(input, fetcher = fetch) {
|
|
9
9
|
const apiUrl = normalizePlatformApiUrl(input);
|
|
@@ -22,22 +22,7 @@ async function discoverPlatform(input, fetcher = fetch) {
|
|
|
22
22
|
ensurePlatformAccessToken(apiUrl, true);
|
|
23
23
|
response = await request();
|
|
24
24
|
}
|
|
25
|
-
|
|
26
|
-
let value;
|
|
27
|
-
try {
|
|
28
|
-
value = await response.json();
|
|
29
|
-
} catch {
|
|
30
|
-
throw new Error(`platform: ${apiUrl} returned invalid discovery metadata.`);
|
|
31
|
-
}
|
|
32
|
-
let discovery;
|
|
33
|
-
try {
|
|
34
|
-
discovery = parsePlatformDiscoveryDocument(value);
|
|
35
|
-
} catch (error) {
|
|
36
|
-
throw new Error(`platform: ${apiUrl} returned invalid discovery metadata: ${error instanceof Error ? error.message : String(error)}`);
|
|
37
|
-
}
|
|
38
|
-
const finalOrigin = normalizePlatformApiUrl(response.url ? new URL(response.url).origin : apiUrl);
|
|
39
|
-
if (discovery.apiUrl !== finalOrigin) throw new Error(`platform: Discovery origin mismatch. The response came from ${finalOrigin}, but identifies ${discovery.apiUrl}.`);
|
|
40
|
-
return discovery;
|
|
25
|
+
return readPlatformDiscoveryResponse(apiUrl, response);
|
|
41
26
|
}
|
|
42
27
|
async function promptPlatformUrl() {
|
|
43
28
|
if (!process.stdin.isTTY) throw new Error("platform: A platform URL is required in non-interactive mode.");
|
|
@@ -106,19 +91,19 @@ async function runPlatformCommand(_root, args) {
|
|
|
106
91
|
}]
|
|
107
92
|
});
|
|
108
93
|
if (isCancel(group)) return;
|
|
109
|
-
const { parsePlatformArgs } = await import("./platform-args-
|
|
94
|
+
const { parsePlatformArgs } = await import("./platform-args-Cq6EjQro.mjs");
|
|
110
95
|
return runPlatformCommand(_root, parsePlatformArgs(["config", group]));
|
|
111
96
|
}
|
|
112
|
-
const { runPlatformPlansConfig } = await import("./platform-plans-config-
|
|
97
|
+
const { runPlatformPlansConfig } = await import("./platform-plans-config-B0pOVQyW.mjs");
|
|
113
98
|
await runPlatformPlansConfig(args);
|
|
114
99
|
return;
|
|
115
100
|
}
|
|
116
|
-
const { runPlatformAuthConfig } = await import("./platform-auth-config-
|
|
101
|
+
const { runPlatformAuthConfig } = await import("./platform-auth-config-0V0lA3pF.mjs");
|
|
117
102
|
await runPlatformAuthConfig(args);
|
|
118
103
|
return;
|
|
119
104
|
}
|
|
120
105
|
if (args.subcommand === "operator") {
|
|
121
|
-
const { runOperatorCommand } = await import("./operator-cmd-
|
|
106
|
+
const { runOperatorCommand } = await import("./operator-cmd-d-IEKgNk.mjs");
|
|
122
107
|
await runOperatorCommand(args);
|
|
123
108
|
return;
|
|
124
109
|
}
|
|
@@ -138,7 +123,22 @@ async function runPlatformCommand(_root, args) {
|
|
|
138
123
|
return;
|
|
139
124
|
}
|
|
140
125
|
if (args.subcommand === "status") {
|
|
141
|
-
const
|
|
126
|
+
const local = args.selector ? listInstallationManifests().find((manifest) => manifest.id === args.selector && manifest.status !== "uninstalled") : void 0;
|
|
127
|
+
const connection = local ? null : await resolveConnection(args.selector);
|
|
128
|
+
const saved = local ?? (connection?.installationId ? listInstallationManifests().find((manifest) => manifest.id === connection.installationId) : void 0);
|
|
129
|
+
if (saved) showSavedInstallationStatus(saved);
|
|
130
|
+
const apiUrl = local?.endpoints.apiUrl ?? connection?.apiUrl;
|
|
131
|
+
if (!apiUrl) {
|
|
132
|
+
log.info("No verified API endpoint is saved yet. Live traffic availability is unknown.");
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
let discovery;
|
|
136
|
+
try {
|
|
137
|
+
discovery = await discoverPlatform(apiUrl);
|
|
138
|
+
} catch (error) {
|
|
139
|
+
if (saved) log.info("Live availability could not be confirmed. The saved checkpoint above may be out of date.");
|
|
140
|
+
throw error;
|
|
141
|
+
}
|
|
142
142
|
log.success(`${discovery.displayName} is reachable.`);
|
|
143
143
|
console.log(`API: ${discovery.apiUrl}`);
|
|
144
144
|
console.log(`Proxy: ${discovery.proxyUrl}`);
|
|
@@ -150,8 +150,18 @@ async function runPlatformCommand(_root, args) {
|
|
|
150
150
|
console.log(`Capabilities: ${Object.entries(discovery.capabilities).filter(([, enabled]) => enabled).map(([name]) => name).join(", ")}`);
|
|
151
151
|
return;
|
|
152
152
|
}
|
|
153
|
-
const { runPlatformLifecycleCommand } = await import("./platform-lifecycle-
|
|
153
|
+
const { runPlatformLifecycleCommand } = await import("./platform-lifecycle-BaUdTRPU.mjs");
|
|
154
154
|
await runPlatformLifecycleCommand(args);
|
|
155
155
|
}
|
|
156
|
+
function showSavedInstallationStatus(manifest) {
|
|
157
|
+
console.log(`Saved installation: ${manifest.id} (${manifest.status})`);
|
|
158
|
+
console.log(`Checkpoint: ${manifest.updatedAt}`);
|
|
159
|
+
if (manifest.operation) {
|
|
160
|
+
const operation = manifest.operation;
|
|
161
|
+
console.log(`Saved operation: ${operation.action} — ${operation.phase}`);
|
|
162
|
+
console.log(`Runtime: ${operation.fromVersion ?? "new installation"} → ${operation.toVersion}`);
|
|
163
|
+
}
|
|
164
|
+
if (manifest.endpoints.apiUrl) console.log(`Administrator status: ${manifest.endpoints.apiUrl}/admin/status`);
|
|
165
|
+
}
|
|
156
166
|
//#endregion
|
|
157
167
|
export { saveDiscoveredPlatform as i, promptPlatformUrl as n, runPlatformCommand as r, discoverPlatform as t };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { s as normalizePlatformApiUrl } from "./platform-registry-KfNEF84O.mjs";
|
|
2
|
+
import { parsePlatformDiscoveryDocument } from "@void/platform";
|
|
3
|
+
//#region src/cli/platform-discovery.ts
|
|
4
|
+
/** Validates a `GET /.well-known/void-platform` response from `apiUrl`. */
|
|
5
|
+
async function readPlatformDiscoveryResponse(apiUrl, response) {
|
|
6
|
+
if (!response.ok) {
|
|
7
|
+
await response.body?.cancel();
|
|
8
|
+
throw new Error(`platform: Discovery failed at ${apiUrl} (HTTP ${response.status}).`);
|
|
9
|
+
}
|
|
10
|
+
let value;
|
|
11
|
+
try {
|
|
12
|
+
value = await response.json();
|
|
13
|
+
} catch {
|
|
14
|
+
throw new Error(`platform: ${apiUrl} returned invalid discovery metadata.`);
|
|
15
|
+
}
|
|
16
|
+
let discovery;
|
|
17
|
+
try {
|
|
18
|
+
discovery = parsePlatformDiscoveryDocument(value);
|
|
19
|
+
} catch (error) {
|
|
20
|
+
throw new Error(`platform: ${apiUrl} returned invalid discovery metadata: ${error instanceof Error ? error.message : String(error)}`);
|
|
21
|
+
}
|
|
22
|
+
const finalOrigin = normalizePlatformApiUrl(response.url ? new URL(response.url).origin : apiUrl);
|
|
23
|
+
if (discovery.apiUrl !== finalOrigin) throw new Error(`platform: Discovery origin mismatch. The response came from ${finalOrigin}, but identifies ${discovery.apiUrl}.`);
|
|
24
|
+
return discovery;
|
|
25
|
+
}
|
|
26
|
+
//#endregion
|
|
27
|
+
export { readPlatformDiscoveryResponse as t };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { A as PlatformCloudflareClient, E as resolvePlatformCloudflareCredential, T as assertPlatformOperatorCredentialCanApplyPlan, _ as recordPlatformWorkerTraffic,
|
|
5
|
-
import {
|
|
1
|
+
import { _ as savePlatformConnection, f as readInstallationRecoverySecrets, t as acquirePlatformLifecycleLock, y as writeInstallationManifest } from "./platform-registry-KfNEF84O.mjs";
|
|
2
|
+
import { t as cfAccessHeaders } from "./cf-access-TWNzXltp.mjs";
|
|
3
|
+
import { A as confirm, B as note, L as log, X as text, tt as isCancel } from "./prompts-6OSVA7DJ.mjs";
|
|
4
|
+
import { A as PlatformCloudflareClient, E as resolvePlatformCloudflareCredential, T as assertPlatformOperatorCredentialCanApplyPlan, _ as recordPlatformWorkerTraffic, g as recordResource, n as resolvePlatformInstallDatabaseUrl, p as createPlatformHealthProbeToken, s as acquirePlatformDatabaseLifecycleLock, t as assertNoninteractivePlatformMutationAcknowledged, y as createPlatformInstallPlan } from "./platform-lifecycle-Dm09JNkn.mjs";
|
|
5
|
+
import { d as verifyPlatformInstallationOwnership, l as selectAuthoritativePlatformManifest, o as resolveInstalledPlatformManifest } from "./platform-management-BSEc_ZeG.mjs";
|
|
6
6
|
import { PLATFORM_HEALTH_HOSTNAME_LABEL, PLATFORM_REMOTE_INSTALLATION_MANIFEST_KEY, createApplicationRoutes, createPlatformDeploymentManifest, normalizeApplicationDomain } from "@void/platform";
|
|
7
7
|
//#region src/cli/platform-domain.ts
|
|
8
8
|
function platformDomainTarget(manifest, domain, zone, dedicatedZone) {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { r as runPlatformLifecycleCommand } from "./platform-lifecycle-
|
|
1
|
+
import { r as runPlatformLifecycleCommand } from "./platform-lifecycle-Dm09JNkn.mjs";
|
|
2
2
|
export { runPlatformLifecycleCommand };
|