diff --git a/web/src/components/llm-select/next.tsx b/web/src/components/llm-select/next.tsx index 6c5e25724..955896f30 100644 --- a/web/src/components/llm-select/next.tsx +++ b/web/src/components/llm-select/next.tsx @@ -2,6 +2,7 @@ import { LlmModelType } from '@/constants/knowledge'; import { useComposeLlmOptionsByModelTypes } from '@/hooks/llm-hooks'; import * as SelectPrimitive from '@radix-ui/react-select'; import { forwardRef, memo, useMemo, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import { LlmSettingFieldItems } from '../llm-setting-items/next'; import { Popover, PopoverContent, PopoverTrigger } from '../ui/popover'; import { Select, SelectTrigger, SelectValue } from '../ui/select'; @@ -20,6 +21,7 @@ const NextInnerLLMSelect = forwardRef< React.ElementRef, NextInnerLLMSelectProps >(({ value, disabled, filter, showSpeech2TextModel = false }, ref) => { + const { t } = useTranslation(); const [isPopoverOpen, setIsPopoverOpen] = useState(false); const ttsModel = useMemo(() => { @@ -49,7 +51,7 @@ const NextInnerLLMSelect = forwardRef< }} ref={ref} > - + { modelOptions .flatMap((x) => x.options) diff --git a/web/src/layouts/next-header.tsx b/web/src/layouts/next-header.tsx index 837019f17..2833533d6 100644 --- a/web/src/layouts/next-header.tsx +++ b/web/src/layouts/next-header.tsx @@ -12,10 +12,13 @@ import { LanguageList, LanguageMap, ThemeEnum } from '@/constants/common'; import { useChangeLanguage } from '@/hooks/logic-hooks'; import { useNavigatePage } from '@/hooks/logic-hooks/navigate-hooks'; import { useNavigateWithFromState } from '@/hooks/route-hook'; +import { useListTenant } from '@/hooks/use-user-setting-request'; import { useFetchUserInfo } from '@/hooks/user-setting-hooks'; +import { TenantRole } from '@/pages/user-setting/constants'; import { Routes } from '@/routes'; import { camelCase } from 'lodash'; import { + BellRing, ChevronDown, CircleHelp, Cpu, @@ -53,11 +56,11 @@ export function Header() { changeLanguage(key); }; - // const { data } = useListTenant(); + const { data } = useListTenant(); - // const showBell = useMemo(() => { - // return data.some((x) => x.role === TenantRole.Invite); - // }, [data]); + const showBell = useMemo(() => { + return data.some((x) => x.role === TenantRole.Invite); + }, [data]); const items = LanguageList.map((x) => ({ key: x, @@ -68,9 +71,9 @@ export function Header() { setTheme(theme === ThemeEnum.Dark ? ThemeEnum.Light : ThemeEnum.Dark); }, [setTheme, theme]); - // const handleBellClick = useCallback(() => { - // navigate('/user-setting/team'); - // }, [navigate]); + const handleBellClick = useCallback(() => { + navigate('/user-setting/team'); + }, [navigate]); const tagsData = useMemo( () => [ @@ -160,6 +163,14 @@ export function Header() { + {showBell && ( + + )}
- - {x.name} + +
{x.name}