-
Notifications
You must be signed in to change notification settings - Fork 0
/
svelte.config.js
72 lines (69 loc) · 1.86 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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import path from 'path';
import adapter from '@sveltejs/adapter-vercel';
import sveltePreprocess from 'svelte-preprocess';
import { mdsvex } from 'mdsvex';
import rehypeExternalLinks from 'rehype-external-links';
import rehypeSlug from 'rehype-slug';
import rehypeAutolinkHeadings from 'rehype-autolink-headings';
const extensions = ['.svelte', '.md'];
// so ugly, find a good way to fix this once for good (make all the static directory serviable)
const allow = [
'static/audio',
'static/fonts',
'static/techs',
'static/svg',
'static/img',
'static/img/projects'
];
/** @type {import('@sveltejs/kit').Config} */
const config = {
// Consult https://github.com/sveltejs/svelte-preprocess
// for more information about preprocessors
preprocess: [
sveltePreprocess({
preserve: ['module'],
postcss: true
}),
mdsvex({
extensions: extensions,
rehypePlugins: [
rehypeExternalLinks, // Adds 'target' and 'rel' to external links
rehypeSlug, // Adds 'id' attributes to Headings (h1,h2,etc)
[
rehypeAutolinkHeadings,
{
// Adds hyperlinks to the headings, requires rehypeSlug
behavior: 'append',
content: {
type: 'element',
tagName: 'span',
properties: { className: ['heading-link'] },
children: [{ type: 'text', value: '#' }]
}
}
]
]
})
],
extensions,
kit: {
adapter: adapter(),
files: { serviceWorker: 'src/sw' },
serviceWorker: { register: true },
vite: {
server: { fs: { allow } },
resolve: {
alias: {
$static: path.resolve('./static'),
$data: path.resolve('./src/lib/data'),
$types: path.resolve('./src/lib/types'),
$store: path.resolve('./src/lib/_store'),
$actions: path.resolve('./src/lib/actions'),
$transitions: path.resolve('./src/lib/transitions'),
$layout: path.resolve('./src/lib/layout')
}
}
}
}
};
export default config;