import {InventoryTable} from "#/components/inventory/InventoryTable"; import {EmptyState} from "#/components/ui/EmptyState"; import {LoadingState} from "#/components/ui/LoadingState"; import {useInventory} from "#/hooks/useInventory"; import {ErrorState} from "#/components/ui/ErrorState.tsx"; export function InventoryView() { const inventoryQuery = useInventory(); if (inventoryQuery.isLoading) { return ( ); } if (inventoryQuery.isError) { return ( inventoryQuery.refetch()} /> ); } const items = inventoryQuery.data?.items ?? []; if (items.length === 0) { return ( ); } const lowStockCount = items.filter((item) => item.status === "LOW_STOCK").length; const outOfStockCount = items.filter( (item) => item.status === "OUT_OF_STOCK", ).length; return (

Total products

{items.length}

Low stock

{lowStockCount}

Out of stock

{outOfStockCount}

{inventoryQuery.isFetching ? (

Refreshing inventory...

) : null}
); }