cosmo-ui
Version:
Common React components
54 lines • 2.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var React = require("react");
var react_redux_1 = require("react-redux");
var cx = require("classnames");
var actions_1 = require("../../actions");
var openable_component_1 = require("../openable-component");
var reducers_1 = require("../../reducers");
var styles = require('../../../src/styles/components/modal.scss');
var ModalPopupComponent = (function (_super) {
tslib_1.__extends(ModalPopupComponent, _super);
function ModalPopupComponent() {
return _super !== null && _super.apply(this, arguments) || this;
}
ModalPopupComponent.prototype.renderCloseButton = function () {
if (!this.props.closeButton)
return null;
return (React.createElement("a", { className: styles.close, onClick: this.props.closeModal },
React.createElement("span", null, '\u00D7')));
};
ModalPopupComponent.prototype.render = function () {
return (React.createElement("div", { ref: this.setContainerRef, className: cx(styles.modalPopup, this.props.className) },
this.renderCloseButton(),
this.props.children));
};
ModalPopupComponent.prototype.isActive = function () {
var _a = this.props, state = _a.state, backgroundActive = _a.backgroundActive;
return backgroundActive || (state.modalProps && state.modalProps.backgroundActive);
};
ModalPopupComponent.prototype.handleClose = function () {
this.props.closeModal();
};
return ModalPopupComponent;
}(openable_component_1.OpenableComponent));
var ModalPopupContent = (function (_super) {
tslib_1.__extends(ModalPopupContent, _super);
function ModalPopupContent() {
return _super !== null && _super.apply(this, arguments) || this;
}
ModalPopupContent.prototype.render = function () {
return (React.createElement("div", { className: cx(styles.modalContent, this.props.className) }, this.props.children));
};
return ModalPopupContent;
}(React.Component));
exports.ModalPopupContent = ModalPopupContent;
var mapStateToProps = function (state, ownProps) { return ({
state: state[reducers_1.MODAL_REDUCER_KEY],
}); };
var mapDispatchToProps = {
closeModal: actions_1.hideModal,
};
exports.ModalPopup = react_redux_1.connect(mapStateToProps, mapDispatchToProps)(ModalPopupComponent);
//# sourceMappingURL=modal-popup.js.map