TeamSwitcher() — ui Function Reference
Architecture documentation for the TeamSwitcher() function in team-switcher.tsx from the ui codebase.
Entity Profile
Dependency Diagram
graph TD 2323e4fb_03fe_a448_ea3f_b0e9dee3a469["TeamSwitcher()"] 7a6caf0f_ae1e_c8fa_e539_e810ae3e1809["team-switcher.tsx"] 2323e4fb_03fe_a448_ea3f_b0e9dee3a469 -->|defined in| 7a6caf0f_ae1e_c8fa_e539_e810ae3e1809 style 2323e4fb_03fe_a448_ea3f_b0e9dee3a469 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
deprecated/www/app/(app)/examples/dashboard/components/team-switcher.tsx lines 77–210
export default function TeamSwitcher({ className }: TeamSwitcherProps) {
const [open, setOpen] = React.useState(false)
const [showNewTeamDialog, setShowNewTeamDialog] = React.useState(false)
const [selectedTeam, setSelectedTeam] = React.useState<Team>(
groups[0].teams[0]
)
return (
<Dialog open={showNewTeamDialog} onOpenChange={setShowNewTeamDialog}>
<Popover open={open} onOpenChange={setOpen}>
<PopoverTrigger asChild>
<Button
variant="outline"
role="combobox"
aria-expanded={open}
aria-label="Select a team"
className={cn("w-[200px] justify-between", className)}
>
<Avatar className="mr-2 h-5 w-5">
<AvatarImage
src={`https://avatar.vercel.sh/${selectedTeam.value}.png`}
alt={selectedTeam.label}
className="grayscale"
/>
<AvatarFallback>SC</AvatarFallback>
</Avatar>
{selectedTeam.label}
<ChevronsUpDown className="ml-auto opacity-50" />
</Button>
</PopoverTrigger>
<PopoverContent className="w-[200px] p-0">
<Command>
<CommandInput placeholder="Search team..." />
<CommandList>
<CommandEmpty>No team found.</CommandEmpty>
{groups.map((group) => (
<CommandGroup key={group.label} heading={group.label}>
{group.teams.map((team) => (
<CommandItem
key={team.value}
onSelect={() => {
setSelectedTeam(team)
setOpen(false)
}}
className="text-sm"
>
<Avatar className="mr-2 h-5 w-5">
<AvatarImage
src={`https://avatar.vercel.sh/${team.value}.png`}
alt={team.label}
className="grayscale"
/>
<AvatarFallback>SC</AvatarFallback>
</Avatar>
{team.label}
<Check
className={cn(
"ml-auto",
selectedTeam.value === team.value
? "opacity-100"
: "opacity-0"
)}
/>
</CommandItem>
))}
</CommandGroup>
))}
</CommandList>
<CommandSeparator />
<CommandList>
<CommandGroup>
<DialogTrigger asChild>
<CommandItem
onSelect={() => {
setOpen(false)
setShowNewTeamDialog(true)
}}
>
<PlusCircle className="h-5 w-5" />
Create Team
</CommandItem>
Domain
Subdomains
Source
Frequently Asked Questions
What does TeamSwitcher() do?
TeamSwitcher() is a function in the ui codebase, defined in deprecated/www/app/(app)/examples/dashboard/components/team-switcher.tsx.
Where is TeamSwitcher() defined?
TeamSwitcher() is defined in deprecated/www/app/(app)/examples/dashboard/components/team-switcher.tsx at line 77.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free