vite.config.ts
Rama master · réplica de lectura del repositorio original.
import nodeAdapter from '@sveltejs/adapter-node';
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';
import { sveltekit } from '@sveltejs/kit/vite';
import tailwindcss from '@tailwindcss/vite';
import Icons from 'unplugin-icons/vite';
import { playwright } from '@vitest/browser-playwright';
import { defineConfig } from 'vitest/config';
export default defineConfig({
plugins: [
tailwindcss(),
sveltekit({
preprocess: vitePreprocess(),
adapter: nodeAdapter(),
output: { linkHeaderPreload: true }
}),
Icons({
compiler: 'svelte'
})
],
test: {
projects: [
{
extends: true,
test: {
name: 'unit',
include: ['src/**/*.{test,spec}.{js,ts}'],
exclude: ['src/**/*.browser.test.ts']
}
},
...(['chromium', 'firefox', 'webkit'] as const).map((browser) => ({
extends: true,
test: {
name: `browser-${browser}`,
include: ['src/**/*.browser.test.ts'],
setupFiles: ['vitest-browser-svelte'],
browser: {
enabled: true,
headless: true,
provider: playwright(),
trace: { mode: 'retain-on-failure', tracesDir: `test-results/vitest/${browser}` },
instances: [{ browser }]
}
}
}))
],
reporters: [['default', { summary: false }]],
env: {
NODE_ENV: 'test'
}
}
});