@stream-io/video-react-native-sdk 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/commonjs/components/Call/CallControls/HangupCallButton.js +4 -6
  3. package/dist/commonjs/components/Call/CallControls/HangupCallButton.js.map +1 -1
  4. package/dist/commonjs/hooks/push/index.js +4 -0
  5. package/dist/commonjs/hooks/push/index.js.map +1 -1
  6. package/dist/commonjs/hooks/push/useInitAndroidTokenAndRest.js +8 -2
  7. package/dist/commonjs/hooks/push/useInitAndroidTokenAndRest.js.map +1 -1
  8. package/dist/commonjs/hooks/push/useIosInitRemoteNotifications.js +34 -0
  9. package/dist/commonjs/hooks/push/useIosInitRemoteNotifications.js.map +1 -0
  10. package/dist/commonjs/hooks/push/useIosVoipPushEventsSetupEffect.js +50 -4
  11. package/dist/commonjs/hooks/push/useIosVoipPushEventsSetupEffect.js.map +1 -1
  12. package/dist/commonjs/hooks/push/useProcessPushNonRingingCallEffect.js +50 -0
  13. package/dist/commonjs/hooks/push/useProcessPushNonRingingCallEffect.js.map +1 -0
  14. package/dist/commonjs/utils/StreamVideoRN/index.js +33 -0
  15. package/dist/commonjs/utils/StreamVideoRN/index.js.map +1 -1
  16. package/dist/commonjs/utils/internal/newNotificationCallbacks.js +18 -0
  17. package/dist/commonjs/utils/internal/newNotificationCallbacks.js.map +1 -0
  18. package/dist/commonjs/utils/internal/pushLogoutCallback.js +18 -0
  19. package/dist/commonjs/utils/internal/pushLogoutCallback.js.map +1 -0
  20. package/dist/commonjs/utils/push/android.js +182 -68
  21. package/dist/commonjs/utils/push/android.js.map +1 -1
  22. package/dist/commonjs/utils/push/ios.js +107 -1
  23. package/dist/commonjs/utils/push/ios.js.map +1 -1
  24. package/dist/commonjs/utils/push/libs.js +34 -1
  25. package/dist/commonjs/utils/push/libs.js.map +1 -1
  26. package/dist/commonjs/utils/push/rxSubjects.js +8 -1
  27. package/dist/commonjs/utils/push/rxSubjects.js.map +1 -1
  28. package/dist/commonjs/utils/push/utils.js +29 -1
  29. package/dist/commonjs/utils/push/utils.js.map +1 -1
  30. package/dist/commonjs/version.js +1 -1
  31. package/dist/module/components/Call/CallControls/HangupCallButton.js +3 -4
  32. package/dist/module/components/Call/CallControls/HangupCallButton.js.map +1 -1
  33. package/dist/module/hooks/push/index.js +4 -0
  34. package/dist/module/hooks/push/index.js.map +1 -1
  35. package/dist/module/hooks/push/useInitAndroidTokenAndRest.js +8 -2
  36. package/dist/module/hooks/push/useInitAndroidTokenAndRest.js.map +1 -1
  37. package/dist/module/hooks/push/useIosInitRemoteNotifications.js +28 -0
  38. package/dist/module/hooks/push/useIosInitRemoteNotifications.js.map +1 -0
  39. package/dist/module/hooks/push/useIosVoipPushEventsSetupEffect.js +49 -4
  40. package/dist/module/hooks/push/useIosVoipPushEventsSetupEffect.js.map +1 -1
  41. package/dist/module/hooks/push/useProcessPushNonRingingCallEffect.js +44 -0
  42. package/dist/module/hooks/push/useProcessPushNonRingingCallEffect.js.map +1 -0
  43. package/dist/module/utils/StreamVideoRN/index.js +32 -0
  44. package/dist/module/utils/StreamVideoRN/index.js.map +1 -1
  45. package/dist/module/utils/internal/newNotificationCallbacks.js +10 -0
  46. package/dist/module/utils/internal/newNotificationCallbacks.js.map +1 -0
  47. package/dist/module/utils/internal/pushLogoutCallback.js +10 -0
  48. package/dist/module/utils/internal/pushLogoutCallback.js.map +1 -0
  49. package/dist/module/utils/push/android.js +184 -70
  50. package/dist/module/utils/push/android.js.map +1 -1
  51. package/dist/module/utils/push/ios.js +103 -1
  52. package/dist/module/utils/push/ios.js.map +1 -1
  53. package/dist/module/utils/push/libs.js +31 -1
  54. package/dist/module/utils/push/libs.js.map +1 -1
  55. package/dist/module/utils/push/rxSubjects.js +5 -0
  56. package/dist/module/utils/push/rxSubjects.js.map +1 -1
  57. package/dist/module/utils/push/utils.js +27 -0
  58. package/dist/module/utils/push/utils.js.map +1 -1
  59. package/dist/module/version.js +1 -1
  60. package/dist/typescript/hooks/push/index.d.ts.map +1 -1
  61. package/dist/typescript/hooks/push/useInitAndroidTokenAndRest.d.ts +1 -1
  62. package/dist/typescript/hooks/push/useInitAndroidTokenAndRest.d.ts.map +1 -1
  63. package/dist/typescript/hooks/push/useIosInitRemoteNotifications.d.ts +5 -0
  64. package/dist/typescript/hooks/push/useIosInitRemoteNotifications.d.ts.map +1 -0
  65. package/dist/typescript/hooks/push/useIosVoipPushEventsSetupEffect.d.ts.map +1 -1
  66. package/dist/typescript/hooks/push/useProcessPushNonRingingCallEffect.d.ts +7 -0
  67. package/dist/typescript/hooks/push/useProcessPushNonRingingCallEffect.d.ts.map +1 -0
  68. package/dist/typescript/utils/StreamVideoRN/index.d.ts +12 -0
  69. package/dist/typescript/utils/StreamVideoRN/index.d.ts.map +1 -1
  70. package/dist/typescript/utils/StreamVideoRN/types.d.ts +40 -6
  71. package/dist/typescript/utils/StreamVideoRN/types.d.ts.map +1 -1
  72. package/dist/typescript/utils/internal/newNotificationCallbacks.d.ts +10 -0
  73. package/dist/typescript/utils/internal/newNotificationCallbacks.d.ts.map +1 -0
  74. package/dist/typescript/utils/internal/pushLogoutCallback.d.ts +8 -0
  75. package/dist/typescript/utils/internal/pushLogoutCallback.d.ts.map +1 -0
  76. package/dist/typescript/utils/push/android.d.ts +1 -1
  77. package/dist/typescript/utils/push/android.d.ts.map +1 -1
  78. package/dist/typescript/utils/push/ios.d.ts +4 -0
  79. package/dist/typescript/utils/push/ios.d.ts.map +1 -1
  80. package/dist/typescript/utils/push/libs.d.ts +6 -0
  81. package/dist/typescript/utils/push/libs.d.ts.map +1 -1
  82. package/dist/typescript/utils/push/rxSubjects.d.ts +9 -0
  83. package/dist/typescript/utils/push/rxSubjects.d.ts.map +1 -1
  84. package/dist/typescript/utils/push/utils.d.ts +9 -1
  85. package/dist/typescript/utils/push/utils.d.ts.map +1 -1
  86. package/dist/typescript/version.d.ts +1 -1
  87. package/expo-config-plugin/dist/index.d.ts +3 -2
  88. package/expo-config-plugin/dist/index.js +9 -5
  89. package/expo-config-plugin/dist/withPushAppDelegate.d.ts +4 -0
  90. package/expo-config-plugin/dist/withPushAppDelegate.js +119 -0
  91. package/expo-config-plugin/dist/withiOSInfoPlist.d.ts +2 -1
  92. package/expo-config-plugin/dist/withiOSInfoPlist.js +6 -1
  93. package/package.json +19 -3
  94. package/src/components/Call/CallControls/HangupCallButton.tsx +4 -4
  95. package/src/hooks/push/index.ts +4 -0
  96. package/src/hooks/push/useInitAndroidTokenAndRest.ts +8 -2
  97. package/src/hooks/push/useIosInitRemoteNotifications.ts +29 -0
  98. package/src/hooks/push/useIosVoipPushEventsSetupEffect.ts +50 -3
  99. package/src/hooks/push/useProcessPushNonRingingCallEffect.ts +44 -0
  100. package/src/utils/StreamVideoRN/index.ts +36 -0
  101. package/src/utils/StreamVideoRN/types.ts +47 -6
  102. package/src/utils/internal/newNotificationCallbacks.ts +29 -0
  103. package/src/utils/internal/pushLogoutCallback.ts +17 -0
  104. package/src/utils/push/android.ts +203 -74
  105. package/src/utils/push/ios.ts +120 -1
  106. package/src/utils/push/libs.ts +48 -2
  107. package/src/utils/push/rxSubjects.ts +9 -0
  108. package/src/utils/push/utils.ts +35 -1
  109. package/src/version.ts +1 -1
  110. /package/expo-config-plugin/dist/{withAppDelegate.d.ts → withStreamVideoReactNativeSDKAppDelegate.d.ts} +0 -0
  111. /package/expo-config-plugin/dist/{withAppDelegate.js → withStreamVideoReactNativeSDKAppDelegate.js} +0 -0
