import { Box, Card, Flex } from '@chakra-ui/react'; import React, { useCallback } from 'react'; import MyIcon from '@fastgpt/web/components/common/Icon'; import { useTranslation } from 'next-i18next'; import { useUserStore } from '@/web/support/user/useUserStore'; import { UserType } from '@fastgpt/global/support/user/type'; import { useToast } from '@fastgpt/web/hooks/useToast'; import { useForm } from 'react-hook-form'; import { UserUpdateParams } from '@/types/user'; import { langMap, setLngStore } from '@/web/common/utils/i18n'; import { useRouter } from 'next/router'; import MySelect from '@fastgpt/web/components/common/MySelect'; import TimezoneSelect from '@fastgpt/web/components/common/MySelect/TimezoneSelect'; const Individuation = () => { const { t, i18n } = useTranslation(); const { userInfo, updateUserInfo } = useUserStore(); const { toast } = useToast(); const router = useRouter(); const { reset } = useForm({ defaultValues: userInfo as UserType }); const onclickSave = useCallback( async (data: UserType) => { await updateUserInfo({ timezone: data.timezone }); reset(data); toast({ title: t('dataset.data.Update Success Tip'), status: 'success' }); }, [reset, t, toast, updateUserInfo] ); return ( {t('support.account.Individuation')} {t('user.Language')}:  ({ label: lang.label, value: key }))} onchange={(val: any) => { const lang = val; setLngStore(lang); router.replace( { query: router.query }, router.asPath, { locale: lang } ); }} /> {t('user.Timezone')}:  { if (!userInfo) return; onclickSave({ ...userInfo, timezone: e }); }} /> ); }; export default Individuation;