feat(ai-admin-console): complete implementation and resolve lint compilation errors

This commit is contained in:
2026-05-21 21:42:25 +07:00
parent 1580ab2c18
commit 91e9c714df
39 changed files with 3724 additions and 72 deletions
+7 -5
View File
@@ -1,6 +1,7 @@
// File: components/ai/AiStatusBanner.tsx
// Change Log
// - 2026-05-14: เพิ่ม banner สำหรับ graceful degradation ของ AI staging.
// - 2026-05-21: รองรับ global banner เมื่อ Superadmin ปิด AI features.
'use client';
import { AlertTriangle, CheckCircle2 } from 'lucide-react';
@@ -8,19 +9,20 @@ import { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';
import { useTranslations } from '@/hooks/use-translations';
interface AiStatusBannerProps {
isOffline: boolean;
isOffline?: boolean;
aiEnabled?: boolean;
queuePaused?: boolean;
}
export function AiStatusBanner({ isOffline, queuePaused = false }: AiStatusBannerProps) {
export function AiStatusBanner({ isOffline = false, aiEnabled = true, queuePaused = false }: AiStatusBannerProps) {
const t = useTranslations();
if (isOffline) {
if (isOffline || !aiEnabled) {
return (
<Alert variant="destructive">
<AlertTriangle className="h-4 w-4" />
<AlertTitle>{t('ai.service_unavailable')}</AlertTitle>
<AlertDescription>{t('ai.status.offlineDescription')}</AlertDescription>
<AlertTitle>{t('ai.status.offlineTitle')}</AlertTitle>
<AlertDescription>{t('ai.status.disabledDescription')}</AlertDescription>
</Alert>
);
}