reports page

This commit is contained in:
Arseni
2026-02-16 21:05:38 +03:00
parent 11d4b9a608
commit 0eea39fb97
56 changed files with 2227 additions and 501 deletions

View File

@@ -27,6 +27,17 @@ class PaymentDTO {
this.createdAt,
});
factory PaymentDTO.fromJson(Map<String, dynamic> json) => _$PaymentDTOFromJson(json);
factory PaymentDTO.fromJson(Map<String, dynamic> json) =>
_$PaymentDTOFromJson(_normalizeJson(json));
Map<String, dynamic> toJson() => _$PaymentDTOToJson(this);
static Map<String, dynamic> _normalizeJson(Map<String, dynamic> json) {
if (json.containsKey('metadata') || !json.containsKey('meta')) {
return json;
}
final normalized = Map<String, dynamic>.from(json);
normalized['metadata'] = normalized['meta'];
return normalized;
}
}

View File

@@ -76,4 +76,14 @@ IconData iconForCurrencyType(Currency currencyCode) {
case Currency.usdc:
return Icons.money;
}
}
}
String? currencySymbolFromCode(String? code) {
final normalized = code?.trim();
if (normalized == null || normalized.isEmpty) return null;
try {
return currencyCodeToSymbol(currencyStringToCode(normalized.toUpperCase()));
} catch (_) {
return null;
}
}