fix: Move plugin code to common

This commit is contained in:
maggieyyy
2024-11-06 14:26:38 +08:00
parent 503515281d
commit a092ed1108
5 changed files with 959 additions and 970 deletions
@@ -1,22 +1,10 @@
import { BrowserRouter as Router, Routes, Route, Navigate, Outlet } from 'react-router-dom';
import Login from "@core/pages/Login.tsx"
import { BrowserRouter as Router, Routes, Route, Navigate } from 'react-router-dom';
import BasicLayout from '@common/components/aoplatform/BasicLayout';
import {createElement, ReactElement,ReactNode,Suspense, useEffect, useState} from 'react';
import { v4 as uuidv4 } from 'uuid'
import {App, Skeleton} from "antd";
import ApprovalPage from "@core/pages/approval/ApprovalPage.tsx";
import {SystemProvider} from "@core/contexts/SystemContext.tsx";
import {useGlobalContext} from "@common/contexts/GlobalStateContext.tsx";
import {FC,lazy} from 'react';
import { TeamProvider } from '@core/contexts/TeamContext.tsx';
import SystemOutlet from '@core/pages/system/SystemOutlet.tsx';
import { DashboardProvider } from '@core/contexts/DashboardContext.tsx';
import { TenantManagementProvider } from '@market/contexts/TenantManagementContext.tsx';
import React from 'react';
import usePluginLoader from '@businessEntry/hooks/pluginLoader.ts';
import Guide from '@core/pages/guide/Guide.tsx';
import AiServiceOutlet from '@core/pages/aiService/AiServiceOutlet.tsx';
import { AiServiceProvider } from '@core/contexts/AiServiceContext.tsx';
import {FC} from 'react';import React from 'react';
import usePluginLoader from '@common/hooks/pluginLoader.ts';
export type RouteConfig = {
path:string
@@ -26,7 +14,6 @@ export type RouteConfig = {
provider?:FC<{ children: ReactNode; }>
lazy?:unknown
}
const APP_MODE = import.meta.env.VITE_APP_MODE;
export type RouterParams = {
teamId:string
apiId:string
@@ -47,477 +34,477 @@ export type RouterParams = {
roleId:string
}
const PUBLIC_ROUTES:RouteConfig[] = [
{
path:'/',
component:<Login/>,
key: 'root',
},
{
path:'/login',
component:<Login/>,
key: 'login'
},
{
path:'/',
component:<ProtectedRoute/>,
key: 'layout',
children:[
{
path:'guide/*',
component:<Guide />,
key:'guide'
},
{
path:'team',
component:<Outlet/>,
key: 'team',
provider: TeamProvider,
children:[
{
path:'',
key: 'teamList',
component: <Navigate to="list" />
},
{
path:'list',
key: 'teamList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamList.tsx'))
},
{
path:'inside/:teamId',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamInsidePage.tsx')),
key: 'teamInside',
children:[
{
path:'member',
key: 'teamMember',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamInsideMember.tsx')),
},
{
path:'setting',
key: 'teamSetting',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamConfig.tsx')),
},
]
}
]
},
{
path:'service',
component:<SystemOutlet />,
key: 'restService',
provider: SystemProvider,
children:[
{
path:'',
key:'restServiceList',
component:<Navigate to="list" />
},
{
path:'list',
key: 'restServiceList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemList.tsx')),
},
{
path:'list/:teamId',
key: 'restServiceList3',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemList.tsx')),
},
{
path:':teamId',
component:<Outlet/>,
key: 'restServiceInside',
children:[
{
path:'inside/:serviceId',
key: 'restServiceInside2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsidePage.tsx')),
children:[
{
path:'api',
key: 'restServiceInsideApi',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideApiDocument.tsx')),
},
{
// const PUBLIC_ROUTES:RouteConfig[] = [
// {
// path:'/',
// component:<Login/>,
// key: 'root',
// },
// {
// path:'/login',
// component:<Login/>,
// key: 'login'
// },
// {
// path:'/',
// component:<ProtectedRoute/>,
// key: 'layout',
// children:[
// {
// path:'guide/*',
// component:<Guide />,
// key:'guide'
// },
// {
// path:'team',
// component:<Outlet/>,
// key: 'team',
// provider: TeamProvider,
// children:[
// {
// path:'',
// key: 'teamList',
// component: <Navigate to="list" />
// },
// {
// path:'list',
// key: 'teamList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamList.tsx'))
// },
// {
// path:'inside/:teamId',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamInsidePage.tsx')),
// key: 'teamInside',
// children:[
// {
// path:'member',
// key: 'teamMember',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamInsideMember.tsx')),
// },
// {
// path:'setting',
// key: 'teamSetting',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamConfig.tsx')),
// },
// ]
// }
// ]
// },
// {
// path:'service',
// component:<SystemOutlet />,
// key: 'restService',
// provider: SystemProvider,
// children:[
// {
// path:'',
// key:'restServiceList',
// component:<Navigate to="list" />
// },
// {
// path:'list',
// key: 'restServiceList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemList.tsx')),
// },
// {
// path:'list/:teamId',
// key: 'restServiceList3',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemList.tsx')),
// },
// {
// path:':teamId',
// component:<Outlet/>,
// key: 'restServiceInside',
// children:[
// {
// path:'inside/:serviceId',
// key: 'restServiceInside2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsidePage.tsx')),
// children:[
// {
// path:'api',
// key: 'restServiceInsideApi',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideApiDocument.tsx')),
// },
// {
path:'route/create',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterCreate')),
},
{
// path:'route/create',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterCreate')),
// },
// {
path:'route/:routeId',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterCreate')),
},
{
path:'route',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterList')),
},
{
path:'upstream',
key: 'restServiceInsideUpstream',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/upstream/SystemInsideUpstreamContent.tsx')),
},
{
path:'document',
key: 'restServiceInsideDocument',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsideDocument.tsx')),
},
{
path:'subscriber',
key: 'restServiceInsideSubscriber',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsideSubscriber.tsx')),
children:[
// path:'route/:routeId',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterCreate')),
// },
// {
// path:'route',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterList')),
// },
// {
// path:'upstream',
// key: 'restServiceInsideUpstream',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/upstream/SystemInsideUpstreamContent.tsx')),
// },
// {
// path:'document',
// key: 'restServiceInsideDocument',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsideDocument.tsx')),
// },
// {
// path:'subscriber',
// key: 'restServiceInsideSubscriber',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsideSubscriber.tsx')),
// children:[
]
},
{
path:'approval',
key: 'restServiceInsideApproval',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApproval.tsx')),
children:[
{
path:'',
key: 'restServiceInsideApprovalList',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApprovalList.tsx')),
},
{
path:'*',
key: 'restServiceInsideApprovalList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApprovalList.tsx')),
}
]
},
{
path:'topology',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemTopology.tsx')),
key: 'systemTopology',
children:[
]
},
{
path:'publish',
key: 'systemPublish',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublish.tsx')),
children:[
{
path:'',
key: 'systemPublishList',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublishList.tsx')),
},
{
path:'*',
key: 'systemPublishList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublishList.tsx')),
}
]
},
{
path:'setting',
key: 'systemConfig',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemConfig.tsx')),
children:[
]
},
]
},
{
path:'aiInside/:serviceId',
component:<AiServiceOutlet />,
provider: AiServiceProvider,
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsidePage.tsx')),
children:[
{
path:'api',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideApiDocument')),
},
{
// ]
// },
// {
// path:'approval',
// key: 'restServiceInsideApproval',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApproval.tsx')),
// children:[
// {
// path:'',
// key: 'restServiceInsideApprovalList',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApprovalList.tsx')),
// },
// {
// path:'*',
// key: 'restServiceInsideApprovalList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApprovalList.tsx')),
// }
// ]
// },
// {
// path:'topology',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemTopology.tsx')),
// key: 'systemTopology',
// children:[
// ]
// },
// {
// path:'publish',
// key: 'systemPublish',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublish.tsx')),
// children:[
// {
// path:'',
// key: 'systemPublishList',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublishList.tsx')),
// },
// {
// path:'*',
// key: 'systemPublishList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublishList.tsx')),
// }
// ]
// },
// {
// path:'setting',
// key: 'systemConfig',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemConfig.tsx')),
// children:[
// ]
// },
// ]
// },
// {
// path:'aiInside/:serviceId',
// component:<AiServiceOutlet />,
// provider: AiServiceProvider,
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsidePage.tsx')),
// children:[
// {
// path:'api',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideApiDocument')),
// },
// {
path:'route/create',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterCreate')),
},
{
// path:'route/create',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterCreate')),
// },
// {
path:'route/:routeId',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterCreate')),
},
{
path:'route',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterList')),
},
{
path:'document',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsideDocument.tsx')),
},
{
path:'subscriber',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsideSubscriber.tsx')),
children:[
// path:'route/:routeId',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterCreate')),
// },
// {
// path:'route',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterList')),
// },
// {
// path:'document',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsideDocument.tsx')),
// },
// {
// path:'subscriber',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsideSubscriber.tsx')),
// children:[
]
},
{
path:'approval',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApproval')),
children:[
{
path:'',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApprovalList')),
},
{
path:'*',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApprovalList')),
}
]
},
{
path:'publish',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublish')),
children:[
{
path:'',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublishList')),
},
{
path:'*',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublishList')),
}
]
},
{
path:'setting',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemConfig.tsx')),
children:[
// ]
// },
// {
// path:'approval',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApproval')),
// children:[
// {
// path:'',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApprovalList')),
// },
// {
// path:'*',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApprovalList')),
// }
// ]
// },
// {
// path:'publish',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublish')),
// children:[
// {
// path:'',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublishList')),
// },
// {
// path:'*',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublishList')),
// }
// ]
// },
// {
// path:'setting',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemConfig.tsx')),
// children:[
]
},
]
}
]
}
]
},
{
path:'datasourcing',
key: 'dataSourcing',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideDashboardSetting.tsx')),
},
{
path:'cluster',
key: 'cluster',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideCluster.tsx')),
},
{
path:'aisetting',
key: 'aiSetting',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiSetting/AiSettingList.tsx')),
},
{
path:'cert',
key: 'cert',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideCert.tsx')),
},
{
path:'serviceHub',
component:<Outlet />,
key:'serviceHub',
children:[
{
path:'',
key: 'serviceHubList',
component: <Navigate to="list" />
},
{
path:'list',
key:'serviceHubList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/ServiceHubList.tsx')),
},
{
path:'detail/:serviceId',
key:'serviceHubDetail',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/ServiceHubDetail.tsx')),
}]
},
{
path:'commonsetting',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/common/CommonPage.tsx')),
key:uuidv4(),
},
{
path:'consumer',
component:<Outlet />,
provider:TenantManagementProvider,
key:'tenantManagement',
children:[
{
path:'',
key:'tenantManagementList',
component:<Navigate to="list" />
},
{
path:':teamId/inside/:appId',
key:'tenantManagementInside',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsidePage.tsx')),
children:[
{
path:'service',
key:'tenantManagementInsideService',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsideService.tsx')),
},
{
path:'authorization',
key:'tenantManagementInsideAuthorization',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsideAuth.tsx')),
},
{
path:'setting',
key:'tenantManagementSetting',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementAppSetting.tsx')),
},
]
},
{
path:'list',
key:'serviceHubManagementList',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ServiceHubManagement.tsx')),
},
{
path:'list/:teamId',
key:'serviceHubManagementList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ServiceHubManagement.tsx')),
},
]
},
{
path:'member',
key:'member',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberPage.tsx')),
children:[
{
path:'',
key:'memberList',
component:<Navigate to="list" />
},
{
path:'list',
key:'memberList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberList.tsx')),
},
{
path:'list/:memberGroupId',
key:'memberList3',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberList.tsx')),
}
]
},
{
path:'role',
key:'role',
component:<Outlet />,
children:[
{
path: '',
key: 'roleList',
component: <Navigate to="list" />
},
{
path:'list',
key:'roleList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleList.tsx')),
},{
path:':roleType/config/:roleId',
key:'roleConfig',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleConfig.tsx')),
},{
path:':roleType/config',
key:'roleConfig2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleConfig.tsx')),
}
]
},
{
path:'analytics',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@dashboard/pages/Dashboard.tsx')),
key:'analytics',
children:[
{
path:'total',
key:'analytics2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@dashboard/pages/DashboardTotal.tsx')),
},
]
},
{
path:'template/:moduleId',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
key:'intelligentPlugin'
},
{
path:'logsettings/*',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/logsettings/LogSettings.tsx')),
key: 'logSettings',
children:[{
path:'template/:moduleId',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
key:'logSettings2'
}]
// ]
// },
// ]
// }
// ]
// }
// ]
// },
// {
// path:'datasourcing',
// key: 'dataSourcing',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideDashboardSetting.tsx')),
// },
// {
// path:'cluster',
// key: 'cluster',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideCluster.tsx')),
// },
// {
// path:'aisetting',
// key: 'aiSetting',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiSetting/AiSettingList.tsx')),
// },
// {
// path:'cert',
// key: 'cert',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideCert.tsx')),
// },
// {
// path:'serviceHub',
// component:<Outlet />,
// key:'serviceHub',
// children:[
// {
// path:'',
// key: 'serviceHubList',
// component: <Navigate to="list" />
// },
// {
// path:'list',
// key:'serviceHubList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/ServiceHubList.tsx')),
// },
// {
// path:'detail/:serviceId',
// key:'serviceHubDetail',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/ServiceHubDetail.tsx')),
// }]
// },
// {
// path:'commonsetting',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/common/CommonPage.tsx')),
// key:uuidv4(),
// },
// {
// path:'consumer',
// component:<Outlet />,
// provider:TenantManagementProvider,
// key:'tenantManagement',
// children:[
// {
// path:'',
// key:'tenantManagementList',
// component:<Navigate to="list" />
// },
// {
// path:':teamId/inside/:appId',
// key:'tenantManagementInside',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsidePage.tsx')),
// children:[
// {
// path:'service',
// key:'tenantManagementInsideService',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsideService.tsx')),
// },
// {
// path:'authorization',
// key:'tenantManagementInsideAuthorization',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsideAuth.tsx')),
// },
// {
// path:'setting',
// key:'tenantManagementSetting',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementAppSetting.tsx')),
// },
// ]
// },
// {
// path:'list',
// key:'serviceHubManagementList',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ServiceHubManagement.tsx')),
// },
// {
// path:'list/:teamId',
// key:'serviceHubManagementList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ServiceHubManagement.tsx')),
// },
// ]
// },
// {
// path:'member',
// key:'member',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberPage.tsx')),
// children:[
// {
// path:'',
// key:'memberList',
// component:<Navigate to="list" />
// },
// {
// path:'list',
// key:'memberList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberList.tsx')),
// },
// {
// path:'list/:memberGroupId',
// key:'memberList3',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberList.tsx')),
// }
// ]
// },
// {
// path:'role',
// key:'role',
// component:<Outlet />,
// children:[
// {
// path: '',
// key: 'roleList',
// component: <Navigate to="list" />
// },
// {
// path:'list',
// key:'roleList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleList.tsx')),
// },{
// path:':roleType/config/:roleId',
// key:'roleConfig',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleConfig.tsx')),
// },{
// path:':roleType/config',
// key:'roleConfig2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleConfig.tsx')),
// }
// ]
// },
// {
// path:'analytics',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@dashboard/pages/Dashboard.tsx')),
// key:'analytics',
// children:[
// {
// path:'total',
// key:'analytics2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@dashboard/pages/DashboardTotal.tsx')),
// },
// ]
// },
// {
// path:'template/:moduleId',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
// key:'intelligentPlugin'
// },
// {
// path:'logsettings/*',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/logsettings/LogSettings.tsx')),
// key: 'logSettings',
// children:[{
// path:'template/:moduleId',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
// key:'logSettings2'
// }]
},
APP_MODE ==='pro' && {
path:'resourcesettings/*',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/resourcesettings/ResourceSettings.tsx')),
key: 'resourceSettings',
children:[{
path:'template/:moduleId',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
key:'resourceSettings2'
}]
// },
// APP_MODE ==='pro' && {
// path:'resourcesettings/*',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/resourcesettings/ResourceSettings.tsx')),
// key: 'resourceSettings',
// children:[{
// path:'template/:moduleId',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
// key:'resourceSettings2'
// }]
},
{
path:'userProfile/*',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/userProfile/UserProfile.tsx')),
key:'userProfile',
children:[{
path:'changepsw',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/userProfile/ChangePsw.tsx')),
key:'changePsw'
}]
},
APP_MODE === 'pro' &&{
path:'openapi',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@openApi/pages/OpenApiList.tsx')),
key:'openApi',
},
{
path:'systemrunning',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@systemRunning/pages/SystemRunning.tsx')),
key:'systemRunning'
},
]
}
]
// },
// {
// path:'userProfile/*',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/userProfile/UserProfile.tsx')),
// key:'userProfile',
// children:[{
// path:'changepsw',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/userProfile/ChangePsw.tsx')),
// key:'changePsw'
// }]
// },
// APP_MODE === 'pro' &&{
// path:'openapi',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@openApi/pages/OpenApiList.tsx')),
// key:'openApi',
// },
// {
// path:'systemrunning',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@systemRunning/pages/SystemRunning.tsx')),
// key:'systemRunning'
// },
// ]
// }
// ]
const RenderRoutes = ()=> {
const { loadPlugins } = usePluginLoader()
const [routeConfig , setRouteConfig] = useState<RouteConfig[]>(PUBLIC_ROUTES)
const [routeConfig , setRouteConfig] = useState<RouteConfig[]>([])
useEffect(()=>{
loadPlugins().then((res)=>{
console.log('newRouteConfig',res)
@@ -0,0 +1,31 @@
import { ReactElement,ReactNode,FC } from 'react';
export type RouteConfig = {
path:string
component?:ReactElement
children?:(RouteConfig|false)[]
key:string
provider?:FC<{ children: ReactNode; }>
lazy?:unknown
}
export type RouterParams = {
teamId:string
apiId:string
serviceId:string
clusterId:string;
memberGroupId:string
userGroupId:string
pluginName:string
moduleId:string
accessType:'project'|'team'|'service'
categoryId:string
tagId:string
dashboardType:string
dashboardDetailId:string
topologyId:string
appId:string
roleType:string
roleId:string
routeId:string
}
@@ -28,6 +28,6 @@
"@businessEntry/*": ["./src/*"],
},
},
"include": ["src", "public/iconpark_eolink.js", "public/iconpark_apinto.js", "../common/src/component/aoplatform/EditableTableWithModal.tsx", "../common/src/components/aoplatform/TreeWithMore.tsx", "../common/src/components/aoplatform/DatePicker.tsx", "../common/src/components/aoplatform/TimeRangeSelector.tsx", "../common/src/components/aoplatform/TimePicker.tsx", "../common/src/components/aoplatform/MemberTransfer.tsx", "../common/src/components/aoplatform/Navigation.tsx", "../common/src/components/aoplatform/PageList.tsx", "../common/src/components/aoplatform/ErrorBoundary.tsx", "../common/src/components/aoplatform/ScrollableSection.tsx", "../common/src/utils/postcat.tsx", "../common/src/utils/curl.ts", "../common/src/components/aoplatform/ResetPsw.tsx", "../common/src/components/aoplatform/SubscribeApprovalModalContent.tsx", "src/components/aoplatform/RenderRoutes.tsx", "../common/src/components/aoplatform/PublishApprovalModalContent.tsx", "../common/src/components/aoplatform/InsidePage.tsx", "../common/src/const/type.ts", "../common/src/components/aoplatform/intelligent-plugin", "../common/src/const/domain"],
"include": ["src", "public/iconpark_eolink.js", "public/iconpark_apinto.js", "../common/src/component/aoplatform/EditableTableWithModal.tsx", "../common/src/components/aoplatform/TreeWithMore.tsx", "../common/src/components/aoplatform/DatePicker.tsx", "../common/src/components/aoplatform/TimeRangeSelector.tsx", "../common/src/components/aoplatform/TimePicker.tsx", "../common/src/components/aoplatform/MemberTransfer.tsx", "../common/src/components/aoplatform/Navigation.tsx", "../common/src/components/aoplatform/PageList.tsx", "../common/src/components/aoplatform/ErrorBoundary.tsx", "../common/src/components/aoplatform/ScrollableSection.tsx", "../common/src/utils/postcat.tsx", "../common/src/utils/curl.ts", "../common/src/components/aoplatform/ResetPsw.tsx", "../common/src/components/aoplatform/SubscribeApprovalModalContent.tsx", "src/components/aoplatform/RenderRoutes.tsx", "../common/src/components/aoplatform/PublishApprovalModalContent.tsx", "../common/src/components/aoplatform/InsidePage.tsx", "../common/src/const/type.ts", "../common/src/components/aoplatform/intelligent-plugin", "../common/src/const/domain", "../common/src/hooks/pluginLoader.ts"],
"references": [{ "path": "./tsconfig.node.json" }]
}
@@ -1,517 +1,488 @@
import { BrowserRouter as Router, Routes, Route, Navigate, Outlet } from 'react-router-dom';
import Login from "@core/pages/Login.tsx"
import { BrowserRouter as Router, Routes, Route, Navigate } from 'react-router-dom';
import BasicLayout from '@common/components/aoplatform/BasicLayout';
import {createElement, ReactElement,ReactNode,Suspense} from 'react';
import { v4 as uuidv4 } from 'uuid'
import {createElement,Suspense, useEffect, useState} from 'react';
import {App, Skeleton} from "antd";
import {SystemProvider} from "@core/contexts/SystemContext.tsx";
import {useGlobalContext} from "@common/contexts/GlobalStateContext.tsx";
import {FC,lazy} from 'react';
import { TeamProvider } from '@core/contexts/TeamContext.tsx';
import { TenantManagementProvider } from '@market/contexts/TenantManagementContext.tsx';
import Guide from '@core/pages/guide/Guide';
import { AiServiceProvider } from '@core/contexts/AiServiceContext';
import AiServiceOutlet from '@core/pages/aiService/AiServiceOutlet';
import SystemOutlet from '@core/pages/system/SystemOutlet';
import usePluginLoader from '@common/hooks/pluginLoader.ts';
import { RouteConfig } from '@common/const/type.ts';
type RouteConfig = {
path:string
component?:ReactElement
children?:(RouteConfig|false)[]
key:string
provider?:FC<{ children: ReactNode; }>
lazy?:unknown
}
const APP_MODE = import.meta.env.VITE_APP_MODE;
export type RouterParams = {
teamId:string
apiId:string
serviceId:string
clusterId:string;
memberGroupId:string
userGroupId:string
pluginName:string
moduleId:string
accessType:'project'|'team'|'service'
categoryId:string
tagId:string
dashboardType:string
dashboardDetailId:string
topologyId:string
appId:string
roleType:string
roleId:string
routeId:string
}
const PUBLIC_ROUTES:RouteConfig[] = [
{
path:'/',
component:<Login/>,
key: 'root',
},
{
path:'/login',
component:<Login/>,
key: 'login'
},
{
path:'/',
component:<ProtectedRoute/>,
key: 'layout',
children:[
{
path:'guide/*',
component:<Guide />,
key:'guide'
},
{
path:'team',
component:<Outlet/>,
key: 'team',
provider: TeamProvider,
children:[
{
path:'',
key: 'teamList',
component: <Navigate to="list" />
},
{
path:'list',
key: 'teamList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamList.tsx'))
},
{
path:'inside/:teamId',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamInsidePage.tsx')),
key: 'teamInside',
children:[
{
path:'member',
key: 'teamMember',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamInsideMember.tsx')),
},
{
path:'setting',
key: 'teamSetting',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamConfig.tsx')),
},
]
}
]
},
{
path:'service',
key: uuidv4(),
component:<SystemOutlet />,
key: 'restService',
provider: SystemProvider,
children:[
{
path:'',
key:'restServiceList',
component:<Navigate to="list" />
},
{
path:'list',
key: 'restServiceList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemList.tsx')),
},
{
path:'list/:teamId',
key: 'restServiceList3',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemList.tsx')),
},
{
path:':teamId',
component:<Outlet/>,
key: 'restServiceInside',
children:[
{
path:'inside/:serviceId',
key: 'restServiceInside2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsidePage.tsx')),
children:[
{
path:'api',
key: 'restServiceInsideApi',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideApiDocument.tsx')),
},
{
// // const PUBLIC_ROUTES:RouteConfig[] = [
// {
// path:'/',
// component:<Login/>,
// key: 'root',
// },
// {
// path:'/login',
// component:<Login/>,
// key: 'login'
// },
// {
// path:'/',
// component:<ProtectedRoute/>,
// key: 'layout',
// children:[
// {
// path:'guide/*',
// component:<Guide />,
// key:'guide'
// },
// {
// path:'team',
// component:<Outlet/>,
// key: 'team',
// provider: TeamProvider,
// children:[
// {
// path:'',
// key: 'teamList',
// component: <Navigate to="list" />
// },
// {
// path:'list',
// key: 'teamList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamList.tsx'))
// },
// {
// path:'inside/:teamId',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamInsidePage.tsx')),
// key: 'teamInside',
// children:[
// {
// path:'member',
// key: 'teamMember',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamInsideMember.tsx')),
// },
// {
// path:'setting',
// key: 'teamSetting',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/team/TeamConfig.tsx')),
// },
// ]
// }
// ]
// },
// {
// path:'service',
// key: uuidv4(),
// component:<SystemOutlet />,
// key: 'restService',
// provider: SystemProvider,
// children:[
// {
// path:'',
// key:'restServiceList',
// component:<Navigate to="list" />
// },
// {
// path:'list',
// key: 'restServiceList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemList.tsx')),
// },
// {
// path:'list/:teamId',
// key: 'restServiceList3',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemList.tsx')),
// },
// {
// path:':teamId',
// component:<Outlet/>,
// key: 'restServiceInside',
// children:[
// {
// path:'inside/:serviceId',
// key: 'restServiceInside2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsidePage.tsx')),
// children:[
// {
// path:'api',
// key: 'restServiceInsideApi',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideApiDocument.tsx')),
// },
// {
path:'route/create',
key: 'restServiceInsideRouteCreate',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterCreate')),
},
{
// path:'route/create',
// key: 'restServiceInsideRouteCreate',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterCreate')),
// },
// {
path:'route/:routeId',
key: 'restServiceInsideRouteEdit',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterCreate')),
},
{
path:'route',
key: 'restServiceInsideRoute',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterList')),
},
{
path:'upstream',
key: 'restServiceInsideUpstream',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/upstream/SystemInsideUpstreamContent.tsx')),
},
{
path:'document',
key: 'restServiceInsideDocument',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsideDocument.tsx')),
},
{
path:'subscriber',
key: 'restServiceInsideSubscriber',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsideSubscriber.tsx')),
children:[
// path:'route/:routeId',
// key: 'restServiceInsideRouteEdit',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterCreate')),
// },
// {
// path:'route',
// key: 'restServiceInsideRoute',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/api/SystemInsideRouterList')),
// },
// {
// path:'upstream',
// key: 'restServiceInsideUpstream',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/upstream/SystemInsideUpstreamContent.tsx')),
// },
// {
// path:'document',
// key: 'restServiceInsideDocument',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsideDocument.tsx')),
// },
// {
// path:'subscriber',
// key: 'restServiceInsideSubscriber',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemInsideSubscriber.tsx')),
// children:[
]
},
{
path:'approval',
key: 'restServiceInsideApproval',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApproval.tsx')),
children:[
{
path:'',
key: 'restServiceInsideApprovalList',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApprovalList.tsx')),
},
{
path:'*',
key: 'restServiceInsideApprovalList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApprovalList.tsx')),
}
]
},
{
path:'topology',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemTopology.tsx')),
key: 'systemTopology',
children:[
]
},
{
path:'publish',
key: 'systemPublish',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublish.tsx')),
children:[
{
path:'',
key: 'systemPublishList',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublishList.tsx')),
},
{
path:'*',
key: 'systemPublishList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublishList.tsx')),
}
]
},
{
path:'setting',
key: 'systemConfig',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemConfig.tsx')),
children:[
// ]
// },
// {
// path:'approval',
// key: 'restServiceInsideApproval',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApproval.tsx')),
// children:[
// {
// path:'',
// key: 'restServiceInsideApprovalList',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApprovalList.tsx')),
// },
// {
// path:'*',
// key: 'restServiceInsideApprovalList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/approval/SystemInsideApprovalList.tsx')),
// }
// ]
// },
// {
// path:'topology',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemTopology.tsx')),
// key: 'systemTopology',
// children:[
// ]
// },
// {
// path:'publish',
// key: 'systemPublish',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublish.tsx')),
// children:[
// {
// path:'',
// key: 'systemPublishList',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublishList.tsx')),
// },
// {
// path:'*',
// key: 'systemPublishList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/publish/SystemInsidePublishList.tsx')),
// }
// ]
// },
// {
// path:'setting',
// key: 'systemConfig',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemConfig.tsx')),
// children:[
]
},
]
},
{
path:'aiInside/:serviceId',
component:<AiServiceOutlet />,
provider: AiServiceProvider,
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsidePage.tsx')),
children:[
{
path:'api',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideApiDocument')),
},
{
// ]
// },
// ]
// },
// {
// path:'aiInside/:serviceId',
// component:<AiServiceOutlet />,
// provider: AiServiceProvider,
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsidePage.tsx')),
// children:[
// {
// path:'api',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideApiDocument')),
// },
// {
path:'route/create',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterCreate')),
},
{
// path:'route/create',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterCreate')),
// },
// {
path:'route/:routeId',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterCreate')),
},
{
path:'route',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterList')),
},
{
path:'document',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsideDocument.tsx')),
},
{
path:'subscriber',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsideSubscriber.tsx')),
children:[
// path:'route/:routeId',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterCreate')),
// },
// {
// path:'route',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/api/AiServiceInsideRouterList')),
// },
// {
// path:'document',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsideDocument.tsx')),
// },
// {
// path:'subscriber',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/AiServiceInsideSubscriber.tsx')),
// children:[
]
},
{
path:'approval',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApproval')),
children:[
{
path:'',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApprovalList')),
},
{
path:'*',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApprovalList')),
}
]
},
{
path:'publish',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublish')),
children:[
{
path:'',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublishList')),
},
{
path:'*',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublishList')),
}
]
},
{
path:'setting',
key: uuidv4(),
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemConfig.tsx')),
children:[
// ]
// },
// {
// path:'approval',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApproval')),
// children:[
// {
// path:'',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApprovalList')),
// },
// {
// path:'*',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/approval/AiServiceInsideApprovalList')),
// }
// ]
// },
// {
// path:'publish',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublish')),
// children:[
// {
// path:'',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublishList')),
// },
// {
// path:'*',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiService/publish/AiServiceInsidePublishList')),
// }
// ]
// },
// {
// path:'setting',
// key: uuidv4(),
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/system/SystemConfig.tsx')),
// children:[
]
},
]
}
]
}
]
},
{
path:'datasourcing',
key: 'dataSourcing',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideDashboardSetting.tsx')),
},
{
path:'cluster',
key: 'cluster',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideCluster.tsx')),
},
{
path:'aisetting',
key: 'aiSetting',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiSetting/AiSettingList.tsx')),
},
{
path:'cert',
key: 'cert',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideCert.tsx')),
},
{
path:'serviceHub',
component:<Outlet />,
key:'serviceHub',
children:[
{
path:'',
key: 'serviceHubList',
component: <Navigate to="list" />
},
{
path:'list',
key:'serviceHubList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/ServiceHubList.tsx')),
},
{
path:'detail/:serviceId',
key:'serviceHubDetail',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/ServiceHubDetail.tsx')),
}]
},
{
path:'commonsetting',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/common/CommonPage.tsx')),
key:uuidv4(),
},
{
path:'consumer',
component:<Outlet />,
provider:TenantManagementProvider,
key:'tenantManagement',
children:[
{
path:'',
key:'tenantManagementList',
component:<Navigate to="list" />
},
{
path:':teamId/inside/:appId',
key:'tenantManagementInside',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsidePage.tsx')),
children:[
{
path:'service',
key:'tenantManagementInsideService',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsideService.tsx')),
},
{
path:'authorization',
key:'tenantManagementInsideAuthorization',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsideAuth.tsx')),
},
{
path:'setting',
key:'tenantManagementSetting',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementAppSetting.tsx')),
},
]
},
{
path:'list',
key:'serviceHubManagementList',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ServiceHubManagement.tsx')),
},
{
path:'list/:teamId',
key:'serviceHubManagementList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ServiceHubManagement.tsx')),
},
]
},
{
path:'member',
key:'member',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberPage.tsx')),
children:[
{
path:'',
key:'memberList',
component:<Navigate to="list" />
},
{
path:'list',
key:'memberList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberList.tsx')),
},
{
path:'list/:memberGroupId',
key:'memberList3',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberList.tsx')),
}
]
},
{
path:'role',
key:'role',
component:<Outlet />,
children:[
{
path: '',
key: 'roleList',
component: <Navigate to="list" />
},
{
path:'list',
key:'roleList2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleList.tsx')),
},{
path:':roleType/config/:roleId',
key:'roleConfig',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleConfig.tsx')),
},{
path:':roleType/config',
key:'roleConfig2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleConfig.tsx')),
}
]
},
{
path:'analytics',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@dashboard/pages/Dashboard.tsx')),
key:'analytics',
children:[
{
path:'total',
key:'analytics2',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@dashboard/pages/DashboardTotal.tsx')),
},
]
},
{
path:'template/:moduleId',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
key:'intelligentPlugin'
},
{
path:'logsettings/*',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/logsettings/LogSettings.tsx')),
key: 'logSettings',
children:[{
path:'template/:moduleId',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
key:'logSettings2'
}]
// ]
// },
// ]
// }
// ]
// }
// ]
// },
// {
// path:'datasourcing',
// key: 'dataSourcing',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideDashboardSetting.tsx')),
// },
// {
// path:'cluster',
// key: 'cluster',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideCluster.tsx')),
// },
// {
// path:'aisetting',
// key: 'aiSetting',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/aiSetting/AiSettingList.tsx')),
// },
// {
// path:'cert',
// key: 'cert',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/partitions/PartitionInsideCert.tsx')),
// },
// {
// path:'serviceHub',
// component:<Outlet />,
// key:'serviceHub',
// children:[
// {
// path:'',
// key: 'serviceHubList',
// component: <Navigate to="list" />
// },
// {
// path:'list',
// key:'serviceHubList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/ServiceHubList.tsx')),
// },
// {
// path:'detail/:serviceId',
// key:'serviceHubDetail',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/ServiceHubDetail.tsx')),
// }]
// },
// {
// path:'commonsetting',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/common/CommonPage.tsx')),
// key:uuidv4(),
// },
// {
// path:'consumer',
// component:<Outlet />,
// provider:TenantManagementProvider,
// key:'tenantManagement',
// children:[
// {
// path:'',
// key:'tenantManagementList',
// component:<Navigate to="list" />
// },
// {
// path:':teamId/inside/:appId',
// key:'tenantManagementInside',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsidePage.tsx')),
// children:[
// {
// path:'service',
// key:'tenantManagementInsideService',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsideService.tsx')),
// },
// {
// path:'authorization',
// key:'tenantManagementInsideAuthorization',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementInsideAuth.tsx')),
// },
// {
// path:'setting',
// key:'tenantManagementSetting',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ManagementAppSetting.tsx')),
// },
// ]
// },
// {
// path:'list',
// key:'serviceHubManagementList',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ServiceHubManagement.tsx')),
// },
// {
// path:'list/:teamId',
// key:'serviceHubManagementList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@market/pages/serviceHub/management/ServiceHubManagement.tsx')),
// },
// ]
// },
// {
// path:'member',
// key:'member',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberPage.tsx')),
// children:[
// {
// path:'',
// key:'memberList',
// component:<Navigate to="list" />
// },
// {
// path:'list',
// key:'memberList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberList.tsx')),
// },
// {
// path:'list/:memberGroupId',
// key:'memberList3',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/member/MemberList.tsx')),
// }
// ]
// },
// {
// path:'role',
// key:'role',
// component:<Outlet />,
// children:[
// {
// path: '',
// key: 'roleList',
// component: <Navigate to="list" />
// },
// {
// path:'list',
// key:'roleList2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleList.tsx')),
// },{
// path:':roleType/config/:roleId',
// key:'roleConfig',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleConfig.tsx')),
// },{
// path:':roleType/config',
// key:'roleConfig2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/role/RoleConfig.tsx')),
// }
// ]
// },
// {
// path:'analytics',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@dashboard/pages/Dashboard.tsx')),
// key:'analytics',
// children:[
// {
// path:'total',
// key:'analytics2',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@dashboard/pages/DashboardTotal.tsx')),
// },
// ]
// },
// {
// path:'template/:moduleId',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
// key:'intelligentPlugin'
// },
// {
// path:'logsettings/*',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/logsettings/LogSettings.tsx')),
// key: 'logSettings',
// children:[{
// path:'template/:moduleId',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
// key:'logSettings2'
// }]
},
APP_MODE ==='pro' && {
path:'resourcesettings/*',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/resourcesettings/ResourceSettings.tsx')),
key: 'resourceSettings',
children:[{
path:'template/:moduleId',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
key:'resourceSettings2'
}]
// },
// APP_MODE ==='pro' && {
// path:'resourcesettings/*',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/resourcesettings/ResourceSettings.tsx')),
// key: 'resourceSettings',
// children:[{
// path:'template/:moduleId',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@common/components/aoplatform/intelligent-plugin/IntelligentPluginList.tsx')),
// key:'resourceSettings2'
// }]
},
{
path:'userProfile/*',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/userProfile/UserProfile.tsx')),
key:'userProfile',
children:[{
path:'changepsw',
lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/userProfile/ChangePsw.tsx')),
key:'changePsw'
}]
}
]
},
]
// },
// {
// path:'userProfile/*',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/userProfile/UserProfile.tsx')),
// key:'userProfile',
// children:[{
// path:'changepsw',
// lazy:lazy(() => import(/* webpackChunkName: "[request]" */ '@core/pages/userProfile/ChangePsw.tsx')),
// key:'changePsw'
// }]
// }
// ]
// },
// // ]
const RenderRoutes = ()=> {
const { loadPlugins } = usePluginLoader()
const [routeConfig , setRouteConfig] = useState<RouteConfig[]>([])
useEffect(()=>{
loadPlugins().then((res)=>{
console.log('newRouteConfig',res)
setRouteConfig(res as RouteConfig[])
})
},[])
return (
<App className="h-full" message={{ maxCount: 1 }}>
<Router>
<Routes>
{ generateRoutes(PUBLIC_ROUTES)}
{ generateRoutes(routeConfig)}
</Routes>
</Router>
</App>
@@ -560,4 +531,4 @@ function ProtectedRoute() {
return state.isAuthenticated? <BasicLayout project="core" /> : <Navigate to="/login" />;
}
export default RenderRoutes
export default RenderRoutes