import { Box, Scrollable } from '@rocket.chat/fuselage';
import { useMediaQuery } from '@rocket.chat/fuselage-hooks';
import React, { createContext, useContext, useState } from 'react';
import { useSidebar } from '../../contexts/SidebarContext';
import BurgerMenuButton from './burger/BurgerMenuButton';
import { useSession } from '../../contexts/SessionContext';
const PageContext = createContext();
function Page(props) {
const [border, setBorder] = useState(false);
return
;
}
function PageHeader({ children, title, ...props }) {
const [border] = useContext(PageContext);
const hasBurgerMenuButton = useMediaQuery('(max-width: 780px)');
const [isSidebarOpen, setSidebarOpen] = useSidebar();
const unreadMessagesBadge = useSession('unread');
const handleBurgerMenuButtonClick = () => {
setSidebarOpen((isSidebarOpen) => !isSidebarOpen);
};
return
{hasBurgerMenuButton && }
{title}
{children}
;
}
const PageContent = React.forwardRef(function PageContent(props, ref) {
return ;
});
function PageScrollableContent({ onScrollContent, ...props }) {
return
;
}
function PageScrollableContentWithShadow({ onScrollContent, ...props }) {
const [, setBorder] = useContext(PageContext);
return {
setBorder(!top);
onScrollContent && onScrollContent({ top, ...args });
}}
{ ...props }
/>;
}
Page.Header = PageHeader;
Page.Content = PageContent;
Page.ScrollableContent = PageScrollableContent;
Page.ScrollableContentWithShadow = PageScrollableContentWithShadow;
export default Page;