"use strict"; const common_vendor = require("../../../common/vendor.js"); const utils_ossUpload_oss_OSSConfig = require("./OSSConfig.js"); const config = require("../../../config.js"); function storeKey() { let s = []; let hexDigits = "0123456789abcdef"; for (let i = 0; i < 36; i++) { s[i] = hexDigits.substr(Math.floor(Math.random() * 16), 1); } s[14] = "4"; s[19] = hexDigits.substr(s[19] & 3 | 8, 1); s[8] = s[13] = s[18] = s[23] = "-"; return s.join(""); } function storeFolder() { const date = /* @__PURE__ */ new Date(); const formatNumber = (n) => { n = n.toString(); return n[1] ? n : "0" + n; }; return [date.getFullYear(), date.getMonth() + 1, date.getDate()].map(formatNumber).join("-"); } function ossUpload(filePath, key = storeKey(), folder = storeFolder()) { return new Promise((resolve, reject) => { if (folder && (folder == null ? void 0 : folder.length) > 0) { if (folder[0] == "/") folder = folder.slice(1, folder.length); if (folder[folder.length - 1] != "/") folder += "/"; key = folder + key; } const filePrefixArr = filePath.split("."); key += `.${filePrefixArr[filePrefixArr.length - 1]}`; let config$1 = { url: utils_ossUpload_oss_OSSConfig.OSSConfig.host, name: "file", filePath, formData: { key, policy: utils_ossUpload_oss_OSSConfig.OSSConfig.policyBase64, OSSAccessKeyId: utils_ossUpload_oss_OSSConfig.OSSConfig.accessid, success_action_status: "200", signature: utils_ossUpload_oss_OSSConfig.OSSConfig.signature }, success(res) { if (res.errMsg.includes("uploadFile:ok")) { resolve(config.ossConfig.aliOss.url + key); } else { reject(res); } }, fail(err) { reject(err); } }; common_vendor.index.uploadFile(config$1); }); } function ossUploadImage({ key, folder, compressed = true, //是否压缩 success, //成功时的回调 fail //失败时的回调 }) { const sizeType = [compressed ? "compressed" : "original"]; common_vendor.index.chooseImage({ count: 1, sizeType, success(res) { ossUpload(res.tempFilePaths[0], key, folder).then(success).catch(fail); }, fail }); } function ossUploadVideo({ key, folder, sourceType = ["album", "camera"], //album 从相册选视频, camera 使用相机拍摄 compressed = true, //是否压缩所选的视频源文件 maxDuration = 60, //拍摄视频最长拍摄时间, 单位秒。最长支持 60 秒 camera = "back", //调用相机方向, 'front'、'back', 默认'back' success, //成功时的回调 fail //失败时的回调 }) { common_vendor.index.chooseVideo({ sourceType, compressed, maxDuration, camera, success(res) { ossUpload(res.tempFilePath, key, folder).then(success).catch(fail); }, fail }); } const OSS = { ossUploadVideo, ossUploadImage, ossUpload }; exports.OSS = OSS; //# sourceMappingURL=../../../../.sourcemap/mp-weixin/utils/oss-upload/oss/index.js.map