UNPKG

@aappddeevv/dynamics-client-ui

Version:

## What is it? A library to help you create great dynamics applications.

38 lines 1.66 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const React = require("react"); const Button_1 = require("office-ui-fabric-react/lib/Button"); const ContextualMenu_1 = require("office-ui-fabric-react/lib/ContextualMenu"); /** * A hidable context menu with a trigger element, typically a button. * Uses a horiz triple dot for the trigger button by default. */ class MenuTrigger extends React.Component { constructor(props) { super(props); this.onClick = () => { this.setState({ isContextMenuVisible: true }); }; this.onDismiss = () => { this.setState({ isContextMenuVisible: false }); }; this.state = { isContextMenuVisible: false }; } render() { return (React.createElement("div", null, React.createElement(Button_1.IconButton, { onClick: this.onClick, className: "contextualMenuTrigger", title: this.props.title, "aria-label": this.props.title, "aria-hidden": true, iconProps: { iconName: this.props.iconName } }), this.state.isContextMenuVisible && React.createElement(ContextualMenu_1.ContextualMenu, { target: ".contextualMenuTrigger" // could use id or set directly via ref , shouldFocusOnMount: false, onDismiss: this.onDismiss, directionalHint: this.props.directionalHint, items: this.props.menuItems || [] }))); } } MenuTrigger.defaultProps = { title: "Selections", iconName: "More", directionalHint: 4 /* bottomLeftEdge */ }; exports.MenuTrigger = MenuTrigger; exports.default = MenuTrigger; //# sourceMappingURL=MenuTrigger.js.map