use std::sync::Arc; use leptos::*; use leptos_router::*; use crate::prelude::*; #[component] pub fn SearchPage() -> impl IntoView { let auth = use_context::().expect("missing auth context"); let user = create_local_resource( move || use_query_map().get().get("q").cloned().unwrap_or_default(), move |q| { let user_fetch = Uri::api(U::User, &q, true); async move { Some(Arc::new(Http::fetch::(&user_fetch, auth).await.ok()?)) } } ); let object = create_local_resource( move || use_query_map().get().get("q").cloned().unwrap_or_default(), move |q| { let object_fetch = Uri::api(U::Object, &q, true); async move { Some(Arc::new(Http::fetch::(&object_fetch, auth).await.ok()?)) } } ); view! { search
users
{move || match user.get() { None => view! {

searching...

}, Some(None) => view! {

N/A

}, Some(Some(u)) => view! {

}, }}
objects
{move || match object.get() { None => view! {

searching...

}, Some(None) => view!{

N/A

}, Some(Some(o)) => view! {

}, }} } }