@@ -27,38 +27,50 @@ import { isSwSupported, isWindowSupported } from '../api/isSupported';
27
27
import { MessagingService } from '../messaging-service' ;
28
28
import { _registerComponent } from '@firebase/app-exp' ;
29
29
30
- const messagingFactory : InstanceFactory < 'messaging-exp' > = (
30
+ const WindowMessagingFactory : InstanceFactory < 'messaging-exp' > = (
31
31
container : ComponentContainer
32
32
) => {
33
+ // Top-level 'await' requires 'module' option set to 'esnext' or 'system', and 'target' option
34
+ // set to 'es2017' or higher. For compatibility, use async expression here.
35
+ void ( async ( ) => {
36
+ if ( ! ( await isWindowSupported ( ) ) ) {
37
+ throw ERROR_FACTORY . create ( ErrorCode . UNSUPPORTED_BROWSER ) ;
38
+ }
39
+ } ) ( ) ;
40
+
33
41
return new MessagingService (
34
42
container . getProvider ( 'app-exp' ) . getImmediate ( ) ,
35
43
container . getProvider ( 'installations-exp-internal' ) . getImmediate ( ) ,
36
44
container . getProvider ( 'analytics-internal' )
37
45
) ;
38
46
} ;
39
47
40
- export function registerWindowMessaging ( ) : void {
48
+ const SwMessagingFactory : InstanceFactory < 'messaging-exp' > = (
49
+ container : ComponentContainer
50
+ ) => {
41
51
// Top-level 'await' requires 'module' option set to 'esnext' or 'system', and 'target' option
42
52
// set to 'es2017' or higher. For compatibility, use async expression here.
43
53
void ( async ( ) => {
44
- if ( ! ( await isWindowSupported ( ) ) ) {
54
+ if ( ! ( await isSwSupported ( ) ) ) {
45
55
throw ERROR_FACTORY . create ( ErrorCode . UNSUPPORTED_BROWSER ) ;
46
56
}
47
57
} ) ( ) ;
48
58
59
+ return new MessagingService (
60
+ container . getProvider ( 'app-exp' ) . getImmediate ( ) ,
61
+ container . getProvider ( 'installations-exp-internal' ) . getImmediate ( ) ,
62
+ container . getProvider ( 'analytics-internal' )
63
+ ) ;
64
+ } ;
65
+
66
+ export function registerWindowMessaging ( ) : void {
49
67
_registerComponent (
50
- new Component ( 'messaging-exp' , messagingFactory , ComponentType . PUBLIC )
68
+ new Component ( 'messaging-exp' , WindowMessagingFactory , ComponentType . PUBLIC )
51
69
) ;
52
70
}
53
71
54
72
export function registerSwMessaging ( ) : void {
55
- void ( async ( ) => {
56
- if ( ! ( await isSwSupported ( ) ) ) {
57
- throw ERROR_FACTORY . create ( ErrorCode . UNSUPPORTED_BROWSER ) ;
58
- }
59
- } ) ( ) ;
60
-
61
73
_registerComponent (
62
- new Component ( 'messaging-exp' , messagingFactory , ComponentType . PUBLIC )
74
+ new Component ( 'messaging-exp' , SwMessagingFactory , ComponentType . PUBLIC )
63
75
) ;
64
76
}
0 commit comments