Files
sveltesociety.dev/svelte.config.js
Lachlan Collins 4ffc0b7f92 feat: Add tailwind for utility classes (#562)
* feat: Add tailwind for styling

* Use ESM for postcss

* Remove overlapping classes

* More layout fixes

* Pin footer to bottom

* Replace .old-container

* Fix prettier
2023-12-31 00:09:01 +11:00

59 lines
1.6 KiB
JavaScript

import path from 'node:path';
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';
import adapter from '@sveltejs/adapter-auto';
import hljs from 'highlight.js';
import { mdsvex, escapeSvelte } from 'mdsvex';
import rehypeSlug from 'rehype-slug';
const extensions = [`.svelte`, '.md', `.mdx`, '.svx'];
/** @type {import('@sveltejs/kit').Config} */
const config = {
preprocess: [
mdsvex({
// Breaks svelte-select when .svelte extension is included
extensions: extensions.filter((ext) => ext !== '.svelte'),
layout: {
eventPage: './src/lib/layouts/EventPage.svelte',
recipe: './src/lib/layouts/Recipe.svelte',
recipeCategory: './src/lib/layouts/RecipeCategory.svelte'
},
highlight: {
highlighter: (code) => {
const highlighted = escapeSvelte(hljs.highlightAuto(code).value);
return `{@html \`<pre class="hljs"><code>${highlighted}</code></pre>\`}`;
}
},
rehypePlugins: [rehypeSlug]
}),
vitePreprocess()
],
extensions: extensions,
kit: {
adapter: adapter(),
alias: {
$components: path.resolve('./src/lib/components'),
$layouts: path.resolve('./src/lib/layouts'),
$utils: path.resolve('./src/lib/utils'),
$styles: path.resolve('./src/lib/styles'),
$stores: path.resolve('./src/lib/stores')
},
typescript: {
config: (config) => {
config.include = [
...config.include,
'../scripts/**/*.js',
'../.eslintrc.cjs',
'../postcss.config.js',
'../prettier.config.js',
'../svelte.config.js',
'../tailwind.config.cjs'
];
return config;
}
}
}
};
export default config;