Proyectos de Subversion LeadersLinked - SPA

Rev

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

Rev Autor Línea Nro. Línea
2798 stevensc 1
import React, { useState } from 'react'
2
import { useSelector } from 'react-redux'
2864 stevensc 3
import { Search } from '@mui/icons-material'
5 stevensc 4
 
2864 stevensc 5
import { debounce } from '@utils'
2873 stevensc 6
import { useFetch, useSearchQuery } from '@hooks'
5 stevensc 7
 
2939 stevensc 8
import Input from '@components/UI/inputs/Input'
2798 stevensc 9
import TitleSection from '@components/UI/TitleSection'
2864 stevensc 10
import MyCompaniesList from '@components/company/MyCompaniesList'
2798 stevensc 11
import AddCompanyModal from '@components/modals/AddCompanyModal'
12
 
5 stevensc 13
const MyCompanies = () => {
2798 stevensc 14
  const [showCompanyModal, setShowCompanyModal] = useState(false)
5 stevensc 15
  const labels = useSelector(({ intl }) => intl.labels)
16
 
2939 stevensc 17
  const { getStringParams, setParam } = useSearchQuery()
2798 stevensc 18
  const {
19
    data: companies,
20
    isLoading,
21
    refetch
2939 stevensc 22
  } = useFetch('/company/my-companies' + getStringParams())
5 stevensc 23
 
2939 stevensc 24
  const handleSearch = debounce((e) => setParam('search', e.target.value))
2864 stevensc 25
 
2798 stevensc 26
  const toggleShowCompanyModal = () => setShowCompanyModal(!showCompanyModal)
5 stevensc 27
 
28
  return (
2798 stevensc 29
    <>
2806 stevensc 30
      <TitleSection
31
        title={labels.my_companies}
32
        onAdd={toggleShowCompanyModal}
33
        addLabel={`${labels.add} ${labels.company?.toLowerCase()}`}
34
      />
2874 stevensc 35
      <Input icon={<Search />} onChange={handleSearch} variant='search' />
2864 stevensc 36
      <MyCompaniesList
37
        companies={companies}
38
        loading={isLoading}
39
        onComplete={refetch}
40
      />
5 stevensc 41
      <AddCompanyModal
2798 stevensc 42
        show={showCompanyModal}
5 stevensc 43
        onHide={toggleShowCompanyModal}
2798 stevensc 44
        fetchCompanies={refetch}
5 stevensc 45
      />
2798 stevensc 46
    </>
5 stevensc 47
  )
48
}
49
 
50
export default MyCompanies