52 lines
1.7 KiB
JavaScript
52 lines
1.7 KiB
JavaScript
import { merge as y, cloneDeep as d } from "lodash-es";
|
||
import { b as g, u as m } from "./index-50ffe046.mjs";
|
||
import l from "ali-oss";
|
||
import "vue";
|
||
import "@fast-crud/fast-crud";
|
||
let a = null;
|
||
async function f(e) {
|
||
if (a != null && a.expiresTime > (/* @__PURE__ */ new Date()).getTime())
|
||
return a;
|
||
const n = await e.getAuthorization(e);
|
||
return a = n, a.expiresTime == null && (a.expiresTime = (/* @__PURE__ */ new Date()).getTime() + parseInt(n.expiration)), a;
|
||
}
|
||
async function p(e, s, n) {
|
||
let c = null;
|
||
!e.accessKeyId && !e.accessKeySecret && e.getAuthorization !== null ? c = await f({
|
||
key: s,
|
||
file: n,
|
||
...e
|
||
}) : console.warn("您还未配置getAuthorization,将使用accessKeySecret作为授权进行上传");
|
||
let t = null;
|
||
return c != null ? (t = new l({
|
||
region: e.region,
|
||
accessKeyId: c.accessKeyId,
|
||
accessKeySecret: c.accessKeySecret,
|
||
stsToken: c.securityToken,
|
||
bucket: e.bucket,
|
||
...e.sdkOpts
|
||
}), s = c.key || s) : t = new l({
|
||
region: e.region,
|
||
accessKeyId: e.accessKeyId,
|
||
accessKeySecret: e.accessKeySecret,
|
||
bucket: e.bucket,
|
||
...e.sdkOpts
|
||
}), { client: t, key: s };
|
||
}
|
||
async function w(e) {
|
||
const { file: s, fileName: n, onProgress: c } = e, t = e.options, o = await g(s, n, t), { client: u, key: i } = await p(t, o, s);
|
||
await u.put(i, s);
|
||
let r = { url: t.domain + "/" + i, key: i };
|
||
return t.successHandle && (r = await t.successHandle(r, t)), r;
|
||
}
|
||
async function I(e) {
|
||
const { getConfig: s } = m(), n = s("alioss"), c = e.options, t = y(d(n), c);
|
||
return e.options = t, await w(e);
|
||
}
|
||
export {
|
||
p as getOssClient,
|
||
f as getSts,
|
||
I as upload
|
||
};
|
||
//# sourceMappingURL=uploader-alioss-4003d93a.mjs.map
|