The card on the long tail — HR, KB, boards, webinars, growth, tracking, Hold'em

Featurekamo-internal
Shipped
September 18, 2026 at 3:36 AM UTC
Author
Kamo
Commit
b76872c

Every member these screens name now opens the member card. Ids are the strings the data already carried, except where noted. - PersonCell / PersonStack (HR attendance console, 7 importers): face and name are one trigger on memberId; the private MUI avatar is MemberAvatar (same hue, same size). A new `clickToggles` prop is off where the cell sits in something clickable (Compliance findings rows, the roster's cards and table rows). The member-id tooltip stays; the stack's name tooltip gives way to the card. - Training assignments and Legal assigned-package grids: teamMemberId; the status-tinted initials discs are MemberAvatar (28/30px) — the state rail still carries the status. - Payroll run issues and the HR overview activity rail: MemberName on memberId. - KbPerson (4 importers): MemberAvatar inside the card on **************** its "name — title" tooltip is what the card now says, and would have sat on top of it. Hover-only inside the clickable pin, attention, review-queue and settled cards. - KB article byline: authorMemberId, which is a JSON NUMBER, so a 19-digit id arrives rounded and the card cannot find the author until kbservice sends it as a string. The translated "By {name}" is cut where the locale puts the name, so only the name is the trigger. - Boards: MemberFace is MemberAvatar (20px, podium ring kept) inside the card (`seed` becomes `memberId`); the arcade HIGH SCORES name cell is a MemberName. A member the board cannot name ("a former member") gets no card; the widgets' name tooltips are untouched. - Webinars: the presenter (assignedPresenterId) in My Webinars and the schedule wizard, hover-only in their clickable rows; member attendees in My Webinars (visitors have no id and stay plain); the lead page's presenter via **************** now typed, with a test for the card with and without the id. - Growth submissions (memberId; reviewedByMemberId on the whole "Reviewed by" phrase) and the tracking codes' member column (memberId, hover-only: the row opens the drawer). - Hold'em: other players' names on the seat plate and in the lobby rows (memberId, hover-only inside the table's button). Left plain: the share dialog's existing shares and MaterialDetailDrawer's shares (docsservice's by-image list sends recipientName and no member id), the reports ScheduleDialog (an ownerName only, which no caller passes), Hold'em HandHistory (actions carry a seat number, not a member id). Pickers left alone: the e-sign MemberSearchDialog, the share dialog's search and recipient chips, chess NewGamePanel's opponent selector, the legal roster filter rail. Measured in Chrome against the origin/main components: PersonCell, PersonStack, KbPerson and the board faces keep their box sizes, centring and the on-the-clock dot's position.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing