@voltro/cli 0.52.0 → 0.53.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/CHANGELOG.md +229 -0
- package/THIRD-PARTY-NOTICES.md +8311 -3318
- package/dist/{apiBuild-CSFI8QGq.js → apiBuild-CaPfoWku.js} +11 -5
- package/dist/apiBuild-DHtLXYx9.js +2 -0
- package/dist/bin.js +1 -1
- package/dist/build-D-OnvNMf.js +843 -0
- package/dist/{checkCommand-COmqc2cB.js → checkCommand-C5elt0tW.js} +6 -6
- package/dist/{checkCommand-2SbqzukH.js → checkCommand-D2ZduVlh.js} +1 -1
- package/dist/codegen-BWpt3VgF.js +2 -0
- package/dist/{codegen-VF479Cnb.js → codegen-FEk8AZHb.js} +2 -2
- package/dist/{codegenCommand-DCdG2JN-.js → codegenCommand-BOiWQ5hz.js} +4 -4
- package/dist/{codemodRunner-r7J9lIa7.js → codemodRunner-BjtB2lq6.js} +109 -11
- package/dist/{commands-Cc_nV8WI.js → commands-DyxAmhP0.js} +30 -30
- package/dist/{dashboardCommand-C-gKvwqh.js → dashboardCommand-BdKTyT13.js} +5 -5
- package/dist/{dataCommand-BgpBHnlB.js → dataCommand-Bab9X7s8.js} +2 -2
- package/dist/{dbCommand-sHedr-NJ.js → dbCommand-06O2finM.js} +277 -236
- package/dist/dbCommand-B1EXBC6f.js +2 -0
- package/dist/{dev-CRHoCEiy.js → dev-C6LGF4iY.js} +3006 -2426
- package/dist/{dev--A3nsxA3.js → dev-GjJWAYo2.js} +1 -1
- package/dist/doctorCommand-B0hX0tdz.js +2 -0
- package/dist/{doctorCommand-DtfJ3FA6.js → doctorCommand-etMkflRc.js} +101 -69
- package/dist/{dormancyCommand-Drn7o0No.js → dormancyCommand-UwZ1AZzB.js} +1 -1
- package/dist/{embeddingsCommand-Z-jO1fWN.js → embeddingsCommand-C70zWHwo.js} +1 -1
- package/dist/{envCommand-D4gCrrTZ.js → envCommand-dSyKvRkM.js} +18 -18
- package/dist/{evolveCommand-CMROeKeA.js → evolveCommand-CG0_ebO5.js} +2 -2
- package/dist/fileConventions-DASGEmj-.js +35 -0
- package/dist/{fileTaxonomy-DvDUV9wq.js → fileTaxonomy-B7uxipWS.js} +55 -55
- package/dist/fontPipeline-LxIHa1vo.js +2 -0
- package/dist/fontPipeline-Tsh8kZfA.js +152 -0
- package/dist/frameworkTableAssembly-C_7Z-rMs.js +2 -0
- package/dist/{frameworkTableAssembly-w-XnLa3q.js → frameworkTableAssembly-DKx3ba3S.js} +5 -5
- package/dist/imagePipeline-B_GVJgm6.js +2 -0
- package/dist/imagePipeline-CBZmjT4i.js +127 -0
- package/dist/index.js +1 -1
- package/dist/{infoCommand-DXM868o_.js → infoCommand-_53iOc_j.js} +1 -1
- package/dist/{inspect-CtL_xTbu.js → inspect-Bd8-9wsi.js} +1 -1
- package/dist/inspect-CuoDInfZ.js +2 -0
- package/dist/{inspectGateHint-BjnFubmH.js → inspectGateHint-4LxkNtrz.js} +1 -1
- package/dist/manifestBuild-C4-J1-m_.js +2 -0
- package/dist/{manifestBuild-CuU1VrSm.js → manifestBuild-Cqgsx2bM.js} +1 -1
- package/dist/{metaCommands-C6RFmF1r.js → metaCommands-Cn2oboG4.js} +8 -2
- package/dist/{migrate-D0F-eTlK.js → migrate-Cko9rswM.js} +2 -2
- package/dist/{pageConvention-CzUiSbtU.js → pageConvention-C938S8oC.js} +1 -1
- package/dist/{privacyCommand-DGdopOI6.js → privacyCommand-DWTQMC6R.js} +2 -2
- package/dist/{probeCommand-C9gazU0H.js → probeCommand-DkGGLknv.js} +83 -24
- package/dist/{renderModeScan-CcH2X1_D.js → renderModeScan-CUbOeOAg.js} +3 -1
- package/dist/{renderProfile-Ck32Fzxr.js → renderProfile-CskIgAfn.js} +2 -2
- package/dist/{runtimeTrace-BPQyCmC5.js → runtimeTrace-c0APJz7E.js} +1 -1
- package/dist/{sdkgen-Se88ifTd.js → sdkgen-BiQCgIEr.js} +1 -1
- package/dist/{serveCommand-DkP3OT0W.js → serveCommand-CueKQgzl.js} +869 -805
- package/dist/serveCommand-DsnrVN3U.js +2 -0
- package/dist/serveEntry.js +1 -1
- package/dist/start-BJzZLbt8.js +3 -0
- package/dist/start-ekPan8BT.js +1510 -0
- package/dist/startEntry.js +1 -1
- package/dist/{staticCommand-BwNEDlSU.js → staticCommand-xlSL-IWk.js} +1 -1
- package/dist/{test-f3amja6a.js → test-BWPQcRoB.js} +1 -1
- package/dist/updateCommand-Bqql_rsQ.js +2 -0
- package/dist/{updateCommand-BMk2e4ky.js → updateCommand-C_8I8Rzo.js} +139 -115
- package/dist/webDev-C7jWJ5dX.js +2 -0
- package/dist/{webDev-BgWL9gKV.js → webDev-oczpugbx.js} +1455 -922
- package/dist/{webhooksCommand-CoIO3jbj.js → webhooksCommand-4SVPDjKg.js} +1 -1
- package/package.json +60 -19
- package/templates/AGENTS.md +5 -3
- package/templates/agent-docs/_index.md +5 -3
- package/templates/agent-docs/_manifest.json +20 -4
- package/templates/agent-docs/ai.md +2 -2
- package/templates/agent-docs/authentication.md +1 -1
- package/templates/agent-docs/cli.md +2 -2
- package/templates/agent-docs/configuration.md +17 -0
- package/templates/agent-docs/data.md +470 -26
- package/templates/agent-docs/database/advancedqueries.md +7 -7
- package/templates/agent-docs/database/columntypes.md +2 -2
- package/templates/agent-docs/database/querying.md +1 -1
- package/templates/agent-docs/database/schema.md +1 -1
- package/templates/agent-docs/database/seedsdialects.md +1 -1
- package/templates/agent-docs/database/transactions.md +3 -3
- package/templates/agent-docs/deployment.md +8 -0
- package/templates/agent-docs/internationalization.md +2 -2
- package/templates/agent-docs/introduction.md +7 -1
- package/templates/agent-docs/local-first-mobile.md +102 -4
- package/templates/agent-docs/observability.md +2 -0
- package/templates/agent-docs/plugins/auth.md +1 -1
- package/templates/agent-docs/plugins/comments.md +142 -0
- package/templates/agent-docs/plugins/notifications.md +47 -4
- package/templates/agent-docs/plugins/presence.md +16 -3
- package/templates/agent-docs/plugins/prometheus.md +1 -1
- package/templates/agent-docs/plugins/queue.md +129 -0
- package/templates/agent-docs/plugins.md +11 -7
- package/templates/agent-docs/reference.md +16 -4
- package/templates/agent-docs/routing.md +527 -3
- package/templates/agent-docs/schema-driven-ui.md +214 -3
- package/templates/agent-docs/security.md +3 -3
- package/templates/agent-docs/whats-new.md +160 -66
- package/templates/apps/api-ai/package.json +6 -6
- package/templates/apps/api-auth/package.json +8 -8
- package/templates/apps/api-backend/package.json +7 -7
- package/templates/apps/api-backend-deactivation/package.json +7 -7
- package/templates/apps/api-backend-mail/package.json +8 -8
- package/templates/apps/api-backend-mariadb/package.json +9 -9
- package/templates/apps/api-backend-sqlite/package.json +8 -8
- package/templates/apps/api-backend-storage/package.json +8 -8
- package/templates/apps/api-cms/package.json +9 -9
- package/templates/apps/api-collab/package.json +8 -8
- package/templates/apps/api-data-advanced/package.json +8 -8
- package/templates/apps/api-durable/package.json +8 -8
- package/templates/apps/api-feature-flags/package.json +9 -9
- package/templates/apps/api-governance/package.json +8 -8
- package/templates/apps/api-kv/package.json +8 -8
- package/templates/apps/api-moderation/package.json +8 -8
- package/templates/apps/api-observability/package.json +8 -8
- package/templates/apps/api-ratelimit/package.json +8 -8
- package/templates/apps/api-rbac/package.json +8 -8
- package/templates/apps/api-rest/package.json +7 -7
- package/templates/apps/api-row-history/package.json +8 -8
- package/templates/apps/api-saas/package.json +10 -10
- package/templates/apps/api-saas-starter/package.json +10 -10
- package/templates/apps/api-search/package.json +8 -8
- package/templates/apps/api-status/package.json +8 -8
- package/templates/apps/api-webhooks/package.json +9 -9
- package/templates/apps/changelog/app.config.ts +26 -2
- package/templates/apps/changelog/content/releases/{0.1.0.mdx → v0-1-0.mdx} +0 -1
- package/templates/apps/changelog/content/releases/{0.2.0.mdx → v0-2-0.mdx} +0 -1
- package/templates/apps/changelog/package.json +8 -8
- package/templates/apps/changelog/src/collections/releases.collection.ts +48 -0
- package/templates/apps/changelog/src/globals.d.ts +1 -1
- package/templates/apps/changelog/src/locales/de.ts +1 -1
- package/templates/apps/changelog/src/locales/en.ts +1 -1
- package/templates/apps/changelog/src/pages/[locale]/[slug]/page.tsx +7 -4
- package/templates/apps/changelog/src/pages/[locale]/mirrors.test.tsx +13 -41
- package/templates/apps/changelog/src/pages/[slug]/page.test.tsx +26 -51
- package/templates/apps/changelog/src/pages/[slug]/page.tsx +21 -19
- package/templates/apps/changelog/src/pages/page.test.tsx +14 -37
- package/templates/apps/changelog/src/pages/page.tsx +18 -12
- package/templates/apps/edge-functions/package.json +2 -2
- package/templates/apps/frontend-admin/package.json +8 -8
- package/templates/apps/frontend-app/package.json +9 -9
- package/templates/apps/frontend-auth/package.json +8 -8
- package/templates/apps/frontend-blank/package.json +7 -7
- package/templates/apps/frontend-cms/package.json +9 -9
- package/templates/apps/frontend-collab/package.json +10 -10
- package/templates/apps/frontend-contact/package.json +7 -7
- package/templates/apps/frontend-dashboard/package.json +7 -7
- package/templates/apps/frontend-docs/content/docs/de/guides/first-page.md +4 -0
- package/templates/apps/frontend-docs/content/docs/de/intro/getting-started.md +4 -0
- package/templates/apps/frontend-docs/content/docs/en/guides/first-page.md +4 -0
- package/templates/apps/frontend-docs/content/docs/en/intro/getting-started.md +4 -0
- package/templates/apps/frontend-docs/package.json +8 -6
- package/templates/apps/frontend-docs/src/collections/docs.collection.ts +21 -0
- package/templates/apps/frontend-docs/src/locales/de.ts +0 -5
- package/templates/apps/frontend-docs/src/locales/en.ts +0 -5
- package/templates/apps/frontend-docs/src/pages/[locale]/docs/[...slug]/page.tsx +17 -9
- package/templates/apps/frontend-docs/src/pages/[locale]/mirrors.test.tsx +10 -5
- package/templates/apps/frontend-docs/src/pages/[locale]/page.tsx +8 -0
- package/templates/apps/frontend-docs/src/pages/docs/[...slug]/page.test.tsx +53 -15
- package/templates/apps/frontend-docs/src/pages/docs/[...slug]/page.tsx +27 -33
- package/templates/apps/frontend-docs/src/pages/page.test.tsx +17 -3
- package/templates/apps/frontend-docs/src/pages/page.tsx +16 -12
- package/templates/apps/frontend-i18n/package.json +6 -6
- package/templates/apps/frontend-landing/package.json +6 -6
- package/templates/apps/frontend-portal/package.json +8 -8
- package/templates/apps/frontend-saas/package.json +8 -8
- package/templates/apps/frontend-spa/package.json +7 -7
- package/templates/apps/frontend-ssr/package.json +7 -7
- package/templates/apps/frontend-ssr-api/package.json +8 -8
- package/templates/apps/frontend-static-blog/content/posts/cms-to-ssg.md +12 -0
- package/templates/apps/frontend-static-blog/content/posts/hello-static.md +12 -0
- package/templates/apps/frontend-static-blog/content/posts/islands-not-hydration.md +14 -0
- package/templates/apps/frontend-static-blog/package.json +8 -6
- package/templates/apps/frontend-static-blog/src/collections/posts.collection.ts +27 -0
- package/templates/apps/frontend-static-blog/src/pages/[locale]/blog/[slug]/page.tsx +7 -4
- package/templates/apps/frontend-static-blog/src/pages/[locale]/mirrors.test.tsx +7 -1
- package/templates/apps/frontend-static-blog/src/pages/blog/[slug]/page.test.tsx +19 -9
- package/templates/apps/frontend-static-blog/src/pages/blog/[slug]/page.tsx +19 -21
- package/templates/apps/frontend-static-blog/src/pages/page.test.tsx +18 -5
- package/templates/apps/frontend-static-blog/src/pages/page.tsx +21 -14
- package/templates/apps/frontend-status/package.json +8 -8
- package/templates/apps/mobile-app/package.json +4 -4
- package/dist/apiBuild-BYBpL7Pz.js +0 -2
- package/dist/build-CPgcMQug.js +0 -793
- package/dist/codegen-CctkDO-1.js +0 -2
- package/dist/dbCommand-DNb6yeOG.js +0 -2
- package/dist/doctorCommand-CqoWA2p5.js +0 -2
- package/dist/fileConventions-DOqD3lPS.js +0 -34
- package/dist/frameworkTableAssembly-C6ETawPR.js +0 -2
- package/dist/inspect-CuGDYES0.js +0 -2
- package/dist/manifestBuild-CPjhvM62.js +0 -2
- package/dist/serveCommand-DLc-BznW.js +0 -2
- package/dist/start-DfL3fOiN.js +0 -3
- package/dist/start-jw89Xbqy.js +0 -1339
- package/dist/updateCommand-5gFVfK5q.js +0 -2
- package/dist/webDev-CZbTsDcH.js +0 -2
- package/templates/apps/changelog/scripts/generate-rss.mjs +0 -38
- package/templates/apps/changelog/src/lib/releases.ts +0 -21
- package/templates/apps/frontend-static-blog/src/content/posts.ts +0 -64
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { c as e, d as t, f as n, i as r, p as i, u as a } from "./dev-
|
|
1
|
+
import { c as e, d as t, f as n, i as r, p as i, u as a } from "./dev-C6LGF4iY.js";
|
|
2
2
|
import "./dialectDriver-czCHYpeH.js";
|
|
3
3
|
export { r as buildStore, e as loadApiConfig, a as loadDiscovered, t as mergePluginRoutesInto, n as runDev, i as walk };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Ht as e, Ut as t, Wt as n } from "./dev-
|
|
2
|
-
import {
|
|
3
|
-
import { x as d } from "./frameworkTableAssembly-
|
|
4
|
-
import { n as f } from "./pageConvention-
|
|
5
|
-
import { r as p, u as m } from "./apiBuild-
|
|
1
|
+
import { Ht as e, Ut as t, Wt as n } from "./dev-C6LGF4iY.js";
|
|
2
|
+
import { Ft as r, It as i, Nt as a, P as o, Pt as s, l as c, t as l, x as u } from "./webDev-oczpugbx.js";
|
|
3
|
+
import { x as d } from "./frameworkTableAssembly-DKx3ba3S.js";
|
|
4
|
+
import { n as f } from "./pageConvention-C938S8oC.js";
|
|
5
|
+
import { r as p, u as m } from "./apiBuild-CaPfoWku.js";
|
|
6
6
|
import { n as h, r as g, t as ee } from "./cliOutput-D1tSBoRM.js";
|
|
7
7
|
import { n as _, t as te } from "./tsconfigPaths-BWXBWgcl.js";
|
|
8
|
-
import { n as ne, r as re } from "./fileTaxonomy-
|
|
8
|
+
import { n as ne, r as re } from "./fileTaxonomy-B7uxipWS.js";
|
|
9
9
|
import { basename as ie, dirname as ae, join as v, relative as y, resolve as b, sep as x } from "node:path";
|
|
10
10
|
import { existsSync as S, readFileSync as C, readdirSync as w, statSync as T, writeFileSync as oe } from "node:fs";
|
|
11
11
|
import { pathToFileURL as se } from "node:url";
|
|
@@ -496,12 +496,12 @@ var le = /* @__PURE__ */ new Set([
|
|
|
496
496
|
}, Ge = (e, t) => {
|
|
497
497
|
let n = ["middleware.ts", "middleware.tsx"].find((t) => S(v(e, t)));
|
|
498
498
|
if (n === void 0) return;
|
|
499
|
-
let
|
|
499
|
+
let r = new D({
|
|
500
500
|
useInMemoryFileSystem: !0,
|
|
501
501
|
skipAddingFilesFromTsConfig: !0
|
|
502
|
-
}),
|
|
502
|
+
}), i;
|
|
503
503
|
try {
|
|
504
|
-
|
|
504
|
+
i = r.createSourceFile(n, C(v(e, n), "utf8"));
|
|
505
505
|
} catch {
|
|
506
506
|
return {
|
|
507
507
|
problems: [],
|
|
@@ -510,8 +510,8 @@ var le = /* @__PURE__ */ new Set([
|
|
|
510
510
|
file: n
|
|
511
511
|
};
|
|
512
512
|
}
|
|
513
|
-
let
|
|
514
|
-
for (let e of
|
|
513
|
+
let a = [], s = [], c = 0;
|
|
514
|
+
for (let e of i.getVariableDeclarations()) {
|
|
515
515
|
let t = e.getInitializerIfKind(O.CallExpression);
|
|
516
516
|
if (t?.getExpression().getText() !== "defineMiddleware") continue;
|
|
517
517
|
c += 1;
|
|
@@ -525,7 +525,7 @@ var le = /* @__PURE__ */ new Set([
|
|
|
525
525
|
s.push(n);
|
|
526
526
|
continue;
|
|
527
527
|
}
|
|
528
|
-
|
|
528
|
+
a.push({
|
|
529
529
|
exportName: n,
|
|
530
530
|
middleware: {
|
|
531
531
|
_tag: "VoltroMiddleware",
|
|
@@ -535,7 +535,7 @@ var le = /* @__PURE__ */ new Set([
|
|
|
535
535
|
});
|
|
536
536
|
}
|
|
537
537
|
return {
|
|
538
|
-
problems:
|
|
538
|
+
problems: o(a, t).map((e) => e.message),
|
|
539
539
|
unreadable: s,
|
|
540
540
|
seen: c,
|
|
541
541
|
file: n
|
|
@@ -1296,21 +1296,21 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1296
1296
|
}, B = async (e) => {
|
|
1297
1297
|
let t = v(e, "src", "pages");
|
|
1298
1298
|
if (!S(t)) return [];
|
|
1299
|
-
let { pages: n, dirs: r } = await
|
|
1299
|
+
let { pages: n, dirs: r } = await u(t), i = [];
|
|
1300
1300
|
for (let a of n) {
|
|
1301
|
-
if (!
|
|
1301
|
+
if (!c(r, a.dirChain).some((e) => e.hasLayout)) continue;
|
|
1302
1302
|
let n;
|
|
1303
1303
|
try {
|
|
1304
1304
|
n = C(v(t, a.file), "utf8");
|
|
1305
1305
|
} catch {
|
|
1306
1306
|
continue;
|
|
1307
1307
|
}
|
|
1308
|
-
if (
|
|
1309
|
-
let
|
|
1310
|
-
|
|
1308
|
+
if (l.test(n)) continue;
|
|
1309
|
+
let o = Wt(n);
|
|
1310
|
+
o !== null && i.push({
|
|
1311
1311
|
file: y(e, v(t, a.file)),
|
|
1312
1312
|
pattern: a.pattern,
|
|
1313
|
-
currentMode:
|
|
1313
|
+
currentMode: o
|
|
1314
1314
|
});
|
|
1315
1315
|
}
|
|
1316
1316
|
return i;
|
|
@@ -1427,7 +1427,7 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1427
1427
|
let t = en.get(e);
|
|
1428
1428
|
if (t !== void 0) return t;
|
|
1429
1429
|
let n = (async () => {
|
|
1430
|
-
let { walk: t, loadDiscovered: n } = await import("./dev
|
|
1430
|
+
let { walk: t, loadDiscovered: n } = await import("./dev-GjJWAYo2.js"), r = await t(e);
|
|
1431
1431
|
return {
|
|
1432
1432
|
files: r,
|
|
1433
1433
|
discovered: await n(r)
|
|
@@ -1552,7 +1552,7 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1552
1552
|
}
|
|
1553
1553
|
}, J = async (r) => {
|
|
1554
1554
|
try {
|
|
1555
|
-
let { loadApiConfig: i } = await import("./dev
|
|
1555
|
+
let { loadApiConfig: i } = await import("./dev-GjJWAYo2.js"), { discovered: a } = await U(r), o = t(await i(r)), s = {
|
|
1556
1556
|
queries: a.queries,
|
|
1557
1557
|
mutations: a.mutations,
|
|
1558
1558
|
actions: a.actions,
|
|
@@ -1636,7 +1636,7 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1636
1636
|
}, pn = async (e) => ut({
|
|
1637
1637
|
hasWorkflows: async () => (await U(e)).discovered.workflows.length > 0,
|
|
1638
1638
|
openStore: async () => {
|
|
1639
|
-
let { loadApiConfig: t, buildStore: n } = await import("./dev
|
|
1639
|
+
let { loadApiConfig: t, buildStore: n } = await import("./dev-GjJWAYo2.js"), r = await t(e);
|
|
1640
1640
|
if (r === null) throw Error("no app.config.ts in this directory");
|
|
1641
1641
|
let i = await n(r, void 0);
|
|
1642
1642
|
return {
|
|
@@ -1716,7 +1716,7 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1716
1716
|
}
|
|
1717
1717
|
}, yn = async (e) => {
|
|
1718
1718
|
try {
|
|
1719
|
-
let { loadApiConfig: t } = await import("./dev
|
|
1719
|
+
let { loadApiConfig: t } = await import("./dev-GjJWAYo2.js"), n = (await t(e))?.doctor?.scopeVocabulary;
|
|
1720
1720
|
if (typeof n != "string") return [];
|
|
1721
1721
|
let [r, i] = n.split("#");
|
|
1722
1722
|
if (r === void 0 || i === void 0) return [];
|
|
@@ -1733,10 +1733,10 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1733
1733
|
findings: []
|
|
1734
1734
|
});
|
|
1735
1735
|
try {
|
|
1736
|
-
let { offlineManifest: n, toInput: r } = await import("./checkCommand-
|
|
1736
|
+
let { offlineManifest: n, toInput: r } = await import("./checkCommand-D2ZduVlh.js"), { buildAppGraph: i, checkAppGraph: a } = await import("./appGraph-CFmFKHb2.js"), o = await n(e), s = r(o.manifest, o.tables), c = await yn(e), l = [.../* @__PURE__ */ new Set([...s.scopes ?? [], ...c])];
|
|
1737
1737
|
if (l.length === 0) {
|
|
1738
1738
|
try {
|
|
1739
|
-
let { loadAppSchemaInputs: t } = await import("./frameworkTableAssembly-
|
|
1739
|
+
let { loadAppSchemaInputs: t } = await import("./frameworkTableAssembly-C_7Z-rMs.js");
|
|
1740
1740
|
await t(e);
|
|
1741
1741
|
} catch {
|
|
1742
1742
|
return t("app-not-importable");
|
|
@@ -1787,7 +1787,7 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1787
1787
|
if (n === void 0 || r.length === 0) return;
|
|
1788
1788
|
let i = [];
|
|
1789
1789
|
try {
|
|
1790
|
-
let { loadApiConfig: t } = await import("./dev
|
|
1790
|
+
let { loadApiConfig: t } = await import("./dev-GjJWAYo2.js");
|
|
1791
1791
|
i = (await t(e))?.locales ?? [];
|
|
1792
1792
|
} catch {
|
|
1793
1793
|
return;
|
|
@@ -1801,11 +1801,42 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1801
1801
|
for (let e of Ue(a, n)) console.log(e);
|
|
1802
1802
|
}
|
|
1803
1803
|
}, Sn = async (e) => {
|
|
1804
|
+
let t = v(e, "src");
|
|
1805
|
+
if (!S(t)) return;
|
|
1806
|
+
let n = !1, r = (e) => {
|
|
1807
|
+
for (let t of w(e, { withFileTypes: !0 })) {
|
|
1808
|
+
if (n) return;
|
|
1809
|
+
if (t.isDirectory()) t.name.startsWith(".") || r(v(e, t.name));
|
|
1810
|
+
else if (/\.(tsx?|jsx?|mdx?)$/.test(t.name)) try {
|
|
1811
|
+
C(v(e, t.name), "utf8").includes("?image") && (n = !0);
|
|
1812
|
+
} catch {}
|
|
1813
|
+
}
|
|
1814
|
+
};
|
|
1815
|
+
if (r(t), !n) return;
|
|
1816
|
+
let { loadSharp: i, sharpUnavailableReason: a } = await import("./imagePipeline-B_GVJgm6.js"), o = await i();
|
|
1817
|
+
if (console.log(""), o !== null) {
|
|
1818
|
+
console.log("image pipeline: sharp is available — ?image imports get srcSet variants + blur.");
|
|
1819
|
+
return;
|
|
1820
|
+
}
|
|
1821
|
+
a()?.reason === "binary-missing" ? (console.log("image pipeline: sharp is INSTALLED but its platform binary is missing —"), console.log(" an install that omitted optional dependencies drops the @img/* prebuilds."), console.log(" Fix: reinstall without omitting optional deps, or `pnpm add -D sharp` in this app.")) : (console.log("image pipeline: sharp is NOT installed — ?image imports serve originals (no srcSet, no blur)."), console.log(" Fix: `pnpm add -D sharp` in this app (it is an optional dependency of @voltro/cli;"), console.log(" your installer skipped optional dependencies)."));
|
|
1822
|
+
}, Cn = async (e) => {
|
|
1823
|
+
try {
|
|
1824
|
+
let { loadConfig: t } = await import("./webDev-C7jWJ5dX.js"), n = (await t(e, { preferSource: !0 }))?.fonts;
|
|
1825
|
+
if (n === void 0 || n.length === 0) return;
|
|
1826
|
+
let { loadFontkit: r, loadSubsetFont: i } = await import("./fontPipeline-LxIHa1vo.js"), a = [];
|
|
1827
|
+
if (await r() === null && a.push("fontkit (size-adjust fallback metrics — the CLS guard — are skipped)"), await i() === null && a.push("subset-font (declared `subsets:` ship the full files)"), console.log(""), a.length === 0) {
|
|
1828
|
+
console.log("font pipeline: fontkit + subset-font available — declared fonts get metrics + subsetting.");
|
|
1829
|
+
return;
|
|
1830
|
+
}
|
|
1831
|
+
for (let e of a) console.log(`font pipeline: ${e}`);
|
|
1832
|
+
console.log(" Fix: reinstall without omitting optional deps, or `pnpm add -D fontkit subset-font` in this app.");
|
|
1833
|
+
} catch {}
|
|
1834
|
+
}, wn = async (e) => {
|
|
1804
1835
|
let t = v(e, "src", "pages");
|
|
1805
1836
|
if (!S(t)) return !1;
|
|
1806
1837
|
let n = [];
|
|
1807
1838
|
try {
|
|
1808
|
-
let { walkPagesTree: e } = await import("./webDev-
|
|
1839
|
+
let { walkPagesTree: e } = await import("./webDev-C7jWJ5dX.js");
|
|
1809
1840
|
n = (await e(t)).pages.map((e) => e.pattern);
|
|
1810
1841
|
} catch {
|
|
1811
1842
|
return !1;
|
|
@@ -1815,10 +1846,10 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1815
1846
|
console.log("");
|
|
1816
1847
|
for (let e of Ke(r)) console.log(e);
|
|
1817
1848
|
return r.problems.length > 0;
|
|
1818
|
-
},
|
|
1849
|
+
}, Tn = async (e) => {
|
|
1819
1850
|
let { discovered: t } = await U(e), n = [];
|
|
1820
1851
|
try {
|
|
1821
|
-
let { loadApiConfig: t } = await import("./dev
|
|
1852
|
+
let { loadApiConfig: t } = await import("./dev-GjJWAYo2.js");
|
|
1822
1853
|
n = ((await t(e))?.plugins ?? []).map((e) => {
|
|
1823
1854
|
let t = (e.extendSchema?.tables ?? []).map((e) => {
|
|
1824
1855
|
let t = e;
|
|
@@ -1831,8 +1862,8 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1831
1862
|
plugin: e.name,
|
|
1832
1863
|
tables: t,
|
|
1833
1864
|
rpcTags: n,
|
|
1834
|
-
canDisableTables:
|
|
1835
|
-
canAlias:
|
|
1865
|
+
canDisableTables: En.has(r),
|
|
1866
|
+
canAlias: Dn.has(r)
|
|
1836
1867
|
};
|
|
1837
1868
|
});
|
|
1838
1869
|
} catch {
|
|
@@ -1850,16 +1881,17 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1850
1881
|
});
|
|
1851
1882
|
console.log();
|
|
1852
1883
|
for (let e of lt(n, i)) console.log(e);
|
|
1853
|
-
},
|
|
1884
|
+
}, En = /* @__PURE__ */ new Set([
|
|
1854
1885
|
"@voltro/plugin-rbac",
|
|
1855
1886
|
"@voltro/plugin-audit",
|
|
1856
1887
|
"@voltro/plugin-notifications",
|
|
1857
1888
|
"aiFlows"
|
|
1858
|
-
]),
|
|
1889
|
+
]), Dn = /* @__PURE__ */ new Set([
|
|
1859
1890
|
"aiFlows",
|
|
1860
1891
|
"@voltro/plugin-audit",
|
|
1861
1892
|
"@voltro/plugin-billing",
|
|
1862
1893
|
"@voltro/plugin-cdc-out",
|
|
1894
|
+
"@voltro/plugin-comments",
|
|
1863
1895
|
"@voltro/plugin-flags",
|
|
1864
1896
|
"@voltro/plugin-governance",
|
|
1865
1897
|
"@voltro/plugin-mail",
|
|
@@ -1872,8 +1904,8 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1872
1904
|
"@voltro/plugin-sso-saml",
|
|
1873
1905
|
"@voltro/plugin-storage",
|
|
1874
1906
|
"@voltro/plugin-row-history"
|
|
1875
|
-
]), $ = 20,
|
|
1876
|
-
let t = await
|
|
1907
|
+
]), $ = 20, On = async (e) => {
|
|
1908
|
+
let t = await kn(e), n = new Set(t.reviewed.map((e) => e.tag)), r = t.result.findings.filter((e) => e.verdict.kind === "allowlisted" && !n.has(e.tag)).length;
|
|
1877
1909
|
return {
|
|
1878
1910
|
executors: t.executorCount,
|
|
1879
1911
|
guardVocabulary: [...t.vocabulary].sort(),
|
|
@@ -1885,7 +1917,7 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1885
1917
|
},
|
|
1886
1918
|
unchecked: t.result.unchecked
|
|
1887
1919
|
};
|
|
1888
|
-
},
|
|
1920
|
+
}, kn = async (e) => {
|
|
1889
1921
|
let { discovered: t } = await U(e), n = /* @__PURE__ */ new Map(), r = (e) => {
|
|
1890
1922
|
if (!n.has(e)) try {
|
|
1891
1923
|
n.set(e, C(e, "utf8"));
|
|
@@ -1947,8 +1979,8 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1947
1979
|
executorCount: o.length,
|
|
1948
1980
|
allowPath: s
|
|
1949
1981
|
};
|
|
1950
|
-
},
|
|
1951
|
-
let { result: n, vocabulary: r, existing: i, reviewed: a, executorCount: o, allowPath: s, rowFilterRegistered: c } = await
|
|
1982
|
+
}, An = async (e, t) => {
|
|
1983
|
+
let { result: n, vocabulary: r, existing: i, reviewed: a, executorCount: o, allowPath: s, rowFilterRegistered: c } = await kn(e), l = n.counts;
|
|
1952
1984
|
console.log(`\nauthz scan · ${o} executor(s)`);
|
|
1953
1985
|
let u = [...r].filter((e) => !Je.has(e)).sort();
|
|
1954
1986
|
console.log(u.length === 0 ? " guard vocabulary: framework names only — no exported require*/assert* found in this app" : ` guard vocabulary: ${u.length} from your source (${u.slice(0, 6).join(", ")}${u.length > 6 ? ", …" : ""})`), console.log(` ✗ no access check ${String(l.unchecked).padStart(4)}`), console.log(` ⚠ inline ownership check, no named guard${String(l.inlineOwnership).padStart(4)} (informational)`), console.log(` ✓ guards: on the descriptor ${String(l.declaredGuard).padStart(4)}`), console.log(` ✓ calls a guard from the vocabulary ${String(l.vocabularyGuard).padStart(4)}`);
|
|
@@ -1961,9 +1993,9 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1961
1993
|
console.log("");
|
|
1962
1994
|
for (let e of n.unchecked.slice(0, $)) console.log(` ✗ ${e.tag} — ${e.why}\n ${e.path}`);
|
|
1963
1995
|
return n.unchecked.length > $ && console.log(` … and ${n.unchecked.length - $} more — \`voltro doctor --json\` prints every one (\`authz.unchecked\`).`), i === void 0 ? (console.log(`\nNo ${X} yet, so this run is advisory. To start the ratchet:`), console.log("\n voltro doctor --write-authz-allowlist\n"), console.log("That records today's unchecked handlers as DEBT and fails every run after on"), console.log("anything NEW. Fix a handler and its line stops mattering — the scan reports it as"), console.log("guarded whether or not the line is still there."), !1) : (console.log(`\n${n.unchecked.length} executor(s) with no access check are not in ${X}.`), console.log("Add a guard, or add the tag to that file if it is genuinely open."), console.log("\nBefore hand-rolling another check: `guards: [{ action, resourceType, resource }]`"), console.log("answers \"may this subject act on THIS row\" declaratively, and an app whose"), console.log("relationships live in its own tables registers its own tuple source rather than"), console.log("copying data into a framework table. See the authorization docs."), !0);
|
|
1964
|
-
},
|
|
1996
|
+
}, jn = async (e) => {
|
|
1965
1997
|
try {
|
|
1966
|
-
let { loadApiConfig: t } = await import("./dev
|
|
1998
|
+
let { loadApiConfig: t } = await import("./dev-GjJWAYo2.js"), { decidedSchemaReport: n } = await import("./doctorDecidedSchema-BlbWgCD_.js"), r = await t(e);
|
|
1967
1999
|
return r == null ? null : n({
|
|
1968
2000
|
...r.schema ? { declared: r.schema } : {},
|
|
1969
2001
|
...r.store === void 0 ? {} : { store: r.store },
|
|
@@ -1972,42 +2004,42 @@ var le = /* @__PURE__ */ new Set([
|
|
|
1972
2004
|
} catch {
|
|
1973
2005
|
return null;
|
|
1974
2006
|
}
|
|
1975
|
-
},
|
|
1976
|
-
let t = await
|
|
2007
|
+
}, Mn = async (e) => {
|
|
2008
|
+
let t = await jn(e);
|
|
1977
2009
|
if (t !== null) {
|
|
1978
2010
|
console.log(""), console.log("• framework tables whose presence is DECIDED rather than implied by your source tree:");
|
|
1979
2011
|
for (let e of t.text.split("\n")) console.log(` ${e}`);
|
|
1980
2012
|
}
|
|
1981
|
-
},
|
|
2013
|
+
}, Nn = async (e) => {
|
|
1982
2014
|
if (e.includes("--help") || e.includes("-h")) return console.log($t), 0;
|
|
1983
|
-
let t = e.includes("--strict"), n = e.find((e) => !e.startsWith("-")),
|
|
2015
|
+
let t = e.includes("--strict"), n = e.find((e) => !e.startsWith("-")), o = b(n ?? process.cwd());
|
|
1984
2016
|
if (g(e)) return ee(), h({
|
|
1985
|
-
...z(
|
|
1986
|
-
spaCandidates: await B(
|
|
1987
|
-
pageConvention: V(
|
|
1988
|
-
fileTaxonomy: re(
|
|
1989
|
-
junctionFks: (await W(
|
|
1990
|
-
eventDelivery: await G(
|
|
1991
|
-
duplicateInstances:
|
|
1992
|
-
versionSkew:
|
|
1993
|
-
serverOnly: (await q(
|
|
1994
|
-
accessDecisions: await J(
|
|
1995
|
-
webhookVerification: await Y(
|
|
1996
|
-
authz: await
|
|
1997
|
-
ungrantedScopes: await Q(
|
|
1998
|
-
neverEmittedEvents: await Z(
|
|
1999
|
-
unimportedDeps: Be(
|
|
2000
|
-
stalledRuns: await pn(
|
|
2001
|
-
decidedSchema: await
|
|
2017
|
+
...z(o),
|
|
2018
|
+
spaCandidates: await B(o),
|
|
2019
|
+
pageConvention: V(o),
|
|
2020
|
+
fileTaxonomy: re(o).findings,
|
|
2021
|
+
junctionFks: (await W(o))?.issues ?? [],
|
|
2022
|
+
eventDelivery: await G(o),
|
|
2023
|
+
duplicateInstances: a(o),
|
|
2024
|
+
versionSkew: s(o) ?? null,
|
|
2025
|
+
serverOnly: (await q(o)).status,
|
|
2026
|
+
accessDecisions: await J(o),
|
|
2027
|
+
webhookVerification: await Y(o),
|
|
2028
|
+
authz: await On(o),
|
|
2029
|
+
ungrantedScopes: await Q(o),
|
|
2030
|
+
neverEmittedEvents: await Z(o),
|
|
2031
|
+
unimportedDeps: Be(o),
|
|
2032
|
+
stalledRuns: await pn(o),
|
|
2033
|
+
decidedSchema: await jn(o)
|
|
2002
2034
|
}), 0;
|
|
2003
|
-
let
|
|
2004
|
-
Bt(
|
|
2005
|
-
for (let e of Ve(Be(
|
|
2006
|
-
await xn(
|
|
2007
|
-
let
|
|
2035
|
+
let c = gt(o, t);
|
|
2036
|
+
Bt(o), zt(o), Qt(o), ne(o), await Kt(o), await hn(o), await mn(o), await tn(o), await sn(o), await on(o), await Mn(o), await cn(o), await Tn(o), await bn(o), await vn(o), console.log("");
|
|
2037
|
+
for (let e of Ve(Be(o))) console.log(e);
|
|
2038
|
+
await xn(o), await Sn(o), await Cn(o);
|
|
2039
|
+
let l = await fn(o), u = await An(o, e.includes("--write-authz-allowlist")), d = await ln(o), f = await dn(o), p = await wn(o), m = i(s(o));
|
|
2008
2040
|
m !== void 0 && (console.log(""), console.log(m));
|
|
2009
|
-
let _ =
|
|
2010
|
-
return _ !== void 0 && console.log(`\n${_}`),
|
|
2041
|
+
let _ = r(a(o));
|
|
2042
|
+
return _ !== void 0 && console.log(`\n${_}`), l || u || d || p || f ? Math.max(c, 1) : c;
|
|
2011
2043
|
};
|
|
2012
2044
|
//#endregion
|
|
2013
|
-
export { B as C, Y as E, V as S, Q as T, Qt as _,
|
|
2045
|
+
export { B as C, Y as E, V as S, Q as T, Qt as _, On as a, gt as b, G as c, Nt as d, mt as f, Bt as g, zt as h, J as i, gn as l, rn as m, ht as n, Z as o, W as p, Vt as r, _n as s, $t as t, z as u, Kt as v, q as w, Pt as x, Nn as y };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as e } from "./dev-
|
|
2
|
-
import {
|
|
1
|
+
import { c as e } from "./dev-C6LGF4iY.js";
|
|
2
|
+
import { Gt as t, Ht as n, Kt as r, Ut as i } from "./webDev-oczpugbx.js";
|
|
3
3
|
import { join as a } from "node:path";
|
|
4
4
|
import { promises as o } from "node:fs";
|
|
5
5
|
import { createLogger as s } from "@voltro/logger";
|
|
@@ -21,27 +21,27 @@ var u = s({ scope: "voltro:env" }), d = "# Environment for this app", f = async
|
|
|
21
21
|
}, h = async (e) => {
|
|
22
22
|
let t = await f(e);
|
|
23
23
|
if (!t) return u.error("no app.config.ts found in the current directory"), 1;
|
|
24
|
-
let
|
|
25
|
-
u.info(`env manifest — ${
|
|
26
|
-
for (let e of
|
|
24
|
+
let r = n(t.name, t.input), i = `${p("KEY", 32)} ${p("OWNER", 16)} ${p("ACCESS", 8)} ${p("REQ", 4)} SET`;
|
|
25
|
+
u.info(`env manifest — ${r.app} (${r.summary.total} vars, ${r.summary.set} set)`), m(i);
|
|
26
|
+
for (let e of r.entries) {
|
|
27
27
|
let t = e.isSet ? "✓" : e.satisfied ? "·" : "✗";
|
|
28
28
|
m(`${p(e.key, 32)} ${p(e.owner, 16)} ${p(e.access, 8)} ${p(e.required ? "yes" : "", 4)} ${t}`);
|
|
29
29
|
}
|
|
30
|
-
return
|
|
31
|
-
}, g = async (e,
|
|
32
|
-
let
|
|
33
|
-
if (!
|
|
34
|
-
let
|
|
35
|
-
if (c !== null && !c.startsWith(d) && !
|
|
30
|
+
return r.summary.missingRequired > 0 ? (u.error(`${r.summary.missingRequired} required var(s) are unset`), 1) : 0;
|
|
31
|
+
}, g = async (e, t) => {
|
|
32
|
+
let n = await f(e);
|
|
33
|
+
if (!n) return u.error("no app.config.ts found in the current directory"), 1;
|
|
34
|
+
let r = i(n.input, ["Environment for this app — generated from app.config.ts `env` + plugin declarations.", "Regenerate with `voltro env sync`. Copy to `.env` and fill in the blanks."]), s = a(e, ".env.example"), c = await o.readFile(s, "utf8").catch(() => null);
|
|
35
|
+
if (c !== null && !c.startsWith(d) && !t) {
|
|
36
36
|
let t = a(e, ".env.example.generated");
|
|
37
|
-
return await o.writeFile(t,
|
|
37
|
+
return await o.writeFile(t, r, "utf8"), u.warn(".env.example exists and is not framework-generated — wrote .env.example.generated instead", { hint: "merge it by hand, or pass --force to overwrite .env.example" }), 0;
|
|
38
38
|
}
|
|
39
|
-
return await o.writeFile(s,
|
|
40
|
-
}, _ = async (
|
|
41
|
-
let
|
|
42
|
-
if (!
|
|
43
|
-
let a = l(
|
|
44
|
-
return a ? (
|
|
39
|
+
return await o.writeFile(s, r, "utf8"), u.info("wrote .env.example", { app: n.name }), 0;
|
|
40
|
+
}, _ = async (n) => {
|
|
41
|
+
let i = await e(n).catch(() => null);
|
|
42
|
+
if (!i) return u.error("no app.config.ts found in the current directory"), 1;
|
|
43
|
+
let a = l(i.env) ? i.env : void 0;
|
|
44
|
+
return a ? (i.type === "web" ? (await t(n, a), u.info("wrote src/voltro-env.d.ts (publicEnv augmentation)", { app: i.name ?? "app" })) : (await r(n, a), u.info("wrote env.generated.d.ts (serverEnv augmentation)", { app: i.name ?? "app" })), 0) : (u.warn("no `defineEnv` declared in app.config.ts — nothing to generate", { hint: "add `env: defineEnv({ ... })` to app.config.ts (see @voltro/env)" }), 0);
|
|
45
45
|
}, v = () => {
|
|
46
46
|
let e = c();
|
|
47
47
|
return u.info(`${e.length} framework env vars for turbo.json globalPassThroughEnv:`), m(JSON.stringify([...e].sort(), null, 2)), u.info("merge these into the workspace turbo.json `globalPassThroughEnv` array (+ your own app vars)."), 0;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as e } from "./cliOutput-D1tSBoRM.js";
|
|
2
|
-
import { i as t } from "./checkCommand-
|
|
3
|
-
import { i as n, n as r } from "./codemodRunner-
|
|
2
|
+
import { i as t } from "./checkCommand-C5elt0tW.js";
|
|
3
|
+
import { i as n, n as r } from "./codemodRunner-BjtB2lq6.js";
|
|
4
4
|
import { basename as i, join as a, resolve as o } from "node:path";
|
|
5
5
|
import { branchNamespaceName as s, planBranchProvision as c } from "@voltro/database";
|
|
6
6
|
import { readFile as l } from "node:fs/promises";
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
//#region src/fileConventions.ts
|
|
2
|
+
var e = /\.(query|mutation|action|stream)\.ts$/, t = /\.(query|mutation|action|stream)\.server\.ts$/, n = /\.event\.ts$/, r = /\.ws\.ts$/, i = /\.workflow\.tsx$/, a = /\.workflow\.server\.tsx$/, o = /\.workflow\.tsx?$/, s = /\.trigger\.tsx?$/, c = /\.cron\.tsx?$/, l = /\.webhook\.tsx?$/, u = /\.outbox\.tsx?$/, d = /\.consumer\.tsx?$/, f = /\.subscribe\.tsx?$/, p = /\.reaction\.tsx?$/, m = /\.aggregate\.tsx?$/, h = /\.expectation\.ts$/, g = /\.budget\.ts$/, _ = /\.experiment\.ts$/, v = /\.startup\.tsx?$/, y = /\.seed\.ts$/, b = /\.relations\.ts$/, x = /\.entity\.ts$|\.schema\.ts$|^schema\.ts$/, S = (e) => o.test(e) && !i.test(e) && !a.test(e), C = /(?:^|\/)page\.tsx$/, w = /\.island\.tsx?$/, T = /\.component\.tsx$/, E = /\.component\.ui\.tsx$/, D = /\.hook\.tsx?$/, O = /\.internal\.tsx?$/, k = /\.types\.tsx?$/, A = /\.fixture\.tsx?$/, j = /\.tracking\.tsx?$/, M = /\.store\.tsx?$/, N = /\.client\.tsx?$/, P = /\.(test|spec)\.tsx?$/, F = [
|
|
3
|
+
e,
|
|
4
|
+
t,
|
|
5
|
+
o,
|
|
6
|
+
a,
|
|
7
|
+
s,
|
|
8
|
+
c,
|
|
9
|
+
l,
|
|
10
|
+
u,
|
|
11
|
+
d,
|
|
12
|
+
f,
|
|
13
|
+
p,
|
|
14
|
+
m,
|
|
15
|
+
v,
|
|
16
|
+
h,
|
|
17
|
+
g,
|
|
18
|
+
_,
|
|
19
|
+
y,
|
|
20
|
+
b,
|
|
21
|
+
x,
|
|
22
|
+
/\.route\.tsx?$/,
|
|
23
|
+
n,
|
|
24
|
+
r,
|
|
25
|
+
M,
|
|
26
|
+
N,
|
|
27
|
+
/\.(agent|tool|email|connection|serverless|server|config|generated)\.tsx?$/
|
|
28
|
+
], I = (e) => F.some((t) => t.test(e)), L = /* @__PURE__ */ new Set([
|
|
29
|
+
"layout.tsx",
|
|
30
|
+
"error.tsx",
|
|
31
|
+
"loading.tsx",
|
|
32
|
+
"not-found.tsx"
|
|
33
|
+
]);
|
|
34
|
+
//#endregion
|
|
35
|
+
export { l as A, v as C, j as D, P as E, I as F, S as I, o as M, a as N, s as O, r as P, y as S, f as T, e as _, d as a, b, h as c, D as d, O as f, L as g, C as h, E as i, i as j, k, _ as l, u as m, g as n, c as o, w as p, T as r, n as s, m as t, A as u, t as v, M as w, x, p as y };
|