From 651410e2b6c8d3f4b84b7026f5633b607dba643c Mon Sep 17 00:00:00 2001 From: shake Date: Mon, 22 Jun 2026 16:09:09 +0800 Subject: [PATCH] feat: add logout menu to navbar --- locales/en.yml | 3 + locales/zh.yml | 3 + src/components/NavbarButtons.vue | 12 +-- src/components/NavbarMoreMenu.vue | 151 ++++++++++++++++++++++++++++++ src/layouts/base.layout.vue | 34 +------ 5 files changed, 161 insertions(+), 42 deletions(-) create mode 100644 src/components/NavbarMoreMenu.vue diff --git a/locales/en.yml b/locales/en.yml index d03d80d3..3f26ec84 100644 --- a/locales/en.yml +++ b/locales/en.yml @@ -27,6 +27,9 @@ home: darkMode: 'Dark mode' lightMode: 'Light mode' mode: 'Toggle dark/light mode' + more: 'More' + themeTitle: 'Theme switch' + logout: 'Logout' about: content: > # About IT-Tools diff --git a/locales/zh.yml b/locales/zh.yml index 97968eb5..a7213c15 100644 --- a/locales/zh.yml +++ b/locales/zh.yml @@ -27,6 +27,9 @@ home: darkMode: '深色模式' lightMode: '浅色模式' mode: '颜色模式' + more: '更多' + themeTitle: '主题切换' + logout: '退出' about: content: > # 关于 IT-Tools diff --git a/src/components/NavbarButtons.vue b/src/components/NavbarButtons.vue index 4084526d..a008f6c2 100644 --- a/src/components/NavbarButtons.vue +++ b/src/components/NavbarButtons.vue @@ -1,9 +1,5 @@ diff --git a/src/layouts/base.layout.vue b/src/layouts/base.layout.vue index ef534209..83fd3556 100644 --- a/src/layouts/base.layout.vue +++ b/src/layouts/base.layout.vue @@ -2,17 +2,17 @@ import { NIcon, useThemeVars } from 'naive-ui'; import { RouterLink } from 'vue-router'; -import { Heart, Home2, Menu2 } from '@vicons/tabler'; +import { Home2, Menu2 } from '@vicons/tabler'; import { storeToRefs } from 'pinia'; import HeroGradient from '../assets/hero-gradient.svg?component'; import MenuLayout from '../components/MenuLayout.vue'; import NavbarButtons from '../components/NavbarButtons.vue'; +import NavbarMoreMenu from '../components/NavbarMoreMenu.vue'; import { useStyleStore } from '@/stores/style.store'; import { config } from '@/config'; import type { ToolCategory } from '@/tools/tools.types'; import { useToolStore } from '@/tools/tools.store'; -import { useTracker } from '@/modules/tracker/tracker.services'; import CollapsibleToolMenu from '@/components/CollapsibleToolMenu.vue'; const themeVars = useThemeVars(); @@ -20,7 +20,6 @@ const styleStore = useStyleStore(); const version = config.app.version; const commitSha = config.app.lastCommitSha.slice(0, 7); -const { tracker } = useTracker(); const { t } = useI18n(); const toolStore = useToolStore(); @@ -119,21 +118,7 @@ const tools = computed(() => [
- - - - {{ $t('home.buyMeACoffee') }} - - - + @@ -152,19 +137,6 @@ const tools = computed(() => [ // background-size: @size @size; // } -.support-button { - background: rgb(37, 99, 108); - background: linear-gradient(48deg, rgba(37, 99, 108, 1) 0%, rgba(59, 149, 111, 1) 60%, rgba(20, 160, 88, 1) 100%); - color: #fff !important; - transition: padding ease 0.2s !important; - - &:hover { - color: #fff; - padding-left: 30px; - padding-right: 30px; - } -} - .footer { text-align: center; color: #838587;