Payout Page + Wallet Card Refactor #695

Merged
tech merged 11 commits from SEND066 into main 2026-03-11 16:45:32 +00:00
Collaborator
No description provided.
protuberanets self-assigned this 2026-03-06 15:15:32 +00:00
protuberanets added 7 commits 2026-03-06 15:15:32 +00:00
protuberanets requested review from tech 2026-03-06 15:15:32 +00:00
tech requested changes 2026-03-06 16:15:30 +00:00
Dismissed
@@ -0,0 +95,4 @@
context.pushNamed(PayoutRoutes.editWallet);
}
void _sendWalletPayout(BuildContext context, String walletRef) {
Owner

тут дублирование кода, лучше helper сделать.

тут дублирование кода, лучше helper сделать.
@@ -0,0 +15,4 @@
BalanceCopyState wallet(String? depositAddress) {
return BalanceCopyState(
label: 'Copy Deposit Address',
Owner

не локализовано

не локализовано
@@ -109,0 +131,4 @@
bool _matchesCurrentSource(Payment payment) {
final sourceType = _sourceType;
if (sourceType == null || _sourceRefs.isEmpty) return true;
for (final sourceRef in _sourceRefs) {
Owner

лучше firstWhereOrNull(...) != null

лучше firstWhereOrNull(...) != null
@@ -0,0 +5,4 @@
import 'package:pweb/pages/dashboard/buttons/balance/source/card.dart';
class WalletCard extends StatelessWidget {
Owner

Нужен этот класс? выглядит как просто обертка

Нужен этот класс? выглядит как просто обертка
@@ -0,0 +36,4 @@
decoration: InputDecoration(
labelText: loc.amount,
border: const OutlineInputBorder(),
prefixText: symbol == null ? null : '$symbol\u00A0',
Owner

конвертеры с неразрывным пробелом (это он?) лучше куда-то в утилиты положить, чтобы не множить одинаковый код.

конвертеры с неразрывным пробелом (это он?) лучше куда-то в утилиты положить, чтобы не множить одинаковый код.
@@ -0,0 +40,4 @@
selectedType: data.type,
selectedIndex: 0,
entries: [entry],
onRemove: (_) {},
Owner

на будущее?

на будущее?
@@ -0,0 +12,4 @@
final amount = parseMoneyAmount(money.amount, fallback: double.nan);
if (amount.isNaN) {
return '${money.amount} ${money.currency}';
Owner

выглядит подозрительно, очень много похожих консерваций. Почему? По-хорошему, решающее правило о приведении к нужному виде должно быть изолировано где-то утилитой, переиспользуемой везде. Еще как вариант: поискать специализированные библиотеки форматирования денег. Возможно, есть.

выглядит подозрительно, очень много похожих консерваций. Почему? По-хорошему, решающее правило о приведении к нужному виде должно быть изолировано где-то утилитой, переиспользуемой везде. Еще как вариант: поискать специализированные библиотеки форматирования денег. Возможно, есть.
@@ -0,0 +42,4 @@
case PaymentSourceType.wallet:
return _walletSourceRef(source);
case PaymentSourceType.ledger:
return _ledgerSourceRef(source);
Owner

default? не надо?

default? не надо?
Author
Collaborator

Если в PaymentSourceType добавлю новое значение, компилятор сразу заставит обработать его здесь, а с default это бы скрылось и потенциально забылось

Если в PaymentSourceType добавлю новое значение, компилятор сразу заставит обработать его здесь, а с default это бы скрылось и потенциально забылось
@@ -0,0 +47,4 @@
}
String? _walletSourceRef(PaymentMethodData source) {
if (source is ManagedWalletPaymentMethod) {
Owner

а реально проверки типа нужны? Обычно это говорит о неудачной архитектуре реализации. Чтобы проверок типа избежать, отлично подходят функторы.

а реально проверки типа нужны? Обычно это говорит о неудачной архитектуре реализации. Чтобы проверок типа избежать, отлично подходят функторы.
@@ -0,0 +74,4 @@
final keys = switch (sourceType) {
PaymentSourceType.wallet => const <String>[
'source_wallet_ref',
Owner

очень не хочется на метаданные полагаться. Реально надо это? Я стараюсь нужное в стандартных структурах носить.

очень не хочется на метаданные полагаться. Реально надо это? Я стараюсь нужное в стандартных структурах носить.
protuberanets added 2 commits 2026-03-11 12:00:38 +00:00
protuberanets added 1 commit 2026-03-11 12:07:26 +00:00
protuberanets added 1 commit 2026-03-11 15:26:28 +00:00
tech approved these changes 2026-03-11 16:45:24 +00:00
tech merged commit 208b4283d0 into main 2026-03-11 16:45:32 +00:00
tech deleted branch SEND066 2026-03-11 16:45:33 +00:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: tech/sendico#695