import { Box, Typography, useMediaQuery, useTheme } from "@mui/material"; import { useState } from "react"; import ExpandIcon from "./icons/ExpandIcon"; import type { ReactNode } from "react"; interface Props { header: ReactNode; text: string; divide?: boolean; price?: number; } export default function CustomAccordion({ header, text, divide = false, price }: Props) { const theme = useTheme(); const upMd = useMediaQuery(theme.breakpoints.up("md")); const upXs = useMediaQuery(theme.breakpoints.up("xs")); const [isExpanded, setIsExpanded] = useState(false); return ( setIsExpanded((prev) => !prev)} sx={{ minHeight: "72px", px: "20px", display: "flex", alignItems: "stretch", justifyContent: "space-between", cursor: "pointer", userSelect: "none", rowGap: "10px", flexDirection: upXs ? undefined : "column", }} > {header} {isExpanded && ( {text} {price} руб. )} ); }