import { Box, Typography, Button, Paper, TextField, Link, InputAdornment } from "@mui/material"; import NameIcon from "@icons/ContactFormIcon/NameIcon"; import EmailIcon from "@icons/ContactFormIcon/EmailIcon"; import PhoneIcon from "@icons/ContactFormIcon/PhoneIcon"; import TextIcon from "@icons/ContactFormIcon/TextIcon"; import AddressIcon from "@icons/ContactFormIcon/AddressIcon"; import CustomCheckbox from "@ui_kit/CustomCheckbox"; import { useState } from "react"; import { useQuestionsStore } from "@root/quizData/store"; import type { AnyTypedQuizQuestion } from "../../model/questionTypes/shared"; type ContactFormProps = { currentQuestion: AnyTypedQuizQuestion; showResultForm: boolean; setShowContactForm: (show: boolean) => void; setShowResultForm: (show: boolean) => void; }; const icons = [ { type: "name", icon: NameIcon, defaultText: "Введите имя", defaultTitle: "имя" }, { type: "email", icon: EmailIcon, defaultText: "Введите Email", defaultTitle: "Email" }, { type: "phone", icon: PhoneIcon, defaultText: "Введите номер телефона", defaultTitle: "номер телефона" }, { type: "text", icon: TextIcon, defaultText: "Введите фамилию", defaultTitle: "фамилию" }, { type: "address", icon: AddressIcon, defaultText: "Введите адрес", defaultTitle: "адрес" }, ] export const ContactForm = ({ currentQuestion, showResultForm, setShowContactForm, setShowResultForm, }: ContactFormProps) => { const { settings } = useQuestionsStore() const [ready, setReady] = useState(false) const followNextForm = () => { setShowContactForm(false); setShowResultForm(true); }; return ( {settings?.cfg.formContact.title || "Заполните форму, чтобы получить результаты теста"} { settings?.cfg.formContact.desc && {settings?.cfg.formContact.desc} } { ( )} { setReady(target.checked) }} checked={ready} /> С Положением об обработке персональных данных и Политикой конфиденциальности ознакомлен ); }; const Inputs = () => { const { settings } = useQuestionsStore() let someUsed:any = [] const Icons = icons.map((data) => { //@ts-ignore const FC:any = settings?.cfg.formContact[data.type] if (FC.used) someUsed.push() return }) if (someUsed.length) { return <>{someUsed} } else { return <> {Icons[0]} {Icons[1]} {Icons[2]} } } const CustomInput = ({ title, desc, Icon }: any) => { return {title} , }} /> }