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 (Notifications Module)

Maps the module onto 00-shared/02 (Design Tokens) and 00-shared/04 (Design System Mapping). No new tokens.


1. Color

UsageToken (from 00-shared/02)Note
Unread dot / badgecolor.primary (or accent per brand)only non-text indicator; must pair with weight change (06 §1.7)
Unread tile surfacesurfaceVariant tint / color.primary at low alphasubtle, not a full card fill
Title (unread)textPrimary bold; (read) textPrimary regular
BodytextSecondaryboth states
Badge countonPrimary on primary≥ 3:1 contrast (00-shared/09)
Empty state / error paneltextSecondary + surfacestandard shared patterns

2. Typography

ElementToken
AppBar titletitleLarge
Tile titletitleMedium (weight varies by read state)
Tile bodybodyMedium (2-line clamp)
TimestamplabelSmall (textSecondary)
Badge countlabelSmall bold

3. Iconography

type (server enum)IconFallback
welcomecelebration/star
email_verifiedverified badge/check
verification_resentmail-send
password_resetlock/rotate
unknowninfo/bellgeneric system icon — client must handle future enum values (04 §3)

Mapping lives in one client file (see 15_Flutter_Implementation_Guide §7).

4. Spacing / Shape

  • Tile padding: space-16; icon 40 dp rounded radius-m; gap 12.
  • List max width 640 dp centered; bottom inset respects system nav bar.
  • Badge: 18 dp min height pill, radius-full.

5. Motion

  • All module motion via 00-shared/08 tokens: m-fast (read flip, badge), m-base (list fade, page swap). No custom curves.

6. Component Mapping

Module component (07)Shared primitive
C1 NotificationListTileListTile + Text + Icon from 00-shared/03
C3 NotificationBadgeBadge + IconButton (shared)
C4 InboxEmptyStateEmptyState (shared)
C7 InboxErrorPanelErrorPanel (shared)

7. Branding Note

This module introduces no brand assets; notification icons reuse the shared icon set. Future push-channel icons/illustrations go through 00-shared/02.