fix: variants and pictures

This commit is contained in:
IlyaDoronin 2023-09-05 19:16:34 +03:00
parent 18508bff5d
commit 44c5e4ff75

@ -1,47 +1,85 @@
import { Box, Link, Typography, useTheme } from "@mui/material"; import { Box, Link, Typography, ButtonBase, useTheme } from "@mui/material";
import AddImage from "../../../assets/icons/questionsPage/addImage"; import AddImage from "../../../assets/icons/questionsPage/addImage";
import EnterIcon from "../../../assets/icons/questionsPage/enterIcon"; import EnterIcon from "../../../assets/icons/questionsPage/enterIcon";
import ButtonsOptionsAndPict from "../ButtonsOptionsAndPict"; import ButtonsOptionsAndPict from "../ButtonsOptionsAndPict";
import SwitchOptionsAndPict from "./switchOptionsAndPict"; import SwitchOptionsAndPict from "./switchOptionsAndPict";
import React from "react"; import React from "react";
import { questionStore, updateQuestionsList } from "@root/questions";
interface Props { interface Props {
totalIndex: number; totalIndex: number;
} }
export default function OptionsAndPicture({ totalIndex }: Props) { export default function OptionsAndPicture({ totalIndex }: Props) {
const theme = useTheme();
const [switchState, setSwitchState] = React.useState("setting"); const [switchState, setSwitchState] = React.useState("setting");
const { listQuestions } = questionStore();
const theme = useTheme();
const SSHC = (data: string) => { const SSHC = (data: string) => {
setSwitchState(data); setSwitchState(data);
}; };
return ( return (
<> <>
<Box sx={{ padding: "20px" }}> <Box sx={{ padding: "20px" }}>
<Box <Box sx={{ paddingBottom: "25px" }}>
sx={{ display: "flex", alignItems: "center", paddingBottom: "25px" }} {listQuestions[totalIndex].content.variants.map((_, index) => (
> <ButtonBase
<AddImage /> component="label"
<Typography sx={{
sx={{ cursor: "pointer",
padding: "0 0 0 20px", display: "flex",
fontWeight: 400, alignItems: "center",
fontSize: "18px", justifyContent: "flex-start",
lineHeight: "21.33px", marginBottom: "15px",
color: theme.palette.grey2.main, }}
}} >
> <input
Добавьте ответ onChange={({ target }) => {
</Typography> if (target.files?.length) {
const clonContent = listQuestions[totalIndex].content;
clonContent.variants[index].answer = URL.createObjectURL(
target.files[0]
);
updateQuestionsList(totalIndex, { content: clonContent });
}
}}
hidden
accept="image/*"
multiple
type="file"
/>
<AddImage />
<Typography
sx={{
padding: "0 0 0 20px",
fontWeight: 400,
fontSize: "18px",
lineHeight: "21.33px",
color: theme.palette.grey2.main,
}}
>
Добавьте ответ
</Typography>
</ButtonBase>
))}
</Box> </Box>
<Box sx={{ display: "flex", alignItems: "center", gap: "10px" }}> <Box sx={{ display: "flex", alignItems: "center", gap: "10px" }}>
<Link <Link
component="button" component="button"
variant="body2" variant="body2"
sx={{ color: theme.palette.brightPurple.main }} sx={{ color: theme.palette.brightPurple.main }}
// onClick={() => { onClick={() => {
// console.info("I'm a button."); const clonContent = listQuestions[totalIndex].content;
// }} clonContent.variants.push({
answer: "",
answerLong: "",
hints: "",
});
updateQuestionsList(totalIndex, { content: clonContent });
}}
> >
Добавьте ответ Добавьте ответ
</Link> </Link>