Skip to content

Commit 92da21e

Browse files
committed
wire up credits counter
1 parent 9c4a5e1 commit 92da21e

1 file changed

Lines changed: 13 additions & 2 deletions

File tree

  • apps/sim/app/workspace/[workspaceId]/home/components/credits-chip

apps/sim/app/workspace/[workspaceId]/home/components/credits-chip/credits-chip.tsx

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { useQueryClient } from '@tanstack/react-query'
55
import { useParams, useRouter } from 'next/navigation'
66
import { Chip } from '@/components/emcn'
77
import { Credit } from '@/components/emcn/icons'
8+
import { ON_DEMAND_UNLIMITED } from '@/lib/billing/constants'
89
import { formatCredits } from '@/lib/billing/credits/conversion'
910
import { isBillingEnabled } from '@/app/workspace/[workspaceId]/settings/navigation'
1011
import { prefetchUpgradeBillingData, useSubscriptionData } from '@/hooks/queries/subscription'
@@ -34,15 +35,25 @@ function CreditsChipInner() {
3435

3536
if (isLoading || !data?.data) return null
3637

38+
const { usageLimit, currentUsage, creditBalance } = data.data
39+
40+
// Credits remaining = unused plan allowance plus any purchased credit balance.
41+
// Uncapped plans (limit at/above the on-demand threshold) render as ∞ via
42+
// `formatCredits`, so short-circuit instead of subtracting usage from it.
43+
const remainingCredits =
44+
usageLimit >= ON_DEMAND_UNLIMITED
45+
? ON_DEMAND_UNLIMITED
46+
: Math.max(0, usageLimit + creditBalance - currentUsage)
47+
3748
return (
3849
<Chip
39-
aria-label='Upgrade plan'
50+
aria-label='Credits remaining — upgrade plan'
4051
onClick={() => router.push(upgradeHref)}
4152
onMouseEnter={prefetchUpgrade}
4253
onFocus={prefetchUpgrade}
4354
leftIcon={Credit}
4455
>
45-
{formatCredits(data.data.creditBalance)}
56+
{formatCredits(remainingCredits)}
4657
</Chip>
4758
)
4859
}

0 commit comments

Comments
 (0)