Skip to content

Commit 01682a5

Browse files
committed
Make widget stateless. Add translation files. Use cubit close to clear state. Rename getAllSeedsUsecase.
1 parent 62852f9 commit 01682a5

15 files changed

Lines changed: 351 additions & 170 deletions

File tree

20.4 KB
Loading
11.3 KB
Loading
29.8 KB
Loading
52 KB
Loading
77.4 KB
Loading
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
3-
<background android:drawable="@color/ic_launcher_background"/>
3+
<background android:drawable="@drawable/ic_launcher_background"/>
44
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
55
</adaptive-icon>

lib/core/seed/domain/usecases/get_all_seeds_from_secure_storage_usecase.dart renamed to lib/core/seed/domain/usecases/get_all_seeds_usecase.dart

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,12 @@ import 'package:bb_mobile/core/seed/data/repository/seed_repository.dart';
22
import 'package:bb_mobile/core/seed/domain/entity/seed.dart';
33
import 'package:bb_mobile/core/utils/logger.dart';
44

5-
class GetAllSeedsFromSecureStorageUsecase {
5+
class GetAllSeedsUsecase {
66
final SeedRepository _seedRepository;
77

8-
GetAllSeedsFromSecureStorageUsecase({required SeedRepository seedRepository})
8+
GetAllSeedsUsecase({required SeedRepository seedRepository})
99
: _seedRepository = seedRepository;
1010

11-
/// Fetches all mnemonic seeds from secure storage
1211
Future<List<MnemonicSeed>> execute() async {
1312
try {
1413
final seeds = await _seedRepository.getAllMnemonicSeeds();

lib/core/storage/storage_locator.dart

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import 'package:bb_mobile/core/seed/data/repository/seed_repository.dart';
2-
import 'package:bb_mobile/core/seed/domain/usecases/get_all_seeds_from_secure_storage_usecase.dart';
2+
import 'package:bb_mobile/core/seed/domain/usecases/get_all_seeds_usecase.dart';
33
import 'package:bb_mobile/core/storage/data/datasources/key_value_storage/impl/secure_storage_data_source_impl.dart';
44
import 'package:bb_mobile/core/storage/data/datasources/key_value_storage/key_value_storage_datasource.dart';
55
import 'package:bb_mobile/core/storage/migrations/004_legacy/migrate_v4_legacy_usecase.dart';
@@ -60,10 +60,8 @@ class StorageLocator {
6060
oldWalletRepository: locator<OldWalletRepository>(),
6161
),
6262
);
63-
locator.registerFactory<GetAllSeedsFromSecureStorageUsecase>(
64-
() => GetAllSeedsFromSecureStorageUsecase(
65-
seedRepository: locator<SeedRepository>(),
66-
),
63+
locator.registerFactory<GetAllSeedsUsecase>(
64+
() => GetAllSeedsUsecase(seedRepository: locator<SeedRepository>()),
6765
);
6866
locator.registerFactory<MigrateToV4LegacyUsecase>(
6967
() => MigrateToV4LegacyUsecase(MigrationSecureStorageDatasource()),

lib/features/all_seed_view/all_seed_view_locator.dart

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import 'package:bb_mobile/core/seed/domain/usecases/delete_seed_usecase.dart';
2-
import 'package:bb_mobile/core/seed/domain/usecases/get_all_seeds_from_secure_storage_usecase.dart';
2+
import 'package:bb_mobile/core/seed/domain/usecases/get_all_seeds_usecase.dart';
33
import 'package:bb_mobile/core/seed/domain/usecases/process_and_separate_seeds_usecase.dart';
44
import 'package:bb_mobile/core/wallet/domain/usecases/get_wallets_usecase.dart';
55
import 'package:bb_mobile/features/all_seed_view/presentation/all_seed_view_cubit.dart';
@@ -9,8 +9,7 @@ class AllSeedViewLocator {
99
static void setup() {
1010
locator.registerFactory<AllSeedViewCubit>(
1111
() => AllSeedViewCubit(
12-
getAllSeedsFromSecureStorageUsecase:
13-
locator<GetAllSeedsFromSecureStorageUsecase>(),
12+
getAllSeedsUsecase: locator<GetAllSeedsUsecase>(),
1413
getWalletsUsecase: locator<GetWalletsUsecase>(),
1514
deleteSeedUsecase: locator<DeleteSeedUsecase>(),
1615
processAndSeparateSeedsUsecase:

lib/features/all_seed_view/presentation/all_seed_view_cubit.dart

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import 'package:bb_mobile/core/seed/domain/entity/seed.dart';
22
import 'package:bb_mobile/core/seed/domain/usecases/delete_seed_usecase.dart';
3-
import 'package:bb_mobile/core/seed/domain/usecases/get_all_seeds_from_secure_storage_usecase.dart';
3+
import 'package:bb_mobile/core/seed/domain/usecases/get_all_seeds_usecase.dart';
44
import 'package:bb_mobile/core/seed/domain/usecases/process_and_separate_seeds_usecase.dart';
55
import 'package:bb_mobile/core/wallet/domain/usecases/get_wallets_usecase.dart';
66
import 'package:flutter_bloc/flutter_bloc.dart';
@@ -11,20 +11,17 @@ part 'all_seed_view_state.dart';
1111

1212
class AllSeedViewCubit extends Cubit<AllSeedViewState> {
1313
AllSeedViewCubit({
14-
required GetAllSeedsFromSecureStorageUsecase
15-
getAllSeedsFromSecureStorageUsecase,
14+
required GetAllSeedsUsecase getAllSeedsUsecase,
1615
required GetWalletsUsecase getWalletsUsecase,
1716
required DeleteSeedUsecase deleteSeedUsecase,
1817
required ProcessAndSeparateSeedsUsecase processAndSeparateSeedsUsecase,
19-
}) : _getAllSeedsFromSecureStorageUsecase =
20-
getAllSeedsFromSecureStorageUsecase,
18+
}) : _getAllSeedsUsecase = getAllSeedsUsecase,
2119
_getWalletsUsecase = getWalletsUsecase,
2220
_deleteSeedUsecase = deleteSeedUsecase,
2321
_processAndSeparateSeedsUsecase = processAndSeparateSeedsUsecase,
2422
super(const AllSeedViewState());
2523

26-
final GetAllSeedsFromSecureStorageUsecase
27-
_getAllSeedsFromSecureStorageUsecase;
24+
final GetAllSeedsUsecase _getAllSeedsUsecase;
2825
final GetWalletsUsecase _getWalletsUsecase;
2926
final DeleteSeedUsecase _deleteSeedUsecase;
3027
final ProcessAndSeparateSeedsUsecase _processAndSeparateSeedsUsecase;
@@ -33,7 +30,7 @@ class AllSeedViewCubit extends Cubit<AllSeedViewState> {
3330
emit(state.copyWith(loading: true, error: null));
3431
try {
3532
// Fetch all seeds and wallets in parallel
36-
final seeds = await _getAllSeedsFromSecureStorageUsecase.execute();
33+
final seeds = await _getAllSeedsUsecase.execute();
3734
final wallets = await _getWalletsUsecase.execute();
3835

3936
// Map wallets to their master fingerprints
@@ -48,21 +45,18 @@ class AllSeedViewCubit extends Cubit<AllSeedViewState> {
4845

4946
emit(
5047
state.copyWith(
51-
loading: false,
5248
existingWallets: result.existingWallets,
5349
oldWallets: result.oldWallets,
5450
error: null,
5551
),
5652
);
5753
} catch (e) {
58-
emit(state.copyWith(loading: false, error: e.toString()));
54+
emit(state.copyWith(error: e.toString()));
55+
} finally {
56+
emit(state.copyWith(loading: false));
5957
}
6058
}
6159

62-
void clearState() {
63-
emit(const AllSeedViewState());
64-
}
65-
6660
void showSeeds() {
6761
emit(state.copyWith(seedsVisible: true));
6862
}
@@ -95,4 +89,10 @@ class AllSeedViewCubit extends Cubit<AllSeedViewState> {
9589
emit(state.copyWith(error: 'Failed to delete seed: $e'));
9690
}
9791
}
92+
93+
@override
94+
Future<void> close() {
95+
emit(const AllSeedViewState());
96+
return super.close();
97+
}
9898
}

0 commit comments

Comments
 (0)