import { useEffect, useMemo, useState } from 'react' import { Link } from 'react-router-dom' import { AlertCircle, ArrowRight, Check, Clock, Copy, CreditCard, Crown, FolderTree, Loader2, Mail, MessageSquareText, Palette, Pencil, Plug, RefreshCw, Server, Shield, Wand2, UserCog, X, } from 'lucide-react' import { PageMeta } from '@/components/common/PageMeta' import { accountsApi } from '@/api/accounts' import type { Account, AccountInvite, AccountMember } from '@/types' import { TransferOwnershipModal } from '@/components/account/TransferOwnershipModal' import { LeaveAccountModal } from '@/components/account/LeaveAccountModal' import { DeleteAccountModal } from '@/components/account/DeleteAccountModal' import { Button } from '@/components/ui/Button' import { ConfirmButton } from '@/components/common/ConfirmButton' import { Spinner } from '@/components/common/Spinner' import { cn } from '@/lib/utils' import { usePermissions } from '@/hooks/usePermissions' import { useSubscription } from '@/hooks/useSubscription' import { SeatCounterWidget } from '@/components/admin/SeatCounterWidget' import { useAuthStore } from '@/store/authStore' import { CheckoutButton } from '@/components/subscription/CheckoutButton' import { toast } from '@/lib/toast' /* ── Building blocks ─────────────────────────────────────────────────────── */ function SectionLabel({ children }: { children: React.ReactNode }) { return (
Plan limits unavailable.
)} {plan !== 'enterprise' && (
{account.display_code}
Membership and invites are managed by the account owner {ownerName && ({ownerName})}. Contact your admin to make changes.
Transfer ownership
Move ownership of this account to another member.
Delete account
Permanently delete the account and all data. Cannot be undone.
Leave account
Leave this account and create a personal one.