File tree Expand file tree Collapse file tree
frontend/src/components/organisms/navigation Expand file tree Collapse file tree Original file line number Diff line number Diff line change 88 VList ,
99 VListItem ,
1010 VDivider ,
11+ VMenu ,
1112 } from ' vuetify/components' ;
1213 import {
1314 FolderOpen ,
1415 LogIn ,
16+ LogOut ,
1517 FolderPlus ,
1618 X ,
1719 Trash2 ,
223225 </div >
224226
225227 <div v-else >
226- <v-btn
227- variant =" text"
228- color =" on-surface"
229- rounded =" lg"
230- block
231- height =" 50"
232- class =" d-flex justify-start align-center text-none px-4 text-high-emphasis"
233- @click =" logoutDialogOpen = true"
228+ <v-menu
229+ location =" top center"
230+ offset =" 12"
231+ transition =" slide-y-reverse-transition"
234232 >
235- <v-icon :icon =" User" size =" 20" class =" me-3" />
236- <span class =" font-weight-medium text-body-2" >{{ formattedUsername }}</span >
237- </v-btn >
233+ <template #activator =" { props: menuProps } " >
234+ <div v-bind =" menuProps" class =" cursor-pointer" >
235+ <v-btn
236+ variant =" text"
237+ color =" on-surface"
238+ rounded =" lg"
239+ block
240+ height =" 50"
241+ class =" d-flex justify-start align-center text-none px-4 text-high-emphasis profile-btn"
242+ >
243+ <v-icon :icon =" User" size =" 20" class =" me-3" />
244+ <span class =" font-weight-medium text-body-2 flex-grow-1 text-start text-truncate" >
245+ {{ formattedUsername }}
246+ </span >
247+ <v-icon size =" 16" class =" text-disabled ms-2" />
248+ </v-btn >
249+ </div >
250+ </template >
251+
252+ <v-card min-width =" 300" rounded =" lg" elevation =" 16" class =" border pa-2" >
253+ <v-list density =" compact" nav class =" pa-0" >
254+ <v-list-item
255+ rounded =" lg"
256+ class =" text-error"
257+ @click =" logoutDialogOpen = true"
258+ >
259+ <template #prepend >
260+ <v-icon :icon =" LogOut" size =" 18" />
261+ </template >
262+ <v-list-item-title class =" font-weight-medium" >Log out</v-list-item-title >
263+ </v-list-item >
264+ </v-list >
265+ </v-card >
266+ </v-menu >
238267 </div >
239268 </div >
240269
260289</template >
261290
262291<style scoped>
263- /* --- Action Button Opacity Logic --- */
264292 .project-action-btn {
265293 opacity : 0 ;
266294 transition : opacity 0.2s ease-in-out ;
You can’t perform that action at this time.
0 commit comments