diff --git a/packages/client/src/handlers/queries/files/local-file-get.ts b/packages/client/src/handlers/queries/files/local-file-get.ts index f386f0b8..6c500ca2 100644 --- a/packages/client/src/handlers/queries/files/local-file-get.ts +++ b/packages/client/src/handlers/queries/files/local-file-get.ts @@ -99,6 +99,19 @@ export class LocalFileGetQueryHandler }; } + if ( + event.type === 'node.updated' && + event.accountId === input.accountId && + event.workspaceId === input.workspaceId && + event.node.id === input.fileId + ) { + const newOutput = await this.handleQuery(input); + return { + hasChanges: true, + result: newOutput, + }; + } + return { hasChanges: false, }; diff --git a/packages/client/src/jobs/file-download.ts b/packages/client/src/jobs/file-download.ts index 1568910b..8b340058 100644 --- a/packages/client/src/jobs/file-download.ts +++ b/packages/client/src/jobs/file-download.ts @@ -84,7 +84,7 @@ export class FileDownloadJobHandler implements JobHandler { if (file.attributes.status === FileStatus.Pending) { return { type: 'retry', - delay: ms('10 seconds'), + delay: ms('5 seconds'), }; } diff --git a/packages/ui/src/components/files/file-block.tsx b/packages/ui/src/components/files/file-block.tsx index 7bebec9f..2f6cfb52 100644 --- a/packages/ui/src/components/files/file-block.tsx +++ b/packages/ui/src/components/files/file-block.tsx @@ -1,7 +1,5 @@ import { LocalFileNode } from '@colanode/client/types'; -import { FileStatus } from '@colanode/core'; import { FileIcon } from '@colanode/ui/components/files/file-icon'; -import { FileNotUploaded } from '@colanode/ui/components/files/file-not-uploaded'; import { FilePreview } from '@colanode/ui/components/files/file-preview'; import { useLayout } from '@colanode/ui/contexts/layout'; import { useWorkspace } from '@colanode/ui/contexts/workspace'; @@ -28,22 +26,8 @@ export const FileBlock = ({ id }: FileBlockProps) => { } const file = nodeGetQuery.data as LocalFileNode; - const isReady = file.attributes.status === FileStatus.Ready; const canPreview = canPreviewFile(file.attributes.subtype); - if (!isReady) { - return ( -
{ - layout.previewLeft(id, true); - }} - > - -
- ); - } - if (canPreview) { return (
{ const canPreview = canPreviewFile(file.attributes.subtype); - const isReady = file.attributes.status === FileStatus.Ready; return (
@@ -23,9 +20,7 @@ export const FileBody = ({ file }: FileBodyProps) => {
- {!isReady ? ( - - ) : canPreview ? ( + {canPreview ? ( ) : ( diff --git a/packages/ui/src/components/files/file-preview.tsx b/packages/ui/src/components/files/file-preview.tsx index 222f6c17..4880bda6 100644 --- a/packages/ui/src/components/files/file-preview.tsx +++ b/packages/ui/src/components/files/file-preview.tsx @@ -1,6 +1,8 @@ import { DownloadStatus, LocalFileNode } from '@colanode/client/types'; +import { FileStatus } from '@colanode/core'; import { FileDownloadProgress } from '@colanode/ui/components/files/file-download-progress'; import { FileNoPreview } from '@colanode/ui/components/files/file-no-preview'; +import { FileNotUploaded } from '@colanode/ui/components/files/file-not-uploaded'; import { FilePreviewAudio } from '@colanode/ui/components/files/previews/file-preview-audio'; import { FilePreviewImage } from '@colanode/ui/components/files/previews/file-preview-image'; import { FilePreviewVideo } from '@colanode/ui/components/files/previews/file-preview-video'; @@ -49,5 +51,10 @@ export const FilePreview = ({ file }: FilePreviewProps) => { return ; } + const isReady = file.attributes.status === FileStatus.Ready; + if (!isReady) { + return ; + } + return ; };