"use client"; import { Check, FolderKanban, X } from "lucide-react"; import { useQuery } from "@tanstack/react-query"; import { projectListOptions } from "@multica/core/projects/queries"; import { useWorkspaceId } from "@multica/core/hooks"; import type { UpdateIssueRequest } from "@multica/core/types"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, DropdownMenuSeparator, } from "@multica/ui/components/ui/dropdown-menu"; export function ProjectPicker({ projectId, onUpdate, triggerRender, align = "start", }: { projectId: string | null; onUpdate: (updates: Partial) => void; triggerRender?: React.ReactElement; align?: "start" | "center" | "end"; }) { const wsId = useWorkspaceId(); const { data: projects = [] } = useQuery(projectListOptions(wsId)); const current = projects.find((p) => p.id === projectId); return ( {current ? current.title : "No project"} {projects.map((p) => ( onUpdate({ project_id: p.id })}> {p.icon || "📁"} {p.title} {p.id === projectId && } ))} {projects.length > 0 && projectId && } {projectId && ( onUpdate({ project_id: null })}> Remove from project )} {projects.length === 0 && (
No projects yet
)}
); }