feat: custom icons

This commit is contained in:
2026-03-15 15:13:41 +01:00
parent 449d2cb382
commit 202462bad7
7 changed files with 166 additions and 5 deletions

View File

@@ -17,11 +17,12 @@ import {
SidebarRail,
SidebarTrigger,
} from '@/components/ui/sidebar'
import { Plus, Settings, Triangle } from 'lucide-react'
import { Plus, Settings } from 'lucide-react'
import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip'
import { useSidebar } from '@/components/ui/sidebar'
import { usePlatform } from './KosmosContext'
import { getRecollectionIcon } from '@/lib/iconMap'
import { RecollectionsIcon } from '@/lib/icons'
import { NewRecollectionDialog } from './NewRecollectionDialog'
import { SettingsDialog } from './SettingsDialog'
import type { Recollection } from './types'
@@ -132,7 +133,7 @@ export function KosmosSidebar() {
<SidebarMenuItem>
<SidebarMenuButton asChild tooltip="Recollections" isActive={location.pathname === '/recollections' && !selectedRecollectionId}>
<Link to="/recollections">
<Triangle className="size-4" />
<RecollectionsIcon className="size-4 shrink-0" />
<span>Recollections</span>
</Link>
</SidebarMenuButton>

View File

@@ -5,7 +5,8 @@
import React from 'react'
import { Link, NavLink, useParams } from 'react-router-dom'
import { usePlatform } from '@/app/kosmos/KosmosContext'
import { ArrowLeft, BookOpen, Workflow } from 'lucide-react'
import { ArrowLeft } from 'lucide-react'
import { FluxIcon, LogosIcon } from '@/lib/icons'
import { useRecollectionMenubar } from './RecollectionMenubarContext'
export function RecollectionMenubar() {
@@ -40,7 +41,7 @@ export function RecollectionMenubar() {
`flex items-center gap-1.5 rounded-sm px-2.5 py-1 text-sm outline-none focus:bg-accent focus:text-accent-foreground hover:bg-accent hover:text-accent-foreground ${isActive ? 'bg-accent font-medium text-foreground' : 'text-muted-foreground'}`
}
>
<BookOpen className="size-3.5" />
<LogosIcon className="size-3.5" />
Logos
</NavLink>
<NavLink
@@ -49,7 +50,7 @@ export function RecollectionMenubar() {
`flex items-center gap-1.5 rounded-sm px-2.5 py-1 text-sm outline-none focus:bg-accent focus:text-accent-foreground hover:bg-accent hover:text-accent-foreground ${isActive ? 'bg-accent font-medium text-foreground' : 'text-muted-foreground'}`
}
>
<Workflow className="size-3.5" />
<FluxIcon className="size-3.5" />
Flux
</NavLink>
</nav>