The communications platform that puts data protection first.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Rocket.Chat/client/components/header/Header.js

45 lines
1.3 KiB

import React from 'react';
import { useEmbeddedLayout } from '../../hooks/useEmbeddedLayout';
import { useTranslation } from '../providers/TranslationProvider';
import { BurgerMenuButton } from './BurgerMenuButton';
import { useSidebarState, useUnreadMessagesBadge } from './hooks';
export function Header({
children,
hideHelp,
rawSectionName,
sectionName,
}) {
const [isSidebarOpen, toggleSidebarOpen] = useSidebarState();
const isLayoutEmbedded = useEmbeddedLayout();
const unreadMessagesBadge = useUnreadMessagesBadge();
const t = useTranslation();
const handleClick = () => {
toggleSidebarOpen();
};
return <header className='rc-header'>
<div className='rc-header__wrap'>
<div className='rc-header__block rc-header--burger'>
<BurgerMenuButton
isSidebarOpen={isSidebarOpen}
isLayoutEmbedded={isLayoutEmbedded}
unreadMessagesBadge={unreadMessagesBadge}
onClick={handleClick}
/>
</div>
<span className='rc-header__block'>{rawSectionName || t(sectionName)}</span>
{children}
{!hideHelp && <div className='rc-header__section-help' />}
</div>
</header>;
}
Header.ActionBlock = (props) => <div className='rc-header__block rc-header__block-action' {...props} />;
Header.ButtonSection = (props) => <div className='rc-header__section-button' {...props} />;