Skip to content

Commit

Permalink
Merge pull request #28 from enaut/prepare-v4.11
Browse files Browse the repository at this point in the history
Prepare v4.11
  • Loading branch information
enaut authored Feb 11, 2025
2 parents 8bef8ff + d88728a commit 8b2eba7
Show file tree
Hide file tree
Showing 10 changed files with 42 additions and 32 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
with:
version: 'latest'
- uses: actions/checkout@v2
- uses: actions/cache@v2
- uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
Expand Down
1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[workspace]
members = ["shared", "locales", "pslink", "app", "locales"]
resolver = "2"

[profile]
[profile.release]
Expand Down
3 changes: 2 additions & 1 deletion app/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ keywords = ["url", "link", "webpage", "actix", "web"]
license = "MIT OR Apache-2.0"
readme = "README.md"
repository = "https://github.com/enaut/pslink/"
version = "0.4.9"
version = "0.4.11"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

Expand All @@ -40,6 +40,7 @@ web-sys = { version = "0.3", features = [
"IntersectionObserverEntry",
"IntersectionObserverInit",
] }
uuid = { version = "1.13", features = ["v4", "js"] }


pslink-shared = { version = "0.4", path = "../shared" }
12 changes: 6 additions & 6 deletions app/src/pages/list_links.rs
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ enum Dialog {
link_delta: LinkDelta,
qr: Loadable<QrGuard>,
},
Message(Status),
Message(Status<Message>),
Question(EditMsg),
None,
}
Expand Down Expand Up @@ -185,7 +185,7 @@ pub enum EditMsg {
GenerateQr(String),
QrGenerated(Loadable<QrGuard>),
CreateNewLink,
Created(Status),
Created(Status<Message>),
EditCodeChanged(String),
EditDescriptionChanged(String),
EditTargetChanged(String),
Expand All @@ -194,7 +194,7 @@ pub enum EditMsg {
SaveLink,
FailedToCreateLink,
FailedToDeleteLink,
DeletedLink(Status),
DeletedLink(Status<Message>),
}

/// hide all dialogs
Expand Down Expand Up @@ -335,7 +335,7 @@ pub fn process_query_messages(msg: QueryMsg, model: &mut Model, orders: &mut imp
}
QueryMsg::GetStatistics(link_id) => {
orders.skip(); // No need to rerender
request_statistics(orders, link_id);
//request_statistics(orders, link_id);
}
QueryMsg::ReceivedStatistics(statistics) => {
for i in 1..model.links.len() {
Expand Down Expand Up @@ -603,7 +603,7 @@ fn save_link(link_delta: LinkDelta, orders: &mut impl Orders<Msg>) {
Msg::SetMessage("Failed to save link (await)".into())
);
if response.ok() {
let message: Status = unwrap_or_return!(
let message: Status<Message> = unwrap_or_return!(
response.json().await,
Msg::SetMessage("Failed to save link (parse)".into())
);
Expand All @@ -627,7 +627,7 @@ fn delete_link(link_delta: LinkDelta, orders: &mut impl Orders<Msg>) {
Msg::SetMessage("Failed to delete link (await)".into())
);
if response.ok() {
let message: Status = unwrap_or_return!(
let message: Status<Message> = unwrap_or_return!(
response.json().await,
Msg::SetMessage("Failed to delete link (parse)".into())
);
Expand Down
11 changes: 5 additions & 6 deletions app/src/pages/list_users.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@ use enum_map::EnumMap;
use gloo_console::log;
use gloo_net::http::Request;
use pslink_shared::{
apirequests::general::{Operation, Ordering},
apirequests::{
general::{EditMode, Status},
general::{EditMode, Message, Operation, Ordering, Status},
users::{Role, UserDelta, UserOverviewColumns, UserRequestForm},
},
datatypes::{Lang, User},
Expand Down Expand Up @@ -39,7 +38,7 @@ pub struct Model {
formconfig: UserRequestForm,
inputs: EnumMap<UserOverviewColumns, FilterInput>,
user_edit: Option<UserDelta>,
last_message: Option<Status>,
last_message: Option<Status<Message>>,
}

impl Model {
Expand Down Expand Up @@ -87,7 +86,7 @@ pub enum UserQueryMsg {
pub enum UserEditMsg {
EditUserSelected(UserDelta),
CreateNewUser,
UserCreated(Status),
UserCreated(Status<Message>),
EditUsernameChanged(String),
EditEmailChanged(String),
EditPasswordChanged(String),
Expand Down Expand Up @@ -274,7 +273,7 @@ fn update_privileges(user: UserDelta, orders: &mut impl Orders<Msg>) {
Msg::Edit(UserEditMsg::FailedToCreateUser)
} else {
// deserialize the response
let message: Status = unwrap_or_return!(
let message: Status<Message> = unwrap_or_return!(
response.json().await,
Msg::Edit(UserEditMsg::FailedToCreateUser)
);
Expand Down Expand Up @@ -303,7 +302,7 @@ fn save_user(user: UserDelta, orders: &mut impl Orders<Msg>) {
Msg::Edit(UserEditMsg::FailedToCreateUser)
} else {
// deserialize the response
let message: Status = unwrap_or_return!(
let message: Status<Message> = unwrap_or_return!(
response.json().await,
Msg::Edit(UserEditMsg::FailedToCreateUser)
);
Expand Down
2 changes: 1 addition & 1 deletion locales/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ keywords = ["url", "link", "webpage", "actix", "web"]
license = "MIT OR Apache-2.0"
readme = "README.md"
repository = "https://github.com/enaut/pslink/"
version = "0.4.9"
version = "0.4.11"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

Expand Down
3 changes: 2 additions & 1 deletion pslink/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ license = "MIT OR Apache-2.0"
name = "pslink"
readme = "README.md"
repository = "https://github.com/enaut/pslink/"
version = "0.4.9"
version = "0.4.11"
[build-dependencies]
actix-web-static-files = "4.0"
static-files = "0.2"
Expand Down Expand Up @@ -46,6 +46,7 @@ serde = { version = "1.0", features = ["derive"] }
static-files = { version = "0.2", default-features = false }
thiserror = "2"
tracing-actix-web = "0.7"
uuid = { version = "1.13", features = ["v4"] }
tracing-opentelemetry = "0.28"
async-trait = "0.1"
enum-map = { version = "2.7", features = ["serde"] }
Expand Down
34 changes: 21 additions & 13 deletions pslink/src/views.rs
Original file line number Diff line number Diff line change
Expand Up @@ -282,9 +282,11 @@ pub async fn process_login_json(
Ok(h) => h,
Err(e) => {
info!("Failed to parse password hash for {}: {}", &u.username, e);
return Ok(HttpResponse::Unauthorized().json(Status::Error(Message {
message: "Failed to Login".to_string(),
})));
return Ok(HttpResponse::Unauthorized().json(Status::Error::<Message>(
Message {
message: "Failed to Login".to_string(),
},
)));
}
};
match argon2::Argon2::new_with_secret(
Expand All @@ -302,29 +304,35 @@ pub async fn process_login_json(
match Identity::login(&request.extensions(), session_token) {
Ok(_) => {
info!("Logged in user: {}", &u.username);
return Ok(HttpResponse::Ok().json(&u));
return Ok(HttpResponse::Ok().json(Status::Success(&u)));
}
Err(e) => {
info!("Failed to login: {}", e);
return Ok(HttpResponse::Unauthorized().json(Status::Error(Message {
message: "Failed to Login".to_string(),
})));
return Ok(HttpResponse::Unauthorized().json(
Status::Error::<Message>(Message {
message: "Failed to Login".to_string(),
}),
));
}
}
}
Err(e) => {
info!("Failed to login: {}", e);
return Ok(HttpResponse::Unauthorized().json(Status::Error(Message {
message: "Failed to Login".to_string(),
})));
return Ok(HttpResponse::Unauthorized().json(Status::Error::<Message>(
Message {
message: "Failed to Login".to_string(),
},
)));
}
}
}
Err(e) => {
info!("Failed to login: {}", e);
Ok(HttpResponse::Unauthorized().json(Status::Error(Message {
message: "Failed to Login".to_string(),
})))
Ok(
HttpResponse::Unauthorized().json(Status::Error::<Message>(Message {
message: "Failed to Login".to_string(),
})),
)
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion shared/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ license = "MIT OR Apache-2.0"
name = "pslink-shared"
readme = "../pslink/README.md"
repository = "https://github.com/enaut/pslink/"
version = "0.4.9"
version = "0.4.11"

[dependencies]
serde = { version = "1.0", features = ["derive"] }
Expand Down
4 changes: 2 additions & 2 deletions shared/src/apirequests/general.rs
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ pub struct Message {

/// Send a message on success and also one on error.
#[derive(Clone, Deserialize, Serialize, Debug)]
pub enum Status {
Success(Message),
pub enum Status<T> {
Success(T),
Error(Message),
}

0 comments on commit 8b2eba7

Please sign in to comment.