Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});

const tslib_1 = require("tslib");

const react_1 = tslib_1.__importDefault(require("react"));

const exotic_1 = require("exotic");

const mobx_react_1 = require("xmobx/mobx-react");

const renderProps_1 = require("./renderProps");

const state_1 = require("../state");

function toPromotionState(props) {
  if (props.state !== undefined) {
    return props.state;
  } else {
    return new state_1.PromotionState();
  }
}

let PromotionModal = class PromotionModal extends react_1.default.Component {
  constructor() {
    super(...arguments);
    this.state = toPromotionState(this.props);
  }

  render() {
    const _a = this.props,
          {
      renderBox,
      renderWrapper
    } = _a,
          remainingProps = tslib_1.__rest(_a, ["renderBox", "renderWrapper"]);

    const children = exotic_1.isFunction(renderBox) && renderBox(remainingProps, this.state);
    const view = exotic_1.isFunction(renderWrapper) && renderWrapper(Object.assign({
      children
    }, remainingProps), this.state);
    return view;
  }

};
PromotionModal.defaultProps = {
  className: '',
  index: -1,
  // renderProps
  renderModal: renderProps_1.defaultRenderModal,
  renderBox: renderProps_1.defaultRenderBox,
  renderWrapper: renderProps_1.defaultRenderWrapper
};
PromotionModal = tslib_1.__decorate([mobx_react_1.observer], PromotionModal);
exports.PromotionModal = PromotionModal;
exports.default = PromotionModal;