import { IconButton, SidebarItem, SidebarItemAvatarWrapper, SidebarItemMenu, SidebarItemTitle } from '@rocket.chat/fuselage'; import type { HTMLAttributes, ReactNode } from 'react'; import { memo } from 'react'; import { useDeferredMenuMount } from './useDeferredMenuMount'; export type CondensedProps = { title: ReactNode; titleIcon?: ReactNode; avatar: ReactNode; icon?: ReactNode; actions?: ReactNode; href?: string; unread?: boolean; menu?: () => ReactNode; menuOptions?: any; selected?: boolean; badges?: ReactNode; clickable?: boolean; } & Omit, 'is'>; const Condensed = ({ icon, title, titleIcon, avatar, actions, unread, menu, badges, ...props }: CondensedProps) => { const { mounted: menuVisibility, requestMount, mountNow } = useDeferredMenuMount(); return ( {avatar && {avatar}} {icon} {title} {titleIcon} {badges} {actions} {menu && ( {menuVisibility ? ( menu() ) : ( )} )} ); }; export default memo(Condensed);