diff --git a/src/cli/commands/issue/new.rs b/src/cli/commands/issue/new.rs index ce69856..827189d 100644 --- a/src/cli/commands/issue/new.rs +++ b/src/cli/commands/issue/new.rs @@ -95,10 +95,10 @@ impl NewArgs { impl CommandRunner for NewArgs { async fn run(self, options: CliOptions) -> N34Result<()> { - let naddrs = utils::naddrs_or_file( + let naddrs = utils::check_empty_naddrs(utils::naddrs_or_file( self.naddrs.flat_naddrs(&options.config.sets)?, &utils::nostr_address_path()?, - )?; + )?)?; let relays = options.relays.clone().flat_relays(&options.config.sets)?; let client = NostrClient::init(&options, &relays).await; let user_pubk = options.pubkey().await?; diff --git a/src/cli/commands/patch/send.rs b/src/cli/commands/patch/send.rs index 015a8e4..978c979 100644 --- a/src/cli/commands/patch/send.rs +++ b/src/cli/commands/patch/send.rs @@ -71,10 +71,11 @@ pub struct SendArgs { impl CommandRunner for SendArgs { async fn run(self, options: CliOptions) -> N34Result<()> { - let naddrs = utils::naddrs_or_file( + let naddrs = utils::check_empty_naddrs(utils::naddrs_or_file( self.naddrs.flat_naddrs(&options.config.sets)?, &utils::nostr_address_path()?, - )?; + )?)?; + let repo_coordinates = naddrs.clone().into_coordinates(); let relays = options.relays.clone().flat_relays(&options.config.sets)?; let user_pubk = options.pubkey().await?; diff --git a/src/nostr_utils/utils.rs b/src/nostr_utils/utils.rs index f8b2717..2939525 100644 --- a/src/nostr_utils/utils.rs +++ b/src/nostr_utils/utils.rs @@ -282,3 +282,12 @@ pub fn smart_wrap(text: &str, max_width: usize) -> String { .collect::>() .join("\n") } + +/// Returns an error if the given naddrs is empty otherwise returned it +pub fn check_empty_naddrs(naddrs: Vec) -> N34Result> { + if naddrs.is_empty() { + return Err(N34Error::EmptyNaddrs); + } + + Ok(naddrs) +}