/* eslint-disable @typescript-eslint/no-explicit-any */ import React from "react"; import RequiredStar from "../RequiredStar"; import { useCurrency } from "@/context/CurrencyContext"; interface PackageDetail { weight: string; length: string; width: string; height: string; package_description: string; customer_input_package_value: string; } interface PackageGridProps { packages: PackageDetail[]; onChange: (updatedPackages: PackageDetail[]) => void; errors?: any; } const PackageGrid: React.FC = ({ packages, onChange, errors, }) => { const handleInputChange = ( index: number, field: keyof PackageDetail, value: string, ) => { const updated = [...packages]; updated[index] = { ...updated[index], [field]: value }; onChange(updated); }; const { currencyName } = useCurrency(); return (
{packages.map((pkg, index) => (
{/* WEIGHT */}
WEIGHT (KG) handleInputChange(index, "weight", e.target.value) } />
{errors?.[index]?.width}
{/* LENGTH */}
LENGTH (CM) handleInputChange(index, "length", e.target.value) } />
{errors?.[index]?.length}
{/* WIDTH */}
WIDTH (CM) handleInputChange(index, "width", e.target.value) } />
{errors?.[index]?.width}
{/* HEIGHT */}
HEIGHT (CM) handleInputChange(index, "height", e.target.value) } />
{errors?.[index]?.height}
{/* DESCRIPTION */}
DESCRIPTION handleInputChange( index, "package_description", e.target.value, ) } />
{/* PACKAGE VALUE */}
VALUE handleInputChange( index, "customer_input_package_value", e.target.value, ) } /> {currencyName}
{errors?.[index]?.customer_input_package_value}
))} {/* STYLES */}
); }; export default PackageGrid;