promo·radar

Рефералы — модальные состояния

Три диалога поверх раздела «Рефералы»: применить баланс к подписке, запросить вывод, создать персональный промокод. Apply и Create — короткие Dialog'и. Withdrawal — 2 шага в одной модалке со скроллом (см. направление). Открытые показаны для ревью.

Направления для withdrawal-модалки — выбрать одно
Вариант А — вертикальный stepper в одной модалке показан ↓

Обе секции (сумма+способ+налог и реквизиты) в одной модалке со скроллом — итог укладывается в ~600px высоты, ровно под антипаттерн §9 «не больше 2 экранов». Кнопка «Подать заявку» disabled пока не выбран способ. Минус кликов, юзер сразу видит весь объём. Рекомендую.

Вариант Б — горизонтальный wizard, 2 страницы альтернатива

2 экрана с «Далее → Назад» и stepper-индикатором сверху. Каждый экран компактный, на mobile удобнее. Но требует двойной submit-логики и юзер не видит, что его ждёт на шаге 2. Уместно, если шагов станет 3+ (например, появится KYC).

Для Apply и Create promo code — только один вариант: компактный Dialog ~440px. Альтернатив не предлагаю, контент мал.

Экран A · apply — применить баланс к подписке

Вызов: кнопка «Применить к подписке» в balance-card на referral-panel. Конвертация в бонусные дни по дневной стоимости тарифа (Pro = 99 ₽/день).

Экран A · error — баланс меньше стоимости 1 дня

Если на балансе менее 99 ₽ (стоимость дня Pro), кнопка disabled, поле в error-состоянии.

Экран B · withdraw — заявка на вывод (вариант А: вертикальный stepper)

Вызов: кнопка «Запросить вывод» в balance-card. Все секции в одной модалке со скроллом. Заявка уходит в POST /referrals/payouts, статус «в обработке» появляется в истории.

Экран B · withdraw — секция 2, выбран способ «СБП»

Показано только содержимое шага 2 при смене способа. Шаг 1 (сумма + статус) остаётся.

Экран B · withdraw — success (после submit)

Заявка принята → toast «Заявка принята, обработаем в течение 1-3 рабочих дней» (показан внутри сцены).

Экран C · create-promo — создать персональный промокод

Вызов: кнопка «Создать персональный промокод» в share-row на referral-panel (когда кода ещё нет). Код нельзя сменить после создания — отсюда one-time confirmation.