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)
|
.eq('user_id', user.id)
|
||||||
.single();
|
.single();
|
||||||
|
|
||||||
// Get subscription plan
|
// Get subscription plan with monthly credits
|
||||||
const { data: subscription } = await supabase
|
const { data: subscription } = await supabase
|
||||||
.from('user_subscriptions')
|
.from('user_subscriptions')
|
||||||
.select(`
|
.select(`
|
||||||
plan_id,
|
plan_id,
|
||||||
subscription_plans (
|
subscription_plans (
|
||||||
name,
|
name,
|
||||||
display_name
|
display_name,
|
||||||
|
monthly_credits
|
||||||
)
|
)
|
||||||
`)
|
`)
|
||||||
.eq('user_id', user.id)
|
.eq('user_id', user.id)
|
||||||
@@ -59,8 +60,11 @@ export default function UserStatusBadge() {
|
|||||||
const planData = subscription?.subscription_plans;
|
const planData = subscription?.subscription_plans;
|
||||||
const plan = Array.isArray(planData) ? planData[0] : planData;
|
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({
|
setStatus({
|
||||||
credits: credits?.balance ?? 0,
|
credits: displayCredits,
|
||||||
planName: plan?.name ?? 'starter',
|
planName: plan?.name ?? 'starter',
|
||||||
planDisplayName: plan?.display_name ?? 'Starter',
|
planDisplayName: plan?.display_name ?? 'Starter',
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user