import tailwindcss from '@tailwindcss/vite'; import { defineConfig } from 'vitest/config'; import { playwright } from '@vitest/browser-playwright'; import { sveltekit } from '@sveltejs/kit/vite'; import fs from 'fs'; export default defineConfig({ define: { 'process.env.NODE_ENV': process.env.NODE_ENV === 'production' ? '"production"' : '"development"' }, server: { watch: { ignored: ['**/debug_page.txt', '**/.ssl/**', '**/docs/**', '**/secrets/**'] }, https: fs.existsSync('./.ssl/localhost.key') && fs.existsSync('./.ssl/localhost.crt') ? { key: fs.readFileSync('./.ssl/localhost.key'), cert: fs.readFileSync('./.ssl/localhost.crt') } : undefined }, plugins: [tailwindcss(), sveltekit()], test: { expect: { requireAssertions: true }, projects: [ { extends: './vite.config.ts', test: { name: 'client', browser: { enabled: true, provider: playwright(), instances: [{ browser: 'chromium', headless: true }] }, include: ['src/**/*.svelte.{test,spec}.{js,ts}'], exclude: ['src/lib/server/**'] } }, { extends: './vite.config.ts', test: { name: 'server', environment: 'node', include: ['src/**/*.{test,spec}.{js,ts}'], exclude: ['src/**/*.svelte.{test,spec}.{js,ts}', 'src/**/*.e2e.spec.{js,ts}'] } } ] } });