vtils
Version:
一个面向业务的 JavaScript/TypeScript 实用程序库。
33 lines (32 loc) • 981 B
JavaScript
exports.__esModule = true;
exports.parseDataUrl = parseDataUrl;
var _regexp = require("../regexp");
var _parseUrlQueryString = require("./parseUrlQueryString");
var regExp = _regexp.dataUrlRegExpBuilder.build({
exact: true
});
/**
* 解析 Data URL。
*
* @param dataUrl 要解析的 Data URL
* @returns 返回结果
*/
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 = (0, _parseUrlQueryString.parseUrlQueryString)(("" + mimeType + extraParameters).replace(/^[^;]*;?/, ''), {
partSeparator: ';'
});
return {
mimeType: decodeURIComponent(mimeType),
parameters: parameters,
content: decodeURIComponent(content),
base64: parameters.base64 != null
};
}
;