Make the welcome bubble a real button
I maintainer di solito rispondono entro 1 giorno
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
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.
- Lingua principale
- TypeScript
- Stelle
- 13
- Fork
- 7
- Merge medio
- 3h 28m
- PR unite (30g)
- 296
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di codercops/chatcops
-
Core README lists old default modelsForse già presa @prakashNalla l’ha presa oggi. Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
codercops/chatcops#503 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Widget: theme.tokens to set any color or size token, and the full token table in the docsForse già presa @Sreehita-here l’ha presa oggi. Apertahacktoberfest
codercops/chatcops#500 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Widget: a header menu with New conversation, Download transcript and a privacy linkForse già presa @anurag2787 l’ha presa oggi. Apertahacktoberfest
codercops/chatcops#496 · 4 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Widget: keep a message sent while offline, and send it when the connection is backForse già presa @Saifjafri212213 l’ha presa oggi. Apertahacktoberfest
codercops/chatcops#495 · 3 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Widget: copy a completed assistant replyForse già presa @piyusshhjangid l’ha presa 1 giorno fa. Apertahacktoberfest
codercops/chatcops#477 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di codercops/chatcops
Issue simili
-
BeOS .json missingAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
mihaip/infinite-mac#475 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
marmelab/atomic-crm#401 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
Deltares/webgl-streamline-visualizer#83 ·
I maintainer di solito rispondono entro 1 giorno
-
ubicloud: usage is an awk syntax error on macOS, which also disables the vCPU quota preflightAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno