UNPKG

@nu-art/file-upload

Version:

File Uploader - Express & Typescript based backend framework

24 lines 1.12 kB
import { apiWithBody, ModuleFE_BaseApi, ThunderDispatcher } from '@nu-art/thunderstorm/frontend/index'; import { currentTimeMillis } from '@nu-art/ts-common'; import { ApiDef_Assets, DBDef_Assets } from '../../shared/index.js'; export const dispatch_onAssetsListChanged = new ThunderDispatcher('__onAssetsUpdated'); export class ModuleFE_Assets_Class extends ModuleFE_BaseApi { vv1; constructor() { super(DBDef_Assets, dispatch_onAssetsListChanged); this.vv1 = { getReadSignedUrl: apiWithBody(ApiDef_Assets.vv1.getReadSignedUrl), }; } async resolveValidSignedUrl(assetId) { const asset = this.cache.unique(assetId); const signedUrl = (asset?.signedUrl?.validUntil || 0) > currentTimeMillis() ? asset?.signedUrl : undefined; if (signedUrl) return signedUrl.url; const request = this.vv1.getReadSignedUrl({ _id: assetId }); const response = await request.executeSync(); return response.signedUrl; } } export const ModuleFE_Assets = new ModuleFE_Assets_Class(); //# sourceMappingURL=ModuleFE_Assets.js.map