void 0.21.8 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/dist/{account-cmd-CQ2wi4Th.mjs → account-cmd-CjyxcGkM.mjs} +4 -4
  2. package/dist/{auth-link-B_lceSHK.mjs → auth-link-BLO4ptzo.mjs} +4 -4
  3. package/dist/{auth-router-cZq0HuWe.mjs → auth-router-ZUg9MF_U.mjs} +5 -5
  4. package/dist/{build-cmd-Dpt0jd-x.mjs → build-cmd-BxR5FROK.mjs} +3 -3
  5. package/dist/{cache-7_UeZdTk.mjs → cache-D0sWhgKI.mjs} +3 -3
  6. package/dist/{cancel-deploy-D23R1RXT.mjs → cancel-deploy-D4NUqFbi.mjs} +3 -3
  7. package/dist/{cf-build-output-CGT03qCD.mjs → cf-build-output-BJ6yGEIS.mjs} +139 -62
  8. package/dist/cli/cf-compat.mjs +164 -42
  9. package/dist/cli/cli.mjs +73 -44
  10. package/dist/cli/env-schema-probe.d.mts +1 -1
  11. package/dist/{client-QTl6ko_D.mjs → client-BTZ3XkrB.mjs} +25 -0
  12. package/dist/client-Czz8o5jP.mjs +2 -0
  13. package/dist/{cloudflare-auth-C4_GPZr0.mjs → cloudflare-auth-DQkqoMYa.mjs} +1 -6
  14. package/dist/{cloudflare-cmd-bSmZ1d5L.mjs → cloudflare-cmd-BKlfGHAy.mjs} +6 -7
  15. package/dist/{cloudflare-connect-jAwacxxP.mjs → cloudflare-connect-Ctmrw579.mjs} +3 -3
  16. package/dist/{cloudflare-operations-sMZXpk_S.mjs → cloudflare-operations-B9tzgjmf.mjs} +10 -39
  17. package/dist/{cloudflare-operations-BipGMJ5O.mjs → cloudflare-operations-BT6OWFBk.mjs} +1 -1
  18. package/dist/{config-CafTW6Cz.mjs → config-Br_JZD6u.mjs} +2 -7
  19. package/dist/{config-s7Xj7tPb.mjs → config-CyQ-wVd7.mjs} +1 -1
  20. package/dist/{config-CF69HgXc.d.mts → config-VavjpDnp.d.mts} +1 -2
  21. package/dist/config-entry.d.mts +1 -1
  22. package/dist/{config-write-BSduPMY8.mjs → config-write-B1f88wJA.mjs} +1 -1
  23. package/dist/{connect-BY38i-9E.mjs → connect-Dg-WkW-C.mjs} +5 -5
  24. package/dist/{create-project-BniEV0OW.mjs → create-project-DdoqwFLF.mjs} +1 -1
  25. package/dist/{create-project-DBfFSZKY.mjs → create-project-l9J7pbtm.mjs} +8 -4
  26. package/dist/{db-BIo37Y7H.mjs → db-gp2sCXyN.mjs} +14 -14
  27. package/dist/{delete-D6dZ9B6B.mjs → delete-TTedbH6B.mjs} +3 -3
  28. package/dist/{deploy-BM_LoBXC.mjs → deploy-B19L2Bra.mjs} +1 -1
  29. package/dist/{deploy-C0JaQSWS.mjs → deploy-CH-o2CaZ.mjs} +47 -36
  30. package/dist/{dist-BR1quN_w.mjs → dist-AoCzRTJE.mjs} +226 -60
  31. package/dist/{dist-C5fND3R0.mjs → dist-BuDuKZJv.mjs} +1 -1
  32. package/dist/{dist-Dn6nn2IU.mjs → dist-CTBk70IR.mjs} +42 -42
  33. package/dist/{domain-Dmhvb2oU.mjs → domain-JRF59P_r.mjs} +4 -4
  34. package/dist/{email-dMnE_Lat.mjs → email-Bo6G9LOZ.mjs} +6 -6
  35. package/dist/{env-Csi-tMbT.mjs → env-BYOrWQnv.mjs} +4 -4
  36. package/dist/{env-public-D_6u46fX.d.mts → env-public-BxU_0yTL.d.mts} +2 -1
  37. package/dist/gen-CNJ62MM7.mjs +2 -0
  38. package/dist/{gen-Dz3X1Qab.mjs → gen-sCtlCOdA.mjs} +3 -3
  39. package/dist/{github-cmd-BED3_9JD.mjs → github-cmd-0-7PexDq.mjs} +5 -7
  40. package/dist/{handler-BXJTXd02.d.mts → handler-HEcZsaij.d.mts} +2 -1
  41. package/dist/{headers-BOg_velo.mjs → headers-DWi2IXWx.mjs} +1 -1
  42. package/dist/help-CmZzxUba.mjs +2 -0
  43. package/dist/{help-DC7gdz7L.mjs → help-GKtwl07I.mjs} +124 -4
  44. package/dist/index.d.mts +1 -1
  45. package/dist/index.mjs +53 -24
  46. package/dist/{init-CJSnEcuj.mjs → init-FZx3Elvz.mjs} +13 -13
  47. package/dist/{link-CsHOinF7.mjs → link-BrQfb_CU.mjs} +4 -4
  48. package/dist/{list-CDb-4bZ1.mjs → list-D44jmIAM.mjs} +4 -4
  49. package/dist/{live-CKiJilLr.d.mts → live-CKJlvlNp.d.mts} +1 -1
  50. package/dist/{local-d1-CC8sKFGu.mjs → local-d1-Bg9OzEEO.mjs} +1 -1
  51. package/dist/{login-DZldyb8c.mjs → login-CAsAsQ-_.mjs} +4 -4
  52. package/dist/login-CGcRKEoi.mjs +2 -0
  53. package/dist/{logs-BdfiOezj.mjs → logs-BjKvFnVM.mjs} +4 -4
  54. package/dist/{migrate-B8KuoYsO.mjs → migrate-BPITvDJN.mjs} +4 -4
  55. package/dist/migrate-CYfbKkXh.mjs +2 -0
  56. package/dist/{node-BM43oz4G.mjs → node-Dt7z256D.mjs} +1 -1
  57. package/dist/{operator-cmd-B9dbG3Od.mjs → operator-cmd-BK5CCiT9.mjs} +4 -4
  58. package/dist/output-Dm_A4Tbv.mjs +81 -0
  59. package/dist/pages/client.d.mts +1 -1
  60. package/dist/pages/index.d.mts +1 -1
  61. package/dist/pages/index.mjs +2 -2
  62. package/dist/pages/islands-plugin.d.mts +16 -6
  63. package/dist/pages/islands-plugin.mjs +1 -1
  64. package/dist/pages/protocol.d.mts +2 -2
  65. package/dist/{output-CCH48AMM.mjs → picocolors-BTps1_gs.mjs} +2 -76
  66. package/dist/{platform-auth-config-Bex45lQt.mjs → platform-auth-config-BlN8xTdD.mjs} +3 -3
  67. package/dist/{platform-auth-protection-Dma02l6-.mjs → platform-auth-protection-7d5aV2Jg.mjs} +3 -3
  68. package/dist/{platform-auth-recovery-COOhMCvx.mjs → platform-auth-recovery-Dxij8ZbR.mjs} +3 -3
  69. package/dist/{platform-cmd-BtxZrT6w.mjs → platform-cmd-B3hwKrFK.mjs} +5 -5
  70. package/dist/{platform-cmd-CjNB09OF.mjs → platform-cmd-E0FuL212.mjs} +1 -1
  71. package/dist/{platform-domain-DppaTARe.mjs → platform-domain-D6Xcy9ZX.mjs} +36 -9
  72. package/dist/{platform-lifecycle-CYll-oKE.mjs → platform-lifecycle-DMh_qrry.mjs} +1 -1
  73. package/dist/{platform-lifecycle-BpDlxT3t.mjs → platform-lifecycle-k0E0xoxx.mjs} +769 -59
  74. package/dist/{platform-management-BKYenDlE.mjs → platform-management-Brz_BDiT.mjs} +72 -10
  75. package/dist/{platform-management-BS5r6Ao8.mjs → platform-management-DOtss0BN.mjs} +1 -1
  76. package/dist/{platform-recovery-dJ5Me-I0.mjs → platform-recovery-BvtcXON5.mjs} +2 -2
  77. package/dist/prepare-Bm3iq-u4.mjs +2 -0
  78. package/dist/{prepare-DyZ-Yok5.mjs → prepare-C-6YZyyg.mjs} +3 -3
  79. package/dist/{prepare-C3kt3Rst.mjs → prepare-CRhJbVrG.mjs} +1 -1
  80. package/dist/{project-cmd-B44I8J_W.mjs → project-cmd-BZLCqOqw.mjs} +29 -15
  81. package/dist/{project-team-BkbYIsXN.mjs → project-team-BvgM0WoX.mjs} +3 -3
  82. package/dist/{project-token-C8xEEQnB.mjs → project-token-l5DqK6Az.mjs} +3 -3
  83. package/dist/project-zero-trust-v6Mvpp8y.mjs +63 -0
  84. package/dist/{protocol-ZH3jP4a7.d.mts → protocol-BBa6cstI.d.mts} +1 -1
  85. package/dist/{provision-BhreDAOS.mjs → provision-C4IGqkBf.mjs} +24 -19
  86. package/dist/{provision-DNtrtaVD.mjs → provision-Fr9pRqce.mjs} +1 -1
  87. package/dist/{requests-DFyhBMaf.mjs → requests-DN-BbNiM.mjs} +3 -3
  88. package/dist/{rollback-DHHxXZiS.mjs → rollback-D7rzSaZM.mjs} +4 -4
  89. package/dist/runtime/env-public.d.mts +1 -1
  90. package/dist/runtime/handler.d.mts +1 -1
  91. package/dist/runtime/live-client.d.mts +1 -1
  92. package/dist/runtime/live.d.mts +1 -1
  93. package/dist/runtime/sandbox-container.d.mts +3 -0
  94. package/dist/runtime/sandbox-container.mjs +2 -0
  95. package/dist/runtime/sandbox.d.mts +4 -32
  96. package/dist/runtime/sandbox.mjs +118 -72
  97. package/dist/runtime/validator.d.mts +1 -1
  98. package/dist/runtime/ws-server.d.mts +1 -1
  99. package/dist/runtime/ws.d.mts +1 -1
  100. package/dist/sandbox-container-4fdqLnyb.mjs +279 -0
  101. package/dist/sandbox-container-DdNEBfCc.d.mts +72 -0
  102. package/dist/sandbox-qpNBT8a3.d.mts +49 -0
  103. package/dist/{secret-DN9sSNiV.mjs → secret-BOtOl_cb.mjs} +4 -4
  104. package/dist/{skills-O6FUaizK.mjs → skills-D1II1Juz.mjs} +1 -1
  105. package/dist/{subcommand-prompt-BuGYkAkC.mjs → subcommand-prompt-CY1C4fvl.mjs} +2 -2
  106. package/dist/{wrangler-BymcxrRa.mjs → wrangler-DQF1vKyf.mjs} +37 -27
  107. package/dist/{ws-BwcqizuH.d.mts → ws-BoY7vQML.d.mts} +1 -1
  108. package/package.json +40 -32
  109. package/sandbox.Dockerfile +4 -0
  110. package/schema.json +10 -22
  111. package/skills/void/SKILL.md +2 -0
  112. package/skills/void/docs/guide/deployment.md +1 -1
  113. package/skills/void/docs/guide/edge/revalidation.md +1 -1
  114. package/skills/void/docs/guide/edge/static-assets.md +1 -0
  115. package/skills/void/docs/guide/platform/administration/zero-trust.md +318 -0
  116. package/skills/void/docs/guide/platform/development/local.md +2 -2
  117. package/skills/void/docs/guide/platform/installation/domains.md +1 -1
  118. package/skills/void/docs/guide/platform/installation/first-deployment.md +4 -0
  119. package/skills/void/docs/guide/platform/installation/prerequisites.md +1 -1
  120. package/skills/void/docs/guide/platform/installation/uninstall.md +17 -2
  121. package/skills/void/docs/guide/platform-administration.md +1 -0
  122. package/skills/void/docs/guide/sandboxes.md +70 -41
  123. package/skills/void/docs/integrations/cloudflare.md +1 -1
  124. package/skills/void/docs/reference/api.md +35 -35
  125. package/skills/void/docs/reference/cli.md +68 -6
  126. package/skills/void/docs/reference/config.md +16 -16
  127. package/dist/client-4cDVv7BO.mjs +0 -2
  128. package/dist/gen-Vnv2f65C.mjs +0 -2
  129. package/dist/help-DQMfeKMz.mjs +0 -2
  130. package/dist/login-t6rndSRW.mjs +0 -2
  131. package/dist/migrate-TsHGBnDA.mjs +0 -2
  132. package/dist/prepare-BZXkjdNe.mjs +0 -2
