UNPKG

tix-react-ssr

Version:

Tiket.com React Project Scripts

1 lines 4.79 kB
'use strict';Object.defineProperty(exports,"__esModule",{value:true});var _extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};var _jsx=function(){var REACT_ELEMENT_TYPE=typeof Symbol==="function"&&Symbol.for&&Symbol.for("react.element")||0xeac7;return function createRawReactElement(type,props,key,children){var defaultProps=type&&type.defaultProps;var childrenLength=arguments.length-3;if(!props&&childrenLength!==0){props={};}if(props&&defaultProps){for(var propName in defaultProps){if(props[propName]===void 0){props[propName]=defaultProps[propName];}}}else if(!props){props=defaultProps||{};}if(childrenLength===1){props.children=children;}else if(childrenLength>1){var childArray=Array(childrenLength);for(var i=0;i<childrenLength;i++){childArray[i]=arguments[i+3];}props.children=childArray;}return{$$typeof:REACT_ELEMENT_TYPE,type:type,key:key===undefined?null:''+key,ref:null,props:props,_owner:null};};}();var _createClass=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}return function(Constructor,protoProps,staticProps){if(protoProps)defineProperties(Constructor.prototype,protoProps);if(staticProps)defineProperties(Constructor,staticProps);return Constructor;};}();var _react=require('react');var _react2=_interopRequireDefault(_react);var _reactDom=require('react-dom');var _reactDom2=_interopRequireDefault(_reactDom);var _ExecutionEnvironment=require('fbjs/lib/ExecutionEnvironment');var _propTypes=require('prop-types');require('./styles.css');function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self,call){if(!self){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call&&(typeof call==="object"||typeof call==="function")?call:self;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function, not "+typeof superClass);}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,enumerable:false,writable:true,configurable:true}});if(superClass)Object.setPrototypeOf?Object.setPrototypeOf(subClass,superClass):subClass.__proto__=superClass;}var _ref2=_jsx('div',{});var _ref3=_jsx('span',{});var Modal=function(_PureComponent){_inherits(Modal,_PureComponent);function Modal(){var _ref;var _temp,_this,_ret;_classCallCheck(this,Modal);for(var _len=arguments.length,args=Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}return _ret=(_temp=(_this=_possibleConstructorReturn(this,(_ref=Modal.__proto__||Object.getPrototypeOf(Modal)).call.apply(_ref,[this].concat(args))),_this),_this.el=_ExecutionEnvironment.canUseDOM?document.createElement('div'):_ref2,_temp),_possibleConstructorReturn(_this,_ret);}_createClass(Modal,[{key:'componentWillMount',value:function componentWillMount(){this.modalRoot=this.props.modalRoot&&_reactDom2.default.findDOMNode(this.props.container)||(_ExecutionEnvironment.canUseDOM?document.querySelector(this.props.modalRoot||'#modal-root')||document.createElement('div',{id:'modal-root'}):null);}},{key:'componentDidMount',value:function componentDidMount(){this.modalRoot.appendChild(this.el);}},{key:'componentWillUnmount',value:function componentWillUnmount(){this.modalRoot.removeChild(this.el);}},{key:'render',value:function render(){var _props=this.props,footer=_props.footer,children=_props.children,header=_props.header,className=_props.className,style=_props.style,onClick=_props.onClick,onlyOverlay=_props.onlyOverlay;var modalComponent=_jsx('div',{className:'modal',onClick:onClick,style:_extends({},onlyOverlay?{backgroundColor:'rgba(0,0,0,0)'}:{})},void 0,onlyOverlay&&children?_jsx('div',{className:'modal-content '+(className||''),style:style},void 0,children):_jsx('div',{className:'modal-content '+(className||''),style:style},void 0,header&&_jsx('div',{className:'modal-header'},void 0,header),children&&_jsx('div',{className:'modal-body'},void 0,children),footer&&_jsx('div',{className:'modal-footer'},void 0,footer)));if(!_ExecutionEnvironment.canUseDOM){return _ref3;}return _reactDom2.default.createPortal(modalComponent,this.el);}}]);return Modal;}(_react.PureComponent);exports.default=Modal;