UNPKG

react-mf-modal

Version:

A markup free modal component for React

113 lines (94 loc) 3.09 kB
'use strict'; var _get = require('babel-runtime/helpers/get')['default']; var _inherits = require('babel-runtime/helpers/inherits')['default']; var _createClass = require('babel-runtime/helpers/create-class')['default']; var _classCallCheck = require('babel-runtime/helpers/class-call-check')['default']; var _extends = require('babel-runtime/helpers/extends')['default']; var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default']; Object.defineProperty(exports, '__esModule', { value: true }); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var modalStyle = { display: 'block', opacity: 1, top: '10%', zIndex: 1003 }; var SimpleMaterializeModal = (function (_React$Component) { _inherits(SimpleMaterializeModal, _React$Component); function SimpleMaterializeModal() { var _this = this; _classCallCheck(this, SimpleMaterializeModal); _get(Object.getPrototypeOf(SimpleMaterializeModal.prototype), 'constructor', this).apply(this, arguments); this.bubblePrevent = function (evt) { evt.stopPropagation(); }; this.handleClose = function () { _this.props.dismiss('closed'); }; } _createClass(SimpleMaterializeModal, [{ key: 'render', value: function render() { return _react2['default'].createElement( 'div', { className: 'modal', style: _extends({}, modalStyle, this.props.style) }, _react2['default'].createElement( 'div', { className: 'modal-content' }, _react2['default'].createElement( 'h4', null, this.props.title ), this.props.children ), _react2['default'].createElement( 'div', { className: 'modal-footer' }, _react2['default'].createElement( 'a', { className: 'modal-action modal-close waves-effect waves-green btn-flat blue-text', onClick: this.props.onSubmitClick }, this.props.submitLabel ), _react2['default'].createElement( 'a', { className: 'modal-action modal-close waves-effect waves-red btn-flat', onClick: this.handleClose }, 'Close' ) ) ); } }], [{ key: 'propTypes', value: { title: _react2['default'].PropTypes.string.isRequired, dismiss: _react2['default'].PropTypes.func.isRequired, resolve: _react2['default'].PropTypes.func.isRequired, submitLabel: _react2['default'].PropTypes.string.isRequired, onSubmitClick: _react2['default'].PropTypes.func.isRequired }, enumerable: true }, { key: 'defaultProps', value: { submitLabel: 'OK', style: modalStyle }, enumerable: true }, { key: 'animate', value: { top: { visible: 100, hidden: 50 } }, enumerable: true }]); return SimpleMaterializeModal; })(_react2['default'].Component); exports['default'] = SimpleMaterializeModal; module.exports = exports['default'];