feat(fase-19): wire EmojiPicker into 4 integration sites + EP-E specs

Replaces the four legacy hardcoded emoji arrays (settings avatar,
onboarding-create, CreateCollectiveModal, manage-collective rename) with
`<EmojiPicker selected={…} onSelect={…} />`. The shared component
delivers ~280 codepoints across 4 tabs instead of the previous 8–24
per surface, with consistent layout and behaviour.

Backwards-incompatible testid change on the manage page: the old
`collective-emoji-option-{e}` per-cell testid is gone — every cell now
lives under the picker's `emoji-picker-cell-{e}` namespace. Two existing
specs (onboarding O-02 + rename MC-01a) are updated to drive the new
tab → cell flow.

New e2e file `tests/e2e/emoji-picker.test.ts` covers EP-E-01..02:
- EP-E-01 — Ana on /settings picks 🍎 from "Comida"; DB row updates.
- EP-E-02 — Eva on /onboarding creates a collective with 🐱 from
  "Animales"; sidebar reflects the choice.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-05-19 03:19:56 +02:00
parent a075a792d6
commit 2f01eb9cb0
7 changed files with 150 additions and 73 deletions

View File

@@ -36,9 +36,11 @@ test.describe('Rename collective (CU-H07)', () => {
await nameInput.fill(newName);
await page.getByTestId('collective-name-save').click();
// Pick a different emoji.
// Pick a different emoji from the new tabbed EmojiPicker (Fase 19).
// 🏡 lives in the "objects" tab; default is "faces".
await page.getByTestId('collective-emoji-toggle').click();
await page.getByTestId('collective-emoji-option-🏡').click();
await page.getByTestId('emoji-picker-tab-objects').click();
await page.getByTestId('emoji-picker-cell-🏡').click();
// Reload and verify the inputs reflect the persisted value.
await page.reload();