feat: separate renewal and purchase flows in multi-tariff mode

Renewal flow (per-subscription):
- New /subscriptions/:id/renew page showing only period options for
  the specific tariff with balance display and renew button
- PurchaseCTAButton links to /renew in multi-tariff mode

Purchase flow (new tariffs only):
- Hide already purchased tariffs (is_purchased flag from backend)
- Fallback UI when all tariffs are owned
- Types: added is_purchased, all_tariffs_purchased fields
This commit is contained in:
c0mrade
2026-03-24 10:47:49 +03:00
parent a709ddbec2
commit 82eb03dec9
6 changed files with 280 additions and 3 deletions

View File

@@ -343,6 +343,8 @@ export interface Tariff {
custom_days_discount_percent?: number;
// Traffic reset
traffic_reset_mode?: string;
// Multi-tariff: already purchased by user
is_purchased?: boolean;
}
export interface TariffsPurchaseOptions {
@@ -355,6 +357,8 @@ export interface TariffsPurchaseOptions {
subscription_status?: string;
subscription_is_expired?: boolean;
has_subscription?: boolean;
// Multi-tariff: all available tariffs already purchased
all_tariffs_purchased?: boolean;
}
export interface ClassicPurchaseOptions {