import { useRef, useState } from "react"; import { CheckCircle, ImageIcon, Images, Link, Paperclip, Upload, } from "lucide-react"; import Image from "next/image"; import { Popover, PopoverContent, PopoverTrigger, } from "@/components/ui/popover"; import { Button } from "@/components/ui/button"; import { Project } from "@/types"; import Loading from "@/components/loading"; import { useUser } from "@/hooks/useUser"; import { useEditor } from "@/hooks/useEditor"; import { useAi } from "@/hooks/useAi"; import { useLoginModal } from "@/components/contexts/login-context"; export const Uploader = ({ project }: { project: Project | undefined }) => { const { user } = useUser(); const { openLoginModal } = useLoginModal(); const { uploadFiles, isUploading, files, globalEditorLoading } = useEditor(); const { selectedFiles, setSelectedFiles, globalAiLoading } = useAi(); const [open, setOpen] = useState(false); const fileInputRef = useRef(null); if (!user) return ( ); return (
🎨
🖼️
💻

Add Custom Images

Upload images to your project and use them with DeepSite!

Uploaded Images

{files?.length > 0 ? (
{files.map((file: string) => (
setSelectedFiles( selectedFiles.includes(file) ? selectedFiles.filter((f) => f !== file) : [...selectedFiles, file] ) } > uploaded image {selectedFiles.includes(file) && (
)}
))}
) : (

No images uploaded yet

)}

Or import images from your computer

uploadFiles(e.target.files, project!)} />
); };