♻️ refactor(cli): use GmailClient for MessageList

- use GmailClient instance instead of credential file path
- pass GmailClient to add_labels
This commit is contained in:
Jeremiah Russell
2025-10-13 13:55:26 +01:00
committed by Jeremiah Russell
parent 704b2b023e
commit 7eeebddf2e

View File

@@ -1,5 +1,5 @@
use clap::Parser; use clap::Parser;
use cull_gmail::{MessageList, Result}; use cull_gmail::{GmailClient, MessageList, Result};
/// Command line options for the list subcommand /// Command line options for the list subcommand
#[derive(Debug, Parser)] #[derive(Debug, Parser)]
@@ -19,11 +19,11 @@ pub struct MessageCli {
} }
impl MessageCli { impl MessageCli {
pub(crate) async fn run(&self, credential_file: &str) -> Result<()> { pub(crate) async fn run(&self, client: &GmailClient) -> Result<()> {
let mut list = MessageList::new(credential_file).await?; let mut list = MessageList::new(client).await?;
if !self.labels.is_empty() { if !self.labels.is_empty() {
list.add_labels(credential_file, &self.labels).await?; list.add_labels(client, &self.labels).await?;
} }
if let Some(query) = self.query.as_ref() { if let Some(query) = self.query.as_ref() {