1 | import { __rest } from "tslib";
|
2 | import * as React from 'react';
|
3 | import styles from '@patternfly/react-styles/css/components/OptionsMenu/options-menu';
|
4 | import { DropdownContext } from '../Dropdown';
|
5 | import { DropdownWithContext } from '../Dropdown/DropdownWithContext';
|
6 | import { useOUIAId } from '../../helpers';
|
7 | export var OptionsMenuPosition;
|
8 | (function (OptionsMenuPosition) {
|
9 | OptionsMenuPosition["right"] = "right";
|
10 | OptionsMenuPosition["left"] = "left";
|
11 | })(OptionsMenuPosition || (OptionsMenuPosition = {}));
|
12 | export var OptionsMenuDirection;
|
13 | (function (OptionsMenuDirection) {
|
14 | OptionsMenuDirection["up"] = "up";
|
15 | OptionsMenuDirection["down"] = "down";
|
16 | })(OptionsMenuDirection || (OptionsMenuDirection = {}));
|
17 | export const OptionsMenu = (_a) => {
|
18 | var { className = '', menuItems, toggle, isText = false, isGrouped = false, id,
|
19 |
|
20 | ref, menuAppendTo = 'inline', ouiaId, ouiaSafe = true } = _a, props = __rest(_a, ["className", "menuItems", "toggle", "isText", "isGrouped", "id", "ref", "menuAppendTo", "ouiaId", "ouiaSafe"]);
|
21 | return (React.createElement(DropdownContext.Provider, { value: {
|
22 | id,
|
23 | onSelect: () => undefined,
|
24 | toggleIndicatorClass: styles.optionsMenuToggleIcon,
|
25 | toggleTextClass: styles.optionsMenuToggleText,
|
26 | menuClass: styles.optionsMenuMenu,
|
27 | itemClass: styles.optionsMenuMenuItem,
|
28 | toggleClass: isText ? styles.optionsMenuToggleButton : styles.optionsMenuToggle,
|
29 | baseClass: styles.optionsMenu,
|
30 | disabledClass: styles.modifiers.disabled,
|
31 | menuComponent: isGrouped ? 'div' : 'ul',
|
32 | baseComponent: 'div',
|
33 | ouiaId: useOUIAId(OptionsMenu.displayName, ouiaId),
|
34 | ouiaSafe,
|
35 | ouiaComponentType: OptionsMenu.displayName
|
36 | } },
|
37 | React.createElement(DropdownWithContext, Object.assign({ id: id, dropdownItems: menuItems, className: className, isGrouped: isGrouped, toggle: toggle, menuAppendTo: menuAppendTo }, props))));
|
38 | };
|
39 | OptionsMenu.displayName = 'OptionsMenu';
|
40 |
|
\ | No newline at end of file |