import { Box, Button, ButtonBase, Modal, Typography, useTheme, } from "@mui/material"; import * as React from "react"; import SelectableButton from "@ui_kit/SelectableButton"; import CustomTextField from "@ui_kit/CustomTextField"; import { useState } from "react"; import UploadIcon from "../../assets/icons/UploadIcon"; import UploadBox from "@ui_kit/UploadBox"; import type { DragEvent } from "react"; type BackgroundType = "text" | "video"; type BackgroundTypeModal = "linkVideo" | "ownVideo"; export default function HelpQuestions() { const [open, setOpen] = useState(false); const [video, setVideo] = useState(""); const [backgroundType, setBackgroundType] = useState("text"); const [backgroundTypeModal, setBackgroundTypeModal] = useState("linkVideo"); const theme = useTheme(); const handleOpen = () => setOpen(true); const handleClose = () => setOpen(false); const videoHC = (fileList: FileList | null) => { if (fileList?.length) { const file = fileList[0]; setVideo(URL.createObjectURL(file)); handleClose(); } }; const handleDrop = (event: DragEvent) => { event.preventDefault(); event.stopPropagation(); videoHC(event.dataTransfer.files); }; return ( Подсказка консультанта setBackgroundType("text")} sx={{ maxWidth: "130px" }} > Текст setBackgroundType("video")} sx={{ maxWidth: "130px" }} > Видео {backgroundType === "text" ? ( <> ) : ( Загрузите видео {video ? ( Видео можно вставить с любого хостинга: YouTube, Vimeo или загрузить собственное setBackgroundTypeModal("linkVideo")} sx={{ maxWidth: "170px", padding: "10px" }} > Ссылка на видео setBackgroundTypeModal("ownVideo")} sx={{ maxWidth: "170px", padding: "10px" }} > Загрузить свое {backgroundTypeModal === "linkVideo" ? ( Ссылка на видео ) : ( Загрузите видео videoHC(event.target.files)} hidden accept="video/*" multiple type="file" /> ) => event.preventDefault() } onDrop={handleDrop} sx={{ width: "580px", padding: "33px 33px 33px 50px", display: "flex", alignItems: "center", backgroundColor: theme.palette.background.default, border: `1px solid ${theme.palette.grey2.main}`, borderRadius: "8px", gap: "50px", }} > Добавить видео Принимает .mp4 и .mov формат — максимум 100мб )} )} ); }