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:
20
node_modules/astro/dist/vite-plugin-utils/index.d.ts
generated
vendored
Normal file
20
node_modules/astro/dist/vite-plugin-utils/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
import type { AstroConfig } from '../@types/astro.js';
|
||||
export declare function getFileInfo(id: string, config: AstroConfig): {
|
||||
fileId: string;
|
||||
fileUrl: string | undefined;
|
||||
};
|
||||
/**
|
||||
* Normalizes different file names like:
|
||||
*
|
||||
* - /@fs/home/user/project/src/pages/index.astro
|
||||
* - /src/pages/index.astro
|
||||
*
|
||||
* as absolute file paths with forward slashes.
|
||||
*/
|
||||
export declare function normalizeFilename(filename: string, root: URL): string;
|
||||
export declare function cleanUrl(url: string): string;
|
||||
/**
|
||||
* Detect `?url`, `?raw`, and `?direct`, in which case we usually want to skip
|
||||
* transforming any code with this queries as Vite will handle it directly.
|
||||
*/
|
||||
export declare function hasSpecialQueries(id: string): boolean;
|
45
node_modules/astro/dist/vite-plugin-utils/index.js
generated
vendored
Normal file
45
node_modules/astro/dist/vite-plugin-utils/index.js
generated
vendored
Normal file
@@ -0,0 +1,45 @@
|
||||
import { fileURLToPath } from "node:url";
|
||||
import ancestor from "common-ancestor-path";
|
||||
import {
|
||||
appendExtension,
|
||||
appendForwardSlash,
|
||||
removeLeadingForwardSlashWindows
|
||||
} from "../core/path.js";
|
||||
import { viteID } from "../core/util.js";
|
||||
function getFileInfo(id, config) {
|
||||
const sitePathname = appendForwardSlash(
|
||||
config.site ? new URL(config.base, config.site).pathname : config.base
|
||||
);
|
||||
const fileId = id.split("?")[0];
|
||||
let fileUrl = fileId.includes("/pages/") ? fileId.replace(/^.*?\/pages\//, sitePathname).replace(/(?:\/index)?\.(?:md|markdown|mdown|mkdn|mkd|mdwn|astro)$/, "") : void 0;
|
||||
if (fileUrl && config.trailingSlash === "always") {
|
||||
fileUrl = appendForwardSlash(fileUrl);
|
||||
}
|
||||
if (fileUrl && config.build.format === "file") {
|
||||
fileUrl = appendExtension(fileUrl, "html");
|
||||
}
|
||||
return { fileId, fileUrl };
|
||||
}
|
||||
function normalizeFilename(filename, root) {
|
||||
if (filename.startsWith("/@fs")) {
|
||||
filename = filename.slice("/@fs".length);
|
||||
} else if (filename.startsWith("/") && !ancestor(filename, fileURLToPath(root))) {
|
||||
const url = new URL("." + filename, root);
|
||||
filename = viteID(url);
|
||||
}
|
||||
return removeLeadingForwardSlashWindows(filename);
|
||||
}
|
||||
const postfixRE = /[?#].*$/s;
|
||||
function cleanUrl(url) {
|
||||
return url.replace(postfixRE, "");
|
||||
}
|
||||
const specialQueriesRE = /(?:\?|&)(?:url|raw|direct)(?:&|$)/;
|
||||
function hasSpecialQueries(id) {
|
||||
return specialQueriesRE.test(id);
|
||||
}
|
||||
export {
|
||||
cleanUrl,
|
||||
getFileInfo,
|
||||
hasSpecialQueries,
|
||||
normalizeFilename
|
||||
};
|
Reference in New Issue
Block a user