Revert "version bump to 3.13.9, auth working on mac (#1367)" (#1397)

This reverts commit e6b4b08c24.
This commit is contained in:
Omar Hatem 2024-04-18 20:10:58 +02:00 committed by GitHub
parent e48962361a
commit 4ed4659f9e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
21 changed files with 406 additions and 567 deletions

View file

@ -42,7 +42,7 @@ jobs:
- name: Flutter action
uses: subosito/flutter-action@v1
with:
flutter-version: "3.13.9"
flutter-version: "3.10.x"
channel: stable
- name: Install package dependencies

View file

@ -1,5 +1,5 @@
buildscript {
ext.kotlin_version = '1.8.10'
ext.kotlin_version = '1.7.10'
repositories {
google()
jcenter()

View file

@ -39,14 +39,11 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
build_runner: ^2.4.7
build_runner: ^2.1.11
build_resolvers: ^2.0.9
mobx_codegen: ^2.0.7
hive_generator: ^1.1.3
dependency_overrides:
watcher: ^1.1.0
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

View file

@ -39,13 +39,10 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
build_runner: ^2.4.7
build_runner: ^2.1.11
mobx_codegen: ^2.0.7
hive_generator: ^1.1.3
dependency_overrides:
watcher: ^1.1.0
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

View file

@ -28,14 +28,11 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
build_runner: ^2.4.7
build_runner: ^2.1.11
build_resolvers: ^2.0.9
mobx_codegen: ^2.0.7
hive_generator: ^2.0.1
dependency_overrides:
watcher: ^1.1.0
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

View file

@ -22,11 +22,7 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
build_runner: ^2.4.7
dependency_overrides:
watcher: ^1.1.0
build_runner: ^2.1.11
flutter:
# assets:
# - images/a_dot_burr.jpeg

View file

@ -27,14 +27,11 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
build_runner: ^2.4.7
build_runner: ^2.1.11
mobx_codegen: ^2.0.7
hive_generator: ^1.1.3
flutter_lints: ^2.0.0
dependency_overrides:
watcher: ^1.1.0
flutter:
# assets:
# - images/a_dot_burr.jpeg

View file

@ -24,14 +24,11 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
build_runner: ^2.4.7
build_runner: ^2.1.11
mobx_codegen: ^2.0.7
build_resolvers: ^2.0.9
hive_generator: ^1.1.3
dependency_overrides:
watcher: ^1.1.0
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

View file

@ -26,14 +26,11 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
build_runner: ^2.4.7
build_runner: ^2.1.11
build_resolvers: ^2.0.9
mobx_codegen: ^2.0.7
hive_generator: ^1.1.3
dependency_overrides:
watcher: ^1.1.0
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

View file

@ -32,13 +32,10 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
build_runner: ^2.4.7
build_runner: ^2.1.11
mobx_codegen: ^2.0.7
hive_generator: ^1.1.3
dependency_overrides:
watcher: ^1.1.0
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

View file

@ -28,10 +28,7 @@ dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^2.0.0
build_runner: ^2.4.7
dependency_overrides:
watcher: ^1.1.0
build_runner: ^2.1.11
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

View file

@ -26,13 +26,10 @@ dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^2.0.0
build_runner: ^2.4.7
build_runner: ^2.1.11
mobx_codegen: ^2.0.7
hive_generator: ^1.1.3
dependency_overrides:
watcher: ^1.1.0
flutter:
# assets:
# - images/a_dot_burr.jpeg

View file

@ -1,28 +1,32 @@
import 'package:local_auth/local_auth.dart';
import 'package:flutter/services.dart';
import 'package:flutter_local_authentication/flutter_local_authentication.dart';
import 'package:cake_wallet/generated/i18n.dart';
class BiometricAuth {
final _flutterLocalAuthenticationPlugin = FlutterLocalAuthentication();
final _localAuth = LocalAuthentication();
Future<bool> isAuthenticated() async {
try {
final authenticated = await _flutterLocalAuthenticationPlugin.authenticate();
return authenticated;
} catch (e) {
return await _localAuth.authenticate(
localizedReason: S.current.biometric_auth_reason,
options: AuthenticationOptions(
biometricOnly: true,
useErrorDialogs: true,
stickyAuth: false));
} on PlatformException catch (e) {
print(e);
}
return false;
}
Future<bool> canCheckBiometrics() async {
bool canAuthenticate;
try {
canAuthenticate = await _flutterLocalAuthenticationPlugin.canAuthenticate();
} catch (error) {
print("Exception checking support. $error");
canAuthenticate = false;
return await _localAuth.canCheckBiometrics;
} on PlatformException catch (e) {
print(e);
}
return canAuthenticate;
return false;
}
}

View file

@ -751,50 +751,6 @@ class HaMaterialLocalizations extends GlobalMaterialLocalizations {
@override
String get scrimOnTapHintRaw => "Scrip on Tap";
@override
// TODO: implement collapsedHint
String get collapsedHint => "collapsedHint";
@override
// TODO: implement expandedHint
String get expandedHint => "expandedHint";
@override
// TODO: implement expansionTileCollapsedHint
String get expansionTileCollapsedHint => "expansionTileCollapsedHint";
@override
// TODO: implement expansionTileCollapsedTapHint
String get expansionTileCollapsedTapHint => "expansionTileCollapsedTapHint";
@override
// TODO: implement expansionTileExpandedHint
String get expansionTileExpandedHint => "expansionTileExpandedHint";
@override
// TODO: implement expansionTileExpandedTapHint
String get expansionTileExpandedTapHint => "expansionTileExpandedTapHint";
@override
// TODO: implement scanTextButtonLabel
String get scanTextButtonLabel => "scanTextButtonLabel";
@override
// TODO: implement lookUpButtonLabel
String get lookUpButtonLabel => "lookUpButtonLabel";
@override
// TODO: implement menuDismissLabel
String get menuDismissLabel => "menuDismissLabel";
@override
// TODO: implement searchWebButtonLabel
String get searchWebButtonLabel => "searchWebButtonLabel";
@override
// TODO: implement shareButtonLabel
String get shareButtonLabel => "shareButtonLabel";
}
/// Cupertino Support
@ -999,24 +955,4 @@ class HaCupertinoLocalizations extends GlobalCupertinoLocalizations {
@override
String get noSpellCheckReplacementsLabel => "";
@override
// TODO: implement clearButtonLabel
String get clearButtonLabel => "clearButtonLabel";
@override
// TODO: implement lookUpButtonLabel
String get lookUpButtonLabel => "lookUpButtonLabel";
@override
// TODO: implement menuDismissLabel
String get menuDismissLabel => "menuDismissLabel";
@override
// TODO: implement searchWebButtonLabel
String get searchWebButtonLabel => "searchWebButtonLabel";
@override
// TODO: implement shareButtonLabel
String get shareButtonLabel => "shareButtonLabel";
}

View file

@ -1,3 +1,4 @@
import 'dart:async';
import 'package:flutter/cupertino.dart';
@ -163,62 +164,62 @@ const yoDateSymbols = {
'ọjọ́ Àbámẹ́ta',
],
'STANDALONEWEEKDAYS': <dynamic>[
'Ọjọ́ Ajé',
'Ọjọ́ Ìsẹ́gun',
'Ọjọ́ Ìsẹ́gun-Ẹtì',
'Ọjọ́ Ìsẹ́gun-Ọ̀rú',
'Ọjọ́ Àìkú',
'Ọjọ́ Jímọ̀',
'Ọjọ́ Àbámẹ́ta',
],
'SHORTWEEKDAYS': <dynamic>[
'Ajé',
'Ìsẹ́gun',
'Ìsẹ́gun-Ẹtì',
'Ìsẹ́gun-Ọ̀rú',
'Àìkú',
'Jímọ̀',
'Àbámẹ́ta',
],
'STANDALONESHORTWEEKDAYS': <dynamic>[
'Ajé',
'Ìsẹ́gun',
'Ìsẹ́gun-Ẹtì',
'Ìsẹ́gun-Ọ̀rú',
'Àìkú',
'Jímọ̀',
'Àbámẹ́ta',
],
'NARROWWEEKDAYS': <dynamic>[
'A',
'A',
'Ì',
'A',
'À',
'J',
'À',
],
'STANDALONENARROWWEEKDAYS': <dynamic>[
'A',
'A',
'Ì',
'A',
'À',
'J',
'À',
],
'SHORTQUARTERS': <dynamic>[
'K1',
'K2',
'K3',
'K4',
],
'QUARTERS': <dynamic>[
'1. kwata',
'2. kwata',
'3. kwata',
'4. kwata',
],
'Ọjọ́ Ajé',
'Ọjọ́ Ìsẹ́gun',
'Ọjọ́ Ìsẹ́gun-Ẹtì',
'Ọjọ́ Ìsẹ́gun-Ọ̀rú',
'Ọjọ́ Àìkú',
'Ọjọ́ Jímọ̀',
'Ọjọ́ Àbámẹ́ta',
],
'SHORTWEEKDAYS': <dynamic>[
'Ajé',
'Ìsẹ́gun',
'Ìsẹ́gun-Ẹtì',
'Ìsẹ́gun-Ọ̀rú',
'Àìkú',
'Jímọ̀',
'Àbámẹ́ta',
],
'STANDALONESHORTWEEKDAYS': <dynamic>[
'Ajé',
'Ìsẹ́gun',
'Ìsẹ́gun-Ẹtì',
'Ìsẹ́gun-Ọ̀rú',
'Àìkú',
'Jímọ̀',
'Àbámẹ́ta',
],
'NARROWWEEKDAYS': <dynamic>[
'A',
'A',
'Ì',
'A',
'À',
'J',
'À',
],
'STANDALONENARROWWEEKDAYS': <dynamic>[
'A',
'A',
'Ì',
'A',
'À',
'J',
'À',
],
'SHORTQUARTERS': <dynamic>[
'K1',
'K2',
'K3',
'K4',
],
'QUARTERS': <dynamic>[
'1. kwata',
'2. kwata',
'3. kwata',
'4. kwata',
],
'AMPMS': <dynamic>[
'a.m.',
'p.m.',
@ -315,339 +316,339 @@ class YoMaterialLocalizations extends GlobalMaterialLocalizations {
});
// #docregion Getters
@override
String get moreButtonTooltip => r'Kò sí ìròhùn tí ó múni';
@override
String get moreButtonTooltip => r'Kò sí ìròhùn tí ó múni';
@override
String get aboutListTileTitleRaw => r'Fun Àpótí àwọn $applicationname';
@override
String get aboutListTileTitleRaw => r'Fun Àpótí àwọn $applicationname';
@override
String get alertDialogLabel => r'Ìròhùn Àlàyé';
@override
String get alertDialogLabel => r'Ìròhùn Àlàyé';
// #enddocregion Getters
@override
String get anteMeridiemAbbreviation => r'AM';
@override
String get anteMeridiemAbbreviation => r'AM';
@override
String get backButtonTooltip => r'Fíran';
@override
String get backButtonTooltip => r'Fíran';
@override
String get cancelButtonLabel => r'FAGILE';
@override
String get cancelButtonLabel => r'FAGILE';
@override
String get closeButtonLabel => r'KÚ';
@override
String get closeButtonLabel => r'KÚ';
@override
String get closeButtonTooltip => r'Kú';
@override
String get closeButtonTooltip => r'Kú';
@override
String get collapsedIconTapHint => r'Tá';
@override
String get collapsedIconTapHint => r'Tá';
@override
String get continueButtonLabel => r'TÓ WÁ';
@override
String get continueButtonLabel => r'TÓ WÁ';
@override
String get copyButtonLabel => r'DÚPLÍKÉTÍ';
@override
String get copyButtonLabel => r'DÚPLÍKÉTÍ';
@override
String get cutButtonLabel => r'TÒ';
@override
String get cutButtonLabel => r'TÒ';
@override
String get deleteButtonTooltip => r'Máa kú';
@override
String get deleteButtonTooltip => r'Máa kú';
@override
String get dialogLabel => r'Ìròhùn';
@override
String get dialogLabel => r'Ìròhùn';
@override
String get drawerLabel => r'Àgbèjọ àwọn àpọ̀tí';
@override
String get drawerLabel => r'Àgbèjọ àwọn àpọ̀tí';
@override
String get expandedIconTapHint => r'Tá';
@override
String get expandedIconTapHint => r'Tá';
@override
String get firstPageTooltip => r'Ojú ewe';
@override
String get firstPageTooltip => r'Ojú ewe';
@override
String get hideAccountsLabel => r'Fí èrò àpótí wáyé sílẹ̀';
@override
String get hideAccountsLabel => r'Fí èrò àpótí wáyé sílẹ̀';
@override
String get lastPageTooltip => r'Ojú ayé';
@override
String get lastPageTooltip => r'Ojú ayé';
@override
String get licensesPageTitle => r'Ìròhùn Ọdún';
@override
String get licensesPageTitle => r'Ìròhùn Ọdún';
@override
String get modalBarrierDismissLabel => r'Sọ';
@override
String get modalBarrierDismissLabel => r'Sọ';
@override
String get nextMonthTooltip => r'Oṣù kọja';
@override
String get nextMonthTooltip => r'Oṣù kọja';
@override
String get nextPageTooltip => r'Ojú ọjọ́ kẹta';
@override
String get nextPageTooltip => r'Ojú ọjọ́ kẹta';
@override
String get okButtonLabel => r'Ò daájú';
@override
@override
String get okButtonLabel => r'Ò daájú';
@override
// A custom drawer tooltip message.
String get openAppDrawerTooltip => r'Aya ntọju Iwe Awọn Aka';
String get openAppDrawerTooltip => r'Aya ntọju Iwe Awọn Aka';
// #docregion Raw
@override
String get pageRowsInfoTitleRaw => r'$firstRow$lastRow lati $rowCount';
@override
String get pageRowsInfoTitleRaw => r'$firstRow$lastRow lati $rowCount';
@override
String get pageRowsInfoTitleApproximateRaw => r'$firstRow$lastRow lati kiakia $rowCount';
@override
String get pageRowsInfoTitleApproximateRaw => r'$firstRow$lastRow lati kiakia $rowCount';
// #enddocregion Raw
@override
String get pasteButtonLabel => r'TÌ';
@override
String get pasteButtonLabel => r'TÌ';
@override
String get popupMenuLabel => r'Meniu Pop-up';
@override
String get popupMenuLabel => r'Meniu Pop-up';
@override
String get menuBarMenuLabel => r'Meniu Akọkọ';
@override
String get menuBarMenuLabel => r'Meniu Akọkọ';
@override
String get postMeridiemAbbreviation => r'PM';
@override
String get postMeridiemAbbreviation => r'PM';
@override
String get previousMonthTooltip => r'Oṣu Kanakana';
@override
String get previousMonthTooltip => r'Oṣu Kanakana';
@override
String get previousPageTooltip => r'Ojú ewé akọkọ kan';
@override
String get previousPageTooltip => r'Ojú ewé akọkọ kan';
@override
String get refreshIndicatorSemanticLabel => r'Gbiyanju';
@override
String get refreshIndicatorSemanticLabel => r'Gbiyanju';
@override
String? get remainingTextFieldCharacterCountFew => null;
@override
String? get remainingTextFieldCharacterCountFew => null;
@override
String? get remainingTextFieldCharacterCountMany => null;
@override
String? get remainingTextFieldCharacterCountMany => null;
@override
String get remainingTextFieldCharacterCountOne => r'1 àmì báálẹ̀';
@override
String get remainingTextFieldCharacterCountOne => r'1 àmì báálẹ̀';
@override
String get remainingTextFieldCharacterCountOther => r'$remainingCount àmì báálẹ̀';
@override
String get remainingTextFieldCharacterCountOther => r'$remainingCount àmì báálẹ̀';
@override
String? get remainingTextFieldCharacterCountTwo => null;
@override
String? get remainingTextFieldCharacterCountTwo => null;
@override
String get remainingTextFieldCharacterCountZero => r'Kò sí ìwọlé létà láti ń ṣe';
@override
String get remainingTextFieldCharacterCountZero => r'Kò sí ìwọlé létà láti ń ṣe';
@override
String get reorderItemDown => r'Jù sí ilẹ';
@override
String get reorderItemDown => r'Jù sí ilẹ';
@override
String get reorderItemLeft => r'Jù sí àrà';
@override
String get reorderItemLeft => r'Jù sí àrà';
@override
String get reorderItemRight => r'Jù sí òtútù';
@override
String get reorderItemRight => r'Jù sí òtútù';
@override
String get reorderItemToEnd => r'Jù sí ìbẹ̀jì';
@override
String get reorderItemToEnd => r'Jù sí ìbẹ̀jì';
@override
String get reorderItemToStart => r'Jù sí àkọ́kọ́';
@override
String get reorderItemToStart => r'Jù sí àkọ́kọ́';
@override
String get reorderItemUp => r'Jù sí ọ̀rùn';
@override
String get reorderItemUp => r'Jù sí ọ̀rùn';
@override
String get rowsPerPageTitle => r'Ìlò Fún àwọn Ìtọ́kasíwájú:';
@override
String get rowsPerPageTitle => r'Ìlò Fún àwọn Ìtọ́kasíwájú:';
@override
ScriptCategory get scriptCategory => ScriptCategory.englishLike;
@override
ScriptCategory get scriptCategory => ScriptCategory.englishLike;
@override
String get searchFieldLabel => 'Ṣẹda';
@override
String get searchFieldLabel => 'Ṣẹda';
@override
String get selectAllButtonLabel => 'FADỌHỌN DỌFÚN GBÁJÚMỌ̀';
@override
String get selectAllButtonLabel => 'FADỌHỌN DỌFÚN GBÁJÚMỌ̀';
@override
String? get selectedRowCountTitleFew => null;
@override
String? get selectedRowCountTitleFew => null;
@override
String? get selectedRowCountTitleMany => null;
@override
String? get selectedRowCountTitleMany => null;
@override
String get selectedRowCountTitleOne => '1 káyé';
@override
String get selectedRowCountTitleOne => '1 káyé';
@override
String get selectedRowCountTitleOther => r'$selectedRowCount káyé';
@override
String get selectedRowCountTitleOther => r'$selectedRowCount káyé';
@override
String? get selectedRowCountTitleTwo => null;
@override
String? get selectedRowCountTitleTwo => null;
@override
String get selectedRowCountTitleZero => 'Kò sí káyé ti o wọlé';
@override
String get selectedRowCountTitleZero => 'Kò sí káyé ti o wọlé';
@override
String get showAccountsLabel => 'Fi iyipada mu kọ';
@override
String get showAccountsLabel => 'Fi iyipada mu kọ';
@override
String get showMenuTooltip => 'Fi Meniu mu kọ';
@override
String get showMenuTooltip => 'Fi Meniu mu kọ';
@override
String get signedInLabel => 'Ọ̀nà';
@override
String get signedInLabel => 'Ọ̀nà';
@override
String get tabLabelRaw => r'Àwọn tabin $tabIndex lati $tabCount';
@override
String get tabLabelRaw => r'Àwọn tabin $tabIndex lati $tabCount';
@override
TimeOfDayFormat get timeOfDayFormatRaw => TimeOfDayFormat.h_colon_mm_space_a;
TimeOfDayFormat get timeOfDayFormatRaw => TimeOfDayFormat.h_colon_mm_space_a;
@override
String get timePickerHourModeAnnouncement => 'Tuntun waqtu lọ';
@override
String get timePickerHourModeAnnouncement => 'Tuntun waqtu lọ';
@override
String get timePickerMinuteModeAnnouncement => 'Tuntun daɗi minti';
@override
String get timePickerMinuteModeAnnouncement => 'Tuntun daɗi minti';
@override
String get viewLicensesButtonLabel => 'WO NIKI';
@override
String get viewLicensesButtonLabel => 'WO NIKI';
@override
List<String> get narrowWeekdays => const <String>['L', 'L', 'A', 'O', '', '', ''];
@override
List<String> get narrowWeekdays => const <String>['L', 'L', 'A', 'O', '', '', ''];
@override
int get firstDayOfWeekIndex => 0;
@override
int get firstDayOfWeekIndex => 0;
static const LocalizationsDelegate<MaterialLocalizations> delegate =
_YoMaterialLocalizationsDelegate();
static const LocalizationsDelegate<MaterialLocalizations> delegate =
_YoMaterialLocalizationsDelegate();
@override
String get calendarModeButtonLabel => 'Tọ́rọ̀ kálẹ̀ndà';
@override
String get calendarModeButtonLabel => 'Tọ́rọ̀ kálẹ̀ndà';
@override
String get dateHelpText => 'mm/dd/yyyy';
@override
String get dateHelpText => 'mm/dd/yyyy';
@override
String get dateInputLabel => 'Firanṣẹ̀ Ọjọ́';
@override
String get dateInputLabel => 'Firanṣẹ̀ Ọjọ́';
@override
String get dateOutOfRangeLabel => 'Nínú iwọ̀ lọ́wọ́';
@override
String get dateOutOfRangeLabel => 'Nínú iwọ̀ lọ́wọ́';
@override
String get datePickerHelpText => 'WÁSÍ';
@override
String get datePickerHelpText => 'WÁSÍ';
@override
String get dateRangeEndDateSemanticLabelRaw => r'Ọjọ́ tuntun to ṣà';
@override
String get dateRangeEndDateSemanticLabelRaw => r'Ọjọ́ tuntun to ṣà';
@override
String get dateRangeEndLabel => 'Ọjọ́ tuntun to ṣà';
@override
String get dateRangeEndLabel => 'Ọjọ́ tuntun to ṣà';
@override
String get dateRangePickerHelpText => 'WÁSÍ ÌGBÀ';
@override
String get dateRangePickerHelpText => 'WÁSÍ ÌGBÀ';
@override
String get dateRangeStartDateSemanticLabelRaw => 'Ọjọ́ tuntun ti dá';
@override
String get dateRangeStartDateSemanticLabelRaw => 'Ọjọ́ tuntun ti dá';
@override
String get dateRangeStartLabel => 'Ọjọ́ tuntun ti dá';
@override
String get dateRangeStartLabel => 'Ọjọ́ tuntun ti dá';
@override
String get dateSeparator => '/';
@override
String get dateSeparator => '/';
@override
String get dialModeButtonLabel => 'Tọ́rọ̀ wakati';
@override
String get dialModeButtonLabel => 'Tọ́rọ̀ wakati';
@override
String get inputDateModeButtonLabel => 'Tọ́rọ̀ firanṣẹ̀ ọjọ́';
@override
String get inputDateModeButtonLabel => 'Tọ́rọ̀ firanṣẹ̀ ọjọ́';
@override
String get inputTimeModeButtonLabel => 'Tọ́rọ̀ wakati bayi lọ́wọ́';
@override
String get inputTimeModeButtonLabel => 'Tọ́rọ̀ wakati bayi lọ́wọ́';
@override
String get invalidDateFormatLabel => 'Akọ́kọ́tọ́ tó jẹ́kúnrin';
@override
String get invalidDateFormatLabel => 'Akọ́kọ́tọ́ tó jẹ́kúnrin';
@override
String get invalidDateRangeLabel => 'Àmì jẹ́ káàkiri lẹ́yìn ilé';
@override
String get invalidDateRangeLabel => 'Àmì jẹ́ káàkiri lẹ́yìn ilé';
@override
String get invalidTimeLabel => 'Akọ́kọ́tọ́ àkójọ ìwádìí';
@override
String get invalidTimeLabel => 'Akọ́kọ́tọ́ àkójọ ìwádìí';
@override
String get licensesPackageDetailTextOther => r'$licenseCount àwọn níkí';
@override
String get licensesPackageDetailTextOther => r'$licenseCount àwọn níkí';
@override
String get saveButtonLabel => 'TÙN DÁRA';
@override
String get saveButtonLabel => 'TÙN DÁRA';
@override
String get selectYearSemanticsLabel => 'Fọ́ọ̀ shẹ́kàrà';
@override
String get selectYearSemanticsLabel => 'Fọ́ọ̀ shẹ́kàrà';
@override
String get timePickerDialHelpText => 'WÁSÍ WÁKÀTÌ';
@override
String get timePickerDialHelpText => 'WÁSÍ WÁKÀTÌ';
@override
String get timePickerHourLabel => 'Wákàtì àṣà';
@override
String get timePickerHourLabel => 'Wákàtì àṣà';
@override
String get timePickerInputHelpText => 'Shìgárà wákàtì';
@override
String get timePickerInputHelpText => 'Shìgárà wákàtì';
@override
String get timePickerMinuteLabel => 'Mìntì';
@override
String get timePickerMinuteLabel => 'Mìntì';
@override
String get unspecifiedDate => 'Ọjọ̀kúnrin';
@override
String get unspecifiedDate => 'Ọjọ̀kúnrin';
@override
String get unspecifiedDateRange => 'Ọjọ̀kúnrin àdáyọ̀';
@override
String get unspecifiedDateRange => 'Ọjọ̀kúnrin àdáyọ̀';
@override
String get keyboardKeyAlt => 'Alt';
@override
String get keyboardKeyAlt => 'Alt';
@override
String get keyboardKeyAltGraph => 'AltGraph';
@override
String get keyboardKeyAltGraph => 'AltGraph';
@override
String get keyboardKeyBackspace => 'Báckspàcè';
@override
String get keyboardKeyBackspace => 'Báckspàcè';
@override
String get keyboardKeyCapsLock => 'Caps Lock';
@override
String get keyboardKeyCapsLock => 'Caps Lock';
@override
String get keyboardKeyChannelDown => 'Báyàkàmmàlàsàké';
@override
String get keyboardKeyChannelDown => 'Báyàkàmmàlàsàké';
@override
String get keyboardKeyChannelUp => 'Yíkàmmàlàsàké';
@override
String get keyboardKeyChannelUp => 'Yíkàmmàlàsàké';
@override
String get keyboardKeyControl => 'Kọ́ntírọ̀l';
@override
String get keyboardKeyControl => 'Kọ́ntírọ̀l';
@override
String get keyboardKeyDelete => 'Shápè';
@override
String get keyboardKeyDelete => 'Shápè';
@override
String get keyboardKeyEject => 'Èjẹ̀tì';
@override
String get keyboardKeyEject => 'Èjẹ̀tì';
@override
String get keyboardKeyEnd => 'Tàbí';
@override
String get keyboardKeyEnd => 'Tàbí';
@override
String get keyboardKeyEscape => 'Tòkè';
@override
String get keyboardKeyEscape => 'Tòkè';
@override
String get keyboardKeyFn => 'Fn';
String get keyboardKeyFn => 'Fn';
@override
String get keyboardKeyHome => 'Ile';
@override
String get keyboardKeyHome => 'Ile';
@override
String get keyboardKeyInsert => 'Fi sori';
@override
String get keyboardKeyInsert => 'Fi sori';
@override
String get keyboardKeyMeta => 'Meta';
@override
String get keyboardKeyMeta => 'Meta';
@override
String get keyboardKeyMetaMacOs => 'Amfani pẹlu Command';
@override
String get keyboardKeyMetaMacOs => 'Amfani pẹlu Command';
@override
String get keyboardKeyMetaWindows => 'Windows';
@override
String get keyboardKeyMetaWindows => 'Windows';
@override
String get keyboardKeyNumLock => 'Num Lock';
@ -750,50 +751,6 @@ class YoMaterialLocalizations extends GlobalMaterialLocalizations {
@override
String get scrimOnTapHintRaw => "Scrip on Tap";
@override
// TODO: implement collapsedHint
String get collapsedHint => "collapsedHint";
@override
// TODO: implement expandedHint
String get expandedHint => "expandedHint";
@override
// TODO: implement expansionTileCollapsedHint
String get expansionTileCollapsedHint => "expansionTileCollapsedHint";
@override
// TODO: implement expansionTileCollapsedTapHint
String get expansionTileCollapsedTapHint => "expansionTileCollapsedTapHint";
@override
// TODO: implement expansionTileExpandedHint
String get expansionTileExpandedHint => "expansionTileExpandedHint";
@override
// TODO: implement expansionTileExpandedTapHint
String get expansionTileExpandedTapHint => "expansionTileExpandedTapHint";
@override
// TODO: implement scanTextButtonLabel
String get scanTextButtonLabel => "scanTextButtonLabel";
@override
// TODO: implement lookUpButtonLabel
String get lookUpButtonLabel => "lookUpButtonLabel";
@override
// TODO: implement menuDismissLabel
String get menuDismissLabel => "menuDismissLabel";
@override
// TODO: implement searchWebButtonLabel
String get searchWebButtonLabel => "searchWebButtonLabel";
@override
// TODO: implement shareButtonLabel
String get shareButtonLabel => "shareButtonLabel";
}
/// Cupertino Support
@ -864,158 +821,138 @@ class YoCupertinoLocalizations extends GlobalCupertinoLocalizations {
required super.singleDigitSecondFormat,
});
@override
String get alertDialogLabel => 'Àdàkárò';
@override
String get alertDialogLabel => 'Àdàkárò';
@override
String get anteMeridiemAbbreviation => 'AM';
@override
String get anteMeridiemAbbreviation => 'AM';
@override
String get copyButtonLabel => 'Kòpy';
@override
String get copyButtonLabel => 'Kòpy';
@override
String get cutButtonLabel => 'Kọ́t';
@override
String get cutButtonLabel => 'Kọ́t';
@override
String get datePickerDateOrderString => 'mdy';
@override
String get datePickerDateOrderString => 'mdy';
@override
String get datePickerDateTimeOrderString => 'date_time_dayPeriod';
@override
String get datePickerDateTimeOrderString => 'date_time_dayPeriod';
@override
String? get datePickerHourSemanticsLabelFew => null;
@override
String? get datePickerHourSemanticsLabelFew => null;
@override
String? get datePickerHourSemanticsLabelMany => null;
@override
String? get datePickerHourSemanticsLabelMany => null;
@override
String? get datePickerHourSemanticsLabelOne => r"$hour o'clock";
@override
String? get datePickerHourSemanticsLabelOne => r"$hour o'clock";
@override
String get datePickerHourSemanticsLabelOther => r"$hour o'clock";
@override
String get datePickerHourSemanticsLabelOther => r"$hour o'clock";
@override
String? get datePickerHourSemanticsLabelTwo => null;
@override
String? get datePickerHourSemanticsLabelTwo => null;
@override
String? get datePickerHourSemanticsLabelZero => null;
@override
String? get datePickerHourSemanticsLabelZero => null;
@override
String? get datePickerMinuteSemanticsLabelFew => null;
@override
String? get datePickerMinuteSemanticsLabelFew => null;
@override
String? get datePickerMinuteSemanticsLabelMany => null;
@override
String? get datePickerMinuteSemanticsLabelMany => null;
@override
String? get datePickerMinuteSemanticsLabelOne => '1 wakati';
@override
String? get datePickerMinuteSemanticsLabelOne => '1 wakati';
@override
String get datePickerMinuteSemanticsLabelOther => r'$minute wakati';
@override
String get datePickerMinuteSemanticsLabelOther => r'$minute wakati';
@override
String? get datePickerMinuteSemanticsLabelTwo => null;
@override
String? get datePickerMinuteSemanticsLabelTwo => null;
@override
String? get datePickerMinuteSemanticsLabelZero => null;
@override
String? get datePickerMinuteSemanticsLabelZero => null;
@override
String get modalBarrierDismissLabel => 'Búta';
@override
String get modalBarrierDismissLabel => 'Búta';
@override
String get pasteButtonLabel => 'Tẹ́ẹ́';
@override
String get pasteButtonLabel => 'Tẹ́ẹ́';
@override
String get postMeridiemAbbreviation => 'PM';
@override
String get postMeridiemAbbreviation => 'PM';
@override
String get searchTextFieldPlaceholderLabel => 'Wúró àtúntà';
@override
String get searchTextFieldPlaceholderLabel => 'Wúró àtúntà';
@override
String get selectAllButtonLabel => 'Fírànsé gbógbo';
@override
String get selectAllButtonLabel => 'Fírànsé gbógbo';
@override
String get tabSemanticsLabelRaw => r'Tab $tabIndex nínú $tabCount';
@override
String get tabSemanticsLabelRaw => r'Tab $tabIndex nínú $tabCount';
@override
String? get timerPickerHourLabelFew => null;
@override
String? get timerPickerHourLabelFew => null;
@override
String? get timerPickerHourLabelMany => null;
@override
String? get timerPickerHourLabelMany => null;
@override
String? get timerPickerHourLabelOne => 'òǹdì';
@override
String? get timerPickerHourLabelOne => 'òǹdì';
@override
String get timerPickerHourLabelOther => 'òǹdì';
@override
String get timerPickerHourLabelOther => 'òǹdì';
@override
String? get timerPickerHourLabelTwo => null;
@override
String? get timerPickerHourLabelTwo => null;
@override
String? get timerPickerHourLabelZero => null;
@override
String? get timerPickerHourLabelZero => null;
@override
String? get timerPickerMinuteLabelFew => null;
@override
String? get timerPickerMinuteLabelFew => null;
@override
String? get timerPickerMinuteLabelMany => null;
@override
String? get timerPickerMinuteLabelMany => null;
@override
String? get timerPickerMinuteLabelOne => 'wakati.';
@override
String? get timerPickerMinuteLabelOne => 'wakati.';
@override
String get timerPickerMinuteLabelOther => 'wakati.';
@override
String get timerPickerMinuteLabelOther => 'wakati.';
@override
String? get timerPickerMinuteLabelTwo => null;
@override
String? get timerPickerMinuteLabelTwo => null;
@override
String? get timerPickerMinuteLabelZero => null;
@override
String? get timerPickerMinuteLabelZero => null;
@override
String? get timerPickerSecondLabelFew => null;
@override
String? get timerPickerSecondLabelFew => null;
@override
String? get timerPickerSecondLabelMany => null;
@override
String? get timerPickerSecondLabelMany => null;
@override
String? get timerPickerSecondLabelOne => 'dákìkà.';
@override
String? get timerPickerSecondLabelOne => 'dákìkà.';
@override
String get timerPickerSecondLabelOther => 'dákìkà.';
@override
String get timerPickerSecondLabelOther => 'dákìkà.';
@override
String? get timerPickerSecondLabelTwo => null;
@override
String? get timerPickerSecondLabelTwo => null;
@override
String? get timerPickerSecondLabelZero => null;
@override
String? get timerPickerSecondLabelZero => null;
@override
String get todayLabel => 'Oyọ';
@override
String get todayLabel => 'Oyọ';
static const LocalizationsDelegate<CupertinoLocalizations> delegate =
_YoCupertinoLocalizationsDelegate();
@override
String get noSpellCheckReplacementsLabel => "";
@override
// TODO: implement clearButtonLabel
String get clearButtonLabel => "clearButtonLabel";
@override
// TODO: implement lookUpButtonLabel
String get lookUpButtonLabel => "lookUpButtonLabel";
@override
// TODO: implement menuDismissLabel
String get menuDismissLabel => "menuDismissLabel";
@override
// TODO: implement searchWebButtonLabel
String get searchWebButtonLabel => "searchWebButtonLabel";
@override
// TODO: implement shareButtonLabel
String get shareButtonLabel => "shareButtonLabel";
}

