From 72d0478b6f7bdf5ea5d0bf528c051e73f055f6ba Mon Sep 17 00:00:00 2001 From: Julien Calixte Date: Tue, 10 Mar 2026 15:32:44 +0100 Subject: [PATCH] feat: sync public notes tab with URL search params --- src/views/PublicNoteListView.vue | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/views/PublicNoteListView.vue b/src/views/PublicNoteListView.vue index db61a40..ce91963 100644 --- a/src/views/PublicNoteListView.vue +++ b/src/views/PublicNoteListView.vue @@ -5,12 +5,19 @@ import SignInAtproto from "@/components/SignInAtproto.vue" import { useATProtoLogin } from "@/hooks/useATProtoLogin.hook" import { useFollows } from "@/hooks/useFollows.hook" import { usePublicNoteList } from "@/hooks/usePublicNoteList.hook" -import { ref } from "vue" +import { computed } from "vue" +import { useRoute, useRouter } from "vue-router" + +const route = useRoute() +const router = useRouter() const { did, isLoggedIn } = useATProtoLogin() const { follows } = useFollows(did) -const tab = ref<'all' | 'following'>('all') +const tab = computed<'all' | 'following'>({ + get: () => route.query.tab === 'following' ? 'following' : 'all', + set: (value) => router.replace({ query: { ...route.query, tab: value === 'all' ? undefined : value } }), +}) const all = usePublicNoteList() const following = usePublicNoteList({ followsFilter: follows }) @@ -27,6 +34,7 @@ const following = usePublicNoteList({ followsFilter: follows })
All Following +