This repository has been archived on 2025-12-04. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
Caramel-CRM-Backup/resources/js/components/UserMenuContent.vue
T

45 lines
1.4 KiB
Vue
Raw Normal View History

2025-10-20 08:57:51 +02:00
<script setup lang="ts">
import { DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator } from '@/components/ui/dropdown-menu';
import { logout } from '@/routes';
import { edit } from '@/routes/profile';
import { Link, router } from '@inertiajs/vue3';
2025-11-14 17:45:57 +01:00
import { LogOut, Settings, User } from 'lucide-vue-next';
2025-10-20 08:57:51 +02:00
import axios from 'axios';
2025-11-14 17:45:57 +01:00
import { Kbd, KbdGroup } from '@/components/ui/kbd';
2025-10-20 08:57:51 +02:00
const handleLogout = () => {
router.flushAll();
localStorage.removeItem('sanctum_token');
delete axios.defaults.headers.common['Authorization'];
};
</script>
<template>
<DropdownMenuGroup>
2025-11-14 17:45:57 +01:00
<DropdownMenuItem as-child>
<Link :href="edit()" prefetch class="flex items-center justify-between">
<div class="flex items-center gap-3">
<Settings stroke-width="1.5" />
<span class="mr-4">Einstellungen</span>
</div>
<KbdGroup>
<Kbd class="visible-mac"></Kbd>
<Kbd class="visible-pc">Ctrl</Kbd>
<Kbd>,</Kbd>
</KbdGroup>
2025-10-20 08:57:51 +02:00
</Link>
</DropdownMenuItem>
2025-11-14 17:45:57 +01:00
2025-10-20 08:57:51 +02:00
</DropdownMenuGroup>
2025-11-14 17:45:57 +01:00
2025-10-20 08:57:51 +02:00
<DropdownMenuSeparator />
2025-11-14 17:45:57 +01:00
<DropdownMenuItem as-child>
2025-10-20 08:57:51 +02:00
<Link class="block w-full" :href="logout()" @click="handleLogout" as="button" data-test="logout-button">
2025-11-14 17:45:57 +01:00
<LogOut stroke-width="1.5" class="mr-2 h-4 w-4" />
2025-10-20 08:57:51 +02:00
Log out
</Link>
</DropdownMenuItem>
</template>