사용법
기본
트리거 근처에 짧은 설명이나 미니 UI를 띄울 때 사용해요. 바깥 클릭·Esc로 닫혀요.
스타일 커스터마이징
Popover 사용 시 className, style, `classNames`로 모든 스타일을 변경할 수 있어요. CSS 변수는 컴포넌트 루트에 지정하면 variant 기본값을 덮어써요.
className / style
<Popover
className="shadow-md"
style={{
--gtd-popover-bg: "#059669",
}}
/>classNames 슬롯
복합 컴포넌트는 영역별로 클래스를 지정할 수 있어요.
<Popover
classNames={{
content: "my-popover-content"
}}
/>CSS 변수
| 변수 | 설명 |
|---|---|
| --gtd-popover-bg | 배경색 |
| --gtd-popover-border-color | 테두리색 |
인터페이스
PopoverProps
| 속성 | 타입 | 기본값 | 설명 |
|---|---|---|---|
| PopoverTrigger | ReactNode | — | 패널을 여는 트리거 (asChild) |
| PopoverContent | ReactNode | — | 플로팅 패널 |
| align | "start" | "center" | "end" | center | 패널 정렬 |
| sideOffset | number | 8 | 트리거와 간격(px) |
| classNames | Record<string, string> | — | 슬롯별 클래스 (root, label, input 등) |
| className | string | — | 루트 요소 클래스. Tailwind·커스텀 CSS 적용 |
| style | CSSProperties | — | 인라인 스타일·CSS 변수(--gtd-*) 오버라이드 |
Popover 컴포넌트 Props 표
가져오기
import { Popover } from "@/components/ui/Popover";