t-comm
Version:
专业、稳定、纯粹的工具库
71 lines (68 loc) • 2.3 kB
JavaScript
import { purgeUrlCache } from './purge-url-cache.mjs';
import { uploadCOSFile } from '../cos/cos.mjs';
import { createPurgeTask } from '../eo/purge.mjs';
import '../../tslib.es6-096fffdd.js';
import '../base/base.mjs';
import 'axios';
import './config.mjs';
import '../cos/helper.mjs';
import '../../bite/format-bite.mjs';
function uploadCOSFileAndPurgeUrlCache(_a) {
var secretId = _a.secretId,
secretKey = _a.secretKey,
bucket = _a.bucket,
region = _a.region,
files = _a.files,
area = _a.area,
useEO = _a.useEO,
eoOptions = _a.eoOptions;
return new Promise(function (resolve, reject) {
uploadCOSFile({
files: files,
secretId: secretId,
secretKey: secretKey,
bucket: bucket,
region: region
}).then(function (uploadRes) {
var doPurge = useEO ? function () {
return createPurgeTask({
secretId: secretId,
secretKey: secretKey,
targets: files.map(function (item) {
return item.url;
}),
zoneId: (eoOptions === null || eoOptions === void 0 ? void 0 : eoOptions.zoneId) || '',
method: eoOptions === null || eoOptions === void 0 ? void 0 : eoOptions.method,
type: eoOptions === null || eoOptions === void 0 ? void 0 : eoOptions.type
});
} : function () {
return purgeUrlCache({
secretId: secretId,
secretKey: secretKey,
urls: files.map(function (item) {
return item.url;
}),
area: area
});
};
doPurge().then(function (purgeRes) {
resolve({
uploadResult: (uploadRes === null || uploadRes === void 0 ? void 0 : uploadRes.data) || uploadRes,
purgeResult: (purgeRes === null || purgeRes === void 0 ? void 0 : purgeRes.data) || purgeRes,
code: 2
});
})["catch"](function (err) {
console.warn('[purgeUrlCache] err: ', err);
resolve({
uploadResult: (uploadRes === null || uploadRes === void 0 ? void 0 : uploadRes.data) || uploadRes,
purgeResult: err,
code: 1
});
});
})["catch"](function (err) {
console.warn('[uploadCOSFile] err: ', err);
reject(err);
});
});
}
export { uploadCOSFileAndPurgeUrlCache };