From 35eb16bbec727ee2aa676d8f6fa8c90ce05fc79c Mon Sep 17 00:00:00 2001 From: Jarrod Flesch <30633324+JarrodMFlesch@users.noreply.github.com> Date: Wed, 26 Jun 2024 13:20:54 -0400 Subject: [PATCH] feat: ability to pass uploadActions to the Upload component (#6941) --- .../ui/src/elements/FileDetails/index.tsx | 25 +++++-- packages/ui/src/elements/Upload/index.scss | 2 +- packages/ui/src/elements/Upload/index.tsx | 66 +++++++++++++------ packages/ui/src/fields/Upload/Input.tsx | 3 + .../components/CustomUpload/index.client.tsx | 23 ++++++- 5 files changed, 90 insertions(+), 29 deletions(-) diff --git a/packages/ui/src/elements/FileDetails/index.tsx b/packages/ui/src/elements/FileDetails/index.tsx index 04879d5c84..0f0a4aec6d 100644 --- a/packages/ui/src/elements/FileDetails/index.tsx +++ b/packages/ui/src/elements/FileDetails/index.tsx @@ -1,5 +1,4 @@ 'use client' -import { isImage } from 'payload/shared' import React from 'react' import { UploadActions } from '../../elements/Upload/index.js' @@ -13,11 +12,12 @@ const baseClass = 'file-details' import type { Data, FileSizes, SanitizedCollectionConfig } from 'payload' export type FileDetailsProps = { - canEdit?: boolean collectionSlug: string + customUploadActions?: React.ReactNode[] doc: Data & { sizes?: FileSizes } + enableAdjustments?: boolean handleRemove?: () => void hasImageSizes?: boolean imageCacheTag?: string @@ -25,8 +25,16 @@ export type FileDetailsProps = { } export const FileDetails: React.FC = (props) => { - const { canEdit, collectionSlug, doc, handleRemove, hasImageSizes, imageCacheTag, uploadConfig } = - props + const { + collectionSlug, + customUploadActions, + doc, + enableAdjustments, + handleRemove, + hasImageSizes, + imageCacheTag, + uploadConfig, + } = props const { id, filename, filesize, height, mimeType, thumbnailURL, url, width } = doc @@ -52,9 +60,12 @@ export const FileDetails: React.FC = (props) => { width={width as number} /> - {isImage(mimeType as string) && mimeType !== 'image/svg+xml' && ( - - )} + {handleRemove && (