// svelte adapter import adapterAuto from '@sveltejs/adapter-auto' import adapterNode from '@sveltejs/adapter-node' import adapterStatic from '@sveltejs/adapter-static' // svelte preprocessor import { mdsvex } from 'mdsvex' import mdsvexConfig from './mdsvex.config.js' // import { vitePreprocess } from '@sveltejs/vite-plugin-svelte' import preprocess from 'svelte-preprocess' const adapter = { auto: adapterAuto(), node: adapterNode(), static: adapterStatic({ pages: 'build', assets: 'build', fallback: undefined }) } /** @type {import("@svletejs/kit".Config)} */ export default { extensions: ['.svelte', ...(mdsvexConfig.extensions || [])], preprocess: [preprocess({ postcss: true }), mdsvex(mdsvexConfig) /*, vitePreprocess()*/], vitePlugin: { inspector: true }, kit: { adapter: process.env.ADAPTER ? adapter[process.env.ADAPTER.toLowerCase()] : Object.keys(process.env).some(key => ['VERCEL', 'NETLIFY'].includes(key)) ? adapter['auto'] : adapter['static'], alias: { $lib: './src/lib', $root: './', $src: './src', $routes: './src/routes', $content: './content' }, csrf: { checkOrigin: process.env.NODE_ENV === 'development' ? false : true }, prerender: { crawl: true, handleMissingId: 'warn', handleHttpError: details => { // Handle blog trying to prerender relative links that it can't if (details.status == 404 && details.path.startsWith('/blog' && '/projects') && details.referenceType == 'linked') { console.warn(`PRERENDER ignored route ${details.path}`) return } throw new Error(`${details.status} ${details.path} from ${details.referrer}`) } } } }