From 08976de55a229509f553ef52d717af9a767b6f03 Mon Sep 17 00:00:00 2001 From: sdarbinyan Date: Mon, 20 Jul 2026 00:07:27 +0400 Subject: [PATCH] docs(admin): add RC1 UI polish review Co-Authored-By: Claude Sonnet 5 --- docs/ADMIN_REVIEW.md | 74 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 docs/ADMIN_REVIEW.md diff --git a/docs/ADMIN_REVIEW.md b/docs/ADMIN_REVIEW.md new file mode 100644 index 0000000..ed42843 --- /dev/null +++ b/docs/ADMIN_REVIEW.md @@ -0,0 +1,74 @@ +# Admin UI Polish — RC1 Review + +Scope: production-ready UI/UX polish pass across the admin area, one page at a time. +Architecture, routing, facades, providers, APIs, and data models were left unchanged +per instructions. No `docs/DESIGN.md` exists in this repo (confirmed during the +storefront pass), so no page could be checked against it literally; polish decisions +here follow the shared component library (`app-button`, `app-table`, `app-empty-state`, +`app-skeleton`, `app-badge`, `app-card`, `app-toggle`) and existing conventions instead. + +## Pages reviewed + +| Page | Commit | Status | +|---|---|---| +| Dashboard | — | reviewed, no changes needed | +| Marketplace Builder | `fix(admin): polish marketplace-builder` | done | +| Products | `fix(admin): polish products` | done | +| Categories | `fix(admin): polish categories` | done | +| Orders | `fix(admin): polish orders` | done | +| Customers | — | reviewed, no changes needed | +| Reviews (moderation) | `fix(admin): polish reviews` | done | +| Reports | — | reviewed, no changes needed | +| Transactions | — | reviewed, no changes needed | +| Analytics | — | reviewed, no changes needed | +| Monitoring | — | reviewed, no changes needed | +| Media | — | reviewed, no changes needed | +| Settings | — | no implementation exists (see backlog) | +| Diagnostics | — | reviewed, no changes needed (dev-only, excluded from production) | + +## Fixes + +**Dead code:** +- Marketplace Builder: removed an unused `ButtonComponent` import/registration from + `ProjectEditorHomepageSectionComponent` — it was never referenced in the template + and had been silently flagged by every single build (`NG8113` warning) until now. + +**Accessibility — recurring pattern across list pages:** + +The admin list pages (Products, Categories, Orders, Reviews) share a common +table-view layout: a "select all" checkbox in the header and a per-row checkbox in +each ``. In every one of these tables, **the table view's checkboxes had no +accessible name** — a screen reader announced only "checkbox, not checked" with no +indication of what it selects. Notably, the **grid-view equivalent on the same pages +already had `aria-label`** (e.g. product name, category title, customer name), so this +was an inconsistency introduced when the table view was built, not a project-wide gap. + +Fixed identically across all four: +- Products: `adminProducts.selectAllRows` / `selectRow` +- Categories: `adminCategories.selectAllRows` / `selectRow` — plus the per-row + **visibility-toggle** checkbox, whose `