UNPKG

unenv

Version:

`unenv` is a framework-agnostic system that allows converting JavaScript code to be platform agnostic and work in any environment including Browsers, Workers, Node.js, or JavaScript runtime.

34 lines (33 loc) 861 B
export class MIMEType { __unenv__ = true; params = new MIMEParams(); type; subtype; constructor(input) { const [essense = "", ...params] = String(input).split(";"); const [type = "", subtype = ""] = essense.split("/"); this.type = type; this.subtype = subtype; this.params = new MIMEParams(); for (const param of params) { const [name, value] = param.split("="); this.params.set(name, value); } } get essence() { return this.type + "/" + this.subtype; } toString() { const paramsStr = this.params.toString(); return this.essence + (paramsStr ? `;${paramsStr}` : ""); } } export class MIMEParams extends Map { __unenv__ = true; get(name) { return super.get(name) || null; } toString() { return [...this.entries()].map(([name, value]) => `${name}=${value}`).join("&"); } }