react-permissions-dynamic
Version:
This is a package with react-permissions
21 lines (20 loc) • 745 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.useDeepEffect = void 0;
const react_1 = require("react");
const lodash_isequal_1 = __importDefault(require("lodash.isequal"));
const useDeepCompareMemoize = (deps) => {
const ref = (0, react_1.useRef)([]);
if (!(0, lodash_isequal_1.default)(deps, ref.current)) {
ref.current = deps;
}
return ref.current;
};
const useDeepEffect = (factory, deps) => {
//eslint-disable-next-line
return (0, react_1.useEffect)(factory, useDeepCompareMemoize(deps));
};
exports.useDeepEffect = useDeepEffect;