@codacy/ui-components 0.62.3 → 0.62.4

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.
@@ -1,2 +1,4 @@
1
1
  import React from 'react';
2
+ /** @deprecated Use useInfiniteScrollRef instead */
2
3
  export declare function useInfiniteScroll<T extends Element>(ref: React.RefObject<T>, onLoadMore?: () => void, containerRef?: Element | null): void;
4
+ export default function useInfiniteScrollRef<T extends Element>(onLoadMore?: () => void, containerRef?: Element | null): (node: T) => void;
@@ -1,4 +1,7 @@
1
- import { useCallback, useEffect, useRef } from 'react';
1
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
+ import React, { useCallback, useEffect, useRef } from 'react';
3
+ /** @deprecated Use useInfiniteScrollRef instead */
4
+
2
5
  export function useInfiniteScroll(ref, onLoadMore, containerRef) {
3
6
  var observer = useRef();
4
7
  var handleLoadMore = useCallback(function (entries, _) {
@@ -18,4 +21,34 @@ export function useInfiniteScroll(ref, onLoadMore, containerRef) {
18
21
  if (observer.current) observer.current.disconnect();
19
22
  };
20
23
  }, [ref, handleLoadMore, containerRef]);
24
+ }
25
+ export default function useInfiniteScrollRef(onLoadMore, containerRef) {
26
+ var observer = useRef();
27
+
28
+ var _React$useState = React.useState(null),
29
+ _React$useState2 = _slicedToArray(_React$useState, 2),
30
+ ref = _React$useState2[0],
31
+ setRef = _React$useState2[1];
32
+
33
+ var handleLoadMore = useCallback(function (entries, _) {
34
+ if (entries[0].isIntersecting && onLoadMore) {
35
+ onLoadMore();
36
+ }
37
+ }, [onLoadMore]);
38
+ var refCallback = useCallback(function (node) {
39
+ setRef(node);
40
+ }, []);
41
+ useEffect(function () {
42
+ if (ref) {
43
+ observer.current = new IntersectionObserver(handleLoadMore, {
44
+ root: containerRef
45
+ });
46
+ observer.current.observe(ref);
47
+ }
48
+
49
+ return function () {
50
+ if (observer.current) observer.current.disconnect();
51
+ };
52
+ }, [ref, handleLoadMore, containerRef]);
53
+ return refCallback;
21
54
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codacy/ui-components",
3
- "version": "0.62.3",
3
+ "version": "0.62.4",
4
4
  "description": "",
5
5
  "license": "ISC",
6
6
  "author": "",