diff --git a/frontend/src/api/aiProactive.ts b/frontend/src/api/aiProactive.ts index e94bc28..a148fd1 100644 --- a/frontend/src/api/aiProactive.ts +++ b/frontend/src/api/aiProactive.ts @@ -21,7 +21,7 @@ export function useSuggestions() { useEffect(() => { // Initial load - apiClient.get('/api/v1/ai-proactive/suggestions').then(r => { + apiClient.get('/ai-proactive/suggestions').then(r => { setSuggestions(r.data.items); }).catch(() => {}); @@ -41,11 +41,11 @@ export function useSuggestions() { const dismiss = useCallback(async (id: string) => { setSuggestions(prev => prev.filter(s => s.id !== id)); - await apiClient.post(`/api/v1/ai-proactive/suggestions/${id}/dismiss`).catch(() => {}); + await apiClient.post(`/ai-proactive/suggestions/${id}/dismiss`).catch(() => {}); }, []); const act = useCallback(async (id: string, actionIndex: number) => { - const result = await apiClient.post(`/api/v1/ai-proactive/suggestions/${id}/act`, { + const result = await apiClient.post(`/ai-proactive/suggestions/${id}/act`, { action_index: actionIndex }); setSuggestions(prev => prev.map(s => s.id === id ? { ...s, is_acted_upon: true } : s)); @@ -59,11 +59,11 @@ export function useProactiveSettings() { const [settings, setSettings] = useState(null); useEffect(() => { - apiClient.get('/api/v1/ai-proactive/settings').then(r => setSettings(r.data)); + apiClient.get('/ai-proactive/settings').then(r => setSettings(r.data)); }, []); const update = useCallback(async (updates: any) => { - const r = await apiClient.put('/api/v1/ai-proactive/settings', updates); + const r = await apiClient.put('/ai-proactive/settings', updates); setSettings(r.data); return r.data; }, []); diff --git a/frontend/src/components/layout/TopBar.tsx b/frontend/src/components/layout/TopBar.tsx index 0749b8a..e4abad9 100644 --- a/frontend/src/components/layout/TopBar.tsx +++ b/frontend/src/components/layout/TopBar.tsx @@ -4,7 +4,6 @@ import { useNavigate } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import { useAuthStore } from '@/store/authStore'; import { useUIStore } from '@/store/uiStore'; -import { useTenant } from '@/hooks/useTenant'; import { useLogout } from '@/api/hooks'; import { Avatar } from '@/components/ui/Avatar'; import { Badge } from '@/components/ui/Badge'; @@ -16,19 +15,15 @@ export function TopBar() { const navigate = useNavigate(); const { user } = useAuthStore(); const { toggleSidebar, openAISidebarProactive } = useUIStore(); - const { currentTenant, availableTenants, switchTenant, isSwitching } = useTenant(); const logoutMutation = useLogout(); - const [tenantMenuOpen, setTenantMenuOpen] = useState(false); const [userMenuOpen, setUserMenuOpen] = useState(false); const [notifOpen, setNotifOpen] = useState(false); - const tenantRef = useRef(null); const userRef = useRef(null); const notifRef = useRef(null); useEffect(() => { const handleClickOutside = (e: MouseEvent) => { - if (tenantRef.current && !tenantRef.current.contains(e.target as Node)) setTenantMenuOpen(false); if (userRef.current && !userRef.current.contains(e.target as Node)) setUserMenuOpen(false); if (notifRef.current && !notifRef.current.contains(e.target as Node)) setNotifOpen(false); }; @@ -45,11 +40,6 @@ export function TopBar() { navigate('/login'); }; - const handleTenantSwitch = async (tenantId: string) => { - await switchTenant(tenantId); - setTenantMenuOpen(false); - }; - const fullName = user ? `${user.first_name} ${user.last_name}` : ''; return ( @@ -70,56 +60,6 @@ export function TopBar() { - {/* Tenant switcher */} -
- - {tenantMenuOpen && ( -
    - {availableTenants.map((tenant) => ( -
  • - -
  • - ))} -
- )} -
- {/* Search */}