@workday/canvas-kit-labs-react-menu
Version:
A container for navigation or action items
36 lines • 1.28 kB
TypeScript
import * as React from 'react';
import { MenuItemProps } from './MenuItem';
import { GrowthBehavior } from '@workday/canvas-kit-react-common';
export interface MenuProps extends GrowthBehavior, React.HTMLAttributes<HTMLUListElement> {
children?: React.ReactElement<MenuItemProps> | React.ReactElement<MenuItemProps>[];
isOpen?: boolean;
width?: number | string;
onSelect?: () => void;
onClose?: () => void;
initialSelectedItem?: number;
id?: string;
'aria-labelledby'?: string;
}
export interface MenuState {
selectedItemIndex: number;
}
export default class Menu extends React.Component<MenuProps, MenuState> {
private id;
private animateId;
private menuRef;
private firstCharacters;
constructor(props: MenuProps);
componentDidUpdate(prevProps: MenuProps): void;
componentDidMount(): void;
componentWillUnmount(): void;
render(): JSX.Element;
getNormalizedItemIndex: (index: number | undefined) => number;
setNormalizedItemIndex: (index: number | undefined) => void;
private handleKeyboardShortcuts;
private handleClick;
private getIndexFirstChars;
private setFirstCharacters;
private getInitialSelectedItem;
private setInitialSelectedItem;
}
//# sourceMappingURL=Menu.d.ts.map