Home / Function/ AccountSwitcher() — ui Function Reference

AccountSwitcher() — ui Function Reference

Architecture documentation for the AccountSwitcher() function in account-switcher.tsx from the ui codebase.

Entity Profile

Dependency Diagram

graph TD
  219e0a89_c504_fc95_267e_d421faa34a22["AccountSwitcher()"]
  ee6815f6_b4c1_7339_f891_18ca7f0c764e["account-switcher.tsx"]
  219e0a89_c504_fc95_267e_d421faa34a22 -->|defined in| ee6815f6_b4c1_7339_f891_18ca7f0c764e
  style 219e0a89_c504_fc95_267e_d421faa34a22 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

deprecated/www/app/(app)/examples/mail/components/account-switcher.tsx lines 23–63

export function AccountSwitcher({
  isCollapsed,
  accounts,
}: AccountSwitcherProps) {
  const [selectedAccount, setSelectedAccount] = React.useState<string>(
    accounts[0].email
  )

  return (
    <Select defaultValue={selectedAccount} onValueChange={setSelectedAccount}>
      <SelectTrigger
        className={cn(
          "flex items-center gap-2 [&>span]:line-clamp-1 [&>span]:flex [&>span]:w-full [&>span]:items-center [&>span]:gap-1 [&>span]:truncate [&_svg]:h-4 [&_svg]:w-4 [&_svg]:shrink-0",
          isCollapsed &&
            "flex h-9 w-9 shrink-0 items-center justify-center p-0 [&>span]:w-auto [&>svg]:hidden"
        )}
        aria-label="Select account"
      >
        <SelectValue placeholder="Select an account">
          {accounts.find((account) => account.email === selectedAccount)?.icon}
          <span className={cn("ml-2", isCollapsed && "hidden")}>
            {
              accounts.find((account) => account.email === selectedAccount)
                ?.label
            }
          </span>
        </SelectValue>
      </SelectTrigger>
      <SelectContent>
        {accounts.map((account) => (
          <SelectItem key={account.email} value={account.email}>
            <div className="flex items-center gap-3 [&_svg]:h-4 [&_svg]:w-4 [&_svg]:shrink-0 [&_svg]:text-foreground">
              {account.icon}
              {account.email}
            </div>
          </SelectItem>
        ))}
      </SelectContent>
    </Select>
  )
}

Subdomains

Frequently Asked Questions

What does AccountSwitcher() do?
AccountSwitcher() is a function in the ui codebase, defined in deprecated/www/app/(app)/examples/mail/components/account-switcher.tsx.
Where is AccountSwitcher() defined?
AccountSwitcher() is defined in deprecated/www/app/(app)/examples/mail/components/account-switcher.tsx at line 23.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free