View file

@ -1,5 +1,3 @@
import 'dart:io';
import 'package:cake_wallet/core/auth_service.dart';
import 'package:cake_wallet/entities/pin_code_required_duration.dart';
import 'package:cake_wallet/routes.dart';
@ -60,7 +58,7 @@ class SecurityBackupPage extends BasePage {
.shouldRequireTOTP2FAForAllSecurityAndBackupSettings,
),
),
if (DeviceInfo.instance.isMobile || Platform.isMacOS || Platform.isLinux)
if (DeviceInfo.instance.isMobile)
Observer(builder: (_) {
return SettingsSwitcherCell(
title: S.current.settings_allow_biometrical_authentication,

View file

@ -146,7 +146,7 @@ class ConnectScreen extends StatelessWidget {
ElevatedButton(
onPressed: connect,
style: ElevatedButton.styleFrom(
// primary: Colors.blue,
primary: Colors.blue,
padding: EdgeInsets.symmetric(horizontal: 40, vertical: 15),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(30),
@ -211,7 +211,7 @@ class DisconnectScreen extends StatelessWidget {
ElevatedButton(
onPressed: disconnect,
style: ElevatedButton.styleFrom(
// primary: Colors.red,
primary: Colors.red,
padding: EdgeInsets.symmetric(horizontal: 40, vertical: 15),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(30),

View file

@ -1,14 +1,8 @@
import 'package:cake_wallet/core/seed_validator.dart';
import 'package:cw_core/wallet_type.dart';
import 'package:flutter/material.dart';
extension Compare<T> on Comparable<T> {
bool operator <=(T other) => compareTo(other) <= 0;
bool operator >=(T other) => compareTo(other) >= 0;
bool operator <(T other) => compareTo(other) < 0;
bool operator >(T other) => compareTo(other) > 0;
}
class Annotation implements Comparable<Annotation> {
class Annotation extends Comparable<Annotation> {
Annotation({required this.range, required this.style});
final TextRange range;
@ -18,7 +12,7 @@ class Annotation implements Comparable<Annotation> {
int compareTo(Annotation other) => range.start.compareTo(other.range.start);
}
class TextAnnotation implements Comparable<TextAnnotation> {
class TextAnnotation extends Comparable<TextAnnotation> {
TextAnnotation({required this.text, required this.style});
final TextStyle style;

View file

@ -1,6 +1,5 @@
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:flutter_local_authentication/flutter_local_authentication.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:mobx/mobx.dart';
import 'package:cake_wallet/view_model/auth_state.dart';
@ -106,14 +105,16 @@ abstract class AuthViewModelBase with Store {
@action
Future<void> biometricAuth() async {
final _flutterLocalAuthenticationPlugin = FlutterLocalAuthentication();
try {
final authenticated = await _flutterLocalAuthenticationPlugin.authenticate();
if (!authenticated) {
throw Exception('Biometric authentication failed');
final canBiometricAuth = await _biometricAuth.canCheckBiometrics();
if (canBiometricAuth) {
final isAuthenticated = await _biometricAuth.isAuthenticated();
if (isAuthenticated) {
state = ExecutedSuccessfullyState();
}
}
state = ExecutedSuccessfullyState();
} catch (e) {
state = FailureState(e.toString());
}

View file

@ -33,8 +33,8 @@ dependencies:
dio: ^4.0.6
hive: ^2.2.3
hive_flutter: ^1.1.0
local_auth: ^2.1.0
local_auth_android: 1.0.21
flutter_local_authentication: ^1.2.0
package_info: ^2.0.0
#package_info_plus: ^1.4.2
devicelocale:

View file

@ -4,4 +4,4 @@ version: 0.0.0
publish_to: none
environment:
sdk: ">=3.1.0 <4.0.0"
sdk: ">=2.17.5 <3.0.0"