@@ -287,7 +287,7 @@ function wrapAnsi(string, columns, options) {
287
287
  return String(string).normalize().split(CRLF_OR_LF).map((line) => exec(line, columns, options)).join("\n");
288
288
  }
289
289
  //#endregion
290
- //#region ../../node_modules/.pnpm/@clack+core@1.5.0/node_modules/@clack/core/dist/index.mjs
290
+ //#region ../../node_modules/.pnpm/@clack+core@1.5.1/node_modules/@clack/core/dist/index.mjs
291
291
  var import_src = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
292
292
  const ESC = "\x1B";
293
293
  const CSI = `${ESC}[`;
@@ -794,7 +794,7 @@ var n = class extends y {
794
794
  }
795
795
  };
796
796
  //#endregion
797
- //#region ../../node_modules/.pnpm/@clack+prompts@1.8.0/node_modules/@clack/prompts/dist/index.mjs
797
+ //#region ../../node_modules/.pnpm/@clack+prompts@1.8.1/node_modules/@clack/prompts/dist/index.mjs
798
798
  function isUnicodeSupported() {
799
799
  if (process$1.platform !== "win32") return process$1.env.TERM !== "linux";
800
800
  return Boolean(process$1.env.CI) || Boolean(process$1.env.WT_SESSION) || Boolean(process$1.env.TERMINUS_SUBLIME) || process$1.env.ConEmuTask === "{cmd::Cmder}" || process$1.env.TERM_PROGRAM === "Terminus-Sublime" || process$1.env.TERM_PROGRAM === "vscode" || process$1.env.TERM === "xterm-256color" || process$1.env.TERM === "alacritty" || process$1.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
@@ -891,28 +891,28 @@ const limitOptions = ({ cursor: l, options: e, style: w, output: p = process.std
891
891
  for (const t of s) for (const n of t) x.push(n);
892
892
  return c && x.push(M), x;
893
893
  };
894
- const confirm = (i) => {
895
- const a = i.active ?? "Yes", s = i.inactive ?? "No";
894
+ const confirm = (e) => {
895
+ const a = e.active ?? "Yes", o = e.inactive ?? "No";
896
896
  return new r({
897
897
  active: a,
898
- inactive: s,
899
- signal: i.signal,
900
- input: i.input,
901
- output: i.output,
902
- initialValue: i.initialValue ?? true,
898
+ inactive: o,
899
+ signal: e.signal,
900
+ input: e.input,
901
+ output: e.output,
902
+ initialValue: e.initialValue ?? true,
903
903
  render() {
904
- const e = i.withGuide ?? settings.withGuide, u = `${symbol(this.state)} `, l = e ? `${styleText("gray", S_BAR)} ` : "", f = wrapTextWithPrefix(i.output, i.message, l, u), o = `${e ? `${styleText("gray", S_BAR)}
904
+ const i = e.withGuide ?? settings.withGuide, u = `${symbol(this.state)} `, l = i ? `${styleText("gray", S_BAR)} ` : "", f = wrapTextWithPrefix(e.output, e.message, l, u), s = `${i ? `${styleText("gray", S_BAR)}
905
905
  ` : ""}${f}
906
- `, c = this.value ? a : s;
906
+ `, c = this.value ? a : o;
907
907
  switch (this.state) {
908
- case "submit": return `${o}${e ? `${styleText("gray", S_BAR)} ` : ""}${styleText("dim", c)}`;
909
- case "cancel": return `${o}${e ? `${styleText("gray", S_BAR)} ` : ""}${styleText(["strikethrough", "dim"], c)}${e ? `
908
+ case "submit": return `${s}${i ? `${styleText("gray", S_BAR)} ` : ""}${styleText("dim", c)}`;
909
+ case "cancel": return `${s}${i ? `${styleText("gray", S_BAR)} ` : ""}${styleText(["strikethrough", "dim"], c)}${i ? `
910
910
  ${styleText("gray", S_BAR)}` : ""}`;
911
911
  default: {
912
- const r = e ? `${styleText("cyan", S_BAR)} ` : "", g = e ? styleText("cyan", S_BAR_END) : "";
913
- return `${o}${r}${this.value ? `${styleText("green", S_RADIO_ACTIVE)} ${a}` : `${styleText("dim", S_RADIO_INACTIVE)} ${styleText("dim", a)}`}${i.vertical ? e ? `
912
+ const r = i ? `${styleText("cyan", S_BAR)} ` : "", g = i ? styleText("cyan", S_BAR_END) : "";
913
+ return `${s}${r}${this.value ? `${styleText("green", S_RADIO_ACTIVE)} ${a}` : `${styleText("dim", S_RADIO_INACTIVE)} ${styleText("dim", a)}`}${e.vertical ? i ? `
914
914
  ${styleText("cyan", S_BAR)} ` : `
915
- ` : ` ${styleText("dim", "/")} `}${this.value ? `${styleText("dim", S_RADIO_INACTIVE)} ${styleText("dim", s)}` : `${styleText("green", S_RADIO_ACTIVE)} ${s}`}
915
+ ` : ` ${styleText("dim", "/")} `}${this.value ? `${styleText("dim", S_RADIO_INACTIVE)} ${styleText("dim", o)}` : `${styleText("green", S_RADIO_ACTIVE)} ${o}`}
916
916
  ${g}
917
917
  `;
918
918
  }
@@ -932,7 +932,7 @@ const multiselect = (i) => {
932
932
  const u = (t, a) => {
933
933
  const r = t.label ?? String(t.value);
934
934
  return a === "disabled" ? `${styleText("gray", S_CHECKBOX_INACTIVE)} ${m(r, (o) => styleText(["strikethrough", "gray"], o))}${t.hint ? ` ${styleText("dim", `(${t.hint ?? "disabled"})`)}` : ""}` : a === "active" ? `${styleText("cyan", S_CHECKBOX_ACTIVE)} ${r}${t.hint ? ` ${styleText("dim", `(${t.hint})`)}` : ""}` : a === "selected" ? `${styleText("green", S_CHECKBOX_SELECTED)} ${m(r, (o) => styleText("dim", o))}${t.hint ? ` ${styleText("dim", `(${t.hint})`)}` : ""}` : a === "cancelled" ? `${m(r, (o) => styleText(["strikethrough", "dim"], o))}` : a === "active-selected" ? `${styleText("green", S_CHECKBOX_SELECTED)} ${r}${t.hint ? ` ${styleText("dim", `(${t.hint})`)}` : ""}` : a === "submitted" ? `${m(r, (o) => styleText("dim", o))}` : `${styleText("dim", S_CHECKBOX_INACTIVE)} ${m(r, (o) => styleText("dim", o))}`;
935
- }, d = i.required ?? true, v = i.showInstructions ?? true;
935
+ }, d = i.required ?? true, x = i.showInstructions ?? true;
936
936
  return new a({
937
937
  options: i.options,
938
938
  signal: i.signal,
@@ -952,7 +952,7 @@ ${styleText("reset", styleText("dim", `Press ${styleText([
952
952
  render() {
953
953
  const t = i.withGuide ?? settings.withGuide, a = wrapTextWithPrefix(i.output, i.message, t ? `${symbolBar(this.state)} ` : "", `${symbol(this.state)} `), r = `${t ? `${styleText("gray", S_BAR)}
954
954
  ` : ""}${a}
955
- `, o = this.value ?? [], p = (n, l) => {
955
+ `, o = this.value ?? [], g = (n, l) => {
956
956
  if (n.disabled) return u(n, "disabled");
957
957
  const s = o.includes(n.value);
958
958
  return l && s ? u(n, "active-selected") : s ? u(n, "selected") : u(n, l ? "active" : "inactive");
@@ -970,7 +970,7 @@ ${styleText("gray", S_BAR)}` : ""}`;
970
970
  }
971
971
  case "error": {
972
972
  const n = t ? `${styleText("yellow", S_BAR)} ` : "", l = this.error.split(`
973
- `).map(($, C) => C === 0 ? `${t ? `${styleText("yellow", S_BAR_END)} ` : ""}${styleText("yellow", $)}` : ` ${$}`).join(`
973
+ `).map(($, v) => v === 0 ? `${t ? `${styleText("yellow", S_BAR_END)} ` : ""}${styleText("yellow", $)}` : ` ${$}`).join(`
974
974
  `), s = r.split(`
975
975
  `).length, h = l.split(`
976
976
  `).length + 1;
@@ -981,7 +981,7 @@ ${styleText("gray", S_BAR)}` : ""}`;
981
981
  maxItems: i.maxItems,
982
982
  columnPadding: n.length,
983
983
  rowPadding: s + h,
984
- style: p
984
+ style: g
985
985
  }).join(`
986
986
  ${n}`)}
987
987
  ${l}
@@ -989,7 +989,7 @@ ${l}
989
989
  }
990
990
  default: {
991
991
  const n = t ? `${styleText("cyan", S_BAR)} ` : "", l = r.split(`
992
- `).length, s = v ? formatInstructionFooter(MULTISELECT_INSTRUCTIONS, t) : t ? [styleText("cyan", S_BAR_END)] : [], h = s.join(`
992
+ `).length, s = x ? formatInstructionFooter(MULTISELECT_INSTRUCTIONS, t) : t ? [styleText("cyan", S_BAR_END)] : [], h = s.join(`
993
993
  `), $ = s.length + 1;
994
994
  return `${r}${n}${limitOptions({
995
995
  output: i.output,
@@ -998,7 +998,7 @@ ${l}
998
998
  maxItems: i.maxItems,
999
999
  columnPadding: n.length,
1000
1000
  rowPadding: l + $,
1001
- style: p
1001
+ style: g
1002
1002
  }).join(`
1003
1003
  ${n}`)}
1004
1004
  ${h}
@@ -1102,29 +1102,29 @@ ${h}
1102
1102
  ${styleText("gray", l$1 + S_BAR_H.repeat(t + 2) + S_CORNER_BOTTOM_RIGHT)}
1103
1103
  `);
1104
1104
  };
1105
- const password = (r) => new u$1({
1106
- validate: r.validate,
1107
- mask: r.mask ?? S_PASSWORD_MASK,
1108
- signal: r.signal,
1109
- input: r.input,
1110
- output: r.output,
1105
+ const password = (e) => new u$1({
1106
+ validate: e.validate,
1107
+ mask: e.mask ?? S_PASSWORD_MASK,
1108
+ signal: e.signal,
1109
+ input: e.input,
1110
+ output: e.output,
1111
1111
  render() {
1112
- const e = r.withGuide ?? settings.withGuide, o = `${e ? `${styleText("gray", S_BAR)}
1113
- ` : ""}${symbol(this.state)} ${r.message}
1114
- `, c = this.userInputWithCursor, i = this.masked;
1112
+ const r = e.withGuide ?? settings.withGuide, o = `${r ? `${styleText("gray", S_BAR)}
1113
+ ` : ""}${symbol(this.state)} ${e.message}
1114
+ `, m = this.userInputWithCursor, i = this.masked;
1115
1115
  switch (this.state) {
1116
1116
  case "error": {
1117
- const s = e ? `${styleText("yellow", S_BAR)} ` : "", n = e ? `${styleText("yellow", S_BAR_END)} ` : "", l = i ?? "";
1118
- return r.clearOnError && this.clear(), `${o.trim()}
1119
- ${s}${l}
1117
+ const s = r ? `${styleText("yellow", S_BAR)} ` : "", n = r ? `${styleText("yellow", S_BAR_END)} ` : "", d = i ?? "";
1118
+ return e.clearOnError && this.clear(), `${o.trim()}
1119
+ ${s}${d}
1120
1120
  ${n}${styleText("yellow", this.error)}
1121
1121
  `;
1122
1122
  }
1123
- case "submit": return `${o}${e ? `${styleText("gray", S_BAR)} ` : ""}${i ? styleText("dim", i) : ""}`;
1124
- case "cancel": return `${o}${e ? `${styleText("gray", S_BAR)} ` : ""}${i ? styleText(["strikethrough", "dim"], i) : ""}${i && e ? `
1123
+ case "submit": return `${o}${r ? `${styleText("gray", S_BAR)} ` : ""}${i ? styleText("dim", i) : ""}`;
1124
+ case "cancel": return `${o}${r ? `${styleText("gray", S_BAR)} ` : ""}${i ? styleText(["strikethrough", "dim"], i) : ""}${i && r ? `
1125
1125
  ${styleText("gray", S_BAR)}` : ""}`;
1126
- default: return `${o}${e ? `${styleText("cyan", S_BAR)} ` : ""}${c}
1127
- ${e ? styleText("cyan", S_BAR_END) : ""}
1126
+ default: return `${o}${r ? `${styleText("cyan", S_BAR)} ` : ""}${m}
1127
+ ${r ? styleText("cyan", S_BAR_END) : ""}
1128
1128
  `;
1129
1129
  }
1130
1130
  }
@@ -1245,19 +1245,19 @@ ${styleText("gray", S_BAR)}` : ""}`;
1245
1245
  }
1246
1246
  default: {
1247
1247
  const r = n ? `${styleText("cyan", S_BAR)} ` : "", a = u.split(`
1248
- `).length, p = d ? formatInstructionFooter(SELECT_INSTRUCTIONS, n) : n ? [styleText("cyan", S_BAR_END)] : [], b = p.join(`
1249
- `), f = p.length + 1;
1248
+ `).length, p = d ? formatInstructionFooter(SELECT_INSTRUCTIONS, n) : n ? [styleText("cyan", S_BAR_END)] : [], f = p.join(`
1249
+ `), b = p.length + 1;
1250
1250
  return `${u}${r}${limitOptions({
1251
1251
  output: t.output,
1252
1252
  cursor: this.cursor,
1253
1253
  options: this.options,
1254
1254
  maxItems: t.maxItems,
1255
1255
  columnPadding: r.length,
1256
- rowPadding: a + f,
1256
+ rowPadding: a + b,
1257
1257
  style: (g, x) => o(g, g.disabled ? "disabled" : x ? "active" : "inactive")
1258
1258
  }).join(`
1259
1259
  ${r}`)}
1260
- ${b}
1260
+ ${f}
1261
1261
  `;
1262
1262
  }
1263
1263
  }
@@ -1,8 +1,8 @@
1
- import { c as import_picocolors } from "./output-CCH48AMM.mjs";
2
1
  import { c as getToken } from "./auth-DLNN0D3Z.mjs";
3
2
  import { i as readDeploymentPlatform, o as readProjectConfig } from "./project-C0Fqu05O.mjs";
4
- import { N as note, j as log } from "./dist-Dn6nn2IU.mjs";
5
- import { n as PlatformClient } from "./client-QTl6ko_D.mjs";
3
+ import { N as note, j as log } from "./dist-CTBk70IR.mjs";
4
+ import { n as PlatformClient } from "./client-BTZ3XkrB.mjs";
5
+ import { c as import_picocolors } from "./output-Dm_A4Tbv.mjs";
6
6
  //#region src/cli/domain.ts
7
7
  async function runDomainCommand(root, args) {
8
8
  const platform = readDeploymentPlatform(root);
@@ -40,7 +40,7 @@ async function runDomainCommand(root, args) {
40
40
  }
41
41
  async function runCloudflareDomainCommand(root, args) {
42
42
  if (args.projectSlug) throw new Error("domain: --project selects a Void platform project and is not used for direct Cloudflare apps.");
43
- const { changeCloudflareDomain, listCloudflareDomains } = await import("./cloudflare-operations-BipGMJ5O.mjs");
43
+ const { changeCloudflareDomain, listCloudflareDomains } = await import("./cloudflare-operations-BT6OWFBk.mjs");
44
44
  if (args.subcommand === "add") {
45
45
  const result = await changeCloudflareDomain(root, args.hostname, "add");
46
46
  log.success(result.modified ? `Domain ${args.hostname} added and activated on Cloudflare.` : `Domain ${args.hostname} is already configured.`);
@@ -1,14 +1,14 @@
1
1
  import { a as join } from "./dist-BVqXeR_h.mjs";
2
- import { c as import_picocolors, i as createSpinner } from "./output-CCH48AMM.mjs";
3
- import { L as resolveDeployTransport, O as isWranglerNonInteractiveOrCI, X as runWranglerAuthToken, _ as deriveWorkerName, _t as findEmailConfigConflicts, bt as renderEmailChecklist, gt as createNodeEmailDns, h as createDeployWranglerRunner, ht as applyEmailSetup, k as loadProvisionModule, v as discoverRootWranglerConfig, vt as preflightEmail, yt as renderAddressMap } from "./deploy-C0JaQSWS.mjs";
2
+ import { L as resolveDeployTransport, O as isWranglerNonInteractiveOrCI, X as runWranglerAuthToken, _ as deriveWorkerName, _t as findEmailConfigConflicts, bt as renderEmailChecklist, gt as createNodeEmailDns, h as createDeployWranglerRunner, ht as applyEmailSetup, k as loadProvisionModule, v as discoverRootWranglerConfig, vt as preflightEmail, yt as renderAddressMap } from "./deploy-CH-o2CaZ.mjs";
4
3
  import { n as readProjectPaths } from "./project-paths-GgcMozYz.mjs";
5
4
  import { c as getToken, d as openBrowser } from "./auth-DLNN0D3Z.mjs";
6
5
  import { o as readProjectConfig } from "./project-C0Fqu05O.mjs";
7
- import { m as readConfig } from "./config-CafTW6Cz.mjs";
8
- import { k as writeProvisionedWranglerConfig } from "./wrangler-BymcxrRa.mjs";
9
- import { E as confirm, F as password, N as note, W as isCancel, j as log } from "./dist-Dn6nn2IU.mjs";
6
+ import { m as readConfig } from "./config-Br_JZD6u.mjs";
7
+ import { k as writeProvisionedWranglerConfig } from "./wrangler-DQF1vKyf.mjs";
8
+ import { E as confirm, F as password, N as note, W as isCancel, j as log } from "./dist-CTBk70IR.mjs";
10
9
  import { a as scanEmailHandlersSync } from "./email--tEtMoj_.mjs";
11
- import { n as PlatformClient, t as PlatformApiError } from "./client-QTl6ko_D.mjs";
10
+ import { n as PlatformClient, t as PlatformApiError } from "./client-BTZ3XkrB.mjs";
11
+ import { c as import_picocolors, i as createSpinner } from "./output-Dm_A4Tbv.mjs";
12
12
  import { existsSync, mkdtempSync, rmSync, writeFileSync } from "node:fs";
13
13
  import { tmpdir } from "node:os";
14
14
  import { execSync } from "node:child_process";
@@ -1,11 +1,11 @@
1
1
  import { a as join } from "./dist-BVqXeR_h.mjs";
2
- import { r as cliTitle } from "./output-CCH48AMM.mjs";
3
2
  import { c as getToken } from "./auth-DLNN0D3Z.mjs";
4
3
  import { i as readDeploymentPlatform, o as readProjectConfig } from "./project-C0Fqu05O.mjs";
5
4
  import { r as generateEnvTypes, t as findEnvFile } from "./env-types-C2_bIk_b.mjs";
6
5
  import { d as formatEnvReport, g as validateProdEnv, u as fetchRemoteSecretNames } from "./env-validation-BB4GkLxn.mjs";
7
- import { N as note, O as intro, P as outro, j as log } from "./dist-Dn6nn2IU.mjs";
8
- import { n as PlatformClient } from "./client-QTl6ko_D.mjs";
6
+ import { N as note, O as intro, P as outro, j as log } from "./dist-CTBk70IR.mjs";
7
+ import { n as PlatformClient } from "./client-BTZ3XkrB.mjs";
8
+ import { r as cliTitle } from "./output-Dm_A4Tbv.mjs";
9
9
  import { mkdirSync, writeFileSync } from "node:fs";
10
10
  //#region src/cli/env.ts
11
11
  async function runEnvCommand(root, args) {
@@ -26,7 +26,7 @@ async function runCheck(root, useRemoteSecrets) {
26
26
  const platform = readDeploymentPlatform(root);
27
27
  if (platform === "none") throw new Error("env: Deployment is disabled. Run `void init` to choose a platform.");
28
28
  if (platform === "cloudflare") {
29
- const { listCloudflareSecrets, resolveCloudflareOperationContext } = await import("./cloudflare-operations-BipGMJ5O.mjs");
29
+ const { listCloudflareSecrets, resolveCloudflareOperationContext } = await import("./cloudflare-operations-BT6OWFBk.mjs");
30
30
  remoteSecrets = await listCloudflareSecrets(resolveCloudflareOperationContext(root));
31
31
  } else {
32
32
  const token = getToken(root);
@@ -1,3 +1,4 @@
1
+ import { c as VoidPlatformSandbox } from "./sandbox-qpNBT8a3.mjs";
1
2
  import { t as StandardSchemaV1 } from "./standard-schema-Fo_vCAZh.mjs";
2
3
  //#region src/runtime/env-public.d.ts
3
4
  type AnyValidator = StandardSchemaV1<unknown, unknown>;
@@ -112,7 +113,7 @@ declare global {
112
113
  KV: KVNamespace;
113
114
  STORAGE: R2Bucket;
114
115
  AI: Ai;
115
- SANDBOX: DurableObjectNamespace<import("@cloudflare/sandbox").Sandbox>;
116
+ SANDBOX: DurableObjectNamespace<VoidPlatformSandbox>;
116
117
  /** @internal Service binding to proxy worker (AI, revalidation, future features) */
117
118
  __VOID_PROXY?: Fetcher;
118
119
  /** @internal Custom proxy URL override */
@@ -0,0 +1,2 @@
1
+ import { r as runGenCommand } from "./gen-sCtlCOdA.mjs";
2
+ export { runGenCommand };
@@ -1,12 +1,12 @@
1
1
  import { a as join, l as relative, n as dirname } from "./dist-BVqXeR_h.mjs";
2
- import { r as cliTitle } from "./output-CCH48AMM.mjs";
3
2
  import { n as readProjectPaths } from "./project-paths-GgcMozYz.mjs";
4
- import { m as readConfig, u as getDatabaseDialect } from "./config-CafTW6Cz.mjs";
3
+ import { m as readConfig, u as getDatabaseDialect } from "./config-Br_JZD6u.mjs";
5
4
  import { n as ensureProjectTsconfig } from "./project-tsconfig-B8GeM0RM.mjs";
6
5
  import { n as readJournal, t as collectMigrations } from "./collect-DiTn9yr6.mjs";
7
- import { I as select, O as intro, P as outro, T as cancel, W as isCancel, j as log } from "./dist-Dn6nn2IU.mjs";
6
+ import { I as select, O as intro, P as outro, T as cancel, W as isCancel, j as log } from "./dist-CTBk70IR.mjs";
8
7
  import { t as writeDrizzleConfig } from "./config-D8MOgiQV.mjs";
9
8
  import { r as listDrizzleArtifacts, t as assertJournalCoherence } from "./validate-CIUwFpjB.mjs";
9
+ import { r as cliTitle } from "./output-Dm_A4Tbv.mjs";
10
10
  import { t as buildDrizzleKitSpawnEnv } from "./yarn-pnp-BV4AzNul.mjs";
11
11
  import { existsSync, mkdirSync, readFileSync, readdirSync, unlinkSync, writeFileSync } from "node:fs";
12
12
  import { fileURLToPath } from "node:url";
@@ -1,8 +1,8 @@
1
- import { c as import_picocolors } from "./output-CCH48AMM.mjs";
2
1
  import { c as getToken, d as openBrowser, n as createCodeChallenge, r as createCodeVerifier, t as awaitBrowserCallback } from "./auth-DLNN0D3Z.mjs";
3
2
  import { o as readProjectConfig } from "./project-C0Fqu05O.mjs";
4
- import { B as text, E as confirm, I as select, T as cancel, W as isCancel, j as log } from "./dist-Dn6nn2IU.mjs";
5
- import { n as PlatformClient, o as parsePlatformErrorBody, s as platformErrorMessage, t as PlatformApiError } from "./client-QTl6ko_D.mjs";
3
+ import { B as text, E as confirm, I as select, T as cancel, W as isCancel, j as log } from "./dist-CTBk70IR.mjs";
4
+ import { n as PlatformClient, o as parsePlatformErrorBody, s as platformErrorMessage, t as PlatformApiError } from "./client-BTZ3XkrB.mjs";
5
+ import { c as import_picocolors } from "./output-Dm_A4Tbv.mjs";
6
6
  import { r as resolveProjectBySlug, t as getRequestedProjectSlug } from "./resolve-project-BG5ORGID.mjs";
7
7
  import { t as collectGitDeployMetadata } from "./git-metadata-D-gurjzG.mjs";
8
8
  import { randomBytes } from "node:crypto";
@@ -90,14 +90,12 @@ function formatInstallations(installations) {
90
90
  function formatConnection(connection) {
91
91
  const row = (label, value) => ` ${label.padEnd(16)}${value}`;
92
92
  const workflow = connection.build_executor === "github_actions" ? connection.workflow_path : `${connection.workflow_path} (unused for container builds)`;
93
- const rows = [
93
+ return [
94
94
  row("Repository", connection.repo_full_name),
95
95
  row("Branch", connection.branch),
96
96
  row("Build executor", connection.build_executor),
97
97
  row("Deploy workflow", workflow)
98
- ];
99
- if (connection.requires_reconnect) rows.push(row("Authorization", "Reconnect required: run `void github connect` for this repository"));
100
- return rows.join("\n");
98
+ ].join("\n");
101
99
  }
102
100
  async function runGithubCommand(root, args) {
103
101
  const token = getToken(root);
@@ -1,3 +1,4 @@
1
+ import { c as VoidPlatformSandbox } from "./sandbox-qpNBT8a3.mjs";
1
2
  import { t as StandardSchemaV1 } from "./standard-schema-Fo_vCAZh.mjs";
2
3
  import { n as HeadDescriptor } from "./head-Do8P4puT.mjs";
3
4
  import { r as AuthUser, t as AuthSession } from "./auth-DkcFflXV.mjs";
@@ -98,7 +99,7 @@ interface CloudBindings extends VoidGeneratedEnvBindings {
98
99
  KV: KVNamespace;
99
100
  STORAGE: R2Bucket;
100
101
  AI: Ai;
101
- SANDBOX: DurableObjectNamespace<import("@cloudflare/sandbox").Sandbox>;
102
+ SANDBOX: DurableObjectNamespace<VoidPlatformSandbox>;
102
103
  [key: string]: unknown;
103
104
  }
104
105
  type CloudEnv = Env & {
@@ -1,5 +1,5 @@
1
1
  import { a as join } from "./dist-BVqXeR_h.mjs";
2
- import { a as convertFallbacksConfig, c as convertRewritesConfig, f as isProtocolRelative, l as countSplats, n as VALID_REDIRECT_STATUSES, o as convertHeadersConfig, p as parseHostPrefixedSource, s as convertRedirectsConfig } from "./config-CafTW6Cz.mjs";
2
+ import { a as convertFallbacksConfig, c as convertRewritesConfig, f as isProtocolRelative, l as countSplats, n as VALID_REDIRECT_STATUSES, o as convertHeadersConfig, p as parseHostPrefixedSource, s as convertRedirectsConfig } from "./config-Br_JZD6u.mjs";
3
3
  import { i as voidWarn } from "./log-ChfPKsVd.mjs";
4
4
  import { existsSync, readFileSync } from "node:fs";
5
5
  //#region src/cli/headers.ts
@@ -0,0 +1,2 @@
1
+ import { r as printHelpPage } from "./help-GKtwl07I.mjs";
2
+ export { printHelpPage };
@@ -1,7 +1,7 @@
1
1
  import { a as join } from "./dist-BVqXeR_h.mjs";
2
- import { c as import_picocolors, l as sectionTitle, s as helpLine, t as categoryTitle } from "./output-CCH48AMM.mjs";
3
- import { N as note, P as outro } from "./dist-Dn6nn2IU.mjs";
2
+ import { N as note, P as outro } from "./dist-CTBk70IR.mjs";
4
3
  import { n as getPackageDir } from "./agents-B_pX_HmQ.mjs";
4
+ import { c as import_picocolors, s as helpLine, t as categoryTitle, u as sectionTitle } from "./output-Dm_A4Tbv.mjs";
5
5
  import { t as OPERATOR_MAX_TIMEOUT_MS } from "./operator-client-DUwumHpQ.mjs";
6
6
  import { readFileSync } from "node:fs";
7
7
  //#region src/cli/ascii.ts
@@ -135,6 +135,71 @@ const operatorCommands = [
135
135
  positional: ["id", "userId"],
136
136
  method: "POST"
137
137
  },
138
+ {
139
+ group: "zero-trust",
140
+ action: "status",
141
+ description: "Inspect saved platform Zero Trust configuration and project state counts",
142
+ path: "/zero-trust",
143
+ booleans: ["check"]
144
+ },
145
+ {
146
+ group: "zero-trust",
147
+ action: "configure",
148
+ description: "Configure and reconcile project Zero Trust protection",
149
+ path: "/zero-trust/configure",
150
+ values: {
151
+ "identity-providers": "Comma-separated Access identity provider IDs",
152
+ policies: "Comma-separated reusable Access policy IDs",
153
+ "existing-projects": "Required when enabling: protected or public for existing projects"
154
+ },
155
+ booleans: ["token-stdin", "protect-new-projects"],
156
+ method: "POST"
157
+ },
158
+ {
159
+ group: "zero-trust",
160
+ action: "reconcile",
161
+ description: "Repair platform and project Access configuration drift",
162
+ path: "/zero-trust/reconcile",
163
+ method: "POST"
164
+ },
165
+ {
166
+ group: "zero-trust",
167
+ action: "disable",
168
+ description: "Remove Void-managed Access applications and make projects public",
169
+ path: "/zero-trust/disable",
170
+ method: "POST"
171
+ },
172
+ {
173
+ group: "zero-trust",
174
+ action: "project-status",
175
+ description: "Inspect one project Zero Trust override and effective state",
176
+ path: "/zero-trust/projects/:id",
177
+ positional: ["id"]
178
+ },
179
+ {
180
+ group: "zero-trust",
181
+ action: "project-protect",
182
+ description: "Protect one project, overriding the platform default",
183
+ path: "/zero-trust/projects/:id",
184
+ positional: ["id"],
185
+ method: "POST"
186
+ },
187
+ {
188
+ group: "zero-trust",
189
+ action: "project-public",
190
+ description: "Make one project public, overriding the platform default",
191
+ path: "/zero-trust/projects/:id",
192
+ positional: ["id"],
193
+ method: "POST"
194
+ },
195
+ {
196
+ group: "zero-trust",
197
+ action: "project-reconcile",
198
+ description: "Repair Access configuration drift for one project",
199
+ path: "/zero-trust/projects/:id/reconcile",
200
+ positional: ["id"],
201
+ method: "POST"
202
+ },
138
203
  {
139
204
  group: "deployment",
140
205
  action: "list",
@@ -478,7 +543,8 @@ function parseOperatorArgs(args) {
478
543
  "follow",
479
544
  "token-stdin",
480
545
  "force",
481
- "ended"
546
+ "ended",
547
+ ...operatorCommands.flatMap((command) => command.booleans ?? [])
482
548
  ]);
483
549
  for (let index = 0; index < args.length; index++) {
484
550
  const arg = args[index];
@@ -580,6 +646,24 @@ function parseOperatorArgs(args) {
580
646
  "identity"
581
647
  ].includes(String(parsed.body.type))) throw new Error("platform: Signup grant type must be github, email, or identity.");
582
648
  for (const name of command.booleans ?? []) if (name !== "token-stdin" && flags.has(name)) parsed.body[name] = true;
649
+ if (group === "zero-trust" && action === "configure") {
650
+ if (!parsed.tokenStdin) throw new Error("platform: zero-trust configure requires --token-stdin.");
651
+ const identityProviderIds = values["identity-providers"]?.split(",").map((entry) => entry.trim()).filter(Boolean);
652
+ const policyIds = values.policies?.split(",").map((entry) => entry.trim()).filter(Boolean);
653
+ const existingProjects = values["existing-projects"];
654
+ if (!identityProviderIds?.length || !policyIds?.length) throw new Error("platform: zero-trust configure requires --identity-providers and --policies.");
655
+ if (existingProjects !== void 0 && existingProjects !== "protected" && existingProjects !== "public") throw new Error("platform: --existing-projects must be protected or public.");
656
+ parsed.body = {
657
+ identityProviderIds,
658
+ policyIds,
659
+ ...existingProjects ? { existingProjects } : {},
660
+ protectNewProjects: flags.has("protect-new-projects")
661
+ };
662
+ } else if (group === "zero-trust" && action === "status") {
663
+ delete parsed.body.check;
664
+ if (flags.has("check")) parsed.query.check = "true";
665
+ } else if (group === "zero-trust" && action === "project-protect") parsed.body.protected = true;
666
+ else if (group === "zero-trust" && action === "project-public") parsed.body.protected = false;
583
667
  return parsed;
584
668
  }
585
669
  //#endregion
@@ -638,7 +722,7 @@ function operatorHelpTree() {
638
722
  })),
639
723
  ...(entry.booleans ?? []).map((flag) => ({
640
724
  command: `--${flag}`,
641
- description: flag === "follow" ? "Poll new logs until interrupted or the build ends" : flag === "ended" ? "Attest that the original provider execution has ended" : flag === "token-stdin" && group === "email" ? entry.action === "domain-remove" ? "Read a replacement Cloudflare token for blocked project cleanup from stdin" : "Read a scoped Cloudflare API token from stdin" : "Read a full API session from stdin for explicit operator session exchange"
725
+ description: flag === "follow" ? "Poll new logs until interrupted or the build ends" : flag === "ended" ? "Attest that the original provider execution has ended" : flag === "protect-new-projects" ? "Protect newly created projects by default" : flag === "check" && group === "zero-trust" ? "Also check the saved settings against Cloudflare Access (several API calls)" : flag === "token-stdin" && group === "zero-trust" ? "Read the Access management API token from stdin" : flag === "token-stdin" && group === "email" ? entry.action === "domain-remove" ? "Read a replacement Cloudflare token for blocked project cleanup from stdin" : "Read a scoped Cloudflare API token from stdin" : "Read a full API session from stdin for explicit operator session exchange"
642
726
  }))
643
727
  ]
644
728
  }]))
@@ -1193,6 +1277,10 @@ const HELP_TREE = {
1193
1277
  command: "team <command>",
1194
1278
  description: "Manage members and project invitations"
1195
1279
  },
1280
+ {
1281
+ command: "zero-trust <command>",
1282
+ description: "Inspect or override Cloudflare Zero Trust protection"
1283
+ },
1196
1284
  {
1197
1285
  command: "logs",
1198
1286
  description: "Show runtime logs from the deployed project"
@@ -1319,6 +1407,38 @@ const HELP_TREE = {
1319
1407
  decline: basicSubcommand("Decline your invitation on the active platform connection (VOID_API_URL overrides it).", "void project team decline <invitation-id>")
1320
1408
  }
1321
1409
  },
1410
+ "zero-trust": {
1411
+ summary: "Inspect and manage Zero Trust protection for a Void platform project.",
1412
+ usage: ["void project zero-trust <status|protect|public|reconcile> [options]"],
1413
+ commands: [
1414
+ {
1415
+ command: "status",
1416
+ description: "Show desired and effective protection state"
1417
+ },
1418
+ {
1419
+ command: "protect",
1420
+ description: "Protect the project"
1421
+ },
1422
+ {
1423
+ command: "public",
1424
+ description: "Make the project public"
1425
+ },
1426
+ {
1427
+ command: "reconcile",
1428
+ description: "Repair Cloudflare Access configuration drift"
1429
+ }
1430
+ ],
1431
+ options: [{
1432
+ command: "--project <name>",
1433
+ description: "Project name override"
1434
+ }],
1435
+ children: Object.fromEntries([
1436
+ "status",
1437
+ "protect",
1438
+ "public",
1439
+ "reconcile"
1440
+ ].map((action) => [action, withProjectOption(action === "status" ? "Show desired and effective Zero Trust protection." : action === "protect" ? "Protect the project with the platform Access policy." : action === "public" ? "Make the project public with a managed Access bypass." : "Repair Cloudflare Access configuration drift for the project.", `void project zero-trust ${action} [options]`)]))
1441
+ },
1322
1442
  logs: {
1323
1443
  summary: "Show runtime logs from the deployed project.",
1324
1444
  usage: ["void project logs [options]"],
package/dist/index.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { n as HeadDescriptor } from "./head-Do8P4puT.mjs";
2
2
  import { r as AuthUser } from "./auth-DkcFflXV.mjs";
3
- import { C as defer, E as ValidatorSlots, S as InferProps, T as HandlerInput, _ as defineQueue, a as CloudEnv, b as Deferred, c as QueueRetryOptions, d as TypedQueueHandler, f as VoidAssetRewriteError, g as defineMiddleware, h as defineHead, i as CloudContextVariables, l as RenderAssetTags, m as defineHandler, o as QueueBatch, p as basicAuth, r as CloudContext, s as QueueMessage, t as BasicAuthOptions, u as TypedHandler, v as defineRender, x as DeferredState, y as defineScheduled } from "./handler-BXJTXd02.mjs";
3
+ import { C as defer, E as ValidatorSlots, S as InferProps, T as HandlerInput, _ as defineQueue, a as CloudEnv, b as Deferred, c as QueueRetryOptions, d as TypedQueueHandler, f as VoidAssetRewriteError, g as defineMiddleware, h as defineHead, i as CloudContextVariables, l as RenderAssetTags, m as defineHandler, o as QueueBatch, p as basicAuth, r as CloudContext, s as QueueMessage, t as BasicAuthOptions, u as TypedHandler, v as defineRender, x as DeferredState, y as defineScheduled } from "./handler-HEcZsaij.mjs";
4
4
  import { t as QueueMap } from "./queues-BWKt1Xo4.mjs";
5
5
  import { PluginConfig } from "@cloudflare/vite-plugin";
6
6
  import { Plugin } from "vite";