"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
|