import { Group, Stack, Text } from '@mantine/core'; import { useDebouncedValue, useDisclosure } from '@mantine/hooks'; import { DataTable, DeleteItemModal, SettingsHeader } from 'components'; import { SearchHistoryColumns } from 'components/Columns/SearchHistoryColumns'; import { useCommonHooks, useQueryAPI } from 'hooks'; import { useEffect, useState } from 'react'; import { textClasses } from 'styles'; import type { SearchHistoryItem } from 'types'; const SearchHistory = () => { const searchEndpoint = 'api/searchHistory'; const { data: historyData, isFetching: historyDataIsFetching } = useQueryAPI({ endpoint: searchEndpoint, }); const searchHistory: SearchHistoryItem[] = historyData || []; const [searchValue, setSearchValue] = useState(''); const [searchHistoryItem, setSearchHistoryItem] = useState(); const [debouncedSearch] = useDebouncedValue(searchValue, 500); const [isLoading, setIsLoading] = useState(false); const { isMobile, handleDelete } = useCommonHooks(); const [filtersEnabled, setFiltersEnabled] = useState(false); const [globalFilter, setGlobalFilter] = useState(''); const [modalOpened, { open: openModal, close: closeModal }] = useDisclosure(false); const handleClose = () => { closeModal(); }; const [sorting, setSorting] = useState([ { id: 'dateTimeStamp', desc: true, }, ]); useEffect(() => { setGlobalFilter(debouncedSearch); if (debouncedSearch === globalFilter) { setIsLoading(false); } }, [debouncedSearch, globalFilter]); return ( handleDelete(searchHistoryItem, 'api/searchHistory')} title={'Delete Search History Item'} body={ Are you sure you want to delete this Search History Item? {`${searchHistoryItem?.provider}`} {`"${searchHistoryItem?.searchTerm}"`} This action cannot be undone! } /> ); }; export default SearchHistory;