wix-style-react
Version:
57 lines (51 loc) • 1.51 kB
TypeScript
import * as React from 'react';
import { MoveByOffset } from '../common';
import {
AppendTo,
Placement,
} from 'wix-ui-core/dist/src/components/popover/Popover.d';
import { DropdownBaseProps } from '../DropdownBase';
export interface PopoverTriggerElementProps {
onClick: () => void;
toggle: () => void;
open: () => void;
close: (event: React.SyntheticEvent) => void;
isOpen: boolean;
}
export interface PopoverMenuProps {
triggerElement: React.ReactNode | React.FC<PopoverTriggerElementProps>;
children?: React.ReactNode;
maxWidth?: DropdownBaseProps['maxWidth'];
minWidth?: DropdownBaseProps['minWidth'];
maxHeight?: DropdownBaseProps['maxHeight'];
zIndex?: number;
moveBy?: MoveByOffset;
placement?: Placement;
textSize?: 'small' | 'medium';
ellipsis?: boolean;
fluid?: boolean;
appendTo?: AppendTo;
flip?: boolean;
fixed?: boolean;
showArrow?: boolean;
dataHook?: string;
className?: string;
onHide?: () => void;
onShow?: () => void;
}
export interface PopoverMenuItemProps {
text?: React.ReactNode;
onClick?: () => any;
skin?: 'dark' | 'destructive';
prefixIcon?: React.ReactNode;
dataHook?: string;
disabled?: boolean;
subtitle?: string;
}
export interface PopoverMenuDividerProps {
dataHook?: string;
}
export default class PopoverMenu extends React.PureComponent<PopoverMenuProps> {
static MenuItem: (props?: PopoverMenuItemProps) => React.ReactElement;
static Divider: (props?: PopoverMenuDividerProps) => React.ReactElement;
}