forked from svelte-society/sveltesociety.dev
-
Notifications
You must be signed in to change notification settings - Fork 0
/
svelte.config.js
55 lines (52 loc) · 1.61 KB
/
svelte.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import adapter from '@sveltejs/adapter-static';
import preprocess from 'svelte-preprocess';
import { mdsvex, escapeSvelte } from 'mdsvex';
import hljs from 'highlight.js';
import path from 'path';
const extensions = [`.svelte`, '.md', `.mdx`, '.svx'];
/** @type {import('@sveltejs/kit').Config} */
const config = {
preprocess: [
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>\`}`;
}
}
})
],
extensions: extensions,
kit: {
adapter: adapter(),
// hydrate the <div id="svelte"> element in src/app.html
target: '#sveltekit-entry',
vite: {
optimizeDeps: {
// workaround Vite issue to fix highlighting on cheatsheet
// https://github.com/metonym/svelte-highlight/issues/158
include: ['highlight.js/lib/core']
},
resolve: {
alias: {
// these are the aliases and paths to them
$components: path.resolve('./src/lib/components'),
$layout: path.resolve('./src/lib/components/layout'),
$layouts: path.resolve('./src/lib/layouts'),
$utils: path.resolve('./src/lib/utils'),
$styles: path.resolve('./src/lib/styles'),
$stores: path.resolve('./src/lib/stores')
}
}
}
}
};
export default config;