UNPKG

refun

Version:

A collection of React Hook-enabled functions that compose harmoniously with each other. Similar to `recompose`, but:

34 lines (27 loc) 973 B
Object.defineProperty(exports, "__esModule", { value: true }); exports.pureComponent = pureComponent; var _react = require("react"); var _tsfn = require("tsfn"); var _utils = require("./utils"); function pureComponent() { for (var _len = arguments.length, uses = new Array(_len), _key = 0; _key < _len; _key++) { uses[_key] = arguments[_key]; } return function (Component) { return function (props) { var renderResultRef = (0, _react.useRef)(null); var prevOutPropsRef = (0, _react.useRef)(_tsfn.EMPTY_OBJECT); var outProps = uses.reduce(function (props, use) { return use(props); }, props); if (prevOutPropsRef.current === _tsfn.EMPTY_OBJECT || !(0, _utils.shallowEquals)(prevOutPropsRef.current, outProps)) { prevOutPropsRef.current = outProps; renderResultRef.current = Component(outProps); } return renderResultRef.current; }; }; } //# sourceMappingURL=pure-component.js.map