Commit 18efdb54 by heheer Committed by GitHub

fix: chat page team app types (#5927)

parent fea7c51d
...@@ -8,7 +8,7 @@ import { useTranslation } from 'next-i18next'; ...@@ -8,7 +8,7 @@ import { useTranslation } from 'next-i18next';
import MyBox from '@fastgpt/web/components/common/MyBox'; import MyBox from '@fastgpt/web/components/common/MyBox';
import { useContextSelector } from 'use-context-selector'; import { useContextSelector } from 'use-context-selector';
import { AppListContext } from '@/pageComponents/dashboard/agent/context'; import { AppListContext } from '@/pageComponents/dashboard/agent/context';
import { AppTypeEnum } from '@fastgpt/global/core/app/constants'; import { AppTypeEnum, ToolTypeList } from '@fastgpt/global/core/app/constants';
import MyTooltip from '@fastgpt/web/components/common/MyTooltip'; import MyTooltip from '@fastgpt/web/components/common/MyTooltip';
import AppTypeTag from '@/pageComponents/chat/ChatTeamApp/TypeTag'; import AppTypeTag from '@/pageComponents/chat/ChatTeamApp/TypeTag';
...@@ -18,7 +18,7 @@ import UserBox from '@fastgpt/web/components/common/UserBox'; ...@@ -18,7 +18,7 @@ import UserBox from '@fastgpt/web/components/common/UserBox';
import { ChatSettingContext } from '@/web/core/chat/context/chatSettingContext'; import { ChatSettingContext } from '@/web/core/chat/context/chatSettingContext';
import { ChatSidebarPaneEnum } from '@/pageComponents/chat/constants'; import { ChatSidebarPaneEnum } from '@/pageComponents/chat/constants';
const ListItem = ({ appType }: { appType: AppTypeEnum | 'all' }) => { const List = ({ appType }: { appType: AppTypeEnum | 'all' }) => {
const { t } = useTranslation(); const { t } = useTranslation();
const router = useRouter(); const router = useRouter();
const { isPc } = useSystem(); const { isPc } = useSystem();
...@@ -26,15 +26,11 @@ const ListItem = ({ appType }: { appType: AppTypeEnum | 'all' }) => { ...@@ -26,15 +26,11 @@ const ListItem = ({ appType }: { appType: AppTypeEnum | 'all' }) => {
const myApps = useContextSelector(AppListContext, (v) => const myApps = useContextSelector(AppListContext, (v) =>
v.myApps.filter( v.myApps.filter(
(app) => (app) =>
appType === app.type || appType === 'all' ||
app.type === AppTypeEnum.folder || [
(appType === 'all' && appType,
[ ToolTypeList.includes(appType) ? AppTypeEnum.toolFolder : AppTypeEnum.folder
AppTypeEnum.folder, ].includes(app.type)
AppTypeEnum.simple,
AppTypeEnum.workflow,
AppTypeEnum.workflowTool
].includes(app.type))
) )
); );
const handlePaneChange = useContextSelector(ChatSettingContext, (v) => v.handlePaneChange); const handlePaneChange = useContextSelector(ChatSettingContext, (v) => v.handlePaneChange);
...@@ -150,4 +146,4 @@ const ListItem = ({ appType }: { appType: AppTypeEnum | 'all' }) => { ...@@ -150,4 +146,4 @@ const ListItem = ({ appType }: { appType: AppTypeEnum | 'all' }) => {
</> </>
); );
}; };
export default ListItem; export default List;
...@@ -339,7 +339,9 @@ const DashboardContainer = ({ ...@@ -339,7 +339,9 @@ const DashboardContainer = ({
); );
})} })}
</Box> </Box>
<TeamPlanStatusCard /> <Box px={2.5}>
<TeamPlanStatusCard />
</Box>
</MyBox> </MyBox>
)} )}
......
...@@ -72,12 +72,27 @@ const AppListContextProvider = ({ children }: { children: ReactNode }) => { ...@@ -72,12 +72,27 @@ const AppListContextProvider = ({ children }: { children: ReactNode }) => {
loading: isFetchingApps loading: isFetchingApps
} = useRequest2( } = useRequest2(
() => { () => {
const isAgent = router.pathname.includes('/agent'); const formatType = (() => {
const formatType = isAgent // chat page show all apps
? !type || type === 'all' if (router.pathname.includes('/chat')) {
? [AppTypeEnum.folder, AppTypeEnum.simple, AppTypeEnum.workflow] return [
: [AppTypeEnum.folder, type] AppTypeEnum.folder,
: !type || type === 'all' AppTypeEnum.toolFolder,
AppTypeEnum.simple,
AppTypeEnum.workflow,
AppTypeEnum.workflowTool
];
}
// agent page
if (router.pathname.includes('/agent')) {
return !type || type === 'all'
? [AppTypeEnum.folder, AppTypeEnum.simple, AppTypeEnum.workflow]
: [AppTypeEnum.folder, type];
}
// tool page
return !type || type === 'all'
? [ ? [
AppTypeEnum.toolFolder, AppTypeEnum.toolFolder,
AppTypeEnum.workflowTool, AppTypeEnum.workflowTool,
...@@ -85,6 +100,8 @@ const AppListContextProvider = ({ children }: { children: ReactNode }) => { ...@@ -85,6 +100,8 @@ const AppListContextProvider = ({ children }: { children: ReactNode }) => {
AppTypeEnum.httpToolSet AppTypeEnum.httpToolSet
] ]
: [AppTypeEnum.toolFolder, type]; : [AppTypeEnum.toolFolder, type];
})();
return getMyApps({ parentId, type: formatType, searchKey }); return getMyApps({ parentId, type: formatType, searchKey });
}, },
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment