summaryrefslogtreecommitdiffhomepage
path: root/src/app/App.svelte
diff options
context:
space:
mode:
authorAdam Malczewski <[email protected]>2026-06-22 03:06:52 +0900
committerAdam Malczewski <[email protected]>2026-06-22 03:06:52 +0900
commitb76575eaccbdec881c0cacaf29a1ebec1dbbf7c3 (patch)
treeeb8efadba7c8a70fa5f010eda81b5089d010e711 /src/app/App.svelte
parent8a04c21b718f5e88583f82d0604902e0cf411041 (diff)
downloaddispatch-web-b76575eaccbdec881c0cacaf29a1ebec1dbbf7c3.tar.gz
dispatch-web-b76575eaccbdec881c0cacaf29a1ebec1dbbf7c3.zip
feat(chat): stop generation button — abort without closing
Consume the stop-generation handoff (no version bumps, no new types). - App store: stopGeneration() → POST /conversations/:id/stop (fire-and-forget) - Composer: stop button (square, error color) visible only while generating, next to the send/queue button - Existing event flow handles the rest: done with reason 'aborted' clears generating; conversation.statusChanged: idle updates the tab spinner 686 tests green.
Diffstat (limited to 'src/app/App.svelte')
-rw-r--r--src/app/App.svelte5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/app/App.svelte b/src/app/App.svelte
index 350db49..3024a44 100644
--- a/src/app/App.svelte
+++ b/src/app/App.svelte
@@ -195,6 +195,10 @@
store.queueMessage(text);
}
+ function handleStop() {
+ store.stopGeneration();
+ }
+
function handleSelectModel(model: string) {
store.selectModel(model);
}
@@ -372,6 +376,7 @@
<Composer
onSend={handleSend}
onQueue={handleQueue}
+ onStop={handleStop}
contextSize={store.activeChat.currentContextSize}
status={store.activeChat.error
? "error"