76186d13c02dcb33f49f6ec7e76caa7e1286e730585b24f1904fb2f9e039bef1.json 39 KB

1
  1. {"ast":null,"code":"var __assign = this && this.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = this && this.__generator || function (thisArg, body) {\n var _ = {\n label: 0,\n sent: function () {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n },\n f,\n y,\n t,\n g;\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function () {\n return this;\n }), g;\n function verb(n) {\n return function (v) {\n return step([n, v]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [0];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [6, e];\n y = 0;\n } finally {\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n};\nimport SparkMD5 from 'spark-md5';\nimport { QiniuErrorName, QiniuError, QiniuRequestError, QiniuNetworkError } from '../errors';\nimport { urlSafeBase64Decode } from './base64';\nexport var MB = Math.pow(1024, 2);\n// 文件分块\nexport function getChunks(file, blockSize) {\n var chunkByteSize = blockSize * MB; // 转换为字节\n // 如果 chunkByteSize 比文件大,则直接取文件的大小\n if (chunkByteSize > file.size) {\n chunkByteSize = file.size;\n } else {\n // 因为最多 10000 chunk,所以如果 chunkSize 不符合则把每片 chunk 大小扩大两倍\n while (file.size > chunkByteSize * 10000) {\n chunkByteSize *= 2;\n }\n }\n var chunks = [];\n var count = Math.ceil(file.size / chunkByteSize);\n for (var i = 0; i < count; i++) {\n var chunk = file.slice(chunkByteSize * i, i === count - 1 ? file.size : chunkByteSize * (i + 1));\n chunks.push(chunk);\n }\n return chunks;\n}\nexport function isMetaDataValid(params) {\n return Object.keys(params).every(function (key) {\n return key.indexOf('x-qn-meta-') === 0;\n });\n}\nexport function isCustomVarsValid(params) {\n return Object.keys(params).every(function (key) {\n return key.indexOf('x:') === 0;\n });\n}\nexport function sum(list) {\n return list.reduce(function (data, loaded) {\n return data + loaded;\n }, 0);\n}\nexport function setLocalFileInfo(localKey, info, logger) {\n try {\n localStorage.setItem(localKey, JSON.stringify(info));\n } catch (err) {\n logger.warn(new QiniuError(QiniuErrorName.WriteCacheFailed, \"setLocalFileInfo failed: \" + localKey));\n }\n}\nexport function createLocalKey(name, key, size) {\n var localKey = key == null ? '_' : \"_key_\" + key + \"_\";\n return \"qiniu_js_sdk_upload_file_name_\" + name + localKey + \"size_\" + size;\n}\nexport function removeLocalFileInfo(localKey, logger) {\n try {\n localStorage.removeItem(localKey);\n } catch (err) {\n logger.warn(new QiniuError(QiniuErrorName.RemoveCacheFailed, \"removeLocalFileInfo failed. key: \" + localKey));\n }\n}\nexport function getLocalFileInfo(localKey, logger) {\n var localInfoString = null;\n try {\n localInfoString = localStorage.getItem(localKey);\n } catch (_a) {\n logger.warn(new QiniuError(QiniuErrorName.ReadCacheFailed, \"getLocalFileInfo failed. key: \" + localKey));\n }\n if (localInfoString == null) {\n return null;\n }\n var localInfo = null;\n try {\n localInfo = JSON.parse(localInfoString);\n } catch (_b) {\n // 本地信息已被破坏,直接删除\n removeLocalFileInfo(localKey, logger);\n logger.warn(new QiniuError(QiniuErrorName.InvalidCacheData, \"getLocalFileInfo failed to parse. key: \" + localKey));\n }\n return localInfo;\n}\nexport function getAuthHeaders(token) {\n var auth = 'UpToken ' + token;\n return {\n Authorization: auth\n };\n}\nexport function getHeadersForChunkUpload(token) {\n var header = getAuthHeaders(token);\n return __assign({\n 'content-type': 'application/octet-stream'\n }, header);\n}\nexport function getHeadersForMkFile(token) {\n var header = getAuthHeaders(token);\n return __assign({\n 'content-type': 'application/json'\n }, header);\n}\nexport function createXHR() {\n if (window.XMLHttpRequest) {\n return new XMLHttpRequest();\n }\n if (window.ActiveXObject) {\n return new window.ActiveXObject('Microsoft.XMLHTTP');\n }\n throw new QiniuError(QiniuErrorName.NotAvailableXMLHttpRequest, 'the current environment does not support.');\n}\nexport function computeMd5(data) {\n return __awaiter(this, void 0, void 0, function () {\n var buffer, spark;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4 /*yield*/, readAsArrayBuffer(data)];\n case 1:\n buffer = _a.sent();\n spark = new SparkMD5.ArrayBuffer();\n spark.append(buffer);\n return [2 /*return*/, spark.end()];\n }\n });\n });\n}\nexport function readAsArrayBuffer(data) {\n return new Promise(function (resolve, reject) {\n var reader = new FileReader();\n // evt 类型目前存在问题 https://github.com/Microsoft/TypeScript/issues/4163\n reader.onload = function (evt) {\n if (evt.target) {\n var body = evt.target.result;\n resolve(body);\n } else {\n reject(new QiniuError(QiniuErrorName.InvalidProgressEventTarget, 'progress event target is undefined'));\n }\n };\n reader.onerror = function () {\n reject(new QiniuError(QiniuErrorName.FileReaderReadFailed, 'fileReader read failed'));\n };\n reader.readAsArrayBuffer(data);\n });\n}\nexport function request(url, options) {\n return new Promise(function (resolve, reject) {\n var xhr = createXHR();\n xhr.open(options.method, url);\n if (options.onCreate) {\n options.onCreate(xhr);\n }\n if (options.headers) {\n var headers_1 = options.headers;\n Object.keys(headers_1).forEach(function (k) {\n xhr.setRequestHeader(k, headers_1[k]);\n });\n }\n xhr.upload.addEventListener('progress', function (evt) {\n if (evt.lengthComputable && options.onProgress) {\n options.onProgress({\n loaded: evt.loaded,\n total: evt.total\n });\n }\n });\n xhr.onreadystatechange = function () {\n var responseText = xhr.responseText;\n if (xhr.readyState !== 4) {\n return;\n }\n var reqId = xhr.getResponseHeader('x-reqId') || '';\n if (xhr.status === 0) {\n // 发生 0 基本都是网络错误,常见的比如跨域、断网、host 解析失败、系统拦截等等\n reject(new QiniuNetworkError('network error.', reqId));\n return;\n }\n if (xhr.status !== 200) {\n var message = \"xhr request failed, code: \" + xhr.status;\n if (responseText) {\n message += \" response: \" + responseText;\n }\n var data = void 0;\n try {\n data = JSON.parse(responseText);\n } catch (_a) {\n // 无需处理该错误、可能拿到非 json 格式的响应是预期的\n }\n reject(new QiniuRequestError(xhr.status, reqId, message, data));\n return;\n }\n try {\n resolve({\n data: JSON.parse(responseText),\n reqId: reqId\n });\n } catch (err) {\n reject(err);\n }\n };\n xhr.send(options.body);\n });\n}\nexport function getPortFromUrl(url) {\n if (url && url.match) {\n var groups = url.match(/(^https?)/);\n if (!groups) {\n return '';\n }\n var type = groups[1];\n groups = url.match(/^https?:\\/\\/([^:^/]*):(\\d*)/);\n if (groups) {\n return groups[2];\n }\n if (type === 'http') {\n return '80';\n }\n return '443';\n }\n return '';\n}\nexport function getDomainFromUrl(url) {\n if (url && url.match) {\n var groups = url.match(/^https?:\\/\\/([^:^/]*)/);\n return groups ? groups[1] : '';\n }\n return '';\n}\nexport function getPutPolicy(token) {\n if (!token) throw new QiniuError(QiniuErrorName.InvalidToken, 'invalid token.');\n var segments = token.split(':');\n if (segments.length === 1) throw new QiniuError(QiniuErrorName.InvalidToken, 'invalid token segments.');\n // token 构造的差异参考:https://github.com/qbox/product/blob/master/kodo/auths/UpToken.md#admin-uptoken-authorization\n var assessKey = segments.length > 3 ? segments[1] : segments[0];\n if (!assessKey) throw new QiniuError(QiniuErrorName.InvalidToken, 'missing assess key field.');\n var putPolicy = null;\n try {\n putPolicy = JSON.parse(urlSafeBase64Decode(segments[segments.length - 1]));\n } catch (error) {\n throw new QiniuError(QiniuErrorName.InvalidToken, 'token parse failed.');\n }\n if (putPolicy == null) {\n throw new QiniuError(QiniuErrorName.InvalidToken, 'putPolicy is null.');\n }\n if (putPolicy.scope == null) {\n throw new QiniuError(QiniuErrorName.InvalidToken, 'scope field is null.');\n }\n var bucketName = putPolicy.scope.split(':')[0];\n if (!bucketName) {\n throw new QiniuError(QiniuErrorName.InvalidToken, 'resolve bucketName failed.');\n }\n return {\n assessKey: assessKey,\n bucketName: bucketName,\n scope: putPolicy.scope\n };\n}\nexport function createObjectURL(file) {\n var URL = window.URL || window.webkitURL || window.mozURL;\n // FIXME: 需要 revokeObjectURL\n return URL.createObjectURL(file);\n}","map":{"version":3,"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","__generator","body","_","label","sent","trys","ops","f","y","g","verb","Symbol","iterator","v","op","TypeError","pop","push","SparkMD5","QiniuErrorName","QiniuError","QiniuRequestError","QiniuNetworkError","urlSafeBase64Decode","MB","Math","pow","getChunks","file","blockSize","chunkByteSize","size","chunks","count","ceil","chunk","slice","isMetaDataValid","params","keys","every","key","indexOf","isCustomVarsValid","sum","list","reduce","data","loaded","setLocalFileInfo","localKey","info","logger","localStorage","setItem","JSON","stringify","err","warn","WriteCacheFailed","createLocalKey","name","removeLocalFileInfo","removeItem","RemoveCacheFailed","getLocalFileInfo","localInfoString","getItem","_a","ReadCacheFailed","localInfo","parse","_b","InvalidCacheData","getAuthHeaders","token","auth","Authorization","getHeadersForChunkUpload","header","getHeadersForMkFile","createXHR","window","XMLHttpRequest","ActiveXObject","NotAvailableXMLHttpRequest","computeMd5","buffer","spark","readAsArrayBuffer","ArrayBuffer","append","end","reader","FileReader","onload","evt","target","InvalidProgressEventTarget","onerror","FileReaderReadFailed","request","url","options","xhr","open","method","onCreate","headers","headers_1","forEach","k","setRequestHeader","upload","addEventListener","lengthComputable","onProgress","total","onreadystatechange","responseText","readyState","reqId","getResponseHeader","status","message","send","getPortFromUrl","match","groups","type","getDomainFromUrl","getPutPolicy","InvalidToken","segments","split","assessKey","putPolicy","error","scope","bucketName","createObjectURL","URL","webkitURL","mozURL"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/qiniu-js/esm/utils/helper.js"],"sourcesContent":["var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nimport SparkMD5 from 'spark-md5';\nimport { QiniuErrorName, QiniuError, QiniuRequestError, QiniuNetworkError } from '../errors';\nimport { urlSafeBase64Decode } from './base64';\nexport var MB = Math.pow(1024, 2);\n// 文件分块\nexport function getChunks(file, blockSize) {\n var chunkByteSize = blockSize * MB; // 转换为字节\n // 如果 chunkByteSize 比文件大,则直接取文件的大小\n if (chunkByteSize > file.size) {\n chunkByteSize = file.size;\n }\n else {\n // 因为最多 10000 chunk,所以如果 chunkSize 不符合则把每片 chunk 大小扩大两倍\n while (file.size > chunkByteSize * 10000) {\n chunkByteSize *= 2;\n }\n }\n var chunks = [];\n var count = Math.ceil(file.size / chunkByteSize);\n for (var i = 0; i < count; i++) {\n var chunk = file.slice(chunkByteSize * i, i === count - 1 ? file.size : chunkByteSize * (i + 1));\n chunks.push(chunk);\n }\n return chunks;\n}\nexport function isMetaDataValid(params) {\n return Object.keys(params).every(function (key) { return key.indexOf('x-qn-meta-') === 0; });\n}\nexport function isCustomVarsValid(params) {\n return Object.keys(params).every(function (key) { return key.indexOf('x:') === 0; });\n}\nexport function sum(list) {\n return list.reduce(function (data, loaded) { return data + loaded; }, 0);\n}\nexport function setLocalFileInfo(localKey, info, logger) {\n try {\n localStorage.setItem(localKey, JSON.stringify(info));\n }\n catch (err) {\n logger.warn(new QiniuError(QiniuErrorName.WriteCacheFailed, \"setLocalFileInfo failed: \" + localKey));\n }\n}\nexport function createLocalKey(name, key, size) {\n var localKey = key == null ? '_' : \"_key_\" + key + \"_\";\n return \"qiniu_js_sdk_upload_file_name_\" + name + localKey + \"size_\" + size;\n}\nexport function removeLocalFileInfo(localKey, logger) {\n try {\n localStorage.removeItem(localKey);\n }\n catch (err) {\n logger.warn(new QiniuError(QiniuErrorName.RemoveCacheFailed, \"removeLocalFileInfo failed. key: \" + localKey));\n }\n}\nexport function getLocalFileInfo(localKey, logger) {\n var localInfoString = null;\n try {\n localInfoString = localStorage.getItem(localKey);\n }\n catch (_a) {\n logger.warn(new QiniuError(QiniuErrorName.ReadCacheFailed, \"getLocalFileInfo failed. key: \" + localKey));\n }\n if (localInfoString == null) {\n return null;\n }\n var localInfo = null;\n try {\n localInfo = JSON.parse(localInfoString);\n }\n catch (_b) {\n // 本地信息已被破坏,直接删除\n removeLocalFileInfo(localKey, logger);\n logger.warn(new QiniuError(QiniuErrorName.InvalidCacheData, \"getLocalFileInfo failed to parse. key: \" + localKey));\n }\n return localInfo;\n}\nexport function getAuthHeaders(token) {\n var auth = 'UpToken ' + token;\n return { Authorization: auth };\n}\nexport function getHeadersForChunkUpload(token) {\n var header = getAuthHeaders(token);\n return __assign({ 'content-type': 'application/octet-stream' }, header);\n}\nexport function getHeadersForMkFile(token) {\n var header = getAuthHeaders(token);\n return __assign({ 'content-type': 'application/json' }, header);\n}\nexport function createXHR() {\n if (window.XMLHttpRequest) {\n return new XMLHttpRequest();\n }\n if (window.ActiveXObject) {\n return new window.ActiveXObject('Microsoft.XMLHTTP');\n }\n throw new QiniuError(QiniuErrorName.NotAvailableXMLHttpRequest, 'the current environment does not support.');\n}\nexport function computeMd5(data) {\n return __awaiter(this, void 0, void 0, function () {\n var buffer, spark;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, readAsArrayBuffer(data)];\n case 1:\n buffer = _a.sent();\n spark = new SparkMD5.ArrayBuffer();\n spark.append(buffer);\n return [2 /*return*/, spark.end()];\n }\n });\n });\n}\nexport function readAsArrayBuffer(data) {\n return new Promise(function (resolve, reject) {\n var reader = new FileReader();\n // evt 类型目前存在问题 https://github.com/Microsoft/TypeScript/issues/4163\n reader.onload = function (evt) {\n if (evt.target) {\n var body = evt.target.result;\n resolve(body);\n }\n else {\n reject(new QiniuError(QiniuErrorName.InvalidProgressEventTarget, 'progress event target is undefined'));\n }\n };\n reader.onerror = function () {\n reject(new QiniuError(QiniuErrorName.FileReaderReadFailed, 'fileReader read failed'));\n };\n reader.readAsArrayBuffer(data);\n });\n}\nexport function request(url, options) {\n return new Promise(function (resolve, reject) {\n var xhr = createXHR();\n xhr.open(options.method, url);\n if (options.onCreate) {\n options.onCreate(xhr);\n }\n if (options.headers) {\n var headers_1 = options.headers;\n Object.keys(headers_1).forEach(function (k) {\n xhr.setRequestHeader(k, headers_1[k]);\n });\n }\n xhr.upload.addEventListener('progress', function (evt) {\n if (evt.lengthComputable && options.onProgress) {\n options.onProgress({\n loaded: evt.loaded,\n total: evt.total\n });\n }\n });\n xhr.onreadystatechange = function () {\n var responseText = xhr.responseText;\n if (xhr.readyState !== 4) {\n return;\n }\n var reqId = xhr.getResponseHeader('x-reqId') || '';\n if (xhr.status === 0) {\n // 发生 0 基本都是网络错误,常见的比如跨域、断网、host 解析失败、系统拦截等等\n reject(new QiniuNetworkError('network error.', reqId));\n return;\n }\n if (xhr.status !== 200) {\n var message = \"xhr request failed, code: \" + xhr.status;\n if (responseText) {\n message += \" response: \" + responseText;\n }\n var data = void 0;\n try {\n data = JSON.parse(responseText);\n }\n catch (_a) {\n // 无需处理该错误、可能拿到非 json 格式的响应是预期的\n }\n reject(new QiniuRequestError(xhr.status, reqId, message, data));\n return;\n }\n try {\n resolve({\n data: JSON.parse(responseText),\n reqId: reqId\n });\n }\n catch (err) {\n reject(err);\n }\n };\n xhr.send(options.body);\n });\n}\nexport function getPortFromUrl(url) {\n if (url && url.match) {\n var groups = url.match(/(^https?)/);\n if (!groups) {\n return '';\n }\n var type = groups[1];\n groups = url.match(/^https?:\\/\\/([^:^/]*):(\\d*)/);\n if (groups) {\n return groups[2];\n }\n if (type === 'http') {\n return '80';\n }\n return '443';\n }\n return '';\n}\nexport function getDomainFromUrl(url) {\n if (url && url.match) {\n var groups = url.match(/^https?:\\/\\/([^:^/]*)/);\n return groups ? groups[1] : '';\n }\n return '';\n}\nexport function getPutPolicy(token) {\n if (!token)\n throw new QiniuError(QiniuErrorName.InvalidToken, 'invalid token.');\n var segments = token.split(':');\n if (segments.length === 1)\n throw new QiniuError(QiniuErrorName.InvalidToken, 'invalid token segments.');\n // token 构造的差异参考:https://github.com/qbox/product/blob/master/kodo/auths/UpToken.md#admin-uptoken-authorization\n var assessKey = segments.length > 3 ? segments[1] : segments[0];\n if (!assessKey)\n throw new QiniuError(QiniuErrorName.InvalidToken, 'missing assess key field.');\n var putPolicy = null;\n try {\n putPolicy = JSON.parse(urlSafeBase64Decode(segments[segments.length - 1]));\n }\n catch (error) {\n throw new QiniuError(QiniuErrorName.InvalidToken, 'token parse failed.');\n }\n if (putPolicy == null) {\n throw new QiniuError(QiniuErrorName.InvalidToken, 'putPolicy is null.');\n }\n if (putPolicy.scope == null) {\n throw new QiniuError(QiniuErrorName.InvalidToken, 'scope field is null.');\n }\n var bucketName = putPolicy.scope.split(':')[0];\n if (!bucketName) {\n throw new QiniuError(QiniuErrorName.InvalidToken, 'resolve bucketName failed.');\n }\n return { assessKey: assessKey, bucketName: bucketName, scope: putPolicy.scope };\n}\nexport function createObjectURL(file) {\n var URL = window.URL || window.webkitURL || window.mozURL;\n // FIXME: 需要 revokeObjectURL\n return URL.createObjectURL(file);\n}\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}