import * as React from "react"; import { Grid, Icon, Dropdown, Message, Menu, Label, Sidebar, Header, Button, List, Portal, Segment, } from "semantic-ui-react"; import Avatar from "react-avatar"; import { Props } from "./models"; import { mountShortName } from "./transformmers"; import MagaVerticalMenu from "../maga-vertical-menu"; import MagaHorizontalMenu from "../maga-horizontal-menu"; import MagaSuperMenu from "../maga-super-menu"; import MagaProtect from "../maga-protect"; function MagaSideNav({ children, system, dropdownSideMenu, dataUser, messages, verticalMenu, horizontalMenu, superMenu, onSelectHorizontalMenu, onSelectVerticalMenu, onSelectDropDown, onSelectSuperMenu, onSelectLogo, onSelectMessage, onLogout, logo, }: Props) { const [sideBarVisible, setSideBarVisible] = React.useState(false); const [portalVisible, setPortalVisible] = React.useState(false); const handleShowClick = (sideBarVisible: boolean) => { setSideBarVisible(!sideBarVisible); }; const handleOpenPortal = (portalVisible: boolean) => { setPortalVisible(!portalVisible); }; return (
{verticalMenu && ( handleShowClick(sideBarVisible)}> )} onSelectLogo()} className={verticalMenu && "nav-logo"} > {logo && logo} {system && (
{system.name} {system.environment.current !== "production" && ( {system.environment.label} )}
)}
{horizontalMenu && ( onSelectHorizontalMenu(value)} /> )} {dropdownSideMenu && ( {dropdownSideMenu.list.map( (item: any, indexDropdownSideMenu: number) => ( { onSelectDropDown(item.id); }} > {item.label} ) )} )} {superMenu && superMenu.organizations.length > 0 && ( } onMenuItemClick={(value: any) => onSelectSuperMenu(value)} /> )} } > {messages && messages.length > 0 ? ( messages.map((item, index) => ( { onSelectMessage(item); }} > {item.title} {item.description} )) ) : ( Caixa vazia Nenhum mensagem na sua caixa de entrada )} {dataUser.fullName ? ( handleOpenPortal(portalVisible)} /> handleOpenPortal(portalVisible)} > {mountShortName(dataUser.fullName)} {dataUser.userName} {dataUser.originalBranch && ( {dataUser.originalBranch} )} ) : ( onLogout()}>Sair )}
handleShowClick(sideBarVisible)} visible={sideBarVisible} width="wide" className="nav-sidebar" > {verticalMenu && ( onSelectVerticalMenu(value)} /> )} {children}
); } export default MagaSideNav;