@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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etsoo/react",
3
- "version": "1.8.79",
3
+ "version": "1.8.80",
4
4
  "description": "TypeScript ReactJs UI Independent Framework",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/mjs/index.js",
@@ -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
  }