ExtraStatic: powerful and easy publishing

Skip to content
Snippets Groups Projects
svelte.config.js 1.03 KiB
Newer Older
Chris Dawson's avatar
Chris Dawson committed
import { mdsvex } from 'mdsvex';
import mdsvexConfig from './mdsvex.config.js';
import preprocess from 'svelte-preprocess';
import adapter from '@sveltejs/adapter-static';
import { liquidPreprocessor, svekyllImagePreprocessor } from './src/svekyll/svekyll.js';
import fs from 'fs';
import yaml from 'js-yaml';
import { resolve } from 'path';
Chris Dawson's avatar
Chris Dawson committed
	const file = fs.readFileSync('_config.yml', 'utf8');
	const doc = yaml.load(file);
	// console.log('File is: ', file);
	process.env.VITE_JEKYLL_CONFIG = JSON.stringify(doc);
} catch (err) {
Chris Dawson's avatar
Chris Dawson committed
	console.log(
		'Unable to process _config.yml, skipping (you may not have a _config.yml and that is fine)'
	);
/** @type {import('@sveltejs/kit').Config} */
const config = {
Chris Dawson's avatar
Chris Dawson committed
	extensions: ['.svelte', ...mdsvexConfig.extensions],
	kit: {
		adapter: adapter(),
		vite: {
			resolve: {
				alias: {
					$svekyll: resolve('./src/svekyll')
				}
			}
		}
Chris Dawson's avatar
Chris Dawson committed
	preprocess: [
		svekyllImagePreprocessor(),
Chris Dawson's avatar
Chris Dawson committed
		liquidPreprocessor(),
		preprocess({
			postcss: true
		}),
		mdsvex(mdsvexConfig)
	]
};

export default config;