import React, { useEffect } from 'react' import { useState } from 'react' import { useSetAtom } from 'jotai' import { XIcon } from 'lucide-react' import { currentPromptAtom, fileUploadAtom } from '@/containers/Providers/Jotai' import { getBase64 } from '@/utils/base64' type Props = { file: File } const ImageUploadPreview: React.FC = ({ file }) => { const [base64, setBase64] = useState() const setFileUpload = useSetAtom(fileUploadAtom) const setCurrentPrompt = useSetAtom(currentPromptAtom) useEffect(() => { getBase64(file) .then((base64) => setBase64(base64)) .catch((err) => console.error(err)) }, [file]) if (!base64) { return } const onDeleteClick = () => { setFileUpload(undefined) setCurrentPrompt('') } return (
{file.name}
{file.name.replaceAll(/[-._]/g, ' ')}
) } export default React.memo(ImageUploadPreview)