@@ -353,20 +353,21 @@ Always remove listeners on cleanup (useEffect return function):
353353
354354### Section Order (top to bottom)
355355
356- 1 . ** App Section** (App ID, Guidance Banner, Consent Toggle, Logged-in-as display, Login/Logout)
357- 2 . ** Push Section** (Push ID, Enabled Toggle, Auto-prompts permission on load)
358- 3 . ** Send Push Notification Section** (Simple, With Image, Custom buttons)
359- 4 . ** In-App Messaging Section** (Pause toggle)
360- 5 . ** Send In-App Message Section** (Top Banner, Bottom Banner, Center Modal, Full Screen - with icons)
361- 6 . ** Aliases Section** (Add/Add Multiple, read-only list)
362- 7 . ** Emails Section** (Collapsible list >5 items)
363- 8 . ** SMS Section** (Collapsible list >5 items)
364- 9 . ** Tags Section** (Add/Add Multiple/Remove Selected)
365- 10 . ** Outcome Events Section** (Send Outcome dialog with type selection)
366- 11 . ** Triggers Section** (Add/Add Multiple/Remove Selected/Clear All - IN MEMORY ONLY)
367- 12 . ** Track Event Section** (Track Event with JSON validation)
368- 13 . ** Location Section** (Location Shared toggle, Prompt Location button)
369- 14 . ** Next Page Button**
356+ 1 . ** App Section** (App ID, Guidance Banner, Consent Toggle)
357+ 2 . ** User Section** (Status display, Login/Logout)
358+ 3 . ** Push Section** (Push ID, Enabled Toggle, Auto-prompts permission on load)
359+ 4 . ** Send Push Notification Section** (Simple, With Image, Custom buttons)
360+ 5 . ** In-App Messaging Section** (Pause toggle)
361+ 6 . ** Send In-App Message Section** (Top Banner, Bottom Banner, Center Modal, Full Screen - with icons)
362+ 7 . ** Aliases Section** (Add/Add Multiple, read-only list)
363+ 8 . ** Emails Section** (Collapsible list >5 items)
364+ 9 . ** SMS Section** (Collapsible list >5 items)
365+ 10 . ** Tags Section** (Add/Add Multiple/Remove Selected)
366+ 11 . ** Outcome Events Section** (Send Outcome dialog with type selection)
367+ 12 . ** Triggers Section** (Add/Add Multiple/Remove Selected/Clear All - IN MEMORY ONLY)
368+ 13 . ** Track Event Section** (Track Event with JSON validation)
369+ 14 . ** Location Section** (Location Shared toggle, Prompt Location button)
370+ 15 . ** Next Page Button**
370371
371372### Prompt 2.1 - App Section
372373
@@ -391,7 +392,11 @@ App Section layout:
391392 - Separated from the above toggle by a horizontal divider
392393 - NOT a blocking overlay - user can interact with app regardless of state
393394
394- 4 . User status card (always visible, ABOVE the login/logout buttons):
395+ ### Prompt 2.1b - User Section
396+
397+ User Section layout (separate section from App, placed directly below it):
398+
399+ 1 . User status card (always visible, ABOVE the login/logout buttons):
395400 - Card with two rows separated by a divider
396401 - Row 1: "Status" label on the left, value on the right
397402 - Row 2: "External ID" label on the left, value on the right
@@ -402,12 +407,12 @@ App Section layout:
402407 - Status shows "Logged In" with success styling
403408 - External ID shows the actual external user ID
404409
405- 5 . LOGIN USER button:
410+ 2 . LOGIN USER button:
406411 - Shows "LOGIN USER" when no user is logged in
407412 - Shows "SWITCH USER" when a user is logged in
408- - Opens modal with empty " External User Id" field
413+ - Opens "Login User" modal with empty ` External User Id ` field
409414
410- 6 . LOGOUT USER button (only visible when a user is logged in)
415+ 3 . LOGOUT USER button (only visible when a user is logged in)
411416
412417### Prompt 2.2 - Push Section
413418
@@ -473,8 +478,8 @@ Tooltip should explain each IAM type.
473478Aliases Section (placed after Send In-App Message):
474479
475480- Section title: "Aliases" with info icon for tooltip
476- - List showing key-value pairs (read-only, no delete icons)
477- - Each item shows: Label | ID
481+ - Stacked key-value list (read-only, no delete icons)
482+ - Each item shows Label on top, ID below (see styles.md "Stacked" list layout)
478483- Filter out "external_id" and "onesignal_id" from display (these are special)
479484- "No Aliases Added" text when empty
480485- ADD button -> PairInputModal with empty Label and ID fields on the same row (single add)
@@ -1059,7 +1064,8 @@ examples/demo/
10591064│ │ ├── CustomNotificationModal.tsx
10601065│ │ └── TooltipModal.tsx
10611066│ └── sections/
1062- │ ├── AppSection.tsx # App ID, consent, login/logout
1067+ │ ├── AppSection.tsx # App ID, guidance banner, consent
1068+ │ ├── UserSection.tsx # User status, login/logout
10631069│ ├── PushSection.tsx # Push subscription controls
10641070│ ├── SendPushSection.tsx # Send notification buttons
10651071│ ├── InAppSection.tsx # IAM pause toggle
0 commit comments