/**
* Account Selection Step
*/
import { Button } from '@/components/ui/button';
import { Badge } from '@/components/ui/badge';
import { ChevronRight, ArrowLeft, User, ExternalLink } from 'lucide-react';
import { getAccountIdentityPresentation, getCodexIdentityBadge } from '@/lib/account-identity';
import { cn } from '@/lib/utils';
import { PRIVACY_BLUR_CLASS } from '@/contexts/privacy-context';
import type { AccountStepProps } from '../types';
import { useTranslation } from 'react-i18next';
export function AccountStep({
accounts,
privacyMode,
onSelect,
onAddNew,
onBack,
}: AccountStepProps) {
const { t } = useTranslation();
return (
{/* Existing accounts header */}
{t('setupWizard.accountStep.selectAccount', { count: accounts.length })}
{/* Scrollable account list with max-height for many accounts */}
{accounts.map((acc) => {
const identity = getAccountIdentityPresentation(acc.id, acc.email, acc.tokenFile);
const codexBadge =
acc.provider?.toLowerCase() === 'codex' ? getCodexIdentityBadge(identity) : null;
return (
);
})}
{/* Divider */}
{t('setupWizard.accountStep.or')}
{/* Add new account button - more prominent */}
);
}