@@ -10,6 +10,7 @@ var _reactNative2 = require("react-native");
10
10
  var _libs = require("./libs");
11
11
  var _rxSubjects = require("./rxSubjects");
12
12
  var _utils = require("./utils");
13
+ var _pushLogoutCallback = require("../internal/pushLogoutCallback");
13
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
16
  const ACCEPT_CALL_ACTION_ID = 'accept';
@@ -19,33 +20,96 @@ function setupFirebaseHandlerAndroid(pushConfig) {
19
20
  if (_reactNative2.Platform.OS !== 'android') {
20
21
  return;
21
22
  }
22
- const messaging = (0, _libs.getFirebaseMessagingLib)();
23
- messaging().setBackgroundMessageHandler(async msg => await firebaseMessagingOnMessageHandler(msg, pushConfig));
24
- // messaging().onMessage(firebaseMessagingOnMessageHandler); // this is to listen to foreground messages, which we dont need for now
23
+ if (pushConfig.isExpo) {
24
+ const Notifications = (0, _libs.getExpoNotificationsLib)();
25
+ const TaskManager = (0, _libs.getExpoTaskManagerLib)();
26
+ const BACKGROUND_NOTIFICATION_TASK = 'STREAM-VIDEO-SDK-INTERNAL-BACKGROUND-NOTIFICATION-TASK';
27
+ TaskManager.defineTask(BACKGROUND_NOTIFICATION_TASK, _ref => {
28
+ var _data$notification;
29
+ let {
30
+ data,
31
+ error
32
+ } = _ref;
33
+ if (error) {
34
+ return;
35
+ }
36
+ // @ts-ignore
37
+ const dataToProcess = (_data$notification = data.notification) === null || _data$notification === void 0 ? void 0 : _data$notification.data;
38
+ firebaseMessagingOnMessageHandler(dataToProcess, pushConfig);
39
+ });
40
+ // background handler
41
+ Notifications.registerTaskAsync(BACKGROUND_NOTIFICATION_TASK);
42
+ // foreground handler
43
+ Notifications.setNotificationHandler({
44
+ handleNotification: async notification => {
45
+ var _notification$request;
46
+ // @ts-ignore
47
+ const trigger = notification === null || notification === void 0 || (_notification$request = notification.request) === null || _notification$request === void 0 ? void 0 : _notification$request.trigger;
48
+ if (trigger.type === 'push') {
49
+ var _trigger$remoteMessag;
50
+ const data = trigger === null || trigger === void 0 || (_trigger$remoteMessag = trigger.remoteMessage) === null || _trigger$remoteMessag === void 0 ? void 0 : _trigger$remoteMessag.data;
51
+ if ((data === null || data === void 0 ? void 0 : data.sender) === 'stream.video') {
52
+ await firebaseMessagingOnMessageHandler(data, pushConfig);
53
+ return {
54
+ shouldShowAlert: false,
55
+ shouldPlaySound: false,
56
+ shouldSetBadge: false
57
+ };
58
+ }
59
+ }
60
+ return {
61
+ shouldShowAlert: true,
62
+ shouldPlaySound: false,
63
+ shouldSetBadge: false
64
+ };
65
+ }
66
+ });
67
+ } else {
68
+ const messaging = (0, _libs.getFirebaseMessagingLib)();
69
+ messaging().setBackgroundMessageHandler(async msg => await firebaseMessagingOnMessageHandler(msg.data, pushConfig));
70
+ messaging().onMessage(msg => firebaseMessagingOnMessageHandler(msg.data, pushConfig)); // this is to listen to foreground messages, which we dont need for now
71
+ }
72
+
25
73
  _reactNative.default.onBackgroundEvent(async event => {
26
- // NOTE: When app was opened from a quit state, we will never hit this when on accept event as app will open and the click event will go to foreground
27
74
  await onNotifeeEvent(event, pushConfig);
28
75
  });
29
76
  _reactNative.default.onForegroundEvent(event => {
30
- // NOTE: When app was opened from a quit state, we will never hit this when on accept event as app will open and go to foreground immediately
31
77
  onNotifeeEvent(event, pushConfig);
32
78
  });
33
79
  }
