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 { useCurrentQuiz } from "@root/quizes/hooks"; import { NameplateLogo } from "@icons/NameplateLogo"; import CustomCheckbox from "@ui_kit/CustomCheckbox"; import { useState } from "react"; import { useQuestionsStore } from "@root/questions/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 quiz = useCurrentQuiz(); const { questions } = useQuestionsStore(); const [ready, setReady] = useState(false) const followNextForm = () => { setShowContactForm(false); setShowResultForm(true); }; const resultQuestion = questions.find( (question) => question.type === "result" && question.content.rule.parentId === currentQuestion.content.id ); return ( {quiz?.config.formContact.title || "Заполните форму, чтобы получить результаты теста"} { quiz?.config.formContact.desc && {quiz?.config.formContact.desc} } { // resultQuestion && // quiz?.config.resultInfo.when === "after" && ( )} { setReady(target.checked) }} checked={ready} /> С Положением об обработке персональных данных и Политикой конфиденциальности ознакомлен Сделано на PenaQuiz ); }; const Inputs = () => { const quiz = useCurrentQuiz(); let someUsed = [] const Icons = icons.map((data) => { const FC = quiz?.config.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} , }} /> }