import { redirect } from 'next/navigation'; import { auth } from '../../../auth'; import Navigation from '../../Navigation'; import AiAdminClient from './AiAdminClient'; import type { AiModelInfo } from './AiAdminClient'; const API_BASE = process.env.NEXT_PUBLIC_API_URL_INTERNAL || 'http://recipe-api:8080'; export default async function AiAdminPage() { const session = await auth(); if ((session?.user as any)?.role !== 'admin') { redirect('/'); } const key = process.env.MISTRAL_API_KEY ?? ''; const hasKey = key.length > 0; const keyHint = key.length >= 4 ? key.slice(-4) : '????'; let aiFunctions: AiModelInfo[] = []; try { const res = await fetch(`${API_BASE}/api/ai/models`, { cache: 'no-store' }); if (res.ok) aiFunctions = await res.json(); } catch { // backend ej nåbart — visa tom lista } return ( <> 🤖 AI-konfiguration Översikt över implementerade AI-funktioner och API-nyckelstatus. > ); }
Översikt över implementerade AI-funktioner och API-nyckelstatus.