import { getAuthProviderInfo } from "@/lib/utils"; import { Check, X, AlertCircle } from "lucide-react"; import { Card, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"; import { ProviderIcon } from "./providerIcon"; import { ProviderInfo } from "./providerInfo"; import { UnlinkButton } from "./unlinkButton"; import { LinkButton } from "./linkButton"; import { LinkedAccountProviderState } from "@/ee/features/permissionSyncing/types" import { SINGLE_TENANT_ORG_DOMAIN } from "@/lib/constants"; interface LinkedAccountProviderCardProps { linkedAccountProviderState: LinkedAccountProviderState; callbackUrl?: string; } export function LinkedAccountProviderCard({ linkedAccountProviderState, callbackUrl, }: LinkedAccountProviderCardProps) { const providerInfo = getAuthProviderInfo(linkedAccountProviderState.id); const defaultCallbackUrl = `/${SINGLE_TENANT_ORG_DOMAIN}/settings/permission-syncing`; return (
{linkedAccountProviderState.isLinked? (
Connected
{linkedAccountProviderState.linkedAccountId && ( <> {linkedAccountProviderState.linkedAccountId} )}
) : (
Not connected
)} {linkedAccountProviderState.error && (
Token refresh failed - please reconnect
)}
{linkedAccountProviderState.isLinked? ( ) : ( )}
); }