From 19bc4e8a2313d55bd50d277c4af1ebf02e9b4289 Mon Sep 17 00:00:00 2001 From: indigo Date: Sat, 7 Mar 2026 09:33:44 +0800 Subject: [PATCH] Add function for sidebar shot column switch --- .../src/components/activity/ActivityFeed.vue | 2 +- frontend/src/components/layout/AppSidebar.vue | 13 +- .../components/shot/EditableTaskStatus.vue | 2 +- frontend/src/components/shot/ShotBrowser.vue | 35 +-- .../shot/ShotColumnVisibilityControl.vue | 33 ++- .../src/components/shot/ShotsDataTable.vue | 2 + .../ui/sidebar/SidebarColumnSwitch.vue | 208 ++++++++++++++++++ frontend/src/router/index.ts | 6 + frontend/src/stores/columnVisibility.ts | 111 ++++++++++ frontend/src/style.css | 22 ++ frontend/src/types/activity.ts | 1 + frontend/src/vue-shims.d.ts | 10 +- .../.openspec.yaml | 2 + .../design.md | 92 ++++++++ .../proposal.md | 27 +++ .../specs/shot-column-display-switch/spec.md | 51 +++++ .../tasks.md | 41 ++++ 17 files changed, 632 insertions(+), 26 deletions(-) create mode 100644 frontend/src/components/ui/sidebar/SidebarColumnSwitch.vue create mode 100644 frontend/src/stores/columnVisibility.ts create mode 100644 openspec/changes/add-shot-data-table-column-display-switch-to-sidebar/.openspec.yaml create mode 100644 openspec/changes/add-shot-data-table-column-display-switch-to-sidebar/design.md create mode 100644 openspec/changes/add-shot-data-table-column-display-switch-to-sidebar/proposal.md create mode 100644 openspec/changes/add-shot-data-table-column-display-switch-to-sidebar/specs/shot-column-display-switch/spec.md create mode 100644 openspec/changes/add-shot-data-table-column-display-switch-to-sidebar/tasks.md diff --git a/frontend/src/components/activity/ActivityFeed.vue b/frontend/src/components/activity/ActivityFeed.vue index 516322a..9d423d9 100644 --- a/frontend/src/components/activity/ActivityFeed.vue +++ b/frontend/src/components/activity/ActivityFeed.vue @@ -277,5 +277,5 @@ function navigateToProject(projectId: number) { import { useAvatarUrl } from '@/composables/useAvatarUrl' -const { getAvatarUrl } = useAvatarUrl() +const { getAvatarUrl, getInitialsAvatarUrl } = useAvatarUrl() diff --git a/frontend/src/components/layout/AppSidebar.vue b/frontend/src/components/layout/AppSidebar.vue index f8fd9ac..2faf180 100644 --- a/frontend/src/components/layout/AppSidebar.vue +++ b/frontend/src/components/layout/AppSidebar.vue @@ -36,7 +36,10 @@ - + + + +