feat(chat): handle credit-gated send responses

This commit is contained in:
2026-06-30 14:17:14 +08:00
parent f4d0f76466
commit 958a0f8ffd
12 changed files with 303 additions and 17 deletions
+20 -2
View File
@@ -84,8 +84,26 @@ export function getChatPaywallSubscriptionUrl(): string {
});
}
export function getChatPaywallNavigationUrl(loginStatus: LoginStatus): string {
const subscriptionUrl = getChatPaywallSubscriptionUrl();
export function getChatCreditsTopUpSubscriptionUrl(): string {
return ROUTE_BUILDERS.subscription("topup", {
returnTo: "chat",
});
}
export function getInsufficientCreditsSubscriptionType(
isVip: boolean,
): "vip" | "topup" {
return isVip ? "topup" : "vip";
}
export function getChatPaywallNavigationUrl(
loginStatus: LoginStatus,
type: "vip" | "topup" = "vip",
): string {
const subscriptionUrl =
type === "topup"
? getChatCreditsTopUpSubscriptionUrl()
: getChatPaywallSubscriptionUrl();
if (deriveIsGuest(loginStatus)) {
return ROUTE_BUILDERS.authWithRedirect(subscriptionUrl);
}