import { Container, Flex, Heading, Spinner, Table, TableContainer, Tbody, Td, Th, Thead, Tr } from '@chakra-ui/react'; import { createFileRoute } from '@tanstack/react-router'; import { useQuery } from 'react-query'; import { ApiError, ItemsService } from '../../client'; import ActionsMenu from '../../components/Common/ActionsMenu'; import Navbar from '../../components/Common/Navbar'; import useCustomToast from '../../hooks/useCustomToast'; export const Route = createFileRoute('/_layout/items')({ component: Items, }) function Items() { const showToast = useCustomToast(); const { data: items, isLoading, isError, error } = useQuery('items', () => ItemsService.readItems({})) if (isError) { const errDetail = (error as ApiError).body?.detail; showToast('Something went wrong.', `${errDetail}`, 'error'); } return ( <> {isLoading ? ( // TODO: Add skeleton ) : ( items && Items Management ID Title Description Actions {items.data.map((item) => ( {item.id} {item.title} {item.description || 'N/A'} ))} )} > ) } export default Items;