From 1faaf65aad53b15cea482ee42876863f427e0c43 Mon Sep 17 00:00:00 2001 From: Matthew Kaminski Date: Wed, 28 Aug 2024 21:55:23 -0400 Subject: [PATCH] Clean up imports --- src/capsules/register_form.rs | 7 ++++--- src/components/header.rs | 18 +++++++++--------- src/components/layout.rs | 5 ++--- src/global_state.rs | 11 +++-------- src/models/generic.rs | 2 ++ src/server/auth/forgot_password.rs | 3 +-- src/server/auth/login.rs | 24 +++++++----------------- src/server/auth/register.rs | 26 +++++++++----------------- src/server/routes.rs | 2 -- src/templates/mod.rs | 14 ++++---------- 10 files changed, 41 insertions(+), 71 deletions(-) diff --git a/src/capsules/register_form.rs b/src/capsules/register_form.rs index f027908..0e628c7 100644 --- a/src/capsules/register_form.rs +++ b/src/capsules/register_form.rs @@ -4,8 +4,6 @@ use serde::{Deserialize, Serialize}; use sycamore::prelude::*; use web_sys::Event; -use crate::models::generic::GenericResponse; - cfg_if::cfg_if! { if #[cfg(client)] { use crate::{ @@ -14,7 +12,10 @@ cfg_if::cfg_if! { state_enums::{LoginState, OpenState}, templates::{get_api_path}, global_state::{self, AppStateRx}, - models::auth::WebAuthInfo, + models::{ + auth::WebAuthInfo, + generic::GenericResponse + }, }; use reqwest::StatusCode; } diff --git a/src/components/header.rs b/src/components/header.rs index 9f0560c..2c5127f 100644 --- a/src/components/header.rs +++ b/src/components/header.rs @@ -1,20 +1,20 @@ -use std::sync::Arc; - use perseus::prelude::*; use sycamore::prelude::*; use web_sys::Event; use crate::{ - capsules::{ - forgot_password_form::{ForgotPasswordFormProps, FORGOT_PASSWORD_FORM}, - login_form::{LoginFormProps, LOGIN_FORM}, - }, - endpoints::LOGIN, global_state::AppStateRx, - models::auth::LoginInfo, - state_enums::{GameState, LoginState, OpenState}, + state_enums::{GameState, LoginState}, }; +cfg_if::cfg_if! { + if #[cfg(client)] { + use crate::{ + state_enums::OpenState, + }; + } +} + #[derive(Prop)] pub struct HeaderProps<'a> { pub game: GameState, diff --git a/src/components/layout.rs b/src/components/layout.rs index 7734ca2..14fdf72 100644 --- a/src/components/layout.rs +++ b/src/components/layout.rs @@ -4,13 +4,12 @@ use crate::{ login_form::{LoginFormProps, LOGIN_FORM}, register_form::{RegisterFormProps, REGISTER_FORM}, }, - components::header::{Header, HeaderProps}, + components::header::Header, global_state::AppStateRx, - state_enums::{GameState, LoginState, OpenState}, + state_enums::{GameState, OpenState}, }; use perseus::prelude::*; use sycamore::prelude::*; -use web_sys::Event; #[derive(Prop)] pub struct LayoutProps<'a, G: Html> { diff --git a/src/global_state.rs b/src/global_state.rs index 98c0472..104413f 100644 --- a/src/global_state.rs +++ b/src/global_state.rs @@ -4,16 +4,10 @@ use perseus::{prelude::*, state::GlobalStateCreator}; use serde::{Deserialize, Serialize}; use crate::{ - models::auth::{Claims, WebAuthInfo}, + models::auth::WebAuthInfo, state_enums::{LoginState, OpenState}, }; -cfg_if::cfg_if! { - if #[cfg(engine)] { - - } -} - #[derive(Serialize, Deserialize, ReactiveState, Clone)] #[rx(alias = "AppStateRx")] pub struct AppState { @@ -33,6 +27,7 @@ pub struct AuthData { } impl AuthDataRx { + #[cfg(client)] pub fn handle_log_in(&self, auth_info: WebAuthInfo) { // Save new token to persistent storage if auth_info.remember_me { @@ -56,7 +51,7 @@ impl AuthDataRx { self.auth_info.set(Some(auth_info)); self.state.set(LoginState::Authenticated); } - + #[cfg(client)] pub fn handle_log_out(&self) { // Delete persistent storage // TODO -> handle error if local storage is not readable in browser diff --git a/src/models/generic.rs b/src/models/generic.rs index 61938b8..7aa4029 100644 --- a/src/models/generic.rs +++ b/src/models/generic.rs @@ -6,11 +6,13 @@ pub struct GenericResponse { } impl GenericResponse { + #[cfg(engine)] pub fn ok() -> Self { GenericResponse { status: String::new(), } } + #[cfg(engine)] pub fn err(msg: &str) -> Self { GenericResponse { status: msg.to_string(), diff --git a/src/server/auth/forgot_password.rs b/src/server/auth/forgot_password.rs index 0df2656..fc7d87a 100644 --- a/src/server/auth/forgot_password.rs +++ b/src/server/auth/forgot_password.rs @@ -1,9 +1,8 @@ use crate::{models::auth::ForgotPasswordRequest, server::server_state::ServerState}; use axum::{ extract::{Json, State}, - http::{HeaderMap, StatusCode}, + http::StatusCode, }; -use sea_orm::DatabaseConnection; pub async fn post_forgot_password( State(state): State, diff --git a/src/server/auth/login.rs b/src/server/auth/login.rs index fec2d93..30a4251 100644 --- a/src/server/auth/login.rs +++ b/src/server/auth/login.rs @@ -1,28 +1,18 @@ -use crate::entity::prelude::*; -use crate::models::auth::{Claims, LoginInfo, LoginResponse}; use crate::{ - entity::user::{self, Entity}, - models::auth::RegisterRequest, + entity::{ + prelude::*, + user::{self}, + }, + models::auth::{Claims, LoginInfo, LoginResponse}, server::server_state::ServerState, }; -use argon2::password_hash::rand_core::OsRng; -use argon2::password_hash::SaltString; -use argon2::Argon2; -use argon2::PasswordHash; -use argon2::PasswordHasher; -use argon2::PasswordVerifier; +use argon2::{Argon2, PasswordHash, PasswordVerifier}; use axum::{ extract::{Json, State}, http::{HeaderMap, StatusCode}, }; -use futures::sink::Fanout; -use sea_orm::ColumnTrait; -use sea_orm::EntityTrait; -use sea_orm::InsertResult; -use sea_orm::QueryFilter; -use sea_orm::Set; - use jsonwebtoken::{decode, encode, DecodingKey, EncodingKey, Header, Validation}; +use sea_orm::{ColumnTrait, EntityTrait, QueryFilter}; pub async fn credentials_are_correct(username: &str, password: &str, state: &ServerState) -> bool { // Get user diff --git a/src/server/auth/register.rs b/src/server/auth/register.rs index e273a8a..e2204f9 100644 --- a/src/server/auth/register.rs +++ b/src/server/auth/register.rs @@ -1,23 +1,15 @@ -use crate::entity::prelude::*; -use crate::models::generic::GenericResponse; -use argon2::password_hash::rand_core::OsRng; -use argon2::password_hash::SaltString; -use argon2::Argon2; -use argon2::PasswordHash; -use argon2::PasswordHasher; -use axum::{extract::State, http::StatusCode, Json}; -use chrono::Utc; -use sea_orm::ColumnTrait; -use sea_orm::EntityTrait; -use sea_orm::InsertResult; -use sea_orm::QueryFilter; -use sea_orm::Set; - use crate::{ - entity::user::{self, Entity}, - models::auth::RegisterRequest, + entity::{prelude::*, user}, + models::{auth::RegisterRequest, generic::GenericResponse}, server::server_state::ServerState, }; +use argon2::{ + password_hash::{rand_core::OsRng, SaltString}, + Argon2, PasswordHash, PasswordHasher, +}; +use axum::{extract::State, http::StatusCode, Json}; +use chrono::Utc; +use sea_orm::{ColumnTrait, EntityTrait, QueryFilter, Set}; pub async fn post_register_user( State(state): State, diff --git a/src/server/routes.rs b/src/server/routes.rs index 6efbe3b..16c52ea 100644 --- a/src/server/routes.rs +++ b/src/server/routes.rs @@ -1,8 +1,6 @@ // (Server only) Routes use crate::endpoints::{FORGOT_PASSWORD, LOGIN, LOGIN_TEST, REGISTER}; use axum::routing::{post, Router}; -use futures::executor::block_on; -use sea_orm::Database; use super::{ auth::{ diff --git a/src/templates/mod.rs b/src/templates/mod.rs index a7a618f..d6460a6 100644 --- a/src/templates/mod.rs +++ b/src/templates/mod.rs @@ -6,15 +6,9 @@ pub mod overall_board; #[cfg(client)] use perseus::utils::get_path_prefix_client; +#[cfg(client)] pub fn get_api_path(path: &str) -> String { - #[cfg(engine)] - { - path.to_string() - } - #[cfg(client)] - { - let origin = web_sys::window().unwrap().origin(); - let base_path = get_path_prefix_client(); - format!("{}{}{}", origin, base_path, path) - } + let origin = web_sys::window().unwrap().origin(); + let base_path = get_path_prefix_client(); + format!("{}{}{}", origin, base_path, path) }