oak-general-business/lib/utils/cos/index.frontend.js

29 lines
870 B
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.registerCos = registerCos;
exports.getCos = getCos;
exports.composeFileUrl = composeFileUrl;
const tslib_1 = require("tslib");
const assert_1 = require("oak-domain/lib/utils/assert");
const unknown_1 = tslib_1.__importDefault(require("./unknown"));
const CosDict = {
unknown: new unknown_1.default(), //只用来返回extraFile.extra1
};
/**
* 注入一个其它OSS上实现的uploader类
* @param clazz
*/
function registerCos(clazz) {
const instance = new clazz();
CosDict[instance.name] = instance;
}
function getCos(origin) {
(0, assert_1.assert)(CosDict.hasOwnProperty(origin));
return CosDict[origin];
}
function composeFileUrl(options) {
const { origin } = options.extraFile;
const cos = CosDict[origin];
return cos.composeFileUrl(options);
}