Configure bundlers with carbon-preprocess-svelte
masterTo use the optimization tools, add optimizeImports to your Svelte preprocessor and optimizeCss to your bundler plugins.
Vite Configuration
// vite.config.js
import { svelte, vitePreprocess } from "@sveltejs/vite-plugin-svelte";
import { optimizeCss, optimizeImports } from "carbon-preprocess-svelte";
export default {
plugins: [
svelte({
preprocess: [vitePreprocess(), optimizeImports()],
}),
optimizeCss(),
],
};SvelteKit Configuration
// svelte.config.js
import adapter from "@sveltejs/adapter-static";
import { vitePreprocess } from "@sveltejs/vite-plugin-svelte";
import { optimizeImports } from "carbon-preprocess-svelte";
const config = {
preprocess: [vitePreprocess(), optimizeImports()],
kit: { adapter: adapter() },
};
export default config;Rollup Configuration
// rollup.config.js
import svelte from "rollup-plugin-svelte";
import { optimizeCss, optimizeImports } from "carbon-preprocess-svelte";
const production = !process.env.ROLLUP_WATCH;
export default {
plugins: [
svelte({
preprocess: [optimizeImports()],
}),
production && optimizeCss(),
],
};Webpack Configuration
// webpack.config.mjs
import { OptimizeCssPlugin, optimizeImports } from "carbon-preprocess-svelte";
export default {
module: {
rules: [
{
test: /\.svelte$/,
use: {
loader: "svelte-loader",
options: {
preprocess: [optimizeImports()],
},
},
},
],
},
plugins: [new OptimizeCssPlugin()],
};