fix: Show plan monthly_credits when user has no credits entry yet
UserStatusBadge now falls back to plan's monthly_credits (e.g., 10 for Starter) instead of showing 0 when user_credits entry doesn't exist
This commit is contained in:
@@ -42,14 +42,15 @@ export default function UserStatusBadge() {
|
||||
.eq('user_id', user.id)
|
||||
.single();
|
||||
|
||||
// Get subscription plan
|
||||
// Get subscription plan with monthly credits
|
||||
const { data: subscription } = await supabase
|
||||
.from('user_subscriptions')
|
||||
.select(`
|
||||
plan_id,
|
||||
subscription_plans (
|
||||
name,
|
||||
display_name
|
||||
display_name,
|
||||
monthly_credits
|
||||
)
|
||||
`)
|
||||
.eq('user_id', user.id)
|
||||
@@ -59,8 +60,11 @@ export default function UserStatusBadge() {
|
||||
const planData = subscription?.subscription_plans;
|
||||
const plan = Array.isArray(planData) ? planData[0] : planData;
|
||||
|
||||
// If no credits entry yet, show plan's monthly credits as expected amount
|
||||
const displayCredits = credits?.balance ?? plan?.monthly_credits ?? 10;
|
||||
|
||||
setStatus({
|
||||
credits: credits?.balance ?? 0,
|
||||
credits: displayCredits,
|
||||
planName: plan?.name ?? 'starter',
|
||||
planDisplayName: plan?.display_name ?? 'Starter',
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user