{/* Available Staff First */}
{availableStaff.length > 0 && (
<>
Available ({availableStaff.length})
{availableStaff.map((staff) => {
const isSelected = selected.has(staff.id);
return (
toggleSelect(staff.id)}
>
toggleSelect(staff.id)}
className="w-5 h-5 rounded border-2 border-slate-300 text-[#0A39DF] focus:ring-[#0A39DF]"
onClick={(e) => e.stopPropagation()}
/>
{staff.employee_name}
{Math.round(staff.smartScore)}% Match
{staff.reliability}%
{Math.round(staff.scores.fatigue)}
{Math.round(staff.scores.compliance)}
{staff.hub_location && (
{staff.hub_location}
)}
{staff.shiftCount || 0} shifts
Available
);
})}
>
)}
{/* Unavailable Staff */}
{unavailableStaff.length > 0 && (
<>
Unavailable ({unavailableStaff.length})
Will be notified if assigned
{unavailableStaff.map((staff) => {
const isSelected = selected.has(staff.id);
return (
toggleSelect(staff.id)}
>
toggleSelect(staff.id)}
className="w-5 h-5 rounded border-2 border-slate-300 text-[#0A39DF] focus:ring-[#0A39DF]"
onClick={(e) => e.stopPropagation()}
/>
{staff.employee_name}
{Math.round(staff.smartScore)}% Match
Time Conflict
{staff.hub_location && (
{staff.hub_location}
)}
{staff.shiftCount || 0} shifts
Will Notify
);
})}
>
)}