UNPKG

@lyra/default-layout

Version:

The default layout components for Lyra

56 lines (38 loc) 1.3 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _ActionModal = require('./ActionModal'); var _ActionModal2 = _interopRequireDefault(_ActionModal); var _fab = require('part:@lyra/components/buttons/fab'); var _fab2 = _interopRequireDefault(_fab); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } class ActionButton extends _react2.default.Component { constructor(props) { super(props); this.handleToggleModal = this.handleToggleModal.bind(this); this.state = { modalOpen: false }; } handleToggleModal() { this.setState({ modalOpen: !this.state.modalOpen }); } render() { if (this.state.modalOpen) { return _react2.default.createElement(_ActionModal2.default, { actions: this.props.actions, onClose: this.handleToggleModal }); } return _react2.default.createElement(_fab2.default, { onClick: this.handleToggleModal, ripple: true, colored: true }); } } ActionButton.propTypes = { actions: _propTypes2.default.array }; exports.default = ActionButton;