@voltro/cli 0.50.0 → 0.51.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 (111) hide show
  1. package/CHANGELOG.md +160 -0
  2. package/dist/{apiBuild-CFYXo06U.js → apiBuild-CPDHXF72.js} +2 -2
  3. package/dist/apiBuild-GDKuGOMV.js +2 -0
  4. package/dist/appGraph-CFmFKHb2.js +2 -0
  5. package/dist/appGraph-yRuKjOba.js +111 -0
  6. package/dist/bin.js +1 -1
  7. package/dist/{build-CnSH-zru.js → build-DETLZAFt.js} +271 -240
  8. package/dist/{checkCommand-OL41BMIb.js → checkCommand-CWcnDArJ.js} +1 -1
  9. package/dist/{checkCommand-Do3SQbLx.js → checkCommand-DNuPiWMc.js} +56 -46
  10. package/dist/{codegenCommand-BJzaRz6q.js → codegenCommand-BNBHcNNj.js} +2 -2
  11. package/dist/{codemodRunner-De3k0pRd.js → codemodRunner-BDVixlSw.js} +278 -136
  12. package/dist/{commands-By23Ljny.js → commands-B1OiS9bX.js} +24 -23
  13. package/dist/{dashboardCommand-DN1rAABE.js → dashboardCommand-C-vvPY1B.js} +5 -5
  14. package/dist/{dataCommand-B93TUBIx.js → dataCommand-C1GxXW5q.js} +458 -384
  15. package/dist/dbCommand-C27HIsGE.js +2 -0
  16. package/dist/{dbCommand-Bf7Cy0mn.js → dbCommand-If4Y1xQ-.js} +1 -1
  17. package/dist/{dev-BWwE0QjK.js → dev-CK522MV5.js} +1 -1
  18. package/dist/{dev-1yu42ubu.js → dev-kdAg9Q7l.js} +1246 -1246
  19. package/dist/doctorCommand-BK4l18eG.js +2 -0
  20. package/dist/{doctorCommand-y-EbP8st.js → doctorCommand-nKmeW78u.js} +42 -26
  21. package/dist/{doctorSourceRelations-Dd48LPvO.js → doctorSourceRelations-c5mlN5HI.js} +66 -34
  22. package/dist/{dormancyCommand-Dc7KRNCG.js → dormancyCommand-CY3wa_SW.js} +1 -1
  23. package/dist/{embeddingsCommand-kPs132bB.js → embeddingsCommand-BDLIgje_.js} +1 -1
  24. package/dist/{envCommand-E12zSt51.js → envCommand-C6V_xVlT.js} +13 -13
  25. package/dist/{evolveCommand-B3nagPVc.js → evolveCommand-D3c4DSfN.js} +2 -2
  26. package/dist/{generateCommand-CcyvH2ve.js → generateCommand-DTNPGjxo.js} +1 -1
  27. package/dist/index.js +1 -1
  28. package/dist/{infoCommand-Cq0Yz98u.js → infoCommand-BnRFEF1o.js} +1 -1
  29. package/dist/{inspect-B7U7Cl_Z.js → inspect-CtL_xTbu.js} +1 -0
  30. package/dist/inspect-CuGDYES0.js +2 -0
  31. package/dist/manifestBuild-CPjhvM62.js +2 -0
  32. package/dist/{manifestBuild-BK42hu0k.js → manifestBuild-CuU1VrSm.js} +2 -2
  33. package/dist/{migrate-D3MK9BpK.js → migrate-DehuBakM.js} +1 -1
  34. package/dist/{runtimeTrace-BpLUcrfy.js → runtimeTrace-ZsBU7Tkx.js} +1 -1
  35. package/dist/{sdkgen-dl4-WKF6.js → sdkgen-O4XqWOjM.js} +1 -1
  36. package/dist/serveCommand-BRnPCxVd.js +2 -0
  37. package/dist/{serveCommand-8CTzQCY0.js → serveCommand-DdiYNBBu.js} +4 -4
  38. package/dist/serveEntry.js +1 -1
  39. package/dist/{start-7HcSIKEp.js → start-BLNmWkLa.js} +331 -327
  40. package/dist/{start-DvlYDyAr.js → start-Dzicuyw8.js} +1 -1
  41. package/dist/startEntry.js +1 -1
  42. package/dist/{updateCommand-i8JbrLAA.js → updateCommand-Bs322Q78.js} +1 -1
  43. package/dist/updateCommand-eXB35SEv.js +2 -0
  44. package/dist/{webDev-B4IEMB0n.js → webDev-B-ubQEMX.js} +283 -224
  45. package/dist/webDev-DposiF3j.js +2 -0
  46. package/dist/{webhooksCommand-B0bdyuQ4.js → webhooksCommand-FLYY9IXh.js} +1 -1
  47. package/package.json +41 -17
  48. package/templates/AGENTS.core.md +15 -5
  49. package/templates/AGENTS.md +16 -6
  50. package/templates/agent-docs/_index.md +1 -1
  51. package/templates/agent-docs/cli.md +92 -3
  52. package/templates/agent-docs/data.md +36 -0
  53. package/templates/agent-docs/internationalization.md +131 -13
  54. package/templates/agent-docs/whats-new.md +73 -27
  55. package/templates/apps/api-ai/package.json +7 -7
  56. package/templates/apps/api-auth/package.json +8 -8
  57. package/templates/apps/api-backend/package.json +7 -7
  58. package/templates/apps/api-backend-deactivation/package.json +7 -7
  59. package/templates/apps/api-backend-mail/package.json +8 -8
  60. package/templates/apps/api-backend-mariadb/package.json +9 -9
  61. package/templates/apps/api-backend-sqlite/package.json +8 -8
  62. package/templates/apps/api-backend-storage/package.json +8 -8
  63. package/templates/apps/api-cms/package.json +10 -10
  64. package/templates/apps/api-collab/package.json +8 -8
  65. package/templates/apps/api-data-advanced/package.json +8 -8
  66. package/templates/apps/api-durable/package.json +8 -8
  67. package/templates/apps/api-feature-flags/package.json +9 -9
  68. package/templates/apps/api-governance/package.json +8 -8
  69. package/templates/apps/api-kv/package.json +8 -8
  70. package/templates/apps/api-moderation/package.json +8 -8
  71. package/templates/apps/api-observability/package.json +8 -8
  72. package/templates/apps/api-ratelimit/package.json +8 -8
  73. package/templates/apps/api-rbac/package.json +8 -8
  74. package/templates/apps/api-rest/package.json +7 -7
  75. package/templates/apps/api-saas/package.json +11 -11
  76. package/templates/apps/api-saas-starter/package.json +10 -10
  77. package/templates/apps/api-search/package.json +8 -8
  78. package/templates/apps/api-status/package.json +8 -8
  79. package/templates/apps/api-versioning/package.json +8 -8
  80. package/templates/apps/api-webhooks/package.json +9 -9
  81. package/templates/apps/changelog/package.json +6 -6
  82. package/templates/apps/edge-functions/package.json +2 -2
  83. package/templates/apps/frontend-admin/package.json +8 -8
  84. package/templates/apps/frontend-app/package.json +9 -9
  85. package/templates/apps/frontend-auth/package.json +8 -8
  86. package/templates/apps/frontend-blank/package.json +7 -7
  87. package/templates/apps/frontend-cms/package.json +9 -9
  88. package/templates/apps/frontend-collab/package.json +10 -10
  89. package/templates/apps/frontend-contact/package.json +7 -7
  90. package/templates/apps/frontend-dashboard/package.json +7 -7
  91. package/templates/apps/frontend-docs/package.json +7 -7
  92. package/templates/apps/frontend-i18n/package.json +6 -6
  93. package/templates/apps/frontend-landing/package.json +7 -7
  94. package/templates/apps/frontend-portal/package.json +8 -8
  95. package/templates/apps/frontend-saas/package.json +8 -8
  96. package/templates/apps/frontend-spa/package.json +7 -7
  97. package/templates/apps/frontend-ssr/package.json +7 -7
  98. package/templates/apps/frontend-ssr-api/package.json +8 -8
  99. package/templates/apps/frontend-static-blog/package.json +6 -6
  100. package/templates/apps/frontend-status/package.json +8 -8
  101. package/templates/apps/mobile-app/package.json +4 -4
  102. package/dist/apiBuild-BWo8KI6n.js +0 -2
  103. package/dist/appGraph-KGDPTuTy.js +0 -110
  104. package/dist/appGraph-zuMGKVYX.js +0 -2
  105. package/dist/dbCommand-Bnl7MSGC.js +0 -2
  106. package/dist/doctorCommand-BmovAwb7.js +0 -2
  107. package/dist/inspect-DUze25t0.js +0 -2
  108. package/dist/manifestBuild-j0n109tt.js +0 -2
  109. package/dist/serveCommand-C_WI4TTG.js +0 -2
  110. package/dist/updateCommand-D91-TZ7E.js +0 -2
  111. package/dist/webDev-B79ji8M5.js +0 -2
