@smbcloud / cli / commits / 5802726

move resend_email_verification to crate networking account

Seto committed Jan 1, 2026 at 22:26 UTC 580272627747eb5f2fab6631ff0009c22f5dbc42
4 files changed +39 -22
crates/cli/src/account/login/process.rs
+7 -20
@@ -28,13 +28,15 @@ use {
28 smbcloud_network::environment::Environment,
29 smbcloud_networking::{
30 constants::{
31 - PATH_LINK_GITHUB_ACCOUNT, PATH_RESEND_CONFIRMATION, PATH_RESET_PASSWORD_INSTRUCTIONS,
32 - PATH_USERS_PASSWORD,
31 + PATH_LINK_GITHUB_ACCOUNT, PATH_RESET_PASSWORD_INSTRUCTIONS, PATH_USERS_PASSWORD,
32 },
33 smb_base_url_builder,
34 smb_client::SmbClient,
35 },
37 - smbcloud_networking_account::{check_email::check_email, login::login},
36 + smbcloud_networking_account::{
37 + check_email::check_email, login::login,
38 + resend_email_verification::resend_email_verification as account_resend_email_verification,
39 + },
40 smbcloud_utils::email_validation,
41 spinners::Spinner,
42 };
@@ -215,17 +217,8 @@ async fn resend_email_verification(env: Environment, user: User) -> Result<Comma
217 .bold()
218 .to_string(),
219 );
218 -
219 - let response = Client::new()
220 - .post(build_smb_resend_email_verification_url(env))
221 - .body(format!("id={}", user.id))
222 - .header("Accept", "application/json")
223 - .header("Content-Type", "application/x-www-form-urlencoded")
224 - .send()
225 - .await?;
226 -
227 - match response.status() {
228 - reqwest::StatusCode::OK => Ok(CommandResult {
220 + match account_resend_email_verification(env, SmbClient::Cli, user.id).await {
221 + Ok(_) => Ok(CommandResult {
222 spinner,
223 symbol: succeed_symbol(),
224 msg: succeed_message("Verification email sent!"),
@@ -554,12 +547,6 @@ async fn input_reset_password_token(env: Environment) -> Result<CommandResult> {
547 }
548 }
549
557 -fn build_smb_resend_email_verification_url(env: Environment) -> String {
558 - let mut url_builder = smb_base_url_builder(env, &SmbClient::Cli);
559 - url_builder.add_route(PATH_RESEND_CONFIRMATION);
560 - url_builder.build()
561 -}
562 -
550 fn build_smb_resend_reset_password_instructions_url(env: Environment) -> String {
551 let mut url_builder = smb_base_url_builder(env, &SmbClient::Cli);
552 url_builder.add_route(PATH_RESET_PASSWORD_INSTRUCTIONS);
crates/smbcloud-networking-account/src/lib.rs
+1
@@ -4,4 +4,5 @@ pub mod logout;
4 pub mod me;
5 pub mod oauth;
6 pub mod remove;
7 +pub mod resend_email_verification;
8 pub mod signup;
crates/smbcloud-networking-account/src/resend_email_verification.rs new
+29
@@ -0,0 +1,29 @@
1 +use {
2 + reqwest::Client,
3 + smbcloud_model::{account::SmbAuthorization, error_codes::ErrorResponse},
4 + smbcloud_network::{environment::Environment, network::request},
5 + smbcloud_networking::{
6 + constants::PATH_RESEND_CONFIRMATION, smb_base_url_builder, smb_client::SmbClient,
7 + },
8 +};
9 +
10 +pub async fn resend_email_verification(
11 + env: Environment,
12 + client: SmbClient,
13 + user_id: i32,
14 +) -> Result<SmbAuthorization, ErrorResponse> {
15 + let builder = Client::new()
16 + .post(build_smb_resend_email_verification_url(env, &client))
17 + .body(format!("id={}", user_id))
18 + .header("User-agent", client.id())
19 + .header("Accept", "application/json")
20 + .header("Content-Type", "application/x-www-form-urlencoded");
21 +
22 + request(builder).await
23 +}
24 +
25 +fn build_smb_resend_email_verification_url(env: Environment, client: &SmbClient) -> String {
26 + let mut url_builder = smb_base_url_builder(env, client);
27 + url_builder.add_route(PATH_RESEND_CONFIRMATION);
28 + url_builder.build()
29 +}
docs/debugging.md
+2 -2
@@ -11,13 +11,13 @@ $ cargo debugger --package smbcloud-cli -- account signup
11 Default environment is production. To run against dev environemt:
12
13 ```bash
14 -$ cargo run -- -e dev account login
14 +$ cargo run -p smbcloud-cli -- -e dev account login
15 ```
16
17 Example debug the dev environment:
18
19 ```bash
20 -$ cargo debugger --package cli -- -e dev account login
20 +$ cargo debugger --package smbcloud-cli -- -e dev account login
21 ```
22
23 ## Run from different directory