tooltip
lyse/tooltipFreeComponent
lyse publishes no description for this item.
Live preview
live · rendered by the registry
Rendered by lyse on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://ui.getlyse.com/r/tooltip.jsonSource
1import * as React from "react"2import * as TooltipPrimitive from "@radix-ui/react-tooltip"3import { cva, type VariantProps } from "class-variance-authority"45import { cn } from "@/lib/utils"6import "./tooltip.css"78const tooltipContentVariants = cva(9 "tooltip-content z-50 flex items-center overflow-hidden font-accent animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",10 {11 variants: {12 size: {13 md: "max-w-40 gap-[var(--layout-gap-sm)] p-[var(--layout-padding-md)] rounded-[var(--layout-radius-lg)] text-content-note",14 sm: "max-w-40 gap-[var(--layout-gap-sm)] p-[var(--layout-padding-sm)] rounded-[var(--layout-radius-lg)] text-content-caption",15 },16 },17 defaultVariants: {18 size: "md",19 },20 }21)2223function TooltipProvider({24 delayDuration = 300,25 ...props26}: React.ComponentProps<typeof TooltipPrimitive.Provider>) {27 return (28 <TooltipPrimitive.Provider29 data-slot="tooltip-provider"30 delayDuration={delayDuration}31 {...props}32 />33 )34}3536function Tooltip({37 ...props38}: React.ComponentProps<typeof TooltipPrimitive.Root>) {39 return <TooltipPrimitive.Root {...props} />40}4142function TooltipTrigger({43 ...props44}: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {45 return <TooltipPrimitive.Trigger data-slot="tooltip-trigger" {...props} />46}4748function TooltipContent({49 className,50 size,51 sideOffset = 6,52 children,53 ...props54}: React.ComponentProps<typeof TooltipPrimitive.Content> &55 VariantProps<typeof tooltipContentVariants>) {56 return (57 <TooltipPrimitive.Portal>58 <TooltipPrimitive.Content59 data-slot="tooltip-content"60 sideOffset={sideOffset}61 className={cn(tooltipContentVariants({ size, className }))}62 {...props}63 >64 {children}65 </TooltipPrimitive.Content>66 </TooltipPrimitive.Portal>67 )68}6970function TooltipShortcut({71 className,72 ...props73}: React.ComponentProps<"kbd">) {74 return (75 <kbd76 data-slot="tooltip-shortcut"77 className={cn("tooltip-shortcut h-[var(--layout-size-sm)] shrink-0 text-content-caption", className)}78 {...props}79 />80 )81}8283export {84 Tooltip,85 TooltipTrigger,86 TooltipContent,87 TooltipProvider,88 TooltipShortcut,89 tooltipContentVariants,90}
What it pulls in
npm packages
Other registry items
Files it writes
More from lyse
All 33 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| action-cardaction-card | lyse | Components | Free | no deps · 2 files | |
| alertalert | lyse | Components | Free | 2 deps · 2 files | |
| alert-dialogalert-dialog | lyse | Components | Free | 2 deps · 2 files | |
| avataravatar | lyse | Components | Free | 3 deps · 2 files | |
| badgebadge | lyse | Components | Free | 1 dep · 2 files | |
| banner-infobanner-info | lyse | Components | Free | 2 deps · 2 files | |
| breadcrumbbreadcrumb | lyse | Components | Free | 2 deps · 2 files | |
| buttonbutton | lyse | Components | Free | 2 deps · 2 files |
