Ziya/app/components/AppNavbar.vue
rizary 6efcf43691
feat: complete ESLint configuration overhaul and theme system improvements
- Migrate from legacy .eslintrc.json to modern flat config system
- Remove conflicting ESLint configuration files
- Fix auto-generation of eslint.config.mjs by Nuxt
- Update ESLint rules to use single quotes and proper formatting
- Add comprehensive theme switching system with 24 palettes
- Implement proper daisyUI theme integration
- Add theme store with persistence and dark/light mode support
- Create ThemeSwitcher component with enhanced UI
- Fix package.json scripts to work with new ESLint flat config
- Update VS Code settings for proper ESLint integration
- Add changelogen scripts for proper changelog management

BREAKING CHANGE: ESLint configuration migrated to flat config system
2025-06-22 00:53:24 +07:00

43 lines
1.3 KiB
Vue

<template>
<div class="navbar bg-base-300 px-4">
<div class="navbar-start">
<div class="text-xl font-bold">{{ title }}</div>
</div>
<div class="navbar-end">
<div class="dropdown dropdown-end">
<div tabindex="0" role="button" class="btn btn-ghost btn-circle avatar">
<div class="w-10 rounded-full bg-primary flex items-center justify-center">
<span class="text-primary-content font-bold text-sm">
{{ userInitials }}
</span>
</div>
</div>
<ul tabindex="0" class="menu menu-sm dropdown-content mt-3 z-[1] p-2 shadow bg-base-100 rounded-box w-64">
<li><a @click="navigateToProfile">Profile</a></li>
<li>
<details>
<summary>Theme Settings</summary>
<div class="p-4">
<ThemeSwitcher />
</div>
</details>
</li>
<li><a @click="handleLogout">Logout</a></li>
</ul>
</div>
</div>
</div>
</template>
<script setup lang="ts">
interface Props {
title: string;
}
const props = defineProps<Props>();
const appStore = useAppStore();
const { navigateToProfile, handleLogout } = useNavigation();
const userInitials = computed(() => appStore.userInitials);
</script>