2024-12-02 23:19:00 +04:00
|
|
|
<script setup lang="ts">
|
2024-12-03 03:46:46 +04:00
|
|
|
import { inject } from 'vue';
|
|
|
|
import { useUserStore } from '../../store';
|
|
|
|
import { AuthService } from '../../core/services/auth-service';
|
|
|
|
import router from '../../router';
|
2024-12-11 00:00:04 +04:00
|
|
|
import { HomeOutlined, BlockOutlined } from '@ant-design/icons-vue';
|
2024-12-03 03:46:46 +04:00
|
|
|
|
|
|
|
const store = useUserStore();
|
2024-12-03 18:37:22 +04:00
|
|
|
const authService = inject(AuthService.name) as AuthService;
|
2024-12-03 03:46:46 +04:00
|
|
|
|
|
|
|
function logout() {
|
|
|
|
authService.logout();
|
|
|
|
router.push({ name: 'login' });
|
|
|
|
}
|
|
|
|
|
2024-12-02 23:19:00 +04:00
|
|
|
</script>
|
|
|
|
|
|
|
|
<template>
|
2024-12-03 03:46:46 +04:00
|
|
|
<a-layout-header class="header">
|
|
|
|
<div class="base-nav">
|
|
|
|
<div>ДомБюдж</div>
|
|
|
|
<nav>
|
2024-12-11 00:00:04 +04:00
|
|
|
<RouterLink :to="{ name: 'home' }"><HomeOutlined /> Главная</RouterLink>
|
|
|
|
<RouterLink :to="{ name: 'groups' }"><BlockOutlined /> Группы расходов</RouterLink>
|
2024-12-03 03:46:46 +04:00
|
|
|
</nav>
|
|
|
|
</div>
|
|
|
|
<div v-if="!store.user.id">
|
|
|
|
<RouterLink :to="{ name: 'login' }">Войти</RouterLink>
|
|
|
|
</div>
|
|
|
|
<div v-else>
|
2024-12-03 18:37:22 +04:00
|
|
|
<label for="logout">Привет, {{ store.user.name }}! Ваш текущий баланс: {{ store.user.balance }}</label>
|
2024-12-03 03:46:46 +04:00
|
|
|
<a-button
|
|
|
|
name="logout"
|
|
|
|
@click="logout()"
|
|
|
|
danger
|
2024-12-03 04:02:35 +04:00
|
|
|
style="margin-left: 30px"
|
2024-12-03 03:46:46 +04:00
|
|
|
>
|
|
|
|
Выйти
|
|
|
|
</a-button>
|
|
|
|
</div>
|
|
|
|
</a-layout-header>
|
2024-12-02 23:19:00 +04:00
|
|
|
</template>
|
|
|
|
|
|
|
|
<style scoped>
|
2024-12-03 03:46:46 +04:00
|
|
|
.header {
|
|
|
|
background-color: white;
|
|
|
|
display: flex;
|
|
|
|
justify-content: space-between;
|
|
|
|
align-items: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
.base-nav {
|
|
|
|
display: inline-flex;
|
|
|
|
justify-content: left;
|
|
|
|
}
|
|
|
|
.base-nav a {
|
2024-12-03 04:02:35 +04:00
|
|
|
margin-left: 30px;
|
2024-12-03 03:46:46 +04:00
|
|
|
}
|
2024-12-02 23:19:00 +04:00
|
|
|
|
|
|
|
</style>
|