Files
classroomio/apps/classroomio-com/svelte.config.js
T
Rotimi Best 786308ec82 feat: deploy to cloudflare (#365)
* chore: deploy to cf

* add wrangler.toml file

* update pnpm-lock

* set pnpm version

* use adapter auto
2024-06-17 00:45:51 +01:00

39 lines
1.2 KiB
JavaScript

import sequence from 'svelte-sequential-preprocessor';
import adapter from '@sveltejs/adapter-auto';
import { vitePreprocess } from '@sveltejs/kit/vite';
import { fileURLToPath } from 'node:url';
import { dirname } from 'node:path';
import { mdsvex, escapeSvelte } from 'mdsvex';
import shiki from 'shiki';
import remarkUnwrapImages from 'remark-unwrap-images';
import remarkToc from 'remark-toc';
import rehypeSlug from 'rehype-slug';
/** @type {import('@sveltejs/kit').Config}*/
/** @type {import('mdsvex').MdsvexOptions} */
const mdsvexOptions = {
extensions: ['.md'],
layout: {
_: dirname(fileURLToPath(import.meta.url)) + '/src/mdsvex.svelte'
},
highlight: {
highlighter: async (code, lang = 'text') => {
const highlighter = await shiki.getHighlighter({ theme: 'poimandres' });
const html = escapeSvelte(highlighter.codeToHtml(code, { lang }));
return `{@html \`${html}\` }`;
}
},
remarkPlugins: [remarkUnwrapImages, [remarkToc, { tight: true }]],
rehypePlugins: [rehypeSlug]
};
const config = {
kit: {
adapter: adapter()
},
extensions: ['.svelte', '.md'],
preprocess: sequence([vitePreprocess(), mdsvex(mdsvexOptions)])
};
export default config;