@ethora/chat-component-rn 26.10.6 → 26.10.8

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 (134) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/README.md +6 -3
  3. package/lib/commonjs/components/MessageBubble/Message.js +16 -6
  4. package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
  5. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js +16 -2
  6. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  7. package/lib/commonjs/components/VideoCalls/callActions.js +32 -2
  8. package/lib/commonjs/components/VideoCalls/callActions.js.map +1 -1
  9. package/lib/commonjs/components/VideoCalls/systemCall.js +83 -0
  10. package/lib/commonjs/components/VideoCalls/systemCall.js.map +1 -0
  11. package/lib/commonjs/components/VideoCalls/useCallKeep.js +83 -66
  12. package/lib/commonjs/components/VideoCalls/useCallKeep.js.map +1 -1
  13. package/lib/commonjs/helpers/incomingCallFromPush.js +95 -21
  14. package/lib/commonjs/helpers/incomingCallFromPush.js.map +1 -1
  15. package/lib/commonjs/helpers/secureStoreRuntime.js +10 -1
  16. package/lib/commonjs/helpers/secureStoreRuntime.js.map +1 -1
  17. package/lib/commonjs/main.js +114 -0
  18. package/lib/commonjs/main.js.map +1 -1
  19. package/lib/commonjs/networking/api-requests/push.api.js +22 -7
  20. package/lib/commonjs/networking/api-requests/push.api.js.map +1 -1
  21. package/lib/commonjs/networking/callTokenStanza.js +6 -0
  22. package/lib/commonjs/networking/callTokenStanza.js.map +1 -1
  23. package/lib/commonjs/networking/xmpp/sendMessageReaction.xmpp.js +22 -6
  24. package/lib/commonjs/networking/xmpp/sendMessageReaction.xmpp.js.map +1 -1
  25. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  26. package/lib/commonjs/push/pushKeyStore.js +169 -0
  27. package/lib/commonjs/push/pushKeyStore.js.map +1 -0
  28. package/lib/commonjs/push/sealedBox.js +106 -0
  29. package/lib/commonjs/push/sealedBox.js.map +1 -0
  30. package/lib/commonjs/push/sealedPush.js +135 -0
  31. package/lib/commonjs/push/sealedPush.js.map +1 -0
  32. package/lib/commonjs/push/sealedPushTask.js +221 -0
  33. package/lib/commonjs/push/sealedPushTask.js.map +1 -0
  34. package/lib/commonjs/services/pushRegistration.js +12 -7
  35. package/lib/commonjs/services/pushRegistration.js.map +1 -1
  36. package/lib/commonjs/version.js +1 -1
  37. package/lib/module/components/MessageBubble/Message.js +16 -6
  38. package/lib/module/components/MessageBubble/Message.js.map +1 -1
  39. package/lib/module/components/VideoCalls/VideoCallOverlay.js +17 -3
  40. package/lib/module/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  41. package/lib/module/components/VideoCalls/callActions.js +29 -0
  42. package/lib/module/components/VideoCalls/callActions.js.map +1 -1
  43. package/lib/module/components/VideoCalls/systemCall.js +73 -0
  44. package/lib/module/components/VideoCalls/systemCall.js.map +1 -0
  45. package/lib/module/components/VideoCalls/useCallKeep.js +77 -64
  46. package/lib/module/components/VideoCalls/useCallKeep.js.map +1 -1
  47. package/lib/module/helpers/incomingCallFromPush.js +92 -22
  48. package/lib/module/helpers/incomingCallFromPush.js.map +1 -1
  49. package/lib/module/helpers/secureStoreRuntime.js +10 -1
  50. package/lib/module/helpers/secureStoreRuntime.js.map +1 -1
  51. package/lib/module/main.js +9 -0
  52. package/lib/module/main.js.map +1 -1
  53. package/lib/module/networking/api-requests/push.api.js +21 -6
  54. package/lib/module/networking/api-requests/push.api.js.map +1 -1
  55. package/lib/module/networking/callTokenStanza.js +6 -0
  56. package/lib/module/networking/callTokenStanza.js.map +1 -1
  57. package/lib/module/networking/xmpp/sendMessageReaction.xmpp.js +21 -6
  58. package/lib/module/networking/xmpp/sendMessageReaction.xmpp.js.map +1 -1
  59. package/lib/module/networking/xmppClient.js.map +1 -1
  60. package/lib/module/push/pushKeyStore.js +159 -0
  61. package/lib/module/push/pushKeyStore.js.map +1 -0
  62. package/lib/module/push/sealedBox.js +97 -0
  63. package/lib/module/push/sealedBox.js.map +1 -0
  64. package/lib/module/push/sealedPush.js +127 -0
  65. package/lib/module/push/sealedPush.js.map +1 -0
  66. package/lib/module/push/sealedPushTask.js +212 -0
  67. package/lib/module/push/sealedPushTask.js.map +1 -0
  68. package/lib/module/services/pushRegistration.js +12 -7
  69. package/lib/module/services/pushRegistration.js.map +1 -1
  70. package/lib/module/version.js +1 -1
  71. package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
  72. package/lib/typescript/components/VideoCalls/VideoCallOverlay.d.ts.map +1 -1
  73. package/lib/typescript/components/VideoCalls/callActions.d.ts +6 -0
  74. package/lib/typescript/components/VideoCalls/callActions.d.ts.map +1 -1
  75. package/lib/typescript/components/VideoCalls/systemCall.d.ts +25 -0
  76. package/lib/typescript/components/VideoCalls/systemCall.d.ts.map +1 -0
  77. package/lib/typescript/components/VideoCalls/useCallKeep.d.ts +8 -23
  78. package/lib/typescript/components/VideoCalls/useCallKeep.d.ts.map +1 -1
  79. package/lib/typescript/helpers/incomingCallFromPush.d.ts +5 -13
  80. package/lib/typescript/helpers/incomingCallFromPush.d.ts.map +1 -1
  81. package/lib/typescript/helpers/secureStoreRuntime.d.ts +17 -3
  82. package/lib/typescript/helpers/secureStoreRuntime.d.ts.map +1 -1
  83. package/lib/typescript/main.d.ts +11 -0
  84. package/lib/typescript/main.d.ts.map +1 -1
  85. package/lib/typescript/networking/api-requests/push.api.d.ts +14 -2
  86. package/lib/typescript/networking/api-requests/push.api.d.ts.map +1 -1
  87. package/lib/typescript/networking/callTokenStanza.d.ts.map +1 -1
  88. package/lib/typescript/networking/xmpp/sendMessageReaction.xmpp.d.ts +13 -1
  89. package/lib/typescript/networking/xmpp/sendMessageReaction.xmpp.d.ts.map +1 -1
  90. package/lib/typescript/networking/xmppClient.d.ts +2 -4
  91. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  92. package/lib/typescript/push/pushKeyStore.d.ts +35 -0
  93. package/lib/typescript/push/pushKeyStore.d.ts.map +1 -0
  94. package/lib/typescript/push/sealedBox.d.ts +24 -0
  95. package/lib/typescript/push/sealedBox.d.ts.map +1 -0
  96. package/lib/typescript/push/sealedPush.d.ts +67 -0
  97. package/lib/typescript/push/sealedPush.d.ts.map +1 -0
  98. package/lib/typescript/push/sealedPushTask.d.ts +44 -0
  99. package/lib/typescript/push/sealedPushTask.d.ts.map +1 -0
  100. package/lib/typescript/services/pushRegistration.d.ts +8 -0
  101. package/lib/typescript/services/pushRegistration.d.ts.map +1 -1
  102. package/lib/typescript/types/models/xmpp.model.d.ts +2 -4
  103. package/lib/typescript/types/models/xmpp.model.d.ts.map +1 -1
  104. package/lib/typescript/types/types.d.ts +6 -0
  105. package/lib/typescript/types/types.d.ts.map +1 -1
  106. package/lib/typescript/version.d.ts +1 -1
  107. package/package.json +11 -1
  108. package/plugins/notification-service/NotificationService.swift +113 -0
  109. package/plugins/notification-service/SealedBox.swift +355 -0
  110. package/plugins/notification-service/check/gen-vectors.mjs +24 -0
  111. package/plugins/notification-service/check/main.swift +37 -0
  112. package/plugins/notification-service/check/run.sh +12 -0
  113. package/plugins/notification-service/check/vectors.json +1 -0
  114. package/plugins/withNotificationServiceExtension.js +70 -18
  115. package/src/components/MessageBubble/Message.tsx +16 -5
  116. package/src/components/VideoCalls/VideoCallOverlay.tsx +18 -2
  117. package/src/components/VideoCalls/callActions.ts +28 -0
  118. package/src/components/VideoCalls/systemCall.ts +109 -0
  119. package/src/components/VideoCalls/useCallKeep.ts +89 -97
  120. package/src/helpers/incomingCallFromPush.ts +97 -26
  121. package/src/helpers/secureStoreRuntime.ts +21 -3
  122. package/src/main.ts +38 -0
  123. package/src/networking/api-requests/push.api.ts +29 -4
  124. package/src/networking/callTokenStanza.ts +10 -0
  125. package/src/networking/xmpp/sendMessageReaction.xmpp.ts +38 -6
  126. package/src/networking/xmppClient.ts +2 -2
  127. package/src/push/pushKeyStore.ts +163 -0
  128. package/src/push/sealedBox.ts +104 -0
  129. package/src/push/sealedPush.ts +138 -0
  130. package/src/push/sealedPushTask.ts +221 -0
  131. package/src/services/pushRegistration.ts +25 -5
  132. package/src/types/models/xmpp.model.ts +2 -1
  133. package/src/types/types.ts +6 -0
  134. package/src/version.ts +1 -1
@@ -3,7 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useCallKeep = exports.loadCallKeep = void 0;
6
+ Object.defineProperty(exports, "loadCallKeep", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _systemCall.loadCallKeep;
10
+ }
11
+ });
12
+ exports.useCallKeep = void 0;
7
13
  var _react = require("react");
8
14
  var _reactNative = require("react-native");
9
15
  var _reactRedux = require("react-redux");
@@ -14,6 +20,7 @@ var _callActions = require("./callActions");
14
20
  var _callSessionController = require("./callSessionController");
15
21
  var _livekitRuntime = require("./livekitRuntime");
16
22
  var _callUiStore = require("./callUiStore");
23
+ var _systemCall = require("./systemCall");
17
24
  /**
18
25
  * Native incoming-call UI (Android ConnectionService / iOS CallKit) via
19
26
  * the optional `react-native-callkeep` package.
@@ -32,62 +39,14 @@ var _callUiStore = require("./callUiStore");
32
39
  * Platform reality, stated plainly:
33
40
  * - Android: full value. A ConnectionService call shows the system
34
41
  * incoming-call screen over the lock screen.
35
- * - iOS: this only fires while the app is running. A CallKit screen from
36
- * a killed app requires a VoIP push over PushKit, which needs a
37
- * separate Apple VoIP certificate and a separate send path on the
38
- * backend (not FCM). Until that exists, iOS falls back to the regular
39
- * data push and the in-app ring screen.
42
+ * - iOS: this hook only runs while `<Chat>` is mounted. A CallKit screen
43
+ * from a killed app comes from the host: its PushKit handler reports
44
+ * the VoIP push to CallKit natively under `callKitUuid(callId)` and
45
+ * hands the payload to `handlePushPayload`. This hook then adopts that
46
+ * call (same UUID, CallKit answers "CallUUIDAlreadyExists" to our own
47
+ * report) and replays what the user did on it before JS was up.
40
48
  */
