import {
ArrowUpIcon,
CheckIcon,
InfoIcon,
PlusIcon,
Search,
SearchIcon,
} from "lucide-react";
import {
InputGroup,
InputGroupAddon,
InputGroupButton,
InputGroupInput,
InputGroupText,
InputGroupTextarea,
} from "@/registry/pure-ui/ui/input-group";
import {
Tooltip,
TooltipTrigger,
TooltipPopup,
TooltipProvider,
} from "@/registry/pure-ui/ui/tooltip";
import {
Menu,
MenuItem,
MenuPopup,
MenuTrigger,
} from "@/registry/pure-ui/ui/menu";
import { Separator } from "@/registry/pure-ui/ui/separator";
export function InputGroupDemo() {
return (
<div className="grid w-full max-w-sm gap-6">
<InputGroup>
<InputGroupInput
type="search"
placeholder="Search"
aria-label="Search"
/>
<InputGroupAddon>
<SearchIcon />
</InputGroupAddon>
</InputGroup>
<InputGroup>
<InputGroupInput placeholder="Search..." />
<InputGroupAddon>
<Search />
</InputGroupAddon>
<InputGroupAddon align="inline-end">12 results</InputGroupAddon>
</InputGroup>
<InputGroup>
<InputGroupInput placeholder="example.com" className="pl-1!" />
<InputGroupAddon>
<InputGroupText>https://</InputGroupText>
</InputGroupAddon>
<InputGroupAddon align="inline-end">
<TooltipProvider>
<Tooltip>
<TooltipTrigger
render={
<InputGroupButton className="rounded-full" size="icon-xs" />
}
>
<InfoIcon />
</TooltipTrigger>
<TooltipPopup>This is content in a tooltip.</TooltipPopup>
</Tooltip>
</TooltipProvider>
</InputGroupAddon>
</InputGroup>
<InputGroup>
<InputGroupTextarea placeholder="Ask, Search or Chat..." />
<InputGroupAddon align="block-end">
<InputGroupButton
variant="outline"
className="rounded-full"
size="icon-xs"
>
<PlusIcon />
</InputGroupButton>
<Menu>
<MenuTrigger render={<InputGroupButton variant="ghost" />}>
<span>Auto</span>
</MenuTrigger>
<MenuPopup side="top" align="start" className="[--radius:0.95rem]">
<MenuItem>Auto</MenuItem>
<MenuItem>Agent</MenuItem>
<MenuItem>Manual</MenuItem>
</MenuPopup>
</Menu>
<InputGroupText className="ml-auto">52% used</InputGroupText>
<Separator orientation="vertical" className="h-4!" />
<InputGroupButton
variant="default"
className="rounded-full"
size="icon-xs"
disabled
>
<ArrowUpIcon />
<span className="sr-only">Send</span>
</InputGroupButton>
</InputGroupAddon>
</InputGroup>
<InputGroup>
<InputGroupInput placeholder="@shadcn" />
<InputGroupAddon align="inline-end">
<div className="bg-primary text-primary-foreground flex size-4 items-center justify-center rounded-full">
<CheckIcon className="size-3" />
</div>
</InputGroupAddon>
</InputGroup>
</div>
);
}