backstory/frontend/src/components/ExpandMore.tsx
2025-06-18 14:26:07 -07:00

33 lines
749 B
TypeScript

import { styled } from "@mui/material/styles";
import IconButton, { IconButtonProps } from "@mui/material/IconButton";
interface ExpandMoreProps extends IconButtonProps {
expand: boolean;
}
const ExpandMore = styled((props: ExpandMoreProps) => {
const { expand, ...other } = props;
return <IconButton {...other} />;
})(({ theme }) => ({
marginLeft: "auto",
transition: theme.transitions.create("transform", {
duration: theme.transitions.duration.shortest,
}),
variants: [
{
props: ({ expand }) => !expand,
style: {
transform: "rotate(0deg)",
},
},
{
props: ({ expand }) => !!expand,
style: {
transform: "rotate(180deg)",
},
},
],
}));
export { ExpandMore };