Line data Source code
1 : import 'package:redux/redux.dart';
2 :
3 : import '../../../actions.dart';
4 : import '../../../types.dart';
5 : import '../../redux/extensions/store_extensions.dart';
6 : import '../../utils/red_fire_locator.dart';
7 :
8 : class LaunchUrlMiddleware<T extends RedFireState>
9 : extends TypedMiddleware<T, LaunchUrlAction> {
10 1 : LaunchUrlMiddleware()
11 2 : : super((store, action, next) async {
12 1 : next(action);
13 :
14 : try {
15 1 : final platformService = RedFireLocator.getPlatformService();
16 :
17 2 : await platformService.launchUrl(action.url);
18 : } catch (error, trace) {
19 1 : store.dispatchProblem(error, trace);
20 : }
21 : });
22 : }
|