astro-cloudflare-redirects
Version:
29 lines (28 loc) • 1.04 kB
JavaScript
import fs from "fs/promises";
import { cloudflareRedirect } from "vite-plugin-cloudflare-redirect";
export default function astroCloudflareRedirects(options) {
return {
name: "Cloudflare Redirects",
hooks: {
'astro:config:setup': async ({ logger, updateConfig }) => {
let file = options?.redirectsFile || "public/_redirects";
try {
await fs.stat(file);
updateConfig({
vite: {
plugins: [
cloudflareRedirect({
redirectsFile: file
})
]
}
});
logger.info(`Setting up redirects from ${file}`);
}
catch (e) {
logger.warn(`Redirects file not found: ${file}. Skipping _redirects integration`);
}
}
}
};
}