Widget: copy a completed assistant reply
Maintainer antworten meist innerhalb von 1 Tag
Bewertung
Dieses Issue wurde noch nicht bewertet.
Beschreibung
What problem would this solve?
Visitors often need to reuse an answer outside the chat. Selecting a long rendered reply is awkward on phones and can be error-prone around formatted text and code blocks.
What would you like to happen?
Add a copy action to completed assistant replies. Copy the reply as readable plain text, preserving code block contents and line breaks without copying Markdown syntax. Keep the action out of the streaming state, make it keyboard accessible, and announce success or failure without disrupting the existing reply announcement.
Where to look
packages/widget/src/dom/messages.tsrenders assistant messages and reply actions.packages/widget/src/i18n.tsholds the widget’s accessible UI strings.packages/widget/src/styles/widget.csscontains message action styles.packages/widget/tests/dom/messages.test.tscovers message rendering.
Acceptance criteria
- A copy button is available for a completed assistant reply and is not shown while that reply is streaming.
- Clipboard failures are handled without an uncaught error, including when the Clipboard API is unavailable.
- The control has a localized accessible name, a visible focus indicator, and an accessible confirmation of the result.
- Tests cover copying formatted content, streaming replies, and clipboard failure.
- Add a widget changeset; keep the gzipped bundle within the configured size budget.
Contributing
- I’d like to work on this myself
- Vorherrschende Sprache
- TypeScript
- Sterne
- 13
- Forks
- 7
- Ø Merge
- 3 Std. 10 Min.
- Gemergte PRs (30 T.)
- 339
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus codercops/chatcops
-
documentation
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 72/100
codercops/chatcops#555 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 25/100
codercops/chatcops#546 · 4 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 64/100
codercops/chatcops#542 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Server: validate `rateLimit.windowMs` before creating the limiterEvtl. vergeben @ashutoshpalhare hat das vor 3 Tagen übernommen. Offen
codercops/chatcops#452 · 1 Kommentar · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Widget: a "New reply" button when the visitor has scrolled upEvtl. vergeben @srujankaleru2007 hat das vor 4 Tagen übernommen. Offenenhancement widget
codercops/chatcops#420 · 3 Kommentare · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in codercops/chatcops
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
Equal-Vote/bettervoting#1754 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
Doist/todoist-sdk-typescript#740 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 62/100
privatenumber/cleye#47 ·
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:auth-provider issue-rating: 🦞 diamond lobster no-stale P1
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
steipete/oracle#614 · 1 Kommentar · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
MoonshotAI/kimi-code#4591 ·
Maintainer antworten meist innerhalb von 1 Tag