use crate::application::OutputToken;
use crate::domain::branch_sync::{BranchSyncRepository, BranchSyncStatus};
use crate::domain::error::RepositoryError;
pub fn fetch(repo: &impl BranchSyncRepository) -> Result<BranchSyncStatus, RepositoryError> {
repo.fetch_sync_status()
}
pub fn check(status: &BranchSyncStatus) -> Option<OutputToken> {
match status {
BranchSyncStatus::Conflicting => Some(OutputToken::Conflict),
BranchSyncStatus::Behind => Some(OutputToken::UpdateBranch),
BranchSyncStatus::Unknown => Some(OutputToken::SyncUnknown),
BranchSyncStatus::Clean => None,
}
}