Components
Loading preview...
A Tooltip from the Flexnative UI registry with 10 variants: basic hover, four-side positioning, keyboard shortcut hint, icon-button trigger, custom open delay, rich multi-line content, light-on-dark theming, colored variants, arrow-less, and adjustable side offset. Built on Radix Tooltip.
@reapollo
npx shadcn@latest add https://21st.dev/r/larsen66/flexnative-tooltip'use client'
import { TooltipProvider } from '@/components/ui/flexnative-tooltip'
import { Button } from '@/components/ui/button'
import {
Tooltip,
TooltipContent,
TooltipTrigger,
} from '@/components/ui/flexnative-tooltip'
// Override arrow color with [&>span>svg] — radix wraps the arrow svg in a
// positioning <span>, so a direct `>svg` selector misses it.
export function Tooltip08() {
return (
<div className="flex items-center gap-2">
<Tooltip>
<TooltipTrigger asChild>
<Button>Primary</Button>
</TooltipTrigger>
<TooltipContent className="bg-primary text-primary-foreground [&>span>svg]:bg-primary [&>span>svg]:fill-primary">
Primary tone
</TooltipContent>
</Tooltip>
<Tooltip>
<TooltipTrigger asChild>
<Button variant="outline">Secondary</Button>
</TooltipTrigger>
<TooltipContent className="bg-secondary text-secondary-foreground [&>span>svg]:bg-secondary [&>span>svg]:fill-secondary">
Secondary tone
</TooltipContent>
</Tooltip>
<Tooltip>
<TooltipTrigger asChild>
<Button variant="destructive">Delete</Button>
</TooltipTrigger>
<TooltipContent className="bg-destructive text-white [&>span>svg]:bg-destructive [&>span>svg]:fill-destructive">
This cannot be undone
</TooltipContent>
</Tooltip>
</div>
)
}
export default function Default() {
return (
<TooltipProvider>
<div className="flex min-h-screen w-full items-center justify-center bg-background p-10">
<Tooltip08 />
</div>
</TooltipProvider>
)
}