Refactor routing in App component to enhance navigation and improve error handling by integrating dynamic routes and updating the NotFound route.

This commit is contained in:
becarta
2025-05-23 12:43:00 +02:00
parent f40db0f5c9
commit a544759a3b
11127 changed files with 1647032 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
import { createModuleScriptElementWithSrc } from "../core/render/ssr-element.js";
import { viteID } from "../core/util.js";
import { rootRelativePath } from "../core/viteUtils.js";
import { crawlGraph } from "./vite.js";
async function getScriptsForURL(filePath, root, loader) {
const elements = /* @__PURE__ */ new Set();
const crawledFiles = /* @__PURE__ */ new Set();
const rootID = viteID(filePath);
const modInfo = loader.getModuleInfo(rootID);
addHoistedScripts(elements, modInfo, root);
for await (const moduleNode of crawlGraph(loader, rootID, true)) {
if (moduleNode.file) {
crawledFiles.add(moduleNode.file);
}
const id = moduleNode.id;
if (id) {
const info = loader.getModuleInfo(id);
addHoistedScripts(elements, info, root);
}
}
return { scripts: elements, crawledFiles };
}
function addHoistedScripts(set, info, root) {
if (!info?.meta?.astro) {
return;
}
let id = info.id;
const astro = info?.meta?.astro;
for (let i = 0; i < astro.scripts.length; i++) {
let scriptId = `${id}?astro&type=script&index=${i}&lang.ts`;
scriptId = rootRelativePath(root, scriptId);
const element = createModuleScriptElementWithSrc(scriptId);
set.add(element);
}
}
export {
getScriptsForURL
};