diff --git a/crates/client/src/modules/post/posts/mod.rs b/crates/client/src/modules/post/posts/mod.rs index e0b45ca..0757069 100644 --- a/crates/client/src/modules/post/posts/mod.rs +++ b/crates/client/src/modules/post/posts/mod.rs @@ -1,9 +1,9 @@ use anyhow::{anyhow, bail, Result}; use graphql_client::reqwest::post_graphql; use graphql_client::GraphQLQuery; -use pxid::Pxid; - use posts::{PostsPostsEdges, PostsPostsPageInfo, Variables}; +use pxid::Pxid; +use serde::Serialize; use crate::{DateTime, GRAPHQL_PATH}; @@ -11,7 +11,7 @@ use super::PostClient; #[derive(GraphQLQuery)] #[graphql( - response_derives = "Clone,Debug,Deserialize", + response_derives = "Clone,Debug,Deserialize,Serializable", schema_path = "schema.json", query_path = "src/modules/post/posts/Posts.gql" )] diff --git a/crates/web/src/components/feed/mod.rs b/crates/web/src/components/feed/mod.rs index 65c7640..d4b6bad 100644 --- a/crates/web/src/components/feed/mod.rs +++ b/crates/web/src/components/feed/mod.rs @@ -1,11 +1,28 @@ mod post; -use leptos::{component, view, IntoView}; +use leptos::{component, create_resource, view, IntoView}; +use townhall_client::Client; use self::post::Post; #[component] pub fn Feed() -> impl IntoView { + let posts = create_resource( + || (), + |_| async move { + let client = Client::new("http://localhost:8080"); + + let posts = client + .unwrap() + .post + .posts(None, None, Some(10), None) + .await + .unwrap(); + + posts + }, + ); + view! {