Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3532 | Rev 3652 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3532 stevensc 1
import React from 'react';
2
import { Button } from '@mui/material';
3511 stevensc 3
 
4
import { List, Spinner } from '.';
5
 
6
export function InfinityList({
7
  items = [],
8
  renderItem = () => {},
9
  emptyMessage = 'No hay elementos para mostrar',
3520 stevensc 10
  keyExtractor = (item) => item.id,
3511 stevensc 11
  loading = false,
3527 stevensc 12
  hasMore = false,
3532 stevensc 13
  onEnd = () => {}
3511 stevensc 14
}) {
3532 stevensc 15
  /* const loaderRef = useRef(null);
3511 stevensc 16
 
17
  const [isIntercepting] = useNearScreen({
18
    externalRef: loaderRef,
19
    once: false,
20
    rootMargin: '20px'
21
  });
22
 
23
  useEffect(() => {
24
    if (isIntercepting) onEnd();
3532 stevensc 25
  }, [isIntercepting]); */
3511 stevensc 26
 
27
  return (
28
    <>
29
      <List
30
        items={items}
31
        emptyMessage={emptyMessage}
32
        keyExtractor={keyExtractor}
33
        renderItem={renderItem}
34
      />
3532 stevensc 35
      {loading && <Spinner />}
3533 stevensc 36
      {hasMore && (
37
        <Button color='primary' onClick={onEnd}>
38
          Cargar más
39
        </Button>
40
      )}
3511 stevensc 41
    </>
42
  );
43
}