41
49
 
42
- let cachedCallKeep;
43
- const loadCallKeep = () => {
44
- if (cachedCallKeep !== undefined) {
45
- return cachedCallKeep;
46
- }
47
- try {
48
- // The JS package being installed does NOT mean the native side is
49
- // linked: a host can `npm i react-native-callkeep` and skip
50
- // `pod install`, or (very common in this repo) node_modules can carry
51
- // it over from another branch whose build did link it. In that state
52
- // requiring the package builds a `new NativeEventEmitter(null)` at
53
- // module scope, which throws an invariant that RN surfaces as an
54
- // uncaught redbox on every render of the call overlay — the whole app
55
- // becomes unusable over a feature the host never switched on.
56
- // Probing NativeModules first keeps the optional dependency genuinely
57
- // optional: no native module => behave exactly as if it isn't installed.
58
- // eslint-disable-next-line @typescript-eslint/no-require-imports
59
- const {
60
- NativeModules
61
- } = require('react-native');
62
- if (!NativeModules?.RNCallKeep) {
63
- cachedCallKeep = null;
64
- return cachedCallKeep;
65
- }
66
- // eslint-disable-next-line @typescript-eslint/no-require-imports
67
- const mod = require('react-native-callkeep');
68
- cachedCallKeep = mod?.default || mod;
69
- } catch {
70
- cachedCallKeep = null;
71
- }
72
- return cachedCallKeep;
73
- };
74
-
75
- // CallKeep identifies calls by UUID. Our callIds aren't UUIDs, so derive a
76
- // stable v4-shaped string from the callId: same call always maps to the
77
- // same UUID, which is what endCall() needs to dismiss the right screen.
78
- exports.loadCallKeep = loadCallKeep;
79
- const toUuid = seed => {
80
- let hash = 0x811c9dc5;
81
- const bytes = [];
82
- for (let i = 0; i < 32; i++) {
83
- const ch = seed.charCodeAt(i % Math.max(1, seed.length)) + i;
84
- hash ^= ch;
85
- hash = Math.imul(hash, 0x01000193) >>> 0;
86
- bytes.push(hash & 0xff);
87
- }
88
- const hex = bytes.map(b => b.toString(16).padStart(2, '0')).join('');
89
- return [hex.slice(0, 8), hex.slice(8, 12), '4' + hex.slice(13, 16), (parseInt(hex[16], 16) & 0x3 | 0x8).toString(16) + hex.slice(17, 20), hex.slice(20, 32)].join('-');
90
- };
91
50
  const trace = (...args) => {
92
51
  if (__DEV__) {
93
52
  console.log('[calls] CallKit:', ...args);
@@ -97,7 +56,7 @@ const useCallKeep = () => {
97
56
  const dispatch = (0, _reactRedux.useDispatch)();
98
57
  const call = (0, _reactRedux.useSelector)(state => state.call);
99
58
  const session = (0, _callSessionController.useCallSession)();
100
- const callKeep = (0, _react.useMemo)(() => loadCallKeep(), []);
59
+ const callKeep = (0, _react.useMemo)(() => (0, _systemCall.loadCallKeep)(), []);
101
60
  const [ready, setReady] = (0, _react.useState)(false);
102
61
  const activeUuidRef = (0, _react.useRef)(null);
103
62
  // The CallKit call has been answered (from the system screen or in-app).
@@ -164,7 +123,25 @@ const useCallKeep = () => {
164
123
  if (!callKeep) {
165
124
  return;
166
125
  }
167
- const onAnswer = () => {
126
+ const isOtherCall = payload => {
127
+ const uuid = String(payload?.callUUID || '').toLowerCase();
128
+ if (!uuid) {
129
+ return false;
130
+ }
131
+ const active = activeUuidRef.current?.toLowerCase() || null;
132
+ if (active === uuid) {
133
+ return false;
134
+ }
135
+ const current = _roomStore.store.getState().call;
136
+ const ringingUuid = current.direction === 'incoming' && current.callId ? (0, _systemCall.callKitUuid)(current.callId) : null;
137
+ return ringingUuid !== uuid;
138
+ };
139
+ const onAnswer = payload => {
140
+ if (isOtherCall(payload)) {
141
+ trace('answer before the call arrived', payload?.callUUID);
142
+ (0, _systemCall.rememberSystemCallAction)(String(payload.callUUID), 'answer');
143
+ return;
144
+ }
168
145
  answeredRef.current = true;
169
146
  // The user answered from the system screen, which on Android may
170
147
  // mean the app was not even in the foreground.
@@ -177,7 +154,12 @@ const useCallKeep = () => {
177
154
  dispatch((0, _callSlice.acceptIncomingCall)());
178
155
  }
179
156
  };
180
- const onEnd = () => {
157
+ const onEnd = payload => {
158
+ if (isOtherCall(payload)) {
159
+ trace('declined before the call arrived', payload?.callUUID);
160
+ (0, _systemCall.rememberSystemCallAction)(String(payload.callUUID), 'end');
161
+ return;
162
+ }
181
163
  const snapshot = _roomStore.store.getState().call;
182
164
  if (snapshot.phase === 'idle') {
183
165
  return;
@@ -241,18 +223,41 @@ const useCallKeep = () => {
241
223
  // app lacks the voip background mode).
242
224
  const onDisplayed = ({
243
225
  error,
244
- errorCode
226
+ errorCode,
227
+ fromPushKit
245
228
  }) => {
246
- trace('incoming call shown', error ? `failed: ${errorCode || ''} ${error}` : 'ok');
229
+ trace(`incoming call shown${fromPushKit === '1' ? ' (PushKit)' : ''}`, error ? `failed: ${errorCode || ''} ${error}` : 'ok');
230
+ if (errorCode === 'CallUUIDAlreadyExists') {
231
+ return;
232
+ }
247
233
  // CallKit refused it (Do Not Disturb, unentitled...): bring the
248
- // in-app ring card back so the call can still be answered.
249
- if (error) {
234
+ if (error && fromPushKit !== '1') {
250
235
  (0, _callUiStore.setCallSystemRinging)(false);
251
236
  }
252
237
  };
253
238
  callKeep.addEventListener('didDisplayIncomingCall', onDisplayed);
254
239
  callKeep.addEventListener('didDeactivateAudioSession', onAudioDeactivated);
240
+ const replay = {
241
+ RNCallKeepPerformAnswerCallAction: onAnswer,
242
+ RNCallKeepPerformEndCallAction: onEnd,
243
+ RNCallKeepDidDisplayIncomingCall: onDisplayed,
244
+ RNCallKeepDidActivateAudioSession: onAudioActivated,
245
+ RNCallKeepDidDeactivateAudioSession: onAudioDeactivated,
246
+ RNCallKeepDidPerformSetMutedCallAction: onMuted
247
+ };
248
+ const onLoadWithEvents = events => {
249
+ if (!Array.isArray(events) || events.length === 0) {
250
+ return;
251
+ }
252
+ trace('replaying', events.map(e => e.name).join(', '));
253
+ callKeep.clearInitialEvents?.();
254
+ for (const event of events) {
255
+ replay[event.name]?.(event.data);
256
+ }
257
+ };
258
+ callKeep.addEventListener('didLoadWithEvents', onLoadWithEvents);
255
259
  return () => {
260
+ callKeep.removeEventListener('didLoadWithEvents');
256
261
  callKeep.removeEventListener('answerCall');
257
262
  callKeep.removeEventListener('endCall');
258
263
  callKeep.removeEventListener('didPerformSetMutedCallAction');
@@ -295,11 +300,23 @@ const useCallKeep = () => {
295
300
  if (activeUuidRef.current) {
296
301
  return;
297
302
  }
298
- const uuid = toUuid(call.callId || call.roomJid || String(Date.now()));
303
+ const uuid = (0, _systemCall.callKitUuid)(call.callId || call.roomJid || String(Date.now()));
299
304
  activeUuidRef.current = uuid;
300
305
  answeredRef.current = false;
306
+ const earlier = (0, _systemCall.takeSystemCallAction)(uuid);
307
+ if (earlier === 'answer') {
308
+ trace('answered earlier on the system screen', uuid);
309
+ answeredRef.current = true;
310
+ dispatch((0, _callSlice.acceptIncomingCall)());
311
+ return;
312
+ }
313
+ if (earlier === 'end') {
314
+ trace('declined earlier on the system screen', uuid);
315
+ activeUuidRef.current = null;
316
+ (0, _callActions.declineActiveCallWhenOnline)();
317
+ return;
318
+ }
301
319
  // iOS: the system banner is the ring UI (Telegram-style); the in-app
302
- // card would only cover the screen under it.
303
320
  if (isIOS) {
304
321
  (0, _callUiStore.setCallSystemRinging)(true);
305
322
  }
@@ -317,7 +334,7 @@ const useCallKeep = () => {
317
334
  if (isIOS && isOutgoing && !activeUuidRef.current && callKeep.startCall) {
318
335
  // Unique per call: CallKit refuses a UUID it has seen before, and
319
336
  // the callId only arrives with the token.
320
- const uuid = toUuid(`${call.roomJid || ''}|${call.startedAt || Date.now()}`);
337
+ const uuid = (0, _systemCall.callKitUuid)(`${call.roomJid || ''}|${call.startedAt || Date.now()}`);
321
338
  activeUuidRef.current = uuid;
322
339
  outgoingReportedRef.current = 'none';
323
340
  trace('startCall', uuid);
@@ -353,7 +370,7 @@ const useCallKeep = () => {
353
370
  // noop
354
371
  }
355
372
  }
356
- }, [callKeep, ready, isIOS, isRinging, isLive, isOutgoing, peerConnected, displayName, call.phase, call.callId, call.roomJid, call.startedAt, call.kind]);
373
+ }, [callKeep, ready, dispatch, isIOS, isRinging, isLive, isOutgoing, peerConnected, displayName, call.phase, call.callId, call.roomJid, call.startedAt, call.kind]);
357
374
 
358
375
  // Keep the system mute button in step with ours.
359
376
  (0, _react.useEffect)(() => {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_reactRedux","_roomStore","_callSlice","_callTokenStanza","_callActions","_callSessionController","_livekitRuntime","_callUiStore","cachedCallKeep","loadCallKeep","undefined","NativeModules","RNCallKeep","mod","default","exports","toUuid","seed","hash","bytes","i","ch","charCodeAt","Math","max","length","imul","push","hex","map","b","toString","padStart","join","slice","parseInt","trace","args","__DEV__","console","log","useCallKeep","dispatch","useDispatch","call","useSelector","state","session","useCallSession","callKeep","useMemo","ready","setReady","useState","activeUuidRef","useRef","answeredRef","outgoingReportedRef","isIOS","Platform","OS","useEffect","cancelled","setup","ios","appName","supportsVideo","maximumCallGroups","maximumCallsPerCallGroup","includesCallsInRecents","android","alertTitle","alertDescription","cancelButton","okButton","additionalPermissions","foregroundService","channelId","channelName","notificationTitle","setAvailable","error","onAnswer","current","backToForeground","store","getState","direction","phase","acceptIncomingCall","onEnd","snapshot","sendCallStateSignal","declineIncomingCall","terminateActiveCall","onMuted","muted","setCallMicEnabled","onHold","hold","onAudioActivated","loadLiveKit","RTCAudioSession","audioSessionDidActivate","onAudioDeactivated","audioSessionDidDeactivate","addEventListener","onReset","onDisplayed","errorCode","setCallSystemRinging","removeEventListener","displayName","roomName","isRinging","isLive","isOutgoing","peerConnected","anchorAt","release","endCall","uuid","callId","roomJid","String","Date","now","displayIncomingCall","kind","startCall","startedAt","reportConnectedOutgoingCallWithUUID","reportConnectingOutgoingCallWithUUID","answerIncomingCall","setMutedCall","micOn"],"sourceRoot":"../../../../src","sources":["components/VideoCalls/useCallKeep.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,gBAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AACA,IAAAO,sBAAA,GAAAP,OAAA;AACA,IAAAQ,eAAA,GAAAR,OAAA;AACA,IAAAS,YAAA,GAAAT,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA+BA,IAAIU,cAAiD;AAE9C,MAAMC,YAAY,GAAGA,CAAA,KAA6B;EACvD,IAAID,cAAc,KAAKE,SAAS,EAAE;IAChC,OAAOF,cAAc;EACvB;EACA,IAAI;IACF;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAM;MAAEG;IAAc,CAAC,GAAGb,OAAO,CAAC,cAAc,CAAC;IACjD,IAAI,CAACa,aAAa,EAAEC,UAAU,EAAE;MAC9BJ,cAAc,GAAG,IAAI;MACrB,OAAOA,cAAc;IACvB;IACA;IACA,MAAMK,GAAG,GAAGf,OAAO,CAAC,uBAAuB,CAAC;IAC5CU,cAAc,GAAIK,GAAG,EAAEC,OAAO,IAAID,GAAsB;EAC1D,CAAC,CAAC,MAAM;IACNL,cAAc,GAAG,IAAI;EACvB;EACA,OAAOA,cAAc;AACvB,CAAC;;AAED;AACA;AACA;AAAAO,OAAA,CAAAN,YAAA,GAAAA,YAAA;AACA,MAAMO,MAAM,GAAIC,IAAY,IAAa;EACvC,IAAIC,IAAI,GAAG,UAAU;EACrB,MAAMC,KAAe,GAAG,EAAE;EAC1B,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,EAAE,EAAEA,CAAC,EAAE,EAAE;IAC3B,MAAMC,EAAE,GAAGJ,IAAI,CAACK,UAAU,CAACF,CAAC,GAAGG,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEP,IAAI,CAACQ,MAAM,CAAC,CAAC,GAAGL,CAAC;IAC5DF,IAAI,IAAIG,EAAE;IACVH,IAAI,GAAGK,IAAI,CAACG,IAAI,CAACR,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC;IACxCC,KAAK,CAACQ,IAAI,CAACT,IAAI,GAAG,IAAI,CAAC;EACzB;EACA,MAAMU,GAAG,GAAGT,KAAK,CAACU,GAAG,CAAEC,CAAC,IAAKA,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAACC,IAAI,CAAC,EAAE,CAAC;EACtE,OAAO,CACLL,GAAG,CAACM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EACfN,GAAG,CAACM,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAChB,GAAG,GAAGN,GAAG,CAACM,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EACvB,CAAEC,QAAQ,CAACP,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,GAAI,GAAG,EAAEG,QAAQ,CAAC,EAAE,CAAC,GAAGH,GAAG,CAACM,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EACtEN,GAAG,CAACM,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAClB,CAACD,IAAI,CAAC,GAAG,CAAC;AACb,CAAC;AAED,MAAMG,KAAK,GAAGA,CAAC,GAAGC,IAAe,KAAK;EACpC,IAAIC,OAAO,EAAE;IAACC,OAAO,CAACC,GAAG,CAAC,kBAAkB,EAAE,GAAGH,IAAI,CAAC;EAAC;AACzD,CAAC;AAEM,MAAMI,WAAW,GAAGA,CAAA,KAAY;EACrC,MAAMC,QAAQ,GAAG,IAAAC,uBAAW,EAAC,CAAC;EAC9B,MAAMC,IAAI,GAAG,IAAAC,uBAAW,EAAEC,KAAgB,IAAKA,KAAK,CAACF,IAAI,CAAC;EAC1D,MAAMG,OAAO,GAAG,IAAAC,qCAAc,EAAC,CAAC;EAChC,MAAMC,QAAQ,GAAG,IAAAC,cAAO,EAAC,MAAMzC,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC;EAClD,MAAM,CAAC0C,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACzC,MAAMC,aAAa,GAAG,IAAAC,aAAM,EAAgB,IAAI,CAAC;EACjD;EACA,MAAMC,WAAW,GAAG,IAAAD,aAAM,EAAC,KAAK,CAAC;EACjC,MAAME,mBAAmB,GAAG,IAAAF,aAAM,EAAsC,MAAM,CAAC;EAC/E,MAAMG,KAAK,GAAGC,qBAAQ,CAACC,EAAE,KAAK,KAAK;;EAEnC;EACA,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAACZ,QAAQ,EAAE;MACb,IAAIS,KAAK,EAAE;QACT;QACA;QACAtB,KAAK,CAAC,iEAAiE,CAAC;MAC1E;MACA;IACF;IACA,IAAI0B,SAAS,GAAG,KAAK;IAErB,CAAC,YAAY;MACX,IAAI;QACF,MAAMb,QAAQ,CAACc,KAAK,CAAC;UACnBC,GAAG,EAAE;YACHC,OAAO,EAAE,QAAQ;YACjBC,aAAa,EAAE,IAAI;YACnBC,iBAAiB,EAAE,GAAG;YACtBC,wBAAwB,EAAE,GAAG;YAC7B;YACA;YACAC,sBAAsB,EAAE;UAC1B,CAAC;UACDC,OAAO,EAAE;YACPC,UAAU,EAAE,sBAAsB;YAClCC,gBAAgB,EACd,6EAA6E;YAC/EC,YAAY,EAAE,QAAQ;YACtBC,QAAQ,EAAE,IAAI;YACdC,qBAAqB,EAAE,EAAE;YACzBC,iBAAiB,EAAE;cACjBC,SAAS,EAAE,uBAAuB;cAClCC,WAAW,EAAE,gBAAgB;cAC7BC,iBAAiB,EAAE;YACrB;UACF;QACF,CAAC,CAAC;QACF,IAAIjB,SAAS,EAAE;UAAC;QAAO;QACvBb,QAAQ,CAAC+B,YAAY,GAAG,IAAI,CAAC;QAC7B5C,KAAK,CAAC,OAAO,CAAC;QACdgB,QAAQ,CAAC,IAAI,CAAC;MAChB,CAAC,CAAC,OAAO6B,KAAK,EAAE;QACd7C,KAAK,CAAC,cAAc,EAAE6C,KAAK,CAAC;QAC5B;QACA;QACA7B,QAAQ,CAAC,KAAK,CAAC;MACjB;IACF,CAAC,EAAE,CAAC;IAEJ,OAAO,MAAM;MACXU,SAAS,GAAG,IAAI;IAClB,CAAC;EACH,CAAC,EAAE,CAACb,QAAQ,EAAES,KAAK,CAAC,CAAC;;EAErB;EACA,IAAAG,gBAAS,EAAC,MAAM;IACd,IAAI,CAACZ,QAAQ,EAAE;MAAC;IAAO;IAEvB,MAAMiC,QAAQ,GAAGA,CAAA,KAAM;MACrB1B,WAAW,CAAC2B,OAAO,GAAG,IAAI;MAC1B;MACA;MACAlC,QAAQ,CAACmC,gBAAgB,GAAG,CAAC;MAC7B;MACA;MACA;MACA,MAAMD,OAAO,GAAGE,gBAAK,CAACC,QAAQ,CAAC,CAAC,CAAC1C,IAAI;MACrC,IAAIuC,OAAO,CAACI,SAAS,KAAK,UAAU,IAAIJ,OAAO,CAACK,KAAK,KAAK,kBAAkB,EAAE;QAC5E9C,QAAQ,CAAC,IAAA+C,6BAAkB,EAAC,CAAC,CAAC;MAChC;IACF,CAAC;IAED,MAAMC,KAAK,GAAGA,CAAA,KAAM;MAClB,MAAMC,QAAQ,GAAGN,gBAAK,CAACC,QAAQ,CAAC,CAAC,CAAC1C,IAAI;MACtC,IAAI+C,QAAQ,CAACH,KAAK,KAAK,MAAM,EAAE;QAAC;MAAO;MACvC,IACEG,QAAQ,CAACJ,SAAS,KAAK,UAAU,IACjCI,QAAQ,CAACH,KAAK,KAAK,kBAAkB,EACrC;QACA,IAAAI,oCAAmB,EAAC,UAAU,CAAC;QAC/BlD,QAAQ,CAAC,IAAAmD,8BAAmB,EAAC,CAAC,CAAC;QAC/B;MACF;MACA;MACA,IAAIF,QAAQ,CAACH,KAAK,KAAK,OAAO,EAAE;QAAC;MAAO;MACxC,IAAAM,gCAAmB,EAACH,QAAQ,CAACH,KAAK,KAAK,YAAY,GAAG,WAAW,GAAG,OAAO,CAAC;IAC9E,CAAC;;IAED;IACA,MAAMO,OAAO,GAAGA,CAAC;MAAEC;IAA0B,CAAC,KAAK;MACjD,KAAK,IAAAC,wCAAiB,EAAC,CAACD,KAAK,CAAC;IAChC,CAAC;;IAED;IACA,MAAME,MAAM,GAAGA,CAAC;MAAEC;IAAwB,CAAC,KAAK;MAC9C,IAAIA,IAAI,EAAE;QAAC,KAAK,IAAAF,wCAAiB,EAAC,KAAK,CAAC;MAAC;IAC3C,CAAC;;IAED;IACA;IACA,MAAMG,gBAAgB,GAAGA,CAAA,KAAM;MAC7B,IAAI;QACF,IAAAC,2BAAW,EAAC,CAAC,EAAEC,eAAe,EAAEC,uBAAuB,GAAG,CAAC;MAC7D,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ,CAAC;IACD,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;MAC/B,IAAI;QACF,IAAAH,2BAAW,EAAC,CAAC,EAAEC,eAAe,EAAEG,yBAAyB,GAAG,CAAC;MAC/D,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ,CAAC;IAEDxD,QAAQ,CAACyD,gBAAgB,CAAC,YAAY,EAAExB,QAAQ,CAAC;IACjDjC,QAAQ,CAACyD,gBAAgB,CAAC,SAAS,EAAEhB,KAAK,CAAC;IAC3CzC,QAAQ,CAACyD,gBAAgB,CAAC,8BAA8B,EAAEX,OAAO,CAAC;IAClE9C,QAAQ,CAACyD,gBAAgB,CAAC,yBAAyB,EAAER,MAAM,CAAC;IAC5DjD,QAAQ,CAACyD,gBAAgB,CAAC,yBAAyB,EAAEN,gBAAgB,CAAC;IACtE;IACA;IACA,MAAMO,OAAO,GAAGA,CAAA,KAAM;MACpBvE,KAAK,CAAC,gBAAgB,CAAC;IACzB,CAAC;IACDa,QAAQ,CAACyD,gBAAgB,CAAC,kBAAkB,EAAEC,OAAO,CAAC;IACtD;IACA;IACA,MAAMC,WAAW,GAAGA,CAAC;MAAE3B,KAAK;MAAE4B;IAAkD,CAAC,KAAK;MACpFzE,KAAK,CAAC,qBAAqB,EAAE6C,KAAK,GAAG,WAAW4B,SAAS,IAAI,EAAE,IAAI5B,KAAK,EAAE,GAAG,IAAI,CAAC;MAClF;MACA;MACA,IAAIA,KAAK,EAAE;QAAC,IAAA6B,iCAAoB,EAAC,KAAK,CAAC;MAAC;IAC1C,CAAC;IACD7D,QAAQ,CAACyD,gBAAgB,CAAC,wBAAwB,EAAEE,WAAW,CAAC;IAChE3D,QAAQ,CAACyD,gBAAgB,CAAC,2BAA2B,EAAEF,kBAAkB,CAAC;IAE1E,OAAO,MAAM;MACXvD,QAAQ,CAAC8D,mBAAmB,CAAC,YAAY,CAAC;MAC1C9D,QAAQ,CAAC8D,mBAAmB,CAAC,SAAS,CAAC;MACvC9D,QAAQ,CAAC8D,mBAAmB,CAAC,8BAA8B,CAAC;MAC5D9D,QAAQ,CAAC8D,mBAAmB,CAAC,yBAAyB,CAAC;MACvD9D,QAAQ,CAAC8D,mBAAmB,CAAC,yBAAyB,CAAC;MACvD9D,QAAQ,CAAC8D,mBAAmB,CAAC,2BAA2B,CAAC;MACzD9D,QAAQ,CAAC8D,mBAAmB,CAAC,kBAAkB,CAAC;MAChD9D,QAAQ,CAAC8D,mBAAmB,CAAC,wBAAwB,CAAC;IACxD,CAAC;EACH,CAAC,EAAE,CAAC9D,QAAQ,EAAEP,QAAQ,CAAC,CAAC;EAExB,MAAMsE,WAAW,GAAGpE,IAAI,CAACqE,QAAQ,IAAI,QAAQ;EAC7C,MAAMC,SAAS,GACbtE,IAAI,CAAC2C,SAAS,KAAK,UAAU,IAAI3C,IAAI,CAAC4C,KAAK,KAAK,kBAAkB;EACpE,MAAM2B,MAAM,GAAGvE,IAAI,CAAC4C,KAAK,KAAK,YAAY,IAAI5C,IAAI,CAAC4C,KAAK,KAAK,SAAS;EACtE,MAAM4B,UAAU,GAAGxE,IAAI,CAAC2C,SAAS,KAAK,UAAU;EAChD,MAAM8B,aAAa,GAAGtE,OAAO,CAACuE,QAAQ,KAAK,IAAI;;EAE/C;EACA,IAAAzD,gBAAS,EAAC,MAAM;IACd,IAAI,CAACZ,QAAQ,IAAI,CAACE,KAAK,EAAE;MAAC;IAAO;IAEjC,MAAMoE,OAAO,GAAGA,CAAA,KAAM;MACpB,IAAI,CAACjE,aAAa,CAAC6B,OAAO,EAAE;QAAC;MAAO;MACpC,IAAI;QACFlC,QAAQ,CAACuE,OAAO,CAAClE,aAAa,CAAC6B,OAAO,CAAC;MACzC,CAAC,CAAC,MAAM;QACN;MAAA;MAEF7B,aAAa,CAAC6B,OAAO,GAAG,IAAI;MAC5B3B,WAAW,CAAC2B,OAAO,GAAG,KAAK;MAC3B1B,mBAAmB,CAAC0B,OAAO,GAAG,MAAM;IACtC,CAAC;IAED,IAAIvC,IAAI,CAAC4C,KAAK,KAAK,MAAM,IAAI5C,IAAI,CAAC4C,KAAK,KAAK,OAAO,EAAE;MACnD+B,OAAO,CAAC,CAAC;MACT;IACF;IAEA,IAAIL,SAAS,EAAE;MACb,IAAI5D,aAAa,CAAC6B,OAAO,EAAE;QAAC;MAAO;MACnC,MAAMsC,IAAI,GAAGzG,MAAM,CAAC4B,IAAI,CAAC8E,MAAM,IAAI9E,IAAI,CAAC+E,OAAO,IAAIC,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC,CAAC,CAAC;MACtExE,aAAa,CAAC6B,OAAO,GAAGsC,IAAI;MAC5BjE,WAAW,CAAC2B,OAAO,GAAG,KAAK;MAC3B;MACA;MACA,IAAIzB,KAAK,EAAE;QAAC,IAAAoD,iCAAoB,EAAC,IAAI,CAAC;MAAC;MACvC,IAAI;QACF7D,QAAQ,CAAC8E,mBAAmB,CAC1BN,IAAI,EACJT,WAAW,EACXA,WAAW,EACX,SAAS,EACTpE,IAAI,CAACoF,IAAI,KAAK,OAChB,CAAC;MACH,CAAC,CAAC,MAAM;QACN1E,aAAa,CAAC6B,OAAO,GAAG,IAAI;QAC5B,IAAA2B,iCAAoB,EAAC,KAAK,CAAC;MAC7B;MACA;IACF;;IAEA;IACA;IACA,IAAIpD,KAAK,IAAI0D,UAAU,IAAI,CAAC9D,aAAa,CAAC6B,OAAO,IAAIlC,QAAQ,CAACgF,SAAS,EAAE;MACvE;MACA;MACA,MAAMR,IAAI,GAAGzG,MAAM,CAAC,GAAG4B,IAAI,CAAC+E,OAAO,IAAI,EAAE,IAAI/E,IAAI,CAACsF,SAAS,IAAIL,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,CAAC;MAC5ExE,aAAa,CAAC6B,OAAO,GAAGsC,IAAI;MAC5BhE,mBAAmB,CAAC0B,OAAO,GAAG,MAAM;MACpC/C,KAAK,CAAC,WAAW,EAAEqF,IAAI,CAAC;MACxB,IAAI;QACFxE,QAAQ,CAACgF,SAAS,CAACR,IAAI,EAAET,WAAW,EAAEA,WAAW,EAAE,SAAS,EAAEpE,IAAI,CAACoF,IAAI,KAAK,OAAO,CAAC;MACtF,CAAC,CAAC,MAAM;QACN1E,aAAa,CAAC6B,OAAO,GAAG,IAAI;MAC9B;MACA;IACF;IAEA,MAAMsC,IAAI,GAAGnE,aAAa,CAAC6B,OAAO;IAClC,IAAI,CAACsC,IAAI,EAAE;MAAC;IAAO;IAEnB,IAAI/D,KAAK,IAAI0D,UAAU,EAAE;MACvB,IAAIC,aAAa,IAAI5D,mBAAmB,CAAC0B,OAAO,KAAK,WAAW,EAAE;QAChE1B,mBAAmB,CAAC0B,OAAO,GAAG,WAAW;QACzClC,QAAQ,CAACkF,mCAAmC,GAAGV,IAAI,CAAC;MACtD,CAAC,MAAM,IACLN,MAAM,IACN,CAACE,aAAa,IACd5D,mBAAmB,CAAC0B,OAAO,KAAK,MAAM,EACtC;QACA1B,mBAAmB,CAAC0B,OAAO,GAAG,YAAY;QAC1ClC,QAAQ,CAACmF,oCAAoC,GAAGX,IAAI,CAAC;MACvD;MACA;IACF;;IAEA;IACA;IACA,IAAI/D,KAAK,IAAIyD,MAAM,IAAI,CAAC3D,WAAW,CAAC2B,OAAO,EAAE;MAC3C3B,WAAW,CAAC2B,OAAO,GAAG,IAAI;MAC1B,IAAI;QACFlC,QAAQ,CAACoF,kBAAkB,GAAGZ,IAAI,CAAC;MACrC,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ;EACF,CAAC,EAAE,CACDxE,QAAQ,EACRE,KAAK,EACLO,KAAK,EACLwD,SAAS,EACTC,MAAM,EACNC,UAAU,EACVC,aAAa,EACbL,WAAW,EACXpE,IAAI,CAAC4C,KAAK,EACV5C,IAAI,CAAC8E,MAAM,EACX9E,IAAI,CAAC+E,OAAO,EACZ/E,IAAI,CAACsF,SAAS,EACdtF,IAAI,CAACoF,IAAI,CACV,CAAC;;EAEF;EACA,IAAAnE,gBAAS,EAAC,MAAM;IACd,MAAM4D,IAAI,GAAGnE,aAAa,CAAC6B,OAAO;IAClC,IAAI,CAAClC,QAAQ,IAAI,CAACE,KAAK,IAAI,CAACO,KAAK,IAAI,CAAC+D,IAAI,IAAI,CAACN,MAAM,EAAE;MAAC;IAAO;IAC/D,IAAI;MACFlE,QAAQ,CAACqF,YAAY,GAAGb,IAAI,EAAE,CAAC1E,OAAO,CAACwF,KAAK,CAAC;IAC/C,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ,CAAC,EAAE,CAACtF,QAAQ,EAAEE,KAAK,EAAEO,KAAK,EAAEyD,MAAM,EAAEpE,OAAO,CAACwF,KAAK,CAAC,CAAC;;EAEnD;EACA;EACA,IAAA1E,gBAAS,EACP,MAAM,MAAM;IACV,IAAIZ,QAAQ,IAAIK,aAAa,CAAC6B,OAAO,EAAE;MACrC,IAAI;QACFlC,QAAQ,CAACuE,OAAO,CAAClE,aAAa,CAAC6B,OAAO,CAAC;MACzC,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ;EACF,CAAC,EACD,CAAClC,QAAQ,CACX,CAAC;AACH,CAAC;AAAClC,OAAA,CAAA0B,WAAA,GAAAA,WAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_reactRedux","_roomStore","_callSlice","_callTokenStanza","_callActions","_callSessionController","_livekitRuntime","_callUiStore","_systemCall","trace","args","__DEV__","console","log","useCallKeep","dispatch","useDispatch","call","useSelector","state","session","useCallSession","callKeep","useMemo","loadCallKeep","ready","setReady","useState","activeUuidRef","useRef","answeredRef","outgoingReportedRef","isIOS","Platform","OS","useEffect","cancelled","setup","ios","appName","supportsVideo","maximumCallGroups","maximumCallsPerCallGroup","includesCallsInRecents","android","alertTitle","alertDescription","cancelButton","okButton","additionalPermissions","foregroundService","channelId","channelName","notificationTitle","setAvailable","error","isOtherCall","payload","uuid","String","callUUID","toLowerCase","active","current","store","getState","ringingUuid","direction","callId","callKitUuid","onAnswer","rememberSystemCallAction","backToForeground","phase","acceptIncomingCall","onEnd","snapshot","sendCallStateSignal","declineIncomingCall","terminateActiveCall","onMuted","muted","setCallMicEnabled","onHold","hold","onAudioActivated","loadLiveKit","RTCAudioSession","audioSessionDidActivate","onAudioDeactivated","audioSessionDidDeactivate","addEventListener","onReset","onDisplayed","errorCode","fromPushKit","setCallSystemRinging","replay","RNCallKeepPerformAnswerCallAction","RNCallKeepPerformEndCallAction","RNCallKeepDidDisplayIncomingCall","RNCallKeepDidActivateAudioSession","RNCallKeepDidDeactivateAudioSession","RNCallKeepDidPerformSetMutedCallAction","onLoadWithEvents","events","Array","isArray","length","map","e","name","join","clearInitialEvents","event","data","removeEventListener","displayName","roomName","isRinging","isLive","isOutgoing","peerConnected","anchorAt","release","endCall","roomJid","Date","now","earlier","takeSystemCallAction","declineActiveCallWhenOnline","displayIncomingCall","kind","startCall","startedAt","reportConnectedOutgoingCallWithUUID","reportConnectingOutgoingCallWithUUID","answerIncomingCall","setMutedCall","micOn","exports"],"sourceRoot":"../../../../src","sources":["components/VideoCalls/useCallKeep.ts"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,gBAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AACA,IAAAO,sBAAA,GAAAP,OAAA;AACA,IAAAQ,eAAA,GAAAR,OAAA;AACA,IAAAS,YAAA,GAAAT,OAAA;AACA,IAAAU,WAAA,GAAAV,OAAA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA,MAAMW,KAAK,GAAGA,CAAC,GAAGC,IAAe,KAAK;EACpC,IAAIC,OAAO,EAAE;IAACC,OAAO,CAACC,GAAG,CAAC,kBAAkB,EAAE,GAAGH,IAAI,CAAC;EAAC;AACzD,CAAC;AAEM,MAAMI,WAAW,GAAGA,CAAA,KAAY;EACrC,MAAMC,QAAQ,GAAG,IAAAC,uBAAW,EAAC,CAAC;EAC9B,MAAMC,IAAI,GAAG,IAAAC,uBAAW,EAAEC,KAAgB,IAAKA,KAAK,CAACF,IAAI,CAAC;EAC1D,MAAMG,OAAO,GAAG,IAAAC,qCAAc,EAAC,CAAC;EAChC,MAAMC,QAAQ,GAAG,IAAAC,cAAO,EAAC,MAAM,IAAAC,wBAAY,EAAC,CAAC,EAAE,EAAE,CAAC;EAClD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACzC,MAAMC,aAAa,GAAG,IAAAC,aAAM,EAAgB,IAAI,CAAC;EACjD;EACA,MAAMC,WAAW,GAAG,IAAAD,aAAM,EAAC,KAAK,CAAC;EACjC,MAAME,mBAAmB,GAAG,IAAAF,aAAM,EAAsC,MAAM,CAAC;EAC/E,MAAMG,KAAK,GAAGC,qBAAQ,CAACC,EAAE,KAAK,KAAK;;EAEnC;EACA,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAACb,QAAQ,EAAE;MACb,IAAIU,KAAK,EAAE;QACT;QACA;QACAvB,KAAK,CAAC,iEAAiE,CAAC;MAC1E;MACA;IACF;IACA,IAAI2B,SAAS,GAAG,KAAK;IAErB,CAAC,YAAY;MACX,IAAI;QACF,MAAMd,QAAQ,CAACe,KAAK,CAAC;UACnBC,GAAG,EAAE;YACHC,OAAO,EAAE,QAAQ;YACjBC,aAAa,EAAE,IAAI;YACnBC,iBAAiB,EAAE,GAAG;YACtBC,wBAAwB,EAAE,GAAG;YAC7B;YACA;YACAC,sBAAsB,EAAE;UAC1B,CAAC;UACDC,OAAO,EAAE;YACPC,UAAU,EAAE,sBAAsB;YAClCC,gBAAgB,EACd,6EAA6E;YAC/EC,YAAY,EAAE,QAAQ;YACtBC,QAAQ,EAAE,IAAI;YACdC,qBAAqB,EAAE,EAAE;YACzBC,iBAAiB,EAAE;cACjBC,SAAS,EAAE,uBAAuB;cAClCC,WAAW,EAAE,gBAAgB;cAC7BC,iBAAiB,EAAE;YACrB;UACF;QACF,CAAC,CAAC;QACF,IAAIjB,SAAS,EAAE;UAAC;QAAO;QACvBd,QAAQ,CAACgC,YAAY,GAAG,IAAI,CAAC;QAC7B7C,KAAK,CAAC,OAAO,CAAC;QACdiB,QAAQ,CAAC,IAAI,CAAC;MAChB,CAAC,CAAC,OAAO6B,KAAK,EAAE;QACd9C,KAAK,CAAC,cAAc,EAAE8C,KAAK,CAAC;QAC5B;QACA;QACA7B,QAAQ,CAAC,KAAK,CAAC;MACjB;IACF,CAAC,EAAE,CAAC;IAEJ,OAAO,MAAM;MACXU,SAAS,GAAG,IAAI;IAClB,CAAC;EACH,CAAC,EAAE,CAACd,QAAQ,EAAEU,KAAK,CAAC,CAAC;;EAErB;EACA,IAAAG,gBAAS,EAAC,MAAM;IACd,IAAI,CAACb,QAAQ,EAAE;MAAC;IAAO;IAEvB,MAAMkC,WAAW,GAAIC,OAAY,IAAc;MAC7C,MAAMC,IAAI,GAAGC,MAAM,CAACF,OAAO,EAAEG,QAAQ,IAAI,EAAE,CAAC,CAACC,WAAW,CAAC,CAAC;MAC1D,IAAI,CAACH,IAAI,EAAE;QAAC,OAAO,KAAK;MAAC;MACzB,MAAMI,MAAM,GAAGlC,aAAa,CAACmC,OAAO,EAAEF,WAAW,CAAC,CAAC,IAAI,IAAI;MAC3D,IAAIC,MAAM,KAAKJ,IAAI,EAAE;QAAC,OAAO,KAAK;MAAC;MACnC,MAAMK,OAAO,GAAGC,gBAAK,CAACC,QAAQ,CAAC,CAAC,CAAChD,IAAI;MACrC,MAAMiD,WAAW,GACfH,OAAO,CAACI,SAAS,KAAK,UAAU,IAAIJ,OAAO,CAACK,MAAM,GAC9C,IAAAC,uBAAW,EAACN,OAAO,CAACK,MAAM,CAAC,GAC3B,IAAI;MACV,OAAOF,WAAW,KAAKR,IAAI;IAC7B,CAAC;IAED,MAAMY,QAAQ,GAAIb,OAAa,IAAK;MAClC,IAAID,WAAW,CAACC,OAAO,CAAC,EAAE;QACxBhD,KAAK,CAAC,gCAAgC,EAAEgD,OAAO,EAAEG,QAAQ,CAAC;QAC1D,IAAAW,oCAAwB,EAACZ,MAAM,CAACF,OAAO,CAACG,QAAQ,CAAC,EAAE,QAAQ,CAAC;QAC5D;MACF;MACA9B,WAAW,CAACiC,OAAO,GAAG,IAAI;MAC1B;MACA;MACAzC,QAAQ,CAACkD,gBAAgB,GAAG,CAAC;MAC7B;MACA;MACA;MACA,MAAMT,OAAO,GAAGC,gBAAK,CAACC,QAAQ,CAAC,CAAC,CAAChD,IAAI;MACrC,IAAI8C,OAAO,CAACI,SAAS,KAAK,UAAU,IAAIJ,OAAO,CAACU,KAAK,KAAK,kBAAkB,EAAE;QAC5E1D,QAAQ,CAAC,IAAA2D,6BAAkB,EAAC,CAAC,CAAC;MAChC;IACF,CAAC;IAED,MAAMC,KAAK,GAAIlB,OAAa,IAAK;MAC/B,IAAID,WAAW,CAACC,OAAO,CAAC,EAAE;QACxBhD,KAAK,CAAC,kCAAkC,EAAEgD,OAAO,EAAEG,QAAQ,CAAC;QAC5D,IAAAW,oCAAwB,EAACZ,MAAM,CAACF,OAAO,CAACG,QAAQ,CAAC,EAAE,KAAK,CAAC;QACzD;MACF;MACA,MAAMgB,QAAQ,GAAGZ,gBAAK,CAACC,QAAQ,CAAC,CAAC,CAAChD,IAAI;MACtC,IAAI2D,QAAQ,CAACH,KAAK,KAAK,MAAM,EAAE;QAAC;MAAO;MACvC,IACEG,QAAQ,CAACT,SAAS,KAAK,UAAU,IACjCS,QAAQ,CAACH,KAAK,KAAK,kBAAkB,EACrC;QACA,IAAAI,oCAAmB,EAAC,UAAU,CAAC;QAC/B9D,QAAQ,CAAC,IAAA+D,8BAAmB,EAAC,CAAC,CAAC;QAC/B;MACF;MACA;MACA,IAAIF,QAAQ,CAACH,KAAK,KAAK,OAAO,EAAE;QAAC;MAAO;MACxC,IAAAM,gCAAmB,EAACH,QAAQ,CAACH,KAAK,KAAK,YAAY,GAAG,WAAW,GAAG,OAAO,CAAC;IAC9E,CAAC;;IAED;IACA,MAAMO,OAAO,GAAGA,CAAC;MAAEC;IAA0B,CAAC,KAAK;MACjD,KAAK,IAAAC,wCAAiB,EAAC,CAACD,KAAK,CAAC;IAChC,CAAC;;IAED;IACA,MAAME,MAAM,GAAGA,CAAC;MAAEC;IAAwB,CAAC,KAAK;MAC9C,IAAIA,IAAI,EAAE;QAAC,KAAK,IAAAF,wCAAiB,EAAC,KAAK,CAAC;MAAC;IAC3C,CAAC;;IAED;IACA;IACA,MAAMG,gBAAgB,GAAGA,CAAA,KAAM;MAC7B,IAAI;QACF,IAAAC,2BAAW,EAAC,CAAC,EAAEC,eAAe,EAAEC,uBAAuB,GAAG,CAAC;MAC7D,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ,CAAC;IACD,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;MAC/B,IAAI;QACF,IAAAH,2BAAW,EAAC,CAAC,EAAEC,eAAe,EAAEG,yBAAyB,GAAG,CAAC;MAC/D,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ,CAAC;IAEDpE,QAAQ,CAACqE,gBAAgB,CAAC,YAAY,EAAErB,QAAQ,CAAC;IACjDhD,QAAQ,CAACqE,gBAAgB,CAAC,SAAS,EAAEhB,KAAK,CAAC;IAC3CrD,QAAQ,CAACqE,gBAAgB,CAAC,8BAA8B,EAAEX,OAAO,CAAC;IAClE1D,QAAQ,CAACqE,gBAAgB,CAAC,yBAAyB,EAAER,MAAM,CAAC;IAC5D7D,QAAQ,CAACqE,gBAAgB,CAAC,yBAAyB,EAAEN,gBAAgB,CAAC;IACtE;IACA;IACA,MAAMO,OAAO,GAAGA,CAAA,KAAM;MACpBnF,KAAK,CAAC,gBAAgB,CAAC;IACzB,CAAC;IACDa,QAAQ,CAACqE,gBAAgB,CAAC,kBAAkB,EAAEC,OAAO,CAAC;IACtD;IACA;IACA,MAAMC,WAAW,GAAGA,CAAC;MACnBtC,KAAK;MACLuC,SAAS;MACTC;IAKF,CAAC,KAAK;MACJtF,KAAK,CACH,sBAAsBsF,WAAW,KAAK,GAAG,GAAG,YAAY,GAAG,EAAE,EAAE,EAC/DxC,KAAK,GAAG,WAAWuC,SAAS,IAAI,EAAE,IAAIvC,KAAK,EAAE,GAAG,IAClD,CAAC;MACD,IAAIuC,SAAS,KAAK,uBAAuB,EAAE;QAAC;MAAO;MACnD;MACA,IAAIvC,KAAK,IAAIwC,WAAW,KAAK,GAAG,EAAE;QAAC,IAAAC,iCAAoB,EAAC,KAAK,CAAC;MAAC;IACjE,CAAC;IACD1E,QAAQ,CAACqE,gBAAgB,CAAC,wBAAwB,EAAEE,WAAW,CAAC;IAChEvE,QAAQ,CAACqE,gBAAgB,CAAC,2BAA2B,EAAEF,kBAAkB,CAAC;IAE1E,MAAMQ,MAA2C,GAAG;MAClDC,iCAAiC,EAAE5B,QAAQ;MAC3C6B,8BAA8B,EAAExB,KAAK;MACrCyB,gCAAgC,EAAEP,WAAW;MAC7CQ,iCAAiC,EAAEhB,gBAAgB;MACnDiB,mCAAmC,EAAEb,kBAAkB;MACvDc,sCAAsC,EAAEvB;IAC1C,CAAC;IACD,MAAMwB,gBAAgB,GAAIC,MAAqC,IAAK;MAClE,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,MAAM,CAAC,IAAIA,MAAM,CAACG,MAAM,KAAK,CAAC,EAAE;QAAC;MAAO;MAC3DnG,KAAK,CAAC,WAAW,EAAEgG,MAAM,CAACI,GAAG,CAAEC,CAAC,IAAKA,CAAC,CAACC,IAAI,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,CAAC;MACxD1F,QAAQ,CAAC2F,kBAAkB,GAAG,CAAC;MAC/B,KAAK,MAAMC,KAAK,IAAIT,MAAM,EAAE;QAC1BR,MAAM,CAACiB,KAAK,CAACH,IAAI,CAAC,GAAGG,KAAK,CAACC,IAAI,CAAC;MAClC;IACF,CAAC;IACD7F,QAAQ,CAACqE,gBAAgB,CAAC,mBAAmB,EAAEa,gBAAgB,CAAC;IAEhE,OAAO,MAAM;MACXlF,QAAQ,CAAC8F,mBAAmB,CAAC,mBAAmB,CAAC;MACjD9F,QAAQ,CAAC8F,mBAAmB,CAAC,YAAY,CAAC;MAC1C9F,QAAQ,CAAC8F,mBAAmB,CAAC,SAAS,CAAC;MACvC9F,QAAQ,CAAC8F,mBAAmB,CAAC,8BAA8B,CAAC;MAC5D9F,QAAQ,CAAC8F,mBAAmB,CAAC,yBAAyB,CAAC;MACvD9F,QAAQ,CAAC8F,mBAAmB,CAAC,yBAAyB,CAAC;MACvD9F,QAAQ,CAAC8F,mBAAmB,CAAC,2BAA2B,CAAC;MACzD9F,QAAQ,CAAC8F,mBAAmB,CAAC,kBAAkB,CAAC;MAChD9F,QAAQ,CAAC8F,mBAAmB,CAAC,wBAAwB,CAAC;IACxD,CAAC;EACH,CAAC,EAAE,CAAC9F,QAAQ,EAAEP,QAAQ,CAAC,CAAC;EAExB,MAAMsG,WAAW,GAAGpG,IAAI,CAACqG,QAAQ,IAAI,QAAQ;EAC7C,MAAMC,SAAS,GACbtG,IAAI,CAACkD,SAAS,KAAK,UAAU,IAAIlD,IAAI,CAACwD,KAAK,KAAK,kBAAkB;EACpE,MAAM+C,MAAM,GAAGvG,IAAI,CAACwD,KAAK,KAAK,YAAY,IAAIxD,IAAI,CAACwD,KAAK,KAAK,SAAS;EACtE,MAAMgD,UAAU,GAAGxG,IAAI,CAACkD,SAAS,KAAK,UAAU;EAChD,MAAMuD,aAAa,GAAGtG,OAAO,CAACuG,QAAQ,KAAK,IAAI;;EAE/C;EACA,IAAAxF,gBAAS,EAAC,MAAM;IACd,IAAI,CAACb,QAAQ,IAAI,CAACG,KAAK,EAAE;MAAC;IAAO;IAEjC,MAAMmG,OAAO,GAAGA,CAAA,KAAM;MACpB,IAAI,CAAChG,aAAa,CAACmC,OAAO,EAAE;QAAC;MAAO;MACpC,IAAI;QACFzC,QAAQ,CAACuG,OAAO,CAACjG,aAAa,CAACmC,OAAO,CAAC;MACzC,CAAC,CAAC,MAAM;QACN;MAAA;MAEFnC,aAAa,CAACmC,OAAO,GAAG,IAAI;MAC5BjC,WAAW,CAACiC,OAAO,GAAG,KAAK;MAC3BhC,mBAAmB,CAACgC,OAAO,GAAG,MAAM;IACtC,CAAC;IAED,IAAI9C,IAAI,CAACwD,KAAK,KAAK,MAAM,IAAIxD,IAAI,CAACwD,KAAK,KAAK,OAAO,EAAE;MACnDmD,OAAO,CAAC,CAAC;MACT;IACF;IAEA,IAAIL,SAAS,EAAE;MACb,IAAI3F,aAAa,CAACmC,OAAO,EAAE;QAAC;MAAO;MACnC,MAAML,IAAI,GAAG,IAAAW,uBAAW,EAACpD,IAAI,CAACmD,MAAM,IAAInD,IAAI,CAAC6G,OAAO,IAAInE,MAAM,CAACoE,IAAI,CAACC,GAAG,CAAC,CAAC,CAAC,CAAC;MAC3EpG,aAAa,CAACmC,OAAO,GAAGL,IAAI;MAC5B5B,WAAW,CAACiC,OAAO,GAAG,KAAK;MAC3B,MAAMkE,OAAO,GAAG,IAAAC,gCAAoB,EAACxE,IAAI,CAAC;MAC1C,IAAIuE,OAAO,KAAK,QAAQ,EAAE;QACxBxH,KAAK,CAAC,uCAAuC,EAAEiD,IAAI,CAAC;QACpD5B,WAAW,CAACiC,OAAO,GAAG,IAAI;QAC1BhD,QAAQ,CAAC,IAAA2D,6BAAkB,EAAC,CAAC,CAAC;QAC9B;MACF;MACA,IAAIuD,OAAO,KAAK,KAAK,EAAE;QACrBxH,KAAK,CAAC,uCAAuC,EAAEiD,IAAI,CAAC;QACpD9B,aAAa,CAACmC,OAAO,GAAG,IAAI;QAC5B,IAAAoE,wCAA2B,EAAC,CAAC;QAC7B;MACF;MACA;MACA,IAAInG,KAAK,EAAE;QAAC,IAAAgE,iCAAoB,EAAC,IAAI,CAAC;MAAC;MACvC,IAAI;QACF1E,QAAQ,CAAC8G,mBAAmB,CAC1B1E,IAAI,EACJ2D,WAAW,EACXA,WAAW,EACX,SAAS,EACTpG,IAAI,CAACoH,IAAI,KAAK,OAChB,CAAC;MACH,CAAC,CAAC,MAAM;QACNzG,aAAa,CAACmC,OAAO,GAAG,IAAI;QAC5B,IAAAiC,iCAAoB,EAAC,KAAK,CAAC;MAC7B;MACA;IACF;;IAEA;IACA;IACA,IAAIhE,KAAK,IAAIyF,UAAU,IAAI,CAAC7F,aAAa,CAACmC,OAAO,IAAIzC,QAAQ,CAACgH,SAAS,EAAE;MACvE;MACA;MACA,MAAM5E,IAAI,GAAG,IAAAW,uBAAW,EAAC,GAAGpD,IAAI,CAAC6G,OAAO,IAAI,EAAE,IAAI7G,IAAI,CAACsH,SAAS,IAAIR,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,CAAC;MACjFpG,aAAa,CAACmC,OAAO,GAAGL,IAAI;MAC5B3B,mBAAmB,CAACgC,OAAO,GAAG,MAAM;MACpCtD,KAAK,CAAC,WAAW,EAAEiD,IAAI,CAAC;MACxB,IAAI;QACFpC,QAAQ,CAACgH,SAAS,CAAC5E,IAAI,EAAE2D,WAAW,EAAEA,WAAW,EAAE,SAAS,EAAEpG,IAAI,CAACoH,IAAI,KAAK,OAAO,CAAC;MACtF,CAAC,CAAC,MAAM;QACNzG,aAAa,CAACmC,OAAO,GAAG,IAAI;MAC9B;MACA;IACF;IAEA,MAAML,IAAI,GAAG9B,aAAa,CAACmC,OAAO;IAClC,IAAI,CAACL,IAAI,EAAE;MAAC;IAAO;IAEnB,IAAI1B,KAAK,IAAIyF,UAAU,EAAE;MACvB,IAAIC,aAAa,IAAI3F,mBAAmB,CAACgC,OAAO,KAAK,WAAW,EAAE;QAChEhC,mBAAmB,CAACgC,OAAO,GAAG,WAAW;QACzCzC,QAAQ,CAACkH,mCAAmC,GAAG9E,IAAI,CAAC;MACtD,CAAC,MAAM,IACL8D,MAAM,IACN,CAACE,aAAa,IACd3F,mBAAmB,CAACgC,OAAO,KAAK,MAAM,EACtC;QACAhC,mBAAmB,CAACgC,OAAO,GAAG,YAAY;QAC1CzC,QAAQ,CAACmH,oCAAoC,GAAG/E,IAAI,CAAC;MACvD;MACA;IACF;;IAEA;IACA;IACA,IAAI1B,KAAK,IAAIwF,MAAM,IAAI,CAAC1F,WAAW,CAACiC,OAAO,EAAE;MAC3CjC,WAAW,CAACiC,OAAO,GAAG,IAAI;MAC1B,IAAI;QACFzC,QAAQ,CAACoH,kBAAkB,GAAGhF,IAAI,CAAC;MACrC,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ;EACF,CAAC,EAAE,CACDpC,QAAQ,EACRG,KAAK,EACLV,QAAQ,EACRiB,KAAK,EACLuF,SAAS,EACTC,MAAM,EACNC,UAAU,EACVC,aAAa,EACbL,WAAW,EACXpG,IAAI,CAACwD,KAAK,EACVxD,IAAI,CAACmD,MAAM,EACXnD,IAAI,CAAC6G,OAAO,EACZ7G,IAAI,CAACsH,SAAS,EACdtH,IAAI,CAACoH,IAAI,CACV,CAAC;;EAEF;EACA,IAAAlG,gBAAS,EAAC,MAAM;IACd,MAAMuB,IAAI,GAAG9B,aAAa,CAACmC,OAAO;IAClC,IAAI,CAACzC,QAAQ,IAAI,CAACG,KAAK,IAAI,CAACO,KAAK,IAAI,CAAC0B,IAAI,IAAI,CAAC8D,MAAM,EAAE;MAAC;IAAO;IAC/D,IAAI;MACFlG,QAAQ,CAACqH,YAAY,GAAGjF,IAAI,EAAE,CAACtC,OAAO,CAACwH,KAAK,CAAC;IAC/C,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ,CAAC,EAAE,CAACtH,QAAQ,EAAEG,KAAK,EAAEO,KAAK,EAAEwF,MAAM,EAAEpG,OAAO,CAACwH,KAAK,CAAC,CAAC;;EAEnD;EACA;EACA,IAAAzG,gBAAS,EACP,MAAM,MAAM;IACV,IAAIb,QAAQ,IAAIM,aAAa,CAACmC,OAAO,EAAE;MACrC,IAAI;QACFzC,QAAQ,CAACuG,OAAO,CAACjG,aAAa,CAACmC,OAAO,CAAC;MACzC,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ;EACF,CAAC,EACD,CAACzC,QAAQ,CACX,CAAC;AACH,CAAC;AAACuH,OAAA,CAAA/H,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -3,33 +3,72 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.handleCallPush = void 0;
6
+ exports.handleCallPush = exports.declineCallFromPush = exports.answerCallFromPush = exports.__resetCallPushForTests = void 0;
7
7
  var _roomStore = require("../roomStore");
8
8
  var _callSlice = require("../roomStore/callSlice");
9
+ var _systemCall = require("../components/VideoCalls/systemCall");
10
+ var _callActions = require("../components/VideoCalls/callActions");
9
11
  var _callPush = require("./callPush");
10
- /**
11
- * Turn an incoming-call push into a ringing call.
12
- *
13
- * On mobile the XMPP socket dies whenever the OS backgrounds or kills the
14
- * app, and the `call-token` stanza that normally opens the ring screen is
15
- * lost with it. The backend also delivers the call as a data push, so this
16
- * is the path every call takes when the app was not in the foreground.
17
- *
18
- * Returns true when the payload WAS a call push (whether or not it could
19
- * be rung), so the caller knows to stop and not also show it as a chat
20
- * notification. A user should never get a "new message: call-state" toast.
21
- */
22
- const handleCallPush = data => {
23
- if (!(0, _callPush.isCallPush)(data)) {
24
- return false;
12
+ var _normalizeRoomJid = require("./normalizeRoomJid");
13
+ const PENDING_CALL_PUSH_TTL_MS = 60_000;
14
+ let pendingPush = null;
15
+ let unwatch = null;
16
+ const trace = (...args) => {
17
+ if (__DEV__) {
18
+ console.log('[calls] push:', ...args);
19
+ }
20
+ };
21
+ const callsConfigured = () => _roomStore.store.getState().chatSettingStore.config?.videoCalls !== undefined;
22
+ const holdUntilConfigured = (data, intent) => {
23
+ pendingPush = {
24
+ data,
25
+ intent,
26
+ at: Date.now()
27
+ };
28
+ if (unwatch) {
29
+ return;
30
+ }
31
+ unwatch = _roomStore.store.subscribe(() => {
32
+ if (!callsConfigured()) {
33
+ return;
34
+ }
35
+ unwatch?.();
36
+ unwatch = null;
37
+ const held = pendingPush;
38
+ pendingPush = null;
39
+ if (!held) {
40
+ return;
41
+ }
42
+ if (Date.now() - held.at > PENDING_CALL_PUSH_TTL_MS) {
43
+ trace('held call push expired');
44
+ (0, _systemCall.endSystemIncomingCall)((0, _callPush.parseCallPush)(held.data).callId);
45
+ return;
46
+ }
47
+ ringFromPush(held.data, held.intent);
48
+ });
49
+ };
50
+ const applyIntent = intent => {
51
+ const call = _roomStore.store.getState().call;
52
+ if (call.direction !== 'incoming' || call.phase !== 'ringing-incoming') {
53
+ return;
54
+ }
55
+ if (intent === 'answer') {
56
+ _roomStore.store.dispatch((0, _callSlice.acceptIncomingCall)());
57
+ }
58
+ if (intent === 'decline') {
59
+ (0, _callActions.declineActiveCallWhenOnline)();
25
60
  }
61
+ };
62
+ const ringFromPush = (data, intent) => {
26
63
  const parsed = (0, _callPush.parseCallPush)(data);
27
64
  const state = _roomStore.store.getState();
28
65
 
29
66
  // Calls off in this deployment: swallow the push rather than ringing a
30
67
  // screen the host never opted into.
31
68
  if (state.chatSettingStore.config?.videoCalls?.enabled !== true) {
32
- return true;
69
+ trace('calls are off, dropping', parsed.callId);
70
+ (0, _systemCall.endSystemIncomingCall)(parsed.callId);
71
+ return false;
33
72
  }
34
73
 
35
74
  // Already ringing or in this exact call (the push raced the stanza, or
@@ -38,9 +77,15 @@ const handleCallPush = data => {
38
77
  const current = state.call;
39
78
  if (current.phase !== 'idle') {
40
79
  const sameCall = !!parsed.callId && parsed.callId === current.callId || !!parsed.roomBareName && parsed.roomBareName === current.roomBareName;
41
- if (sameCall || current.phase === 'in-call') {
80
+ if (sameCall) {
81
+ applyIntent(intent);
42
82
  return true;
43
83
  }
84
+ if (current.phase === 'in-call') {
85
+ // Busy with another call: no second ring.
86
+ (0, _systemCall.endSystemIncomingCall)(parsed.callId);
87
+ return false;
88
+ }
44
89
  }
45
90
 
46
91
  // Without a LiveKit token there is nothing to accept: the push is only
@@ -48,16 +93,21 @@ const handleCallPush = data => {
48
93
  // cannot work, so treat it as handled and let the stanza (once the
49
94
  // socket is back up) open the real ring screen.
50
95
  if (!parsed.token) {
51
- return true;
96
+ (0, _systemCall.endSystemIncomingCall)(parsed.callId);
97
+ return false;
52
98
  }
53
99
 
54
100
  // Resolve the full room JID from the local room map. The push carries
55
101
  // the bare name; callSlice and the hangup signal both want the JID.
56
102
  const rooms = state.rooms.rooms || {};
57
103
  const resolved = Object.values(rooms).find(room => (room?.jid || '').split('@')[0] === parsed.roomBareName || room?.jid === parsed.roomRef);
58
- const roomJid = resolved?.jid || (parsed.roomRef && parsed.roomRef.includes('@') ? parsed.roomRef : '');
104
+ const conference = state.chatSettingStore.config?.xmppSettings?.conference || '';
105
+ const fromRef = parsed.roomRef ? (0, _normalizeRoomJid.normalizeRoomJid)(parsed.roomRef, conference) : '';
106
+ const roomJid = resolved?.jid || (fromRef.includes('@') ? fromRef : '');
59
107
  if (!roomJid) {
60
- return true;
108
+ trace('no room for call push', parsed.roomRef);
109
+ (0, _systemCall.endSystemIncomingCall)(parsed.callId);
110
+ return false;
61
111
  }
62
112
  _roomStore.store.dispatch((0, _callSlice.setIncomingCallToken)({
63
113
  roomJid,
@@ -68,7 +118,31 @@ const handleCallPush = data => {
68
118
  callId: parsed.callId,
69
119
  peerXmppUsername: parsed.callerXmppUsername
70
120
  }));
121
+ trace('ringing', parsed.callId, intent);
122
+ applyIntent(intent);
123
+ return true;
124
+ };
125
+ const handleCallPush = (data, intent = 'ring') => {
126
+ if (!(0, _callPush.isCallPush)(data)) {
127
+ return false;
128
+ }
129
+ if (!callsConfigured()) {
130
+ trace('holding call push until the chat is configured');
131
+ holdUntilConfigured(data, intent);
132
+ return true;
133
+ }
134
+ ringFromPush(data, intent);
71
135
  return true;
72
136
  };
73
137
  exports.handleCallPush = handleCallPush;
138
+ const answerCallFromPush = data => handleCallPush(data, 'answer');
139
+ exports.answerCallFromPush = answerCallFromPush;
140
+ const declineCallFromPush = data => handleCallPush(data, 'decline');
141
+ exports.declineCallFromPush = declineCallFromPush;
142
+ const __resetCallPushForTests = () => {
143
+ unwatch?.();
144
+ unwatch = null;
145
+ pendingPush = null;
146
+ };
147
+ exports.__resetCallPushForTests = __resetCallPushForTests;
74
148
  //# sourceMappingURL=incomingCallFromPush.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_roomStore","require","_callSlice","_callPush","handleCallPush","data","isCallPush","parsed","parseCallPush","state","store","getState","chatSettingStore","config","videoCalls","enabled","current","call","phase","sameCall","callId","roomBareName","token","rooms","resolved","Object","values","find","room","jid","split","roomRef","roomJid","includes","dispatch","setIncomingCallToken","roomName","callerName","title","name","kind","peerXmppUsername","callerXmppUsername","exports"],"sourceRoot":"../../../src","sources":["helpers/incomingCallFromPush.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMG,cAAc,GACzBC,IAA4C,IAChC;EACZ,IAAI,CAAC,IAAAC,oBAAU,EAACD,IAAI,CAAC,EAAE;IACrB,OAAO,KAAK;EACd;EAEA,MAAME,MAAM,GAAG,IAAAC,uBAAa,EAACH,IAAI,CAAC;EAClC,MAAMI,KAAK,GAAGC,gBAAK,CAACC,QAAQ,CAAC,CAAC;;EAE9B;EACA;EACA,IAAIF,KAAK,CAACG,gBAAgB,CAACC,MAAM,EAAEC,UAAU,EAAEC,OAAO,KAAK,IAAI,EAAE;IAC/D,OAAO,IAAI;EACb;;EAEA;EACA;EACA;EACA,MAAMC,OAAO,GAAGP,KAAK,CAACQ,IAAI;EAC1B,IAAID,OAAO,CAACE,KAAK,KAAK,MAAM,EAAE;IAC5B,MAAMC,QAAQ,GACX,CAAC,CAACZ,MAAM,CAACa,MAAM,IAAIb,MAAM,CAACa,MAAM,KAAKJ,OAAO,CAACI,MAAM,IACnD,CAAC,CAACb,MAAM,CAACc,YAAY,IAAId,MAAM,CAACc,YAAY,KAAKL,OAAO,CAACK,YAAa;IACzE,IAAIF,QAAQ,IAAIH,OAAO,CAACE,KAAK,KAAK,SAAS,EAAE;MAC3C,OAAO,IAAI;IACb;EACF;;EAEA;EACA;EACA;EACA;EACA,IAAI,CAACX,MAAM,CAACe,KAAK,EAAE;IACjB,OAAO,IAAI;EACb;;EAEA;EACA;EACA,MAAMC,KAAK,GAAGd,KAAK,CAACc,KAAK,CAACA,KAAK,IAAI,CAAC,CAAC;EACrC,MAAMC,QAAQ,GAAGC,MAAM,CAACC,MAAM,CAACH,KAAK,CAAC,CAACI,IAAI,CACvCC,IAAS,IACR,CAACA,IAAI,EAAEC,GAAG,IAAI,EAAE,EAAEC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAKvB,MAAM,CAACc,YAAY,IACvDO,IAAI,EAAEC,GAAG,KAAKtB,MAAM,CAACwB,OACzB,CAAgE;EAEhE,MAAMC,OAAO,GACXR,QAAQ,EAAEK,GAAG,KACZtB,MAAM,CAACwB,OAAO,IAAIxB,MAAM,CAACwB,OAAO,CAACE,QAAQ,CAAC,GAAG,CAAC,GAAG1B,MAAM,CAACwB,OAAO,GAAG,EAAE,CAAC;EACxE,IAAI,CAACC,OAAO,EAAE;IACZ,OAAO,IAAI;EACb;EAEAtB,gBAAK,CAACwB,QAAQ,CACZ,IAAAC,+BAAoB,EAAC;IACnBH,OAAO;IACPI,QAAQ,EAAE7B,MAAM,CAAC8B,UAAU,IAAIb,QAAQ,EAAEc,KAAK,IAAId,QAAQ,EAAEe,IAAI,IAAI,IAAI;IACxElB,YAAY,EAAEd,MAAM,CAACc,YAAY;IACjCC,KAAK,EAAEf,MAAM,CAACe,KAAK;IACnBkB,IAAI,EAAEjC,MAAM,CAACiC,IAAI;IACjBpB,MAAM,EAAEb,MAAM,CAACa,MAAM;IACrBqB,gBAAgB,EAAElC,MAAM,CAACmC;EAC3B,CAAC,CACH,CAAC;EAED,OAAO,IAAI;AACb,CAAC;AAACC,OAAA,CAAAvC,cAAA,GAAAA,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_roomStore","require","_callSlice","_systemCall","_callActions","_callPush","_normalizeRoomJid","PENDING_CALL_PUSH_TTL_MS","pendingPush","unwatch","trace","args","__DEV__","console","log","callsConfigured","store","getState","chatSettingStore","config","videoCalls","undefined","holdUntilConfigured","data","intent","at","Date","now","subscribe","held","endSystemIncomingCall","parseCallPush","callId","ringFromPush","applyIntent","call","direction","phase","dispatch","acceptIncomingCall","declineActiveCallWhenOnline","parsed","state","enabled","current","sameCall","roomBareName","token","rooms","resolved","Object","values","find","room","jid","split","roomRef","conference","xmppSettings","fromRef","normalizeRoomJid","roomJid","includes","setIncomingCallToken","roomName","callerName","title","name","kind","peerXmppUsername","callerXmppUsername","handleCallPush","isCallPush","exports","answerCallFromPush","declineCallFromPush","__resetCallPushForTests"],"sourceRoot":"../../../src","sources":["helpers/incomingCallFromPush.ts"],"mappings":"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","ignoreList":[]}
@@ -18,6 +18,12 @@ exports.loadSecureStore = exports.isSecureStoreAvailable = exports.__resetSecure
18
18
  * AsyncStorage rather than crash (see `secureKeyValue.ts`).
19
19
  */
20
20
 
21
+ /**
22
+ * The subset of expo-secure-store's options the SDK uses. `keychainService`
23
+ * must be repeated on every read of an item written with it; the
24
+ * accessibility constants come from `SecureStoreRuntime.accessible`.
25
+ */
26
+
21
27
  let cached;
22
28
 
23
29
  /**
@@ -39,7 +45,10 @@ const loadSecureStore = () => {
39
45
  cached = {
40
46
  getItemAsync: mod.getItemAsync,
41
47
  setItemAsync: mod.setItemAsync,
42
- deleteItemAsync: mod.deleteItemAsync
48
+ deleteItemAsync: mod.deleteItemAsync,
49
+ accessible: {
50
+ afterFirstUnlockThisDeviceOnly: mod.AFTER_FIRST_UNLOCK_THIS_DEVICE_ONLY
51
+ }
43
52
  };
44
53
  }
45
54
  } catch {
@@ -1 +1 @@
1
- {"version":3,"names":["cached","loadSecureStore","undefined","mod","require","getItemAsync","setItemAsync","deleteItemAsync","exports","isSecureStoreAvailable","__resetSecureStoreRuntimeForTests"],"sourceRoot":"../../../src","sources":["helpers/secureStoreRuntime.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAQA,IAAIA,MAA6C;;AAEjD;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,eAAe,GAAGA,CAAA,KAAiC;EAC9D,IAAID,MAAM,KAAKE,SAAS,EAAE;IACxB,OAAOF,MAAM;EACf;EAEA,IAAI;IACF;IACA,MAAMG,GAAG,GAAGC,OAAO,CAAC,mBAAmB,CAAC;IACxC,IACE,OAAOD,GAAG,EAAEE,YAAY,KAAK,UAAU,IACvC,OAAOF,GAAG,EAAEG,YAAY,KAAK,UAAU,IACvC,OAAOH,GAAG,EAAEI,eAAe,KAAK,UAAU,EAC1C;MACAP,MAAM,GAAG,IAAI;IACf,CAAC,MAAM;MACLA,MAAM,GAAG;QACPK,YAAY,EAAEF,GAAG,CAACE,YAAY;QAC9BC,YAAY,EAAEH,GAAG,CAACG,YAAY;QAC9BC,eAAe,EAAEJ,GAAG,CAACI;MACvB,CAAC;IACH;EACF,CAAC,CAAC,MAAM;IACNP,MAAM,GAAG,IAAI;EACf;EAEA,OAAOA,MAAM;AACf,CAAC;AAACQ,OAAA,CAAAP,eAAA,GAAAA,eAAA;AAEK,MAAMQ,sBAAsB,GAAGA,CAAA,KAAeR,eAAe,CAAC,CAAC,KAAK,IAAI;;AAE/E;AAAAO,OAAA,CAAAC,sBAAA,GAAAA,sBAAA;AACO,MAAMC,iCAAiC,GAAGA,CAAA,KAAY;EAC3DV,MAAM,GAAGE,SAAS;AACpB,CAAC;AAACM,OAAA,CAAAE,iCAAA,GAAAA,iCAAA","ignoreList":[]}
1
+ {"version":3,"names":["cached","loadSecureStore","undefined","mod","require","getItemAsync","setItemAsync","deleteItemAsync","accessible","afterFirstUnlockThisDeviceOnly","AFTER_FIRST_UNLOCK_THIS_DEVICE_ONLY","exports","isSecureStoreAvailable","__resetSecureStoreRuntimeForTests"],"sourceRoot":"../../../src","sources":["helpers/secureStoreRuntime.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAiBA,IAAIA,MAA6C;;AAEjD;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,eAAe,GAAGA,CAAA,KAAiC;EAC9D,IAAID,MAAM,KAAKE,SAAS,EAAE;IACxB,OAAOF,MAAM;EACf;EAEA,IAAI;IACF;IACA,MAAMG,GAAG,GAAGC,OAAO,CAAC,mBAAmB,CAAC;IACxC,IACE,OAAOD,GAAG,EAAEE,YAAY,KAAK,UAAU,IACvC,OAAOF,GAAG,EAAEG,YAAY,KAAK,UAAU,IACvC,OAAOH,GAAG,EAAEI,eAAe,KAAK,UAAU,EAC1C;MACAP,MAAM,GAAG,IAAI;IACf,CAAC,MAAM;MACLA,MAAM,GAAG;QACPK,YAAY,EAAEF,GAAG,CAACE,YAAY;QAC9BC,YAAY,EAAEH,GAAG,CAACG,YAAY;QAC9BC,eAAe,EAAEJ,GAAG,CAACI,eAAe;QACpCC,UAAU,EAAE;UACVC,8BAA8B,EAAEN,GAAG,CAACO;QACtC;MACF,CAAC;IACH;EACF,CAAC,CAAC,MAAM;IACNV,MAAM,GAAG,IAAI;EACf;EAEA,OAAOA,MAAM;AACf,CAAC;AAACW,OAAA,CAAAV,eAAA,GAAAA,eAAA;AAEK,MAAMW,sBAAsB,GAAGA,CAAA,KAAeX,eAAe,CAAC,CAAC,KAAK,IAAI;;AAE/E;AAAAU,OAAA,CAAAC,sBAAA,GAAAA,sBAAA;AACO,MAAMC,iCAAiC,GAAGA,CAAA,KAAY;EAC3Db,MAAM,GAAGE,SAAS;AACpB,CAAC;AAACS,OAAA,CAAAE,iCAAA,GAAAA,iCAAA","ignoreList":[]}