A slot row's hover toolbar covers its "0 of N taken" count
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 52/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- playwright, react, typescript
Línea de trabajo
Start with src/components/build-wysiwyg/WysiwygSlot.tsx and trace how hover, focus, and the interactive state control the toolbar. Then inspect the existing Playwright setup and tests/e2e/slot-row-layout.spec.ts as a suggested example; verify the count and toolbar do not overlap at 1280 and 390 widths, including a tagged row from #581. Done means the layout check passes, rows at rest stay unchanged, and the listed lint, typecheck, knip, and test commands pass.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Needs your OK: this moves a slot row's count aside while its Edit, Duplicate and Delete buttons show, so both stay visible. Swap pipeline:proposed for pipeline:ready to have it built.
What happens
On the Build tab, a closed slot row (WysiwygSlot in src/components/build-wysiwyg/WysiwygSlot.tsx) shows its count, such as "0 of 6 taken", at its right edge. Hover the row, or tab into it, and a toolbar with Edit, Duplicate and Delete appears at the same right edge. The toolbar is absolutely placed (right-2 top-1.5) on a white background, so it hides the count. The count is what organizers come to that row for, and it disappears whenever the pointer rests on it.
On a computer this happens on every hover. With the keyboard, it happens on every row that focus passes through.
To see it: at a computer width, create a signup with two slots, and hover either row.
Fix, in outline
- Move the count aside while the toolbar shows. When the row is hovered or has focus, give the row's button right padding the width of the toolbar, so the count slides left to sit just before it. The summary text gives up the room; it already truncates.
- Rows at rest don't change, and no row gets taller.
- Pin it in a browser. Add a Playwright check like
tests/e2e/slot-row-layout.spec.ts, which does this for the public page: on hover and on focus, the count's box and the toolbar's box don't overlap, at 1280 and 390 wide. jsdom has no layout, so a unit test can't catch it.
Watch for
- Phones. There's no hover, but the toolbar shows when the row has focus. Check 390 wide.
- #581 adds a "Still says TBD" tag to the row and lets its first line wrap on a phone. Check a tagged row too. Whichever lands second has a small merge in
WysiwygSlot.tsx. - The toolbar's
inertswitch (theinteractivestate) must still follow hover and focus. - CHANGELOG entry.
Choices this makes
- Move the count, or always keep room for the toolbar. Default: move the count only while the toolbar shows. Keeping the toolbar's room free on every row would cut every summary short, most of all on a phone, for a toolbar that's hidden most of the time. The cost is that the count slides left on hover.
- The toolbar stays a hover toolbar, in the same place, with the same buttons. Default: yes.
Done when
- Hovering or focusing a slot row shows its toolbar and its count side by side, at 1280 and 390 wide, checked by Playwright.
- A row at rest looks as it does now.
pnpm lint && pnpm typecheck && pnpm knip && pnpm testpass, and the new e2e check passes.
Found by the UX walkthrough (scenario O1) on 2026-10-24, and checked against the code on main at 4ed27a9.
Generated by Claude Code
- Lenguaje dominante
- TypeScript
- Estrellas
- 19
- Forks
- 4
- Merge medio
- 20 h 9 min
- PR fusionados (30 d)
- 156
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de richshaw/OpenSignup
-
enhancement pipeline:proposed pipeline:ux
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
richshaw/OpenSignup#654 ·
Los mantenedores suelen responder en 1 día
-
The help pages never say "pause", so organizers looking for it miss Close or reopen a signupAbiertoenhancement pipeline:proposed pipeline:ux
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
richshaw/OpenSignup#653 ·
Los mantenedores suelen responder en 1 día
-
enhancement pipeline:proposed pipeline:ux
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
richshaw/OpenSignup#652 ·
Los mantenedores suelen responder en 1 día
-
SMTP timeout notes in smtp.ts and the changelog describe nodemailer 10.0, not 10.1Posiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertoenhancement good first issue pipeline:ready
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
richshaw/OpenSignup#645 ·
Los mantenedores suelen responder en 1 día
-
A signup page's first Tab skips the header and lands on the next tabPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertobug good first issue pipeline:ready pipeline:ux
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
richshaw/OpenSignup#644 ·
Los mantenedores suelen responder en 1 día
Todos los issues de richshaw/OpenSignup
Issues similares
-
Native Web
Dificultad 1/5 Menos de una hora Aptitud para principiantes 80/100
digitalfabrik/integreat-app#4517 ·
Los mantenedores suelen responder en 2 días
-
TLS guide repeats certs/ in the certificate directoryPosiblemente ocupada @maheshrijal la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
prometheus/docs#3156 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
medusajs/dtc-starter#90 ·
Los mantenedores suelen responder en 1 día
-
usability
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
inmanta/web-console#7632 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
zaidmukaddam/scira#261 ·