Repository URL to install this package:
|
Version:
2.0.1 ▾
|
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
var _getPrototypeOf3 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireWildcard(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _components = require("@doodle/components");
var _ic_close = _interopRequireDefault(require("@doodle/components/visuals/Icon/svg/ic_close.svg"));
/**
* Setting modal component for displaying time warning.
*/
var WarningModal =
/*#__PURE__*/
function (_PureComponent) {
(0, _inherits2["default"])(WarningModal, _PureComponent);
function WarningModal() {
var _getPrototypeOf2;
var _this;
(0, _classCallCheck2["default"])(this, WarningModal);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = (0, _possibleConstructorReturn2["default"])(this, (_getPrototypeOf2 = (0, _getPrototypeOf3["default"])(WarningModal)).call.apply(_getPrototypeOf2, [this].concat(args)));
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleSubmit", function () {
var _this$props = _this.props,
onSubmit = _this$props.onSubmit,
toggleModal = _this$props.toggleModal;
toggleModal();
onSubmit();
});
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleDiscard", function () {
var _this$props2 = _this.props,
onSkip = _this$props2.onSkip,
toggleModal = _this$props2.toggleModal;
toggleModal();
onSkip();
});
return _this;
}
(0, _createClass2["default"])(WarningModal, [{
key: "render",
value: function render() {
var _this$props3 = this.props,
isModalOpen = _this$props3.isModalOpen,
messages = _this$props3.messages;
return _react["default"].createElement(_components.Modal, {
className: "warning-root-modal",
show: isModalOpen,
onExit: this.handleDiscard,
variant: "ink",
title: messages.modalTitle
}, _react["default"].createElement(_components.Card, {
className: "warning-modal",
content: _react["default"].createElement("div", {
className: "warning-modal-content"
}, _react["default"].createElement("div", {
className: "warning-modal-header"
}, _react["default"].createElement(_components.Button, {
className: "warning-modal-close-btn",
onClick: this.handleDiscard
}, _react["default"].createElement(_components.ButtonIcon, {
icon: _ic_close["default"],
className: "warning-modal-close-icon"
})), _react["default"].createElement("h2", {
className: "warning-modal-title"
}, messages.title)), _react["default"].createElement("p", {
className: "warning-modal-description"
}, messages.content), _react["default"].createElement("div", {
className: "warning-modal-button-panel"
}, _react["default"].createElement(_components.Button, {
"aria-label": messages.ariaLabelContinueBtn,
variant: "blue",
onClick: this.handleSubmit
}, messages.continueButton)))
}));
}
}]);
return WarningModal;
}(_react.PureComponent);
(0, _defineProperty2["default"])(WarningModal, "propTypes", {
/**
* A bool flag for showing the modal component.
*/
isModalOpen: _propTypes["default"].bool,
toggleModal: _propTypes["default"].func.isRequired,
onSubmit: _propTypes["default"].func.isRequired,
onSkip: _propTypes["default"].func.isRequired,
messages: _propTypes["default"].shape({
modalTitle: _propTypes["default"].string.isRequired,
title: _propTypes["default"].string.isRequired,
content: _propTypes["default"].string.isRequired,
ariaLabelContinueBtn: _propTypes["default"].string.isRequired,
continueButton: _propTypes["default"].string.isRequired
}).isRequired
});
(0, _defineProperty2["default"])(WarningModal, "defaultProps", {
isModalOpen: false
});
var _default = WarningModal;
exports["default"] = _default;