From f05b6a6037468f09694cd5d2eb0b039de9246d77 Mon Sep 17 00:00:00 2001 From: Peter Zimon Date: Wed, 7 Jun 2023 10:29:03 +0200 Subject: [PATCH] Added unstyled property to image uploads AdminX refs. https://github.com/TryGhost/Team/issues/3354 --- .../src/admin-x-ds/global/ImageUpload.tsx | 25 +++++++++----- .../settings/general/UserDetailModal.tsx | 9 ++--- .../site/designAndBranding/BrandSettings.tsx | 34 +++++++++++++++---- 3 files changed, 50 insertions(+), 18 deletions(-) diff --git a/ghost/admin-x-settings/src/admin-x-ds/global/ImageUpload.tsx b/ghost/admin-x-settings/src/admin-x-ds/global/ImageUpload.tsx index 6c543ff51d..c7e4879da8 100644 --- a/ghost/admin-x-settings/src/admin-x-ds/global/ImageUpload.tsx +++ b/ghost/admin-x-settings/src/admin-x-ds/global/ImageUpload.tsx @@ -8,6 +8,7 @@ interface ImageUploadProps { width?: string; height?: string; imageURL?: string; + unstyled?: boolean; imageClassName?: string; fileUploadClassName?: string; deleteButtonClassName?: string; @@ -22,18 +23,26 @@ const ImageUpload: React.FC = ({ width, height = '120px', imageURL, - imageClassName = 'group relative bg-cover', - fileUploadClassName = 'flex cursor-pointer items-center justify-center rounded border border-grey-100 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black', - deleteButtonClassName = 'invisible absolute right-4 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible', - deleteButtonContent = , + imageClassName, + fileUploadClassName, + deleteButtonClassName, + deleteButtonContent, + unstyled = false, onUpload, onDelete }) => { + if (!unstyled) { + imageClassName = imageClassName || 'group relative bg-cover'; + fileUploadClassName = fileUploadClassName || 'flex cursor-pointer items-center justify-center rounded border border-grey-100 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black'; + deleteButtonClassName = deleteButtonClassName || 'invisible absolute right-4 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible'; + deleteButtonContent = deleteButtonContent || ; + } + if (imageURL) { return (
- } + fileUploadClassName='rounded-full bg-black flex items-center justify-center opacity-80 transition hover:opacity-100 -ml-2 cursor-pointer h-[80px] w-[80px]' id='avatar' - imageClassName='relative rounded-full group bg-cover bg-center -ml-2' + imageClassName='relative rounded-full group bg-cover bg-center -ml-2 h-[80px] w-[80px]' imageURL={userData.profile_image} + unstyled={true} width='80px' onDelete={() => { handleImageDelete('profile_image'); diff --git a/ghost/admin-x-settings/src/components/settings/site/designAndBranding/BrandSettings.tsx b/ghost/admin-x-settings/src/components/settings/site/designAndBranding/BrandSettings.tsx index 567fbbce26..a098bb74aa 100644 --- a/ghost/admin-x-settings/src/components/settings/site/designAndBranding/BrandSettings.tsx +++ b/ghost/admin-x-settings/src/components/settings/site/designAndBranding/BrandSettings.tsx @@ -1,6 +1,6 @@ -import Button from '../../../../admin-x-ds/global/Button'; import Heading from '../../../../admin-x-ds/global/Heading'; import Hint from '../../../../admin-x-ds/global/Hint'; +import ImageUpload from '../../../../admin-x-ds/global/ImageUpload'; import React from 'react'; import SettingGroupContent from '../../../../admin-x-ds/settings/SettingGroupContent'; import TextField from '../../../../admin-x-ds/global/TextField'; @@ -40,16 +40,38 @@ const BrandSettings: React.FC = () => { Publication icon
A square, social icon, at least 60x60px -
- Publication logo -
- Publication cover -