From bcfc517a267fab930f4bcbd0fcb5ac44bd95ff9a Mon Sep 17 00:00:00 2001 From: David Arranz Date: Mon, 26 Aug 2024 17:16:42 +0200 Subject: [PATCH] . --- .../app/quotes/components/QuotesDataTable.tsx | 2 ++ client/src/app/quotes/hooks/useQuotes.tsx | 34 ++++++------------- client/src/app/quotes/list.tsx | 28 ++++++++++++--- .../hooks/useDataTable/DataTableContext.tsx | 8 ++--- client/src/locales/en.json | 3 +- client/src/locales/es.json | 3 +- 6 files changed, 44 insertions(+), 34 deletions(-) diff --git a/client/src/app/quotes/components/QuotesDataTable.tsx b/client/src/app/quotes/components/QuotesDataTable.tsx index 9a74fa7..6befe70 100644 --- a/client/src/app/quotes/components/QuotesDataTable.tsx +++ b/client/src/app/quotes/components/QuotesDataTable.tsx @@ -253,6 +253,8 @@ export const QuotesDataTable = ({ ); } + console.log(data); + if (data?.total_items === 0 && !isFiltered) { return ( ; }; -const quoteStatusFilter: Record = { - draft: { - field: "status", - operator: "eq", - value: "draft", - }, - archived: { - field: "status", - operator: "eq", - value: "archived", - }, - active: { - field: "status", - operator: "eq", - value: "active", - }, -}; - export const useQuotes = () => { const dataSource = useDataSource(); const keys = useQueryKey(); @@ -99,7 +78,16 @@ export const useQuotes = () => { return dataSource.getList({ resource: "quotes", quickSearchTerm, - filters: status !== "all" ? Array.of(quoteStatusFilter[status]) : undefined, + filters: + status !== "all" + ? [ + { + field: "status", + operator: "eq", + value: status, + }, + ] + : undefined, pagination, }); }, diff --git a/client/src/app/quotes/list.tsx b/client/src/app/quotes/list.tsx index e4e531f..5563bed 100644 --- a/client/src/app/quotes/list.tsx +++ b/client/src/app/quotes/list.tsx @@ -41,8 +41,17 @@ export const QuotesList = () => { - - + + + + + + + + + + + @@ -76,12 +85,21 @@ export const QuotesList = () => { + + + + + + + + + + + + - - - ); diff --git a/client/src/lib/hooks/useDataTable/DataTableContext.tsx b/client/src/lib/hooks/useDataTable/DataTableContext.tsx index a7526a8..8d04910 100644 --- a/client/src/lib/hooks/useDataTable/DataTableContext.tsx +++ b/client/src/lib/hooks/useDataTable/DataTableContext.tsx @@ -16,7 +16,7 @@ export interface IDataTableContextState { setPagination: (newPagination: PaginationState) => void; sorting: SortingState; setSorting: Dispatch>; - globalFilter: string; + globalFilter?: string; setGlobalFilter: (newGlobalFilter: string) => void; resetGlobalFilter: () => void; isFiltered: boolean; @@ -26,7 +26,7 @@ export const DataTableContext = createContext(nul export const DataTableProvider = ({ syncWithLocation = true, - initialGlobalFilter = "", + initialGlobalFilter = undefined, initialPageIndex, initialPageSize, children, @@ -41,10 +41,10 @@ export const DataTableProvider = ({ initialPageIndex, initialPageSize, }); - const [globalFilter, setGlobalFilter] = useState(initialGlobalFilter); + const [globalFilter, setGlobalFilter] = useState(initialGlobalFilter); const [sorting, setSorting] = useState([]); - const isFiltered = useMemo(() => Boolean(globalFilter.length), [globalFilter]); + const isFiltered = useMemo(() => Boolean(globalFilter && globalFilter.length), [globalFilter]); const resetGlobalFilter = useCallback(() => setGlobalFilter(""), []); return ( diff --git a/client/src/locales/en.json b/client/src/locales/en.json index 5f35925..bd44bf8 100644 --- a/client/src/locales/en.json +++ b/client/src/locales/en.json @@ -119,7 +119,8 @@ "tabs": { "all": "All", "draft": "Draft", - "emitted": "Emitted", + "ready": "Ready", + "delivered": "Delivered", "accepted": "Accepted", "rejected": "Rejected", "archived": "Archived" diff --git a/client/src/locales/es.json b/client/src/locales/es.json index dc36921..febe514 100644 --- a/client/src/locales/es.json +++ b/client/src/locales/es.json @@ -119,7 +119,8 @@ "tabs": { "all": "Todas", "draft": "Borradores", - "emitted": "Emitidas", + "ready": "Preparados", + "delivered": "Entregado", "accepted": "Accepted", "rejected": "Rejected", "archived": "Archivadas"