@geekmidas/cli 10.0.0-alpha.76 → 10.0.0-alpha.78

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 (133) hide show
  1. package/dist/{LegacyStateStore-dyq07_Ir.mjs → LegacyStateStore-Ceq7A_75.mjs} +2 -2
  2. package/dist/{LegacyStateStore-dyq07_Ir.mjs.map → LegacyStateStore-Ceq7A_75.mjs.map} +1 -1
  3. package/dist/{LegacyStateStore-DwngfJxr.cjs → LegacyStateStore-Z-EKUGSX.cjs} +2 -2
  4. package/dist/{LegacyStateStore-DwngfJxr.cjs.map → LegacyStateStore-Z-EKUGSX.cjs.map} +1 -1
  5. package/dist/{LocalStateStore-B0NCde8Z.cjs → LocalStateStore-Bocb8dmZ.cjs} +2 -2
  6. package/dist/{LocalStateStore-B0NCde8Z.cjs.map → LocalStateStore-Bocb8dmZ.cjs.map} +1 -1
  7. package/dist/{LocalStateStore-DLxCCatI.mjs → LocalStateStore-C72bwpG2.mjs} +2 -2
  8. package/dist/{LocalStateStore-DLxCCatI.mjs.map → LocalStateStore-C72bwpG2.mjs.map} +1 -1
  9. package/dist/{S3StateStore-BOenb-3o.cjs → S3StateStore-35YfcdL_.cjs} +2 -2
  10. package/dist/{S3StateStore-BOenb-3o.cjs.map → S3StateStore-35YfcdL_.cjs.map} +1 -1
  11. package/dist/{S3StateStore-CGK_4hlo.mjs → S3StateStore-C9upSW5o.mjs} +2 -2
  12. package/dist/{S3StateStore-CGK_4hlo.mjs.map → S3StateStore-C9upSW5o.mjs.map} +1 -1
  13. package/dist/{SSMStateStore-DYeD__7p.cjs → SSMStateStore-W-Ps22AQ.cjs} +2 -2
  14. package/dist/{SSMStateStore-DYeD__7p.cjs.map → SSMStateStore-W-Ps22AQ.cjs.map} +1 -1
  15. package/dist/{SSMStateStore-B_5_RqY-.mjs → SSMStateStore-dOmFO6g1.mjs} +2 -2
  16. package/dist/{SSMStateStore-B_5_RqY-.mjs.map → SSMStateStore-dOmFO6g1.mjs.map} +1 -1
  17. package/dist/{add-j2yI3cbS.cjs → add-BvOICikp.cjs} +8 -8
  18. package/dist/{add-j2yI3cbS.cjs.map → add-BvOICikp.cjs.map} +1 -1
  19. package/dist/{add-B7IMXzou.mjs → add-D2XKszYP.mjs} +3 -3
  20. package/dist/{add-B7IMXzou.mjs.map → add-D2XKszYP.mjs.map} +1 -1
  21. package/dist/{bundler-Cf6OgaOe.cjs → bundler-C6T-1OLT.cjs} +5 -5
  22. package/dist/{bundler-Cf6OgaOe.cjs.map → bundler-C6T-1OLT.cjs.map} +1 -1
  23. package/dist/{bundler-DO6bHhnb.mjs → bundler-CtHzKqnZ.mjs} +5 -5
  24. package/dist/{bundler-DO6bHhnb.mjs.map → bundler-CtHzKqnZ.mjs.map} +1 -1
  25. package/dist/{cli-BCPOHmg9.mjs → cli-BgPyhx1i.mjs} +3 -3
  26. package/dist/{cli-BCPOHmg9.mjs.map → cli-BgPyhx1i.mjs.map} +1 -1
  27. package/dist/{cli-CNanUB7a.cjs → cli-K6Vj_pPW.cjs} +4 -4
  28. package/dist/{cli-CNanUB7a.cjs.map → cli-K6Vj_pPW.cjs.map} +1 -1
  29. package/dist/{compose-h_6oNnHC.cjs → compose-B7MC19eC.cjs} +668 -110
  30. package/dist/compose-B7MC19eC.cjs.map +1 -0
  31. package/dist/{compose-Dq4VCtu5.mjs → compose-DByK353T.mjs} +606 -66
  32. package/dist/compose-DByK353T.mjs.map +1 -0
  33. package/dist/{config-CqAvPP-f.d.mts → config-Bql0AmJt.d.mts} +3 -3
  34. package/dist/{config-CWyhLSY1.d.cts.map → config-Bql0AmJt.d.mts.map} +1 -1
  35. package/dist/{config-CWyhLSY1.d.cts → config-DlNpHK8p.d.cts} +3 -3
  36. package/dist/{config-CqAvPP-f.d.mts.map → config-DlNpHK8p.d.cts.map} +1 -1
  37. package/dist/config.cjs +1 -1
  38. package/dist/config.d.cts +3 -3
  39. package/dist/config.d.mts +3 -3
  40. package/dist/config.mjs +1 -1
  41. package/dist/deploy/public.cjs +12 -12
  42. package/dist/deploy/public.d.cts +3 -3
  43. package/dist/deploy/public.d.cts.map +1 -1
  44. package/dist/deploy/public.d.mts +3 -3
  45. package/dist/deploy/public.d.mts.map +1 -1
  46. package/dist/deploy/public.mjs +6 -6
  47. package/dist/{deploy-CVXEx7Nm.mjs → deploy-BerP7ppB.mjs} +5 -5
  48. package/dist/{deploy-CVXEx7Nm.mjs.map → deploy-BerP7ppB.mjs.map} +1 -1
  49. package/dist/{deploy-CT3R9de9.cjs → deploy-Dt42xiQA.cjs} +11 -11
  50. package/dist/{deploy-CT3R9de9.cjs.map → deploy-Dt42xiQA.cjs.map} +1 -1
  51. package/dist/{dokploy-eSGmlhhj.cjs → dokploy-NG9UrVrP.cjs} +2 -2
  52. package/dist/{dokploy-eSGmlhhj.cjs.map → dokploy-NG9UrVrP.cjs.map} +1 -1
  53. package/dist/{dokploy-CYm2ozFs.mjs → dokploy-ssZQRK2C.mjs} +2 -2
  54. package/dist/{dokploy-CYm2ozFs.mjs.map → dokploy-ssZQRK2C.mjs.map} +1 -1
  55. package/dist/{encryption-vS3Qzw73.cjs → encryption-CbMI24fI.cjs} +6 -6
  56. package/dist/{encryption-vS3Qzw73.cjs.map → encryption-CbMI24fI.cjs.map} +1 -1
  57. package/dist/{encryption-DC0rsR1W.mjs → encryption-De6MN0O5.mjs} +3 -3
  58. package/dist/{encryption-DC0rsR1W.mjs.map → encryption-De6MN0O5.mjs.map} +1 -1
  59. package/dist/{engine-C0N2d1i5.cjs → engine-CoCsNoW_.cjs} +73 -68
  60. package/dist/{engine-C0N2d1i5.cjs.map → engine-CoCsNoW_.cjs.map} +1 -1
  61. package/dist/{engine-BOO5TWZd.mjs → engine-DOjGIgl4.mjs} +9 -4
  62. package/dist/{engine-BOO5TWZd.mjs.map → engine-DOjGIgl4.mjs.map} +1 -1
  63. package/dist/{github-CEaFDL6t.mjs → github-CwX9z89E.mjs} +3 -3
  64. package/dist/{github-CEaFDL6t.mjs.map → github-CwX9z89E.mjs.map} +1 -1
  65. package/dist/{github-ClkdCOL9.cjs → github-D9vGqdLk.cjs} +7 -7
  66. package/dist/{github-ClkdCOL9.cjs.map → github-D9vGqdLk.cjs.map} +1 -1
  67. package/dist/{index-DOxmDKqv.d.mts → index-BXO0vlme.d.mts} +2 -2
  68. package/dist/{index-Ccu0f_2m.d.cts.map → index-BXO0vlme.d.mts.map} +1 -1
  69. package/dist/{index-Ccu0f_2m.d.cts → index-Rs0Fua-q.d.cts} +2 -2
  70. package/dist/{index-DOxmDKqv.d.mts.map → index-Rs0Fua-q.d.cts.map} +1 -1
  71. package/dist/index.cjs +180 -219
  72. package/dist/index.cjs.map +1 -1
  73. package/dist/index.mjs +108 -147
  74. package/dist/index.mjs.map +1 -1
  75. package/dist/{migrate-BRbYtFXG.cjs → migrate-B4GBvCNY.cjs} +5 -5
  76. package/dist/{migrate-BRbYtFXG.cjs.map → migrate-B4GBvCNY.cjs.map} +1 -1
  77. package/dist/{migrate-D3NAT7Ns.mjs → migrate-BQ4wVKq_.mjs} +3 -3
  78. package/dist/{migrate-D3NAT7Ns.mjs.map → migrate-BQ4wVKq_.mjs.map} +1 -1
  79. package/dist/{migrate-DrO2p9Rl.mjs → migrate-CNKaQl3K.mjs} +3 -3
  80. package/dist/{migrate-DrO2p9Rl.mjs.map → migrate-CNKaQl3K.mjs.map} +1 -1
  81. package/dist/{migrate-D5_-ylI1.cjs → migrate-Cgoy58Sh.cjs} +8 -8
  82. package/dist/{migrate-D5_-ylI1.cjs.map → migrate-Cgoy58Sh.cjs.map} +1 -1
  83. package/dist/openapi.cjs +1 -1
  84. package/dist/openapi.d.cts +1 -1
  85. package/dist/openapi.d.mts +1 -1
  86. package/dist/openapi.mjs +1 -1
  87. package/dist/reconcile/public.d.cts +1 -1
  88. package/dist/reconcile/public.d.mts +1 -1
  89. package/dist/{resolve-Fa1Ii0BK.cjs → resolve-CEaqRBzY.cjs} +3 -3
  90. package/dist/{resolve-Fa1Ii0BK.cjs.map → resolve-CEaqRBzY.cjs.map} +1 -1
  91. package/dist/{resolve-C1muFos5.mjs → resolve-mvaystiE.mjs} +3 -3
  92. package/dist/{resolve-C1muFos5.mjs.map → resolve-mvaystiE.mjs.map} +1 -1
  93. package/dist/{rollback-C9N5lKVf.cjs → rollback-F3P-rA-r.cjs} +7 -7
  94. package/dist/{rollback-C9N5lKVf.cjs.map → rollback-F3P-rA-r.cjs.map} +1 -1
  95. package/dist/{rollback-DeQzbRqM.mjs → rollback-S2C-Y9pB.mjs} +5 -5
  96. package/dist/{rollback-DeQzbRqM.mjs.map → rollback-S2C-Y9pB.mjs.map} +1 -1
  97. package/dist/{runtime-Cm7QA53H.d.cts → runtime-D9AxGzrw.d.cts} +2 -2
  98. package/dist/{runtime-BSvzPqXW.d.mts.map → runtime-D9AxGzrw.d.cts.map} +1 -1
  99. package/dist/{runtime-BSvzPqXW.d.mts → runtime-Dflki3Vs.d.mts} +2 -2
  100. package/dist/{runtime-Cm7QA53H.d.cts.map → runtime-Dflki3Vs.d.mts.map} +1 -1
  101. package/dist/{sniffer-Y6GQOCXB.cjs → sniffer-BjG-1mlD.cjs} +6 -6
  102. package/dist/{sniffer-Y6GQOCXB.cjs.map → sniffer-BjG-1mlD.cjs.map} +1 -1
  103. package/dist/{sniffer-DR8AlRCk.mjs → sniffer-ByWtH28i.mjs} +6 -6
  104. package/dist/{sniffer-DR8AlRCk.mjs.map → sniffer-ByWtH28i.mjs.map} +1 -1
  105. package/dist/{state-C2qi0iQw.cjs → stale-BsiPJI7Y.cjs} +111 -25
  106. package/dist/stale-BsiPJI7Y.cjs.map +1 -0
  107. package/dist/{state-CUecOCNJ.mjs → stale-C5FqIVc8.mjs} +106 -26
  108. package/dist/stale-C5FqIVc8.mjs.map +1 -0
  109. package/dist/target/public.cjs +1 -1
  110. package/dist/target/public.d.cts +2 -2
  111. package/dist/target/public.d.mts +2 -2
  112. package/dist/target/public.mjs +1 -1
  113. package/dist/{types-BdptGBFS.d.cts → types-ByY0zi3n.d.cts} +42 -3
  114. package/dist/types-ByY0zi3n.d.cts.map +1 -0
  115. package/dist/{types-OxE0OAn2.d.mts → types-DKxkXsKC.d.mts} +42 -3
  116. package/dist/types-DKxkXsKC.d.mts.map +1 -0
  117. package/dist/workspace/index.cjs +1 -1
  118. package/dist/workspace/index.d.cts +2 -2
  119. package/dist/workspace/index.d.mts +2 -2
  120. package/dist/workspace/index.mjs +1 -1
  121. package/dist/{workspace-QUTqYmVy.mjs → workspace-BBdqmkch.mjs} +114 -17
  122. package/dist/workspace-BBdqmkch.mjs.map +1 -0
  123. package/dist/{workspace-DOm81oUo.cjs → workspace-Bp8FEkF-.cjs} +130 -15
  124. package/dist/workspace-Bp8FEkF-.cjs.map +1 -0
  125. package/package.json +15 -15
  126. package/dist/compose-Dq4VCtu5.mjs.map +0 -1
  127. package/dist/compose-h_6oNnHC.cjs.map +0 -1
  128. package/dist/state-C2qi0iQw.cjs.map +0 -1
  129. package/dist/state-CUecOCNJ.mjs.map +0 -1
  130. package/dist/types-BdptGBFS.d.cts.map +0 -1
  131. package/dist/types-OxE0OAn2.d.mts.map +0 -1
  132. package/dist/workspace-DOm81oUo.cjs.map +0 -1
  133. package/dist/workspace-QUTqYmVy.mjs.map +0 -1
