/** تنظیمات هوش مصنوعی: هر سرویس‌دهنده (Claude یا سازگار با OpenAI) */
import { AdminHeader } from "@/components/admin/ui";
import { AiSettingsForm } from "@/components/admin/AiSettingsForm";
import { requireStaffPage } from "@/server/admin/guard";
import { AI_PRESETS, getAiSettings } from "@/server/services/ai";

export const metadata = { title: "هوش مصنوعی" };
export const dynamic = "force-dynamic";

export default async function AdminAi() {
  await requireStaffPage("/admin/ai", "ai");
  const s = await getAiSettings();
  return (
    <>
      <AdminHeader title="هوش مصنوعی" description="اتصال به سرویس هوش مصنوعی برای دستیار AI Beauty و ابزارهای سئوی مجله" />
      <AiSettingsForm
        initial={{
          enabled: s.enabled,
          chatEnabled: s.chatEnabled,
          preset: AI_PRESETS.some((p) => p.id === s.preset) ? s.preset : s.provider === "anthropic" ? "anthropic" : "custom",
          model: s.model,
          baseUrl: s.baseUrl ?? "",
          effort: s.effort,
          assistantName: s.assistantName,
          instructions: s.instructions,
          guestMessages: s.guestMessages,
          allowAiCrawlers: s.allowAiCrawlers,
        }}
        keyLast4={s.apiKeyLast4}
        envKey={!!(process.env.AI_API_KEY || process.env.ANTHROPIC_API_KEY)}
        presets={AI_PRESETS.map((p) => ({ ...p, models: [...p.models] }))}
      />
      <p className="mt-6 rounded-2xl bg-paper p-4 text-xs leading-6 text-muted">
        هزینه هر پیام از حساب شما نزد سرویس‌دهنده کسر می‌شود. گفت‌وگوی سایت برای هر بازدیدکننده محدودیت تعداد پیام دارد. سرویس‌های خارجی (Claude، OpenAI، Gemini) از سرور داخل ایران در دسترس نیستند؛ روی سرور ایرانی از یک سرویس ایرانی سازگار با OpenAI استفاده کنید.
      </p>
    </>
  );
}
