From 795998e35e25bb3a08ff771001e2eab6814d8036 Mon Sep 17 00:00:00 2001 From: Jaied Al Sabid <87969327+jaieds@users.noreply.github.com> Date: Thu, 21 Nov 2024 13:09:28 +0600 Subject: [PATCH 1/6] Updated the loader icon classNames --- src/components/loader/loader.tsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/components/loader/loader.tsx b/src/components/loader/loader.tsx index 9f555b5c..c3ad9d02 100644 --- a/src/components/loader/loader.tsx +++ b/src/components/loader/loader.tsx @@ -28,17 +28,17 @@ export const Loader = ( { }?.[ variant ]; const sizeClassNames = { - sm: '[&>svg]:h-4 [&>svg]:w-4', - md: '[&>svg]:h-5 [&>svg]:w-5', - lg: '[&>svg]:h-6 [&>svg]:w-6', - xl: '[&>svg]:h-8 [&>svg]:w-8', + sm: '[&>svg]:size-4', + md: '[&>svg]:size-5', + lg: '[&>svg]:size-6', + xl: '[&>svg]:size-8', }?.[ size ]; return ( - { icon ? icon : } + { icon ? icon : } ); }; From fce9f95f204864e3282475b0c2ad3f5e363b000a Mon Sep 17 00:00:00 2001 From: Jaied Al Sabid <87969327+jaieds@users.noreply.github.com> Date: Thu, 21 Nov 2024 13:12:36 +0600 Subject: [PATCH 2/6] Added decorators to the Dropzone component story --- src/components/dropzone/dropzone.stories.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/components/dropzone/dropzone.stories.tsx b/src/components/dropzone/dropzone.stories.tsx index e9127d1d..d91a4e48 100644 --- a/src/components/dropzone/dropzone.stories.tsx +++ b/src/components/dropzone/dropzone.stories.tsx @@ -15,6 +15,11 @@ const meta: Meta = { control: { type: 'select' }, }, }, + decorators: ( Story ) => ( +
+ +
+ ), }; export default meta; From 57392976e88f88a601ce27550779cfa007bb370d Mon Sep 17 00:00:00 2001 From: Jaied Al Sabid <87969327+jaieds@users.noreply.github.com> Date: Thu, 21 Nov 2024 13:13:00 +0600 Subject: [PATCH 3/6] fix: Dropzone component UI --- src/components/dropzone/dropzone.tsx | 46 ++++++++++++++++------------ 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/src/components/dropzone/dropzone.tsx b/src/components/dropzone/dropzone.tsx index 8fc286f4..7eddebc3 100644 --- a/src/components/dropzone/dropzone.tsx +++ b/src/components/dropzone/dropzone.tsx @@ -1,4 +1,4 @@ -import { useState, createContext, useContext, useRef } from 'react'; +import { useState, createContext, useContext, useRef, useMemo } from 'react'; import { CloudUpload, File, ImageOff, Trash } from 'lucide-react'; import { cn, formatFileSize } from '@/utilities/functions'; import Loader from '../loader'; @@ -46,6 +46,14 @@ export const FilePreview = () => { return null; } + const renderFileIcon = useMemo(() => { + return ( + + + + ); + } , [ file ]); + return (
{ error && 'border-alert-border-danger bg-alert-background-danger' ) } > -
- { isLoading && } +
+ { isLoading && renderFileIcon } { ! isLoading && ( file.type.startsWith( 'image/' ) ? (
{ ) }
) : ( - - - + renderFileIcon ) ) } -
- +
+ { isLoading ? 'Loading...' : file.name } { ! isLoading && ( @@ -94,17 +100,19 @@ export const FilePreview = () => { ) }
+ { isLoading ? ( + + + + ) : ( + + ) }
- { isLoading ? ( - - ) : ( - - ) }
); }; @@ -210,7 +218,7 @@ export const Dropzone = ( {