From 5e0464c522e3e32abf25e7d6d495880689875f02 Mon Sep 17 00:00:00 2001 From: 134 Date: Sun, 14 Jun 2026 20:22:29 +0800 Subject: [PATCH] fix: align canvas action credit costs --- components/canvas/nodes/ImageNode.tsx | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/components/canvas/nodes/ImageNode.tsx b/components/canvas/nodes/ImageNode.tsx index f24940e0f..f2b2bb924 100644 --- a/components/canvas/nodes/ImageNode.tsx +++ b/components/canvas/nodes/ImageNode.tsx @@ -160,6 +160,7 @@ import { buildImageProxyUrl } from "@/lib/image-delivery"; import { DEFAULT_PUBLIC_THREED_MODEL_ALIAS_CONFIG, getDefaultThreeDModelAliasId, + resolveThreeDModelBillingId, type PublicThreeDModelAliasConfig, } from "@/lib/model3d/model-alias-config"; import { @@ -1858,8 +1859,19 @@ export function ImageNode({ [pointsSystemConfig] ); const worldImageCreditCost = useMemo( - () => get3DWorldCreditCost(pointsSystemConfig, selectedWorldModelEntry?.id), - [pointsSystemConfig, selectedWorldModelEntry?.id] + () => { + const worldBillingModelId = resolveThreeDModelBillingId( + selectedWorldModelEntry?.id || selectedWorldModelVersion, + publicModelAliasConfig.worldModels + ); + return get3DWorldCreditCost(pointsSystemConfig, worldBillingModelId); + }, + [ + pointsSystemConfig, + publicModelAliasConfig.worldModels, + selectedWorldModelEntry?.id, + selectedWorldModelVersion, + ] ); const tripoImageToModelCostLabel = formatImageNodeFeatureCostLabel({ cost: tripoImageToModelCreditCost, @@ -1897,6 +1909,7 @@ export function ImageNode({ getImageToolCostShortLabel("watermark-remove"); const extendCostShortLabel = getImageToolCostShortLabel("extend"); const promptRegenerateCostShortLabel = getImageToolCostShortLabel("repaint"); + const localEditCostShortLabel = promptRegenerateCostShortLabel; const angleEditCostShortLabel = getImageToolCostShortLabel("angle-edit"); const enhanceCostShortLabel = formatImageNodeFeatureCostShortLabel({ cost: calculateEnhanceProPointsEstimate(pointsSystemConfig, { @@ -9288,7 +9301,7 @@ export function ImageNode({ {isSelectedImageActionInline("localEdit") ? ( ) : null} @@ -9573,7 +9590,8 @@ export function ImageNode({ fallback={Wand2} item={imageLocalEditItem} /> - {imageLocalEditItem.label} + {imageLocalEditItem.label} + ) : null} {isSelectedImageActionInMore("removeWatermark") ? (