34
80
 
35
81
  /** Send token to stream, create notification channel, */
36
- async function initAndroidPushToken(client, pushConfig) {
37
- if (_reactNative2.Platform.OS !== 'android') {
82
+ async function initAndroidPushToken(client, pushConfig, setUnsubscribeListener) {
83
+ if (_reactNative2.Platform.OS !== 'android' || !pushConfig.android.pushProviderName) {
38
84
  return;
39
85
  }
40
- const messaging = (0, _libs.getFirebaseMessagingLib)();
41
- const token = await messaging().getToken();
42
- const push_provider_name = pushConfig.android.pushProviderName;
43
- await client.addDevice(token, 'firebase', push_provider_name);
44
- }
45
- const firebaseMessagingOnMessageHandler = async (message, pushConfig) => {
46
- if (_reactNative2.Platform.OS !== 'android') {
47
- return;
86
+ const setDeviceToken = async token => {
87
+ (0, _pushLogoutCallback.setPushLogoutCallback)(() => {
88
+ client.removeDevice(token).catch(err => {
89
+ console.warn('Failed to remove voip token from stream', err);
90
+ });
91
+ });
92
+ const push_provider_name = pushConfig.android.pushProviderName;
93
+ await client.addDevice(token, 'firebase', push_provider_name);
94
+ };
95
+ if (pushConfig.isExpo) {
96
+ const expoNotificationsLib = (0, _libs.getExpoNotificationsLib)();
97
+ const subscription = expoNotificationsLib.addPushTokenListener(devicePushToken => {
98
+ setDeviceToken(devicePushToken.data);
99
+ });
100
+ setUnsubscribeListener(() => subscription.remove());
101
+ const devicePushToken = await expoNotificationsLib.getDevicePushTokenAsync();
102
+ const token = devicePushToken.data;
103
+ await setDeviceToken(token);
104
+ } else {
105
+ const messaging = (0, _libs.getFirebaseMessagingLib)();
106
+ const unsubscribe = messaging().onTokenRefresh(refreshedToken => setDeviceToken(refreshedToken));
107
+ setUnsubscribeListener(unsubscribe);
108
+ const token = await messaging().getToken();
109
+ await setDeviceToken(token);
48
110
  }
111
+ }
112
+ const firebaseMessagingOnMessageHandler = async (data, pushConfig) => {
49
113
  /* Example data from firebase
50
114
  "message": {
51
115
  "data": {
@@ -61,46 +125,89 @@ const firebaseMessagingOnMessageHandler = async (message, pushConfig) => {
61
125
  // other stuff
62
126
  }
63
127
  */
64
- const data = message.data;
65
128
  if (!data || data.sender !== 'stream.video') {
66
129
  return;
67
130
  }
68
- await _reactNative.default.createChannel(pushConfig.android.incomingCallChannel);
69
- const {
70
- getTitle,
71
- getBody
72
- } = pushConfig.android.incomingCallNotificationTextGetters;
73
- const channelId = pushConfig.android.incomingCallChannel.id;
74
- const createdUserName = data.created_by_display_name;
75
- await _reactNative.default.displayNotification({
76
- title: getTitle(createdUserName),
77
- body: getBody(createdUserName),
78
- data,
79
- android: {
80
- channelId,
81
- pressAction: {
82
- id: 'default',
83
- launchActivity: 'default' // open the app when the notification is pressed
84
- },
85
-
86
- actions: [{
87
- title: 'Decline',
88
- pressAction: {
89
- id: DECLINE_CALL_ACTION_ID
90
- }
91
- }, {
92
- title: 'Accept',
131
+ if (data.type === 'call.ring') {
132
+ const incomingCallChannel = pushConfig.android.incomingCallChannel;
133
+ const incomingCallNotificationTextGetters = pushConfig.android.incomingCallNotificationTextGetters;
134
+ if (!incomingCallChannel || !incomingCallNotificationTextGetters) {
135
+ console.debug("Can't show incoming call notification as either or both incomingCallChannel and was not provided");
136
+ return;
137
+ }
138
+ await _reactNative.default.createChannel(incomingCallChannel);
139
+ const {
140
+ getTitle,
141
+ getBody
142
+ } = incomingCallNotificationTextGetters;
143
+ const createdUserName = data.created_by_display_name;
144
+ const channelId = incomingCallChannel.id;
145
+ await _reactNative.default.displayNotification({
146
+ title: getTitle(createdUserName),
147
+ body: getBody(createdUserName),
148
+ data,
149
+ android: {
150
+ channelId,
93
151
  pressAction: {
94
- id: ACCEPT_CALL_ACTION_ID,
152
+ id: 'default',
95
153
  launchActivity: 'default' // open the app when the notification is pressed
96
- }
97
- }],
154
+ },
155
+
156
+ actions: [{
157
+ title: 'Decline',
158
+ pressAction: {
159
+ id: DECLINE_CALL_ACTION_ID
160
+ }
161
+ }, {
162
+ title: 'Accept',
163
+ pressAction: {
164
+ id: ACCEPT_CALL_ACTION_ID,
165
+ launchActivity: 'default' // open the app when the notification is pressed
166
+ }
167
+ }],
98
168
 
99
- timeoutAfter: 60000 // 60 seconds, after which the notification will be dismissed automatically
169
+ timeoutAfter: 60000 // 60 seconds, after which the notification will be dismissed automatically
170
+ }
171
+ });
172
+ } else {
173
+ // the other types are call.live_started and call.notification
174
+ const callChannel = pushConfig.android.callChannel;
175
+ const callNotificationTextGetters = pushConfig.android.callNotificationTextGetters;
176
+ if (!callChannel || !callNotificationTextGetters) {
177
+ console.debug("Can't show call notification as either or both callChannel and callNotificationTextGetters is not provided");
178
+ return;
100
179
  }
101
- });
102
- };
180
+ await _reactNative.default.createChannel(callChannel);
181
+ const channelId = callChannel.id;
182
+ const {
183
+ getTitle,
184
+ getBody
185
+ } = callNotificationTextGetters;
186
+ const createdUserName = data.created_by_display_name;
187
+ // we can safely cast to string because the data is from "stream.video"
188
+ const type = data.type;
189
+ await _reactNative.default.displayNotification({
190
+ title: getTitle(type, createdUserName),
191
+ body: getBody(type, createdUserName),
192
+ data,
193
+ android: {
194
+ channelId,
195
+ pressAction: {
196
+ id: 'default',
197
+ launchActivity: 'default' // open the app when the notification is pressed
198
+ },
199
+
200
+ timeoutAfter: 60000 // 60 seconds, after which the notification will be dismissed automatically
201
+ }
202
+ });
103
203
 
204
+ const cid = data.call_cid;
205
+ _rxSubjects.pushNonRingingCallData$.next({
206
+ cid,
207
+ type
208
+ });
209
+ }
210
+ };
104
211
  const onNotifeeEvent = async (event, pushConfig) => {
105
212
  const {
106
213
  type,
@@ -118,29 +225,36 @@ const onNotifeeEvent = async (event, pushConfig) => {
118
225
 
119
226
  // we can safely cast to string because the data is from "stream.video"
120
227
  const call_cid = data.call_cid;
228
+ if (data.type === 'call.ring') {
229
+ // check if we have observers for the call cid (this means the app is in the foreground state)
230
+ const hasObservers = _rxSubjects.pushAcceptedIncomingCallCId$.observed && _rxSubjects.pushRejectedIncomingCallCId$.observed;
121
231
 
122
- // check if we have observers for the call cid (this means the app is in the foreground state)
123
- const hasObservers = _rxSubjects.pushAcceptedIncomingCallCId$.observed && _rxSubjects.pushRejectedIncomingCallCId$.observed;
124
-
125
- // Check if we need to decline the call
126
- const didPressDecline = type === _reactNative.EventType.ACTION_PRESS && pressAction.id === DECLINE_CALL_ACTION_ID;
127
- const didDismiss = type === _reactNative.EventType.DISMISSED;
128
- const mustDecline = didPressDecline || didDismiss;
129
- // Check if we need to accept the call
130
- const mustAccept = type === _reactNative.EventType.ACTION_PRESS && pressAction.id === ACCEPT_CALL_ACTION_ID;
131
- if (mustAccept) {
132
- _rxSubjects.pushAcceptedIncomingCallCId$.next(call_cid);
133
- // NOTE: accept will be handled by the app with rxjs observers as the app will go to foreground always
134
- } else if (mustDecline) {
135
- _rxSubjects.pushRejectedIncomingCallCId$.next(call_cid);
136
- if (hasObservers) {
137
- // if we had observers we can return here as the observers will handle the call as the app is in the foreground state
138
- return;
232
+ // Check if we need to decline the call
233
+ const didPressDecline = type === _reactNative.EventType.ACTION_PRESS && pressAction.id === DECLINE_CALL_ACTION_ID;
234
+ const didDismiss = type === _reactNative.EventType.DISMISSED;
235
+ const mustDecline = didPressDecline || didDismiss;
236
+ // Check if we need to accept the call
237
+ const mustAccept = type === _reactNative.EventType.ACTION_PRESS && pressAction.id === ACCEPT_CALL_ACTION_ID;
238
+ if (mustAccept) {
239
+ _rxSubjects.pushAcceptedIncomingCallCId$.next(call_cid);
240
+ // NOTE: accept will be handled by the app with rxjs observers as the app will go to foreground always
241
+ } else if (mustDecline) {
242
+ _rxSubjects.pushRejectedIncomingCallCId$.next(call_cid);
243
+ if (hasObservers) {
244
+ // if we had observers we can return here as the observers will handle the call as the app is in the foreground state
245
+ return;
246
+ }
247
+ await (0, _utils.processCallFromPushInBackground)(pushConfig, call_cid, 'decline');
248
+ } else if (type === _reactNative.EventType.PRESS) {
249
+ _rxSubjects.pushTappedIncomingCallCId$.next(call_cid);
250
+ // pressed state will be handled by the app with rxjs observers as the app will go to foreground always
251
+ }
252
+ } else {
253
+ if (type === _reactNative.EventType.PRESS) {
254
+ var _pushConfig$onTapNonR;
255
+ _rxSubjects.pushTappedIncomingCallCId$.next(call_cid);
256
+ (_pushConfig$onTapNonR = pushConfig.onTapNonRingingCallNotification) === null || _pushConfig$onTapNonR === void 0 || _pushConfig$onTapNonR.call(pushConfig, call_cid, data.type);
139
257
  }
140
- await (0, _utils.processCallFromPushInBackground)(pushConfig, call_cid, 'decline');
141
- } else if (type === _reactNative.EventType.PRESS) {
142
- _rxSubjects.pushTappedIncomingCallCId$.next(call_cid);
143
- // pressed state will be handled by the app with rxjs observers as the app will go to foreground always
144
258
  }
145
259
  };
146
260
  //# sourceMappingURL=android.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","_interopRequireWildcard","require","_reactNative2","_libs","_rxSubjects","_utils","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ACCEPT_CALL_ACTION_ID","DECLINE_CALL_ACTION_ID","setupFirebaseHandlerAndroid","pushConfig","Platform","OS","messaging","getFirebaseMessagingLib","setBackgroundMessageHandler","msg","firebaseMessagingOnMessageHandler","notifee","onBackgroundEvent","event","onNotifeeEvent","onForegroundEvent","initAndroidPushToken","client","token","getToken","push_provider_name","android","pushProviderName","addDevice","message","data","sender","createChannel","incomingCallChannel","getTitle","getBody","incomingCallNotificationTextGetters","channelId","id","createdUserName","created_by_display_name","displayNotification","title","body","pressAction","launchActivity","actions","timeoutAfter","type","detail","notification","notificationId","call_cid","hasObservers","pushAcceptedIncomingCallCId$","observed","pushRejectedIncomingCallCId$","didPressDecline","EventType","ACTION_PRESS","didDismiss","DISMISSED","mustDecline","mustAccept","next","processCallFromPushInBackground","PRESS","pushTappedIncomingCallCId$"],"sourceRoot":"../../../../src","sources":["utils/push/android.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","_interopRequireWildcard","require","_reactNative2","_libs","_rxSubjects","_utils","_pushLogoutCallback","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ACCEPT_CALL_ACTION_ID","DECLINE_CALL_ACTION_ID","setupFirebaseHandlerAndroid","pushConfig","Platform","OS","isExpo","Notifications","getExpoNotificationsLib","TaskManager","getExpoTaskManagerLib","BACKGROUND_NOTIFICATION_TASK","defineTask","_ref","_data$notification","data","error","dataToProcess","notification","firebaseMessagingOnMessageHandler","registerTaskAsync","setNotificationHandler","handleNotification","_notification$request","trigger","request","type","_trigger$remoteMessag","remoteMessage","sender","shouldShowAlert","shouldPlaySound","shouldSetBadge","messaging","getFirebaseMessagingLib","setBackgroundMessageHandler","msg","onMessage","notifee","onBackgroundEvent","event","onNotifeeEvent","onForegroundEvent","initAndroidPushToken","client","setUnsubscribeListener","android","pushProviderName","setDeviceToken","token","setPushLogoutCallback","removeDevice","catch","err","console","warn","push_provider_name","addDevice","expoNotificationsLib","subscription","addPushTokenListener","devicePushToken","remove","getDevicePushTokenAsync","unsubscribe","onTokenRefresh","refreshedToken","getToken","incomingCallChannel","incomingCallNotificationTextGetters","debug","createChannel","getTitle","getBody","createdUserName","created_by_display_name","channelId","id","displayNotification","title","body","pressAction","launchActivity","actions","timeoutAfter","callChannel","callNotificationTextGetters","cid","call_cid","pushNonRingingCallData$","next","detail","notificationId","hasObservers","pushAcceptedIncomingCallCId$","observed","pushRejectedIncomingCallCId$","didPressDecline","EventType","ACTION_PRESS","didDismiss","DISMISSED","mustDecline","mustAccept","processCallFromPushInBackground","PRESS","pushTappedIncomingCallCId$","_pushConfig$onTapNonR","onTapNonRingingCallNotification"],"sourceRoot":"../../../../src","sources":["utils/push/android.ts"],"mappings":"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"}
@@ -3,9 +3,30 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.iosCallkeepRejectCall = exports.iosCallkeepAcceptCall = void 0;
6
+ exports.initIosNonVoipToken = initIosNonVoipToken;
7
+ exports.setupRemoteNotificationsHandleriOS = exports.iosCallkeepRejectCall = exports.iosCallkeepAcceptCall = void 0;
8
+ var _reactNative = require("react-native");
7
9
  var _rxSubjects = require("./rxSubjects");
8
10
  var _utils = require("./utils");
11
+ var _libs = require("./libs");
12
+ var _pushLogoutCallback = require("../internal/pushLogoutCallback");
13
+ var _reactNative2 = _interopRequireWildcard(require("@notifee/react-native"));
14
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
+ function processNonRingingNotificationStreamPayload(streamPayload) {
17
+ if ((streamPayload === null || streamPayload === void 0 ? void 0 : streamPayload.sender) === 'stream.video' && (streamPayload === null || streamPayload === void 0 ? void 0 : streamPayload.type) !== 'call.ring') {
18
+ const cid = streamPayload.call_cid;
19
+ const type = streamPayload.type;
20
+ _rxSubjects.pushNonRingingCallData$.next({
21
+ cid,
22
+ type
23
+ });
24
+ return {
25
+ cid,
26
+ type
27
+ };
28
+ }
29
+ }
9
30
  const iosCallkeepAcceptCall = (call_cid, callUUIDFromCallkeep) => {
10
31
  if (!shouldProcessCallFromCallkeep(call_cid, callUUIDFromCallkeep)) {
11
32
  return;
@@ -43,4 +64,89 @@ const shouldProcessCallFromCallkeep = (call_cid, callUUIDFromCallkeep) => {
43
64
  }
44
65
  return true;
45
66
  };
67
+ const setupRemoteNotificationsHandleriOS = pushConfig => {
68
+ if (_reactNative.Platform.OS !== 'ios') {
69
+ return;
70
+ }
71
+ _reactNative2.default.onForegroundEvent(_ref => {
72
+ let {
73
+ type,
74
+ detail
75
+ } = _ref;
76
+ if (type === _reactNative2.EventType.PRESS) {
77
+ var _detail$notification;
78
+ const streamPayload = (_detail$notification = detail.notification) === null || _detail$notification === void 0 || (_detail$notification = _detail$notification.data) === null || _detail$notification === void 0 ? void 0 : _detail$notification.stream;
79
+ const result = processNonRingingNotificationStreamPayload(streamPayload);
80
+ if (result) {
81
+ var _pushConfig$onTapNonR;
82
+ (_pushConfig$onTapNonR = pushConfig.onTapNonRingingCallNotification) === null || _pushConfig$onTapNonR === void 0 || _pushConfig$onTapNonR.call(pushConfig, result.cid, result.type);
83
+ }
84
+ }
85
+ });
86
+ if (pushConfig.isExpo) {
87
+ const Notifications = (0, _libs.getExpoNotificationsLib)();
88
+
89
+ // foreground handler (just to show the notifications on foreground)
90
+ Notifications.setNotificationHandler({
91
+ handleNotification: async () => {
92
+ return {
93
+ shouldShowAlert: true,
94
+ shouldPlaySound: true,
95
+ shouldSetBadge: false
96
+ };
97
+ }
98
+ });
99
+ }
100
+ };
101
+
102
+ /** Send token to stream */
103
+ exports.setupRemoteNotificationsHandleriOS = setupRemoteNotificationsHandleriOS;
104
+ async function initIosNonVoipToken(client, pushConfig, setUnsubscribeListener) {
105
+ if (_reactNative.Platform.OS !== 'ios' || !pushConfig.android.pushProviderName) {
106
+ return;
107
+ }
108
+ const setDeviceToken = async token => {
109
+ (0, _pushLogoutCallback.setPushLogoutCallback)(() => {
110
+ client.removeDevice(token).catch(err => {
111
+ console.warn('Failed to remove voip token from stream', err);
112
+ });
113
+ });
114
+ const push_provider_name = pushConfig.ios.pushProviderName;
115
+ await client.addDevice(token, 'apn', push_provider_name);
116
+ };
117
+ if (pushConfig.isExpo) {
118
+ const expoNotificationsLib = (0, _libs.getExpoNotificationsLib)();
119
+ const subscription = expoNotificationsLib.addPushTokenListener(devicePushToken => {
120
+ setDeviceToken(devicePushToken.data);
121
+ });
122
+ const subscriptionForReceive = expoNotificationsLib.addNotificationReceivedListener(event => {
123
+ // listen to foreground notifications
124
+ if (event.request.trigger.type === 'push') {
125
+ var _event$request$trigge;
126
+ const streamPayload = (_event$request$trigge = event.request.trigger.payload) === null || _event$request$trigge === void 0 ? void 0 : _event$request$trigge.stream;
127
+ processNonRingingNotificationStreamPayload(streamPayload);
128
+ }
129
+ });
130
+ setUnsubscribeListener(() => {
131
+ subscription.remove();
132
+ subscriptionForReceive.remove();
133
+ });
134
+ } else {
135
+ const pushNotificationIosLib = (0, _libs.getPushNotificationIosLib)();
136
+ pushNotificationIosLib.addEventListener('register', token => {
137
+ setDeviceToken(token);
138
+ });
139
+ pushNotificationIosLib.addEventListener('notification', notification => {
140
+ const data = notification.getData();
141
+ const streamPayload = data === null || data === void 0 ? void 0 : data.stream;
142
+ // listen to foreground notifications
143
+ processNonRingingNotificationStreamPayload(streamPayload);
144
+ notification.finish(pushNotificationIosLib.FetchResult.NoData);
145
+ });
146
+ setUnsubscribeListener(() => {
147
+ pushNotificationIosLib.removeEventListener('register');
148
+ pushNotificationIosLib.removeEventListener('notification');
149
+ });
150
+ }
151
+ }
46
152
  //# sourceMappingURL=ios.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_rxSubjects","require","_utils","iosCallkeepAcceptCall","call_cid","callUUIDFromCallkeep","shouldProcessCallFromCallkeep","voipCallkeepAcceptedCallOnNativeDialerMap$","next","uuid","cid","pushAcceptedIncomingCallCId$","voipCallkeepCallOnForegroundMap$","undefined","exports","iosCallkeepRejectCall","pushConfig","voipPushNotificationCallCId$","processCallFromPushInBackground"],"sourceRoot":"../../../../src","sources":["utils/push/ios.ts"],"mappings":";;;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AAIO,MAAME,qBAAqB,GAAGA,CACnCC,QAA4B,EAC5BC,oBAA4B,KACzB;EACH,IAAI,CAACC,6BAA6B,CAACF,QAAQ,EAAEC,oBAAoB,CAAC,EAAE;IAClE;EACF;EACA;EACAE,sDAA0C,CAACC,IAAI,CAAC;IAC9CC,IAAI,EAAEJ,oBAAoB;IAC1BK,GAAG,EAAEN;EACP,CAAC,CAAC;EACF;EACAO,wCAA4B,CAACH,IAAI,CAACJ,QAAQ,CAAC;EAC3C;EACAQ,4CAAgC,CAACJ,IAAI,CAACK,SAAS,CAAC;AAClD,CAAC;AAACC,OAAA,CAAAX,qBAAA,GAAAA,qBAAA;AAEK,MAAMY,qBAAqB,GAAG,MAAAA,CACnCX,QAA4B,EAC5BC,oBAA4B,EAC5BW,UAAsB,KACnB;EACH,IAAI,CAACV,6BAA6B,CAACF,QAAQ,EAAEC,oBAAoB,CAAC,EAAE;IAClE;EACF;EACA;EACAE,sDAA0C,CAACC,IAAI,CAACK,SAAS,CAAC;EAC1DD,4CAAgC,CAACJ,IAAI,CAACK,SAAS,CAAC;EAChDI,wCAA4B,CAACT,IAAI,CAACK,SAAS,CAAC;EAC5C,MAAM,IAAAK,sCAA+B,EAACF,UAAU,EAAEZ,QAAQ,EAAE,SAAS,CAAC;AACxE,CAAC;;AAED;AACA;AACA;AACA;AAHAU,OAAA,CAAAC,qBAAA,GAAAA,qBAAA;AAIA,MAAMT,6BAA6B,GAAGA,CACpCF,QAA4B,EAC5BC,oBAA4B,KACL;EACvB,IAAI,CAACD,QAAQ,IAAI,CAACC,oBAAoB,EAAE;IACtC,OAAO,KAAK;EACd;EACA,OAAO,IAAI;AACb,CAAC"}
1
+ {"version":3,"names":["_reactNative","require","_rxSubjects","_utils","_libs","_pushLogoutCallback","_reactNative2","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","processNonRingingNotificationStreamPayload","streamPayload","sender","type","cid","call_cid","pushNonRingingCallData$","next","iosCallkeepAcceptCall","callUUIDFromCallkeep","shouldProcessCallFromCallkeep","voipCallkeepAcceptedCallOnNativeDialerMap$","uuid","pushAcceptedIncomingCallCId$","voipCallkeepCallOnForegroundMap$","undefined","exports","iosCallkeepRejectCall","pushConfig","voipPushNotificationCallCId$","processCallFromPushInBackground","setupRemoteNotificationsHandleriOS","Platform","OS","notifee","onForegroundEvent","_ref","detail","EventType","PRESS","_detail$notification","notification","data","stream","result","_pushConfig$onTapNonR","onTapNonRingingCallNotification","isExpo","Notifications","getExpoNotificationsLib","setNotificationHandler","handleNotification","shouldShowAlert","shouldPlaySound","shouldSetBadge","initIosNonVoipToken","client","setUnsubscribeListener","android","pushProviderName","setDeviceToken","token","setPushLogoutCallback","removeDevice","catch","err","console","warn","push_provider_name","ios","addDevice","expoNotificationsLib","subscription","addPushTokenListener","devicePushToken","subscriptionForReceive","addNotificationReceivedListener","event","request","trigger","_event$request$trigge","payload","remove","pushNotificationIosLib","getPushNotificationIosLib","addEventListener","getData","finish","FetchResult","NoData","removeEventListener"],"sourceRoot":"../../../../src","sources":["utils/push/ios.ts"],"mappings":"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"}
@@ -4,11 +4,17 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.getCallKeepLib = getCallKeepLib;
7
+ exports.getExpoNotificationsLib = getExpoNotificationsLib;
8
+ exports.getExpoTaskManagerLib = getExpoTaskManagerLib;
7
9
  exports.getFirebaseMessagingLib = getFirebaseMessagingLib;
10
+ exports.getPushNotificationIosLib = getPushNotificationIosLib;
8
11
  exports.getVoipPushNotificationLib = getVoipPushNotificationLib;
9
12
  let callkeep;
10
13
  let messaging;
11
14
  let voipPushNotification;
15
+ let expoNotificationsLib;
16
+ let expoTaskManagerLib;
17
+ let pushNotificationIosLib;
12
18
  try {
13
19
  callkeep = require('react-native-callkeep').default;
14
20
  } catch (e) {}
@@ -18,6 +24,33 @@ try {
18
24
  try {
19
25
  voipPushNotification = require('react-native-voip-push-notification').default;
20
26
  } catch (e) {}
27
+ try {
28
+ expoNotificationsLib = require('expo-notifications');
29
+ } catch (e) {}
30
+ try {
31
+ expoTaskManagerLib = require('expo-task-manager');
32
+ } catch (e) {}
33
+ try {
34
+ pushNotificationIosLib = require('@react-native-community/push-notification-ios').default;
35
+ } catch (e) {}
36
+ function getExpoNotificationsLib() {
37
+ if (!expoNotificationsLib) {
38
+ throw Error('expo-notifications library is not installed. Please see https://docs.expo.dev/versions/latest/sdk/notifications/ for installation instructions');
39
+ }
40
+ return expoNotificationsLib;
41
+ }
42
+ function getExpoTaskManagerLib() {
43
+ if (!expoTaskManagerLib) {
44
+ throw Error('expo-task-manager library is not installed. Please see https://docs.expo.dev/versions/latest/sdk/task-manager/ for installation instructions');
45
+ }
46
+ return expoTaskManagerLib;
47
+ }
48
+ function getPushNotificationIosLib() {
49
+ if (!pushNotificationIosLib) {
50
+ throw Error('@react-native-community/push-notification-ios library is not installed. Please install it using "yarn add @react-native-community/push-notification-ios" or "npm i @react-native-community/push-notification-ios --save"');
51
+ }
52
+ return pushNotificationIosLib;
53
+ }
21
54
  function getCallKeepLib() {
22
55
  if (!callkeep) {
23
56
  throw Error('react-native-callkeep library is not installed. Please see https://github.com/react-native-webrtc/react-native-callkeep#Installation for installation instructions');
@@ -32,7 +65,7 @@ function getFirebaseMessagingLib() {
32
65
  }
33
66
  function getVoipPushNotificationLib() {
34
67
  if (!voipPushNotification) {
35
- throw Error("react-native-voip-push-notification library is not installed. Please install it using 'yarn add react-native-voip-push-notification' or 'npm install react-native-voip-push-notification'");
68
+ throw Error("react-native-voip-push-notification library is not installed. Please install it using 'yarn add react-native-voip-push-notification' or 'npm i react-native-voip-push-notification --save'");
36
69
  }
37
70
  return voipPushNotification;
38
71
  }
@@ -1 +1 @@
1
- {"version":3,"names":["callkeep","messaging","voipPushNotification","require","default","e","getCallKeepLib","Error","getFirebaseMessagingLib","getVoipPushNotificationLib"],"sourceRoot":"../../../../src","sources":["utils/push/libs.ts"],"mappings":";;;;;;;;AAQA,IAAIA,QAAoC;AACxC,IAAIC,SAA4C;AAChD,IAAIC,oBAA0D;AAE9D,IAAI;EACFF,QAAQ,GAAGG,OAAO,CAAC,uBAAuB,CAAC,CAACC,OAAO;AACrD,CAAC,CAAC,OAAOC,CAAC,EAAE,CAAC;AAEb,IAAI;EACFJ,SAAS,GAAGE,OAAO,CAAC,kCAAkC,CAAC,CAACC,OAAO;AACjE,CAAC,CAAC,OAAOC,CAAC,EAAE,CAAC;AAEb,IAAI;EACFH,oBAAoB,GAAGC,OAAO,CAAC,qCAAqC,CAAC,CAACC,OAAO;AAC/E,CAAC,CAAC,OAAOC,CAAC,EAAE,CAAC;AAEN,SAASC,cAAcA,CAAA,EAAG;EAC/B,IAAI,CAACN,QAAQ,EAAE;IACb,MAAMO,KAAK,CACT,oKACF,CAAC;EACH;EACA,OAAOP,QAAQ;AACjB;AAEO,SAASQ,uBAAuBA,CAAA,EAAG;EACxC,IAAI,CAACP,SAAS,EAAE;IACd,MAAMM,KAAK,CACT,6IACF,CAAC;EACH;EACA,OAAON,SAAS;AAClB;AAEO,SAASQ,0BAA0BA,CAAA,EAAG;EAC3C,IAAI,CAACP,oBAAoB,EAAE;IACzB,MAAMK,KAAK,CACT,2LACF,CAAC;EACH;EACA,OAAOL,oBAAoB;AAC7B"}
1
+ {"version":3,"names":["callkeep","messaging","voipPushNotification","expoNotificationsLib","expoTaskManagerLib","pushNotificationIosLib","require","default","e","getExpoNotificationsLib","Error","getExpoTaskManagerLib","getPushNotificationIosLib","getCallKeepLib","getFirebaseMessagingLib","getVoipPushNotificationLib"],"sourceRoot":"../../../../src","sources":["utils/push/libs.ts"],"mappings":";;;;;;;;;;;AAWA,IAAIA,QAAoC;AACxC,IAAIC,SAA4C;AAChD,IAAIC,oBAA0D;AAC9D,IAAIC,oBAAsD;AAC1D,IAAIC,kBAAkD;AACtD,IAAIC,sBAA0D;AAE9D,IAAI;EACFL,QAAQ,GAAGM,OAAO,CAAC,uBAAuB,CAAC,CAACC,OAAO;AACrD,CAAC,CAAC,OAAOC,CAAC,EAAE,CAAC;AAEb,IAAI;EACFP,SAAS,GAAGK,OAAO,CAAC,kCAAkC,CAAC,CAACC,OAAO;AACjE,CAAC,CAAC,OAAOC,CAAC,EAAE,CAAC;AAEb,IAAI;EACFN,oBAAoB,GAAGI,OAAO,CAAC,qCAAqC,CAAC,CAACC,OAAO;AAC/E,CAAC,CAAC,OAAOC,CAAC,EAAE,CAAC;AAEb,IAAI;EACFL,oBAAoB,GAAGG,OAAO,CAAC,oBAAoB,CAAC;AACtD,CAAC,CAAC,OAAOE,CAAC,EAAE,CAAC;AAEb,IAAI;EACFJ,kBAAkB,GAAGE,OAAO,CAAC,mBAAmB,CAAC;AACnD,CAAC,CAAC,OAAOE,CAAC,EAAE,CAAC;AAEb,IAAI;EACFH,sBAAsB,GACpBC,OAAO,CAAC,+CAA+C,CAAC,CAACC,OAAO;AACpE,CAAC,CAAC,OAAOC,CAAC,EAAE,CAAC;AAEN,SAASC,uBAAuBA,CAAA,EAAG;EACxC,IAAI,CAACN,oBAAoB,EAAE;IACzB,MAAMO,KAAK,CACT,gJACF,CAAC;EACH;EACA,OAAOP,oBAAoB;AAC7B;AAEO,SAASQ,qBAAqBA,CAAA,EAAG;EACtC,IAAI,CAACP,kBAAkB,EAAE;IACvB,MAAMM,KAAK,CACT,8IACF,CAAC;EACH;EACA,OAAON,kBAAkB;AAC3B;AAEO,SAASQ,yBAAyBA,CAAA,EAAG;EAC1C,IAAI,CAACP,sBAAsB,EAAE;IAC3B,MAAMK,KAAK,CACT,0NACF,CAAC;EACH;EACA,OAAOL,sBAAsB;AAC/B;AAEO,SAASQ,cAAcA,CAAA,EAAG;EAC/B,IAAI,CAACb,QAAQ,EAAE;IACb,MAAMU,KAAK,CACT,oKACF,CAAC;EACH;EACA,OAAOV,QAAQ;AACjB;AAEO,SAASc,uBAAuBA,CAAA,EAAG;EACxC,IAAI,CAACb,SAAS,EAAE;IACd,MAAMS,KAAK,CACT,6IACF,CAAC;EACH;EACA,OAAOT,SAAS;AAClB;AAEO,SAASc,0BAA0BA,CAAA,EAAG;EAC3C,IAAI,CAACb,oBAAoB,EAAE;IACzB,MAAMQ,KAAK,CACT,4LACF,CAAC;EACH;EACA,OAAOR,oBAAoB;AAC7B"}
@@ -3,12 +3,19 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.voipPushNotificationCallCId$ = exports.voipCallkeepCallOnForegroundMap$ = exports.voipCallkeepAcceptedCallOnNativeDialerMap$ = exports.pushTappedIncomingCallCId$ = exports.pushRejectedIncomingCallCId$ = exports.pushAcceptedIncomingCallCId$ = void 0;
6
+ exports.voipPushNotificationCallCId$ = exports.voipCallkeepCallOnForegroundMap$ = exports.voipCallkeepAcceptedCallOnNativeDialerMap$ = exports.pushTappedIncomingCallCId$ = exports.pushRejectedIncomingCallCId$ = exports.pushNonRingingCallData$ = exports.pushAcceptedIncomingCallCId$ = void 0;
7
7
  var _rxjs = require("rxjs");
8
8
  /**
9
9
  * This rxjs subject is used to store the call cid of the accepted incoming call from push notification
10
10
  * Note: it is should be subscribed only when a user has connected to the websocket of Stream
11
11
  */
12
+ const pushNonRingingCallData$ = new _rxjs.BehaviorSubject(undefined);
13
+
14
+ /**
15
+ * This rxjs subject is used to store the call cid of the accepted incoming call from push notification
16
+ * Note: it is should be subscribed only when a user has connected to the websocket of Stream
17
+ */
18
+ exports.pushNonRingingCallData$ = pushNonRingingCallData$;
12
19
  const pushAcceptedIncomingCallCId$ = new _rxjs.BehaviorSubject(undefined);
13
20
 
14
21
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_rxjs","require","pushAcceptedIncomingCallCId$","BehaviorSubject","undefined","exports","pushTappedIncomingCallCId$","pushRejectedIncomingCallCId$","voipPushNotificationCallCId$","voipCallkeepCallOnForegroundMap$","voipCallkeepAcceptedCallOnNativeDialerMap$"],"sourceRoot":"../../../../src","sources":["utils/push/rxSubjects.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACO,MAAMC,4BAA4B,GAAG,IAAIC,qBAAe,CAE7DC,SAAS,CAAC;;AAEZ;AACA;AACA;AACA;AAHAC,OAAA,CAAAH,4BAAA,GAAAA,4BAAA;AAIO,MAAMI,0BAA0B,GAAG,IAAIH,qBAAe,CAE3DC,SAAS,CAAC;;AAEZ;AACA;AACA;AACA;AAHAC,OAAA,CAAAC,0BAAA,GAAAA,0BAAA;AAIO,MAAMC,4BAA4B,GAAG,IAAIJ,qBAAe,CAE7DC,SAAS,CAAC;;AAEZ;AACA;AACA;AAFAC,OAAA,CAAAE,4BAAA,GAAAA,4BAAA;AAGO,MAAMC,4BAA4B,GAAG,IAAIL,qBAAe,CAE7DC,SAAS,CAAC;;AAEZ;AAAAC,OAAA,CAAAG,4BAAA,GAAAA,4BAAA;AAMA;AACA;AACA;AACA;AACA;AACO,MAAMC,gCAAgC,GAAG,IAAIN,qBAAe,CAEjEC,SAAS,CAAC;;AAEZ;AACA;AACA;AAFAC,OAAA,CAAAI,gCAAA,GAAAA,gCAAA;AAGO,MAAMC,0CAA0C,GAAG,IAAIP,qBAAe,CAE3EC,SAAS,CAAC;AAACC,OAAA,CAAAK,0CAAA,GAAAA,0CAAA"}
1
+ {"version":3,"names":["_rxjs","require","pushNonRingingCallData$","BehaviorSubject","undefined","exports","pushAcceptedIncomingCallCId$","pushTappedIncomingCallCId$","pushRejectedIncomingCallCId$","voipPushNotificationCallCId$","voipCallkeepCallOnForegroundMap$","voipCallkeepAcceptedCallOnNativeDialerMap$"],"sourceRoot":"../../../../src","sources":["utils/push/rxSubjects.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAGA;AACA;AACA;AACA;AACO,MAAMC,uBAAuB,GAAG,IAAIC,qBAAe,CAExDC,SAAS,CAAC;;AAEZ;AACA;AACA;AACA;AAHAC,OAAA,CAAAH,uBAAA,GAAAA,uBAAA;AAIO,MAAMI,4BAA4B,GAAG,IAAIH,qBAAe,CAE7DC,SAAS,CAAC;;AAEZ;AACA;AACA;AACA;AAHAC,OAAA,CAAAC,4BAAA,GAAAA,4BAAA;AAIO,MAAMC,0BAA0B,GAAG,IAAIJ,qBAAe,CAE3DC,SAAS,CAAC;;AAEZ;AACA;AACA;AACA;AAHAC,OAAA,CAAAE,0BAAA,GAAAA,0BAAA;AAIO,MAAMC,4BAA4B,GAAG,IAAIL,qBAAe,CAE7DC,SAAS,CAAC;;AAEZ;AACA;AACA;AAFAC,OAAA,CAAAG,4BAAA,GAAAA,4BAAA;AAGO,MAAMC,4BAA4B,GAAG,IAAIN,qBAAe,CAE7DC,SAAS,CAAC;;AAEZ;AAAAC,OAAA,CAAAI,4BAAA,GAAAA,4BAAA;AAMA;AACA;AACA;AACA;AACA;AACO,MAAMC,gCAAgC,GAAG,IAAIP,qBAAe,CAEjEC,SAAS,CAAC;;AAEZ;AACA;AACA;AAFAC,OAAA,CAAAK,gCAAA,GAAAA,gCAAA;AAGO,MAAMC,0CAA0C,GAAG,IAAIR,qBAAe,CAE3EC,SAAS,CAAC;AAACC,OAAA,CAAAM,0CAAA,GAAAA,0CAAA"}