36 lines
914 B
TypeScript
36 lines
914 B
TypeScript
import basicSsl from '@vitejs/plugin-basic-ssl';
|
|
import browserslist from 'browserslist';
|
|
import { browserslistToTargets } from 'lightningcss';
|
|
import { viteSingleFile } from 'vite-plugin-singlefile';
|
|
import { defineConfig } from 'vitest/config';
|
|
|
|
const cssTargets = browserslistToTargets(browserslist());
|
|
|
|
export default defineConfig(({ command }) => ({
|
|
base: command === 'build' ? './' : '/',
|
|
plugins: [
|
|
viteSingleFile({ useRecommendedBuildConfig: false }),
|
|
...(command === 'serve' ? [basicSsl()] : []),
|
|
],
|
|
css: {
|
|
transformer: 'lightningcss',
|
|
lightningcss: {
|
|
targets: cssTargets,
|
|
},
|
|
},
|
|
build: {
|
|
target: 'es2022',
|
|
cssCodeSplit: false,
|
|
cssMinify: 'lightningcss',
|
|
assetsInlineLimit: Number.MAX_SAFE_INTEGER,
|
|
assetsDir: '',
|
|
},
|
|
server: {
|
|
open: true,
|
|
host: true,
|
|
},
|
|
test: {
|
|
environment: 'node',
|
|
include: ['src/**/*.test.ts'],
|
|
},
|
|
}));
|