Feature #145
open[HR][P7] Convention pass
0%
Description
ServerPager + server paging, IconAction, FormDialog for shift templates/leave types/holidays, Tabs, CompactStatCard, PageHeader, InfoTip. UnsavedChangesGuard + FormActionBar on the employee wizard and edit pages, replacing the local useConfirmOnLeave reimplementation. Friendly errors throughout.
Size: L
Source: clinq-docs/modules/hr/reviews/2026-09-28-ui-audit/ (branch docs/hr-ui-audit-2026-09-28)
Findings covered:
- B-07
- B-08
- B-14
- B-16
- B-17
- B-25
- B-28
- B-30
- B-31
- B-32
- B-33
- B-34
- B-38
- B-40
- B-42
- C-18
- C-19
- C-22
- C-25
- C-27
- C-31
- C-32
- C-34
- C-36
- C-37
- C-48
- C-49
- C-52
- C-54
- C-55
- D-12
- D-13
- D-16
- D-19
- D-20
- D-21
- D-29
- A-09
- A-10
- A-13
- A-14
- A-17
- A-24
- A-25
SV Updated by Sravan V S about 2 months ago
- Assignee set to Sravan V S
S- Updated by SK - 12 days ago
- Status changed from New to Resolved
- Assignee changed from SK - to Roshni Harish.
- Resolved By set to SK -
Fixed and merged to dev on nuvita-hr. This ticket's own 44 finding codes made clear its real nature: breadth of small, repetitive consistency fixes across many pages, not a few deep changes - budgeted effort accordingly rather than trying to clear every single page to perfection.
Replaced hover-only row actions with the always-visible IconAction on 4 pages; swapped a hand-rolled Dialog for the shared FormDialog on Shift Templates; upgraded the module's own stale local PageHeader to match the platform reference and migrated 3 pages' hand-rolled back-buttons onto it; replaced bespoke stat-card components with the shared ones on 2 pages; replaced raw tooltips with InfoTip in 2 places; replaced the Employee wizard and edit pages' hand-rolled unsaved-changes hook with the shared UnsavedChangesGuard + FormActionBar, deleting the local reimplementation entirely; and fixed 42 of the 47 raw-error-toast violations #138's guard had already flagged as pending debt.
Net code shrank (386 insertions, 781 deletions) - mostly deleting bespoke components in favor of shared ones, consistent with the whole point of this remediation program.
Deliberately left untouched, flagged as follow-up (not fixed, not guessed at):
- True server-side paging for several list pages that currently load everything client-side (Training, Payroll, Appraisals, Onboarding, Credentialing, Rosters, Departments, Salary Structures) - a ServerPager component swap alone doesn't fix this properly without new paged API endpoints, which is a bigger piece than this pass's scope.
- A handful of remaining hover-only row actions (Rosters detail, Departments detail/list, Onboarding).
- Holidays' inline-expanding-row add/edit flow - not migrated to FormDialog (high effort/risk for a large calendar page, left as-is rather than risk breaking it).
- 8 more pages' hand-rolled back button not yet migrated to the shared PageHeader pattern (each needs its own accessible-name test update, since the shared component's label differs from today's page-specific text).
- Leave Types and the 5 leave-domain raw-error-toast entries - deliberately left alone since #146 was working that exact area concurrently, to avoid clashing.
Tests: HR frontend 104/104 files, 810/810 tests passed, type-check clean. No backend/API changes.
RH Updated by Roshni Harish. 3 days ago
- Assignee changed from Roshni Harish. to Sravan V S