@etsoo/react 1.8.79 → 1.8.80
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -13,5 +13,6 @@ interface states {
|
|
|
13
13
|
export declare function useDimensions(elements: number, updateCallback?: (target: Element, rect: DOMRect) => boolean | void, miliseconds?: number, equalCallback?: (d1?: DOMRect, d2?: DOMRect) => boolean): {
|
|
14
14
|
dimensions: [React.RefCallback<Element>, Element?, DOMRect?][];
|
|
15
15
|
state: states;
|
|
16
|
+
clear: () => void;
|
|
16
17
|
};
|
|
17
18
|
export {};
|
|
@@ -85,14 +85,15 @@ function useDimensions(elements, updateCallback, miliseconds = 50, equalCallback
|
|
|
85
85
|
delayed.call(undefined, update);
|
|
86
86
|
}
|
|
87
87
|
});
|
|
88
|
+
// Clear the observer
|
|
89
|
+
const clear = () => {
|
|
90
|
+
resizeObserver.disconnect();
|
|
91
|
+
delayed.clear();
|
|
92
|
+
};
|
|
88
93
|
// Layout ready
|
|
89
94
|
react_1.default.useEffect(() => {
|
|
90
|
-
return
|
|
91
|
-
// Clear the observer
|
|
92
|
-
resizeObserver.disconnect();
|
|
93
|
-
delayed.clear();
|
|
94
|
-
};
|
|
95
|
+
return clear;
|
|
95
96
|
}, []);
|
|
96
97
|
// Return
|
|
97
|
-
return { dimensions: dimensions.current, state };
|
|
98
|
+
return { dimensions: dimensions.current, state, clear };
|
|
98
99
|
}
|
|
@@ -13,5 +13,6 @@ interface states {
|
|
|
13
13
|
export declare function useDimensions(elements: number, updateCallback?: (target: Element, rect: DOMRect) => boolean | void, miliseconds?: number, equalCallback?: (d1?: DOMRect, d2?: DOMRect) => boolean): {
|
|
14
14
|
dimensions: [React.RefCallback<Element>, Element?, DOMRect?][];
|
|
15
15
|
state: states;
|
|
16
|
+
clear: () => void;
|
|
16
17
|
};
|
|
17
18
|
export {};
|
|
@@ -79,14 +79,15 @@ export function useDimensions(elements, updateCallback, miliseconds = 50, equalC
|
|
|
79
79
|
delayed.call(undefined, update);
|
|
80
80
|
}
|
|
81
81
|
});
|
|
82
|
+
// Clear the observer
|
|
83
|
+
const clear = () => {
|
|
84
|
+
resizeObserver.disconnect();
|
|
85
|
+
delayed.clear();
|
|
86
|
+
};
|
|
82
87
|
// Layout ready
|
|
83
88
|
React.useEffect(() => {
|
|
84
|
-
return
|
|
85
|
-
// Clear the observer
|
|
86
|
-
resizeObserver.disconnect();
|
|
87
|
-
delayed.clear();
|
|
88
|
-
};
|
|
89
|
+
return clear;
|
|
89
90
|
}, []);
|
|
90
91
|
// Return
|
|
91
|
-
return { dimensions: dimensions.current, state };
|
|
92
|
+
return { dimensions: dimensions.current, state, clear };
|
|
92
93
|
}
|
package/package.json
CHANGED
|
@@ -25,6 +25,7 @@ export function useDimensions(
|
|
|
25
25
|
): {
|
|
26
26
|
dimensions: [React.RefCallback<Element>, Element?, DOMRect?][];
|
|
27
27
|
state: states;
|
|
28
|
+
clear: () => void;
|
|
28
29
|
} {
|
|
29
30
|
// State
|
|
30
31
|
const [state, setState] = React.useState<states>({
|
|
@@ -111,15 +112,17 @@ export function useDimensions(
|
|
|
111
112
|
}
|
|
112
113
|
});
|
|
113
114
|
|
|
115
|
+
// Clear the observer
|
|
116
|
+
const clear = () => {
|
|
117
|
+
resizeObserver.disconnect();
|
|
118
|
+
delayed.clear();
|
|
119
|
+
};
|
|
120
|
+
|
|
114
121
|
// Layout ready
|
|
115
122
|
React.useEffect(() => {
|
|
116
|
-
return
|
|
117
|
-
// Clear the observer
|
|
118
|
-
resizeObserver.disconnect();
|
|
119
|
-
delayed.clear();
|
|
120
|
-
};
|
|
123
|
+
return clear;
|
|
121
124
|
}, []);
|
|
122
125
|
|
|
123
126
|
// Return
|
|
124
|
-
return { dimensions: dimensions.current, state };
|
|
127
|
+
return { dimensions: dimensions.current, state, clear };
|
|
125
128
|
}
|