Skip to content

Commit 07355d6

Browse files
committed
feat: Set src as key on Thumbnail instances to force the re-render when src change
1 parent ef3b9ea commit 07355d6

File tree

4 files changed

+9
-6
lines changed

4 files changed

+9
-6
lines changed

Diff for: packages/ui/src/elements/BulkUpload/FileSidebar/index.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import { useModal } from '@faceless-ui/modal'
44
import { useWindowInfo } from '@faceless-ui/window-info'
5-
import { isImage } from 'payload/shared'
65
import React from 'react'
76
import AnimateHeightImport from 'react-animate-height'
87

@@ -157,7 +156,8 @@ export function FileSidebar() {
157156
>
158157
<Thumbnail
159158
className={`${baseClass}__thumbnail`}
160-
fileSrc={isImage(currentFile.type) ? thumbnailUrls[index] : undefined}
159+
fileSrc={thumbnailUrls[index]}
160+
key={thumbnailUrls[index]}
161161
/>
162162
<div className={`${baseClass}__fileDetails`}>
163163
<p className={`${baseClass}__fileName`} title={currentFile.name}>

Diff for: packages/ui/src/elements/BulkUpload/FormsManager/index.tsx

+1-2
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,7 @@ export function FormsManagerProvider({ children }: FormsManagerProps) {
117117
processedFiles.current.add(file)
118118

119119
// Generate thumbnail and update ref
120-
const thumbnailUrl = await createThumbnail(file)
121-
newThumbnails[i] = thumbnailUrl
120+
newThumbnails[i] = await createThumbnail(file, null, file.type)
122121
thumbnailUrlsRef.current = newThumbnails
123122

124123
// Trigger re-render in batches

Diff for: packages/ui/src/elements/Table/DefaultCell/fields/File/index.tsx

+3-1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ export const FileCell: React.FC<FileCellProps> = ({
1616
rowData,
1717
}) => {
1818
const { collectionSlug, uploadConfig } = customCellContext
19+
const src = rowData?.thumbnailURL || rowData?.url
1920

2021
return (
2122
<div className={baseClass}>
@@ -26,7 +27,8 @@ export const FileCell: React.FC<FileCellProps> = ({
2627
...rowData,
2728
filename,
2829
}}
29-
fileSrc={rowData?.thumbnailURL || rowData?.url}
30+
fileSrc={src}
31+
key={src}
3032
size="small"
3133
uploadConfig={uploadConfig}
3234
/>

Diff for: packages/ui/src/elements/Upload/index.tsx

+3-1
Original file line numberDiff line numberDiff line change
@@ -326,7 +326,9 @@ export const Upload: React.FC<UploadProps> = (props) => {
326326
<div className={`${baseClass}__thumbnail-wrap`}>
327327
<Thumbnail
328328
collectionSlug={collectionSlug}
329-
fileSrc={isImage(value.type) ? fileSrc : null}
329+
doc={{ mimeType: value.type }}
330+
fileSrc={fileSrc}
331+
key={fileSrc}
330332
/>
331333
</div>
332334
<div className={`${baseClass}__file-adjustments`}>

0 commit comments

Comments
 (0)