contentType
import { contentType } from "jsr:@ende/media-types";function
function contentType<T extends (string & {}) | KnownExtensionOrType>(extensionOrType: T): Lowercase<T> extends KnownExtensionOrType ? string : string | undefinedReturns the full Content-Type or Content-Disposition header value for the
given extension or media type.
The function will treat the extensionOrType as a media type when it
contains a /, otherwise it will process it as an extension, with or without
the leading ..
Returns undefined if unable to resolve the media type.
extensionOrType: TThe extension or media type to resolve.
Returns
The full Content-Type or Content-Disposition header value, or
undefined if unable to resolve the media type.
Example: Usage
import { contentType } from "@ende/media-types/content-type";
import { assertEquals } from "@ende/assert";
assertEquals(contentType(".json"), "application/json; charset=UTF-8");
assertEquals(contentType("text/html"), "text/html; charset=UTF-8");
assertEquals(contentType("text/html; charset=UTF-8"), "text/html; charset=UTF-8");
assertEquals(contentType("txt"), "text/plain; charset=UTF-8");
assertEquals(contentType("foo"), undefined);
assertEquals(contentType("file.json"), undefined);