@risecx/carespace-chat-ui
Version:
carespace-chat-ui React component
70 lines (55 loc) • 2.72 kB
JavaScript
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
import React from 'react';
import './menu.css';
import Button from '../../Button';
import MenuModal from './MenuModal';
var Menu = /*#__PURE__*/function (_React$Component) {
_inheritsLoose(Menu, _React$Component);
function Menu(props) {
var _this;
_this = _React$Component.call(this, props) || this;
_defineProperty(_assertThisInitialized(_this), "toggleModal", function () {
_this.setState({
isModalOpened: !_this.state.isModalOpened
});
});
_this.state = {
isModalOpened: false
};
return _this;
}
var _proto = Menu.prototype;
_proto.render = function render() {
var _this2 = this;
var _this$props$data = this.props.data,
text = _this$props$data.text,
_this$props$data$butt = _this$props$data.buttons,
buttons = _this$props$data$butt === void 0 ? [] : _this$props$data$butt;
return /*#__PURE__*/React.createElement("div", {
className: "card sc-message--menu"
}, /*#__PURE__*/React.createElement("div", {
className: "container"
}, /*#__PURE__*/React.createElement("h4", null, text)), /*#__PURE__*/React.createElement("div", {
className: "buttons"
}, buttons.map(function (button, index) {
return /*#__PURE__*/React.createElement(Button, _extends({
key: index
}, button, {
respondWhenWebUrl: true,
onClick: function onClick(silently) {
if (silently === void 0) {
silently = false;
}
return button.type === 'modal' ? _this2.toggleModal() : _this2.props.onRespond(button, silently);
}
}));
}), this.state.isModalOpened && /*#__PURE__*/React.createElement(MenuModal, _extends({}, this.props, {
toggleModal: this.toggleModal
}))));
};
return Menu;
}(React.Component);
export default Menu;