pixel-react 1.10.32 → 1.10.34

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.
@@ -8,6 +8,7 @@ const TreeTable = ({ treeData, columnsData, selected = [], select = null, onChan
8
8
  const [isLoading, setIsLoading] = useState(null);
9
9
  const observerRef = useRef(null);
10
10
  const containerRef = useRef(null); // Reference for scroll container
11
+ const animationRef = useRef(null);
11
12
  // Handle load more data for pagination
12
13
  const loadMoreAbove = () => {
13
14
  if (loading || isLoading === 'above')
@@ -23,6 +24,25 @@ const TreeTable = ({ treeData, columnsData, selected = [], select = null, onChan
23
24
  // Trigger the loadMore callback for data loading from below
24
25
  loadMore('below');
25
26
  };
27
+ const handlescroll = useCallback((isLoading) => {
28
+ const container = containerRef.current;
29
+ if (!loading && container) {
30
+ const currentScrollTop = container.scrollTop;
31
+ const adjustmentFactor = treeData.length > 20 ? treeData.length - 20 : 0;
32
+ // Adjust scroll position efficiently
33
+ if (animationRef?.current) {
34
+ cancelAnimationFrame(animationRef.current);
35
+ }
36
+ animationRef.current = requestAnimationFrame(() => {
37
+ if (isLoading === 'above') {
38
+ container.scrollTop = currentScrollTop + adjustmentFactor * 8;
39
+ }
40
+ else if (isLoading === 'below') {
41
+ container.scrollTop = currentScrollTop - adjustmentFactor * 8;
42
+ }
43
+ });
44
+ }
45
+ }, [loading, treeData]);
26
46
  useEffect(() => {
27
47
  const scrollContainer = document.getElementById('ff-table-tree-scroll-container');
28
48
  const lastNode = document.getElementById('ff-table-tree-last-node');
@@ -31,6 +51,8 @@ const TreeTable = ({ treeData, columnsData, selected = [], select = null, onChan
31
51
  return;
32
52
  const isLastResourceBelow = !!treeData[treeData.length - 1]?.lastResource;
33
53
  const isLastResourceAbove = !!treeData[0]?.lastResource;
54
+ // Clean up old observer before creating a new one
55
+ observerRef.current?.disconnect();
34
56
  const observerCallback = (entries) => {
35
57
  entries.forEach((entry) => {
36
58
  const nodeId = entry.target.id;
@@ -49,7 +71,7 @@ const TreeTable = ({ treeData, columnsData, selected = [], select = null, onChan
49
71
  };
50
72
  observerRef.current = new IntersectionObserver(observerCallback, {
51
73
  root: scrollContainer,
52
- rootMargin: '40px',
74
+ rootMargin: '100px',
53
75
  threshold: 0.1,
54
76
  });
55
77
  if (!isLastResourceBelow)
@@ -62,28 +84,15 @@ const TreeTable = ({ treeData, columnsData, selected = [], select = null, onChan
62
84
  }, [treeData, loadMore, isLoading]);
63
85
  useEffect(() => {
64
86
  if (!loading && isLoading) {
87
+ handlescroll(isLoading);
65
88
  setIsLoading(null);
66
89
  }
67
- }, [loading, isLoading]);
90
+ }, [loading]);
68
91
  useEffect(() => {
69
- const container = containerRef.current;
70
- // If loading is finished, we adjust the scroll position based on data
71
- if (!loading && container) {
72
- const currentScrollTop = container.scrollTop;
73
- // const currentHeight = container.scrollHeight;
74
- // Scroll adjustment logic to keep position consistent after data change
75
- setTimeout(() => {
76
- if (isLoading === 'above') {
77
- // When scrolling above, adjust the scroll position based on new data
78
- container.scrollTop = currentScrollTop + 100; // Example adjustment, tweak as needed
79
- }
80
- else if (isLoading === 'below') {
81
- // When scrolling below, adjust the scroll position based on new data
82
- container.scrollTop = currentScrollTop - 100; // Example adjustment, tweak as needed
83
- }
84
- }, 0);
92
+ if (!loading && expanding) {
93
+ setExpanding(null);
85
94
  }
86
- }, [loading, treeData, isLoading]);
95
+ }, [loading]);
87
96
  const handleToggleExpand = useCallback((node, index) => {
88
97
  if (expanding)
89
98
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"TableTree.js","sourceRoot":"","sources":["../../../src/components/TableTree/TableTree.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TableTree.js","sourceRoot":"","sources":["../../../src/components/TableTree/TableTree.tsx"],"names":[],"mappings":"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"}