Appearance
Absences
Paginated list of a worker's illness/absence requests with filtering by status, approval actions, and grid/list view toggle.
Route
/organisations/:orgId/workers/:id/absences
Layout
Uses the shared ApprovalSectionView component configured for illness requests.
View Selector
Dropdown with options: Pending, Approved, Rejected (Paid and Overdue views are excluded).
Table Columns (List View)
- Status
- Request (absence type)
- Approvals (approval chain progress)
- Requested (days requested)
- Used (days used)
- Date Submitted
- Calendar (date range)
- Note
Grid View
Displays ApprovalCard components with absence-specific icons (AbsenceApprovalIcons) and additional content (AbsenceAdditionalContent).
Approval Actions
Clicking an item navigates to its detail view. Approve and Decline buttons open the PendingApproval modal.
Data Loading
Approvals are fetched for RequestType.Illness only, scoped to the worker's EOR instance.
Behavior notes
- Grid/list toggle state is persisted in the
workersAbsenceListViewSelectedstore. - Reuses the
WorkerAnnualLeaveTableRowcomponent for list view row rendering (shared with annual leave). - The Request column shows the absence/request type via the
ApprovalRequestTypeTagcomponent. - Each table row includes a checkbox for batch selection.
- Clicking a row navigates to the approval detail view for that item.
- The Requested and Used columns show the number of days (
requestedDaysandusedDays). - The Calendar column renders an inline
CalendarDisplayPopupshowing the date range. - The Note column shows a chat icon coloured yellow if a note exists, grey otherwise.
- Responsive: at widths below 1200px, the Used, Date Submitted, Calendar, and Note columns are hidden. At widths below 450px, the Approvals column is also hidden.