chore(dioxus): Upgraded to dioxus 0.6.0

Signed-off-by: Tuan-Dat Tran <tuan-dat.tran@tudattr.dev>
This commit is contained in:
Tuan-Dat Tran
2024-12-11 23:28:12 +01:00
parent ac80065e82
commit 74f68eff5b
21 changed files with 3317 additions and 1211 deletions

View File

@@ -1,11 +1,9 @@
use dioxus::prelude::*;
use dioxus_sdk::{i18n::*, translate};
use dioxus_i18n::{prelude::i18n, t, unic_langid::langid};
use crate::Route;
pub fn Header() -> Element {
let i18 = use_i18();
rsx! {
nav {
div {
@@ -17,13 +15,13 @@ pub fn Header() -> Element {
Link {
to: Route::Home {},
class: "rounded-md shadow-sm",
img { src:"/pictures/ClackCat_t.webp", class:"rounded-full h-8", alt:"TuDatTr Logo" },
img { src:asset!("./assets/pictures/ClackCat_t.webp"), class:"rounded-full h-8", alt:"TuDatTr Logo" },
},
},
li { HeaderLink { url: Route::Home {}, text: translate!(i18, "headers.home")} },
li { HeaderLink { url: Route::CV {}, text: translate!(i18, "headers.cv") } },
li { HeaderLink { url: Route::PublicationsProjects {}, text: translate!(i18, "headers.publications_projects") } },
li { HeaderLink { url: Route::Impressum {}, text: translate!(i18, "headers.about") } },
li { HeaderLink { url: Route::Home {}, text: t!("headers_home")} },
li { HeaderLink { url: Route::CV {}, text: t!("headers_cv") } },
li { HeaderLink { url: Route::PublicationsProjects {}, text: t!("headers_publications_projects") } },
li { HeaderLink { url: Route::Impressum {}, text: t!("headers_about") } },
li { LanguageButtonGroup {} },
},
}
@@ -33,10 +31,10 @@ pub fn Header() -> Element {
#[component]
fn LanguageButtonGroup() -> Element {
let mut i18 = use_i18();
let mut i18n = i18n();
let change_to_english = move |_| i18.set_language("en-GB".parse().unwrap());
let change_to_german = move |_| i18.set_language("de-DE".parse().unwrap());
let change_to_english = move |_| i18n.set_language(langid!("en-GB"));
let change_to_german = move |_| i18n.set_language(langid!("de-DE"));
rsx! {
div {
@@ -44,11 +42,11 @@ fn LanguageButtonGroup() -> Element {
button {
class: "px-4 py-2 text-sm font-medium text-gray-900 bg-white border border-gray-200 rounded-s-lg hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:ring-2 focus:ring-blue-700 focus:text-blue-700 dark:bg-gray-800 dark:border-gray-700 dark:text-white dark:hover:text-white dark:hover:bg-gray-700 dark:focus:ring-blue-500 dark:focus:text-white",
onclick: change_to_english,
label { { translate!(i18, "headers.language_buttons.english") } } },
label { { t!("headers_language_buttons_english") } } },
button {
class: "px-4 py-2 text-sm font-medium text-gray-900 bg-white border border-gray-200 rounded-e-lg hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:ring-2 focus:ring-blue-700 focus:text-blue-700 dark:bg-gray-800 dark:border-gray-700 dark:text-white dark:hover:text-white dark:hover:bg-gray-700 dark:focus:ring-blue-500 dark:focus:text-white",
onclick: change_to_german,
label { { translate!(i18, "headers.language_buttons.german") } } }
label { { t!("headers_language_buttons_german") } } }
}
}
}