kanban / src /lib /use-forwarded-ref.ts
Leon4gr45's picture
Deploy magic-resume as Docker Space (port 3000) (part 2)
aa1ee73 verified
Raw
History Blame Contribute Delete
376 Bytes
import { useRef, useEffect } from "react";
import type { ForwardedRef } from "react";
export function useForwardedRef<T>(ref: ForwardedRef<T>) {
const innerRef = useRef<T>(null);
useEffect(() => {
if (!ref) return;
if (typeof ref === "function") {
ref(innerRef.current);
} else {
ref.current = innerRef.current;
}
});
return innerRef;
}