@sanity/desk-tool
Version:
Tool for managing all sorts of content in a structured manner
22 lines (21 loc) • 663 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useUnique = useUnique;
var _isEqual2 = _interopRequireDefault(require("lodash/isEqual"));
var _react = require("react");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* This is React hook – an and escape hatch – to make sure that a value is the same
* on every render. SHOULD NOT BE USED IN MOST CASES.
*
* @internal
*/
function useUnique(value) {
var valueRef = (0, _react.useRef)(value);
if (!(0, _isEqual2.default)(valueRef.current, value)) {
valueRef.current = value;
}
return valueRef.current;
}