diff --git a/src/media/mime.test.ts b/src/media/mime.test.ts index 020364663fb..2042ac8b823 100644 --- a/src/media/mime.test.ts +++ b/src/media/mime.test.ts @@ -60,6 +60,13 @@ describe("mime detection", () => { }); expect(mime).toBe("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); }); + + it("uses extension mapping for JavaScript assets", async () => { + const mime = await detectMime({ + filePath: "/tmp/a2ui.bundle.js", + }); + expect(mime).toBe("text/javascript"); + }); }); describe("extensionForMime", () => { diff --git a/src/media/mime.ts b/src/media/mime.ts index 6a377b7dc6e..85f4962b43d 100644 --- a/src/media/mime.ts +++ b/src/media/mime.ts @@ -38,6 +38,7 @@ const MIME_BY_EXT: Record = { ...Object.fromEntries(Object.entries(EXT_BY_MIME).map(([mime, ext]) => [ext, mime])), // Additional extension aliases ".jpeg": "image/jpeg", + ".js": "text/javascript", }; const AUDIO_FILE_EXTENSIONS = new Set([