diff options
| author | sigoden <sigoden@gmail.com> | 2024-06-26 21:51:06 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-26 21:51:06 +0800 |
| commit | 5985551abaf9418c1c37ef9fd6db39a6c9c94d69 (patch) | |
| tree | d7003f3706572ee5740fba0dfdff703806379501 /src/render/stream.rs | |
| parent | 03b40036a177468b1c471eefd365d6f6bc283a7c (diff) | |
| download | aichat-5985551abaf9418c1c37ef9fd6db39a6c9c94d69.tar.gz | |
feat: rag load websites (#655)
Diffstat (limited to 'src/render/stream.rs')
| -rw-r--r-- | src/render/stream.rs | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/render/stream.rs b/src/render/stream.rs index 0c70bce..042bfe5 100644 --- a/src/render/stream.rs +++ b/src/render/stream.rs @@ -1,6 +1,6 @@ use super::{MarkdownRender, SseEvent}; -use crate::utils::{run_spinner, AbortSignal}; +use crate::utils::{create_spinner, AbortSignal}; use anyhow::Result; use crossterm::{ @@ -62,16 +62,15 @@ async fn markdown_stream_inner( let columns = terminal::size()?.0; - let (stop_spinner_tx, _) = run_spinner("Generating").await; - let mut stop_spinner_tx = Some(stop_spinner_tx); + let mut spinner = Some(create_spinner("Generating").await); 'outer: loop { if abort.aborted() { return Ok(()); } for reply_event in gather_events(&mut rx).await { - if let Some(stop_spinner_tx) = stop_spinner_tx.take() { - let _ = stop_spinner_tx.send(()); + if let Some(spinner) = spinner.take() { + spinner.stop(); } match reply_event { @@ -149,8 +148,8 @@ async fn markdown_stream_inner( } } - if let Some(stop_spinner_tx) = stop_spinner_tx.take() { - let _ = stop_spinner_tx.send(()); + if let Some(spinner) = spinner.take() { + spinner.stop(); } Ok(()) } |