@@ -2,10 +2,10 @@ const require_rolldown_runtime = require("./rolldown-runtime-C0BPl7ul.cjs");
2
2
  const require_run = require("./run-fVZ-rLnc.cjs");
3
3
  const require_discover = require("./discover-D1It5r_h.cjs");
4
4
  const require_derive = require("./derive-DAbo49sm.cjs");
5
- const require_workspace = require("./workspace-DOm81oUo.cjs");
5
+ const require_workspace = require("./workspace-Bp8FEkF-.cjs");
6
6
  const require_config = require("./config.cjs");
7
7
  const require_EndpointGenerator = require("./EndpointGenerator-CP6sBvQV.cjs");
8
- const require_resolve = require("./resolve-Fa1Ii0BK.cjs");
8
+ const require_resolve = require("./resolve-CEaqRBzY.cjs");
9
9
  const require_SubscriberGenerator = require("./SubscriberGenerator-CajwOa5W.cjs");
10
10
  let node_path = require("node:path");
11
11
  let node_fs = require("node:fs");
@@ -93,10 +93,6 @@ function toEmbeddableSecrets(secrets) {
93
93
  AWS_SECRET_ACCESS_KEY: secrets.services.localstack.password,
94
94
  AWS_REGION: secrets.services.localstack.region ?? "us-east-1",
95
95
  AWS_ENDPOINT_URL: `http://${secrets.services.localstack.host}:${secrets.services.localstack.port}`
96
- },
97
- ...secrets.services.pgboss && {
98
- PGBOSS_DB_USER: secrets.services.pgboss.username,
99
- PGBOSS_DB_PASSWORD: secrets.services.pgboss.password
100
96
  }
