/** * Guess a Content-Type from a filename based on extension. * This is used for inline media preview in the UI (images, PDFs, etc.). * Defaults to application/octet-stream when unknown. */ export function getContentTypeFromName(name: string): string { const ext = (name.split(".").pop() || "").toLowerCase(); switch (ext) { case "png": return "image/png"; case "jpg": case "jpeg": return "image/jpeg"; case "gif": return "image/gif"; case "webp": return "image/webp"; case "bmp": return "image/bmp"; case "ico": return "image/x-icon"; case "svg": return "image/svg+xml"; case "pdf": return "application/pdf"; case "txt": return "text/plain; charset=utf-8"; default: return "application/octet-stream"; } }