59 lines
1.7 KiB
JavaScript
59 lines
1.7 KiB
JavaScript
// 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}`)
|
|
}
|
|
}
|
|
}
|
|
}
|