From a55f3016ce71c17be97f7e98503314113a68b8f4 Mon Sep 17 00:00:00 2001 From: Hooray Hu <304327508@qq.com> Date: Thu, 25 Jan 2024 09:32:00 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E6=A0=87=E7=AD=BE?= =?UTF-8?q?=E9=A1=B5=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + pnpm-lock.yaml | 7 + src/assets/styles/globals.scss | 2 + src/layouts/components/AppSetting/index.vue | 23 + src/layouts/components/HotkeysIntro/index.vue | 32 ++ .../components/Topbar/Tabbar/index.vue | 464 ++++++++++++++++++ src/layouts/components/Topbar/index.vue | 9 +- src/layouts/index.vue | 8 + src/router/index.ts | 15 + src/settings.default.ts | 5 + src/store/modules/tabbar.ts | 169 +++++++ src/types/auto-imports.d.ts | 1 + src/types/global.d.ts | 31 ++ src/utils/composables/useTabbar.ts | 164 +++++++ themes/index.ts | 12 + 15 files changed, 941 insertions(+), 2 deletions(-) create mode 100644 src/layouts/components/Topbar/Tabbar/index.vue create mode 100755 src/store/modules/tabbar.ts create mode 100755 src/utils/composables/useTabbar.ts diff --git a/package.json b/package.json index d5ae582..085bfed 100755 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ }, "dependencies": { "@headlessui/vue": "^1.7.17", + "@imengyu/vue3-context-menu": "^1.3.6", "@vueuse/core": "^10.7.1", "@vueuse/integrations": "^10.7.1", "axios": "^1.6.5", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6029e01..f4d334a 100755 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,9 @@ dependencies: '@headlessui/vue': specifier: ^1.7.17 version: 1.7.17(vue@3.4.8) + '@imengyu/vue3-context-menu': + specifier: ^1.3.6 + version: 1.3.6 '@vueuse/core': specifier: ^10.7.1 version: 10.7.1(vue@3.4.8) @@ -2689,6 +2692,10 @@ packages: vue: 3.4.8(typescript@5.3.3) dev: true + /@imengyu/vue3-context-menu@1.3.6: + resolution: {integrity: sha512-xjA37derX5pVKyWjMe0mzbTEIBG6YJRYEMdLBjN3thoSVUuBTRObJ2Uc0sejU6QqM31pSr3PbITBgnXV6P1heg==} + dev: false + /@isaacs/cliui@8.0.2: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} diff --git a/src/assets/styles/globals.scss b/src/assets/styles/globals.scss index 9523d07..6e20f38 100755 --- a/src/assets/styles/globals.scss +++ b/src/assets/styles/globals.scss @@ -8,6 +8,8 @@ --g-sub-sidebar-collapse-width: 64px; // 侧边栏 Logo 区域高度 --g-sidebar-logo-height: 50px; + // 标签栏高度 + --g-tabbar-height: 50px; // 工具栏高度 --g-toolbar-height: 50px; } diff --git a/src/layouts/components/AppSetting/index.vue b/src/layouts/components/AppSetting/index.vue index 1015c69..e15cd81 100755 --- a/src/layouts/components/AppSetting/index.vue +++ b/src/layouts/components/AppSetting/index.vue @@ -173,6 +173,29 @@ function handleCopy() { ]" /> +