This commit is contained in:
g
2025-02-07 14:09:21 +00:00
parent 717451ac9f
commit 6158f232db
6 changed files with 111 additions and 47 deletions

View File

@@ -3,7 +3,7 @@
import { useState, useEffect } from "react";
import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table";
import { Button } from "@/components/ui/button";
import { Package, Eye } from "lucide-react";
import { Eye } from "lucide-react";
import Link from "next/link";
import { fetchWithAuthClient } from "@/lib/client-utils"; // ✅ Import client-safe API helper
import { toast } from "sonner";
@@ -17,10 +17,9 @@ interface Order {
}
export default function OrderTable() {
const [orders, setOrders] = useState<Order[]>([]);
const [orders, setOrders] = useState<Order[] | null>(null);
const [loading, setLoading] = useState<boolean>(true);
// ✅ Fetch Orders on Load
useEffect(() => {
const fetchOrders = async () => {
try {
@@ -28,6 +27,7 @@ export default function OrderTable() {
setOrders(data);
} catch (error) {
toast.error("Failed to fetch orders.");
console.error("Error fetching orders:", error);
} finally {
setLoading(false);
}
@@ -59,7 +59,7 @@ export default function OrderTable() {
<TableCell className="text-right">Loading...</TableCell>
</TableRow>
))
) : orders.length > 0 ? (
) : orders && orders.length > 0 ? (
orders.map((order) => (
<TableRow key={order._id} className="transition-colors hover:bg-gray-50 dark:hover:bg-zinc-800/70">
<TableCell className="font-medium">{order._id.slice(-6)}</TableCell>
@@ -77,7 +77,7 @@ export default function OrderTable() {
))
) : (
<TableRow>
<TableCell colSpan={6} className="h-24 text-center">
<TableCell colSpan={5} className="h-24 text-center">
No orders found.
</TableCell>
</TableRow>
@@ -86,4 +86,4 @@ export default function OrderTable() {
</Table>
</div>
);
}
}