Skip to content

Commit 0381fee

Browse files
authored
fix: basic mime type handling for prerendered pages in preview (#10851)
1 parent cf3af61 commit 0381fee

File tree

6 files changed

+19
-15
lines changed

6 files changed

+19
-15
lines changed

.changeset/brave-parrots-sleep.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: basic mime type handling for prerendered pages in preview

.changeset/clean-garlics-deny.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+
chore: use just a single library (mrmime) for mime type handling

packages/kit/package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"esm-env": "^1.0.0",
1919
"kleur": "^4.1.5",
2020
"magic-string": "^0.30.0",
21-
"mime": "^3.0.0",
21+
"mrmime": "^1.0.1",
2222
"sade": "^1.8.1",
2323
"set-cookie-parser": "^2.6.0",
2424
"sirv": "^2.0.2",
@@ -28,7 +28,6 @@
2828
"devDependencies": {
2929
"@playwright/test": "1.30.0",
3030
"@types/connect": "^3.4.35",
31-
"@types/mime": "^3.0.1",
3231
"@types/node": "^16.18.6",
3332
"@types/sade": "^1.7.4",
3433
"@types/set-cookie-parser": "^2.4.2",

packages/kit/src/core/sync/create_manifest_data/index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import fs from 'node:fs';
22
import path from 'node:path';
33
import colors from 'kleur';
4-
import mime from 'mime';
4+
import { lookup } from 'mrmime';
55
import { list_files, runtime_directory } from '../../utils.js';
66
import { posixify } from '../../../utils/filesystem.js';
77
import { parse_route_id } from '../../../utils/routing.js';
@@ -48,7 +48,7 @@ export function create_assets(config) {
4848
return list_files(config.kit.files.assets).map((file) => ({
4949
file,
5050
size: fs.statSync(path.resolve(config.kit.files.assets, file)).size,
51-
type: mime.getType(file)
51+
type: lookup(file) || null
5252
}));
5353
}
5454

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import fs from 'node:fs';
22
import { join } from 'node:path';
33
import { pathToFileURL } from 'node:url';
4+
import { lookup } from 'mrmime';
45
import sirv from 'sirv';
56
import { loadEnv, normalizePath } from 'vite';
67
import { getRequest, setResponse } from '../../../exports/node/index.js';
@@ -141,7 +142,7 @@ export async function preview(vite, vite_config, svelte_config) {
141142

142143
if (prerendered) {
143144
res.writeHead(200, {
144-
'content-type': 'text/html',
145+
'content-type': lookup(pathname) || 'text/html',
145146
etag
146147
});
147148

pnpm-lock.yaml

Lines changed: 4 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)