ra-core
Version:
Core components of react-admin, a frontend Framework for building admin applications on top of REST services, using ES6, React
17 lines (15 loc) • 491 B
text/typescript
import { LegacyRef, MutableRefObject, RefCallback } from 'react';
// https://github.com/gregberge/react-merge-refs
export function mergeRefs<T = any>(
refs: Array<MutableRefObject<T> | LegacyRef<T>>
): RefCallback<T> {
return value => {
refs.forEach(ref => {
if (typeof ref === 'function') {
ref(value);
} else if (ref != null) {
(ref as MutableRefObject<T | null>).current = value;
}
});
};
}