"use client"; import { useTransition } from "react"; import { useRouter } from "next/navigation"; import { updateCartItemQuantity, removeCartItem } from "@/lib/api/cart"; import type { CartItem } from "@/types/api"; export function CartItemRow({ item }: { item: CartItem }) { const router = useRouter(); const [isPending, startTransition] = useTransition(); function changeQuantity(nextQuantity: number) { startTransition(async () => { if (nextQuantity <= 0) { await removeCartItem(item.uuid); } else { await updateCartItemQuantity(item.uuid, nextQuantity); } router.refresh(); }); } return (
{item.product.image_url && ( // eslint-disable-next-line @next/next/no-img-element )}
{item.product.name} {item.product.price.toLocaleString("fa-IR")} تومان
{item.quantity}
{item.line_total.toLocaleString("fa-IR")}
); }