frontPanel/src/pages/startPage/Sidebar/SidebarMobile.tsx

134 lines
4.0 KiB
TypeScript
Raw Normal View History

2023-12-29 13:32:57 +00:00
import { FC, useState } from "react";
import {Box, Popper, Typography} from "@mui/material";
2023-12-29 13:32:57 +00:00
import { People } from "@mui/icons-material";
import { SidebarModal } from "./SidebarModal";
import BackArrowIcon from "@icons/BackArrowIcon";
2023-09-20 17:39:17 +00:00
import { ChartLineUp } from "./icons/ChartLineUp";
import { ReturnTime } from "./icons/ReturnTime";
import { Question } from "./icons/Question";
import { Settings } from "./icons/Settings";
import { Pencil } from "./icons/Pencil";
import { ArrowDown } from "./icons/ArrowDown";
import Sidebar from "@ui_kit/Sidebar";
2023-09-20 17:39:17 +00:00
interface Iprops {
open: boolean;
2023-12-29 10:17:43 +00:00
changePage: (step: number) => void;
2023-09-20 17:39:17 +00:00
}
2023-12-29 10:17:43 +00:00
const quizSetupSteps = [
{ sidebarIcon: <Pencil style={{ color: "#974BFA", fontSize: "24px" }} /> },
{ sidebarIcon: <People style={{ color: "#974BFA", fontSize: "24px" }} /> },
{
sidebarIcon: <ChartLineUp style={{ color: "#974BFA", fontSize: "24px" }} />,
},
{
sidebarIcon: <ReturnTime style={{ color: "#974BFA", fontSize: "24px" }} />,
},
{ sidebarIcon: <Question style={{ color: "#974BFA", fontSize: "24px" }} /> },
] as const;
2023-12-29 13:32:57 +00:00
export const SidebarMobile: FC<Iprops> = ({ open, changePage }) => {
const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);
const handleClick = (event) => {
setAnchorEl(anchorEl ? null : event.currentTarget);
};
const openPopper = Boolean(anchorEl);
const id = openPopper ? 'simple-popper' : undefined;
2023-09-20 17:39:17 +00:00
2023-12-29 13:32:57 +00:00
return (
2023-09-20 17:39:17 +00:00
<Box
2023-12-29 10:17:43 +00:00
sx={{
2023-12-29 13:32:57 +00:00
display: open ? "block" : "none",
minHeight: "134px",
padding: "20px 16px 16px 16px",
background: "#333647",
borderTop: "1px solid #9A9AAF",
borderBottomLeftRadius: "8px",
borderBottomRightRadius: "8px",
transitionDuration: "200ms",
2023-12-29 10:17:43 +00:00
}}
2023-09-20 17:39:17 +00:00
>
2023-12-29 13:32:57 +00:00
<Box sx={{ display: "flex", alignItems: "center", position: "relative" }}>
<BackArrowIcon color="white" />
<Box sx={{ ml: "15px", display: "flex", alignItems: "end" }}>
<Box>
<Typography sx={{ fontSize: "12px", color: "#9A9AAF" }}>
Название
</Typography>
<Typography
sx={{ color: "#FFF", fontSize: "18px", fontWeight: "500" }}
>
Название проекта
</Typography>
</Box>
<Pencil
style={{
position: "absolute",
right: "0",
color: "white",
fontSize: "24px",
}}
/>
</Box>
</Box>
<Box
sx={{
width: "100%",
justifyContent: "end",
2023-12-29 13:32:57 +00:00
display: "flex",
marginTop: "20px",
flexWrap: "wrap",
gap: "5px",
}}
>
{/*{quizSetupSteps.map(({ sidebarIcon }, index) => (*/}
{/* <Box*/}
{/* onClick={() => changePage(index)}*/}
{/* sx={{*/}
{/* cursor: "pointer",*/}
{/* width: "44px",*/}
{/* height: "44px",*/}
{/* background: "#262835",*/}
{/* display: "flex",*/}
{/* justifyContent: "center",*/}
{/* alignItems: "center",*/}
{/* borderRadius: "8px",*/}
{/* }}*/}
{/* >*/}
{/* {sidebarIcon}*/}
{/* </Box>*/}
{/*))}*/}
2023-12-29 10:17:43 +00:00
<Box
aria-describedby={id}
onClick={handleClick}
2023-12-29 10:17:43 +00:00
sx={{
2023-12-29 13:32:57 +00:00
px: "10px",
width: "70px",
2023-12-29 10:17:43 +00:00
height: "44px",
background: "#262835",
display: "flex",
2023-12-29 13:32:57 +00:00
justifyContent: "space-between",
2023-12-29 10:17:43 +00:00
alignItems: "center",
borderRadius: "8px",
2023-12-29 13:32:57 +00:00
border: "1px solid #FFFFFF66",
marginLeft: "28px",
2023-12-29 10:17:43 +00:00
}}
>
2023-12-29 13:32:57 +00:00
<Settings
style={{ color: "#974BFA", fontSize: "24px", marginLeft: "10px" }}
/>
<ArrowDown style={{ color: "#F2F3F7" }} />
2023-12-29 10:17:43 +00:00
</Box>
2023-09-20 17:39:17 +00:00
</Box>
<SidebarModal open={openPopper} anchorEl={anchorEl} handleClick={handleClick} id={id} changePage={changePage} />
2023-09-20 17:39:17 +00:00
</Box>
2023-12-29 13:32:57 +00:00
);
};