mirror of
https://github.com/LukeHagar/website.git
synced 2025-12-06 21:07:44 +00:00
71 lines
2.5 KiB
JavaScript
71 lines
2.5 KiB
JavaScript
import { preprocessMeltUI, sequence } from '@melt-ui/pp';
|
|
import nodeAdapter from '@sveltejs/adapter-node';
|
|
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';
|
|
import { dirname, join } from 'path';
|
|
import { markdoc } from 'svelte-markdoc-preprocess';
|
|
import { fileURLToPath } from 'url';
|
|
|
|
/** @type {import('@sveltejs/kit').Config}*/
|
|
const config = {
|
|
// Consult https://kit.svelte.dev/docs/integrations#preprocessors
|
|
// for more information about preprocessors
|
|
preprocess: sequence([
|
|
vitePreprocess(),
|
|
markdoc({
|
|
generateSchema: true,
|
|
nodes: absolute('./src/markdoc/nodes/_Module.svelte'),
|
|
tags: absolute('./src/markdoc/tags/_Module.svelte'),
|
|
partials: absolute('./src/partials'),
|
|
layouts: {
|
|
default: absolute('./src/markdoc/layouts/Article.svelte'),
|
|
article: absolute('./src/markdoc/layouts/Article.svelte'),
|
|
tutorial: absolute('./src/markdoc/layouts/Tutorial.svelte'),
|
|
post: absolute('./src/markdoc/layouts/Post.svelte'),
|
|
author: absolute('./src/markdoc/layouts/Author.svelte'),
|
|
category: absolute('./src/markdoc/layouts/Category.svelte'),
|
|
policy: absolute('./src/markdoc/layouts/Policy.svelte'),
|
|
changelog: absolute('./src/markdoc/layouts/Changelog.svelte'),
|
|
integration: absolute('./src/markdoc/layouts/Integration.svelte')
|
|
}
|
|
}),
|
|
preprocessMeltUI()
|
|
]),
|
|
extensions: ['.markdoc', '.svelte', '.md'],
|
|
kit: {
|
|
adapter: nodeAdapter(),
|
|
version: {
|
|
pollInterval: 60 * 1000
|
|
},
|
|
alias: {
|
|
$routes: './src/routes',
|
|
$scss: './src/scss',
|
|
$icons: './src/icons',
|
|
$appwrite: './node_modules/@appwrite.io/repo',
|
|
$markdoc: './src/markdoc'
|
|
},
|
|
prerender: {
|
|
concurrency: 32,
|
|
/**
|
|
* @type {import('@sveltejs/kit').PrerenderMissingIdHandler}
|
|
*/
|
|
handleMissingId: ({ path, message }) => {
|
|
if (path.startsWith('/docs/references/')) {
|
|
console.warn(message);
|
|
return;
|
|
}
|
|
throw new Error(message);
|
|
}
|
|
}
|
|
}
|
|
};
|
|
|
|
export default config;
|
|
|
|
/**
|
|
* @param {string} path
|
|
* @returns {string}
|
|
*/
|
|
function absolute(path) {
|
|
return join(dirname(fileURLToPath(import.meta.url)), path);
|
|
}
|