Make the welcome bubble a real button
Los mantenedores suelen responder en 1 día
@kachamsiddarth ya está trabajando en esto.
Desde el 26/10/2026.
- #383 de @kachamsiddarth — fusionado
Evaluación
Este issue todavía no se ha evaluado.
Descripción
The welcome bubble ("Need help? Chat with us!") opens the chat when clicked, but it's a div with a click listener. Keyboard and screen reader users can't reach it or tell it does anything. Only its small close button is a real button.
What to do
- Render the bubble's text as a
<button type="button">that opens the chat. Keep the close button as a separate button next to it, not inside it (a button inside a button is invalid HTML). - Keep the look the same. The wrapper can stay a
divfor positioning. - Keep the existing behavior: clicking the text opens the chat, the close button only hides the bubble.
Where to look
packages/widget/src/dom/bubble.ts(WelcomeBubbleconstructor).cc-bubbleand.cc-bubble-closeinpackages/widget/src/styles/widget.csspackages/widget/tests/widget.test.tsandpackages/widget/tests/loader.test.ts(search forcc-bubble)
Acceptance criteria
- The bubble text is a
<button>reachable with Tab, and Enter or Space opens the chat - The close button is a sibling, not a child, of that button
- No visual change (a before and after screenshot in the PR)
- Tests for keyboard activation and for dismiss
- Changeset for
@chatcops/widget(patch) -
pnpm test:coverage,pnpm lintandpnpm sizepass
The chat panel (dist/chatcops.panel.js) has a 14 kB gzip budget and about 800 B of it is left, shared by several open issues. Keep the change small, and check pnpm size before you open the PR.
- Lenguaje dominante
- TypeScript
- Estrellas
- 13
- Forks
- 7
- Merge medio
- 3 h 28 min
- PR fusionados (30 d)
- 296
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una 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 codercops/chatcops
-
Core README lists old default modelsPosiblemente ocupada @prakashNalla la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
codercops/chatcops#503 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Widget: theme.tokens to set any color or size token, and the full token table in the docsPosiblemente ocupada @Sreehita-here la tomó hoy. Abiertohacktoberfest
codercops/chatcops#500 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Widget: a header menu with New conversation, Download transcript and a privacy linkPosiblemente ocupada @anurag2787 la tomó hoy. Abiertohacktoberfest
codercops/chatcops#496 · 4 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Widget: keep a message sent while offline, and send it when the connection is backPosiblemente ocupada @Saifjafri212213 la tomó hoy. Abiertohacktoberfest
codercops/chatcops#495 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Widget: copy a completed assistant replyPosiblemente ocupada @piyusshhjangid la tomó hace 1 día. Abiertohacktoberfest
codercops/chatcops#477 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de codercops/chatcops
Issues similares
-
area:cli bug P4
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
bug from-studio
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
esengine/DeepSeek-Reasonix#14868 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
loopbackio/loopback-next#11878 ·
Los mantenedores suelen responder en 2 días
-
bug 🐛
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
comunica/comunica#1925 · 1 comentario ·
Los mantenedores suelen responder en 1 día