frontPanel/src/pages/Questions/QuestionsPage.tsx

81 lines
2.7 KiB
TypeScript
Raw Normal View History

import React from "react";
2023-04-15 09:10:59 +00:00
import Stepper from "@ui_kit/Stepper";
import {Box, Button, IconButton, Typography, Paper, useTheme, Link} from "@mui/material";
import AddPlus from "../../assets/icons/questionsPage/addPlus";
import ArrowLeft from "../../assets/icons/questionsPage/arrowLeft";
import {quizStore} from "@root/quizes";
import {useParams} from "react-router-dom";
import QuestionsPageCard from "./QuestionPageCard";
import {questionStore} from "@root/questions";
import QuizCard from "../createQuize/QuizCard";
export default function QuestionsPage() {
const {listQuizes, updateQuizesList} = quizStore();
const params = Number(useParams().quizId);
const {listQuestions, updateQuestionsList, removeQuestion, createBlankQuestions} = questionStore()
const activeStep = listQuizes[params].step
const handleNext = () => {
updateQuizesList(params, {step: listQuizes[params].step + 1})
}
const handleBack = () => {
let result = listQuizes[params].step - 1
updateQuizesList(params, {step: result ? result : 1})
};
const [switchState, setSwitchState] = React.useState('');
const SSHC = (data: string) => {
setSwitchState(data)
}
2023-04-15 09:10:59 +00:00
const theme = useTheme();
return (
<>
<Stepper activeStep={activeStep} desc={"Задайте вопросы"} />
<Box sx={{ maxWidth: "796px", width: "100%", display: "flex", justifyContent: "space-between", margin: "60px 0 40px 0",}}>
<Typography variant={"h5"}>Заголовок квиза</Typography>
<Link sx={{
fontSize: "16px",
lineHeight: "19px",
color: theme.palette.brightPurple.main,
textDecorationColor: theme.palette.brightPurple.main
}}>Свернуть всё</Link>
</Box>
{Object.values(listQuestions).map((e, i) => (
<QuestionsPageCard switchState={switchState} SSHC={SSHC}/>
)
)}
2023-04-15 09:10:59 +00:00
<Box sx={{ display: "flex", justifyContent: "space-between", maxWidth: "796px" }}>
<IconButton
onClick={() => {createBlankQuestions()
console.log(listQuestions)
}}
>
2023-04-15 09:10:59 +00:00
<AddPlus />
</IconButton>
<Box sx={{ display: "flex", gap: "8px" }}>
<Button variant="outlined" sx={{ padding: "10px 20px", borderRadius: "8px" }}>
<ArrowLeft />
</Button>
<Button
variant="contained"
sx={{
padding: "10px 20px",
borderRadius: "8px",
background: theme.palette.brightPurple.main,
fontSize: "18px",
}}
>
Следующий шаг
</Button>
</Box>
</Box>
</>
);
}