fix: show applied balance in the upgrade modal (#41324)

This commit is contained in:
Alex Lider
2025-11-14 08:12:04 +01:00
committed by GitHub
parent 3298f806b1
commit 62bd2f5657

View File

@@ -18,7 +18,10 @@ export function ConfirmUpgradeModal({ product }: { product: BillingProductV2Addo
const isLoading = switchPlanLoading === product.type
const targetPlan = currentAndUpgradePlans?.upgradePlan
const amountDue = Math.max(0, proratedAmount - unusedPlatformAddonAmount)
const amountDueBeforeCredits = Math.max(0, proratedAmount - unusedPlatformAddonAmount)
const availableCreditBalance = billing?.discount_amount_usd ? parseFloat(billing.discount_amount_usd) : 0
const appliedBalance = Math.min(amountDueBeforeCredits, availableCreditBalance)
const amountDue = Math.max(0, amountDueBeforeCredits - appliedBalance)
const periodEnd = billing?.billing_period?.current_period_end
const remainingPeriodFormatted = periodEnd
@@ -40,13 +43,21 @@ export function ConfirmUpgradeModal({ product }: { product: BillingProductV2Addo
dateRange: remainingPeriodFormatted,
amount: `-$${unusedPlatformAddonAmount.toFixed(2)}`,
},
{
description: 'Amount due today',
amount: `$${amountDue.toFixed(2)}`,
isBold: true,
},
]
if (appliedBalance > 0) {
rows.push({
description: 'Applied balance',
amount: `-$${appliedBalance.toFixed(2)}`,
})
}
rows.push({
description: 'Amount due today',
amount: `$${amountDue.toFixed(2)}`,
isBold: true,
})
const columns: LemonTableColumns<BillingInvoiceItemRow> = [
{
title: 'Description',