Skip to content

Commit 04125e7

Browse files
committed
adjust test suite to run SSR env correctly, changeset
1 parent e756f2d commit 04125e7

File tree

2 files changed

+23
-4
lines changed

2 files changed

+23
-4
lines changed

.changeset/three-icons-trade.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"svelte": patch
3+
---
4+
5+
fix: run `onDestroy` callbacks during SSR

vitest.config.js

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,25 +10,39 @@ export default defineConfig({
1010
alias: [
1111
{
1212
find: /^svelte\/?/,
13-
customResolver: (id) => {
13+
customResolver: (id, importer) => {
1414
// For some reason this turns up as "undefined" instead of "svelte"
1515
const exported = pkg.exports[id.replace('undefined', '.')];
1616
if (!exported) return;
1717

18-
return path.resolve('packages/svelte', exported.browser ?? exported.default);
18+
// When running the server version of the Svelte files,
19+
// we also want to use the server export of the Svelte package
20+
return path.resolve(
21+
'packages/svelte',
22+
importer?.includes('_output/server')
23+
? exported.default
24+
: exported.browser ?? exported.default
25+
);
1926
}
2027
}
2128
]
2229
},
2330
plugins: [
2431
{
2532
name: 'resolve-svelte',
26-
resolveId(id) {
33+
resolveId(id, importer) {
2734
if (/^svelte\/?/.test(id)) {
2835
const exported = pkg.exports[id.replace('svelte', '.')];
2936
if (!exported) return;
3037

31-
return path.resolve('packages/svelte', exported.browser ?? exported.default);
38+
// When running the server version of the Svelte files,
39+
// we also want to use the server export of the Svelte package
40+
return path.resolve(
41+
'packages/svelte',
42+
importer?.includes('_output/server')
43+
? exported.default
44+
: exported.browser ?? exported.default
45+
);
3246
}
3347
}
3448
}

0 commit comments

Comments
 (0)