Skip to content

Fix low-contrast dark-theme text and Users row overlap on 6 admin pages - #24

Merged
dprograma merged 1 commit into
mainfrom
claude/lga-auth-e2e-test-ocez8x
Jul 24, 2026
Merged

Fix low-contrast dark-theme text and Users row overlap on 6 admin pages#24
dprograma merged 1 commit into
mainfrom
claude/lga-auth-e2e-test-ocez8x

Conversation

@dprograma

Copy link
Copy Markdown
Owner

Summary

  • Analytics, Press Releases, Live Streams, Audit Reports, Procurement, and Users pages were built assuming a dark page background (text-white, text-green-200/*, bg-white/5, border-white/10), but the actual admin content area is light (bg-slate-50) — headings, subtitles, search placeholders, stat labels, and pagination text were rendering nearly invisible. Converted all six to the light theme convention already used correctly by LGA Approvals, Wards, Payments, and Allocations.
  • The Users list row had the same non-stacking layout bug fixed previously on LGA Approvals: avatar/name/badges/Suspend/Ban buttons packed into one non-wrapping flex row, truncating names/emails to a single character on mobile ("K…", "ke…") with buttons overlapping the text. Now stacks (info above, actions below and wrapping) on narrow screens.
  • While fixing press-releases, discovered that an earlier arrow-mojibake fix (sed replacing ↠with ) left a stray invisible control byte (U+0090) immediately after the arrow character in 5 files — harmless to rendering but corrupting the source enough to block exact-string edits on those lines. Fixed at the byte level; confirmed zero remaining control-character corruption across the whole app/ tree.

Test plan

  • npx tsc --noEmit — clean
  • npx eslint on every changed file — no new issues (remaining errors are the same pre-existing react-hooks/set-state-in-effect warnings already present on these files)
  • npx playwright test --project=api — 452/452 passed
  • Verified all 6 pages via real 393×852 mobile-viewport screenshots: headings/labels/text now fully legible, Users rows show full names/emails with non-overlapping action buttons, no page errors

Generated by Claude Code

@vercel

vercel Bot commented Jul 24, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
774ng Ready Ready Preview, Comment Jul 24, 2026 7:04pm

Analytics, Press Releases, Live Streams, Audit Reports, Procurement,
and Users were built with dark-theme classes (text-white, text-green-
200/*, bg-white/5, border-white/10) assuming a dark page background,
but the admin content area is actually light (bg-slate-50) — headings,
subtitles, stat labels, search placeholders, and pagination text were
all rendering nearly invisible (white/pale-green on white). Converted
all six to the light theme already used correctly elsewhere in the
admin panel (LGA Approvals, Wards, Payments, Allocations).

The Users list row had the same non-stacking layout bug fixed earlier
on LGA Approvals — avatar, name, badges, and Suspend/Ban buttons were
forced into one non-wrapping row, so on mobile names and emails
truncated to a single character ("K…", "ke…") and buttons crowded the
text. Now stacks properly on narrow screens.

Also found the root cause of a stray corrupted byte discovered while
editing press-releases: the previous session's arrow-mojibake fix
(sed replacing "â†" with "←") left a dangling C1 control byte (U+0090)
immediately after the arrow in 5 files, invisible in normal viewing
but preventing exact-string edits on those lines. Fixed at the byte
level and confirmed zero remaining control-character corruption
across the whole app/ tree.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UPJE5cNDtQ4j7yeg9Xjtxw
@dprograma
dprograma force-pushed the claude/lga-auth-e2e-test-ocez8x branch from 5743cb2 to c514792 Compare July 24, 2026 19:01
@dprograma
dprograma merged commit 74435d9 into main Jul 24, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants