@smbcloud / cli / commits / c59d37c

Format and clippy

Seto Elkahfi committed Apr 16, 2023 at 15:17 UTC c59d37c6d7c173576c95a56f2b13c63620b697a2
10 files changed +68 -36
Cargo.lock
+7
@@ -1161,7 +1161,14 @@ dependencies = [
1161 name = "smbpndk-utils"
1162 version = "0.1.0"
1163 dependencies = [
1164 + "anyhow",
1165 + "dirs",
1166 + "home",
1167 + "log",
1168 "regex",
1169 + "serde",
1170 + "serde_json",
1171 + "smbpndk-model",
1172 ]
1173
1174 [[package]]
Cargo.toml
+2 -2
@@ -1,9 +1,9 @@
1 [workspace]
2 members = [
3 + "smbpndk-cli",
4 + "smbpndk-model",
5 "smbpndk-networking",
6 "smbpndk-networking-auth-app",
7 "smbpndk-networking-project",
6 - "smbpndk-cli",
7 - "smbpndk-model",
8 "smbpndk-utils"
9 ]
smbpndk-cli/Cargo.toml
+3 -3
@@ -24,16 +24,16 @@ dialoguer = "0.10.4"
24 dirs = "4.0.0"
25 dotenv = "0.15.0"
26 home = "0.5.4"
27 +log = "0.4.14"
28 open = "4.0.1"
29 regex = "1.3.1"
29 -log = "0.4.14"
30 reqwest = { version = "0.11", features = ["json"] }
31 serde = { version = "1", features = ["derive"] }
32 serde_json = "1.0.82"
33 +smbpndk-model = { path = "../smbpndk-model" }
34 +smbpndk-networking = { path = "../smbpndk-networking" }
35 smbpndk-networking-auth-app = { path = "../smbpndk-networking-auth-app" }
36 smbpndk-networking-project = { path = "../smbpndk-networking-project" }
35 -smbpndk-networking = { path = "../smbpndk-networking" }
36 -smbpndk-model = { path = "../smbpndk-model" }
37 smbpndk-utils = { path = "../smbpndk-utils" }
38 spinners = "4.1.0"
39 tokio = { version = "1.14.1", features = ["full"] }
smbpndk-model/Cargo.toml
+1 -2
@@ -2,9 +2,8 @@
2 name = "smbpndk-model"
3 version = "0.1.0"
4 edition = "2021"
5 -
5 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
6
7 [dependencies]
8 serde = { version = "1", features = ["derive"] }
10 -serde_json = "1.0.82"
\ No newline at end of file
9 +serde_json = "1.0.82"
smbpndk-networking-auth-app/Cargo.toml
+8 -9
@@ -2,19 +2,18 @@
2 name = "smbpndk-networking-auth-app"
3 version = "0.1.0"
4 edition = "2021"
5 -
5 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
6
7 [dependencies]
9 -reqwest = { version = "0.11", features = ["json"] }
10 -serde = { version = "1", features = ["derive"] }
11 -serde_json = "1.0.82"
12 -thiserror = "1.0.29"
8 +anyhow = "1.0.58"
9 async-trait = { version = "0.1.51", optional = true }
10 +dirs = "4.0.0"
11 +home = "0.5.4"
12 log = "0.4.14"
13 maybe-async = { version = "0.2", features = ["is_sync"] }
16 -home = "0.5.4"
17 -anyhow = "1.0.58"
18 -dirs = "4.0.0"
14 +reqwest = { version = "0.11", features = ["json"] }
15 +serde = { version = "1", features = ["derive"] }
16 +serde_json = "1.0.82"
17 +smbpndk-model = { path = "../smbpndk-model" }
18 smbpndk-networking = { path = "../smbpndk-networking" }
20 -smbpndk-model = { path = "../smbpndk-model" }
\ No newline at end of file
19 +thiserror = "1.0.29"
smbpndk-networking-project/Cargo.toml
+8 -9
@@ -2,19 +2,18 @@
2 name = "smbpndk-networking-project"
3 version = "0.1.0"
4 edition = "2021"
5 -
5 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
6
7 [dependencies]
9 -reqwest = { version = "0.11", features = ["json"] }
10 -serde = { version = "1", features = ["derive"] }
11 -serde_json = "1.0.82"
12 -thiserror = "1.0.29"
8 +anyhow = "1.0.58"
9 async-trait = { version = "0.1.51", optional = true }
10 +dirs = "4.0.0"
11 +home = "0.5.4"
12 log = "0.4.14"
13 maybe-async = { version = "0.2", features = ["is_sync"] }
16 -home = "0.5.4"
17 -anyhow = "1.0.58"
18 -dirs = "4.0.0"
14 +reqwest = { version = "0.11", features = ["json"] }
15 +serde = { version = "1", features = ["derive"] }
16 +serde_json = "1.0.82"
17 +smbpndk-model = { path = "../smbpndk-model" }
18 smbpndk-networking = { path = "../smbpndk-networking" }
20 -smbpndk-model = { path = "../smbpndk-model" }
\ No newline at end of file
19 +thiserror = "1.0.29"
smbpndk-networking-project/src/lib.rs
+1 -1
@@ -9,7 +9,7 @@ pub async fn get_all() -> Result<Vec<Project>> {
9 // Get current token
10 let token = get_token().await?;
11
12 - print!("{}", token);
12 + debug!("Current token: {}", token);
13
14 let response = Client::new()
15 .get([BASE_URL, "v1/projects"].join(""))
smbpndk-networking/Cargo.toml
+7 -7
@@ -5,14 +5,14 @@ edition = "2021"
5 readme = "README.md"
6
7 [dependencies]
8 +anyhow = "1.0.58"
9 +async-trait = { version = "0.1.51", optional = true }
10 +dirs = "4.0.0"
11 +home = "0.5.4"
12 +log = "0.4.14"
13 +maybe-async = { version = "0.2", features = ["is_sync"] }
14 reqwest = { version = "0.11", features = ["json"] }
15 serde = { version = "1", features = ["derive"] }
16 serde_json = "1.0.82"
17 +smbpndk-model = { path = "../smbpndk-model" }
18 thiserror = "1.0.29"
12 -async-trait = { version = "0.1.51", optional = true }
13 -log = "0.4.14"
14 -maybe-async = { version = "0.2", features = ["is_sync"] }
15 -home = "0.5.4"
16 -anyhow = "1.0.58"
17 -dirs = "4.0.0"
18 -smbpndk-model = { path = "../smbpndk-model" }
\ No newline at end of file
smbpndk-utils/Cargo.toml
+8 -2
@@ -2,8 +2,14 @@
2 name = "smbpndk-utils"
3 version = "0.1.0"
4 edition = "2021"
5 -
5 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
6
7 [dependencies]
9 -regex = "1.3.1"
\ No newline at end of file
8 +anyhow = "1.0.58"
9 +dirs = "4.0.0"
10 +home = "0.5.4"
11 +log = "0.4.14"
12 +regex = "1.3.1"
13 +serde = { version = "1", features = ["derive"] }
14 +serde_json = "1.0.82"
15 +smbpndk-model = { path = "../smbpndk-model" }
smbpndk-utils/src/lib.rs
+23 -1
@@ -1,4 +1,9 @@
1 +use std::{fs::OpenOptions, io::Write};
2 +
3 +use anyhow::{anyhow, Result};
4 +use log::debug;
5 use regex::Regex;
6 +use smbpndk_model::Config;
7
8 pub fn email_validation(input: &str) -> Result<(), &'static str> {
9 let email_regex = Regex::new(
@@ -9,6 +14,23 @@ pub fn email_validation(input: &str) -> Result<(), &'static str> {
14 if email_regex.is_match(input) {
15 Ok(())
16 } else {
12 - Err("Username must be an email address")
17 + Err("Username must be an email address.")
18 + }
19 +}
20 +
21 +pub fn write_config(config: Config) -> Result<Config> {
22 + match home::home_dir() {
23 + Some(path) => {
24 + debug!("{}", path.to_str().unwrap());
25 + let mut file = OpenOptions::new()
26 + .create(true)
27 + .write(true)
28 + .open([path.to_str().unwrap(), "/.smb/config.json"].join(""))?;
29 + let json = serde_json::to_string(&config)?;
30 + file.write_all(json.as_bytes())?;
31 +
32 + Ok(config)
33 + }
34 + None => Err(anyhow!("Error getting config.")),
35 }
36 }