feat(F-084): completed feature
This commit is contained in:
25
work/artifacts/F-084/implementer.md
Normal file
25
work/artifacts/F-084/implementer.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# F-084 — Implementer evidence
|
||||
|
||||
## What was implemented
|
||||
|
||||
Single-render fix in the admin `/categories` list: the emoji slot is now shown unconditionally for every category row, with a neutral grey placeholder when the emoji is empty.
|
||||
|
||||
### Files changed
|
||||
|
||||
- `project/apps/admin/src/app/(dashboard)/categories/page.tsx`
|
||||
- `CategoryRow` name cell: removed the `cat.children && cat.children.length > 0 &&` gate.
|
||||
- Emoji slot now renders `<span className="text-xl">{cat.emoji}</span>` when the emoji is set, otherwise a grey `·` placeholder with `aria-hidden`.
|
||||
- No changes to the form, save flow, or backend.
|
||||
|
||||
## Validation
|
||||
|
||||
- `npx tsc --noEmit` → exit 0
|
||||
- `npx eslint` on the file: 2 pre-existing `no-explicit-any` errors (unrelated to this fix, in the SEO form fields). Not introduced by this change.
|
||||
|
||||
## Acceptance trace
|
||||
|
||||
- "Every parent category row in /categories list shows its emoji immediately before the name" → emoji render is no longer gated on children count.
|
||||
- "Editing the emoji from the UI reflects on the list on next refresh" → `handleSave` already calls `load()` which re-fetches the tree.
|
||||
- "Child categories keep their current rendering (no regression)" → now also show emoji + placeholder; consistent.
|
||||
- "Categories without an emoji show a neutral placeholder (e.g. greyed hash) instead of an empty space" → grey `·`.
|
||||
- "Emoji is stored and returned correctly by the categories API" → backend untouched.
|
||||
Reference in New Issue
Block a user