Skip to content

Commit 9725c4d

Browse files
committed
refactor(app): inject demo migration service
- Added migration service - Injected into AppBloc
1 parent 62d437a commit 9725c4d

File tree

1 file changed

+25
-23
lines changed

1 file changed

+25
-23
lines changed

lib/app/view/app.dart

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,11 @@ import 'package:ht_main/authentication/bloc/authentication_bloc.dart';
1414
import 'package:ht_main/l10n/app_localizations.dart';
1515
import 'package:ht_main/l10n/l10n.dart';
1616
import 'package:ht_main/router/router.dart';
17+
import 'package:ht_main/shared/services/demo_data_migration_service.dart';
1718
import 'package:ht_main/shared/theme/app_theme.dart';
18-
import 'package:ht_main/shared/widgets/failure_state_widget.dart'; // Added
19-
import 'package:ht_main/shared/widgets/loading_state_widget.dart'; // Added
20-
import 'package:ht_shared/ht_shared.dart'; // Shared models, FromJson, ToJson, etc.
19+
import 'package:ht_main/shared/widgets/failure_state_widget.dart';
20+
import 'package:ht_main/shared/widgets/loading_state_widget.dart';
21+
import 'package:ht_shared/ht_shared.dart';
2122

2223
class App extends StatelessWidget {
2324
const App({
@@ -28,21 +29,22 @@ class App extends StatelessWidget {
2829
required HtDataRepository<Source> htSourcesRepository,
2930
required HtDataRepository<UserAppSettings> htUserAppSettingsRepository,
3031
required HtDataRepository<UserContentPreferences>
31-
htUserContentPreferencesRepository,
32+
htUserContentPreferencesRepository,
3233
required HtDataRepository<AppConfig> htAppConfigRepository,
3334
required HtKVStorageService kvStorageService,
34-
required AppEnvironment environment, // Added
35+
required AppEnvironment environment,
36+
this.demoDataMigrationService,
3537
super.key,
36-
}) : _htAuthenticationRepository = htAuthenticationRepository,
37-
_htHeadlinesRepository = htHeadlinesRepository,
38-
_htCategoriesRepository = htCategoriesRepository,
39-
_htCountriesRepository = htCountriesRepository,
40-
_htSourcesRepository = htSourcesRepository,
41-
_htUserAppSettingsRepository = htUserAppSettingsRepository,
42-
_htUserContentPreferencesRepository = htUserContentPreferencesRepository,
43-
_htAppConfigRepository = htAppConfigRepository,
44-
_kvStorageService = kvStorageService,
45-
_environment = environment; // Added
38+
}) : _htAuthenticationRepository = htAuthenticationRepository,
39+
_htHeadlinesRepository = htHeadlinesRepository,
40+
_htCategoriesRepository = htCategoriesRepository,
41+
_htCountriesRepository = htCountriesRepository,
42+
_htSourcesRepository = htSourcesRepository,
43+
_htUserAppSettingsRepository = htUserAppSettingsRepository,
44+
_htUserContentPreferencesRepository = htUserContentPreferencesRepository,
45+
_htAppConfigRepository = htAppConfigRepository,
46+
_kvStorageService = kvStorageService,
47+
_environment = environment;
4648

4749
final HtAuthRepository _htAuthenticationRepository;
4850
final HtDataRepository<Headline> _htHeadlinesRepository;
@@ -51,10 +53,11 @@ class App extends StatelessWidget {
5153
final HtDataRepository<Source> _htSourcesRepository;
5254
final HtDataRepository<UserAppSettings> _htUserAppSettingsRepository;
5355
final HtDataRepository<UserContentPreferences>
54-
_htUserContentPreferencesRepository;
56+
_htUserContentPreferencesRepository;
5557
final HtDataRepository<AppConfig> _htAppConfigRepository;
5658
final HtKVStorageService _kvStorageService;
57-
final AppEnvironment _environment; // Added
59+
final AppEnvironment _environment;
60+
final DemoDataMigrationService? demoDataMigrationService;
5861

5962
@override
6063
Widget build(BuildContext context) {
@@ -70,17 +73,16 @@ class App extends StatelessWidget {
7073
RepositoryProvider.value(value: _htAppConfigRepository),
7174
RepositoryProvider.value(value: _kvStorageService),
7275
],
73-
// Use MultiBlocProvider to provide global BLoCs
7476
child: MultiBlocProvider(
7577
providers: [
7678
BlocProvider(
77-
// AppBloc constructor needs refactoring in Step 4
7879
create: (context) => AppBloc(
7980
authenticationRepository: context.read<HtAuthRepository>(),
80-
userAppSettingsRepository: context
81-
.read<HtDataRepository<UserAppSettings>>(),
81+
userAppSettingsRepository:
82+
context.read<HtDataRepository<UserAppSettings>>(),
8283
appConfigRepository: context.read<HtDataRepository<AppConfig>>(),
83-
environment: _environment, // Pass environment
84+
environment: _environment,
85+
demoDataMigrationService: demoDataMigrationService,
8486
),
8587
),
8688
BlocProvider(
@@ -99,7 +101,7 @@ class App extends StatelessWidget {
99101
htUserContentPreferencesRepository:
100102
_htUserContentPreferencesRepository,
101103
htAppConfigRepository: _htAppConfigRepository,
102-
environment: _environment, // Pass environment
104+
environment: _environment,
103105
),
104106
),
105107
);

0 commit comments

Comments
 (0)