'use client'; import { useMemo } from 'react'; import { IconLayoutSidebarLeftCollapse, IconLayoutSidebarRightCollapse, } from '@tabler/icons-react'; import { Button } from '@kandev/ui/button'; import { Tooltip, TooltipContent, TooltipTrigger } from '@kandev/ui/tooltip'; import { useLayoutStore } from '@/lib/state/layout-store'; type DocumentControlsProps = { activeSessionId: string | null; }; export function DocumentControls({ activeSessionId }: DocumentControlsProps) { const toggleColumn = useLayoutStore((state) => state.toggleColumn); const showColumn = useLayoutStore((state) => state.showColumn); const toggleRightPanel = useLayoutStore((state) => state.toggleRightPanel); const layoutBySession = useLayoutStore((state) => state.columnsBySessionId); const layoutState = useMemo(() => { if (!activeSessionId) return null; return layoutBySession[activeSessionId] ?? null; }, [layoutBySession, activeSessionId]); if (!activeSessionId || !layoutState?.document) { return null; } const leftHidden = !layoutState.left; const rightHidden = !layoutState.right; return (
{leftHidden ? ( Show sidebar ) : ( Hide sidebar )} {rightHidden ? ( Show right panel ) : ( Hide right panel )}
); }