UNPKG

refun

Version:

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

31 lines (22 loc) 960 B
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.mapWithPropsMemo = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _react = require("react"); var _tsfn = require("tsfn"); var _utils = require("./utils"); var mapWithPropsMemo = function mapWithPropsMemo(getFn, watchKeys) { return function (props) { var prevProps = (0, _react.useRef)(_tsfn.EMPTY_OBJECT); var prevResult = (0, _react.useRef)(_tsfn.EMPTY_OBJECT); if (prevResult.current === _tsfn.EMPTY_OBJECT || !(0, _utils.shallowEqualByKeys)(prevProps.current, props, watchKeys)) { prevProps.current = props; prevResult.current = getFn(props); } return (0, _extends2.default)({}, props, prevResult.current); }; }; exports.mapWithPropsMemo = mapWithPropsMemo; //# sourceMappingURL=map-with-props-memo.js.map