"use client"; import { useState } from "react"; import { useQuery } from "@tanstack/react-query"; import { Calendar, ChevronDown, Plus, Search } from "lucide-react"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { Select, SelectContent, SelectGroup, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select"; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table"; import { Pagination, PaginationContent, PaginationItem, PaginationLink } from "@/components/ui/pagination"; import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; import { Calendar as CalendarComponent } from "@/components/ui/calendar"; import { Badge } from "@/components/ui/badge"; import { fetchInventoryItems } from "@/api/inventory"; import { AddInventoryItem } from "./add-inventory-item"; export default function InventoryPage() { const [date, setDate] = useState(); const [inventoryType, setInventoryType] = useState("all"); const [currentPage, setCurrentPage] = useState(1); // Fetch inventory items using react-query. const { data: inventoryItems, isLoading, isError, } = useQuery({ queryKey: ["inventoryItems"], queryFn: fetchInventoryItems, staleTime: 60 * 1000, }); if (isLoading) { return
Loading...
; } if (isError || !inventoryItems) { return (
Error loading inventory data.
); } // Filter items based on selected type. const filteredItems = inventoryType === "all" ? inventoryItems : inventoryItems.filter((item) => inventoryType === "plantation" ? item.type === "Plantation" : item.type === "Fertilizer" ); return (

Inventory

{/* Filters and search */}
{/* Table */}

Table Fields

Name Category Type Quantity Last Updated Status {filteredItems.length === 0 ? ( No inventory items found ) : ( filteredItems.map((item) => ( {item.name} {item.category} {item.type} {item.quantity} {item.unit} {item.lastUpdated} {item.status} )) )}
); }