UNPKG

@snowball-tech/fractal

Version:

Fractal's (Snowball's design system) React component library based on RadixUI and PandaCSS

42 lines (39 loc) 1.5 kB
import { PopoverContentProps, Root } from '@radix-ui/react-popover'; import { AllHTMLAttributes, ReactNode, CSSProperties, ComponentProps } from 'react'; import { P as PaperProps } from './Paper.types-NMDyV2Rb.js'; type CombinedRefs = { container: HTMLDivElement | null; content: HTMLDivElement | null; trigger: HTMLButtonElement | null; }; interface PopoverProps extends Omit<AllHTMLAttributes<HTMLDivElement>, 'popover' | 'title'> { children: ReactNode; align?: PopoverContentProps['align']; closeButtonLabel?: string; disabled?: boolean; elevation?: PaperProps['elevation']; fullWidth?: boolean; modal?: boolean; open?: boolean; paper?: Partial<PaperProps>; popover?: Partial<{ className?: string; style?: CSSProperties; } & Omit<PopoverContentProps, 'align' | 'asChild' | 'onInteractOutside' | 'side'>>; side?: PopoverContentProps['side']; title?: ReactNode; toggleOnTriggerClick?: boolean; toggleOnTriggerHover?: boolean; trigger?: ReactNode; triggerAsButton?: boolean; width?: number | string | 'auto' | 'fit' | 'full' | 'trigger'; withArrow?: boolean; withCloseButton?: boolean; withScroll?: boolean; onClose?: () => void; onCloseButtonClick?: () => void; onInteractOutside?: PopoverContentProps['onInteractOutside']; onOpen?: () => void; onOpenChange?: ComponentProps<typeof Root>['onOpenChange']; } export type { CombinedRefs as C, PopoverProps as P };