UNPKG

@flexis/ui

Version:

Styleless React Components

230 lines (179 loc) 11.9 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault"); var _Object$defineProperty2 = require("@babel/runtime-corejs3/core-js-stable/object/define-property"); _Object$defineProperty2(exports, "__esModule", { value: true }); exports.default = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/define-property")); var _defineProperties = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/define-properties")); var _getOwnPropertyDescriptors = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors")); var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each")); var _getOwnPropertyDescriptor = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor")); var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter")); var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols")); var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys")); var _defineProperty3 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty")); var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise")); var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs3/regenerator")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/asyncToGenerator")); var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/getPrototypeOf")); var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/inherits")); var _tslib = require("tslib"); var _react = _interopRequireDefault(require("react")); var _helpers = require("../../helpers"); var _Modal = _interopRequireDefault(require("../Modal")); var _ConfirmModalSt = require("./ConfirmModal.st.css"); function ownKeys(object, enumerableOnly) { var keys = (0, _keys.default)(object); if (_getOwnPropertySymbols.default) { var symbols = (0, _getOwnPropertySymbols.default)(object); if (enumerableOnly) symbols = (0, _filter.default)(symbols).call(symbols, function (sym) { return (0, _getOwnPropertyDescriptor.default)(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context3; (0, _forEach.default)(_context3 = ownKeys(Object(source), true)).call(_context3, function (key) { (0, _defineProperty3.default)(target, key, source[key]); }); } else if (_getOwnPropertyDescriptors.default) { (0, _defineProperties.default)(target, (0, _getOwnPropertyDescriptors.default)(source)); } else { var _context4; (0, _forEach.default)(_context4 = ownKeys(Object(source))).call(_context4, function (key) { (0, _defineProperty2.default)(target, key, (0, _getOwnPropertyDescriptor.default)(source, key)); }); } } return target; } var _createElement = _react.default.createElement; var PureComponent = _react.default.PureComponent; var ConfirmModal = /** @class */ function () { var ConfirmModal = /*#__PURE__*/function (_PureComponent) { (0, _inherits2.default)(ConfirmModal, _PureComponent); function ConfirmModal() { var _this; (0, _classCallCheck2.default)(this, ConfirmModal); _this = (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(ConfirmModal).apply(this, arguments)); _this.state = { active: false }; _this.resolver = null; _this.promise = null; return _this; } (0, _createClass2.default)(ConfirmModal, [{ key: "render", value: function render() { var _this$props = this.props, className = _this$props.className, children = _this$props.children, props = (0, _objectWithoutProperties2.default)(_this$props, ["className", "children"]); var active = this.state.active; return _createElement(_Modal.default, (0, _extends2.default)({}, props, { className: (0, _ConfirmModalSt.style)(_ConfirmModalSt.classes.root, className), onClose: this.onClose, active: active }), _createElement("form", { className: _ConfirmModalSt.classes.form, onSubmit: this.onSubmit, onClick: this.onClick }, children)); } }, { key: "onSubmit", value: function () { var _onSubmit = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(event) { return _regenerator.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: event.preventDefault(); event.stopPropagation(); _context.next = 4; return this.setActiveState(false); case 4: this.resolve(true); case 5: case "end": return _context.stop(); } } }, _callee, this); })); function onSubmit(_x) { return _onSubmit.apply(this, arguments); } return onSubmit; }() }, { key: "onClick", value: function onClick(_ref) { var target = _ref.target; if (target.type === 'reset') { this.hide(); } } }, { key: "onClose", value: function onClose() { this.hide(); } }, { key: "resolve", value: function resolve(state) { var resolver = this.resolver; if (typeof resolver === 'function') { resolver(state); this.resolver = null; this.promise = null; } } }, { key: "setActiveState", value: function setActiveState(active) { var _this2 = this; return new _promise.default(function (resolve) { _this2.setState(function () { return { active: active }; }, resolve); }); } }, { key: "show", value: function show() { var _this3 = this; if (!this.promise) { this.promise = new _promise.default(function (resolve) { _this3.resolver = resolve; _this3.setActiveState(true); }); } return this.promise; } }, { key: "hide", value: function () { var _hide = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() { return _regenerator.default.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return this.setActiveState(false); case 2: this.resolve(false); case 3: case "end": return _context2.stop(); } } }, _callee2, this); })); function hide() { return _hide.apply(this, arguments); } return hide; }() }]); return ConfirmModal; }(PureComponent); process.env.NODE_ENV !== "production" ? ConfirmModal.propTypes = _objectSpread({}, _Modal.default.propTypes) : void 0; ConfirmModal.defaultProps = _objectSpread({}, _Modal.default.defaultProps); (0, _tslib.__decorate)([(0, _helpers.Bind)()], ConfirmModal.prototype, "onSubmit", null); (0, _tslib.__decorate)([(0, _helpers.Bind)()], ConfirmModal.prototype, "onClick", null); (0, _tslib.__decorate)([(0, _helpers.Bind)()], ConfirmModal.prototype, "onClose", null); return ConfirmModal; }(); var _default = ConfirmModal; exports.default = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0NvbmZpcm1Nb2RhbC9Db25maXJtTW9kYWwudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFLQTs7QUFHQTs7QUFHQTs7Ozs7Ozs7O0FBV0EsSUFBQSxZQUFBO0FBQUE7QUFBQSxZQUFBO0FBQUEsTUFBcUIsWUFBckI7QUFBQTs7QUFBQSw0QkFBQTtBQUFBOztBQUFBOztBQVVDLFlBQUEsS0FBQSxHQUFRO0FBQ1AsUUFBQSxNQUFNLEVBQUU7QUFERCxPQUFSO0FBSVEsWUFBQSxRQUFBLEdBQXFDLElBQXJDO0FBQ0EsWUFBQSxPQUFBLEdBQTRCLElBQTVCO0FBZlQ7QUEwR0M7O0FBMUdEO0FBQUE7QUFBQSwrQkFpQk87QUFBQSwwQkFNRCxLQUFLLEtBTko7QUFBQSxZQUdKLFNBSEksZUFHSixTQUhJO0FBQUEsWUFJSixRQUpJLGVBSUosUUFKSTtBQUFBLFlBS0QsS0FMQztBQUFBLFlBUUosTUFSSSxHQVNELEtBQUssS0FUSixDQVFKLE1BUkk7QUFXTCxlQUNDLGVBQUMsY0FBRCw2QkFDSyxLQURMO0FBRUMsVUFBQSxTQUFTLEVBQUUsMkJBQU0sd0JBQVEsSUFBZCxFQUFvQixTQUFwQixDQUZaO0FBR0MsVUFBQSxPQUFPLEVBQUUsS0FBSyxPQUhmO0FBSUMsVUFBQSxNQUFNLEVBQUU7QUFKVCxZQU1DO0FBQ0MsVUFBQSxTQUFTLEVBQUUsd0JBQVEsSUFEcEI7QUFFQyxVQUFBLFFBQVEsRUFBRSxLQUFLLFFBRmhCO0FBR0MsVUFBQSxPQUFPLEVBQUUsS0FBSztBQUhmLFdBS0UsUUFMRixDQU5ELENBREQ7QUFnQkE7QUE1Q0Y7QUFBQTtBQUFBO0FBQUEsaUhBK0N3QixLQS9DeEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWdERSxrQkFBQSxLQUFLLENBQUMsY0FBTjtBQUNBLGtCQUFBLEtBQUssQ0FBQyxlQUFOO0FBakRGO0FBQUEseUJBa0RRLEtBQUssY0FBTCxDQUFvQixLQUFwQixDQWxEUjs7QUFBQTtBQW1ERSx1QkFBSyxPQUFMLENBQWEsSUFBYjs7QUFuREY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsb0NBd0R5RTtBQUFBLFlBQXJFLE1BQXFFLFFBQXJFLE1BQXFFOztBQUd2RSxZQUFJLE1BQU0sQ0FBQyxJQUFQLEtBQWdCLE9BQXBCLEVBQTZCO0FBQzVCLGVBQUssSUFBTDtBQUNBO0FBQ0Q7QUE5REY7QUFBQTtBQUFBLGdDQWlFZ0I7QUFDZCxhQUFLLElBQUw7QUFDQTtBQW5FRjtBQUFBO0FBQUEsOEJBcUVTLEtBckVULEVBcUV1QjtBQUFBLFlBR3BCLFFBSG9CLEdBSWpCLElBSmlCLENBR3BCLFFBSG9COztBQU1yQixZQUFJLE9BQU8sUUFBUCxLQUFvQixVQUF4QixFQUFvQztBQUNuQyxVQUFBLFFBQVEsQ0FBQyxLQUFELENBQVI7QUFDQSxlQUFLLFFBQUwsR0FBZ0IsSUFBaEI7QUFDQSxlQUFLLE9BQUwsR0FBZSxJQUFmO0FBQ0E7QUFDRDtBQWhGRjtBQUFBO0FBQUEscUNBa0ZnQixNQWxGaEIsRUFrRitCO0FBQUE7O0FBQzdCLGVBQU8scUJBQVksVUFBQyxPQUFELEVBQVk7QUFDOUIsVUFBQSxNQUFJLENBQUMsUUFBTCxDQUFjO0FBQUEsbUJBQU87QUFDcEIsY0FBQSxNQUFNLEVBQU47QUFEb0IsYUFBUDtBQUFBLFdBQWQsRUFFSSxPQUZKO0FBR0EsU0FKTSxDQUFQO0FBS0E7QUF4RkY7QUFBQTtBQUFBLDZCQTBGSztBQUFBOztBQUVILFlBQUksQ0FBQyxLQUFLLE9BQVYsRUFBbUI7QUFDbEIsZUFBSyxPQUFMLEdBQWUscUJBQXFCLFVBQUMsT0FBRCxFQUFZO0FBQy9DLFlBQUEsTUFBSSxDQUFDLFFBQUwsR0FBZ0IsT0FBaEI7O0FBQ0EsWUFBQSxNQUFJLENBQUMsY0FBTCxDQUFvQixJQUFwQjtBQUNBLFdBSGMsQ0FBZjtBQUlBOztBQUVELGVBQU8sS0FBSyxPQUFaO0FBQ0E7QUFwR0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEseUJBdUdRLEtBQUssY0FBTCxDQUFvQixLQUFwQixDQXZHUjs7QUFBQTtBQXdHRSx1QkFBSyxPQUFMLENBQWEsS0FBYjs7QUF4R0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsSUFBMEMsYUFBMUM7O0FBRVEsMENBQUEsWUFBQSxDQUFBLFNBQUEscUJBQ0gsZUFBTSxTQURIO0FBSUEsRUFBQSxZQUFBLENBQUEsWUFBQSxxQkFDSCxlQUFNLFlBREg7QUF5Q1AseUJBQUEsQ0FEQyxvQkFDRCxDQUFBLEUsc0JBQUEsRSxVQUFBLEVBS0MsSUFMRDtBQVFBLHlCQUFBLENBREMsb0JBQ0QsQ0FBQSxFLHNCQUFBLEUsU0FBQSxFQU9DLElBUEQ7QUFVQSx5QkFBQSxDQURDLG9CQUNELENBQUEsRSxzQkFBQSxFLFNBQUEsRUFFQyxJQUZEO0FBeUNELFNBQUEsWUFBQTtBQUFDLENBMUdELEVBQUE7O2VBQXFCLFkiLCJzb3VyY2VSb290IjoiIn0=