Bin
2025-12-16 9e0b2ba2c317b1a86212f24cbae3195ad1f3dbfa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import type { MutableRefObject } from "react";
 
export default function mergeRefs(...inputRefs: (MutableRefObject<any> | undefined | null)[]) {
  const filteredInputRefs = inputRefs.filter(Boolean) as MutableRefObject<any>[];
 
  if (filteredInputRefs.length <= 1) {
    return filteredInputRefs[0];
  }
 
  return (ref: any) => {
    filteredInputRefs.forEach((inputRef: MutableRefObject<any> | ((ref: MutableRefObject<any>) => void)) => {
      if (typeof inputRef === "function") {
        inputRef(ref);
      } else {
        inputRef.current = ref;
      }
    });
  };
}