71 lines
2.7 KiB
JavaScript
71 lines
2.7 KiB
JavaScript
"use strict";
|
|
|
|
exports.__esModule = true;
|
|
|
|
var _extends2 = require("babel-runtime/helpers/extends");
|
|
|
|
var _extends3 = _interopRequireDefault(_extends2);
|
|
|
|
var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");
|
|
|
|
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
|
|
|
var _possibleConstructorReturn2 = require("babel-runtime/helpers/possibleConstructorReturn");
|
|
|
|
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
|
|
|
var _inherits2 = require("babel-runtime/helpers/inherits");
|
|
|
|
var _inherits3 = _interopRequireDefault(_inherits2);
|
|
|
|
var _react = require("react");
|
|
|
|
var React = _interopRequireWildcard(_react);
|
|
|
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj["default"] = obj; return newObj; } }
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
|
|
var __rest = undefined && undefined.__rest || function (s, e) {
|
|
var t = {};
|
|
for (var p in s) {
|
|
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
}if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
if (e.indexOf(p[i]) < 0) t[p[i]] = s[p[i]];
|
|
}return t;
|
|
};
|
|
|
|
var LazyRenderBox = function (_React$Component) {
|
|
(0, _inherits3["default"])(LazyRenderBox, _React$Component);
|
|
|
|
function LazyRenderBox() {
|
|
(0, _classCallCheck3["default"])(this, LazyRenderBox);
|
|
return (0, _possibleConstructorReturn3["default"])(this, _React$Component.apply(this, arguments));
|
|
}
|
|
|
|
LazyRenderBox.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {
|
|
if (nextProps.forceRender) {
|
|
return true;
|
|
}
|
|
return !!nextProps.hiddenClassName || !!nextProps.visible;
|
|
};
|
|
|
|
LazyRenderBox.prototype.render = function render() {
|
|
var _a = this.props,
|
|
className = _a.className,
|
|
hiddenClassName = _a.hiddenClassName,
|
|
visible = _a.visible,
|
|
forceRender = _a.forceRender,
|
|
restProps = __rest(_a, ["className", "hiddenClassName", "visible", "forceRender"]);
|
|
var useClassName = className;
|
|
if (!!hiddenClassName && !visible) {
|
|
useClassName += " " + hiddenClassName;
|
|
}
|
|
return React.createElement("div", (0, _extends3["default"])({}, restProps, { className: useClassName }));
|
|
};
|
|
|
|
return LazyRenderBox;
|
|
}(React.Component);
|
|
|
|
exports["default"] = LazyRenderBox;
|
|
module.exports = exports['default']; |