mirror of
https://github.com/chillpadclub/bedolaga-cabinet.git
synced 2026-07-28 09:33:46 +00:00
fix(subscriptions): дать новым юзерам путь в витрину без активации триала
Новый пользователь с доступным триалом видел только TrialOfferCard (CTA активации), без пути в витрину тарифов — приходилось сперва активировать пробную. Добавлена вторичная кнопка «Посмотреть тарифы и купить подписку» → /subscription/purchase под карточкой триала на обеих страницах, где она рендерится: Subscriptions и Dashboard (вход по умолчанию). Telegram-баг #605056/#605063.
This commit is contained in:
@@ -360,13 +360,25 @@ export default function Dashboard() {
|
||||
|
||||
{/* Trial Activation */}
|
||||
{hasNoSubscription && !trialLoading && trialInfo?.is_available && (
|
||||
<TrialOfferCard
|
||||
trialInfo={trialInfo}
|
||||
balanceKopeks={balanceData?.balance_kopeks || 0}
|
||||
balanceRubles={balanceData?.balance_rubles || 0}
|
||||
activateTrialMutation={activateTrialMutation}
|
||||
trialError={trialError}
|
||||
/>
|
||||
<div className="space-y-3">
|
||||
<TrialOfferCard
|
||||
trialInfo={trialInfo}
|
||||
balanceKopeks={balanceData?.balance_kopeks || 0}
|
||||
balanceRubles={balanceData?.balance_rubles || 0}
|
||||
activateTrialMutation={activateTrialMutation}
|
||||
trialError={trialError}
|
||||
/>
|
||||
{/* Новый пользователь не обязан активировать триал, чтобы попасть в
|
||||
витрину — даём явный путь к покупке подписки. Раньше при доступном
|
||||
триале это был единственный экран без кнопки покупки, и на дашборде
|
||||
(вход по умолчанию) юзер оставался заперт (Telegram-баг #605056/#605063). */}
|
||||
<Link
|
||||
to="/subscription/purchase"
|
||||
className="flex w-full items-center justify-center rounded-2xl border border-dashed border-white/15 p-3.5 text-sm font-medium opacity-60 transition-opacity hover:opacity-90"
|
||||
>
|
||||
{t('subscriptions.browsePlans', 'Посмотреть тарифы и купить подписку')}
|
||||
</Link>
|
||||
</div>
|
||||
)}
|
||||
|
||||
{/* Promo Offers */}
|
||||
|
||||
@@ -157,13 +157,26 @@ export default function Subscriptions() {
|
||||
|
||||
{/* Empty state: показываем триал, если доступен; иначе — обычный empty */}
|
||||
{hasNoSubscriptions && !trialLoading && trialInfo?.is_available && (
|
||||
<TrialOfferCard
|
||||
trialInfo={trialInfo}
|
||||
balanceKopeks={balanceData?.balance_kopeks ?? 0}
|
||||
balanceRubles={balanceData?.balance_rubles ?? 0}
|
||||
activateTrialMutation={activateTrialMutation}
|
||||
trialError={trialError}
|
||||
/>
|
||||
<div className="space-y-4">
|
||||
<TrialOfferCard
|
||||
trialInfo={trialInfo}
|
||||
balanceKopeks={balanceData?.balance_kopeks ?? 0}
|
||||
balanceRubles={balanceData?.balance_rubles ?? 0}
|
||||
activateTrialMutation={activateTrialMutation}
|
||||
trialError={trialError}
|
||||
/>
|
||||
{/* Новый пользователь не обязан активировать триал, чтобы попасть
|
||||
в витрину — даём явный путь к покупке подписки. Раньше при
|
||||
доступном триале это был единственный экран без кнопки «Купить»
|
||||
(Telegram-баг #605056/#605063). */}
|
||||
<button
|
||||
onClick={() => navigate('/subscription/purchase')}
|
||||
className="w-full rounded-xl border px-6 py-3 text-sm font-medium transition-colors"
|
||||
style={{ background: g.innerBg, borderColor: g.cardBorder, color: g.text }}
|
||||
>
|
||||
{t('subscriptions.browsePlans', 'Посмотреть тарифы и купить подписку')}
|
||||
</button>
|
||||
</div>
|
||||
)}
|
||||
{hasNoSubscriptions && !trialLoading && !trialInfo?.is_available && (
|
||||
<EmptyState onBuy={() => navigate('/subscription/purchase')} />
|
||||
|
||||
Reference in New Issue
Block a user