Skip to content

Commit 46c1ebd

Browse files
fix: include hooks.server and hooks.universal as entrypoints to give them stable manifest identifiers (#15178)
* fix: include `hooks.server` and `hooks.universal` as entrypoints to give them stable manifest identifiers * changeset * yep * lockfile --------- Co-authored-by: Tee Ming <chewteeming01@gmail.com>
1 parent ed82a9f commit 46c1ebd

File tree

3 files changed

+17
-1
lines changed

3 files changed

+17
-1
lines changed

.changeset/hooks-server-assets.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@sveltejs/kit': patch
3+
---
4+
5+
fix: include `hooks.server` and `hooks.universal` as explicit Vite build inputs to ensure assets imported by hooks files are correctly discovered

packages/kit/src/core/generate_manifest/find_server_assets.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ export function find_server_assets(build_data, routes) {
1313
*/
1414
const used_nodes = new Set([0, 1]);
1515

16-
// TODO add hooks.server.js asset imports
1716
/** @type {Set<string>} */
1817
const server_assets = new Set();
1918

@@ -49,5 +48,9 @@ export function find_server_assets(build_data, routes) {
4948
add_assets(build_data.manifest_data.hooks.server);
5049
}
5150

51+
if (build_data.manifest_data.hooks.universal) {
52+
add_assets(build_data.manifest_data.hooks.universal);
53+
}
54+
5255
return Array.from(server_assets);
5356
}

packages/kit/src/exports/vite/index.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -848,6 +848,14 @@ async function kit({ svelte_config }) {
848848
input[name] = path.resolve(file);
849849
});
850850

851+
// ...and the hooks files
852+
if (manifest_data.hooks.server) {
853+
input['entries/hooks.server'] = path.resolve(manifest_data.hooks.server);
854+
}
855+
if (manifest_data.hooks.universal) {
856+
input['entries/hooks.universal'] = path.resolve(manifest_data.hooks.universal);
857+
}
858+
851859
// ...and the server instrumentation file
852860
const server_instrumentation = resolve_entry(
853861
path.join(kit.files.src, 'instrumentation.server')

0 commit comments

Comments
 (0)