29697/frontend/src/components/AsideMenu.tsx
2025-03-07 15:18:25 +00:00

33 lines
816 B
TypeScript

import React from 'react';
import { MenuAsideItem } from '../interfaces';
import AsideMenuLayer from './AsideMenuLayer';
import OverlayLayer from './OverlayLayer';
type Props = {
menu: MenuAsideItem[];
isAsideMobileExpanded: boolean;
isAsideLgActive: boolean;
onAsideLgClose: () => void;
};
export default function AsideMenu({
isAsideMobileExpanded = false,
isAsideLgActive = false,
...props
}: Props) {
return (
<>
<AsideMenuLayer
menu={props.menu}
className={`${
isAsideMobileExpanded ? 'left-0' : '-left-60 lg:left-0'
} ${!isAsideLgActive ? 'lg:hidden xl:flex' : ''}`}
onAsideLgCloseClick={props.onAsideLgClose}
/>
{isAsideLgActive && (
<OverlayLayer zIndex='z-30' onClick={props.onAsideLgClose} />
)}
</>
);
}