frontend / api/analytics/hooks / useDashboardMetrics
Function: useDashboardMetrics()
useDashboardMetrics(
enabled):UseQueryResult<{inventoryCount:number;lowStockCount:number;suppliersCount:number; },Error>
Defined in: src/api/analytics/hooks/useDashboardMetrics.ts:45
Hook to load dashboard KPI metrics (inventory count, supplier count, low stock count). Caches results for 2 minutes.
Parameters
enabled
boolean = true
Whether to fetch (defaults to true, typically tied to page visibility)
Returns
UseQueryResult<{ inventoryCount:
number; lowStockCount:
number; suppliersCount:
number; }, Error>
React Query result with KPI metrics object
Enterprise
- Only fetches when enabled (performance optimization)
- 2-minute cache reduces backend load
- Automatically handles loading and error states
- Returns graceful null values on error (no breaking)
Example
const { data: metrics, isLoading } = useDashboardMetrics();
return (
<>
<StatCard title="Items" value={metrics?.itemCount} loading={isLoading} />
<StatCard title="Suppliers" value={metrics?.supplierCount} loading={isLoading} />
<StatCard title="Low Stock" value={metrics?.lowStockCount} loading={isLoading} />
</>
);