import { useEffect } from "react"; import { Box, Button, IconButton, Typography, useMediaQuery, useTheme, } from "@mui/material"; import { collapseAllQuestions, createUntypedQuestion, } from "@root/questions/actions"; import { decrementCurrentStep, incrementCurrentStep, } from "@root/quizes/actions"; import { useCurrentQuiz } from "@root/quizes/hooks"; import QuizPreview from "@ui_kit/QuizPreview/QuizPreview"; import { createPortal } from "react-dom"; import AddPlus from "../../assets/icons/questionsPage/addPlus"; import ArrowLeft from "../../assets/icons/questionsPage/arrowLeft"; import { DraggableList } from "./DraggableList"; import { setDefaultState } from "@root/questions/actions"; export default function QuestionsPage() { const theme = useTheme(); const isMobile = useMediaQuery(theme.breakpoints.down(660)); const quiz = useCurrentQuiz(); useEffect(() => { const setDefault = ({ code }: KeyboardEvent) => { if (code === "Backslash") { setDefaultState(Number(quiz?.id)); } }; document.addEventListener("keydown", setDefault); return () => { document.removeEventListener("keydown", setDefault); }; }, []); if (!quiz) return null; return ( <> Заголовок квиза { createUntypedQuestion(quiz.backendId); }} sx={{ position: "fixed", left: isMobile ? "20px" : "250px", bottom: "20px", }} data-cy="create-question" > {createPortal(, document.body)} ); }