import { writeFileSync } from "fs"; import { globby } from "globby"; import prettier from "prettier"; async function generate() { const prettierConfig = await prettier.resolveConfig("./.prettierrc.js"); const pages = await globby([ "pages/!(\\[**])*.js*", "content/**/*.md*", "!pages/_*.js*", "!pages/api", "!pages/404.js*", ]); const sitemap = ` ${pages .map((page) => { const path = page .replace("pages", "") .replace("content", "") .replace(/.jsx*/, "") .replace(/.mdx*/, ""); const route = path === "/index" ? "" : path; return ` ${`https://web3.lifeiteself.us${route}`} `; }) .join("")} `; const formatted = prettier.format(sitemap, { ...prettierConfig, parser: "html", }); // eslint-disable-next-line no-sync writeFileSync("public/sitemap.xml", formatted); } generate();