From 9ab99697461e06782efd1bf04ef13a512608c064 Mon Sep 17 00:00:00 2001 From: kaiyohugo <41114603+KAIYOHUGO@users.noreply.github.com> Date: Thu, 1 Aug 2024 12:23:46 +0800 Subject: [PATCH] refactor(Frontend): :construction: Refactor frontend style & code --- frontend/src/components/badge.rs | 4 + frontend/src/components/button.rs | 35 ++-- frontend/src/components/catch.rs | 42 ----- frontend/src/components/editor.rs | 156 ++++++++-------- frontend/src/components/input.rs | 65 +++++-- frontend/src/components/mod.rs | 10 +- frontend/src/components/modal.rs | 10 +- frontend/src/components/toast.rs | 2 +- frontend/src/pages/create/mod.rs | 3 + frontend/src/pages/create/problem.rs | 78 ++++++++ frontend/src/pages/home.rs | 8 +- frontend/src/pages/login.rs | 46 +++-- frontend/src/pages/mod.rs | 41 ++--- frontend/src/pages/pages.rs | 42 ++--- frontend/src/pages/problem.rs | 255 ++++++++++----------------- frontend/src/pages/problems.rs | 15 +- frontend/src/pages/rank.rs | 4 +- 17 files changed, 423 insertions(+), 393 deletions(-) create mode 100644 frontend/src/components/badge.rs delete mode 100644 frontend/src/components/catch.rs create mode 100644 frontend/src/pages/create/mod.rs create mode 100644 frontend/src/pages/create/problem.rs diff --git a/frontend/src/components/badge.rs b/frontend/src/components/badge.rs new file mode 100644 index 00000000..e162c73e --- /dev/null +++ b/frontend/src/components/badge.rs @@ -0,0 +1,4 @@ +use leptos::*; + +#[component] +pub fn Badge() -> impl IntoView {} diff --git a/frontend/src/components/button.rs b/frontend/src/components/button.rs index 0a675ad3..3e36aa63 100644 --- a/frontend/src/components/button.rs +++ b/frontend/src/components/button.rs @@ -1,34 +1,37 @@ -use leptos::{ev::MouseEvent, *}; +use leptos::*; +use tailwind_fuse::*; -use super::Merge; +#[derive(TwVariant)] +pub enum ButtonVariant { + #[tw(default, class = "text-background bg-primary")] + Primary, + #[tw(class = "text-background bg-secondary")] + Secondary, + #[tw(class = "text-slate-950 bg-accent")] + Accent, +} #[component] pub fn Button( - #[prop(into, default = "button".to_owned().into())] kind: MaybeSignal< + #[prop(into, default = "button".to_owned().into())] type_: MaybeSignal< String, >, - #[prop(into, default = false.into())] disabled: MaybeSignal, - #[prop(into, optional)] on_click: Option>, + #[prop(into, optional)] variant: ButtonVariant, + #[prop(into, optional)] disabled: MaybeSignal, #[prop(into, optional)] id: Option, - #[prop(into, optional)] class: Option, + #[prop(into, default = "".into())] class: String, children: Children, ) -> impl IntoView { view! {