UNPKG

@primer/react

Version:

An implementation of GitHub's Primer Design System using React

25 lines (22 loc) 722 B
import { c } from 'react-compiler-runtime'; import { useImperativeHandle } from 'react'; /** * Use a ref object as the imperative handle for a forwarded ref. This can be used to * synchronize the ref object with the forwarded ref and allow local access the reference * instance with `.current`. * * **NOTE**: The `refObject` should be passed to the underlying element, NOT the `forwardedRef`. */ function useRefObjectAsForwardedRef(forwardedRef, refObject) { const $ = c(2); let t0; if ($[0] !== refObject.current) { t0 = () => refObject.current; $[0] = refObject.current; $[1] = t0; } else { t0 = $[1]; } useImperativeHandle(forwardedRef, t0); } export { useRefObjectAsForwardedRef };