Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,9 @@ android {
}

compileOptions {
// Use certain newer Java language APIs
// Even when your app’s minSdkVersion is below the API level where these classes are actually available natively.
coreLibraryDesugaringEnabled true
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
Expand All @@ -114,4 +117,5 @@ flutter {

dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.3'
}
6 changes: 3 additions & 3 deletions android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ buildscript {
}

dependencies {
classpath 'com.android.tools.build:gradle:8.1.2'
classpath 'com.android.tools.build:gradle:8.2.1'
// START: FlutterFire Configuration
classpath 'com.google.gms:google-services:4.3.15'
// END: FlutterFire Configuration
Expand Down Expand Up @@ -37,8 +37,8 @@ allprojects {
}

ext {
compileSdkVersion = 34
targetSdkVersion = 34
compileSdkVersion = 35
targetSdkVersion = 35
}

rootProject.buildDir = '../build'
Expand Down
3 changes: 2 additions & 1 deletion assets/flutter_i18n/de.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Keine Internetverbindung\nSie sind gerade offline. Sie können:\n• Ihre Netzwerkeinstellungen überprüfen\n• Wallet durchsuchen\n• Später erneut versuchen",
"poor_internet_connection": "Langsame Internetverbindung\nIhre Verbindung ist derzeit schwach. Sie können:\n• Näher an Ihren Router gehen\n• Zu einem schnelleren Mobilfunkanbieter wechseln\n• Moonbase weiterhin in reduzierter Qualität verwenden",
"token_not_found": "Token nicht gefunden! Bitte Adresse überprüfen und erneut versuchen.",
"token_already_exists": "Token existiert bereits!"
"token_already_exists": "Token existiert bereits!",
"bluetooth_devices": "Bluetooth-Geräte"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"searching_for_x": "Searching for {0}...",
"public_list": "Public list",
"token_not_found": "Token not found! Please check address and try again.",
"token_already_exists": "Token already exists!"
"token_already_exists": "Token already exists!",
"bluetooth_devices": "Bluetooth devices"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/es.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Sin conexión a internet\nEstás sin conexión ahora. Puedes:\n• Revisar tu configuración de red\n• Explorar monedero\n• Intentar de nuevo más tarde",
"poor_internet_connection": "Conexión lenta a internet\nSu conexión es débil en este momento. Puede:\n• Acercarse a su router\n• Cambiar a un operador móvil más rápido\n• Continuar usando Moonbase con calidad reducida",
"token_not_found": "¡Token no encontrado! Por favor, compruebe la dirección e inténtelo de nuevo.",
"token_already_exists": "¡El token ya existe!"
"token_already_exists": "¡El token ya existe!",
"bluetooth_devices": "Dispositivos Bluetooth"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Pas de connexion internet\nVous êtes hors ligne pour le moment. Vous pouvez :\n• Vérifier vos paramètres réseau\n• Consulter votre portefeuille\n• Réessayer plus tard",
"poor_internet_connection": "Connexion internet lente\nVotre connexion est faible actuellement. Vous pouvez :\n• Vous rapprocher de votre routeur\n• Passer à un opérateur mobile plus rapide\n• Continuer à utiliser Moonbase en qualité réduite",
"token_not_found": "Jeton introuvable ! Veuillez vérifier l’adresse et réessayer.",
"token_already_exists": "Jeton déjà existant !"
"token_already_exists": "Jeton déjà existant !",
"bluetooth_devices": "Périphériques Bluetooth"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/id.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Tidak ada koneksi internet\nAnda sedang offline sekarang. Anda dapat:\n• Periksa pengaturan jaringan Anda\n• Jelajahi dompet\n• Coba lagi nanti",
"poor_internet_connection": "Koneksi internet lambat\nKoneksi Anda lemah saat ini. Anda dapat:\n• Mendekat ke router Anda\n• Beralih ke operator seluler yang lebih cepat\n• Melanjutkan menggunakan Moonbase dengan kualitas yang dikurangi",
"token_not_found": "Token tidak ditemukan! Periksa alamat dan coba lagi.",
"token_already_exists": "Token sudah ada!"
"token_already_exists": "Token sudah ada!",
"bluetooth_devices": "Perangkat Bluetooth"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/it.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Nessuna connessione internet\nSei offline in questo momento. Puoi:\n• Controllare le impostazioni di rete\n• Sfoglia portafoglio\n• Riprova più tardi",
"poor_internet_connection": "Connessione internet lenta\nLa tua connessione è debole in questo momento. Puoi:\n• Avvicinarti al tuo router\n• Passare a un operatore mobile più veloce\n• Continuare a utilizzare Moonbase a qualità ridotta",
"token_not_found": "Token non trovato! Controlla l'indirizzo e riprova.",
"token_already_exists": "Token già esistente!"
"token_already_exists": "Token già esistente!",
"bluetooth_devices": "Dispositivi Bluetooth"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/ja.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "インターネット接続がありません\nオフラインです。次のことができます。\n• ネットワーク設定を確認する\n• ウォレットを参照する\n• 後で再試行する",
"poor_internet_connection": "遅いインターネット接続\n接続が弱くなっています。以下のことができます。\n• ルーターに近づきます\n• より高速なモバイルキャリアに切り替えます\n• 低画質でMoonbaseを使い続けます",
"token_not_found": "トークンが見つかりません!アドレスを確認して、もう一度お試しください。",
"token_already_exists": "トークンは既に存在します!"
"token_already_exists": "トークンは既に存在します!",
"bluetooth_devices": "Bluetoothデバイス"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/ko.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "인터넷 연결 없음\n현재 오프라인 상태입니다. 다음을 수행할 수 있습니다.\n• 네트워크 설정 확인\n• 지갑 탐색\n• 나중에 다시 시도",
"poor_internet_connection": "느린 인터넷 연결\n현재 연결이 약합니다. 다음을 시도해 볼 수 있습니다.\n• 라우터에 가까이 이동\n• 더 빠른 이동통신사로 변경\n• 낮은 화질로 Moonbase 계속 사용",
"token_not_found": "토큰을 찾을 수 없습니다! 주소를 확인하고 다시 시도하십시오.",
"token_already_exists": "토큰이 이미 존재합니다!"
"token_already_exists": "토큰이 이미 존재합니다!",
"bluetooth_devices": "블루투스 장치"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/nl.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Geen internetverbinding\nJe bent momenteel offline. Je kunt:\n• Je netwerkinstellingen controleren\n• Portemonnee bekijken\n• Later opnieuw proberen",
"poor_internet_connection": "Trage internetverbinding\nUw verbinding is momenteel zwak. U kunt:\n• Dichter bij uw router gaan zitten\n• Overschakelen naar een snellere mobiele provider\n• Doorgaan met het gebruik van Moonbase met verminderde kwaliteit",
"token_not_found": "Token niet gevonden! Controleer het adres en probeer het opnieuw.",
"token_already_exists": "Token bestaat al!"
"token_already_exists": "Token bestaat al!",
"bluetooth_devices": "Bluetooth-apparaten"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/pt.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Sem conexão com a internet\nVocê está offline agora. Você pode:\n• Verificar suas configurações de rede\n• Navegar na carteira\n• Tentar novamente mais tarde",
"poor_internet_connection": "Conexão de internet lenta\nSua conexão está fraca no momento. Você pode:\n• Aproximar-se do seu roteador\n• Trocar para uma operadora móvel mais rápida\n• Continuar usando o Moonbase com qualidade reduzida",
"token_not_found": "Token não encontrado! Verifique o endereço e tente novamente.",
"token_already_exists": "Token já existe!"
"token_already_exists": "Token já existe!",
"bluetooth_devices": "Dispositivos Bluetooth"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/ro.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Nicio conexiune la internet\nSunteți offline în acest moment. Puteți:\n• Verifica setările de rețea\n• Răsfoiți portofelul\n• Încercați din nou mai târziu",
"poor_internet_connection": "Conexiune internet lentă\nConexiunea dumneavoastră este slabă în acest moment. Puteți:\n• Să vă apropiați de router\n• Să treceți la un operator mobil mai rapid\n• Să continuați să utilizați Moonbase la o calitate redusă",
"token_not_found": "Jeton nedetectat! Verificați adresa și încercați din nou.",
"token_already_exists": "Tokenul există deja!"
"token_already_exists": "Tokenul există deja!",
"bluetooth_devices": "Dispozitive Bluetooth"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/ru.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Нет подключения к интернету\nВы сейчас не в сети. Вы можете:\n• Проверить настройки сети\n• Просмотреть кошелёк\n• Попробовать позже",
"poor_internet_connection": "Медленное интернет-соединение\nВаше соединение сейчас слабое. Вы можете:\n• Подойдите ближе к вашему роутеру\n• Переключиться на более быстрого мобильного оператора\n• Продолжить использование Moonbase в пониженном качестве",
"token_not_found": "Токен не найден! Пожалуйста, проверьте адрес и попробуйте ещё раз.",
"token_already_exists": "Токен уже существует!"
"token_already_exists": "Токен уже существует!",
"bluetooth_devices": "Устройства Bluetooth"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/tr.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "İnternet bağlantısı yok\nŞu anda çevrimdışısınız. Şunları yapabilirsiniz:\n• Ağ ayarlarınızı kontrol edin\n• Cüzdanınıza göz atın\n• Daha sonra tekrar deneyin",
"poor_internet_connection": "Yavaş internet bağlantısı\nBağlantınız şu anda zayıf. Şunları yapabilirsiniz:\n• Router'ınıza daha yakın hareket edin\n• Daha hızlı bir mobil operatörüne geçin\n• Moonbase'i düşük kalitede kullanmaya devam edin",
"token_not_found": "Token bulunamadı! Lütfen adresi kontrol edin ve tekrar deneyin.",
"token_already_exists": "Token zaten var!"
"token_already_exists": "Token zaten var!",
"bluetooth_devices": "Bluetooth cihazları"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/vi.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "Không có kết nối internet\nBạn đang ngoại tuyến. Bạn có thể:\n• Kiểm tra cài đặt mạng của bạn\n• Duyệt ví\n• Thử lại sau",
"poor_internet_connection": "Kết nối internet chậm\nKết nối của bạn đang yếu. Bạn có thể:\n• Đến gần bộ định tuyến hơn\n• Chuyển sang nhà mạng di động nhanh hơn\n• Tiếp tục sử dụng Moonbase ở chất lượng thấp hơn",
"token_not_found": "Không tìm thấy mã thông báo! Vui lòng kiểm tra địa chỉ và thử lại.",
"token_already_exists": "Token đã tồn tại!"
"token_already_exists": "Token đã tồn tại!",
"bluetooth_devices": "Thiết bị Bluetooth"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/zh_CN.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "无网络连接\n您现在处于离线状态。您可以:\n• 检查您的网络设置\n• 浏览钱包\n•稍后再试",
"poor_internet_connection": "网速慢\n您的网络连接目前较弱。您可以:\n• 靠近您的路由器\n• 切换到更快的移动运营商\n• 继续使用 Moonbase,但质量会降低",
"token_not_found": "令牌未找到!请检查地址并重试。",
"token_already_exists": "令牌已存在!"
"token_already_exists": "令牌已存在!",
"bluetooth_devices": "蓝牙设备"
}
3 changes: 2 additions & 1 deletion assets/flutter_i18n/zh_TW.json
Original file line number Diff line number Diff line change
Expand Up @@ -476,5 +476,6 @@
"lost_internet_connection": "沒有網絡連線\n您目前離線。您可以:\n• 檢查您的網絡設定\n• 瀏覽錢包\n•稍後再試",
"poor_internet_connection": "網路連線速度慢\n您的網路連線目前較弱。您可以:\n• 靠近您的路由器\n• 切換到速度更快的行動網路業者\n• 以較低的畫質繼續使用 Moonbase",
"token_not_found": "找不到代幣!請檢查地址並再試一次。",
"token_already_exists": "權杖已存在!"
"token_already_exists": "權杖已存在!",
"bluetooth_devices": "藍牙裝置"
}
5 changes: 3 additions & 2 deletions lib/common/bottom_sheets/blueberry_rings_bottom_sheet.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@ import 'package:flutter/material.dart';
import 'package:flutter_blue_plus/flutter_blue_plus.dart';
import 'package:mxc_ui/mxc_ui.dart';

Future<ScanResult?> showBlueberryRingsBottomSheet(
Future<ScanResult?> showBluetoothDevicesBottomSheet(
BuildContext context,
String title,
) {
return showBaseBottomSheet<ScanResult>(
context: context,
bottomSheetTitle: 'nearby_blueberry_rings',
bottomSheetTitle: title,
closeButtonReturnValue: null,
widgets: [
const BlueberryDeviceInfo(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -235,9 +235,9 @@ class BluetoothUseCase extends ReactiveUseCase {
timeout: timeout,
removeIfGone: removeIfGone ?? const Duration(seconds: 30),
continuousUpdates: continuousUpdates ?? true,
continuousDivisor: continuousDivisor ?? 1,
continuousDivisor: continuousDivisor ?? 4,
oneByOne: oneByOne ?? false,
androidScanMode: androidScanMode ?? AndroidScanMode.lowLatency,
androidScanMode: androidScanMode ?? AndroidScanMode.balanced,
androidUsesFineLocation: androidUsesFineLocation ?? false,
);
}
Expand All @@ -246,17 +246,19 @@ class BluetoothUseCase extends ReactiveUseCase {
Future<void> getScanResults(
BuildContext context,
bool withBottomSheet,
String title,
) async {
await Future.delayed(const Duration(seconds: 4), () async {
final currentScanResults = scanResults.value;
final noDevicesFound = currentScanResults.isEmpty;
final showBottomSheet = currentScanResults.length > 1 || noDevicesFound;
if (showBottomSheet && withBottomSheet == true) {
// We need to let the user to choose If two or more devices of rings are available and even If empty maybe let the user to wait
final scanResult = await showBlueberryRingsBottomSheet(
final scanResult = await showBluetoothDevicesBottomSheet(
context,
title,
);
update(selectedScanResult, scanResult);
if (scanResult != null) update(selectedScanResult, scanResult);
} else if (noDevicesFound) {
// If no devices are found, Wait till It's found
// Create a Completer to manage the async flow
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,14 +73,14 @@ class BlueberryRingUseCase extends ReactiveUseCase {
await _bluetoothUseCase.alreadyScanningGuard<void>(() async {
_bluetoothUseCase.startScanning(
// withServices: [bluetoothServiceUUID],
withKeywords: ['2301', 'BBRING'],
// withKeywords: ['2301', 'BBRING'],
// withKeywords: ['Mi', 'Buds Pro'],
// Mi Band service uuid
// withServices: [Guid.fromString('0000fee0-0000-1000-8000-00805f9b34fb')]
// withNames: ['Buds Pro'],
);

await _bluetoothUseCase.getScanResults(context, true);
await _bluetoothUseCase.getScanResults(context, true, 'nearby_blueberry_rings');
update(selectedBlueberryRing,
_bluetoothUseCase.selectedScanResult.valueOrNull);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,19 +118,19 @@ class BluetoothHelper {
);

const equality = ListEquality<String>();
final isMiningDapp = -1 !=
final isRingDapp = -1 !=
Urls.getRingDappUrls().indexWhere(
(element) =>
Uri.parse(element).host == currentUrl.host,
);
bool showNearbyBottomSheet = true;
if (isMiningDapp) {
if (isRingDapp) {
final isRegisterRing =
equality.equals(withKeywords, blueberryRingGeneralSearch);
showNearbyBottomSheet = isRegisterRing;
}

await getBlueberryRing(showNearbyBottomSheet);
await getBlueberryRing(showNearbyBottomSheet, isRingDapp);
bluetoothUseCase.stopScanner();
}

Expand Down Expand Up @@ -352,11 +352,14 @@ class BluetoothHelper {
return uInt8List;
}

Future<void> getBlueberryRing(bool isRegisterRing) async {
// isRegisterRing is to know wether to show the bottomsheet or not (On register we don't)
// isRingDapp is to know and show right title
Future<void> getBlueberryRing(bool isRegisterRing, bool isRingDapp) async {
String title = isRingDapp ? 'nearby_blueberry_rings' : 'bluetooth_devices';
showSnackBar(
context: context!,
content: translate('searching_for_x')!
.replaceFirst('{0}', translate('nearby_blueberry_rings')!),
.replaceFirst('{0}', translate(title)!),
leadingIcon: Container(
padding: const EdgeInsets.all(Sizes.spaceXSmall),
decoration: BoxDecoration(
Expand All @@ -372,6 +375,6 @@ class BluetoothHelper {
),
));
// Check register criteria for blueberry ring
await bluetoothUseCase.getScanResults(context!, isRegisterRing);
await bluetoothUseCase.getScanResults(context!, isRegisterRing, title);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,6 @@ import 'package:flutter/services.dart';
import 'package:moonchain_wallet/core/core.dart';
import 'package:flutter_i18n/flutter_i18n.dart';
import 'package:package_info_plus/package_info_plus.dart';
import 'package:smart_usb/smart_usb.dart' as SmartUsb;
import 'package:usb_serial/usb_serial.dart' as UsbSerial;
import 'package:libusb_android_helper/libusb_android_helper.dart'
as LibusbAndroidHelper;
import '../../../common/common.dart';
import 'settings_page_state.dart';

Expand Down Expand Up @@ -119,7 +115,8 @@ class SettingsPresenter extends CompletePresenter<SettingsState> {
// final connectedDevicesList = bluetoothUseCase.getConnectedDevices();

// print(connectedDevicesList);
await blueberryRingUseCase.getBlueberryRingsNearby(context!);
// final firebaseToken = await FirebaseMessaging.instance.getToken();
// print('Fireabse otken : $firebaseToken');
// print(blueberryRingUseCase.selectedBlueberryRing.valueOrNull);

// final ring = blueberryRingUseCase.selectedBlueberryRing.valueOrNull;
Expand Down
Loading
Loading