From 35556eb674af501465642baec01a1c0eb4ed318c Mon Sep 17 00:00:00 2001 From: RickyHuang <18030638805@163.com> Date: Sat, 5 Jul 2025 17:54:23 +0800 Subject: [PATCH] fIx: side toolbar tab tooltip not reactive when changing locale (#4213) Co-authored-by: Huang Yun Qi --- src/components/sidebar/SideToolbar.vue | 3 ++- src/components/sidebar/SidebarIcon.spec.ts | 11 ++++++++++- src/components/sidebar/SidebarIcon.vue | 13 +++++++++++-- .../sidebarTabs/useModelLibrarySidebarTab.ts | 7 ++----- .../sidebarTabs/useNodeLibrarySidebarTab.ts | 6 ++---- src/composables/sidebarTabs/useQueueSidebarTab.ts | 6 ++---- .../sidebarTabs/useWorkflowsSidebarTab.ts | 7 ++----- src/stores/workspace/sidebarTabStore.ts | 2 +- 8 files changed, 32 insertions(+), 23 deletions(-) diff --git a/src/components/sidebar/SideToolbar.vue b/src/components/sidebar/SideToolbar.vue index 120747b54..4b7e6df00 100644 --- a/src/components/sidebar/SideToolbar.vue +++ b/src/components/sidebar/SideToolbar.vue @@ -6,7 +6,8 @@ :key="tab.id" :icon="tab.icon" :icon-badge="tab.iconBadge" - :tooltip="tab.tooltip + getTabTooltipSuffix(tab)" + :tooltip="tab.tooltip" + :tooltip-suffix="getTabTooltipSuffix(tab)" :selected="tab.id === selectedTab?.id" :class="tab.id + '-tab-button'" @click="onTabClick(tab)" diff --git a/src/components/sidebar/SidebarIcon.spec.ts b/src/components/sidebar/SidebarIcon.spec.ts index 806ce69ca..ef02f3d9e 100644 --- a/src/components/sidebar/SidebarIcon.spec.ts +++ b/src/components/sidebar/SidebarIcon.spec.ts @@ -4,6 +4,7 @@ import PrimeVue from 'primevue/config' import OverlayBadge from 'primevue/overlaybadge' import Tooltip from 'primevue/tooltip' import { describe, expect, it } from 'vitest' +import { createI18n } from 'vue-i18n' import SidebarIcon from './SidebarIcon.vue' @@ -15,6 +16,14 @@ type SidebarIconProps = { iconBadge?: string | (() => string | null) } +const i18n = createI18n({ + legacy: false, + locale: 'en', + messages: { + en: {} + } +}) + describe('SidebarIcon', () => { const exampleProps: SidebarIconProps = { icon: 'pi pi-cog', @@ -24,7 +33,7 @@ describe('SidebarIcon', () => { const mountSidebarIcon = (props: Partial, options = {}) => { return mount(SidebarIcon, { global: { - plugins: [PrimeVue], + plugins: [PrimeVue, i18n], directives: { tooltip: Tooltip }, components: { OverlayBadge, Button } }, diff --git a/src/components/sidebar/SidebarIcon.vue b/src/components/sidebar/SidebarIcon.vue index 3a3761704..1c1dffc1b 100644 --- a/src/components/sidebar/SidebarIcon.vue +++ b/src/components/sidebar/SidebarIcon.vue @@ -1,6 +1,10 @@