diff --git a/src/frontend/components/connect.rs b/src/frontend/components/connect.rs deleted file mode 100644 index 1d85ef6..0000000 --- a/src/frontend/components/connect.rs +++ /dev/null @@ -1,37 +0,0 @@ -use crate::frontend::{api::CLIENT, utils::errors::FrontendResultExt}; -use codee::{Decoder, Encoder}; -use leptos::prelude::*; -use std::fmt::Debug; -use url::Url; - -#[component] -pub fn ConnectView(res: Resource) -> impl IntoView -where - T: Clone + Send + Sync + 'static, - R: Encoder + Decoder + Send + Sync + 'static, - >::Error: Debug, - >::Encoded: IntoEncodedString, - >::Encoded: FromEncodedStr, - >::Error: Debug, - <>::Encoded as leptos::prelude::FromEncodedStr>::DecodingError: Debug, -{ - let connect_ibis_wiki = Action::new(move |_: &()| async move { - CLIENT - .resolve_instance(Url::parse("https://ibis.wiki").expect("parse ibis.wiki url")) - .await - .error_popup(|_| res.refetch()); - }); - - view! { -
- -
- } -} diff --git a/src/frontend/components/mod.rs b/src/frontend/components/mod.rs index 3215212..53266c7 100644 --- a/src/frontend/components/mod.rs +++ b/src/frontend/components/mod.rs @@ -2,7 +2,6 @@ pub mod article_editor; pub mod article_nav; pub mod comment; pub mod comment_editor; -pub mod connect; pub mod credentials; pub mod edit_list; pub mod instance_follow_button; diff --git a/src/frontend/pages/explore.rs b/src/frontend/pages/explore.rs index 603cb96..1b6c855 100644 --- a/src/frontend/pages/explore.rs +++ b/src/frontend/pages/explore.rs @@ -2,12 +2,17 @@ use crate::{ common::instance::DbInstance, frontend::{ api::CLIENT, - components::{connect::ConnectView, suspense_error::SuspenseError}, - utils::formatting::{instance_title_with_domain, instance_updated}, + components::suspense_error::SuspenseError, + utils::{ + errors::{FrontendResult, FrontendResultExt}, + formatting::{instance_title_with_domain, instance_updated}, + }, }, }; +use codee::string::JsonSerdeCodec; use leptos::prelude::*; use leptos_meta::Title; +use url::Url; #[component] pub fn Explore() -> impl IntoView { @@ -58,3 +63,26 @@ pub fn instance_card(i: &DbInstance) -> impl IntoView { } } + +#[component] +fn ConnectView(res: Resource>, JsonSerdeCodec>) -> impl IntoView { + let connect_ibis_wiki = Action::new(move |_: &()| async move { + CLIENT + .resolve_instance(Url::parse("https://ibis.wiki").expect("parse ibis.wiki url")) + .await + .error_popup(|_| res.refetch()); + }); + + view! { +
+ +
+ } +}