'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var React = require('react'); var updateRef = function updateRef(ref, value) { if (typeof ref === 'function') { ref(value); return; } ref.current = value; }; var useComposedRef = function useComposedRef(libRef, userRef) { var prevUserRef = React.useRef(); return React.useCallback(function (instance) { libRef.current = instance; if (prevUserRef.current) { updateRef(prevUserRef.current, null); } prevUserRef.current = userRef; if (!userRef) { return; } updateRef(userRef, instance); }, [userRef]); }; exports.default = useComposedRef;