34 lines
906 B
JavaScript
34 lines
906 B
JavaScript
// @ts-check
|
||
import { defineConfig } from "astro/config";
|
||
import mdx from "@astrojs/mdx";
|
||
import sitemap from "@astrojs/sitemap";
|
||
|
||
import rehypeSlug from "rehype-slug";
|
||
import rehypeAutolinkHeadings from "rehype-autolink-headings";
|
||
import rehypeParagraphIds from "./src/plugins/rehype-paragraph-ids.js";
|
||
|
||
export default defineConfig({
|
||
output: "static",
|
||
trailingSlash: "always",
|
||
|
||
// URL finale (utilisée pour sitemap + canoniques)
|
||
// Astro charge .env.production automatiquement en mode build.
|
||
site: process.env.PUBLIC_SITE ?? "http://localhost:4321",
|
||
|
||
integrations: [
|
||
mdx(),
|
||
sitemap({
|
||
// Évite d’indexer les endpoints techniques
|
||
filter: (page) => !page.includes("/api/") && !page.endsWith("/robots.txt"),
|
||
}),
|
||
],
|
||
|
||
markdown: {
|
||
rehypePlugins: [
|
||
rehypeSlug,
|
||
[rehypeAutolinkHeadings, { behavior: "append" }],
|
||
rehypeParagraphIds,
|
||
],
|
||
},
|
||
});
|