Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

11 — Design System Mapping (Staff Module)

Extends 00-shared/04_Design_System_Mapping.md with staff-specific widget → token mappings. Theme, typography, iconography, motion, layout: as shared; only module deltas listed.

1. Module surfaces

SurfaceTokenNotes
List rows / cardssurfaceContainerLow, e-0/e-1, r-lgAppCard/AppListTile (00-shared/04 §2)
Detail header cardsurfaceContainerHigh, e-1Hero source
Selected master-detail rowsecondaryContainer highlight00-shared/04 §2 (NavigationRail pattern)
Status badge fillactivesecondaryContainer, inactivesurfaceVariant, on_leavetertiaryContainer, terminatederrorContainericon+label, never color-only (00-shared/09 §9)
Filter chipsselected secondaryContainer, else surfaceVariant00-shared/04 §2
FABprimaryContainer, e-3, 56 dp00-shared/04 §2
Deactivate dialogsurfaceContainerHigh, e-4, destructive action error/onError00-shared/03 AppDialog
Empty statesdisplaySmall title, bodyMedium onSurfaceVariant00-shared/04 §3

2. Typography mapping

ElementText tokenNote
Screen title "Staff"headlineMediumone per screen (00-shared/09 §11)
Employee numbermono 14 + tabularFiguresIDs always mono (00-shared/02 §2)
Row title / section headertitleMedium
Subtitle (dept • designation)bodyMedium onSurfaceVariant
Status badgelabelMedium
Form labels / helperbodyMedium / bodySmall
Dialog titletitleLarge

3. Iconography

Material Symbols outlined (00-shared/02 §7): badge (staff), groups (departments), workspace_premium (designations), search, add, edit, delete, person_off (deactivate), today (joining date), payments/attach_money (salary grade), schedule (employment type), account_tree (dept ref), category (designation ref). Status icons filled variant. Every icon paired with text label or tooltip (00-shared/02 §7).

4. Layout tokens

  • List rows 56 dp (00-shared/02 §9); avatar 40 (list), 64 (detail header).
  • Screen horizontal padding 16 (phone) / 24 (tablet+); card padding 16; section gap 24 (00-shared/04 §6).
  • Form field gap 16; master-detail breakpoint 840 dp.
  • FAB above bottom nav (phone); page controls right-aligned (desktop).

5. Status visual grammar (staff-specific)

active     → [✓ icon]  "Active"    secondaryContainer pill
inactive   → [– icon]  "Inactive"  outline pill
on_leave   → [⏳ icon] "On leave"  tertiaryContainer pill
terminated → [✕ icon]  "Terminated" errorContainer pill

Enum source: staff.schema.ts:7-12. Same grammar reused by Teachers (teacher.schema.ts:7-12).

6. Dark mode parity

Elevation substitutes for color on dark surfaces; badges keep container-role colors at full contrast; no hardcoded Color — all tokens (00-shared/04 §7).

7. Theming rules (enforced, shared)

  1. No literal colors/spacing/durations in widgets.
  2. Tenant branding overrides primary only (00-shared/02 §1).
  3. Dark mode first-class; goldens at light+dark, 3 sizes (00-shared/03 §G).