readd filters to new ui (#3062)

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
This commit is contained in:
malik1004x
2026-03-14 13:57:41 +01:00
committed by GitHub
co-authored by Omar Hatem
parent af4459e76f
commit aa18ea3960
32 changed files with 59 additions and 7 deletions
@@ -70,7 +70,7 @@ class _AssetsHistorySectionState extends State<AssetsHistorySection> {
Widget build(BuildContext context) {
return Column(
children: [
if(tabs.length>1)
// if(tabs.length>1)
AssetsTopBar(
dashboardViewModel: widget.dashboardViewModel,
tabs: tabs.map((item) => item.title).toList(),
@@ -1,6 +1,8 @@
import 'package:cake_wallet/generated/i18n.dart';
import 'package:cake_wallet/new-ui/widgets/line_tab_switcher.dart';
import 'package:cake_wallet/routes.dart';
import 'package:cake_wallet/src/screens/dashboard/widgets/filter_widget.dart';
import 'package:cake_wallet/utils/show_pop_up.dart';
import 'package:cake_wallet/src/widgets/cake_image_widget.dart';
import 'package:cake_wallet/view_model/dashboard/dashboard_view_model.dart';
import 'package:flutter/material.dart';
@@ -21,7 +23,9 @@ class AssetsTopBar extends StatelessWidget {
@override
Widget build(BuildContext context) {
final hasTokenSettingsButton = tabs[selectedTab] == S.of(context).assets && dashboardViewModel.balanceViewModel.isHomeScreenSettingsEnabled;
final settingsButtonText = _getSettingsButtonText();
final hasTokenSettingsButton = settingsButtonText != null;
return Padding(
padding: const EdgeInsets.only(top: 12.0, bottom: 12.0, left: 12.0, right: 18.0),
@@ -29,20 +33,27 @@ class AssetsTopBar extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
if(tabs.length > 1)
LineTabSwitcher(
tabs: tabs,
onTabChange: onTabChange,
selectedTab: selectedTab,
),
)
else SizedBox.shrink(),
Opacity(
opacity: hasTokenSettingsButton ? 1 : 0,
child: ElevatedButton(
onPressed: () {
if (hasTokenSettingsButton) {
if (tabs[selectedTab] == S.of(context).assets) {
Navigator.of(context).pushNamed(
Routes.homeSettings,
arguments: dashboardViewModel.balanceViewModel,
);
} else if(tabs[selectedTab] == S.of(context).history) {
showPopUp<void>(
context: context,
builder: (context) => FilterWidget(filterItems: dashboardViewModel.filterItems),
);
}
},
style: ElevatedButton.styleFrom(
@@ -64,7 +75,7 @@ class AssetsTopBar extends StatelessWidget {
colorFilter: ColorFilter.mode(
Theme.of(context).colorScheme.primary, BlendMode.srcIn)),
Text(
S.of(context).tokens,
settingsButtonText??"",
style: TextStyle(color: Theme.of(context).colorScheme.primary),
)
],
@@ -77,4 +88,15 @@ class AssetsTopBar extends StatelessWidget {
),
);
}
String? _getSettingsButtonText() {
if (tabs[selectedTab] == S.current.assets &&
dashboardViewModel.balanceViewModel.isHomeScreenSettingsEnabled) {
return S.current.tokens;
}
if (tabs[selectedTab] == S.current.history) {
return S.current.filters;
}
}
}
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "تم حفظ الملف",
"fill_code": "يرجى إدخال رمز التحقق المُرسل إلى بريدك الإلكتروني",
"filter_by": "تصفية حسب",
"filters": "المرشحات",
"finding_provider": "جارٍ البحث عن مزوّد",
"first_wallet_text": "محفظة رائعة لـ Monero وBitcoin وEthereum وLitecoin وHaven",
"fixed_pair_not_supported": "هذا الزوج الثابت غير مدعوم مع خدمات المبادلة المحددة",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Файлът е запазен",
"fill_code": "Моля, въведете кода за потвърждение, изпратен на вашия имейл",
"filter_by": "Филтриране по",
"filters": "Филтри",
"finding_provider": "Намиране на доставчик",
"first_wallet_text": "Страхотен портфейл за Monero, Bitcoin, Ethereum, Litecoin и Haven",
"fixed_pair_not_supported": "Тази фиксирана двойка не се поддържа от избраните услуги за обмен",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Soubor uložen",
"fill_code": "Zadejte prosím ověřovací kód, který vám byl zaslán na e-mail",
"filter_by": "Filtrovat podle",
"filters": "Filtry",
"finding_provider": "Hledání poskytovatele",
"first_wallet_text": "Skvělá peněženka pro Monero, Bitcoin, Ethereum, Litecoin a Haven",
"fixed_pair_not_supported": "Tento pevný pár není podporován u vybraných swapovacích služeb",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Datei gespeichert",
"fill_code": "Bitte geben Sie den Verifizierungscode ein, den Sie per E-Mail erhalten haben",
"filter_by": "Filtern nach",
"filters": "Filter",
"finding_provider": "Anbieter wird gesucht",
"first_wallet_text": "Eine großartige Wallet für Monero, Bitcoin, Ethereum, Litecoin und Haven",
"fixed_pair_not_supported": "Dieses feste Paar wird von den ausgewählten Swap-Diensten nicht unterstützt",
+2 -1
View File
@@ -475,6 +475,7 @@
"file_saved": "File saved",
"fill_code": "Please fill in the verification code provided to your email",
"filter_by": "Filter by",
"filters": "Filters",
"finding_provider": "Finding provider",
"first_wallet_text": "Awesome wallet for Monero, Bitcoin, Ethereum, Litecoin, and Haven",
"fixed_pair_not_supported": "This fixed pair is not supported with the selected swap services",
@@ -1365,4 +1366,4 @@
"zcash_card_missing_funds": "Missing funds?",
"zcash_card_scan": "Scan",
"zcash_card_warning": "Do not close the app until the procedure completes, if you do so this process will need to restart from scratch."
}
}
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Archivo guardado",
"fill_code": "Por favor, introduce el código de verificación enviado a tu correo electrónico",
"filter_by": "Filtrar por",
"filters": "Filtros",
"finding_provider": "Buscando proveedor",
"first_wallet_text": "Billetera increíble para Monero, Bitcoin, Ethereum, Litecoin y Haven",
"fixed_pair_not_supported": "Este par fijo no es compatible con los servicios de swap seleccionados",
+1
View File
@@ -473,6 +473,7 @@
"file_saved": "فایل ذخیره شد",
"fill_code": "لطفاً کد تأیید ارسال‌شده به ایمیل خود را وارد کنید",
"filter_by": "فیلتر بر اساس",
"filters": "فیلترها",
"finding_provider": "در حال یافتن ارائه‌دهنده",
"first_wallet_text": "کیف پول فوق‌العاده برای مونرو، بیت‌کوین، اتریوم، لایت‌کوین و هیون",
"fixed_pair_not_supported": "این جفت‌ارز ثابت توسط سرویس‌های سواپ انتخاب‌شده پشتیبانی نمی‌شود",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Fichier enregistré",
"fill_code": "Veuillez saisir le code de vérification envoyé à votre adresse e-mail.",
"filter_by": "Filtrer par",
"filters": "Filtres",
"finding_provider": "Recherche d’un fournisseur",
"first_wallet_text": "Portefeuille génial pour Monero, Bitcoin, Ethereum, Litecoin et Haven",
"fixed_pair_not_supported": "Cette paire fixe n'est pas prise en charge par les services d'échange sélectionnés",
+1
View File
@@ -371,6 +371,7 @@
"field_required": "Ko kora tekotevẽva",
"fill_code": "Ikatúpiko emyenyhẽ pe ayvu ñemi jehechaukaha oñemondóva nde korreópe.",
"filter_by": "Mboguaha rupi",
"filters": "Filtro-kuéra rehegua",
"finding_provider": "Ojejuhu hag̃ua proveedor",
"first_wallet_text": "Viru ñongatuha iporãiterei Monero, Bitcoin, Ethereum, Litecoin ha Haven-pe guarã.",
"fixed_pair_not_supported": "Ko mokõi par fijo ndojehepyme’ẽi umi swap rembiapo ojeiporavo va’ekuépe.",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "An ajiye fayil",
"fill_code": "Da fatan za a shigar da lambar tabbatarwa da aka aiko zuwa imel ɗin ku",
"filter_by": "Tace ta",
"filters": "Tace",
"finding_provider": "Ana neman mai ba da sabis",
"first_wallet_text": "Kyakkyawan walat don Monero, Bitcoin, Ethereum, Litecoin, da Haven",
"fixed_pair_not_supported": "Ba a tallafa wa wannan tsayayyen nau'i ba tare da sabis ɗin musayar da aka zaɓa ba",
+2 -1
View File
@@ -475,6 +475,7 @@
"file_saved": "फ़ाइल सहेजी गई",
"fill_code": "कृपया अपने ईमेल पर भेजा गया सत्यापन कोड दर्ज करें",
"filter_by": "इसके अनुसार फ़िल्टर करें",
"filters": "फिल्टर",
"finding_provider": "प्रदाता खोजा जा रहा है",
"first_wallet_text": "Monero, Bitcoin, Ethereum, Litecoin और Haven के लिए शानदार वॉलेट",
"fixed_pair_not_supported": "यह निश्चित जोड़ी चयनित स्वैप सेवाओं के साथ समर्थित नहीं है",
@@ -725,8 +726,8 @@
"payjoin_unavailable_sheet_title": "Payjoin उपलब्ध क्यों नहीं है?",
"payment_id": "भुगतान आईडी: ",
"payment_made_easy": "भुगतान करना आसान",
"payment_was_received": "आपका भुगतान प्राप्त हो गया।",
"Payment_was_received": "आपका भुगतान प्राप्त हो गया था।",
"payment_was_received": "आपका भुगतान प्राप्त हो गया।",
"payments": "भुगतान",
"pending": " (लंबित)",
"percentageOf": "${amount} का",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Datoteka je spremljena",
"fill_code": "Molimo unesite verifikacijski kod koji ste primili na svoju e-poštu",
"filter_by": "Filtriraj po",
"filters": "Filteri",
"finding_provider": "Traženje pružatelja",
"first_wallet_text": "Odličan novčanik za Monero, Bitcoin, Ethereum, Litecoin i Haven",
"fixed_pair_not_supported": "Ovaj fiksni par nije podržan s odabranim uslugama zamjene",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Ֆայլը պահպանվել է",
"fill_code": "Խնդրում ենք մուտքագրել ձեր էլեկտրոնային փոստին ուղարկված հաստատման կոդը",
"filter_by": "Զտել ըստ",
"filters": "Զտիչներ",
"finding_provider": "Մատակարարի որոնում",
"first_wallet_text": "Հիանալի դրամապանակ Monero, Bitcoin, Ethereum, Litecoin և Haven-ի համար",
"fixed_pair_not_supported": "Այս ֆիքսված զույգը չի աջակցվում ընտրված փոխանակման ծառայությունների կողմից",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "File tersimpan",
"fill_code": "Silakan isi kode verifikasi yang dikirim ke email Anda",
"filter_by": "Filter berdasarkan",
"filters": "Filter",
"finding_provider": "Mencari penyedia",
"first_wallet_text": "Dompet yang keren untuk Monero, Bitcoin, Ethereum, Litecoin, dan Haven",
"fixed_pair_not_supported": "Pasangan tetap ini tidak didukung oleh layanan swap yang dipilih",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "File salvato",
"fill_code": "Inserisci il codice di verifica inviato al tuo indirizzo email",
"filter_by": "Filtra per",
"filters": "Filtri",
"finding_provider": "Ricerca del fornitore",
"first_wallet_text": "Portafoglio fantastico per Monero, Bitcoin, Ethereum, Litecoin e Haven",
"fixed_pair_not_supported": "Questa coppia fissa non è supportata dai servizi di swap selezionati",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "ファイルを保存しました",
"fill_code": "メールに記載されている認証コードを入力してください",
"filter_by": "絞り込み",
"filters": "フィルター",
"finding_provider": "プロバイダーを検索中",
"first_wallet_text": "Monero、Bitcoin、Ethereum、Litecoin、Havenに対応した素晴らしいウォレット",
"fixed_pair_not_supported": "この固定ペアは、選択したスワップサービスではサポートされていません",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "파일이 저장되었습니다",
"fill_code": "이메일로 받은 인증 코드를 입력하세요",
"filter_by": "필터 기준:",
"filters": "필터",
"finding_provider": "제공자 찾는 중",
"first_wallet_text": "모네로, 비트코인, 이더리움, 라이트코인, 헤이븐을 위한 멋진 지갑",
"fixed_pair_not_supported": "이 고정 페어는 선택한 스왑 서비스에서 지원되지 않습니다",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "ဖိုင်ကို သိမ်းဆည်းပြီးပါပြီ",
"fill_code": "သင့်အီးမေးလ်သို့ ပို့ထားသော အတည်ပြုကုဒ်ကို ဖြည့်ပါ။",
"filter_by": "အလိုက် စစ်ထုတ်ရန်",
"filters": "စစ်ထုတ်မှုများ",
"finding_provider": "ပံ့ပိုးသူကို ရှာဖွေနေသည်",
"first_wallet_text": "Monero၊ Bitcoin၊ Ethereum၊ Litecoin နှင့် Haven အတွက် အလွန်ကောင်းမွန်သော Wallet",
"fixed_pair_not_supported": "ဤပုံသေစုံတွဲကို ရွေးချယ်ထားသော swap ဝန်ဆောင်မှုများဖြင့် မထောက်ပံ့ပါ",
+1
View File
@@ -473,6 +473,7 @@
"file_saved": "Bestand opgeslagen",
"fill_code": "Vul de verificatiecode in die je in je e-mail hebt ontvangen",
"filter_by": "Filteren op",
"filters": "Filters",
"finding_provider": "Aanbieder zoeken",
"first_wallet_text": "Geweldige wallet voor Monero, Bitcoin, Ethereum, Litecoin en Haven",
"fixed_pair_not_supported": "Dit vaste paar wordt niet ondersteund met de geselecteerde swap-services",
+1
View File
@@ -474,6 +474,7 @@
"file_saved": "Plik zapisany",
"fill_code": "Proszę wprowadzić kod weryfikacyjny wysłany na Twój adres e‑mail",
"filter_by": "Filtruj według",
"filters": "Filtry",
"finding_provider": "Wyszukiwanie dostawcy",
"first_wallet_text": "Świetny portfel dla Monero, Bitcoin, Ethereum, Litecoin i Haven",
"fixed_pair_not_supported": "Ta stała para nie jest obsługiwana przez wybrane usługi swap.",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Arquivo salvo",
"fill_code": "Por favor, preencha o código de verificação enviado para o seu e-mail",
"filter_by": "Filtrar por",
"filters": "Filtros",
"finding_provider": "Procurando provedor",
"first_wallet_text": "Carteira incrível para Monero, Bitcoin, Ethereum, Litecoin e Haven",
"fixed_pair_not_supported": "Este par fixo não é compatível com os serviços de swap selecionados",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Файл сохранён",
"fill_code": "Пожалуйста, введите код подтверждения, отправленный на вашу электронную почту",
"filter_by": "Фильтровать по",
"filters": "Фильтры",
"finding_provider": "Поиск провайдера",
"first_wallet_text": "Отличный кошелёк для Monero, Bitcoin, Ethereum, Litecoin и Haven",
"fixed_pair_not_supported": "Эта фиксированная пара не поддерживается выбранными сервисами обмена",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "บันทึกไฟล์แล้ว",
"fill_code": "โปรดกรอกรหัสยืนยันที่ส่งไปยังอีเมลของคุณ",
"filter_by": "กรองตาม",
"filters": "ตัวกรอง",
"finding_provider": "กำลังค้นหาผู้ให้บริการ",
"first_wallet_text": "กระเป๋าเงินที่ยอดเยี่ยมสำหรับ Monero, Bitcoin, Ethereum, Litecoin และ Haven",
"fixed_pair_not_supported": "คู่แบบคงที่นี้ไม่รองรับกับบริการสวอปที่เลือก",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Na-save ang file",
"fill_code": "Mangyaring ilagay ang verification code na ipinadala sa iyong email",
"filter_by": "I-filter ayon sa",
"filters": "Mga filter",
"finding_provider": "Naghahanap ng provider",
"first_wallet_text": "Napakahusay na wallet para sa Monero, Bitcoin, Ethereum, Litecoin, at Haven",
"fixed_pair_not_supported": "Hindi sinusuportahan ang nakapirming pares na ito sa mga napiling serbisyo ng swap",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Dosya kaydedildi",
"fill_code": "Lütfen e-postanıza gönderilen doğrulama kodunu girin",
"filter_by": "Filtrele:",
"filters": "Filtreler",
"finding_provider": "Sağlayıcı aranıyor",
"first_wallet_text": "Monero, Bitcoin, Ethereum, Litecoin ve Haven için harika bir cüzdan",
"fixed_pair_not_supported": "Bu sabit parite, seçilen takas hizmetleriyle desteklenmiyor",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "Файл збережено",
"fill_code": "Будь ласка, введіть код підтвердження, надісланий на вашу електронну адресу",
"filter_by": "Фільтрувати за",
"filters": "Фільтри",
"finding_provider": "Пошук провайдера",
"first_wallet_text": "Чудовий гаманець для Monero, Bitcoin, Ethereum, Litecoin та Haven",
"fixed_pair_not_supported": "Ця фіксована пара не підтримується вибраними сервісами обміну",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "فائل محفوظ ہو گئی",
"fill_code": "براہ کرم اپنے ای میل پر موصول ہونے والا تصدیقی کوڈ درج کریں۔",
"filter_by": "کے مطابق فلٹر کریں",
"filters": "فلٹرز",
"finding_provider": "فراہم کنندہ تلاش کیا جا رہا ہے",
"first_wallet_text": "Monero، Bitcoin، Ethereum، Litecoin اور Haven کے لیے بہترین والیٹ",
"fixed_pair_not_supported": "منتخب کردہ سواپ سروسز کے ساتھ یہ فکسڈ جوڑی سپورٹ نہیں کی جاتی",
+1
View File
@@ -474,6 +474,7 @@
"file_saved": "Đã lưu tệp",
"fill_code": "Vui lòng nhập mã xác minh được gửi đến email của bạn",
"filter_by": "Lọc theo",
"filters": "Bộ lọc",
"finding_provider": "Đang tìm nhà cung cấp",
"first_wallet_text": "Ví tuyệt vời cho Monero, Bitcoin, Ethereum, Litecoin và Haven",
"fixed_pair_not_supported": "Cặp tỷ giá cố định này không được hỗ trợ với các dịch vụ hoán đổi đã chọn",
+1
View File
@@ -476,6 +476,7 @@
"file_saved": "Faili ti fipamọ",
"fill_code": "Jọ̀wọ́ tẹ kóòdù ìmúdájú tí a rán sí ímeèlì rẹ.",
"filter_by": "Ṣàlẹ̀mọ́ nípa",
"filters": "Ajọ",
"finding_provider": "N wa olupese",
"first_wallet_text": "Àpamọ́wọ́ tó dára gan-an fún Monero, Bitcoin, Ethereum, Litecoin, àti Haven",
"fixed_pair_not_supported": "Akọsopọ paṣipaarọ ti o wa titi yii ko ni atilẹyin pẹlu awọn iṣẹ swap ti o yan",
+1
View File
@@ -475,6 +475,7 @@
"file_saved": "文件已保存",
"fill_code": "请填写发送至您邮箱的验证码",
"filter_by": "筛选条件",
"filters": "过滤器",
"finding_provider": "正在查找服务提供商",
"first_wallet_text": "适用于门罗币、比特币、以太坊、莱特币和 Haven 的超棒钱包",
"fixed_pair_not_supported": "所选的兑换服务不支持该固定交易对",