fix: address CodeRabbit review handle 2 samples, use i18n template for minMax
This commit is contained in:
+1
-2
@@ -575,6 +575,5 @@
|
||||
"swapErrorExpired": "Angebot abgelaufen",
|
||||
"swapErrorGeneric": "Swap-Fehler: {error}",
|
||||
"swapChartUnavailable": "Preis nicht verfügbar · Tippen zum Wiederholen",
|
||||
"swapChartMin": "Min",
|
||||
"swapChartMax": "Max"
|
||||
"swapChartMinMax": "24h Min: {minPrice} — Max: {maxPrice}"
|
||||
}
|
||||
|
||||
+1
-2
@@ -468,6 +468,5 @@
|
||||
"swapErrorExpired": "Quote has expired",
|
||||
"swapErrorGeneric": "Swap error: {error}",
|
||||
"swapChartUnavailable": "Price unavailable · Tap to retry",
|
||||
"swapChartMin": "Min",
|
||||
"swapChartMax": "Max"
|
||||
"swapChartMinMax": "24h Min: {minPrice} — Max: {maxPrice}"
|
||||
}
|
||||
|
||||
+7
-2
@@ -598,6 +598,11 @@
|
||||
}
|
||||
},
|
||||
"swapChartUnavailable": "Precio no disponible · Toca para reintentar",
|
||||
"swapChartMin": "Mín",
|
||||
"swapChartMax": "Máx"
|
||||
"swapChartMinMax": "24h Mín: {minPrice} — Máx: {maxPrice}",
|
||||
"@swapChartMinMax": {
|
||||
"placeholders": {
|
||||
"minPrice": { "type": "String" },
|
||||
"maxPrice": { "type": "String" }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-2
@@ -575,6 +575,5 @@
|
||||
"swapErrorExpired": "Le devis a expiré",
|
||||
"swapErrorGeneric": "Erreur de swap : {error}",
|
||||
"swapChartUnavailable": "Prix indisponible · Appuyez pour réessayer",
|
||||
"swapChartMin": "Min",
|
||||
"swapChartMax": "Max"
|
||||
"swapChartMinMax": "24h Min : {minPrice} — Max : {maxPrice}"
|
||||
}
|
||||
|
||||
+1
-2
@@ -575,6 +575,5 @@
|
||||
"swapErrorExpired": "Il preventivo è scaduto",
|
||||
"swapErrorGeneric": "Errore swap: {error}",
|
||||
"swapChartUnavailable": "Prezzo non disponibile · Tocca per riprovare",
|
||||
"swapChartMin": "Min",
|
||||
"swapChartMax": "Max"
|
||||
"swapChartMinMax": "24h Min: {minPrice} — Max: {maxPrice}"
|
||||
}
|
||||
|
||||
+1
-2
@@ -575,6 +575,5 @@
|
||||
"swapErrorExpired": "見積もりの有効期限切れ",
|
||||
"swapErrorGeneric": "スワップエラー: {error}",
|
||||
"swapChartUnavailable": "価格を取得できません・タップで再試行",
|
||||
"swapChartMin": "安値",
|
||||
"swapChartMax": "高値"
|
||||
"swapChartMinMax": "24h 安値: {minPrice} — 高値: {maxPrice}"
|
||||
}
|
||||
|
||||
+1
-2
@@ -575,6 +575,5 @@
|
||||
"swapErrorExpired": "견적이 만료되었습니다",
|
||||
"swapErrorGeneric": "교환 오류: {error}",
|
||||
"swapChartUnavailable": "가격 불러오기 실패 · 탭하여 재시도",
|
||||
"swapChartMin": "최저",
|
||||
"swapChartMax": "최고"
|
||||
"swapChartMinMax": "24h 최저: {minPrice} — 최고: {maxPrice}"
|
||||
}
|
||||
|
||||
@@ -2437,17 +2437,11 @@ abstract class L10n {
|
||||
/// **'Precio no disponible · Toca para reintentar'**
|
||||
String get swapChartUnavailable;
|
||||
|
||||
/// No description provided for @swapChartMin.
|
||||
/// No description provided for @swapChartMinMax.
|
||||
///
|
||||
/// In es, this message translates to:
|
||||
/// **'Mín'**
|
||||
String get swapChartMin;
|
||||
|
||||
/// No description provided for @swapChartMax.
|
||||
///
|
||||
/// In es, this message translates to:
|
||||
/// **'Máx'**
|
||||
String get swapChartMax;
|
||||
/// **'24h Mín: {minPrice} — Máx: {maxPrice}'**
|
||||
String swapChartMinMax(String minPrice, String maxPrice);
|
||||
}
|
||||
|
||||
class _L10nDelegate extends LocalizationsDelegate<L10n> {
|
||||
|
||||
@@ -1290,8 +1290,7 @@ class L10nDe extends L10n {
|
||||
'Preis nicht verfügbar · Tippen zum Wiederholen';
|
||||
|
||||
@override
|
||||
String get swapChartMin => 'Min';
|
||||
|
||||
@override
|
||||
String get swapChartMax => 'Max';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h Min: $minPrice — Max: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1270,8 +1270,7 @@ class L10nEn extends L10n {
|
||||
String get swapChartUnavailable => 'Price unavailable · Tap to retry';
|
||||
|
||||
@override
|
||||
String get swapChartMin => 'Min';
|
||||
|
||||
@override
|
||||
String get swapChartMax => 'Max';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h Min: $minPrice — Max: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1279,8 +1279,7 @@ class L10nEs extends L10n {
|
||||
'Precio no disponible · Toca para reintentar';
|
||||
|
||||
@override
|
||||
String get swapChartMin => 'Mín';
|
||||
|
||||
@override
|
||||
String get swapChartMax => 'Máx';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h Mín: $minPrice — Máx: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1295,8 +1295,7 @@ class L10nFr extends L10n {
|
||||
'Prix indisponible · Appuyez pour réessayer';
|
||||
|
||||
@override
|
||||
String get swapChartMin => 'Min';
|
||||
|
||||
@override
|
||||
String get swapChartMax => 'Max';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h Min : $minPrice — Max : $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1283,8 +1283,7 @@ class L10nIt extends L10n {
|
||||
'Prezzo non disponibile · Tocca per riprovare';
|
||||
|
||||
@override
|
||||
String get swapChartMin => 'Min';
|
||||
|
||||
@override
|
||||
String get swapChartMax => 'Max';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h Min: $minPrice — Max: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1255,8 +1255,7 @@ class L10nJa extends L10n {
|
||||
String get swapChartUnavailable => '価格を取得できません・タップで再試行';
|
||||
|
||||
@override
|
||||
String get swapChartMin => '安値';
|
||||
|
||||
@override
|
||||
String get swapChartMax => '高値';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h 安値: $minPrice — 高値: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1257,8 +1257,7 @@ class L10nKo extends L10n {
|
||||
String get swapChartUnavailable => '가격 불러오기 실패 · 탭하여 재시도';
|
||||
|
||||
@override
|
||||
String get swapChartMin => '최저';
|
||||
|
||||
@override
|
||||
String get swapChartMax => '최고';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h 최저: $minPrice — 최고: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1283,8 +1283,7 @@ class L10nPt extends L10n {
|
||||
'Preço indisponível · Toque para tentar novamente';
|
||||
|
||||
@override
|
||||
String get swapChartMin => 'Mín';
|
||||
|
||||
@override
|
||||
String get swapChartMax => 'Máx';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h Mín: $minPrice — Máx: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1278,8 +1278,7 @@ class L10nRu extends L10n {
|
||||
String get swapChartUnavailable => 'Цена недоступна · Нажмите для повтора';
|
||||
|
||||
@override
|
||||
String get swapChartMin => 'Мин';
|
||||
|
||||
@override
|
||||
String get swapChartMax => 'Макс';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h Мин: $minPrice — Макс: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1279,8 +1279,7 @@ class L10nSw extends L10n {
|
||||
String get swapChartUnavailable => 'Bei haipatikani · Gusa kurudia';
|
||||
|
||||
@override
|
||||
String get swapChartMin => 'Chini';
|
||||
|
||||
@override
|
||||
String get swapChartMax => 'Juu';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h Chini: $minPrice — Juu: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1250,8 +1250,7 @@ class L10nZh extends L10n {
|
||||
String get swapChartUnavailable => '价格不可用 · 点击重试';
|
||||
|
||||
@override
|
||||
String get swapChartMin => '最低';
|
||||
|
||||
@override
|
||||
String get swapChartMax => '最高';
|
||||
String swapChartMinMax(String minPrice, String maxPrice) {
|
||||
return '24h 最低: $minPrice — 最高: $maxPrice';
|
||||
}
|
||||
}
|
||||
|
||||
+1
-2
@@ -575,6 +575,5 @@
|
||||
"swapErrorExpired": "A cotação expirou",
|
||||
"swapErrorGeneric": "Erro no swap: {error}",
|
||||
"swapChartUnavailable": "Preço indisponível · Toque para tentar novamente",
|
||||
"swapChartMin": "Mín",
|
||||
"swapChartMax": "Máx"
|
||||
"swapChartMinMax": "24h Mín: {minPrice} — Máx: {maxPrice}"
|
||||
}
|
||||
|
||||
+1
-2
@@ -575,6 +575,5 @@
|
||||
"swapErrorExpired": "Котировка истекла",
|
||||
"swapErrorGeneric": "Ошибка обмена: {error}",
|
||||
"swapChartUnavailable": "Цена недоступна · Нажмите для повтора",
|
||||
"swapChartMin": "Мин",
|
||||
"swapChartMax": "Макс"
|
||||
"swapChartMinMax": "24h Мин: {minPrice} — Макс: {maxPrice}"
|
||||
}
|
||||
|
||||
+1
-2
@@ -575,6 +575,5 @@
|
||||
"swapErrorExpired": "Bei imeisha muda",
|
||||
"swapErrorGeneric": "Kosa la ubadilishaji: {error}",
|
||||
"swapChartUnavailable": "Bei haipatikani · Gusa kurudia",
|
||||
"swapChartMin": "Chini",
|
||||
"swapChartMax": "Juu"
|
||||
"swapChartMinMax": "24h Chini: {minPrice} — Juu: {maxPrice}"
|
||||
}
|
||||
|
||||
+1
-2
@@ -575,6 +575,5 @@
|
||||
"swapErrorExpired": "报价已过期",
|
||||
"swapErrorGeneric": "兑换错误: {error}",
|
||||
"swapChartUnavailable": "价格不可用 · 点击重试",
|
||||
"swapChartMin": "最低",
|
||||
"swapChartMax": "最高"
|
||||
"swapChartMinMax": "24h 最低: {minPrice} — 最高: {maxPrice}"
|
||||
}
|
||||
|
||||
@@ -102,11 +102,18 @@ class _SwapScreenState extends State<SwapScreen>
|
||||
});
|
||||
try {
|
||||
final prices = await PriceService.getHistoricalPrices(range: 'ONE_DAY');
|
||||
if (mounted && prices.isNotEmpty) {
|
||||
if (!mounted) return;
|
||||
if (prices.length >= 2) {
|
||||
setState(() {
|
||||
_chartData = prices.map((p) => p.priceUsd).toList();
|
||||
_isLoadingChart = false;
|
||||
});
|
||||
} else {
|
||||
setState(() {
|
||||
_chartData = [];
|
||||
_isLoadingChart = false;
|
||||
_chartError = true;
|
||||
});
|
||||
}
|
||||
} catch (_) {
|
||||
if (mounted) {
|
||||
@@ -731,9 +738,10 @@ class _SwapScreenState extends State<SwapScreen>
|
||||
if (hasData) {
|
||||
final minVal = _chartData.reduce(min);
|
||||
final maxVal = _chartData.reduce(max);
|
||||
final minLabel = l10n.swapChartMin;
|
||||
final maxLabel = l10n.swapChartMax;
|
||||
minMaxStr = '24h $minLabel: \$${fmt.format(minVal.round())} — $maxLabel: \$${fmt.format(maxVal.round())}';
|
||||
minMaxStr = l10n.swapChartMinMax(
|
||||
'\$${fmt.format(minVal.round())}',
|
||||
'\$${fmt.format(maxVal.round())}',
|
||||
);
|
||||
}
|
||||
|
||||
return Column(
|
||||
|
||||
Reference in New Issue
Block a user