@@ -2,7 +2,7 @@ import { sveltekit } from '@sveltejs/kit/vite';
2
2
import { transformValidation , writeResolvedConfig } from 'e2e-test-dep-vite-plugins' ;
3
3
4
4
/** @type {import('vite').UserConfig } */
5
- const config = {
5
+ export default {
6
6
server : {
7
7
watch : {
8
8
// During tests we edit the files too fast and sometimes chokidar
@@ -15,11 +15,33 @@ const config = {
15
15
minify : false ,
16
16
sourcemap : true // must be true for hermetic build test!
17
17
} ,
18
- plugins : [ transformValidation ( ) , sveltekit ( ) , writeResolvedConfig ( ) ] ,
18
+ plugins : [
19
+ transformValidation ( ) ,
20
+ sveltekit ( ) ,
21
+ writeResolvedConfig ( ) ,
22
+ workaroundInlineSvelteCssIssue ( )
23
+ ] ,
19
24
optimizeDeps : {
20
25
// eagerly include these, otherwise vite optimizer might interfere with restarting while the test is running
21
26
include : [ 'svelte-i18n' , 'e2e-test-dep-svelte-api-only' ]
22
27
}
23
28
} ;
24
29
25
- export default config ;
30
+ /**
31
+ * Workaround until https://github.com/sveltejs/kit/pull/13007 is merged
32
+ * @returns {import('vite').Plugin }
33
+ */
34
+ function workaroundInlineSvelteCssIssue ( ) {
35
+ return {
36
+ name : 'workaround-inline-svelte-css-issue' ,
37
+ enforce : 'pre' ,
38
+ resolveId ( id ) {
39
+ // SvelteKit relies on a previous behaviour in v-p-s where it strips out the inline
40
+ // query to get the CSS result, however this no longer works in Vite 6 and should be
41
+ // fixed in SvelteKit instead, otherwise FOUC will happen in dev.
42
+ if ( id . includes ( '?svelte' ) ) {
43
+ return id . replace ( / & i n l i n e = $ / , '' ) ;
44
+ }
45
+ }
46
+ } ;
47
+ }
0 commit comments