1 | import { useMemo } from 'react';
|
2 |
|
3 | var toFnRef = function toFnRef(ref) {
|
4 | return !ref || typeof ref === 'function' ? ref : function (value) {
|
5 | ref.current = value;
|
6 | };
|
7 | };
|
8 |
|
9 | export function mergeRefs(refA, refB) {
|
10 | var a = toFnRef(refA);
|
11 | var b = toFnRef(refB);
|
12 | return function (value) {
|
13 | if (a) a(value);
|
14 | if (b) b(value);
|
15 | };
|
16 | }
|
17 |
|
18 |
|
19 |
|
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 |
|
26 |
|
27 |
|
28 |
|
29 |
|
30 |
|
31 |
|
32 |
|
33 |
|
34 | function useMergedRefs(refA, refB) {
|
35 | return useMemo(function () {
|
36 | return mergeRefs(refA, refB);
|
37 | }, [refA, refB]);
|
38 | }
|
39 |
|
40 | export default useMergedRefs; |
\ | No newline at end of file |