import Link from "next/link"; import { Label } from "@/src/components/ui/label"; import { api } from "@/src/utils/api"; import { type UIModelParams } from "@langfuse/shared"; import { useHasProjectAccess } from "@/src/features/rbac/utils/checkProjectAccess"; export const LLMApiKeyComponent = (p: { projectId: string; modelParams: UIModelParams; }) => { const hasAccess = useHasProjectAccess({ projectId: p.projectId, scope: "llmApiKeys:read", }); if (!hasAccess) { return (

LLM API Key only visible to Owner and Admin roles.

); } const apiKeys = api.llmApiKey.all.useQuery({ projectId: p.projectId, }); if (apiKeys.isPending) { return (

Loading...

); } const modelProvider = p.modelParams.provider.value; const apiKey = apiKeys.data?.data.find((k) => k.provider === modelProvider); return (
{apiKey ? ( {apiKey.displaySecretKey} ) : undefined}
); };