@@ -1,2 +1,2 @@
1
- import { n as e, r as t, t as n } from "./checkCommand-Do3SQbLx.js";
1
+ import { n as e, r as t, t as n } from "./checkCommand-DNuPiWMc.js";
2
2
  export { n as offlineManifest, e as runCheckCommand, t as toInput };
@@ -1,19 +1,20 @@
1
1
  import { t as e } from "./cliArgs-D4p8n7EE.js";
2
2
  import { a as t, l as n } from "./codegen-CrMXs4hb.js";
3
- import { r } from "./appGraph-KGDPTuTy.js";
3
+ import { r } from "./appGraph-yRuKjOba.js";
4
4
  import { n as i } from "./cliOutput-D1tSBoRM.js";
5
5
  import { n as a, o, r as s, t as c } from "./inspectFetch-EMuhTG_9.js";
6
6
  import { r as l } from "./fileTaxonomy-CJfgOllU.js";
7
- import { S as u } from "./doctorCommand-y-EbP8st.js";
7
+ import { S as u } from "./doctorCommand-nKmeW78u.js";
8
8
  import { resolve as d } from "node:path";
9
9
  import { readdirSync as f, statSync as p } from "node:fs";
10
+ import { isReactivityChannelKey as m } from "@voltro/protocol";
10
11
  //#region src/observedDiff.ts
11
- var m = (e) => e === void 0 ? [] : typeof e == "string" ? [e] : e, h = /* @__PURE__ */ new Set([
12
- "insert",
13
- "update",
14
- "delete",
15
- "upsert"
16
- ]), g = (e, t) => {
12
+ var h = (e) => (e === void 0 ? [] : typeof e == "string" ? [e] : e).filter((e) => !m(e)), g = {
13
+ insert: ["insert"],
14
+ update: ["update"],
15
+ delete: ["delete"],
16
+ upsert: ["insert", "update"]
17
+ }, _ = (e) => e !== "read", v = (e, t) => `{ table: '${e}', op: '${t}' }`, y = (e, t) => {
17
18
  let n = [], r = new Set(t.exercised), i = /* @__PURE__ */ new Map();
18
19
  for (let e of t.edges) {
19
20
  let t = i.get(e.tag);
@@ -25,24 +26,32 @@ var m = (e) => e === void 0 ? [] : typeof e == "string" ? [e] : e, h = /* @__PUR
25
26
  a.push(t.tag);
26
27
  continue;
27
28
  }
28
- let e = `${t.kind}(${t.tag})`, s = t.file, c = i.get(t.tag) ?? [], l = new Set(m(t.source)), u = new Map((t.targets ?? []).map((e) => [e.table, e.op]));
29
- for (let t of c) if (h.has(t.op)) {
30
- let r = u.get(t.table);
31
- r === void 0 ? n.push({
29
+ let e = `${t.kind}(${t.tag})`, s = t.file, c = i.get(t.tag) ?? [], l = new Set(h(t.source)), u = /* @__PURE__ */ new Map();
30
+ for (let e of t.targets ?? []) {
31
+ let t = u.get(e.table) ?? /* @__PURE__ */ new Set();
32
+ t.add(e.op), u.set(e.table, t);
33
+ }
34
+ for (let t of c) if (_(t.op)) {
35
+ let r = g[t.op], i = u.get(t.table);
36
+ if (i === void 0) n.push({
32
37
  rule: "observed/undeclared-write",
33
38
  node: e,
34
39
  ...s === void 0 ? {} : { file: s },
35
40
  breaks: [`writes '${t.table}' (${t.op}) but declares no target for it`, "subscriptions on that table are not invalidated by this mutation"],
36
- fix: `add { table: '${t.table}', op: '${t.op}' } to this procedure's targets`,
37
- severity: "warn"
38
- }) : r !== t.op && n.push({
39
- rule: "observed/wrong-op",
40
- node: e,
41
- ...s === void 0 ? {} : { file: s },
42
- breaks: [`declares op '${r}' on '${t.table}' but performed '${t.op}'`, "the synthesized optimistic patch has the wrong shape"],
43
- fix: `change the target op for '${t.table}' to '${t.op}'`,
41
+ fix: `add ${r.map((e) => v(t.table, e)).join(" and ")} to this procedure's targets`,
44
42
  severity: "warn"
45
43
  });
44
+ else {
45
+ let a = r.filter((e) => !i.has(e));
46
+ a.length > 0 && n.push({
47
+ rule: "observed/wrong-op",
48
+ node: e,
49
+ ...s === void 0 ? {} : { file: s },
50
+ breaks: [`declares ${[...i].map((e) => `'${e}'`).join(" + ")} on '${t.table}' but performed '${t.op}'`, "the synthesized optimistic patch has the wrong shape"],
51
+ fix: r.length > 1 ? `an upsert is both halves — declare ${r.map((e) => v(t.table, e)).join(" and ")}` : `change the target op for '${t.table}' to '${a[0]}'`,
52
+ severity: "warn"
53
+ });
54
+ }
46
55
  } else !l.has(t.table) && !u.has(t.table) && n.push({
47
56
  rule: "observed/undeclared-read",
48
57
  node: e,
@@ -82,7 +91,7 @@ var m = (e) => e === void 0 ? [] : typeof e == "string" ? [e] : e, h = /* @__PUR
82
91
  total: e.length
83
92
  }
84
93
  };
85
- }, _ = (e, n = [], r = 0) => {
94
+ }, b = (e, n = [], r = 0) => {
86
95
  if (r > 12) return n;
87
96
  let i;
88
97
  try {
@@ -106,24 +115,24 @@ var m = (e) => e === void 0 ? [] : typeof e == "string" ? [e] : e, h = /* @__PUR
106
115
  } catch {
107
116
  continue;
108
117
  }
109
- o.isDirectory() ? _(i, n, r + 1) : o.isFile() && t.test(a) && n.push(i);
118
+ o.isDirectory() ? b(i, n, r + 1) : o.isFile() && t.test(a) && n.push(i);
110
119
  }
111
120
  return n;
112
- }, v = /* @__PURE__ */ new Set(["actors", "tenants"]), y = async (e) => {
121
+ }, x = /* @__PURE__ */ new Set(["actors", "tenants"]), S = async (e) => {
113
122
  try {
114
123
  let { readFile: t } = await import("node:fs/promises"), { join: n } = await import("node:path"), r = await t(n(e, "app.graph.observed.generated.json"), "utf8"), i = JSON.parse(r);
115
124
  return i?.version !== 1 || !Array.isArray(i.edges) || !Array.isArray(i.exercised) ? null : i;
116
125
  } catch {
117
126
  return null;
118
127
  }
119
- }, b = (e) => {
128
+ }, C = (e) => {
120
129
  let { exercised: t, total: n } = e.coverage, r = `\nobserved: ${t}/${n} procedures exercised (${n === 0 ? 0 : Math.round(t / n * 100)}%)`;
121
130
  if (e.diagnostics.length === 0) return `${r}\n no declared/observed mismatches${e.unexercised.length > 0 ? `\n ${e.unexercised.length} unexercised — no recording, so nothing is claimed about them` : ""}`;
122
131
  let i = e.diagnostics.map((e) => ` ${e.node}${e.file === void 0 ? "" : ` (${e.file})`}\n` + e.breaks.map((e) => ` ${e}`).join("\n") + `\n fix: ${e.fix}`), a = e.unexercised.length > 0 ? `\n ${e.unexercised.length} unexercised — no recording, so nothing is claimed about them` : "";
123
132
  return `${r}\n${i.join("\n")}${a}`;
124
- }, x = (e, t) => ({
133
+ }, w = (e, t) => ({
125
134
  tables: (t.tables ?? []).map((e) => e.name),
126
- frameworkOwnedTables: (t.tables ?? []).filter((e) => e.framework === !0 || e.name.startsWith("_voltro_") || v.has(e.name)).map((e) => e.name),
135
+ frameworkOwnedTables: (t.tables ?? []).filter((e) => e.framework === !0 || e.name.startsWith("_voltro_") || x.has(e.name)).map((e) => e.name),
127
136
  scopes: e.scopes ?? [],
128
137
  procedures: (e.procedures ?? []).map((e) => {
129
138
  let t = (e.guards ?? []).flatMap((e) => e.kind === "scope" ? e.scope ?? [] : []), n = (e.guards ?? []).find((e) => e.kind === "open")?.reason;
@@ -134,14 +143,15 @@ var m = (e) => e === void 0 ? [] : typeof e == "string" ? [e] : e, h = /* @__PUR
134
143
  ...e.targets === void 0 ? {} : { targets: e.targets },
135
144
  ...t.length > 0 ? { requiresScopes: [...new Set(t)] } : {},
136
145
  ...e.guards === void 0 ? {} : { hasGuards: e.guards.some((e) => e.kind !== "open") },
137
- ...n === void 0 ? {} : { openAccess: n }
146
+ ...n === void 0 ? {} : { openAccess: n },
147
+ ...e.internal === !0 ? { internal: !0 } : {}
138
148
  };
139
149
  })
140
- }), S = (e) => e.length === 0 ? "✓ voltro check: no issues" : e.map((e) => {
150
+ }), T = (e) => e.length === 0 ? "✓ voltro check: no issues" : e.map((e) => {
141
151
  let t = e.severity === "error" ? "✗ error" : "⚠ warn", n = e.file ? ` (${e.file})` : "";
142
152
  return `${t} ${e.rule} ${e.node}${n}\n ${e.breaks.join("; ")}\n fix: ${e.fix}`;
143
- }).join("\n"), C = async (e) => {
144
- let { walk: t, loadDiscovered: n, loadApiConfig: r } = await import("./dev-BWwE0QjK.js"), { buildRpcEntry: i } = await import("./manifestBuild-j0n109tt.js"), { buildCapabilityManifest: a } = await import("./inspect-DUze25t0.js"), { relative: o } = await import("node:path"), s = await n(await t(e)), c = (t, n, r) => i(t, n, o(e, r)), l = [
153
+ }).join("\n"), E = async (e) => {
154
+ let { walk: t, loadDiscovered: n, loadApiConfig: r } = await import("./dev-CK522MV5.js"), { buildRpcEntry: i } = await import("./manifestBuild-CPjhvM62.js"), { buildCapabilityManifest: a } = await import("./inspect-CuGDYES0.js"), { relative: o } = await import("node:path"), s = await n(await t(e)), c = (t, n, r) => i(t, n, o(e, r)), l = [
145
155
  ...s.queries.map((e) => c(e.descriptor, "query", e.file)),
146
156
  ...s.mutations.map((e) => c(e.descriptor, "mutation", e.file)),
147
157
  ...s.actions.map((e) => c(e.descriptor, "action", e.file)),
@@ -157,31 +167,31 @@ var m = (e) => e === void 0 ? [] : typeof e == "string" ? [e] : e, h = /* @__PUR
157
167
  })), [], m),
158
168
  tables: { tables: p }
159
169
  };
160
- }, w = async (t) => {
170
+ }, D = async (t) => {
161
171
  let f = t.flatMap((e) => e === "--json" ? ["--format", "json"] : [e]), p = a(f);
162
172
  if ("error" in p) return console.error(`voltro check: ${p.error}`), 1;
163
- let { process: m, target: h, rest: v } = s(p.rest), w;
164
- for (let e = 0; e < v.length; e++) if (v[e] === "--diff") {
165
- let [t, n] = (v[++e] ?? "").split(":");
166
- if (t === "removeTable" && n) w = {
173
+ let { process: m, target: h, rest: g } = s(p.rest), _;
174
+ for (let e = 0; e < g.length; e++) if (g[e] === "--diff") {
175
+ let [t, n] = (g[++e] ?? "").split(":");
176
+ if (t === "removeTable" && n) _ = {
167
177
  kind: "removeTable",
168
178
  name: n
169
179
  };
170
- else if (t === "removeProcedure" && n) w = {
180
+ else if (t === "removeProcedure" && n) _ = {
171
181
  kind: "removeProcedure",
172
182
  tag: n
173
183
  };
174
- else if (t === "removeScope" && n) w = {
184
+ else if (t === "removeScope" && n) _ = {
175
185
  kind: "removeScope",
176
186
  name: n
177
187
  };
178
188
  else return console.error("voltro check --diff: expected removeTable:<name> | removeProcedure:<tag> | removeScope:<name>"), 1;
179
189
  }
180
- let T = e(v, ["--diff"]) ?? process.cwd(), E = v.includes("--offline"), D = E ? [] : await o(m, h), O, k;
190
+ let v = e(g, ["--diff"]) ?? process.cwd(), x = g.includes("--offline"), D = x ? [] : await o(m, h), O, k;
181
191
  if (D.length === 0) {
182
- if (!E && h !== void 0) return console.error("voltro check: --url given but no api reachable there."), 1;
192
+ if (!x && h !== void 0) return console.error("voltro check: --url given but no api reachable there."), 1;
183
193
  try {
184
- let e = await C(d(T));
194
+ let e = await E(d(v));
185
195
  O = e.manifest, k = e.tables;
186
196
  } catch (e) {
187
197
  return console.error(`voltro check: could not assemble the graph from source: ${e.message}`), console.error(" Start `voltro dev` to check against a running api instead."), 1;
@@ -191,21 +201,21 @@ var m = (e) => e === void 0 ? [] : typeof e == "string" ? [e] : e, h = /* @__PUR
191
201
  if (t.kind === "err") return console.error(`voltro check: manifest fetch failed: ${t.error}`), 1;
192
202
  O = t.data, k = n.kind === "ok" ? n.data : { tables: [] };
193
203
  }
194
- let A = x(O, k), j = r(A, w), M = [...l(T).findings.map((e) => ({
204
+ let A = w(O, k), j = r(A, _), M = [...l(v).findings.map((e) => ({
195
205
  rule: e.rule,
196
206
  node: e.file,
197
207
  file: e.file,
198
208
  breaks: [e.detail],
199
209
  fix: e.fix,
200
210
  severity: e.severity
201
- })), ...u(T).map((e) => ({
211
+ })), ...u(v).map((e) => ({
202
212
  rule: `page/${e.kind}`,
203
213
  node: e.file,
204
214
  file: e.file,
205
215
  breaks: [e.kind === "suffixed-outside-pages" ? "a page.tsx outside src/pages/ never routes" : "no test beside it"],
206
216
  fix: e.kind === "suffixed-outside-pages" ? "move it under src/pages/ into the directory whose route it serves, or rename it — page.tsx is reserved" : "write the test with the file — the name is derivable",
207
217
  severity: e.kind === "suffixed-outside-pages" ? "error" : "warn"
208
- }))], N = (await n(T, _(T))).map((e) => ({
218
+ }))], N = (await n(v, b(v))).map((e) => ({
209
219
  rule: "client/not-browser-safe",
210
220
  node: e.file,
211
221
  file: e.file,
@@ -216,7 +226,7 @@ var m = (e) => e === void 0 ? [] : typeof e == "string" ? [e] : e, h = /* @__PUR
216
226
  ...j.diagnostics,
217
227
  ...M,
218
228
  ...N
219
- ], F = j.ok && !M.some((e) => e.severity === "error") && N.length === 0, I = await y(d(T)), L = I === null ? null : g(A.procedures, I);
229
+ ], F = j.ok && !M.some((e) => e.severity === "error") && N.length === 0, I = await S(d(v)), L = I === null ? null : y(A.procedures, I);
220
230
  return p.format === "json" ? i(L === null ? {
221
231
  ...j,
222
232
  ok: F,
@@ -226,7 +236,7 @@ var m = (e) => e === void 0 ? [] : typeof e == "string" ? [e] : e, h = /* @__PUR
226
236
  ok: F,
227
237
  diagnostics: P,
228
238
  observed: L
229
- }) : (console.log(S(P)), L !== null && console.log(b(L)), console.log(F ? "\nvoltro check: OK" : "\nvoltro check: FAILED (errors above)")), +!F;
239
+ }) : (console.log(T(P)), L !== null && console.log(C(L)), console.log(F ? "\nvoltro check: OK" : "\nvoltro check: FAILED (errors above)")), +!F;
230
240
  };
231
241
  //#endregion
232
- export { w as n, x as r, C as t };
242
+ export { D as n, w as r, E as t };
@@ -1,5 +1,5 @@
1
- import { B as e, Sn as t, l as n, u as r, xn as i } from "./dev-1yu42ubu.js";
2
- import { dt as a } from "./webDev-B4IEMB0n.js";
1
+ import { B as e, Sn as t, l as n, u as r, xn as i } from "./dev-kdAg9Q7l.js";
2
+ import { ft as a } from "./webDev-B-ubQEMX.js";
3
3
  import { n as o } from "./frameworkTableAssembly-BwJVEKLr.js";
4
4
  import { i as s, r as c } from "./codegen-CrMXs4hb.js";
5
5
  import { basename as l, join as u, relative as d, resolve as f } from "node:path";