TF-2460 Use conditional export for BroadcastChannel to avoid failed compilation
This commit is contained in:
@@ -44,6 +44,7 @@ export 'utils/platform_info.dart';
|
|||||||
export 'utils/file_utils.dart';
|
export 'utils/file_utils.dart';
|
||||||
export 'utils/option_param_mixin.dart';
|
export 'utils/option_param_mixin.dart';
|
||||||
export 'utils/print_utils.dart';
|
export 'utils/print_utils.dart';
|
||||||
|
export 'utils/broadcast_channel/broadcast_channel.dart';
|
||||||
|
|
||||||
// Views
|
// Views
|
||||||
export 'presentation/views/text/slogan_builder.dart';
|
export 'presentation/views/text/slogan_builder.dart';
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
export 'broadcast_channel_stub.dart' if (dart.library.html) 'broadcast_channel_web.dart';
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
class BroadcastChannel {
|
||||||
|
final String name;
|
||||||
|
|
||||||
|
BroadcastChannel(this.name);
|
||||||
|
|
||||||
|
Stream<dynamic> get onMessage => const Stream.empty();
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export 'dart:html' show BroadcastChannel;
|
||||||
@@ -1,12 +1,13 @@
|
|||||||
|
|
||||||
import 'package:core/utils/app_logger.dart';
|
import 'package:core/utils/app_logger.dart';
|
||||||
|
import 'package:core/utils/broadcast_channel/broadcast_channel.dart';
|
||||||
import 'package:core/utils/platform_info.dart';
|
import 'package:core/utils/platform_info.dart';
|
||||||
import 'package:firebase_messaging/firebase_messaging.dart';
|
import 'package:firebase_messaging/firebase_messaging.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
import 'package:tmail_ui_user/features/push_notification/presentation/controller/fcm_message_controller.dart';
|
import 'package:tmail_ui_user/features/push_notification/presentation/controller/fcm_message_controller.dart';
|
||||||
import 'package:tmail_ui_user/features/push_notification/presentation/services/fcm_service.dart';
|
import 'package:tmail_ui_user/features/push_notification/presentation/services/fcm_service.dart';
|
||||||
import 'package:tmail_ui_user/main/utils/app_config.dart';
|
import 'package:tmail_ui_user/main/utils/app_config.dart';
|
||||||
import 'package:universal_html/html.dart' as html;
|
import 'package:universal_html/html.dart' as html show MessageEvent;
|
||||||
|
|
||||||
@pragma('vm:entry-point')
|
@pragma('vm:entry-point')
|
||||||
Future<void> handleFirebaseBackgroundMessage(RemoteMessage message) async {
|
Future<void> handleFirebaseBackgroundMessage(RemoteMessage message) async {
|
||||||
@@ -54,8 +55,12 @@ class FcmReceiver {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _onMessageBroadcastChannel() {
|
void _onMessageBroadcastChannel() {
|
||||||
final broadcast = html.BroadcastChannel('background-message');
|
final broadcast = BroadcastChannel('background-message');
|
||||||
broadcast.onMessage.listen(FcmService.instance.handleMessageEventBroadcastChannel);
|
broadcast.onMessage.listen((event) {
|
||||||
|
if (event is html.MessageEvent) {
|
||||||
|
FcmService.instance.handleMessageEventBroadcastChannel(event);
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<String?> _getInitialToken() async {
|
Future<String?> _getInitialToken() async {
|
||||||
|
|||||||
Reference in New Issue
Block a user