"use client" import { useContext } from "react" import { AuthUIContext } from "../../../lib/auth-ui-provider" import { cn } from "../../../lib/utils" import type { AuthLocalization } from "../../../localization/auth-localization" import { CardContent } from "../../ui/card" import type { SettingsCardClassNames } from "../shared/settings-card" import { SettingsCard } from "../shared/settings-card" import { AccountCell } from "./account-cell" export interface AccountsCardProps { className?: string classNames?: SettingsCardClassNames localization?: Partial } export function AccountsCard({ className, classNames, localization }: AccountsCardProps) { const { basePath, hooks: { useListDeviceSessions, useSession }, localization: contextLocalization, viewPaths, navigate } = useContext(AuthUIContext) localization = { ...contextLocalization, ...localization } const { data: deviceSessions, isPending, refetch } = useListDeviceSessions() const { data: sessionData } = useSession() const otherDeviceSessions = (deviceSessions || []).filter( (ds) => ds.session.id !== sessionData?.session.id ) return ( navigate(`${basePath}/${viewPaths.SIGN_IN}`)} > {deviceSessions?.length ? ( {sessionData && ( )} {otherDeviceSessions.map((deviceSession) => ( ))} ) : null} ) }