diff --git a/packages/presentation/src/file.ts b/packages/presentation/src/file.ts index 2e3b615c53..4843d28a70 100644 --- a/packages/presentation/src/file.ts +++ b/packages/presentation/src/file.ts @@ -156,6 +156,18 @@ export function getFileUploadParams (blobId: string, blob: Blob): FileUploadPara return { method, url, headers } } +/** + * @public + */ +export function getBlobUrl (file: string): string { + const fileUrl = getFileUrl(file) + const u = new URL(fileUrl) + if (u.searchParams.has('file')) { + return u.toString() + } + return fileUrl.split('/').slice(0, -1).join('/') +} + /** * @public */ diff --git a/packages/presentation/src/preview.ts b/packages/presentation/src/preview.ts index d9b7d7da71..62eeefcb28 100644 --- a/packages/presentation/src/preview.ts +++ b/packages/presentation/src/preview.ts @@ -2,7 +2,7 @@ import type { Blob, Ref } from '@hcengineering/core' import { concatLink } from '@hcengineering/core' import { getMetadata } from '@hcengineering/platform' -import { getFileUrl, getCurrentWorkspaceUuid } from './file' +import { getFileUrl, getCurrentWorkspaceUuid, getBlobUrl } from './file' import presentation from './plugin' export interface PreviewConfig { @@ -158,7 +158,12 @@ export async function getVideoMeta (file: string, filename?: string): Promise