<script setup lang="ts"> const props = defineProps<{ modelValue?: boolean }>() const params = useRoute().params const accountName = $computed(() => params.account as string) const account = await fetchAccountByName(accountName) const tabNames = ['Posts', 'Posts and replies'] as const // Don't use local storage because it is better to default to Posts every time you visit a user's profile. const tab = $ref('Posts') const paginator1 = masto.accounts.getStatusesIterable(account.id, { excludeReplies: true }) const paginator2 = masto.accounts.getStatusesIterable(account.id, { excludeReplies: false }) const paginator = $computed(() => { return tab === 'Posts' ? paginator1 : paginator2 }) </script> <template> <div> <CommonTabs v-model="tab" :options="tabNames" /> <KeepAlive> <TimelinePaginator :key="tab" :paginator="paginator" /> </KeepAlive> </div> </template>