diff --git a/src/components/ClinicalSidebar.tsx b/src/components/ClinicalSidebar.tsx index 6e04f75..ba97481 100644 --- a/src/components/ClinicalSidebar.tsx +++ b/src/components/ClinicalSidebar.tsx @@ -27,12 +27,12 @@ interface ClinicalSidebarProps { const navItems: NavItem[] = [ { id: 'summary', label: 'Summary', icon: }, - { id: 'consultations', label: 'Consultations', icon: }, - { id: 'medications', label: 'Medications', icon: }, - { id: 'problems', label: 'Problems', icon: }, - { id: 'investigations', label: 'Investigations', icon: }, - { id: 'documents', label: 'Documents', icon: }, - { id: 'referrals', label: 'Referrals', icon: }, + { id: 'consultations', label: 'Experience', icon: }, + { id: 'medications', label: 'Skills', icon: }, + { id: 'problems', label: 'Achievements', icon: }, + { id: 'investigations', label: 'Projects', icon: }, + { id: 'documents', label: 'Education', icon: }, + { id: 'referrals', label: 'Contact', icon: }, ] function getCurrentTime(): string { @@ -94,6 +94,7 @@ export function ClinicalSidebar({ activeView, onViewChange, isTablet = false }: } }, [handleNavClick]) + // Update clock every minute useEffect(() => { const interval = setInterval(() => { setCurrentTime(getCurrentTime()) @@ -101,6 +102,7 @@ export function ClinicalSidebar({ activeView, onViewChange, isTablet = false }: return () => clearInterval(interval) }, []) + // Hash routing useEffect(() => { const handleHashChange = () => { const hash = window.location.hash.slice(1) as ViewId @@ -114,6 +116,7 @@ export function ClinicalSidebar({ activeView, onViewChange, isTablet = false }: return () => window.removeEventListener('hashchange', handleHashChange) }, [onViewChange]) + // Alt+1-7 keyboard shortcuts and "/" for search useEffect(() => { const handleKeyDown = (e: KeyboardEvent) => { if (e.altKey && e.key >= '1' && e.key <= '7') { @@ -136,6 +139,7 @@ export function ClinicalSidebar({ activeView, onViewChange, isTablet = false }: return () => window.removeEventListener('keydown', handleKeyDown) }, [onViewChange, isSearchFocused]) + // Set focus-after-login ref to first nav button useEffect(() => { if (navButtonRefs.current[0]) { ;(focusAfterLoginRef as React.MutableRefObject).current = navButtonRefs.current[0] @@ -163,19 +167,22 @@ export function ClinicalSidebar({ activeView, onViewChange, isTablet = false }: ) }, [searchQuery]) + // ── Tablet: 56px icon-only sidebar ── if (isTablet) { return (