feat: integrate credit cost tracking in AI image generation and prompt nodes

- Added credit cost tracking to AI image nodes, displaying the cost in Euro-Cent.
- Updated prompt node to create edges between prompt and AI image nodes during image generation.
- Enhanced Convex action to include credit cost in image generation data handling.
- Introduced utility function for formatting Euro-Cent values for better user display.
This commit is contained in:
Matthias
2026-03-25 18:27:45 +01:00
parent 8d6ce275f8
commit fffdae3a9c
4 changed files with 43 additions and 3 deletions

View File

@@ -69,6 +69,7 @@ export const generateImage = action({
const existing = await ctx.runQuery(api.nodes.get, { nodeId: args.nodeId });
if (!existing) throw new Error("Node not found");
const prev = (existing.data ?? {}) as Record<string, unknown>;
const creditCost = modelConfig.estimatedCostPerImage;
await ctx.runMutation(api.nodes.updateData, {
nodeId: args.nodeId,
@@ -79,6 +80,7 @@ export const generateImage = action({
model: modelId,
modelTier: modelConfig.tier,
generatedAt: Date.now(),
creditCost,
},
});
@@ -89,7 +91,7 @@ export const generateImage = action({
await ctx.runMutation(api.credits.commit, {
transactionId: reservationId,
actualCost: modelConfig.estimatedCostPerImage,
actualCost: creditCost,
});
} catch (error) {
await ctx.runMutation(api.credits.release, {