From d547b283cefae2e54d136242f4f6f59112bbe733 Mon Sep 17 00:00:00 2001 From: AlejandroAkbal <37181533+AlejandroAkbal@users.noreply.github.com> Date: Sat, 14 Mar 2026 07:36:53 -0700 Subject: [PATCH] feat: add posts layout preference --- composables/useUserSettings.ts | 7 + pages/posts/[domain].vue | 251 ++++++++++++++++++++++----------- pages/settings.vue | 16 ++- 3 files changed, 193 insertions(+), 81 deletions(-) diff --git a/composables/useUserSettings.ts b/composables/useUserSettings.ts index 609121fa..284ff03f 100644 --- a/composables/useUserSettings.ts +++ b/composables/useUserSettings.ts @@ -1,8 +1,11 @@ import { useLocalStorage } from '@vueuse/core' +export type PostsLayout = 'list' | 'grid' + export default function () { let postFullSizeImages = ref(false) let postsPerPage = ref(29) + let postsLayout = ref('list') let autoplayAnimatedMedia = ref(false) let blockAiGeneratedImages = ref(false) @@ -13,6 +16,9 @@ export default function () { postsPerPage = useLocalStorage('settings-postsPerPage', 29, { writeDefaults: false }) + postsLayout = useLocalStorage('settings-postsLayout', 'list', { + writeDefaults: false + }) autoplayAnimatedMedia = useLocalStorage('settings-autoplayAnimatedMedia', false, { writeDefaults: false }) @@ -24,6 +30,7 @@ export default function () { return { postFullSizeImages, postsPerPage, + postsLayout, autoplayAnimatedMedia, blockAiGeneratedImages } diff --git a/pages/posts/[domain].vue b/pages/posts/[domain].vue index d2182468..05de53f4 100644 --- a/pages/posts/[domain].vue +++ b/pages/posts/[domain].vue @@ -1,5 +1,5 @@