From d3d0e9b83c6158060a4752dbecd6e895be911abb Mon Sep 17 00:00:00 2001 From: schn33fuchs Date: Tue, 26 May 2026 20:29:34 +0200 Subject: [PATCH] Cleanup --- README.md | 432 +++++++++++++++++++++++++----------------------------- 1 file changed, 203 insertions(+), 229 deletions(-) diff --git a/README.md b/README.md index 13c8989..1ff77e3 100644 --- a/README.md +++ b/README.md @@ -49,237 +49,211 @@ The HTML code for the frontend can be generated by using `trunk build`. The resu ```mermaid classDiagram direction RL - class backend_src_cookie_Error { - +status: &'static str - +message: String + namespace Backend { + class cookie_Error { + +status: &'static str + +message: String + } + class TicketResponse { + +id: i32 + +category: String + +betreff: String + +description: String + +room: i16 + +status: String + +date: chrono::DateTime~chrono::Utc~ + +user_id: i16 + +user_first_name: String + +user_last_name: String + } + class User { + +id: i16 + +last_name: String + +first_name: String + +username: String + +is_admin: bool + +pwd: String + } + class TicketCreateScheme { + +category: String + +betreff: String + +description: String + +room: i16 + } + class TicketUpdateScheme { + +status: String + } + class UserUpdateScheme { + +id: i16 + +first_name: String + +last_name: String + +username: String + +make_admin: bool + +new_pwd: String + } + class UserCreateScheme { + +first_name: String + +last_name: String + +username: String + +is_admin: bool + +pwd: String + } + class LoginScheme { + +username: String + +pwd: String + } + class FilteredUser { + +id: i16 + +first_name: String + +last_name: String + +username: String + +is_admin: bool + } + class Claims { + +sub: String + +issued: usize + +expires: usize + } + class AppState { + -db: PgPool + -env: Env + } + class Env { + +db_url: String + +token_secret: String + +origin: String + +backend_port: String + +load() Env + } } - class backend_src_TicketResponse { - +id: i32 - +category: String - +betreff: String - +description: String - +room: i16 - +status: String - +date: chrono::DateTime~chrono::Utc~ - +user_id: i16 - +user_first_name: String - +user_last_name: String + namespace Frontend { + class TicketCreateScheme { + +category: String + +betreff: String + +description: String + +room: i16 + } + class TicketUpdateScheme { + +status: String + } + class Ticket { + +id: i32 + +category: String + +betreff: String + +description: String + +room: i16 + +status: String + +date: chrono::DateTime~chrono::Utc~ + +user_id: i16 + +user_first_name: String + +user_last_name: String + } + class TicketProps { + +id: i32 + } + class ActiveUser { + +id: Option~i16~ + +is_admin: bool + } + class ApiError { + -message: String + -_status: String + } + class SidebarExpandState { + +ticket_open: bool + +users_open: bool + } + class Default { + +default() Self + } + class SidebarState { + +expand: SidebarExpandState + +set_tickets_open: Callback~bool~ + +toggle_tickets: Callback~()~ + +set_users_open: Callback~bool~ + +toggle_users: Callback~()~ + +new(expand:SidebarExpandState, set_tickets_open:Callback~bool~, toggle_tickets:Callback~()~, set_users_open:Callback~bool~, toggle_users:Callback~()~) Self + } + class SidebarProps { + +children: Children + } + class TicketPartial { + -date: DateTime~Utc~ + -room: i16 + -user_id: i16 + } + class UserPartial { + -id: i16 + -first_name: String + -last_name: String + } + class RoomTotalsProps { + -tickets: Vec~TicketPartial~ + } + class UserTotalProps { + -users: Vec~UserPartial~ + -tickets: Vec~TicketPartial~ + } + class AdminSetupScheme { + +first_name: String + +last_name: String + +username: String + +pwd: String + } + class UserCreateScheme { + +first_name: String + +last_name: String + +username: String + +is_admin: bool + +pwd: String + } + class LoginScheme { + +username: String + +pwd: String + } + class UserUpdateScheme { + +id: i16 + +first_name: String + +last_name: String + +username: String + +make_admin: bool + +new_pwd: String + } + class FilteredUser { + +id: i16 + +first_name: String + +last_name: String + +username: String + +is_admin: bool + } + class UserProps { + +id: i16 + } + class ApiError { + -message: String + -_status: String + } + class AuthState { + +is_authenticated: Option~bool~ + +is_admin: Option~bool~ + } + class ProtectedRouteProps { + +children: Children + +admin_page: bool + } + class SidebarShellProps { + +children: Children + } + class AdminCheckWrapperProps { + +children: Children + } } - class backend_src_User { - +id: i16 - +last_name: String - +first_name: String - +username: String - +is_admin: bool - +pwd: String - } - class backend_src_TicketCreateScheme { - +category: String - +betreff: String - +description: String - +room: i16 - } - class backend_src_TicketUpdateScheme { - +status: String - } - class backend_src_UserUpdateScheme { - +id: i16 - +first_name: String - +last_name: String - +username: String - +make_admin: bool - +new_pwd: String - } - class backend_src_UserCreateScheme { - +first_name: String - +last_name: String - +username: String - +is_admin: bool - +pwd: String - } - class backend_src_LoginScheme { - +username: String - +pwd: String - } - class backend_src_FilteredUser { - +id: i16 - +first_name: String - +last_name: String - +username: String - +is_admin: bool - } - class backend_src_Claims { - +sub: String - +issued: usize - +expires: usize - } - class backend_src_AppState { - -db: PgPool - -env: backend_src_Env - } - class backend_src_Env { - +db_url: String - +token_secret: String - +origin: String - +backend_port: String - +load() backend_src_Env - } - class backend_target_debug_build_chrono-tz-56cec396bfb3cea1_out_FromStr { - +from_str(s:&str) Result~Self, Self::Err~ - } - class backend_target_debug_build_chrono-tz-56cec396bfb3cea1_out_Tz { - +name() &'static str - } - class backend_target_debug_build_chrono-tz-56cec396bfb3cea1_out_Debug { - +fmt(f:&mut Formatter) fmt::Result - } - class backend_target_debug_build_chrono-tz-56cec396bfb3cea1_out_Display { - +fmt(f:&mut Formatter) fmt::Result - } - class backend_target_debug_build_chrono-tz-56cec396bfb3cea1_out_TimeSpans { - +timespans() FixedTimespanSet - } - class backend_target_debug_build_chrono-tz-261584f9cc573a32_out_FromStr { - +from_str(s:&str) Result~Self, Self::Err~ - } - class backend_target_debug_build_chrono-tz-261584f9cc573a32_out_Tz { - +name() &'static str - } - class backend_target_debug_build_chrono-tz-261584f9cc573a32_out_Debug { - +fmt(f:&mut Formatter) fmt::Result - } - class backend_target_debug_build_chrono-tz-261584f9cc573a32_out_Display { - +fmt(f:&mut Formatter) fmt::Result - } - class backend_target_debug_build_chrono-tz-261584f9cc573a32_out_TimeSpans { - +timespans() FixedTimespanSet - } - class frontend_src_pages_TicketCreateScheme { - +category: String - +betreff: String - +description: String - +room: i16 - } - class frontend_src_pages_TicketUpdateScheme { - +status: String - } - class frontend_src_pages_Ticket { - +id: i32 - +category: String - +betreff: String - +description: String - +room: i16 - +status: String - +date: chrono::DateTime~chrono::Utc~ - +user_id: i16 - +user_first_name: String - +user_last_name: String - } - class frontend_src_pages_TicketProps { - +id: i32 - } - class frontend_src_pages_ActiveUser { - +id: Option~i16~ - +is_admin: bool - } - class frontend_src_pages_ApiError { - -message: String - -_status: String - } - class frontend_src_pages_SidebarExpandState { - +ticket_open: bool - +users_open: bool - } - class frontend_src_pages_Default { - +default() Self - } - class frontend_src_pages_SidebarState { - +expand: frontend_src_pages_SidebarExpandState - +set_tickets_open: Callback~bool~ - +toggle_tickets: Callback~()~ - +set_users_open: Callback~bool~ - +toggle_users: Callback~()~ - +new(expand:frontend_src_pages_SidebarExpandState, set_tickets_open:Callback~bool~, toggle_tickets:Callback~()~, set_users_open:Callback~bool~, toggle_users:Callback~()~) Self - } - class frontend_src_pages_SidebarProps { - +children: Children - } - class frontend_src_pages_TicketPartial { - -date: DateTime~Utc~ - -room: i16 - -user_id: i16 - } - class frontend_src_pages_UserPartial { - -id: i16 - -first_name: String - -last_name: String - } - class frontend_src_pages_RoomTotalsProps { - -tickets: Vec~frontend_src_pages_TicketPartial~ - } - class frontend_src_pages_UserTotalProps { - -users: Vec~frontend_src_pages_UserPartial~ - -tickets: Vec~frontend_src_pages_TicketPartial~ - } - class frontend_src_pages_AdminSetupScheme { - +first_name: String - +last_name: String - +username: String - +pwd: String - } - class frontend_src_pages_UserCreateScheme { - +first_name: String - +last_name: String - +username: String - +is_admin: bool - +pwd: String - } - class frontend_src_pages_LoginScheme { - +username: String - +pwd: String - } - class frontend_src_pages_UserUpdateScheme { - +id: i16 - +first_name: String - +last_name: String - +username: String - +make_admin: bool - +new_pwd: String - } - class frontend_src_pages_FilteredUser { - +id: i16 - +first_name: String - +last_name: String - +username: String - +is_admin: bool - } - class frontend_src_pages_UserProps { - +id: i16 - } - class frontend_src_pages_ApiError { - -message: String - -_status: String - } - class frontend_src_AuthState { - +is_authenticated: Option~bool~ - +is_admin: Option~bool~ - } - class frontend_src_ProtectedRouteProps { - +children: Children - +admin_page: bool - } - class frontend_src_SidebarShellProps { - +children: Children - } - class frontend_src_AdminCheckWrapperProps { - +children: Children - } - backend_src_AppState --> backend_src_Env - backend_src_Env ..> backend_src_Env - frontend_src_pages_SidebarState --> frontend_src_pages_SidebarExpandState - frontend_src_pages_RoomTotalsProps --> frontend_src_pages_TicketPartial - frontend_src_pages_UserTotalProps --> frontend_src_pages_UserPartial - frontend_src_pages_UserTotalProps --> frontend_src_pages_TicketPartial + AppState --> Env + Env ..> Env + SidebarState --> SidebarExpandState + RoomTotalsProps --> TicketPartial + UserTotalProps --> UserPartial + UserTotalProps --> TicketPartial ```