diff --git a/web/src/app.rs b/web/src/app.rs
index 6bd0b9e6..f6183718 100644
--- a/web/src/app.rs
+++ b/web/src/app.rs
@@ -17,6 +17,7 @@ pub fn App() -> impl IntoView {
let home_tl = Timeline::new(format!("{URL_BASE}/users/{}/inbox/page", username.get().unwrap_or_default()));
let server_tl = Timeline::new(format!("{URL_BASE}/inbox/page"));
+ let user_tl = Timeline::new(format!("{URL_BASE}/users/{}/outbox/page", username.get().unwrap_or_default()));
let screen_width = window().screen().map(|x| x.avail_width().unwrap_or_default()).unwrap_or_default();
@@ -94,8 +95,8 @@ pub fn App() -> impl IntoView {
-
+ } />
} />
diff --git a/web/src/page.rs b/web/src/page.rs
index c3b6558a..05bf3982 100644
--- a/web/src/page.rs
+++ b/web/src/page.rs
@@ -31,7 +31,7 @@ pub fn ConfigPage() -> impl IntoView {
}
#[component]
-pub fn UserPage() -> impl IntoView {
+pub fn UserPage(tl: Timeline) -> impl IntoView {
let params = use_params_map();
let auth = use_context::().expect("missing auth context");
let id = params.get().get("id").cloned().unwrap_or_default();
@@ -71,6 +71,10 @@ pub fn UserPage() -> impl IntoView {
let following = object.following().get().map(|x| x.total_items().unwrap_or(0)).unwrap_or(0);
let followers = object.followers().get().map(|x| x.total_items().unwrap_or(0)).unwrap_or(0);
let statuses = object.outbox().get().map(|x| x.total_items().unwrap_or(0)).unwrap_or(0);
+ let tl_url = format!("{}/outbox/page", Uri::api("users", &id.clone(), false));
+ if !tl.next.get().starts_with(&tl_url) {
+ tl.reset(tl_url);
+ }
view! {
-
+
}.into_view()
},
}}