Skip to content

Commit 6c21fc6

Browse files
authored
Merge pull request #41 from headlines-toolkit/feature_add_device_preview_for_demo_mode
Feature add device preview for demo mode
2 parents 43cc94c + dc5bfff commit 6c21fc6

File tree

4 files changed

+54
-14
lines changed

4 files changed

+54
-14
lines changed

lib/bootstrap.dart

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import 'package:ht_main/shared/localization/en_timeago_messages.dart';
1919
import 'package:ht_shared/ht_shared.dart';
2020
import 'package:timeago/timeago.dart' as timeago;
2121

22-
Future<void> bootstrap(app_config.AppConfig appConfig) async {
22+
Future<Widget> bootstrap(app_config.AppConfig appConfig) async {
2323
WidgetsFlutterBinding.ensureInitialized();
2424
Bloc.observer = const AppBlocObserver();
2525

@@ -205,17 +205,15 @@ Future<void> bootstrap(app_config.AppConfig appConfig) async {
205205
dataClient: appConfigClient,
206206
);
207207

208-
runApp(
209-
App(
210-
htAuthenticationRepository: authenticationRepository,
211-
htHeadlinesRepository: headlinesRepository,
212-
htCategoriesRepository: categoriesRepository,
213-
htCountriesRepository: countriesRepository,
214-
htSourcesRepository: sourcesRepository,
215-
htUserAppSettingsRepository: userAppSettingsRepository,
216-
htUserContentPreferencesRepository: userContentPreferencesRepository,
217-
htAppConfigRepository: appConfigRepository,
218-
kvStorageService: kvStorage,
219-
),
208+
return App(
209+
htAuthenticationRepository: authenticationRepository,
210+
htHeadlinesRepository: headlinesRepository,
211+
htCategoriesRepository: categoriesRepository,
212+
htCountriesRepository: countriesRepository,
213+
htSourcesRepository: sourcesRepository,
214+
htUserAppSettingsRepository: userAppSettingsRepository,
215+
htUserContentPreferencesRepository: userContentPreferencesRepository,
216+
htAppConfigRepository: appConfigRepository,
217+
kvStorageService: kvStorage,
220218
);
221219
}

lib/main.dart

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
import 'package:flutter/foundation.dart';
2+
import 'package:flutter/material.dart';
3+
import 'package:device_preview/device_preview.dart';
14
import 'package:ht_main/app/config/config.dart';
25
import 'package:ht_main/bootstrap.dart';
36

@@ -12,5 +15,19 @@ void main() async {
1215
AppEnvironment.development => AppConfig.development(),
1316
AppEnvironment.demo => AppConfig.demo(),
1417
};
15-
await bootstrap(appConfig);
18+
19+
final appWidget = await bootstrap(appConfig);
20+
21+
if (appConfig.environment == AppEnvironment.demo) {
22+
runApp(
23+
DevicePreview(
24+
enabled: !kReleaseMode,
25+
builder: (context) => appWidget,
26+
tools: const [DeviceSection()],
27+
28+
),
29+
);
30+
} else {
31+
runApp(appWidget);
32+
}
1633
}

pubspec.lock

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,22 @@ packages:
153153
url: "https://pub.dev"
154154
source: hosted
155155
version: "1.0.2"
156+
device_frame:
157+
dependency: transitive
158+
description:
159+
name: device_frame
160+
sha256: d031a06f5d6f4750009672db98a5aa1536aa4a231713852469ce394779a23d75
161+
url: "https://pub.dev"
162+
source: hosted
163+
version: "1.2.0"
164+
device_preview:
165+
dependency: "direct main"
166+
description:
167+
name: device_preview
168+
sha256: a694acdd3894b4c7d600f4ee413afc4ff917f76026b97ab06575fe886429ef19
169+
url: "https://pub.dev"
170+
source: hosted
171+
version: "1.2.0"
156172
diff_match_patch:
157173
dependency: transitive
158174
description:
@@ -277,6 +293,14 @@ packages:
277293
description: flutter
278294
source: sdk
279295
version: "0.0.0"
296+
freezed_annotation:
297+
dependency: transitive
298+
description:
299+
name: freezed_annotation
300+
sha256: c2e2d632dd9b8a2b7751117abcfc2b4888ecfe181bd9fca7170d9ef02e595fe2
301+
url: "https://pub.dev"
302+
source: hosted
303+
version: "2.4.4"
280304
frontend_server_client:
281305
dependency: transitive
282306
description:

pubspec.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ environment:
88
dependencies:
99
bloc: ^9.0.0
1010
bloc_concurrency: ^0.3.0
11+
device_preview: ^1.2.0
1112
equatable: ^2.0.7
1213
flex_color_scheme: ^8.1.1
1314
flutter:

0 commit comments

Comments
 (0)