5acafe2fc6
* Chore(front): Add more typeguards Co-authored-by: Benjamin Mayanja V <vibenjamin6@gmail.com> Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev> * Remove source map generation to avoid warnings --------- Co-authored-by: Benjamin Mayanja V <vibenjamin6@gmail.com> Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev> Co-authored-by: Charles Bochet <charles@twenty.com>
15 lines
418 B
TypeScript
15 lines
418 B
TypeScript
import React, { Ref, RefCallback } from 'react';
|
|
import { isFunction } from '@sniptt/guards';
|
|
|
|
export const useCombinedRefs =
|
|
<T>(...refs: (Ref<T> | undefined)[]): RefCallback<T> =>
|
|
(node: T) => {
|
|
for (const ref of refs) {
|
|
if (isFunction(ref)) {
|
|
ref(node);
|
|
} else if (ref !== null && ref !== undefined) {
|
|
(ref as React.MutableRefObject<T | null>).current = node;
|
|
}
|
|
}
|
|
};
|