"use client" import { useCallback, useRef, useState } from "react" import { useNavigate } from "react-router-dom" import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, } from "@/components/ui/command" import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, } from "@/components/ui/dialog" import { Button } from "@/components/ui/button" import { Kbd } from "@/components/ui/kbd" import { useAskLeo } from "@/components/ask-leo-context" import { useCommandMenuConfig } from "@/contexts/command-menu-context" import type { CommandMenuItem } from "@/lib/command-menu-config" function CommandMenuItemRow({ item, onLink, onLeo, }: { item: CommandMenuItem onLink: (href: string) => void onLeo: (prompt: string) => void }) { const isLeo = Boolean(item.askLeoPrompt) const iconClass = isLeo ? "fa-duotone fa-solid fa-star-christmas w-5 shrink-0 text-center text-brand" : `${item.icon ?? "fa-light fa-arrow-right"} w-5 shrink-0 text-center` return ( { if (item.askLeoPrompt) onLeo(item.askLeoPrompt) else if (item.href) onLink(item.href) }} >