Proyectos de Subversion LeadersLinked - SPA

Rev

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

Rev Autor Línea Nro. Línea
3694 stevensc 1
import React, { useState } from 'react';
2
import Search from '@mui/icons-material/Search';
3
import { Box, styled } from '@mui/material';
4
import { useSelector } from 'react-redux';
2864 stevensc 5
 
3694 stevensc 6
import { debounce } from '@utils';
7
import { useFetch, useSearchQuery } from '@hooks';
5 stevensc 8
 
3694 stevensc 9
import Input from '@components/UI/inputs/Input';
10
import TitleSection from '@components/UI/TitleSection';
11
import MyConnectionsList from '@components/connections/MyConnectionsList';
12
import Pagination from '@components/common/Pagination';
5 stevensc 13
 
14
const MyConnectionsPage = () => {
3694 stevensc 15
  const labels = useSelector(({ intl }) => intl.labels);
5 stevensc 16
 
3694 stevensc 17
  const { getStringParams, setParam } = useSearchQuery();
18
  const { data, isLoading, refetch } = useFetch(`/connection/my-connections${getStringParams()}`);
5 stevensc 19
 
3694 stevensc 20
  const handleSearch = debounce((e) => setParam('search', e.target.value));
5 stevensc 21
 
22
  return (
2880 stevensc 23
    <>
5 stevensc 24
      <TitleSection title={labels.first_level_persons} />
3432 stevensc 25
      <Input icon={<Search />} onChange={handleSearch} variant='search' />
2880 stevensc 26
      <MyConnectionsList
2886 stevensc 27
        connections={data.current?.items}
3432 stevensc 28
        loading={isLoading}
2880 stevensc 29
        onComplete={refetch}
30
      />
2964 stevensc 31
      <Pagination
2886 stevensc 32
        pages={data.total?.pages}
2964 stevensc 33
        page={data.current?.page}
3432 stevensc 34
        onChange={(page) => setParam('page', page)}
5 stevensc 35
      />
2880 stevensc 36
    </>
3694 stevensc 37
  );
38
};
5 stevensc 39
 
3694 stevensc 40
export default MyConnectionsPage;