UNPKG

cometchat-react-ui-kit2

Version:

CometChat UI Kit for React App

94 lines (93 loc) 3.9 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.CometChatConfirmDialog = void 0; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _style = require("./style"); var _loading = _interopRequireDefault(require("./resources/loading.svg")); var _PrimaryComponents = require("../../PrimaryComponents"); var CometChatConfirmDialog = function CometChatConfirmDialog(props) { var _React$useState = _react["default"].useState("initial"), _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2), state = _React$useState2[0], setState = _React$useState2[1]; var confirmButtonText = props.confirmButtonText; var cancelButtonText = props.cancelButtonText; var onConfirm = function onConfirm(event) { setState("loading"); props.onConfirm(event).then(function (response) { setState("done"); })["catch"](function (error) { setState("error"); }); }; return /*#__PURE__*/_react["default"].createElement("div", { className: "confirm__dialog", style: (0, _style.dialogWrapperStyle)(props) }, /*#__PURE__*/_react["default"].createElement("div", { style: (0, _style.dialogLoadingWrapperStyle)(props, state), className: "dialog__loading__wrapper" }, /*#__PURE__*/_react["default"].createElement("div", { style: (0, _style.dialogLoadingStyle)(_loading["default"]), className: "dialog__loading" })), /*#__PURE__*/_react["default"].createElement("div", { className: "dialog__form", style: (0, _style.dialogFormStyle)(props, state) }, /*#__PURE__*/_react["default"].createElement("div", { className: "dialog__error", style: (0, _style.dialogErrorStyle)(props, state) }, (0, _PrimaryComponents.localize)("SOMETHING_WRONG")), /*#__PURE__*/_react["default"].createElement("div", { className: "dialog__title", style: (0, _style.dialogTitleStyle)(props) }, props.title), /*#__PURE__*/_react["default"].createElement("div", { className: "dialog__message", style: (0, _style.dialogMessageStyle)(props) }, props.messageText), /*#__PURE__*/_react["default"].createElement("div", { className: "dialog__buttons", style: (0, _style.dialogButtonStyle)(props) }, /*#__PURE__*/_react["default"].createElement("button", { type: "button", className: "button__cancel", style: (0, _style.buttonConfirmStyle)(props), onClick: onConfirm }, confirmButtonText), /*#__PURE__*/_react["default"].createElement("button", { type: "button", className: "button__confirm", style: (0, _style.buttonCancelStyle)(props), onClick: props.onCancel }, cancelButtonText)))); }; exports.CometChatConfirmDialog = CometChatConfirmDialog; CometChatConfirmDialog.propTypes = { isOpen: _propTypes["default"].bool.isRequired, title: _propTypes["default"].string.isRequired, confirmButtonText: _propTypes["default"].string.isRequired, cancelButtonText: _propTypes["default"].string.isRequired, messageText: _propTypes["default"].string.isRequired, onConfirm: _propTypes["default"].func.isRequired, onCancel: _propTypes["default"].func.isRequired, style: _propTypes["default"].object.isRequired }; CometChatConfirmDialog.defaultProps = { isOpen: false, title: "", messageText: "Are you sure?", confirmButtonText: "Delete", cancelButtonText: "Cancel", onConfirm: function onConfirm() {}, onCancel: function onCancel() {}, style: { confirmButtonTextFont: "", confirmButtonTextColor: "", cancelButtonTextFont: "", cancelButtonTextColor: "", messageTextFont: "", messageTextColor: "", cancelBackground: "", confirmBackground: "" } };