@trail-ui/react
Version:
42 lines (39 loc) • 1.65 kB
TypeScript
import * as react from 'react';
import { RefObject } from 'react';
import { PositionProps, AriaPopoverProps, PlacementAxis } from 'react-aria';
import { SlotProps } from 'react-aria-components';
import { OverlayTriggerProps } from 'react-stately';
import { RenderProps } from '../_utils/utils.js';
import 'react/jsx-runtime';
import '@react-types/shared';
interface BasePopoverProps extends Omit<PositionProps, 'isOpen'>, Omit<AriaPopoverProps, 'popoverRef' | 'triggerRef'>, OverlayTriggerProps, RenderProps<BasePopoverRenderProps>, SlotProps {
/**
* The ref for the element which the popover positions itself with respect to.
*
* When used within a trigger component such as DialogTrigger, MenuTrigger, Select, etc.,
* this is set automatically. It is only required when used standalone.
*/
triggerRef?: RefObject<Element>;
}
interface BasePopoverRenderProps {
/**
* The placement of the popover relative to the trigger.
* @selector [data-placement="left | right | top | bottom"]
*/
placement: PlacementAxis;
/**
* Whether the popover is currently entering. Use this to apply animations.
* @selector [data-entering]
*/
isEntering: boolean;
/**
* Whether the popover is currently exiting. Use this to apply animations.
* @selector [data-exiting]
*/
isExiting: boolean;
}
/**
* A popover is an overlay element positioned relative to a trigger.
*/
declare const _Popover: (props: BasePopoverProps & react.RefAttributes<HTMLElement>) => React.ReactElement | null;
export { _Popover as BasePopover, BasePopoverProps, BasePopoverRenderProps };