From d0c75d25cf50d3764e6fd41e6a69a9914c80a019 Mon Sep 17 00:00:00 2001 From: congsh Date: Fri, 17 Apr 2026 17:38:27 +0800 Subject: [PATCH] feat: beautify all team components and pages with dark gaming theme Co-Authored-By: Claude Opus 4.7 --- .../src/components/team/IdleMembersList.vue | 47 +- .../src/components/team/InvitationCard.vue | 71 ++- frontend/src/components/team/StatusToggle.vue | 34 +- .../src/components/team/TeamSessionPanel.vue | 70 ++- .../src/components/team/WorkScheduleModal.vue | 14 +- frontend/src/views/GamesLibrary.vue | 44 +- frontend/src/views/GroupView.vue | 579 ++++++++++++++---- frontend/src/views/Home.vue | 477 ++++++++++----- frontend/src/views/Profile.vue | 17 +- frontend/src/views/Settings.vue | 40 +- 10 files changed, 1020 insertions(+), 373 deletions(-) diff --git a/frontend/src/components/team/IdleMembersList.vue b/frontend/src/components/team/IdleMembersList.vue index 49cf379..6297c71 100644 --- a/frontend/src/components/team/IdleMembersList.vue +++ b/frontend/src/components/team/IdleMembersList.vue @@ -81,35 +81,38 @@ async function inviteMember(userId: string, username: string) { diff --git a/frontend/src/components/team/InvitationCard.vue b/frontend/src/components/team/InvitationCard.vue index 72680bf..b3c4bd2 100644 --- a/frontend/src/components/team/InvitationCard.vue +++ b/frontend/src/components/team/InvitationCard.vue @@ -85,17 +85,23 @@ async function rejectInvitation() { diff --git a/frontend/src/components/team/StatusToggle.vue b/frontend/src/components/team/StatusToggle.vue index 71f8497..8da0413 100644 --- a/frontend/src/components/team/StatusToggle.vue +++ b/frontend/src/components/team/StatusToggle.vue @@ -8,6 +8,15 @@ import { UserStatusMap, UserStatusIcon, type UserStatus } from '@/types' const userStore = useUserStore() const currentStatus = computed(() => userStore.userStatus) +const statusDotClass = computed(() => { + const map: Record = { + idle: 'gg-status-dot--idle', + working: 'gg-status-dot--working', + in_team: 'gg-status-dot--in_team', + away: 'gg-status-dot--away' + } + return map[currentStatus.value] || 'gg-status-dot--idle' +}) const statusIcon = computed(() => UserStatusIcon[currentStatus.value]) const statusText = computed(() => UserStatusMap[currentStatus.value]) @@ -19,22 +28,22 @@ async function setStatus(status: UserStatus) {