PDPA Features: ✅ Cookie consent banner ✅ Consent logging API ✅ Admin dashboard ✅ Privacy Policy ✅ Terms & Conditions Technical: ✅ Astro 5.x + Tailwind v4 ✅ Docker on port 80 ✅ SQLite database ✅ 15 pages built Ready for Easypanel deployment.
20 lines
587 B
JavaScript
20 lines
587 B
JavaScript
import { runHighlighterWithAstro } from "@astrojs/prism/dist/highlighter";
|
|
import { highlightCodeBlocks } from "./highlight.js";
|
|
const rehypePrism = (excludeLangs) => {
|
|
return async (tree) => {
|
|
await highlightCodeBlocks(
|
|
tree,
|
|
(code, language) => {
|
|
let { html, classLanguage } = runHighlighterWithAstro(language, code);
|
|
return Promise.resolve(
|
|
`<pre class="${classLanguage}" data-language="${language}"><code is:raw class="${classLanguage}">${html}</code></pre>`
|
|
);
|
|
},
|
|
excludeLangs
|
|
);
|
|
};
|
|
};
|
|
export {
|
|
rehypePrism
|
|
};
|