From 136b1ce75773226d5066e52e05789aec341c939c Mon Sep 17 00:00:00 2001 From: Enochen Date: Tue, 31 Oct 2023 19:16:21 -0400 Subject: [PATCH] display employee photos in cards --- .../EmployeeCards/EmployeeCards.tsx | 29 +++++++++---------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/frontend/src/components/EmployeeCards/EmployeeCards.tsx b/frontend/src/components/EmployeeCards/EmployeeCards.tsx index cfa10a82..26ba2624 100644 --- a/frontend/src/components/EmployeeCards/EmployeeCards.tsx +++ b/frontend/src/components/EmployeeCards/EmployeeCards.tsx @@ -156,27 +156,26 @@ const EmployeeCard = ({ const EmployeeCards = () => { const { admins, drivers } = useEmployees(); - const allEmployees = [...admins, ...drivers]; - const adminIds = new Set(admins.map((admin) => admin.id)); - const filteredEmployees = allEmployees.filter((employee: Employee) => { - // if not admin (means driver), check if another admin is representing this driver - if (employee['isDriver'] == undefined) return !adminIds.has(employee.id); - return true; + const employees: Record = {}; + [...admins, ...drivers].forEach((employee) => { + employees[employee.id] = { ...employees[employee.id], ...employee }; }); - filteredEmployees.sort((a: Employee, b: Employee) => { - if (a.firstName < b.firstName) { - return -1; + const sortedEmployees = Object.values(employees).sort( + (a: Employee, b: Employee) => { + if (a.firstName < b.firstName) { + return -1; + } + if (a.firstName > b.firstName) { + return 1; + } + return 0; } - if (a.firstName > b.firstName) { - return 1; - } - return 0; - }); + ); return (
- {filteredEmployees.map((employee) => ( + {sortedEmployees.map((employee) => ( ))}