Split up main content route component

This commit is contained in:
jeffvli 2023-05-31 01:13:54 -07:00
parent fa0a21a021
commit e7c7eb3ec0
7 changed files with 409 additions and 286 deletions

View file

@ -0,0 +1,38 @@
import { useRef } from 'react';
import styled from 'styled-components';
import { ResizeHandle } from '/@/renderer/features/shared';
import { CollapsedSidebar } from '/@/renderer/features/sidebar/components/collapsed-sidebar';
import { Sidebar } from '/@/renderer/features/sidebar/components/sidebar';
import { useSidebarStore } from '/@/renderer/store';
const SidebarContainer = styled.aside`
position: relative;
grid-area: sidebar;
background: var(--sidebar-bg);
border-right: var(--sidebar-border);
`;
interface LeftSidebarProps {
isResizing: boolean;
startResizing: (direction: 'left' | 'right') => void;
}
export const LeftSidebar = ({ isResizing, startResizing }: LeftSidebarProps) => {
const sidebarRef = useRef<HTMLDivElement | null>(null);
const { collapsed } = useSidebarStore();
return (
<SidebarContainer id="sidebar">
<ResizeHandle
ref={sidebarRef}
isResizing={isResizing}
placement="right"
onMouseDown={(e) => {
e.preventDefault();
startResizing('left');
}}
/>
{collapsed ? <CollapsedSidebar /> : <Sidebar />}
</SidebarContainer>
);
};