UI polish: faster navigation on access pages, cleaner users table #5

Merged
crueber merged 2 commits from ui/access-page-polish into main 2026-08-30 13:06:49 +00:00
Owner

Follow-up UI feedback from the deployed redesign.

Changes

App access / assignments pages

  • The app name in the page title is now a link to the app's Details page (both the Access tab and the per-user assignments page).
  • Assignments page: when the app has no roles and no groups defined, the Roles/Groups/Inherited form is hidden and replaced by an empty state ("No roles or groups yet…"). Previously it rendered three dead fieldsets and a Save button that could do nothing.

Users list

  • Admin + Active columns merged into a single Flags column — badges appear only when meaningful (Admin, Inactive); active non-admins show a muted em dash instead of two always-green badges.
  • New Apps column with a per-row link directly to that user's app access management page.

Verification

  • Browser-verified: users table desktop + 375px-wide; assignments page empty state (app without roles/groups) and populated state (2 roles + 1 group); title links resolve to /admin/apps/{id}; Apps column link lands on /admin/users/{id}/apps.
  • go test -race ./internal/admin ./internal/web green, CGO_ENABLED=0 go build OK. No CSS changes needed — all classes already existed.
Follow-up UI feedback from the deployed redesign. ## Changes **App access / assignments pages** - The app name in the page title is now a link to the app's Details page (both the Access tab and the per-user assignments page). - Assignments page: when the app has no roles and no groups defined, the Roles/Groups/Inherited form is hidden and replaced by an empty state ("No roles or groups yet…"). Previously it rendered three dead fieldsets and a Save button that could do nothing. **Users list** - Admin + Active columns merged into a single **Flags** column — badges appear only when meaningful (Admin, Inactive); active non-admins show a muted em dash instead of two always-green badges. - New **Apps** column with a per-row link directly to that user's app access management page. ## Verification - Browser-verified: users table desktop + 375px-wide; assignments page empty state (app without roles/groups) and populated state (2 roles + 1 group); title links resolve to `/admin/apps/{id}`; Apps column link lands on `/admin/users/{id}/apps`. - `go test -race ./internal/admin ./internal/web` green, `CGO_ENABLED=0 go build` OK. No CSS changes needed — all classes already existed.
- app access + assignments pages: app name in the page title now links
  to the app's Details page
- user assignments page: when an app has no roles and no groups, the
  roles/groups/inherited-grants form is replaced by an empty state —
  there is nothing to assign and nothing to save
- users list: Admin + Active columns collapse into one Flags column
  (badges only when meaningful; active non-admins show an em dash), and
  a new Apps column links straight to each user's app access page

Verified in browser: users table (desktop + 375px), assignments empty
state on an app with no roles/groups, populated state on an app with
both, title links resolve to /admin/apps/{id}
- users list: drop the separate Apps column; the per-user Access link
  now lives in the Actions column alongside Send Reset / Delete
- topbars: remove 'My Apps' (the passage wordmark already links to the
  launcher) and the '/ admin' breadcrumb (admins reach the admin via
  the launcher card) from the launcher, passkeys page, and admin shell
Author
Owner

Follow-up (998b00e): the per-user Access link moved from its own column into the Actions column on the users list, and the topbars lost the redundant My Apps link (the passage wordmark already leads to the launcher) and the / admin breadcrumb — on the launcher, the passkeys page, and the admin shell. Browser-verified all three surfaces.

Follow-up (998b00e): the per-user **Access** link moved from its own column into the **Actions** column on the users list, and the topbars lost the redundant **My Apps** link (the passage wordmark already leads to the launcher) and the **/ admin** breadcrumb — on the launcher, the passkeys page, and the admin shell. Browser-verified all three surfaces.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
crueber/passage!5
No description provided.