UNPKG

vtils

Version:

一个面向业务的 JavaScript/TypeScript 实用程序库。

29 lines 901 B
import { dataUrlRegExpBuilder } from "../regexp/index.js"; import { parseUrlQueryString } from "./parseUrlQueryString.js"; var regExp = dataUrlRegExpBuilder.build({ exact: true }); /** * 解析 Data URL。 * * @param dataUrl 要解析的 Data URL * @returns 返回结果 */ export function parseDataUrl(dataUrl) { var _ref = dataUrl.match(regExp) || [], _ref$ = _ref[1], mimeType = _ref$ === void 0 ? 'text/plain;charset=US-ASCII' : _ref$, _ref$2 = _ref[4], extraParameters = _ref$2 === void 0 ? '' : _ref$2, _ref$3 = _ref[5], content = _ref$3 === void 0 ? '' : _ref$3; var parameters = parseUrlQueryString(("" + mimeType + extraParameters).replace(/^[^;]*;?/, ''), { partSeparator: ';' }); return { mimeType: decodeURIComponent(mimeType), parameters: parameters, content: decodeURIComponent(content), base64: parameters.base64 != null }; }