fix: sort sidebar entries alphanumerically
Applications, routes within each app, and agents within each app are now sorted by name using localeCompare. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -108,17 +108,24 @@ function LayoutContent() {
|
|||||||
|
|
||||||
const sidebarApps: SidebarApp[] = useMemo(() => {
|
const sidebarApps: SidebarApp[] = useMemo(() => {
|
||||||
if (!catalog) return [];
|
if (!catalog) return [];
|
||||||
return catalog.map((app: any) => ({
|
const cmp = (a: string, b: string) => a.localeCompare(b);
|
||||||
|
return [...catalog]
|
||||||
|
.sort((a: any, b: any) => cmp(a.appId, b.appId))
|
||||||
|
.map((app: any) => ({
|
||||||
id: app.appId,
|
id: app.appId,
|
||||||
name: app.appId,
|
name: app.appId,
|
||||||
health: app.health as 'live' | 'stale' | 'dead',
|
health: app.health as 'live' | 'stale' | 'dead',
|
||||||
exchangeCount: app.exchangeCount,
|
exchangeCount: app.exchangeCount,
|
||||||
routes: (app.routes || []).map((r: any) => ({
|
routes: [...(app.routes || [])]
|
||||||
|
.sort((a: any, b: any) => cmp(a.routeId, b.routeId))
|
||||||
|
.map((r: any) => ({
|
||||||
id: r.routeId,
|
id: r.routeId,
|
||||||
name: r.routeId,
|
name: r.routeId,
|
||||||
exchangeCount: r.exchangeCount,
|
exchangeCount: r.exchangeCount,
|
||||||
})),
|
})),
|
||||||
agents: (app.agents || []).map((a: any) => ({
|
agents: [...(app.agents || [])]
|
||||||
|
.sort((a: any, b: any) => cmp(a.name, b.name))
|
||||||
|
.map((a: any) => ({
|
||||||
id: a.id,
|
id: a.id,
|
||||||
name: a.name,
|
name: a.name,
|
||||||
status: a.status as 'live' | 'stale' | 'dead',
|
status: a.status as 'live' | 'stale' | 'dead',
|
||||||
|
|||||||
Reference in New Issue
Block a user