diff --git a/packages/web/hooks/useI18n.ts b/packages/web/hooks/useI18n.ts index 50676971a..40f22bbfd 100644 --- a/packages/web/hooks/useI18n.ts +++ b/packages/web/hooks/useI18n.ts @@ -44,7 +44,7 @@ export const useI18nLng = () => { await i18n?.changeLanguage?.(lang); - if (!i18n.hasResourceBundle(lang, 'common') && prevLang !== lang) { + if (!i18n?.hasResourceBundle?.(lang, 'common') && prevLang !== lang) { window?.location?.reload?.(); } }; diff --git a/projects/app/next-i18next.config.js b/projects/app/next-i18next.config.js index f9a3e2201..34ee851ea 100644 --- a/projects/app/next-i18next.config.js +++ b/projects/app/next-i18next.config.js @@ -1,7 +1,6 @@ /** * @type {import('next-i18next').UserConfig} */ - module.exports = { i18n: { defaultLocale: 'en', diff --git a/projects/app/next.config.js b/projects/app/next.config.js index bc191f87e..ecbb5a273 100644 --- a/projects/app/next.config.js +++ b/projects/app/next.config.js @@ -80,12 +80,7 @@ const nextConfig = { transpilePackages: ['@fastgpt/global', '@fastgpt/web', 'ahooks'], experimental: { // 优化 Server Components 的构建和运行,避免不必要的客户端打包。 - serverComponentsExternalPackages: [ - 'mongoose', - 'pg', - '@zilliz/milvus2-sdk-node', - "tiktoken", - ], + serverComponentsExternalPackages: ['mongoose', 'pg', '@zilliz/milvus2-sdk-node', 'tiktoken'], outputFileTracingRoot: path.join(__dirname, '../../'), instrumentationHook: true } diff --git a/projects/app/src/pages/_error.tsx b/projects/app/src/pages/_error.tsx index b7e91c69b..2faad8eae 100644 --- a/projects/app/src/pages/_error.tsx +++ b/projects/app/src/pages/_error.tsx @@ -1,6 +1,6 @@ import { useEffect } from 'react'; import { useRouter } from 'next/router'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { useSystemStore } from '@/web/common/system/useSystemStore'; import { Box } from '@chakra-ui/react'; import { TrackEventName } from '@/web/common/system/constants'; @@ -57,7 +57,7 @@ function Error() { {`出现未捕获的异常。 1. 私有部署用户,90%是由于模型配置不正确/模型未启用导致。。 -2. 部分系统不兼容相关API。大部分是苹果的safari 浏览器导致,可以尝试更换 chrome。 +2. 部分系统不兼容相关API。大部分是苹果的safari 浏览器导致,可以尝试更换 chrome。 3. 请关闭浏览器翻译功能,部分翻译导致页面崩溃。 排除3后,打开控制台的 console 查看具体报错信息。 diff --git a/projects/app/src/pages/account/apikey.tsx b/projects/app/src/pages/account/apikey.tsx index 0294a0094..de8e53b72 100644 --- a/projects/app/src/pages/account/apikey.tsx +++ b/projects/app/src/pages/account/apikey.tsx @@ -3,7 +3,7 @@ import ApiKeyTable from '@/components/support/apikey/Table'; import { useTranslation } from 'next-i18next'; import { Box } from '@chakra-ui/react'; import AccountContainer, { TabEnum } from '@/pageComponents/account/AccountContainer'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; const ApiKey = () => { const { t } = useTranslation(); diff --git a/projects/app/src/pages/account/bill/index.tsx b/projects/app/src/pages/account/bill/index.tsx index 5bda548de..e94465e7c 100644 --- a/projects/app/src/pages/account/bill/index.tsx +++ b/projects/app/src/pages/account/bill/index.tsx @@ -6,7 +6,7 @@ import { useTranslation } from 'next-i18next'; import ApplyInvoiceModal from '@/pageComponents/account/bill/ApplyInvoiceModal'; import { useRouter } from 'next/router'; import AccountContainer from '@/pageComponents/account/AccountContainer'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; export enum InvoiceTabEnum { bill = 'bill', diff --git a/projects/app/src/pages/account/info/index.tsx b/projects/app/src/pages/account/info/index.tsx index 741f8adde..b9a6ab99a 100644 --- a/projects/app/src/pages/account/info/index.tsx +++ b/projects/app/src/pages/account/info/index.tsx @@ -39,7 +39,7 @@ import QuestionTip from '@fastgpt/web/components/common/MyTooltip/QuestionTip'; import { useSystem } from '@fastgpt/web/hooks/useSystem'; import { getWebReqUrl } from '@fastgpt/web/common/system/utils'; import AccountContainer from '@/pageComponents/account/AccountContainer'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { useRouter } from 'next/router'; import TeamSelector from '@/pageComponents/account/TeamSelector'; import { getWorkorderURL } from '@/web/common/workorder/api'; diff --git a/projects/app/src/pages/account/inform.tsx b/projects/app/src/pages/account/inform.tsx index e2fa08c1b..553a2dba4 100644 --- a/projects/app/src/pages/account/inform.tsx +++ b/projects/app/src/pages/account/inform.tsx @@ -7,7 +7,7 @@ import { useLoading } from '@fastgpt/web/hooks/useLoading'; import { useTranslation } from 'next-i18next'; import EmptyTip from '@fastgpt/web/components/common/EmptyTip'; import AccountContainer from '@/pageComponents/account/AccountContainer'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; const InformTable = () => { const { t } = useTranslation(); diff --git a/projects/app/src/pages/account/model/index.tsx b/projects/app/src/pages/account/model/index.tsx index b833716ad..01416f0e4 100644 --- a/projects/app/src/pages/account/model/index.tsx +++ b/projects/app/src/pages/account/model/index.tsx @@ -1,4 +1,4 @@ -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import React, { useMemo, useState } from 'react'; import AccountContainer from '@/pageComponents/account/AccountContainer'; import { Box, Flex } from '@chakra-ui/react'; diff --git a/projects/app/src/pages/account/promotion.tsx b/projects/app/src/pages/account/promotion.tsx index 5933737d7..e6307f699 100644 --- a/projects/app/src/pages/account/promotion.tsx +++ b/projects/app/src/pages/account/promotion.tsx @@ -26,7 +26,7 @@ import { useLoading } from '@fastgpt/web/hooks/useLoading'; import QuestionTip from '@fastgpt/web/components/common/MyTooltip/QuestionTip'; import EmptyTip from '@fastgpt/web/components/common/EmptyTip'; import AccountContainer from '@/pageComponents/account/AccountContainer'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; const Promotion = () => { const { t } = useTranslation(); diff --git a/projects/app/src/pages/account/setting.tsx b/projects/app/src/pages/account/setting.tsx index 2660fd5c3..6a3579b58 100644 --- a/projects/app/src/pages/account/setting.tsx +++ b/projects/app/src/pages/account/setting.tsx @@ -10,7 +10,7 @@ import { UserUpdateParams } from '@/types/user'; import TimezoneSelect from '@fastgpt/web/components/common/MySelect/TimezoneSelect'; import I18nLngSelector from '@/components/Select/I18nLngSelector'; import AccountContainer from '@/pageComponents/account/AccountContainer'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; const Individuation = () => { const { t } = useTranslation(); diff --git a/projects/app/src/pages/account/team/index.tsx b/projects/app/src/pages/account/team/index.tsx index a1afa1e8e..02e6abad4 100644 --- a/projects/app/src/pages/account/team/index.tsx +++ b/projects/app/src/pages/account/team/index.tsx @@ -1,4 +1,4 @@ -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import AccountContainer from '@/pageComponents/account/AccountContainer'; import { Box, Flex } from '@chakra-ui/react'; import Icon from '@fastgpt/web/components/common/Icon'; diff --git a/projects/app/src/pages/account/thirdParty/index.tsx b/projects/app/src/pages/account/thirdParty/index.tsx index 392af56c1..f25abf39e 100644 --- a/projects/app/src/pages/account/thirdParty/index.tsx +++ b/projects/app/src/pages/account/thirdParty/index.tsx @@ -9,7 +9,7 @@ import dynamic from 'next/dynamic'; import { useState, useMemo } from 'react'; import WorkflowVariableModal from '@/pageComponents/account/thirdParty/WorkflowVariableModal'; import { useToast } from '@fastgpt/web/hooks/useToast'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { useRequest2 } from '@fastgpt/web/hooks/useRequest'; import { GET } from '@/web/common/api/request'; import type { checkUsageResponse } from '@/pages/api/support/user/team/thirtdParty/checkUsage'; diff --git a/projects/app/src/pages/account/usage/index.tsx b/projects/app/src/pages/account/usage/index.tsx index 282bd6a6d..6d81369a5 100644 --- a/projects/app/src/pages/account/usage/index.tsx +++ b/projects/app/src/pages/account/usage/index.tsx @@ -9,7 +9,7 @@ import { useTranslation } from 'next-i18next'; import { useUserStore } from '@/web/support/user/useUserStore'; import Avatar from '@fastgpt/web/components/common/Avatar'; import AccountContainer from '@/pageComponents/account/AccountContainer'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { useScrollPagination } from '@fastgpt/web/hooks/useScrollPagination'; import { getTeamMembers } from '@/web/support/user/team/api'; import FillRowTabs from '@fastgpt/web/components/common/Tabs/FillRowTabs'; diff --git a/projects/app/src/pages/app/detail/index.tsx b/projects/app/src/pages/app/detail/index.tsx index 9fad08f51..6272e6063 100644 --- a/projects/app/src/pages/app/detail/index.tsx +++ b/projects/app/src/pages/app/detail/index.tsx @@ -2,7 +2,7 @@ import React, { useEffect } from 'react'; import { Box } from '@chakra-ui/react'; import dynamic from 'next/dynamic'; import Loading from '@fastgpt/web/components/common/MyLoading'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import NextHead from '@/components/common/NextHead'; import { useContextSelector } from 'use-context-selector'; import AppContextProvider, { AppContext } from '@/pageComponents/app/detail/context'; diff --git a/projects/app/src/pages/app/list/index.tsx b/projects/app/src/pages/app/list/index.tsx index 274909c26..645ec71f6 100644 --- a/projects/app/src/pages/app/list/index.tsx +++ b/projects/app/src/pages/app/list/index.tsx @@ -1,7 +1,7 @@ import React, { useMemo, useState } from 'react'; import { Box, Flex, Button, useDisclosure, Input, InputGroup } from '@chakra-ui/react'; import { AddIcon } from '@chakra-ui/icons'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { useUserStore } from '@/web/support/user/useUserStore'; import { useTranslation } from 'next-i18next'; import dynamic from 'next/dynamic'; diff --git a/projects/app/src/pages/chat/index.tsx b/projects/app/src/pages/chat/index.tsx index 31a1da1d6..c23372f28 100644 --- a/projects/app/src/pages/chat/index.tsx +++ b/projects/app/src/pages/chat/index.tsx @@ -15,7 +15,7 @@ import ChatHistorySlider from '@/pageComponents/chat/ChatHistorySlider'; import SliderApps from '@/pageComponents/chat/SliderApps'; import ChatHeader from '@/pageComponents/chat/ChatHeader'; import { useUserStore } from '@/web/support/user/useUserStore'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { getChatTitleFromChatMessage } from '@fastgpt/global/core/chat/utils'; import { GPTMessages2Chats } from '@fastgpt/global/core/chat/adapt'; import { getMyApps } from '@/web/core/app/api'; diff --git a/projects/app/src/pages/chat/share.tsx b/projects/app/src/pages/chat/share.tsx index 558357edd..98720d0a8 100644 --- a/projects/app/src/pages/chat/share.tsx +++ b/projects/app/src/pages/chat/share.tsx @@ -11,7 +11,7 @@ import type { StartChatFnProps } from '@/components/core/chat/ChatContainer/type import PageContainer from '@/components/PageContainer'; import ChatHeader from '@/pageComponents/chat/ChatHeader'; import ChatHistorySlider from '@/pageComponents/chat/ChatHistorySlider'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { useTranslation } from 'next-i18next'; import { getInitOutLinkChatInfo } from '@/web/core/chat/api'; import { getChatTitleFromChatMessage } from '@fastgpt/global/core/chat/utils'; diff --git a/projects/app/src/pages/chat/team.tsx b/projects/app/src/pages/chat/team.tsx index dc871a0ea..4b76cc362 100644 --- a/projects/app/src/pages/chat/team.tsx +++ b/projects/app/src/pages/chat/team.tsx @@ -8,7 +8,7 @@ import PageContainer from '@/components/PageContainer'; import { getMyTokensApps } from '@/web/core/chat/api'; import ChatHistorySlider from '@/pageComponents/chat/ChatHistorySlider'; import ChatHeader from '@/pageComponents/chat/ChatHeader'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { useTranslation } from 'next-i18next'; import ChatBox from '@/components/core/chat/ChatContainer/ChatBox'; import type { StartChatFnProps } from '@/components/core/chat/ChatContainer/type'; diff --git a/projects/app/src/pages/dataset/detail/index.tsx b/projects/app/src/pages/dataset/detail/index.tsx index 50bf043a7..519d64fd7 100644 --- a/projects/app/src/pages/dataset/detail/index.tsx +++ b/projects/app/src/pages/dataset/detail/index.tsx @@ -5,7 +5,7 @@ import { useToast } from '@fastgpt/web/hooks/useToast'; import { getErrText } from '@fastgpt/global/common/error/utils'; import dynamic from 'next/dynamic'; import PageContainer from '@/components/PageContainer'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { useTranslation } from 'next-i18next'; import MetaDataCard from '@/pageComponents/dataset/detail/MetaDataCard'; import NavBar from '@/pageComponents/dataset/detail/NavBar'; diff --git a/projects/app/src/pages/dataset/list/index.tsx b/projects/app/src/pages/dataset/list/index.tsx index 44f1f2d9e..f8ba22b92 100644 --- a/projects/app/src/pages/dataset/list/index.tsx +++ b/projects/app/src/pages/dataset/list/index.tsx @@ -2,7 +2,7 @@ import React, { useCallback, useMemo, useState } from 'react'; import { Box, Flex, Button, InputGroup, InputLeftElement, Input } from '@chakra-ui/react'; import { useRouter } from 'next/router'; import { useTranslation } from 'next-i18next'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import ParentPaths from '@/components/common/folder/Path'; import List from '@/pageComponents/dataset/list/List'; import { DatasetsContext } from './context'; diff --git a/projects/app/src/pages/index.tsx b/projects/app/src/pages/index.tsx index 2579384df..380cc434c 100644 --- a/projects/app/src/pages/index.tsx +++ b/projects/app/src/pages/index.tsx @@ -1,4 +1,4 @@ -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import React, { useEffect } from 'react'; import Loading from '@fastgpt/web/components/common/MyLoading'; import { useRouter } from 'next/router'; diff --git a/projects/app/src/pages/login/fastlogin.tsx b/projects/app/src/pages/login/fastlogin.tsx index 514a9e476..020caeaaf 100644 --- a/projects/app/src/pages/login/fastlogin.tsx +++ b/projects/app/src/pages/login/fastlogin.tsx @@ -6,7 +6,7 @@ import { clearToken } from '@/web/support/user/auth'; import { postFastLogin } from '@/web/support/user/api'; import { useToast } from '@fastgpt/web/hooks/useToast'; import Loading from '@fastgpt/web/components/common/MyLoading'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { getErrText } from '@fastgpt/global/common/error/utils'; import { useTranslation } from 'next-i18next'; const FastLogin = ({ diff --git a/projects/app/src/pages/login/index.tsx b/projects/app/src/pages/login/index.tsx index add812a0a..a0fa287b4 100644 --- a/projects/app/src/pages/login/index.tsx +++ b/projects/app/src/pages/login/index.tsx @@ -17,7 +17,7 @@ import { useRouter } from 'next/router'; import { useUserStore } from '@/web/support/user/useUserStore'; import { useChatStore } from '@/web/core/chat/context/useChatStore'; import dynamic from 'next/dynamic'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { clearToken } from '@/web/support/user/auth'; import Script from 'next/script'; import Loading from '@fastgpt/web/components/common/MyLoading'; diff --git a/projects/app/src/pages/login/provider.tsx b/projects/app/src/pages/login/provider.tsx index 276d44925..ffce5922b 100644 --- a/projects/app/src/pages/login/provider.tsx +++ b/projects/app/src/pages/login/provider.tsx @@ -7,7 +7,7 @@ import { clearToken } from '@/web/support/user/auth'; import { oauthLogin } from '@/web/support/user/api'; import { useToast } from '@fastgpt/web/hooks/useToast'; import Loading from '@fastgpt/web/components/common/MyLoading'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { getErrText } from '@fastgpt/global/common/error/utils'; import { useTranslation } from 'next-i18next'; import { OAuthEnum } from '@fastgpt/global/support/user/constant'; diff --git a/projects/app/src/pages/more/index.tsx b/projects/app/src/pages/more/index.tsx index 0340b5f5d..86fc4ba1a 100644 --- a/projects/app/src/pages/more/index.tsx +++ b/projects/app/src/pages/more/index.tsx @@ -4,7 +4,7 @@ import { ChevronRightIcon } from '@chakra-ui/icons'; import MyIcon from '@fastgpt/web/components/common/Icon'; import { useRouter } from 'next/router'; import { useSystemStore } from '@/web/common/system/useSystemStore'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { useTranslation } from 'next-i18next'; import { getDocPath } from '@/web/common/system/doc'; diff --git a/projects/app/src/pages/price/index.tsx b/projects/app/src/pages/price/index.tsx index 53f9965b5..9171e8484 100644 --- a/projects/app/src/pages/price/index.tsx +++ b/projects/app/src/pages/price/index.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { Box, Flex, HStack, VStack } from '@chakra-ui/react'; import { useUserStore } from '@/web/support/user/useUserStore'; import { getTeamPlanStatus } from '@/web/support/user/team/api'; diff --git a/projects/app/src/pages/toolkit/index.tsx b/projects/app/src/pages/toolkit/index.tsx index 9dcea82a3..8fe13508e 100644 --- a/projects/app/src/pages/toolkit/index.tsx +++ b/projects/app/src/pages/toolkit/index.tsx @@ -1,4 +1,4 @@ -import { serviceSideProps } from '@fastgpt/web/common/system/nextjs'; +import { serviceSideProps } from '@/web/common/system/nextjs'; import { getPluginGroups, getSystemPlugTemplates } from '@/web/core/app/api/plugin'; import { Box, Flex, Grid, useDisclosure } from '@chakra-ui/react'; import Avatar from '@fastgpt/web/components/common/Avatar'; diff --git a/packages/web/common/system/nextjs.ts b/projects/app/src/web/common/system/nextjs.ts similarity index 89% rename from packages/web/common/system/nextjs.ts rename to projects/app/src/web/common/system/nextjs.ts index 54a4bb9c4..14d44baab 100644 --- a/packages/web/common/system/nextjs.ts +++ b/projects/app/src/web/common/system/nextjs.ts @@ -1,4 +1,4 @@ -import { I18nNsType } from '../../types/i18next'; +import { I18nNsType } from '@fastgpt/web/types/i18next'; import { serverSideTranslations } from 'next-i18next/serverSideTranslations'; export const serviceSideProps = async (content: any, ns: I18nNsType = []) => {