1use crate::command::GitReviewCommand;
2use crate::settings::overlay::SettingsChange;
3use acp_utils::notifications::WorkspaceMoveTarget;
4use agent_client_protocol::schema::v2::SessionId;
5use std::path::PathBuf;
6
7#[derive(Debug)]
10pub enum UiOutput {
11 Close,
12 ConfigChange(SettingsChange),
13 AuthenticateServer(String),
14 AuthenticateProvider(String),
15 ResumeSession { session_id: SessionId, cwd: PathBuf },
16 PreviewSession(String),
17 MoveWorkspace(WorkspaceMoveTarget),
18 ArtifactReviewed(String),
19 SubmitReview(String),
20 GitReview(GitReviewCommand),
21}
22
23pub(crate) fn one<T>(action: Option<T>) -> Vec<T> {
24 action.into_iter().collect()
25}