Revert "version bump to 3.13.9, auth working on mac (#1367)" (#1397)
This reverts commit e6b4b08c24c1c2fb6987dcca233a3fee67c50d25.
Omar Hatem committed
Apr 18, 2024 at 20:10 UTC
4ed4659f9edfe60cbf063b6c10d0a1dc304d81e8
21 files changed
+406
-567
.github/workflows/pr_test_build.yml
+1
-1
@@ -42,7 +42,7 @@ jobs:
42
- name: Flutter action
43
uses: subosito/flutter-action@v1
44
with:
45
- flutter-version: "3.13.9"
45
+ flutter-version: "3.10.x"
46
channel: stable
47
48
- name: Install package dependencies
android/build.gradle
+1
-1
@@ -1,5 +1,5 @@
1
buildscript {
2
- ext.kotlin_version = '1.8.10'
2
+ ext.kotlin_version = '1.7.10'
3
repositories {
4
google()
5
jcenter()
cw_bitcoin/pubspec.yaml
+1
-4
@@ -39,14 +39,11 @@ dependencies:
39
dev_dependencies:
40
flutter_test:
41
sdk: flutter
42
- build_runner: ^2.4.7
42
+ build_runner: ^2.1.11
43
build_resolvers: ^2.0.9
44
mobx_codegen: ^2.0.7
45
hive_generator: ^1.1.3
46
47
-dependency_overrides:
48
- watcher: ^1.1.0
49
-
47
# For information on the generic Dart part of this file, see the
48
# following page: https://dart.dev/tools/pub/pubspec
49
cw_bitcoin_cash/pubspec.yaml
+1
-4
@@ -39,13 +39,10 @@ dependencies:
39
dev_dependencies:
40
flutter_test:
41
sdk: flutter
42
- build_runner: ^2.4.7
42
+ build_runner: ^2.1.11
43
mobx_codegen: ^2.0.7
44
hive_generator: ^1.1.3
45
46
-dependency_overrides:
47
- watcher: ^1.1.0
48
-
46
# For information on the generic Dart part of this file, see the
47
# following page: https://dart.dev/tools/pub/pubspec
48
cw_core/pubspec.yaml
+1
-4
@@ -28,14 +28,11 @@ dependencies:
28
dev_dependencies:
29
flutter_test:
30
sdk: flutter
31
- build_runner: ^2.4.7
31
+ build_runner: ^2.1.11
32
build_resolvers: ^2.0.9
33
mobx_codegen: ^2.0.7
34
hive_generator: ^2.0.1
35
36
-dependency_overrides:
37
- watcher: ^1.1.0
38
-
36
# For information on the generic Dart part of this file, see the
37
# following page: https://dart.dev/tools/pub/pubspec
38
cw_ethereum/pubspec.yaml
+1
-5
@@ -22,11 +22,7 @@ dependencies:
22
dev_dependencies:
23
flutter_test:
24
sdk: flutter
25
- build_runner: ^2.4.7
26
-
27
-dependency_overrides:
28
- watcher: ^1.1.0
29
-
25
+ build_runner: ^2.1.11
26
flutter:
27
# assets:
28
# - images/a_dot_burr.jpeg
cw_evm/pubspec.yaml
+1
-4
@@ -27,14 +27,11 @@ dependencies:
27
dev_dependencies:
28
flutter_test:
29
sdk: flutter
30
- build_runner: ^2.4.7
30
+ build_runner: ^2.1.11
31
mobx_codegen: ^2.0.7
32
hive_generator: ^1.1.3
33
flutter_lints: ^2.0.0
34
35
-dependency_overrides:
36
- watcher: ^1.1.0
37
-
35
flutter:
36
# assets:
37
# - images/a_dot_burr.jpeg
cw_haven/pubspec.yaml
+1
-4
@@ -24,14 +24,11 @@ dependencies:
24
dev_dependencies:
25
flutter_test:
26
sdk: flutter
27
- build_runner: ^2.4.7
27
+ build_runner: ^2.1.11
28
mobx_codegen: ^2.0.7
29
build_resolvers: ^2.0.9
30
hive_generator: ^1.1.3
31
32
-dependency_overrides:
33
- watcher: ^1.1.0
34
-
32
# For information on the generic Dart part of this file, see the
33
# following page: https://dart.dev/tools/pub/pubspec
34
cw_monero/pubspec.yaml
+1
-4
@@ -26,14 +26,11 @@ dependencies:
26
dev_dependencies:
27
flutter_test:
28
sdk: flutter
29
- build_runner: ^2.4.7
29
+ build_runner: ^2.1.11
30
build_resolvers: ^2.0.9
31
mobx_codegen: ^2.0.7
32
hive_generator: ^1.1.3
33
34
-dependency_overrides:
35
- watcher: ^1.1.0
36
-
34
# For information on the generic Dart part of this file, see the
35
# following page: https://dart.dev/tools/pub/pubspec
36
cw_nano/pubspec.yaml
+1
-4
@@ -32,13 +32,10 @@ dependencies:
32
dev_dependencies:
33
flutter_test:
34
sdk: flutter
35
- build_runner: ^2.4.7
35
+ build_runner: ^2.1.11
36
mobx_codegen: ^2.0.7
37
hive_generator: ^1.1.3
38
39
-dependency_overrides:
40
- watcher: ^1.1.0
41
-
39
# For information on the generic Dart part of this file, see the
40
# following page: https://dart.dev/tools/pub/pubspec
41
cw_polygon/pubspec.yaml
+1
-4
@@ -28,10 +28,7 @@ dev_dependencies:
28
flutter_test:
29
sdk: flutter
30
flutter_lints: ^2.0.0
31
- build_runner: ^2.4.7
32
-
33
-dependency_overrides:
34
- watcher: ^1.1.0
31
+ build_runner: ^2.1.11
32
33
# For information on the generic Dart part of this file, see the
34
# following page: https://dart.dev/tools/pub/pubspec
cw_solana/pubspec.yaml
+1
-4
@@ -26,13 +26,10 @@ dev_dependencies:
26
flutter_test:
27
sdk: flutter
28
flutter_lints: ^2.0.0
29
- build_runner: ^2.4.7
29
+ build_runner: ^2.1.11
30
mobx_codegen: ^2.0.7
31
hive_generator: ^1.1.3
32
33
-dependency_overrides:
34
- watcher: ^1.1.0
35
-
33
flutter:
34
# assets:
35
# - images/a_dot_burr.jpeg
lib/entities/biometric_auth.dart
+15
-11
@@ -1,28 +1,32 @@
1
+import 'package:local_auth/local_auth.dart';
2
import 'package:flutter/services.dart';
2
-import 'package:flutter_local_authentication/flutter_local_authentication.dart';
3
+import 'package:cake_wallet/generated/i18n.dart';
4
5
class BiometricAuth {
5
- final _flutterLocalAuthenticationPlugin = FlutterLocalAuthentication();
6
+ final _localAuth = LocalAuthentication();
7
8
Future<bool> isAuthenticated() async {
9
try {
9
- final authenticated = await _flutterLocalAuthenticationPlugin.authenticate();
10
- return authenticated;
11
- } catch (e) {
10
+ return await _localAuth.authenticate(
11
+ localizedReason: S.current.biometric_auth_reason,
12
+ options: AuthenticationOptions(
13
+ biometricOnly: true,
14
+ useErrorDialogs: true,
15
+ stickyAuth: false));
16
+ } on PlatformException catch (e) {
17
print(e);
18
}
19
+
20
return false;
21
}
22
23
Future<bool> canCheckBiometrics() async {
18
- bool canAuthenticate;
24
try {
20
- canAuthenticate = await _flutterLocalAuthenticationPlugin.canAuthenticate();
21
- } catch (error) {
22
- print("Exception checking support. $error");
23
- canAuthenticate = false;
25
+ return await _localAuth.canCheckBiometrics;
26
+ } on PlatformException catch (e) {
27
+ print(e);
28
}
29
26
- return canAuthenticate;
30
+ return false;
31
}
32
}
lib/locales/hausa_intl.dart
-64
@@ -751,50 +751,6 @@ class HaMaterialLocalizations extends GlobalMaterialLocalizations {
751
752
@override
753
String get scrimOnTapHintRaw => "Scrip on Tap";
754
-
755
- @override
756
- // TODO: implement collapsedHint
757
- String get collapsedHint => "collapsedHint";
758
-
759
- @override
760
- // TODO: implement expandedHint
761
- String get expandedHint => "expandedHint";
762
-
763
- @override
764
- // TODO: implement expansionTileCollapsedHint
765
- String get expansionTileCollapsedHint => "expansionTileCollapsedHint";
766
-
767
- @override
768
- // TODO: implement expansionTileCollapsedTapHint
769
- String get expansionTileCollapsedTapHint => "expansionTileCollapsedTapHint";
770
-
771
- @override
772
- // TODO: implement expansionTileExpandedHint
773
- String get expansionTileExpandedHint => "expansionTileExpandedHint";
774
-
775
- @override
776
- // TODO: implement expansionTileExpandedTapHint
777
- String get expansionTileExpandedTapHint => "expansionTileExpandedTapHint";
778
-
779
- @override
780
- // TODO: implement scanTextButtonLabel
781
- String get scanTextButtonLabel => "scanTextButtonLabel";
782
-
783
- @override
784
- // TODO: implement lookUpButtonLabel
785
- String get lookUpButtonLabel => "lookUpButtonLabel";
786
-
787
- @override
788
- // TODO: implement menuDismissLabel
789
- String get menuDismissLabel => "menuDismissLabel";
790
-
791
- @override
792
- // TODO: implement searchWebButtonLabel
793
- String get searchWebButtonLabel => "searchWebButtonLabel";
794
-
795
- @override
796
- // TODO: implement shareButtonLabel
797
- String get shareButtonLabel => "shareButtonLabel";
754
}
755
756
/// Cupertino Support
@@ -999,24 +955,4 @@ class HaCupertinoLocalizations extends GlobalCupertinoLocalizations {
955
956
@override
957
String get noSpellCheckReplacementsLabel => "";
1002
-
1003
- @override
1004
- // TODO: implement clearButtonLabel
1005
- String get clearButtonLabel => "clearButtonLabel";
1006
-
1007
- @override
1008
- // TODO: implement lookUpButtonLabel
1009
- String get lookUpButtonLabel => "lookUpButtonLabel";
1010
-
1011
- @override
1012
- // TODO: implement menuDismissLabel
1013
- String get menuDismissLabel => "menuDismissLabel";
1014
-
1015
- @override
1016
- // TODO: implement searchWebButtonLabel
1017
- String get searchWebButtonLabel => "searchWebButtonLabel";
1018
-
1019
- @override
1020
- // TODO: implement shareButtonLabel
1021
- String get shareButtonLabel => "shareButtonLabel";
958
}
lib/locales/yoruba_intl.dart
+362
-425
@@ -1,3 +1,4 @@
1
+
2
import 'dart:async';
3
4
import 'package:flutter/cupertino.dart';
@@ -163,62 +164,62 @@ const yoDateSymbols = {
164
'ọjọ́ Àbámẹ́ta',
165
],
166
'STANDALONEWEEKDAYS': <dynamic>[
166
- 'Ọjọ́ Ajé',
167
- 'Ọjọ́ Ìsẹ́gun',
168
- 'Ọjọ́ Ìsẹ́gun-Ẹtì',
169
- 'Ọjọ́ Ìsẹ́gun-Ọ̀rú',
170
- 'Ọjọ́ Àìkú',
171
- 'Ọjọ́ Jímọ̀',
172
- 'Ọjọ́ Àbámẹ́ta',
173
- ],
174
- 'SHORTWEEKDAYS': <dynamic>[
175
- 'Ajé',
176
- 'Ìsẹ́gun',
177
- 'Ìsẹ́gun-Ẹtì',
178
- 'Ìsẹ́gun-Ọ̀rú',
179
- 'Àìkú',
180
- 'Jímọ̀',
181
- 'Àbámẹ́ta',
182
- ],
183
- 'STANDALONESHORTWEEKDAYS': <dynamic>[
184
- 'Ajé',
185
- 'Ìsẹ́gun',
186
- 'Ìsẹ́gun-Ẹtì',
187
- 'Ìsẹ́gun-Ọ̀rú',
188
- 'Àìkú',
189
- 'Jímọ̀',
190
- 'Àbámẹ́ta',
191
- ],
192
- 'NARROWWEEKDAYS': <dynamic>[
193
- 'A',
194
- 'A',
195
- 'Ì',
196
- 'A',
197
- 'À',
198
- 'J',
199
- 'À',
200
- ],
201
- 'STANDALONENARROWWEEKDAYS': <dynamic>[
202
- 'A',
203
- 'A',
204
- 'Ì',
205
- 'A',
206
- 'À',
207
- 'J',
208
- 'À',
209
- ],
210
- 'SHORTQUARTERS': <dynamic>[
211
- 'K1',
212
- 'K2',
213
- 'K3',
214
- 'K4',
215
- ],
216
- 'QUARTERS': <dynamic>[
217
- '1. kwata',
218
- '2. kwata',
219
- '3. kwata',
220
- '4. kwata',
221
- ],
167
+'Ọjọ́ Ajé',
168
+'Ọjọ́ Ìsẹ́gun',
169
+'Ọjọ́ Ìsẹ́gun-Ẹtì',
170
+'Ọjọ́ Ìsẹ́gun-Ọ̀rú',
171
+'Ọjọ́ Àìkú',
172
+'Ọjọ́ Jímọ̀',
173
+'Ọjọ́ Àbámẹ́ta',
174
+],
175
+'SHORTWEEKDAYS': <dynamic>[
176
+'Ajé',
177
+'Ìsẹ́gun',
178
+'Ìsẹ́gun-Ẹtì',
179
+'Ìsẹ́gun-Ọ̀rú',
180
+'Àìkú',
181
+'Jímọ̀',
182
+'Àbámẹ́ta',
183
+],
184
+'STANDALONESHORTWEEKDAYS': <dynamic>[
185
+'Ajé',
186
+'Ìsẹ́gun',
187
+'Ìsẹ́gun-Ẹtì',
188
+'Ìsẹ́gun-Ọ̀rú',
189
+'Àìkú',
190
+'Jímọ̀',
191
+'Àbámẹ́ta',
192
+],
193
+'NARROWWEEKDAYS': <dynamic>[
194
+'A',
195
+'A',
196
+'Ì',
197
+'A',
198
+'À',
199
+'J',
200
+'À',
201
+],
202
+'STANDALONENARROWWEEKDAYS': <dynamic>[
203
+'A',
204
+'A',
205
+'Ì',
206
+'A',
207
+'À',
208
+'J',
209
+'À',
210
+],
211
+'SHORTQUARTERS': <dynamic>[
212
+'K1',
213
+'K2',
214
+'K3',
215
+'K4',
216
+],
217
+'QUARTERS': <dynamic>[
218
+'1. kwata',
219
+'2. kwata',
220
+'3. kwata',
221
+'4. kwata',
222
+],
223
'AMPMS': <dynamic>[
224
'a.m.',
225
'p.m.',
@@ -315,339 +316,339 @@ class YoMaterialLocalizations extends GlobalMaterialLocalizations {
316
});
317
318
// #docregion Getters
318
- @override
319
- String get moreButtonTooltip => r'Kò sí ìròhùn tí ó múni';
319
+@override
320
+String get moreButtonTooltip => r'Kò sí ìròhùn tí ó múni';
321
321
- @override
322
- String get aboutListTileTitleRaw => r'Fun Àpótí àwọn $applicationname';
322
+@override
323
+String get aboutListTileTitleRaw => r'Fun Àpótí àwọn $applicationname';
324
324
- @override
325
- String get alertDialogLabel => r'Ìròhùn Àlàyé';
325
+@override
326
+String get alertDialogLabel => r'Ìròhùn Àlàyé';
327
328
// #enddocregion Getters
329
329
- @override
330
- String get anteMeridiemAbbreviation => r'AM';
330
+@override
331
+String get anteMeridiemAbbreviation => r'AM';
332
332
- @override
333
- String get backButtonTooltip => r'Fíran';
333
+@override
334
+String get backButtonTooltip => r'Fíran';
335
335
- @override
336
- String get cancelButtonLabel => r'FAGILE';
336
+@override
337
+String get cancelButtonLabel => r'FAGILE';
338
338
- @override
339
- String get closeButtonLabel => r'KÚ';
339
+@override
340
+String get closeButtonLabel => r'KÚ';
341
341
- @override
342
- String get closeButtonTooltip => r'Kú';
342
+@override
343
+String get closeButtonTooltip => r'Kú';
344
344
- @override
345
- String get collapsedIconTapHint => r'Tá';
345
+@override
346
+String get collapsedIconTapHint => r'Tá';
347
347
- @override
348
- String get continueButtonLabel => r'TÓ WÁ';
348
+@override
349
+String get continueButtonLabel => r'TÓ WÁ';
350
350
- @override
351
- String get copyButtonLabel => r'DÚPLÍKÉTÍ';
351
+@override
352
+String get copyButtonLabel => r'DÚPLÍKÉTÍ';
353
353
- @override
354
- String get cutButtonLabel => r'TÒ';
354
+@override
355
+String get cutButtonLabel => r'TÒ';
356
356
- @override
357
- String get deleteButtonTooltip => r'Máa kú';
357
+@override
358
+String get deleteButtonTooltip => r'Máa kú';
359
359
- @override
360
- String get dialogLabel => r'Ìròhùn';
360
+@override
361
+String get dialogLabel => r'Ìròhùn';
362
362
- @override
363
- String get drawerLabel => r'Àgbèjọ àwọn àpọ̀tí';
363
+@override
364
+String get drawerLabel => r'Àgbèjọ àwọn àpọ̀tí';
365
365
- @override
366
- String get expandedIconTapHint => r'Tá';
366
+@override
367
+String get expandedIconTapHint => r'Tá';
368
368
- @override
369
- String get firstPageTooltip => r'Ojú ewe';
369
+@override
370
+String get firstPageTooltip => r'Ojú ewe';
371
371
- @override
372
- String get hideAccountsLabel => r'Fí èrò àpótí wáyé sílẹ̀';
372
+@override
373
+String get hideAccountsLabel => r'Fí èrò àpótí wáyé sílẹ̀';
374
374
- @override
375
- String get lastPageTooltip => r'Ojú ayé';
375
+@override
376
+String get lastPageTooltip => r'Ojú ayé';
377
377
- @override
378
- String get licensesPageTitle => r'Ìròhùn Ọdún';
378
+@override
379
+String get licensesPageTitle => r'Ìròhùn Ọdún';
380
380
- @override
381
- String get modalBarrierDismissLabel => r'Sọ';
381
+@override
382
+String get modalBarrierDismissLabel => r'Sọ';
383
383
- @override
384
- String get nextMonthTooltip => r'Oṣù kọja';
384
+@override
385
+String get nextMonthTooltip => r'Oṣù kọja';
386
386
- @override
387
- String get nextPageTooltip => r'Ojú ọjọ́ kẹta';
387
+@override
388
+String get nextPageTooltip => r'Ojú ọjọ́ kẹta';
389
389
- @override
390
- String get okButtonLabel => r'Ò daájú';
391
- @override
390
+@override
391
+String get okButtonLabel => r'Ò daájú';
392
+@override
393
// A custom drawer tooltip message.
393
- String get openAppDrawerTooltip => r'Aya ntọju Iwe Awọn Aka';
394
+String get openAppDrawerTooltip => r'Aya ntọju Iwe Awọn Aka';
395
396
// #docregion Raw
396
- @override
397
- String get pageRowsInfoTitleRaw => r'$firstRow–$lastRow lati $rowCount';
397
+@override
398
+String get pageRowsInfoTitleRaw => r'$firstRow–$lastRow lati $rowCount';
399
399
- @override
400
- String get pageRowsInfoTitleApproximateRaw => r'$firstRow–$lastRow lati kiakia $rowCount';
400
+@override
401
+String get pageRowsInfoTitleApproximateRaw => r'$firstRow–$lastRow lati kiakia $rowCount';
402
// #enddocregion Raw
403
403
- @override
404
- String get pasteButtonLabel => r'TÌ';
404
+@override
405
+String get pasteButtonLabel => r'TÌ';
406
406
- @override
407
- String get popupMenuLabel => r'Meniu Pop-up';
407
+@override
408
+String get popupMenuLabel => r'Meniu Pop-up';
409
409
- @override
410
- String get menuBarMenuLabel => r'Meniu Akọkọ';
410
+@override
411
+String get menuBarMenuLabel => r'Meniu Akọkọ';
412
412
- @override
413
- String get postMeridiemAbbreviation => r'PM';
413
+@override
414
+String get postMeridiemAbbreviation => r'PM';
415
415
- @override
416
- String get previousMonthTooltip => r'Oṣu Kanakana';
416
+@override
417
+String get previousMonthTooltip => r'Oṣu Kanakana';
418
418
- @override
419
- String get previousPageTooltip => r'Ojú ewé akọkọ kan';
419
+@override
420
+String get previousPageTooltip => r'Ojú ewé akọkọ kan';
421
421
- @override
422
- String get refreshIndicatorSemanticLabel => r'Gbiyanju';
422
+@override
423
+String get refreshIndicatorSemanticLabel => r'Gbiyanju';
424
424
- @override
425
- String? get remainingTextFieldCharacterCountFew => null;
425
+@override
426
+String? get remainingTextFieldCharacterCountFew => null;
427
427
- @override
428
- String? get remainingTextFieldCharacterCountMany => null;
428
+@override
429
+String? get remainingTextFieldCharacterCountMany => null;
430
430
- @override
431
- String get remainingTextFieldCharacterCountOne => r'1 àmì báálẹ̀';
431
+@override
432
+String get remainingTextFieldCharacterCountOne => r'1 àmì báálẹ̀';
433
433
- @override
434
- String get remainingTextFieldCharacterCountOther => r'$remainingCount àmì báálẹ̀';
434
+@override
435
+String get remainingTextFieldCharacterCountOther => r'$remainingCount àmì báálẹ̀';
436
436
- @override
437
- String? get remainingTextFieldCharacterCountTwo => null;
437
+@override
438
+String? get remainingTextFieldCharacterCountTwo => null;
439
439
- @override
440
- String get remainingTextFieldCharacterCountZero => r'Kò sí ìwọlé létà láti ń ṣe';
440
+@override
441
+String get remainingTextFieldCharacterCountZero => r'Kò sí ìwọlé létà láti ń ṣe';
442
442
- @override
443
- String get reorderItemDown => r'Jù sí ilẹ';
443
+@override
444
+String get reorderItemDown => r'Jù sí ilẹ';
445
445
- @override
446
- String get reorderItemLeft => r'Jù sí àrà';
446
+@override
447
+String get reorderItemLeft => r'Jù sí àrà';
448
448
- @override
449
- String get reorderItemRight => r'Jù sí òtútù';
449
+@override
450
+String get reorderItemRight => r'Jù sí òtútù';
451
451
- @override
452
- String get reorderItemToEnd => r'Jù sí ìbẹ̀jì';
452
+@override
453
+String get reorderItemToEnd => r'Jù sí ìbẹ̀jì';
454
454
- @override
455
- String get reorderItemToStart => r'Jù sí àkọ́kọ́';
455
+@override
456
+String get reorderItemToStart => r'Jù sí àkọ́kọ́';
457
457
- @override
458
- String get reorderItemUp => r'Jù sí ọ̀rùn';
458
+@override
459
+String get reorderItemUp => r'Jù sí ọ̀rùn';
460
460
- @override
461
- String get rowsPerPageTitle => r'Ìlò Fún àwọn Ìtọ́kasíwájú:';
461
+@override
462
+String get rowsPerPageTitle => r'Ìlò Fún àwọn Ìtọ́kasíwájú:';
463
463
- @override
464
- ScriptCategory get scriptCategory => ScriptCategory.englishLike;
464
+@override
465
+ScriptCategory get scriptCategory => ScriptCategory.englishLike;
466
466
- @override
467
- String get searchFieldLabel => 'Ṣẹda';
467
+@override
468
+String get searchFieldLabel => 'Ṣẹda';
469
469
- @override
470
- String get selectAllButtonLabel => 'FADỌHỌN DỌFÚN GBÁJÚMỌ̀';
470
+@override
471
+String get selectAllButtonLabel => 'FADỌHỌN DỌFÚN GBÁJÚMỌ̀';
472
472
- @override
473
- String? get selectedRowCountTitleFew => null;
473
+@override
474
+String? get selectedRowCountTitleFew => null;
475
475
- @override
476
- String? get selectedRowCountTitleMany => null;
476
+@override
477
+String? get selectedRowCountTitleMany => null;
478
478
- @override
479
- String get selectedRowCountTitleOne => '1 káyé';
479
+@override
480
+String get selectedRowCountTitleOne => '1 káyé';
481
481
- @override
482
- String get selectedRowCountTitleOther => r'$selectedRowCount káyé';
482
+@override
483
+String get selectedRowCountTitleOther => r'$selectedRowCount káyé';
484
484
- @override
485
- String? get selectedRowCountTitleTwo => null;
485
+@override
486
+String? get selectedRowCountTitleTwo => null;
487
487
- @override
488
- String get selectedRowCountTitleZero => 'Kò sí káyé ti o wọlé';
488
+@override
489
+String get selectedRowCountTitleZero => 'Kò sí káyé ti o wọlé';
490
490
- @override
491
- String get showAccountsLabel => 'Fi iyipada mu kọ';
491
+@override
492
+String get showAccountsLabel => 'Fi iyipada mu kọ';
493
493
- @override
494
- String get showMenuTooltip => 'Fi Meniu mu kọ';
494
+@override
495
+String get showMenuTooltip => 'Fi Meniu mu kọ';
496
496
- @override
497
- String get signedInLabel => 'Ọ̀nà';
497
+@override
498
+String get signedInLabel => 'Ọ̀nà';
499
500
+@override
501
+String get tabLabelRaw => r'Àwọn tabin $tabIndex lati $tabCount';
502
+
503
@override
500
- String get tabLabelRaw => r'Àwọn tabin $tabIndex lati $tabCount';
504
+TimeOfDayFormat get timeOfDayFormatRaw => TimeOfDayFormat.h_colon_mm_space_a;
505
502
- @override
503
- TimeOfDayFormat get timeOfDayFormatRaw => TimeOfDayFormat.h_colon_mm_space_a;
506
+@override
507
+String get timePickerHourModeAnnouncement => 'Tuntun waqtu lọ';
508
505
- @override
506
- String get timePickerHourModeAnnouncement => 'Tuntun waqtu lọ';
509
+@override
510
+String get timePickerMinuteModeAnnouncement => 'Tuntun daɗi minti';
511
508
- @override
509
- String get timePickerMinuteModeAnnouncement => 'Tuntun daɗi minti';
512
+@override
513
+String get viewLicensesButtonLabel => 'WO NIKI';
514
511
- @override
512
- String get viewLicensesButtonLabel => 'WO NIKI';
515
+@override
516
+List<String> get narrowWeekdays => const <String>['L', 'L', 'A', 'O', 'Ọ', 'Ẹ', 'Ẹ'];
517
514
- @override
515
- List<String> get narrowWeekdays => const <String>['L', 'L', 'A', 'O', 'Ọ', 'Ẹ', 'Ẹ'];
518
+@override
519
+int get firstDayOfWeekIndex => 0;
520
517
- @override
518
- int get firstDayOfWeekIndex => 0;
521
+static const LocalizationsDelegate<MaterialLocalizations> delegate =
522
+_YoMaterialLocalizationsDelegate();
523
520
- static const LocalizationsDelegate<MaterialLocalizations> delegate =
521
- _YoMaterialLocalizationsDelegate();
524
+@override
525
+String get calendarModeButtonLabel => 'Tọ́rọ̀ kálẹ̀ndà';
526
523
- @override
524
- String get calendarModeButtonLabel => 'Tọ́rọ̀ kálẹ̀ndà';
527
+@override
528
+String get dateHelpText => 'mm/dd/yyyy';
529
526
- @override
527
- String get dateHelpText => 'mm/dd/yyyy';
530
+@override
531
+String get dateInputLabel => 'Firanṣẹ̀ Ọjọ́';
532
529
- @override
530
- String get dateInputLabel => 'Firanṣẹ̀ Ọjọ́';
533
+@override
534
+String get dateOutOfRangeLabel => 'Nínú iwọ̀ lọ́wọ́';
535
532
- @override
533
- String get dateOutOfRangeLabel => 'Nínú iwọ̀ lọ́wọ́';
536
+@override
537
+String get datePickerHelpText => 'WÁSÍ';
538
535
- @override
536
- String get datePickerHelpText => 'WÁSÍ';
539
+@override
540
+String get dateRangeEndDateSemanticLabelRaw => r'Ọjọ́ tuntun to ṣà';
541
538
- @override
539
- String get dateRangeEndDateSemanticLabelRaw => r'Ọjọ́ tuntun to ṣà';
542
+@override
543
+String get dateRangeEndLabel => 'Ọjọ́ tuntun to ṣà';
544
541
- @override
542
- String get dateRangeEndLabel => 'Ọjọ́ tuntun to ṣà';
545
+@override
546
+String get dateRangePickerHelpText => 'WÁSÍ ÌGBÀ';
547
544
- @override
545
- String get dateRangePickerHelpText => 'WÁSÍ ÌGBÀ';
548
+@override
549
+String get dateRangeStartDateSemanticLabelRaw => 'Ọjọ́ tuntun ti dá';
550
547
- @override
548
- String get dateRangeStartDateSemanticLabelRaw => 'Ọjọ́ tuntun ti dá';
551
+@override
552
+String get dateRangeStartLabel => 'Ọjọ́ tuntun ti dá';
553
550
- @override
551
- String get dateRangeStartLabel => 'Ọjọ́ tuntun ti dá';
554
+@override
555
+String get dateSeparator => '/';
556
553
- @override
554
- String get dateSeparator => '/';
557
+@override
558
+String get dialModeButtonLabel => 'Tọ́rọ̀ wakati';
559
556
- @override
557
- String get dialModeButtonLabel => 'Tọ́rọ̀ wakati';
560
+@override
561
+String get inputDateModeButtonLabel => 'Tọ́rọ̀ firanṣẹ̀ ọjọ́';
562
559
- @override
560
- String get inputDateModeButtonLabel => 'Tọ́rọ̀ firanṣẹ̀ ọjọ́';
563
+@override
564
+String get inputTimeModeButtonLabel => 'Tọ́rọ̀ wakati bayi lọ́wọ́';
565
562
- @override
563
- String get inputTimeModeButtonLabel => 'Tọ́rọ̀ wakati bayi lọ́wọ́';
566
+@override
567
+String get invalidDateFormatLabel => 'Akọ́kọ́tọ́ tó jẹ́kúnrin';
568
565
- @override
566
- String get invalidDateFormatLabel => 'Akọ́kọ́tọ́ tó jẹ́kúnrin';
569
+@override
570
+String get invalidDateRangeLabel => 'Àmì jẹ́ káàkiri lẹ́yìn ilé';
571
568
- @override
569
- String get invalidDateRangeLabel => 'Àmì jẹ́ káàkiri lẹ́yìn ilé';
572
+@override
573
+String get invalidTimeLabel => 'Akọ́kọ́tọ́ àkójọ ìwádìí';
574
571
- @override
572
- String get invalidTimeLabel => 'Akọ́kọ́tọ́ àkójọ ìwádìí';
575
+@override
576
+String get licensesPackageDetailTextOther => r'$licenseCount àwọn níkí';
577
574
- @override
575
- String get licensesPackageDetailTextOther => r'$licenseCount àwọn níkí';
578
+@override
579
+String get saveButtonLabel => 'TÙN DÁRA';
580
577
- @override
578
- String get saveButtonLabel => 'TÙN DÁRA';
581
+@override
582
+String get selectYearSemanticsLabel => 'Fọ́ọ̀ shẹ́kàrà';
583
580
- @override
581
- String get selectYearSemanticsLabel => 'Fọ́ọ̀ shẹ́kàrà';
584
+@override
585
+String get timePickerDialHelpText => 'WÁSÍ WÁKÀTÌ';
586
583
- @override
584
- String get timePickerDialHelpText => 'WÁSÍ WÁKÀTÌ';
587
+@override
588
+String get timePickerHourLabel => 'Wákàtì àṣà';
589
586
- @override
587
- String get timePickerHourLabel => 'Wákàtì àṣà';
590
+@override
591
+String get timePickerInputHelpText => 'Shìgárà wákàtì';
592
589
- @override
590
- String get timePickerInputHelpText => 'Shìgárà wákàtì';
593
+@override
594
+String get timePickerMinuteLabel => 'Mìntì';
595
592
- @override
593
- String get timePickerMinuteLabel => 'Mìntì';
596
+@override
597
+String get unspecifiedDate => 'Ọjọ̀kúnrin';
598
595
- @override
596
- String get unspecifiedDate => 'Ọjọ̀kúnrin';
599
+@override
600
+String get unspecifiedDateRange => 'Ọjọ̀kúnrin àdáyọ̀';
601
598
- @override
599
- String get unspecifiedDateRange => 'Ọjọ̀kúnrin àdáyọ̀';
602
+@override
603
+String get keyboardKeyAlt => 'Alt';
604
601
- @override
602
- String get keyboardKeyAlt => 'Alt';
605
+@override
606
+String get keyboardKeyAltGraph => 'AltGraph';
607
604
- @override
605
- String get keyboardKeyAltGraph => 'AltGraph';
608
+@override
609
+String get keyboardKeyBackspace => 'Báckspàcè';
610
607
- @override
608
- String get keyboardKeyBackspace => 'Báckspàcè';
611
+@override
612
+String get keyboardKeyCapsLock => 'Caps Lock';
613
610
- @override
611
- String get keyboardKeyCapsLock => 'Caps Lock';
614
+@override
615
+String get keyboardKeyChannelDown => 'Báyàkàmmàlàsàké';
616
613
- @override
614
- String get keyboardKeyChannelDown => 'Báyàkàmmàlàsàké';
617
+@override
618
+String get keyboardKeyChannelUp => 'Yíkàmmàlàsàké';
619
616
- @override
617
- String get keyboardKeyChannelUp => 'Yíkàmmàlàsàké';
620
+@override
621
+String get keyboardKeyControl => 'Kọ́ntírọ̀l';
622
619
- @override
620
- String get keyboardKeyControl => 'Kọ́ntírọ̀l';
621
-
622
- @override
623
- String get keyboardKeyDelete => 'Shápè';
623
+@override
624
+String get keyboardKeyDelete => 'Shápè';
625
625
- @override
626
- String get keyboardKeyEject => 'Èjẹ̀tì';
626
+@override
627
+String get keyboardKeyEject => 'Èjẹ̀tì';
628
628
- @override
629
- String get keyboardKeyEnd => 'Tàbí';
629
+@override
630
+String get keyboardKeyEnd => 'Tàbí';
631
631
- @override
632
- String get keyboardKeyEscape => 'Tòkè';
632
+@override
633
+String get keyboardKeyEscape => 'Tòkè';
634
635
@override
635
- String get keyboardKeyFn => 'Fn';
636
+String get keyboardKeyFn => 'Fn';
637
637
- @override
638
- String get keyboardKeyHome => 'Ile';
638
+@override
639
+String get keyboardKeyHome => 'Ile';
640
640
- @override
641
- String get keyboardKeyInsert => 'Fi sori';
641
+@override
642
+String get keyboardKeyInsert => 'Fi sori';
643
643
- @override
644
- String get keyboardKeyMeta => 'Meta';
644
+@override
645
+String get keyboardKeyMeta => 'Meta';
646
646
- @override
647
- String get keyboardKeyMetaMacOs => 'Amfani pẹlu Command';
647
+@override
648
+String get keyboardKeyMetaMacOs => 'Amfani pẹlu Command';
649
649
- @override
650
- String get keyboardKeyMetaWindows => 'Windows';
650
+@override
651
+String get keyboardKeyMetaWindows => 'Windows';
652
653
@override
654
String get keyboardKeyNumLock => 'Num Lock';
@@ -750,50 +751,6 @@ class YoMaterialLocalizations extends GlobalMaterialLocalizations {
751
752
@override
753
String get scrimOnTapHintRaw => "Scrip on Tap";
753
-
754
- @override
755
- // TODO: implement collapsedHint
756
- String get collapsedHint => "collapsedHint";
757
-
758
- @override
759
- // TODO: implement expandedHint
760
- String get expandedHint => "expandedHint";
761
-
762
- @override
763
- // TODO: implement expansionTileCollapsedHint
764
- String get expansionTileCollapsedHint => "expansionTileCollapsedHint";
765
-
766
- @override
767
- // TODO: implement expansionTileCollapsedTapHint
768
- String get expansionTileCollapsedTapHint => "expansionTileCollapsedTapHint";
769
-
770
- @override
771
- // TODO: implement expansionTileExpandedHint
772
- String get expansionTileExpandedHint => "expansionTileExpandedHint";
773
-
774
- @override
775
- // TODO: implement expansionTileExpandedTapHint
776
- String get expansionTileExpandedTapHint => "expansionTileExpandedTapHint";
777
-
778
- @override
779
- // TODO: implement scanTextButtonLabel
780
- String get scanTextButtonLabel => "scanTextButtonLabel";
781
-
782
- @override
783
- // TODO: implement lookUpButtonLabel
784
- String get lookUpButtonLabel => "lookUpButtonLabel";
785
-
786
- @override
787
- // TODO: implement menuDismissLabel
788
- String get menuDismissLabel => "menuDismissLabel";
789
-
790
- @override
791
- // TODO: implement searchWebButtonLabel
792
- String get searchWebButtonLabel => "searchWebButtonLabel";
793
-
794
- @override
795
- // TODO: implement shareButtonLabel
796
- String get shareButtonLabel => "shareButtonLabel";
754
}
755
756
/// Cupertino Support
@@ -864,158 +821,138 @@ class YoCupertinoLocalizations extends GlobalCupertinoLocalizations {
821
required super.singleDigitSecondFormat,
822
});
823
867
- @override
868
- String get alertDialogLabel => 'Àdàkárò';
824
+@override
825
+String get alertDialogLabel => 'Àdàkárò';
826
870
- @override
871
- String get anteMeridiemAbbreviation => 'AM';
827
+@override
828
+String get anteMeridiemAbbreviation => 'AM';
829
873
- @override
874
- String get copyButtonLabel => 'Kòpy';
830
+@override
831
+String get copyButtonLabel => 'Kòpy';
832
876
- @override
877
- String get cutButtonLabel => 'Kọ́t';
833
+@override
834
+String get cutButtonLabel => 'Kọ́t';
835
879
- @override
880
- String get datePickerDateOrderString => 'mdy';
836
+@override
837
+String get datePickerDateOrderString => 'mdy';
838
882
- @override
883
- String get datePickerDateTimeOrderString => 'date_time_dayPeriod';
839
+@override
840
+String get datePickerDateTimeOrderString => 'date_time_dayPeriod';
841
885
- @override
886
- String? get datePickerHourSemanticsLabelFew => null;
842
+@override
843
+String? get datePickerHourSemanticsLabelFew => null;
844
888
- @override
889
- String? get datePickerHourSemanticsLabelMany => null;
845
+@override
846
+String? get datePickerHourSemanticsLabelMany => null;
847
891
- @override
892
- String? get datePickerHourSemanticsLabelOne => r"$hour o'clock";
848
+@override
849
+String? get datePickerHourSemanticsLabelOne => r"$hour o'clock";
850
894
- @override
895
- String get datePickerHourSemanticsLabelOther => r"$hour o'clock";
851
+@override
852
+String get datePickerHourSemanticsLabelOther => r"$hour o'clock";
853
897
- @override
898
- String? get datePickerHourSemanticsLabelTwo => null;
854
+@override
855
+String? get datePickerHourSemanticsLabelTwo => null;
856
900
- @override
901
- String? get datePickerHourSemanticsLabelZero => null;
857
+@override
858
+String? get datePickerHourSemanticsLabelZero => null;
859
903
- @override
904
- String? get datePickerMinuteSemanticsLabelFew => null;
860
+@override
861
+String? get datePickerMinuteSemanticsLabelFew => null;
862
906
- @override
907
- String? get datePickerMinuteSemanticsLabelMany => null;
863
+@override
864
+String? get datePickerMinuteSemanticsLabelMany => null;
865
909
- @override
910
- String? get datePickerMinuteSemanticsLabelOne => '1 wakati';
866
+@override
867
+String? get datePickerMinuteSemanticsLabelOne => '1 wakati';
868
912
- @override
913
- String get datePickerMinuteSemanticsLabelOther => r'$minute wakati';
869
+@override
870
+String get datePickerMinuteSemanticsLabelOther => r'$minute wakati';
871
915
- @override
916
- String? get datePickerMinuteSemanticsLabelTwo => null;
872
+@override
873
+String? get datePickerMinuteSemanticsLabelTwo => null;
874
918
- @override
919
- String? get datePickerMinuteSemanticsLabelZero => null;
875
+@override
876
+String? get datePickerMinuteSemanticsLabelZero => null;
877
921
- @override
922
- String get modalBarrierDismissLabel => 'Búta';
878
+@override
879
+String get modalBarrierDismissLabel => 'Búta';
880
924
- @override
925
- String get pasteButtonLabel => 'Tẹ́ẹ́';
881
+@override
882
+String get pasteButtonLabel => 'Tẹ́ẹ́';
883
927
- @override
928
- String get postMeridiemAbbreviation => 'PM';
884
+@override
885
+String get postMeridiemAbbreviation => 'PM';
886
930
- @override
931
- String get searchTextFieldPlaceholderLabel => 'Wúró àtúntà';
887
+@override
888
+String get searchTextFieldPlaceholderLabel => 'Wúró àtúntà';
889
933
- @override
934
- String get selectAllButtonLabel => 'Fírànsé gbógbo';
890
+@override
891
+String get selectAllButtonLabel => 'Fírànsé gbógbo';
892
936
- @override
937
- String get tabSemanticsLabelRaw => r'Tab $tabIndex nínú $tabCount';
893
+@override
894
+String get tabSemanticsLabelRaw => r'Tab $tabIndex nínú $tabCount';
895
939
- @override
940
- String? get timerPickerHourLabelFew => null;
896
+@override
897
+String? get timerPickerHourLabelFew => null;
898
942
- @override
943
- String? get timerPickerHourLabelMany => null;
899
+@override
900
+String? get timerPickerHourLabelMany => null;
901
945
- @override
946
- String? get timerPickerHourLabelOne => 'òǹdì';
902
+@override
903
+String? get timerPickerHourLabelOne => 'òǹdì';
904
948
- @override
949
- String get timerPickerHourLabelOther => 'òǹdì';
905
+@override
906
+String get timerPickerHourLabelOther => 'òǹdì';
907
951
- @override
952
- String? get timerPickerHourLabelTwo => null;
908
+@override
909
+String? get timerPickerHourLabelTwo => null;
910
954
- @override
955
- String? get timerPickerHourLabelZero => null;
911
+@override
912
+String? get timerPickerHourLabelZero => null;
913
957
- @override
958
- String? get timerPickerMinuteLabelFew => null;
914
+@override
915
+String? get timerPickerMinuteLabelFew => null;
916
960
- @override
961
- String? get timerPickerMinuteLabelMany => null;
917
+@override
918
+String? get timerPickerMinuteLabelMany => null;
919
963
- @override
964
- String? get timerPickerMinuteLabelOne => 'wakati.';
920
+@override
921
+String? get timerPickerMinuteLabelOne => 'wakati.';
922
966
- @override
967
- String get timerPickerMinuteLabelOther => 'wakati.';
923
+@override
924
+String get timerPickerMinuteLabelOther => 'wakati.';
925
969
- @override
970
- String? get timerPickerMinuteLabelTwo => null;
926
+@override
927
+String? get timerPickerMinuteLabelTwo => null;
928
972
- @override
973
- String? get timerPickerMinuteLabelZero => null;
929
+@override
930
+String? get timerPickerMinuteLabelZero => null;
931
975
- @override
976
- String? get timerPickerSecondLabelFew => null;
932
+@override
933
+String? get timerPickerSecondLabelFew => null;
934
978
- @override
979
- String? get timerPickerSecondLabelMany => null;
935
+@override
936
+String? get timerPickerSecondLabelMany => null;
937
981
- @override
982
- String? get timerPickerSecondLabelOne => 'dákìkà.';
938
+@override
939
+String? get timerPickerSecondLabelOne => 'dákìkà.';
940
984
- @override
985
- String get timerPickerSecondLabelOther => 'dákìkà.';
941
+@override
942
+String get timerPickerSecondLabelOther => 'dákìkà.';
943
987
- @override
988
- String? get timerPickerSecondLabelTwo => null;
944
+@override
945
+String? get timerPickerSecondLabelTwo => null;
946
990
- @override
991
- String? get timerPickerSecondLabelZero => null;
947
+@override
948
+String? get timerPickerSecondLabelZero => null;
949
993
- @override
994
- String get todayLabel => 'Oyọ';
950
+@override
951
+String get todayLabel => 'Oyọ';
952
953
static const LocalizationsDelegate<CupertinoLocalizations> delegate =
954
_YoCupertinoLocalizationsDelegate();
955
956
@override
957
String get noSpellCheckReplacementsLabel => "";
1001
-
1002
- @override
1003
- // TODO: implement clearButtonLabel
1004
- String get clearButtonLabel => "clearButtonLabel";
1005
-
1006
- @override
1007
- // TODO: implement lookUpButtonLabel
1008
- String get lookUpButtonLabel => "lookUpButtonLabel";
1009
-
1010
- @override
1011
- // TODO: implement menuDismissLabel
1012
- String get menuDismissLabel => "menuDismissLabel";
1013
-
1014
- @override
1015
- // TODO: implement searchWebButtonLabel
1016
- String get searchWebButtonLabel => "searchWebButtonLabel";
1017
-
1018
- @override
1019
- // TODO: implement shareButtonLabel
1020
- String get shareButtonLabel => "shareButtonLabel";
958
}
lib/src/screens/settings/security_backup_page.dart
+1
-3
@@ -1,5 +1,3 @@
1
-import 'dart:io';
2
-
1
import 'package:cake_wallet/core/auth_service.dart';
2
import 'package:cake_wallet/entities/pin_code_required_duration.dart';
3
import 'package:cake_wallet/routes.dart';
@@ -60,7 +58,7 @@ class SecurityBackupPage extends BasePage {
58
.shouldRequireTOTP2FAForAllSecurityAndBackupSettings,
59
),
60
),
63
- if (DeviceInfo.instance.isMobile || Platform.isMacOS || Platform.isLinux)
61
+ if (DeviceInfo.instance.isMobile)
62
Observer(builder: (_) {
63
return SettingsSwitcherCell(
64
title: S.current.settings_allow_biometrical_authentication,
lib/src/screens/settings/tor_page.dart
+2
-2
@@ -146,7 +146,7 @@ class ConnectScreen extends StatelessWidget {
146
ElevatedButton(
147
onPressed: connect,
148
style: ElevatedButton.styleFrom(
149
- // primary: Colors.blue,
149
+ primary: Colors.blue,
150
padding: EdgeInsets.symmetric(horizontal: 40, vertical: 15),
151
shape: RoundedRectangleBorder(
152
borderRadius: BorderRadius.circular(30),
@@ -211,7 +211,7 @@ class DisconnectScreen extends StatelessWidget {
211
ElevatedButton(
212
onPressed: disconnect,
213
style: ElevatedButton.styleFrom(
214
- // primary: Colors.red,
214
+ primary: Colors.red,
215
padding: EdgeInsets.symmetric(horizontal: 40, vertical: 15),
216
shape: RoundedRectangleBorder(
217
borderRadius: BorderRadius.circular(30),
lib/src/widgets/validable_annotated_editable_text.dart
+4
-10
@@ -1,14 +1,8 @@
1
+import 'package:cake_wallet/core/seed_validator.dart';
2
+import 'package:cw_core/wallet_type.dart';
3
import 'package:flutter/material.dart';
4
3
-
4
-extension Compare<T> on Comparable<T> {
5
- bool operator <=(T other) => compareTo(other) <= 0;
6
- bool operator >=(T other) => compareTo(other) >= 0;
7
- bool operator <(T other) => compareTo(other) < 0;
8
- bool operator >(T other) => compareTo(other) > 0;
9
-}
10
-
11
-class Annotation implements Comparable<Annotation> {
5
+class Annotation extends Comparable<Annotation> {
6
Annotation({required this.range, required this.style});
7
8
final TextRange range;
@@ -18,7 +12,7 @@ class Annotation implements Comparable<Annotation> {
12
int compareTo(Annotation other) => range.start.compareTo(other.range.start);
13
}
14
21
-class TextAnnotation implements Comparable<TextAnnotation> {
15
+class TextAnnotation extends Comparable<TextAnnotation> {
16
TextAnnotation({required this.text, required this.style});
17
18
final TextStyle style;
lib/view_model/auth_view_model.dart
+8
-7
@@ -1,6 +1,5 @@
1
import 'dart:async';
2
import 'package:flutter/material.dart';
3
-import 'package:flutter_local_authentication/flutter_local_authentication.dart';
3
import 'package:shared_preferences/shared_preferences.dart';
4
import 'package:mobx/mobx.dart';
5
import 'package:cake_wallet/view_model/auth_state.dart';
@@ -106,14 +105,16 @@ abstract class AuthViewModelBase with Store {
105
106
@action
107
Future<void> biometricAuth() async {
109
- final _flutterLocalAuthenticationPlugin = FlutterLocalAuthentication();
110
-
108
try {
112
- final authenticated = await _flutterLocalAuthenticationPlugin.authenticate();
113
- if (!authenticated) {
114
- throw Exception('Biometric authentication failed');
109
+ final canBiometricAuth = await _biometricAuth.canCheckBiometrics();
110
+
111
+ if (canBiometricAuth) {
112
+ final isAuthenticated = await _biometricAuth.isAuthenticated();
113
+
114
+ if (isAuthenticated) {
115
+ state = ExecutedSuccessfullyState();
116
+ }
117
}
116
- state = ExecutedSuccessfullyState();
118
} catch (e) {
119
state = FailureState(e.toString());
120
}
pubspec_base.yaml
+1
-1
@@ -33,8 +33,8 @@ dependencies:
33
dio: ^4.0.6
34
hive: ^2.2.3
35
hive_flutter: ^1.1.0
36
+ local_auth: ^2.1.0
37
local_auth_android: 1.0.21
37
- flutter_local_authentication: ^1.2.0
38
package_info: ^2.0.0
39
#package_info_plus: ^1.4.2
40
devicelocale:
pubspec_description.yaml
+1
-1
@@ -4,4 +4,4 @@ version: 0.0.0
4
publish_to: none
5
6
environment:
7
- sdk: ">=3.1.0 <4.0.0"
\ No newline at end of file
7
+ sdk: ">=2.17.5 <3.0.0"
\ No newline at end of file