import { Typography, Box, useTheme, ButtonBase, Modal, TextField, InputAdornment, } from "@mui/material"; import UploadIcon from "../../../assets/icons/UploadIcon"; import SearchIcon from "../../../assets/icons/SearchIcon"; import * as React from "react"; import UnsplashIcon from "../../../assets/icons/Unsplash.svg"; import type { DragEvent } from "react"; interface ModalkaProps { open: boolean; onClose: () => void; imgHC: (imgInp: FileList | null) => void; } export const UploadImageModal: React.FC = ({ open, onClose, imgHC, }) => { const theme = useTheme(); const dropZone = React.useRef(null); const [ready, setReady] = React.useState(false); const handleDragEnter = (event: React.DragEvent) => { event.preventDefault(); setReady(true); }; const handleDrop = (event: DragEvent) => { event.preventDefault(); event.stopPropagation(); imgHC(event.dataTransfer.files); }; return ( Добавьте изображение imgHC(event.target.files)} hidden accept="image/*" multiple type="file" data-cy="upload-image-input" /> ) => event.preventDefault() } onDrop={handleDrop} ref={dropZone} sx={{ width: "580px", padding: "33px 10px 33px 55px", display: "flex", alignItems: "center", backgroundColor: theme.palette.background.default, border: `1px solid ${ready ? "red" : theme.palette.grey2.main}`, borderRadius: "8px", gap: "55px", }} onDragEnter={handleDragEnter} // Применяем обработчик onDragEnter напрямую > Загрузите или перетяните сюда файл Принимает JPG, PNG, и GIF формат — максимум 5mb Или выберите на фотостоке path": { stroke: "#9A9AAF" }, }} > ), }} /> ); };