UNPKG

@coreui/react-pro

Version:

UI Components Library for React.js

71 lines (70 loc) 2.54 kB
import React, { HTMLAttributes, ReactNode } from 'react'; import type { Placements, Triggers } from '../../types'; export interface CPopoverProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title' | 'content'> { /** * Apply a CSS fade transition to the popover. * * @since 4.9.0 */ animation?: boolean; /** * A string of all className you want applied to the component. */ className?: string; /** * Appends the react popover to a specific element. You can pass an HTML element or function that returns a single element. By default `document.body`. * * @since 4.11.0 */ container?: DocumentFragment | Element | (() => DocumentFragment | Element | null) | null; /** * Content node for your component. */ content: ReactNode | string; /** * Offset of the popover relative to its target. */ offset?: [number, number]; /** * The delay for displaying and hiding the popover (in milliseconds). When a numerical value is provided, the delay applies to both the hide and show actions. The object structure for specifying the delay is as follows: delay: `{ 'show': 500, 'hide': 100 }`. * * @since 4.9.0 */ delay?: number | { show: number; hide: number; }; /** * Specify the desired order of fallback placements by providing a list of placements as an array. The placements should be prioritized based on preference. * * @since 4.9.0 */ fallbackPlacements?: Placements | Placements[]; /** * Callback fired when the component requests to be hidden. */ onHide?: () => void; /** * Callback fired when the component requests to be shown. */ onShow?: () => void; /** * Title node for your component. */ title?: ReactNode | string; /** * Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them. * * @type 'hover' | 'focus' | 'click' */ trigger?: Triggers | Triggers[]; /** * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property. */ placement?: 'auto' | 'top' | 'right' | 'bottom' | 'left'; /** * Toggle the visibility of popover component. */ visible?: boolean; } export declare const CPopover: React.ForwardRefExoticComponent<CPopoverProps & React.RefAttributes<HTMLDivElement>>;