| | |
| | | |
| | | import avatar from '/avatar.jpg' |
| | | |
| | | const AI_COMPONENTS = new Set([ |
| | | 'aiParam', |
| | | 'aiPrompt', |
| | | 'aiDiagnosis', |
| | | 'aiDiagnosisPlan', |
| | | 'aiCallLog', |
| | | 'aiRoute', |
| | | 'aiToolConfig', |
| | | 'aiMcpMount', |
| | | ]); |
| | | |
| | | const filterAiMenus = (items = []) => |
| | | items |
| | | .filter((item) => !AI_COMPONENTS.has(item.component)) |
| | | .map((item) => ({ |
| | | ...item, |
| | | children: item.children ? filterAiMenus(item.children) : item.children, |
| | | })); |
| | | |
| | | const AuthProvider = { |
| | | // login |
| | | login: async ({ username, password, tenantId }) => { |
| | |
| | | const res = await menus(); |
| | | const { code, msg, data } = res.data; |
| | | if (code === 200) { |
| | | return Promise.resolve(data); |
| | | return Promise.resolve(filterAiMenus(data)); |
| | | } else if (code === 401) { |
| | | localStorage.removeItem("user"); |
| | | return Promise.reject(); |