Adicionou toasts de status

X-Lovable-Edit-ID: edt-3dc3e153-d3c5-4964-a9bc-62e4ecbd0938
Co-authored-by: domfelipe <53182096+domfelipe@users.noreply.github.com>
This commit is contained in:
gpt-engineer-app[bot] 2026-04-17 18:02:39 +00:00
commit 6a391fa788

View file

@ -45,19 +45,39 @@ export function useSubscriptionRealtime() {
const newStatus = newRow?.status ?? null; const newStatus = newRow?.status ?? null;
const prevStatus = lastStatusRef.current; const prevStatus = lastStatusRef.current;
if ( if (newStatus && newStatus !== prevStatus) {
newStatus && const wasActive = prevStatus ? ACTIVE_STATUSES.has(prevStatus) : false;
ACTIVE_STATUSES.has(newStatus) && const isActive = ACTIVE_STATUSES.has(newStatus);
prevStatus !== newStatus &&
!(prevStatus && ACTIVE_STATUSES.has(prevStatus)) if (isActive && !wasActive) {
) { if (newStatus === "trialing") {
if (newStatus === "trialing") { toast.success("Período de teste ativado!", {
toast.success("Período de teste ativado!", { description: "Aproveite todos os recursos do seu plano.",
description: "Aproveite todos os recursos do seu plano.", });
} else {
toast.success("Assinatura ativada!", {
description: "Tudo pronto — seu plano já está liberado.",
});
}
} else if (newStatus === "canceled") {
toast.error("Assinatura cancelada", {
description: "Você manterá acesso até o fim do período pago.",
}); });
} else { } else if (newStatus === "past_due") {
toast.success("Assinatura ativada!", { toast.warning("Pagamento pendente", {
description: "Tudo pronto — seu plano já está liberado.", description: "Atualize seu método de pagamento para evitar a suspensão.",
});
} else if (newStatus === "unpaid") {
toast.error("Assinatura não paga", {
description: "Regularize o pagamento para reativar o acesso.",
});
} else if (newStatus === "paused") {
toast.warning("Assinatura pausada", {
description: "Sua assinatura está temporariamente pausada.",
});
} else if (prevStatus && wasActive && !isActive) {
toast.warning("Status da assinatura alterado", {
description: "Verifique os detalhes em Faturamento.",
}); });
} }
} }