101
97
  };
102
98
  }
@@ -663,24 +659,18 @@ async function savePortState(workspaceRoot, ports) {
663
659
  await (0, node_fs_promises.writeFile)((0, node_path.join)(workspaceRoot, PORT_STATE_PATH), `${JSON.stringify(ports, null, 2)}\n`);
664
660
  }
665
661
  /**
666
- * Load and flatten secrets for an app from encrypted storage.
667
- * For workspace app: maps {APP}_DATABASE_URL → DATABASE_URL.
662
+ * Load and flatten a stage's secrets from its store.
663
+ *
664
+ * Every key as stored — nothing renamed. An app's database URL is its
665
+ * construct's key, derived by reconcile, and never a stored per-app value
666
+ * mapped onto `DATABASE_URL`.
668
667
  * @internal Exported for testing
669
668
  */
670
- async function loadSecretsForApp(store, stage, appName) {
671
- let secrets = {};
669
+ async function loadSecretsForApp(store, stage) {
672
670
  const stageSecrets = await store.read(stage);
673
- if (stageSecrets) {
674
- logger$1.log(`🔐 Loading secrets from stage: ${stage}`);
675
- secrets = toEmbeddableSecrets(stageSecrets);
676
- }
677
- if (Object.keys(secrets).length === 0) return {};
678
- if (!appName) return secrets;
679
- const prefix = appName.toUpperCase();
680
- const mapped = { ...secrets };
681
- const appDbUrl = secrets[`${prefix}_DATABASE_URL`];
682
- if (appDbUrl) mapped.DATABASE_URL = appDbUrl;
683
- return mapped;
671
+ if (!stageSecrets) return {};
672
+ logger$1.log(`🔐 Loading secrets from stage: ${stage}`);
673
+ return toEmbeddableSecrets(stageSecrets);
684
674
  }
685
675
  /**
686
676
  * Walk up the directory tree to find the root containing .gkm/secrets/.
@@ -788,7 +778,7 @@ async function prepareEntryCredentials(options) {
788
778
  const resolvedPort = options.explicitPort ?? workspaceAppPort ?? 3e3;
789
779
  const stage = options.stage ?? workspace?.stages.local;
790
780
  const store = stage ? workspace ? await secretsStoreFor(workspace, stage) : new FileSecretsStore(secretsRoot) : void 0;
791
- const credentials = store && stage ? await loadSecretsForApp(store, stage, appName) : {};
781
+ const credentials = store && stage ? await loadSecretsForApp(store, stage) : {};
792
782
  credentials.PORT = String(resolvedPort);
793
783
  if (appInfo?.app.type === "mobile") credentials.RCT_METRO_PORT = String(resolvedPort);
794
784
  const declaredKeys = [];
@@ -3100,13 +3090,13 @@ function sitePublicArgs(manifest, appName, env) {
3100
3090
  * network for a service another service calls, public for what a browser is
3101
3091
  * handed. `gkm compose` asks twice, once for each.
3102
3092
  */
3103
- function networkEnv(plan, options) {
3093
+ function networkEnv(plan, options, hostOf = (container) => container) {
3104
3094
  const placeholders = {};
3105
3095
  const targets = /* @__PURE__ */ new Map();
3106
3096
  let next = 49152;
3107
3097
  for (const container of [...plan.containers].sort()) for (const port of portsOf(container, plan.fakes)) {
3108
3098
  placeholders[port.key] = next;
3109
- targets.set(next, `${container}:${port.inside}`);
3099
+ targets.set(next, `${hostOf(container)}:${port.inside}`);
3110
3100
  next += 1;
3111
3101
  }
3112
3102
  for (const key of portKeys(plan.containers, plan.fakes)) placeholders[key] ??= next++;
@@ -6505,6 +6495,96 @@ function setPostgresBackupId(state, backupId) {
6505
6495
  if (state.backups) state.backups.postgresBackupId = backupId;
6506
6496
  }
6507
6497
  //#endregion
6498
+ //#region src/secrets/stale.ts
6499
+ /**
6500
+ * Stored secrets an older gkm generated that now shadow a derived value.
6501
+ *
6502
+ * Before constructs, initialising a stage wrote an address for each app into
6503
+ * its custom secrets: `<APP>_DATABASE_URL` as a `postgresql://…@localhost`
6504
+ * URL with a password of its own, and `http://localhost:<port>` for a site or
6505
+ * an auth server. Those keys are now a construct's — `database.schema('AuthDatabase')`
6506
+ * provides `AUTH_DATABASE_URL`, `new BetterAuth('Auth')` provides `AUTH_URL`
6507
+ * — and a deploy derives them. A value the stage holds is a value set by hand,
6508
+ * and set by hand wins: the container is handed `localhost`, where nothing
6509
+ * answers, with a password no role has.
6510
+ *
6511
+ * So a deploy refuses such a stage rather than run it, naming each key and
6512
+ * the command that removes it. Nothing is deleted for the user: the value is
6513
+ * theirs, and only they can say it is stale. A URL that names a real host — a
6514
+ * managed database — is a deliberate choice and still wins.
6515
+ */
6516
+ /** The kinds whose URL an older gkm wrote into a stage's secrets. */
6517
+ const ADDRESSED = /* @__PURE__ */ new Set([
6518
+ "database",
6519
+ "database-reader",
6520
+ "database-schema",
6521
+ "rest-api",
6522
+ "site"
6523
+ ]);
6524
+ /** Hosts that are this machine — never anything, inside a container. */
6525
+ const LOOPBACK = /* @__PURE__ */ new Set([
6526
+ "localhost",
6527
+ "127.0.0.1",
6528
+ "[::1]",
6529
+ "::1"
6530
+ ]);
6531
+ /**
6532
+ * A stage holds a construct's address as a custom secret, pointing at
6533
+ * `localhost` — what an older `gkm secrets:init`, `gkm setup` or `gkm init`
6534
+ * generated. Set by hand wins over derived, so the app would be handed it.
6535
+ */
6536
+ var StaleStageSecrets = class extends Error {
6537
+ stage;
6538
+ stale;
6539
+ constructor(stage, stale) {
6540
+ const one = stale.length === 1;
6541
+ super(`The stage '${stage}' holds ${one ? "a value" : "values"} an older gkm generated for ${one ? "an address a construct" : "addresses constructs"} now ${one ? "provides" : "provide"}:\n` + stale.map((s) => ` ${s.key}: ${s.construct}'s, stored pointing at ${s.host}`).join("\n") + `
6542
+ A stored value wins over the derived one, so the app would be handed an address where nothing answers inside its container. Remove ${one ? "it" : "each"}, and the construct's own value is used:\n` + stale.map((s) => ` gkm secrets:unset ${s.key} --stage ${stage}`).join("\n") + "\nA managed service set with its real host is not affected.");
6543
+ this.stage = stage;
6544
+ this.stale = stale;
6545
+ this.name = "StaleStageSecrets";
6546
+ }
6547
+ };
6548
+ /** The host a stored value names, if it is a URL. */
6549
+ function hostOf(value) {
6550
+ try {
6551
+ return new URL(value).hostname;
6552
+ } catch {
6553
+ return;
6554
+ }
6555
+ }
6556
+ /**
6557
+ * Each stored key that a construct provides an address for, holding an
6558
+ * address on this machine.
6559
+ */
6560
+ function staleStageSecrets(manifest, supplied) {
6561
+ const stale = [];
6562
+ for (const [id, declaration] of Object.entries(manifest)) {
6563
+ if (!ADDRESSED.has(declaration.kind)) continue;
6564
+ const key = (0, _geekmidas_manifest.providedKeyFor)(id, declaration.kind, "url");
6565
+ const value = supplied[key];
6566
+ if (value === void 0) continue;
6567
+ const host = hostOf(value);
6568
+ if (host === void 0 || !LOOPBACK.has(host)) continue;
6569
+ stale.push({
6570
+ key,
6571
+ construct: id,
6572
+ host
6573
+ });
6574
+ }
6575
+ return stale.sort((a, b) => a.key.localeCompare(b.key));
6576
+ }
6577
+ /**
6578
+ * Refuse a stage whose stored secrets would shadow a construct's address with
6579
+ * `localhost`.
6580
+ *
6581
+ * @throws {StaleStageSecrets} naming each key and the command removing it
6582
+ */
6583
+ function assertNoStaleSecrets(options) {
6584
+ const stale = staleStageSecrets(options.manifest, options.supplied);
6585
+ if (stale.length > 0) throw new StaleStageSecrets(options.stage, stale);
6586
+ }
6587
+ //#endregion
6508
6588
  Object.defineProperty(exports, "CronGenerator", {
6509
6589
  enumerable: true,
6510
6590
  get: function() {
@@ -6655,6 +6735,12 @@ Object.defineProperty(exports, "assertExternalServices", {
6655
6735
  return assertExternalServices;
6656
6736
  }
6657
6737
  });
6738
+ Object.defineProperty(exports, "assertNoStaleSecrets", {
6739
+ enumerable: true,
6740
+ get: function() {
6741
+ return assertNoStaleSecrets;
6742
+ }
6743
+ });
6658
6744
  Object.defineProperty(exports, "backendsOf", {
6659
6745
  enumerable: true,
6660
6746
  get: function() {
@@ -7220,4 +7306,4 @@ Object.defineProperty(exports, "workspace_exports", {
7220
7306
  }
7221
7307
  });
7222
7308
 
7223
- //# sourceMappingURL=state-C2qi0iQw.cjs.map
7309
+ //# sourceMappingURL=stale-BsiPJI7Y.cjs.map