From 4b37b7b6a992930a682cf7fde3916a39d37b3b87 Mon Sep 17 00:00:00 2001 From: Ayaan Zaidi Date: Fri, 27 Feb 2026 11:49:39 +0530 Subject: [PATCH] fix(media): serve JavaScript assets with text/javascript --- src/media/mime.test.ts | 7 +++++++ src/media/mime.ts | 1 + 2 files changed, 8 insertions(+) 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([