2
2
3
3
const React = require ( "react" ) ;
4
4
5
+ const useEqCache = ( eq , a ) => {
6
+ const memoRef = React . useRef ( a ) ;
7
+ if ( memoRef . current !== a && ! eq ( memoRef . current , a ) ) {
8
+ memoRef . current = a ;
9
+ }
10
+ return memoRef . current ;
11
+ } ;
12
+
5
13
exports . reactChildrenToArray = ( children ) => React . Children . toArray ( children ) ;
6
14
7
15
exports . memo_ = React . memo ;
@@ -18,14 +26,14 @@ exports.useState_ = (tuple, initialState) => {
18
26
} ;
19
27
20
28
exports . useEffect_ = ( eq , deps , effect ) => {
21
- const memoizedKey = exports . useEqCache_ ( eq , deps ) ;
29
+ const memoizedKey = useEqCache ( eq , deps ) ;
22
30
React . useEffect ( effect , [ memoizedKey ] ) ;
23
31
} ;
24
32
25
33
exports . useEffectAlways_ = ( effect ) => React . useEffect ( effect ) ;
26
34
27
35
exports . useLayoutEffect_ = ( eq , deps , effect ) => {
28
- const memoizedKey = exports . useEqCache_ ( eq , deps ) ;
36
+ const memoizedKey = useEqCache ( eq , deps ) ;
29
37
React . useLayoutEffect ( effect , [ memoizedKey ] ) ;
30
38
} ;
31
39
@@ -52,16 +60,10 @@ exports.writeRef_ = (ref, a) => {
52
60
53
61
exports . useContext_ = React . useContext ;
54
62
55
- exports . useEqCache_ = function ( eq , a ) {
56
- const memoRef = React . useRef ( a ) ;
57
- if ( memoRef . current !== a && ! eq ( memoRef . current , a ) ) {
58
- memoRef . current = a ;
59
- }
60
- return memoRef . current ;
61
- } ;
63
+ exports . useEqCache_ = useEqCache ;
62
64
63
65
exports . useMemo_ = ( eq , deps , computeA ) => {
64
- const memoizedKey = exports . useEqCache_ ( eq , deps ) ;
66
+ const memoizedKey = useEqCache ( eq , deps ) ;
65
67
return React . useMemo ( computeA , [ memoizedKey ] ) ;
66
68
} ;
67
69
0 commit comments