/* eslint-disable jsx-a11y/role-has-required-aria-props */ /* eslint-disable @next/next/no-img-element */ /* eslint-disable @typescript-eslint/no-explicit-any */ "use client"; import React from "react"; type PackageItem = { id?: number | string; packageId?: number | string; packageTypeId?: number | string; weight?: number | string; packageDescription?: string; customerInputPackageValue?: number | string; }; interface Props { orderDetails: any; onConfirm: (selectedPackages: PackageItem[]) => void; onCancel: () => void; } const CreateReturnOrderModal: React.FC = ({ orderDetails, onConfirm, onCancel }) => { const packages: PackageItem[] = React.useMemo(() => { const list = orderDetails?.order_package_list || orderDetails?.draft_order_package_list || []; return Array.isArray(list) ? list : []; }, [orderDetails]); const [selectedIds, setSelectedIds] = React.useState>(new Set()); React.useEffect(() => { if (packages.length > 0) { const allKeys = packages.map((p, idx) => (p.id ?? p.packageId ?? p.packageTypeId ?? idx)); setSelectedIds(new Set(allKeys as any)); } else { setSelectedIds(new Set()); } }, [packages]); const toggle = (pkgId: string | number) => { setSelectedIds((prev) => { const next = new Set(prev); if (next.has(pkgId)) next.delete(pkgId); else next.add(pkgId); return next; }); }; const allSelected = packages.length > 0 && selectedIds.size === packages.length; const toggleAll = () => { if (allSelected) { setSelectedIds(new Set()); } else { setSelectedIds(new Set(packages.map((p, idx) => (p.id ?? p.packageId ?? p.packageTypeId ?? idx)))); } }; const handleConfirm = () => { const selected = packages.filter((p, idx) => { const key = p.id ?? p.packageId ?? p.packageTypeId ?? idx; return selectedIds.has(key as any); }).map((p) => ({ id: p.id, packageId: p.packageId ?? p.packageTypeId, packageTypeId: p.packageTypeId ?? p.packageId, weight: p.weight, packageDescription: p.packageDescription, customerInputPackageValue: p.customerInputPackageValue, })); onConfirm(selected); }; return ( <>

Select Packages for Return

{packages.length === 0 ? (
No packages found for this order.
) : ( packages.map((pkg, idx) => { const key = pkg.id ?? pkg.packageId ?? pkg.packageTypeId ?? idx; const checked = selectedIds.has(key as any); return ( <>
); }) )}
{/*
*/}
{/*
Select Packages for Return
{packages.length === 0 ? (
No packages found for this order.
) : ( packages.map((pkg, idx) => { const key = pkg.id ?? pkg.packageId ?? pkg.packageTypeId ?? idx; const checked = selectedIds.has(key as any); return ( ); }) )}
*/} ); }; export default CreateReturnOrderModal;