"use server"; import { revalidatePath } from "next/cache"; import { generateAnalysis, generateDashboardAnalysis } from "@/lib/ai/claude"; import { getCurrentUserId } from "@/lib/session"; import type { AiAnalysisTargetType } from "@/lib/models/analysis"; export type GenerateAnalysisState = { error: string } | { success: true } | null; export async function generateAnalysisAction( targetType: AiAnalysisTargetType, targetId: string ): Promise { const userId = await getCurrentUserId(); try { await generateAnalysis(userId, targetType, targetId); } catch (error) { return { error: error instanceof Error ? error.message : "Nie udało się wygenerować analizy." }; } revalidatePath(`/${targetType}/${targetId}`); revalidatePath("/"); return { success: true }; } export async function generateDashboardAnalysisAction(): Promise { const userId = await getCurrentUserId(); try { await generateDashboardAnalysis(userId); } catch (error) { return { error: error instanceof Error ? error.message : "Nie udało się wygenerować analizy." }; } revalidatePath("/"); return { success: true }; }