use uuid::Uuid; use crate::error::UserResult; use crate::features::UserService; use super::types::{ AddEmailCmd, AddEmailResp, ConfirmEmailChangeCmd, EmailChangeTicketView, EmailView, SetPrimaryEmailResp, }; use super::usecase; impl UserService { pub async fn list_emails(&self, caller: Uuid) -> UserResult> { usecase::list(self, caller).await } pub async fn add_email(&self, caller: Uuid, cmd: AddEmailCmd) -> UserResult { usecase::add(self, caller, cmd).await } pub async fn set_primary_email( &self, caller: Uuid, email_id: Uuid, ) -> UserResult { usecase::set_primary(self, caller, email_id).await } pub async fn delete_email(&self, caller: Uuid, email_id: Uuid) -> UserResult<()> { usecase::soft_delete(self, caller, email_id).await } pub async fn request_email_change( &self, caller: Uuid, new_email: String, ) -> UserResult { usecase::request_change(self, caller, new_email).await } pub async fn confirm_email_change( &self, caller: Uuid, cmd: ConfirmEmailChangeCmd, ) -> UserResult { usecase::confirm_change(self, caller, cmd).await } pub async fn cancel_email_change(&self, caller: Uuid, ticket_id: Uuid) -> UserResult<()> { usecase::cancel_change(self, caller, ticket_id).await } }