UNPKG

@blockstack/ui

Version:

Blockstack UI components built using React and styled-components with styled-system.

38 lines (32 loc) 821 B
import { useMemo } from 'react'; function assignRef(ref, value) { if (ref == null) return; if (typeof ref === 'function') { ref(value); } else { try { ref.current = value; } catch (error) { throw new Error("Cannot assign value \"" + value + "\" to ref \"" + ref + "\""); } } } function useMergeRefs() { for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) { refs[_key] = arguments[_key]; } return useMemo(function () { if (refs.every(function (ref) { return ref == null; })) { return null; } return function (node) { refs.forEach(function (ref) { if (ref) assignRef(ref, node); }); }; }, refs); } export { assignRef, useMergeRefs }; //# sourceMappingURL=use-merge-refs.esm.js.map