PR: #707: feat(matters): show admin no-lead register flag [Story-2678] by @ayush-pramaan
View PR →
Story-2678 - parent Epic-2608 - Wave 2

No lead is visible only to firm admins.

The matters register now marks a vacant matter in the title cell with an inline "No lead" pill, but only when the signed-in user is a Firm Admin. Editors see the same row without the admin-only warning.

What the row shows

Admin and vacant

The title line includes a compact amber No lead pill next to the matter title.

Editor and vacant

The row still renders title, case reference, client, parties, status, and age, but the pill is withheld.

Admin and staffed

No warning appears when the row payload is not vacant.

Pending create row

The optimistic pending row keeps its existing "Creating..." subtitle and never shows the No-lead flag.

Data path

The page resolves loadAppMe(), gates the role through isFirmAdmin(me), and passes a boolean isAdmin into LiveMattersListPage. Each register row receives that boolean plus the existing matter list item. The row reads the list payload's optional isVacant value and does not fetch the matter roster.

Scope boundary

This change does not alter the Add-Matter wizard, lead assignment flows, generated API files, OpenAPI snapshots, or any roster mutation behavior. It is a register-only visibility marker.

Review path

Storybook stateExpected proof
Matters / MatterLiveRegisterRow / VacantAdminThe row title line shows the amber No lead pill.
Matters / MatterLiveRegisterRow / VacantEditorThe same vacant payload renders with no No lead pill.
Matters / MatterLiveRegisterRow / SettledA non-vacant row remains unchanged.
Matters / MatterLiveRegisterRow / PendingThe optimistic create row remains pulsing with no vacancy pill.

Files changed

7 file(s), +68 / -6 lines

Path Role + -
design/v1/colors_and_type.cssStyles+1-0
messages/en.jsonConfig+1-0
messages/hi.jsonConfig+1-0
src/app/[locale]/(workspace)/matters/page.tsxApp route+3-1
src/components/matters/live-matters-list-page.tsxComponent+8-1
src/components/matters/matters-live-register-row.stories.tsxComponent+34-1
src/components/matters/matters-live-register-row.tsxComponent+20-3