@ethora/chat-component-rn 26.10.7 → 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.
- package/CHANGELOG.md +4 -0
- package/lib/commonjs/components/MessageBubble/Message.js +16 -6
- package/lib/commonjs/components/MessageBubble/Message.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js +16 -2
- package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/callActions.js +32 -2
- package/lib/commonjs/components/VideoCalls/callActions.js.map +1 -1
- package/lib/commonjs/components/VideoCalls/systemCall.js +83 -0
- package/lib/commonjs/components/VideoCalls/systemCall.js.map +1 -0
- package/lib/commonjs/components/VideoCalls/useCallKeep.js +83 -66
- package/lib/commonjs/components/VideoCalls/useCallKeep.js.map +1 -1
- package/lib/commonjs/helpers/incomingCallFromPush.js +95 -21
- package/lib/commonjs/helpers/incomingCallFromPush.js.map +1 -1
- package/lib/commonjs/main.js +33 -0
- package/lib/commonjs/main.js.map +1 -1
- package/lib/commonjs/networking/callTokenStanza.js +6 -0
- package/lib/commonjs/networking/callTokenStanza.js.map +1 -1
- package/lib/commonjs/networking/xmpp/sendMessageReaction.xmpp.js +22 -6
- package/lib/commonjs/networking/xmpp/sendMessageReaction.xmpp.js.map +1 -1
- package/lib/commonjs/networking/xmppClient.js.map +1 -1
- package/lib/commonjs/push/sealedPush.js +13 -2
- package/lib/commonjs/push/sealedPush.js.map +1 -1
- package/lib/commonjs/push/sealedPushTask.js +43 -17
- package/lib/commonjs/push/sealedPushTask.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/module/components/MessageBubble/Message.js +16 -6
- package/lib/module/components/MessageBubble/Message.js.map +1 -1
- package/lib/module/components/VideoCalls/VideoCallOverlay.js +17 -3
- package/lib/module/components/VideoCalls/VideoCallOverlay.js.map +1 -1
- package/lib/module/components/VideoCalls/callActions.js +29 -0
- package/lib/module/components/VideoCalls/callActions.js.map +1 -1
- package/lib/module/components/VideoCalls/systemCall.js +73 -0
- package/lib/module/components/VideoCalls/systemCall.js.map +1 -0
- package/lib/module/components/VideoCalls/useCallKeep.js +77 -64
- package/lib/module/components/VideoCalls/useCallKeep.js.map +1 -1
- package/lib/module/helpers/incomingCallFromPush.js +92 -22
- package/lib/module/helpers/incomingCallFromPush.js.map +1 -1
- package/lib/module/main.js +3 -0
- package/lib/module/main.js.map +1 -1
- package/lib/module/networking/callTokenStanza.js +6 -0
- package/lib/module/networking/callTokenStanza.js.map +1 -1
- package/lib/module/networking/xmpp/sendMessageReaction.xmpp.js +21 -6
- package/lib/module/networking/xmpp/sendMessageReaction.xmpp.js.map +1 -1
- package/lib/module/networking/xmppClient.js.map +1 -1
- package/lib/module/push/sealedPush.js +11 -1
- package/lib/module/push/sealedPush.js.map +1 -1
- package/lib/module/push/sealedPushTask.js +42 -17
- package/lib/module/push/sealedPushTask.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/typescript/components/MessageBubble/Message.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/VideoCallOverlay.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/callActions.d.ts +6 -0
- package/lib/typescript/components/VideoCalls/callActions.d.ts.map +1 -1
- package/lib/typescript/components/VideoCalls/systemCall.d.ts +25 -0
- package/lib/typescript/components/VideoCalls/systemCall.d.ts.map +1 -0
- package/lib/typescript/components/VideoCalls/useCallKeep.d.ts +8 -23
- package/lib/typescript/components/VideoCalls/useCallKeep.d.ts.map +1 -1
- package/lib/typescript/helpers/incomingCallFromPush.d.ts +5 -13
- package/lib/typescript/helpers/incomingCallFromPush.d.ts.map +1 -1
- package/lib/typescript/main.d.ts +5 -0
- package/lib/typescript/main.d.ts.map +1 -1
- package/lib/typescript/networking/callTokenStanza.d.ts.map +1 -1
- package/lib/typescript/networking/xmpp/sendMessageReaction.xmpp.d.ts +13 -1
- package/lib/typescript/networking/xmpp/sendMessageReaction.xmpp.d.ts.map +1 -1
- package/lib/typescript/networking/xmppClient.d.ts +2 -4
- package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
- package/lib/typescript/push/sealedPush.d.ts +6 -0
- package/lib/typescript/push/sealedPush.d.ts.map +1 -1
- package/lib/typescript/push/sealedPushTask.d.ts +18 -7
- package/lib/typescript/push/sealedPushTask.d.ts.map +1 -1
- package/lib/typescript/types/models/xmpp.model.d.ts +2 -4
- package/lib/typescript/types/models/xmpp.model.d.ts.map +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/components/MessageBubble/Message.tsx +16 -5
- package/src/components/VideoCalls/VideoCallOverlay.tsx +18 -2
- package/src/components/VideoCalls/callActions.ts +28 -0
- package/src/components/VideoCalls/systemCall.ts +109 -0
- package/src/components/VideoCalls/useCallKeep.ts +89 -97
- package/src/helpers/incomingCallFromPush.ts +97 -26
- package/src/main.ts +8 -0
- package/src/networking/callTokenStanza.ts +10 -0
- package/src/networking/xmpp/sendMessageReaction.xmpp.ts +38 -6
- package/src/networking/xmppClient.ts +2 -2
- package/src/push/sealedPush.ts +11 -0
- package/src/push/sealedPushTask.ts +61 -15
- package/src/types/models/xmpp.model.ts +2 -1
- package/src/version.ts +1 -1
|
@@ -6,10 +6,11 @@ import { useDispatch, useSelector } from 'react-redux';
|
|
|
6
6
|
import { store } from '../../roomStore';
|
|
7
7
|
import { acceptIncomingCall, declineIncomingCall } from '../../roomStore/callSlice';
|
|
8
8
|
import { sendCallStateSignal } from '../../networking/callTokenStanza';
|
|
9
|
-
import { terminateActiveCall } from './callActions';
|
|
9
|
+
import { declineActiveCallWhenOnline, terminateActiveCall } from './callActions';
|
|
10
10
|
import { setCallMicEnabled, useCallSession } from './callSessionController';
|
|
11
11
|
import { loadLiveKit } from './livekitRuntime';
|
|
12
12
|
import { setCallSystemRinging } from './callUiStore';
|
|
13
|
+
import { callKitUuid, loadCallKeep, rememberSystemCallAction, takeSystemCallAction } from './systemCall';
|
|
13
14
|
|
|
14
15
|
/**
|
|
15
16
|
* Native incoming-call UI (Android ConnectionService / iOS CallKit) via
|
|
@@ -29,61 +30,15 @@ import { setCallSystemRinging } from './callUiStore';
|
|
|
29
30
|
* Platform reality, stated plainly:
|
|
30
31
|
* - Android: full value. A ConnectionService call shows the system
|
|
31
32
|
* incoming-call screen over the lock screen.
|
|
32
|
-
* - iOS: this only
|
|
33
|
-
* a killed app
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
33
|
+
* - iOS: this hook only runs while `<Chat>` is mounted. A CallKit screen
|
|
34
|
+
* from a killed app comes from the host: its PushKit handler reports
|
|
35
|
+
* the VoIP push to CallKit natively under `callKitUuid(callId)` and
|
|
36
|
+
* hands the payload to `handlePushPayload`. This hook then adopts that
|
|
37
|
+
* call (same UUID, CallKit answers "CallUUIDAlreadyExists" to our own
|
|
38
|
+
* report) and replays what the user did on it before JS was up.
|
|
37
39
|
*/
|
|
38
40
|
|
|
39
|
-
|
|
40
|
-
export const loadCallKeep = () => {
|
|
41
|
-
if (cachedCallKeep !== undefined) {
|
|
42
|
-
return cachedCallKeep;
|
|
43
|
-
}
|
|
44
|
-
try {
|
|
45
|
-
// The JS package being installed does NOT mean the native side is
|
|
46
|
-
// linked: a host can `npm i react-native-callkeep` and skip
|
|
47
|
-
// `pod install`, or (very common in this repo) node_modules can carry
|
|
48
|
-
// it over from another branch whose build did link it. In that state
|
|
49
|
-
// requiring the package builds a `new NativeEventEmitter(null)` at
|
|
50
|
-
// module scope, which throws an invariant that RN surfaces as an
|
|
51
|
-
// uncaught redbox on every render of the call overlay — the whole app
|
|
52
|
-
// becomes unusable over a feature the host never switched on.
|
|
53
|
-
// Probing NativeModules first keeps the optional dependency genuinely
|
|
54
|
-
// optional: no native module => behave exactly as if it isn't installed.
|
|
55
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
56
|
-
const {
|
|
57
|
-
NativeModules
|
|
58
|
-
} = require('react-native');
|
|
59
|
-
if (!NativeModules?.RNCallKeep) {
|
|
60
|
-
cachedCallKeep = null;
|
|
61
|
-
return cachedCallKeep;
|
|
62
|
-
}
|
|
63
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
64
|
-
const mod = require('react-native-callkeep');
|
|
65
|
-
cachedCallKeep = mod?.default || mod;
|
|
66
|
-
} catch {
|
|
67
|
-
cachedCallKeep = null;
|
|
68
|
-
}
|
|
69
|
-
return cachedCallKeep;
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
// CallKeep identifies calls by UUID. Our callIds aren't UUIDs, so derive a
|
|
73
|
-
// stable v4-shaped string from the callId: same call always maps to the
|
|
74
|
-
// same UUID, which is what endCall() needs to dismiss the right screen.
|
|
75
|
-
const toUuid = seed => {
|
|
76
|
-
let hash = 0x811c9dc5;
|
|
77
|
-
const bytes = [];
|
|
78
|
-
for (let i = 0; i < 32; i++) {
|
|
79
|
-
const ch = seed.charCodeAt(i % Math.max(1, seed.length)) + i;
|
|
80
|
-
hash ^= ch;
|
|
81
|
-
hash = Math.imul(hash, 0x01000193) >>> 0;
|
|
82
|
-
bytes.push(hash & 0xff);
|
|
83
|
-
}
|
|
84
|
-
const hex = bytes.map(b => b.toString(16).padStart(2, '0')).join('');
|
|
85
|
-
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('-');
|
|
86
|
-
};
|
|
41
|
+
export { loadCallKeep };
|
|
87
42
|
const trace = (...args) => {
|
|
88
43
|
if (__DEV__) {
|
|
89
44
|
console.log('[calls] CallKit:', ...args);
|
|
@@ -160,7 +115,25 @@ export const useCallKeep = () => {
|
|
|
160
115
|
if (!callKeep) {
|
|
161
116
|
return;
|
|
162
117
|
}
|
|
163
|
-
const
|
|
118
|
+
const isOtherCall = payload => {
|
|
119
|
+
const uuid = String(payload?.callUUID || '').toLowerCase();
|
|
120
|
+
if (!uuid) {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
const active = activeUuidRef.current?.toLowerCase() || null;
|
|
124
|
+
if (active === uuid) {
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
const current = store.getState().call;
|
|
128
|
+
const ringingUuid = current.direction === 'incoming' && current.callId ? callKitUuid(current.callId) : null;
|
|
129
|
+
return ringingUuid !== uuid;
|
|
130
|
+
};
|
|
131
|
+
const onAnswer = payload => {
|
|
132
|
+
if (isOtherCall(payload)) {
|
|
133
|
+
trace('answer before the call arrived', payload?.callUUID);
|
|
134
|
+
rememberSystemCallAction(String(payload.callUUID), 'answer');
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
164
137
|
answeredRef.current = true;
|
|
165
138
|
// The user answered from the system screen, which on Android may
|
|
166
139
|
// mean the app was not even in the foreground.
|
|
@@ -173,7 +146,12 @@ export const useCallKeep = () => {
|
|
|
173
146
|
dispatch(acceptIncomingCall());
|
|
174
147
|
}
|
|
175
148
|
};
|
|
176
|
-
const onEnd =
|
|
149
|
+
const onEnd = payload => {
|
|
150
|
+
if (isOtherCall(payload)) {
|
|
151
|
+
trace('declined before the call arrived', payload?.callUUID);
|
|
152
|
+
rememberSystemCallAction(String(payload.callUUID), 'end');
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
177
155
|
const snapshot = store.getState().call;
|
|
178
156
|
if (snapshot.phase === 'idle') {
|
|
179
157
|
return;
|
|
@@ -237,18 +215,41 @@ export const useCallKeep = () => {
|
|
|
237
215
|
// app lacks the voip background mode).
|
|
238
216
|
const onDisplayed = ({
|
|
239
217
|
error,
|
|
240
|
-
errorCode
|
|
218
|
+
errorCode,
|
|
219
|
+
fromPushKit
|
|
241
220
|
}) => {
|
|
242
|
-
trace(
|
|
221
|
+
trace(`incoming call shown${fromPushKit === '1' ? ' (PushKit)' : ''}`, error ? `failed: ${errorCode || ''} ${error}` : 'ok');
|
|
222
|
+
if (errorCode === 'CallUUIDAlreadyExists') {
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
243
225
|
// CallKit refused it (Do Not Disturb, unentitled...): bring the
|
|
244
|
-
|
|
245
|
-
if (error) {
|
|
226
|
+
if (error && fromPushKit !== '1') {
|
|
246
227
|
setCallSystemRinging(false);
|
|
247
228
|
}
|
|
248
229
|
};
|
|
249
230
|
callKeep.addEventListener('didDisplayIncomingCall', onDisplayed);
|
|
250
231
|
callKeep.addEventListener('didDeactivateAudioSession', onAudioDeactivated);
|
|
232
|
+
const replay = {
|
|
233
|
+
RNCallKeepPerformAnswerCallAction: onAnswer,
|
|
234
|
+
RNCallKeepPerformEndCallAction: onEnd,
|
|
235
|
+
RNCallKeepDidDisplayIncomingCall: onDisplayed,
|
|
236
|
+
RNCallKeepDidActivateAudioSession: onAudioActivated,
|
|
237
|
+
RNCallKeepDidDeactivateAudioSession: onAudioDeactivated,
|
|
238
|
+
RNCallKeepDidPerformSetMutedCallAction: onMuted
|
|
239
|
+
};
|
|
240
|
+
const onLoadWithEvents = events => {
|
|
241
|
+
if (!Array.isArray(events) || events.length === 0) {
|
|
242
|
+
return;
|
|
243
|
+
}
|
|
244
|
+
trace('replaying', events.map(e => e.name).join(', '));
|
|
245
|
+
callKeep.clearInitialEvents?.();
|
|
246
|
+
for (const event of events) {
|
|
247
|
+
replay[event.name]?.(event.data);
|
|
248
|
+
}
|
|
249
|
+
};
|
|
250
|
+
callKeep.addEventListener('didLoadWithEvents', onLoadWithEvents);
|
|
251
251
|
return () => {
|
|
252
|
+
callKeep.removeEventListener('didLoadWithEvents');
|
|
252
253
|
callKeep.removeEventListener('answerCall');
|
|
253
254
|
callKeep.removeEventListener('endCall');
|
|
254
255
|
callKeep.removeEventListener('didPerformSetMutedCallAction');
|
|
@@ -291,11 +292,23 @@ export const useCallKeep = () => {
|
|
|
291
292
|
if (activeUuidRef.current) {
|
|
292
293
|
return;
|
|
293
294
|
}
|
|
294
|
-
const uuid =
|
|
295
|
+
const uuid = callKitUuid(call.callId || call.roomJid || String(Date.now()));
|
|
295
296
|
activeUuidRef.current = uuid;
|
|
296
297
|
answeredRef.current = false;
|
|
298
|
+
const earlier = takeSystemCallAction(uuid);
|
|
299
|
+
if (earlier === 'answer') {
|
|
300
|
+
trace('answered earlier on the system screen', uuid);
|
|
301
|
+
answeredRef.current = true;
|
|
302
|
+
dispatch(acceptIncomingCall());
|
|
303
|
+
return;
|
|
304
|
+
}
|
|
305
|
+
if (earlier === 'end') {
|
|
306
|
+
trace('declined earlier on the system screen', uuid);
|
|
307
|
+
activeUuidRef.current = null;
|
|
308
|
+
declineActiveCallWhenOnline();
|
|
309
|
+
return;
|
|
310
|
+
}
|
|
297
311
|
// iOS: the system banner is the ring UI (Telegram-style); the in-app
|
|
298
|
-
// card would only cover the screen under it.
|
|
299
312
|
if (isIOS) {
|
|
300
313
|
setCallSystemRinging(true);
|
|
301
314
|
}
|
|
@@ -313,7 +326,7 @@ export const useCallKeep = () => {
|
|
|
313
326
|
if (isIOS && isOutgoing && !activeUuidRef.current && callKeep.startCall) {
|
|
314
327
|
// Unique per call: CallKit refuses a UUID it has seen before, and
|
|
315
328
|
// the callId only arrives with the token.
|
|
316
|
-
const uuid =
|
|
329
|
+
const uuid = callKitUuid(`${call.roomJid || ''}|${call.startedAt || Date.now()}`);
|
|
317
330
|
activeUuidRef.current = uuid;
|
|
318
331
|
outgoingReportedRef.current = 'none';
|
|
319
332
|
trace('startCall', uuid);
|
|
@@ -349,7 +362,7 @@ export const useCallKeep = () => {
|
|
|
349
362
|
// noop
|
|
350
363
|
}
|
|
351
364
|
}
|
|
352
|
-
}, [callKeep, ready, isIOS, isRinging, isLive, isOutgoing, peerConnected, displayName, call.phase, call.callId, call.roomJid, call.startedAt, call.kind]);
|
|
365
|
+
}, [callKeep, ready, dispatch, isIOS, isRinging, isLive, isOutgoing, peerConnected, displayName, call.phase, call.callId, call.roomJid, call.startedAt, call.kind]);
|
|
353
366
|
|
|
354
367
|
// Keep the system mute button in step with ours.
|
|
355
368
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useMemo","useRef","useState","Platform","useDispatch","useSelector","store","acceptIncomingCall","declineIncomingCall","sendCallStateSignal","terminateActiveCall","setCallMicEnabled","useCallSession","loadLiveKit","setCallSystemRinging","cachedCallKeep","loadCallKeep","undefined","NativeModules","require","RNCallKeep","mod","default","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","call","state","session","callKeep","ready","setReady","activeUuidRef","answeredRef","outgoingReportedRef","isIOS","OS","cancelled","setup","ios","appName","supportsVideo","maximumCallGroups","maximumCallsPerCallGroup","includesCallsInRecents","android","alertTitle","alertDescription","cancelButton","okButton","additionalPermissions","foregroundService","channelId","channelName","notificationTitle","setAvailable","error","onAnswer","current","backToForeground","getState","direction","phase","onEnd","snapshot","onMuted","muted","onHold","hold","onAudioActivated","RTCAudioSession","audioSessionDidActivate","onAudioDeactivated","audioSessionDidDeactivate","addEventListener","onReset","onDisplayed","errorCode","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":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useEffect","useMemo","useRef","useState","Platform","useDispatch","useSelector","store","acceptIncomingCall","declineIncomingCall","sendCallStateSignal","declineActiveCallWhenOnline","terminateActiveCall","setCallMicEnabled","useCallSession","loadLiveKit","setCallSystemRinging","callKitUuid","loadCallKeep","rememberSystemCallAction","takeSystemCallAction","trace","args","__DEV__","console","log","useCallKeep","dispatch","call","state","session","callKeep","ready","setReady","activeUuidRef","answeredRef","outgoingReportedRef","isIOS","OS","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","getState","ringingUuid","direction","callId","onAnswer","backToForeground","phase","onEnd","snapshot","onMuted","muted","onHold","hold","onAudioActivated","RTCAudioSession","audioSessionDidActivate","onAudioDeactivated","audioSessionDidDeactivate","addEventListener","onReset","onDisplayed","errorCode","fromPushKit","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","displayIncomingCall","kind","startCall","startedAt","reportConnectedOutgoingCallWithUUID","reportConnectingOutgoingCallWithUUID","answerIncomingCall","setMutedCall","micOn"],"sourceRoot":"../../../../src","sources":["components/VideoCalls/useCallKeep.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,32 +1,70 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { store } from '../roomStore';
|
|
4
|
-
import { setIncomingCallToken } from '../roomStore/callSlice';
|
|
4
|
+
import { acceptIncomingCall, setIncomingCallToken } from '../roomStore/callSlice';
|
|
5
|
+
import { endSystemIncomingCall } from '../components/VideoCalls/systemCall';
|
|
6
|
+
import { declineActiveCallWhenOnline } from '../components/VideoCalls/callActions';
|
|
5
7
|
import { isCallPush, parseCallPush } from './callPush';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
8
|
+
import { normalizeRoomJid } from './normalizeRoomJid';
|
|
9
|
+
const PENDING_CALL_PUSH_TTL_MS = 60_000;
|
|
10
|
+
let pendingPush = null;
|
|
11
|
+
let unwatch = null;
|
|
12
|
+
const trace = (...args) => {
|
|
13
|
+
if (__DEV__) {
|
|
14
|
+
console.log('[calls] push:', ...args);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
const callsConfigured = () => store.getState().chatSettingStore.config?.videoCalls !== undefined;
|
|
18
|
+
const holdUntilConfigured = (data, intent) => {
|
|
19
|
+
pendingPush = {
|
|
20
|
+
data,
|
|
21
|
+
intent,
|
|
22
|
+
at: Date.now()
|
|
23
|
+
};
|
|
24
|
+
if (unwatch) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
unwatch = store.subscribe(() => {
|
|
28
|
+
if (!callsConfigured()) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
unwatch?.();
|
|
32
|
+
unwatch = null;
|
|
33
|
+
const held = pendingPush;
|
|
34
|
+
pendingPush = null;
|
|
35
|
+
if (!held) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
if (Date.now() - held.at > PENDING_CALL_PUSH_TTL_MS) {
|
|
39
|
+
trace('held call push expired');
|
|
40
|
+
endSystemIncomingCall(parseCallPush(held.data).callId);
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
ringFromPush(held.data, held.intent);
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
const applyIntent = intent => {
|
|
47
|
+
const call = store.getState().call;
|
|
48
|
+
if (call.direction !== 'incoming' || call.phase !== 'ringing-incoming') {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (intent === 'answer') {
|
|
52
|
+
store.dispatch(acceptIncomingCall());
|
|
22
53
|
}
|
|
54
|
+
if (intent === 'decline') {
|
|
55
|
+
declineActiveCallWhenOnline();
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
const ringFromPush = (data, intent) => {
|
|
23
59
|
const parsed = parseCallPush(data);
|
|
24
60
|
const state = store.getState();
|
|
25
61
|
|
|
26
62
|
// Calls off in this deployment: swallow the push rather than ringing a
|
|
27
63
|
// screen the host never opted into.
|
|
28
64
|
if (state.chatSettingStore.config?.videoCalls?.enabled !== true) {
|
|
29
|
-
|
|
65
|
+
trace('calls are off, dropping', parsed.callId);
|
|
66
|
+
endSystemIncomingCall(parsed.callId);
|
|
67
|
+
return false;
|
|
30
68
|
}
|
|
31
69
|
|
|
32
70
|
// Already ringing or in this exact call (the push raced the stanza, or
|
|
@@ -35,9 +73,15 @@ export const handleCallPush = data => {
|
|
|
35
73
|
const current = state.call;
|
|
36
74
|
if (current.phase !== 'idle') {
|
|
37
75
|
const sameCall = !!parsed.callId && parsed.callId === current.callId || !!parsed.roomBareName && parsed.roomBareName === current.roomBareName;
|
|
38
|
-
if (sameCall
|
|
76
|
+
if (sameCall) {
|
|
77
|
+
applyIntent(intent);
|
|
39
78
|
return true;
|
|
40
79
|
}
|
|
80
|
+
if (current.phase === 'in-call') {
|
|
81
|
+
// Busy with another call: no second ring.
|
|
82
|
+
endSystemIncomingCall(parsed.callId);
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
41
85
|
}
|
|
42
86
|
|
|
43
87
|
// Without a LiveKit token there is nothing to accept: the push is only
|
|
@@ -45,16 +89,21 @@ export const handleCallPush = data => {
|
|
|
45
89
|
// cannot work, so treat it as handled and let the stanza (once the
|
|
46
90
|
// socket is back up) open the real ring screen.
|
|
47
91
|
if (!parsed.token) {
|
|
48
|
-
|
|
92
|
+
endSystemIncomingCall(parsed.callId);
|
|
93
|
+
return false;
|
|
49
94
|
}
|
|
50
95
|
|
|
51
96
|
// Resolve the full room JID from the local room map. The push carries
|
|
52
97
|
// the bare name; callSlice and the hangup signal both want the JID.
|
|
53
98
|
const rooms = state.rooms.rooms || {};
|
|
54
99
|
const resolved = Object.values(rooms).find(room => (room?.jid || '').split('@')[0] === parsed.roomBareName || room?.jid === parsed.roomRef);
|
|
55
|
-
const
|
|
100
|
+
const conference = state.chatSettingStore.config?.xmppSettings?.conference || '';
|
|
101
|
+
const fromRef = parsed.roomRef ? normalizeRoomJid(parsed.roomRef, conference) : '';
|
|
102
|
+
const roomJid = resolved?.jid || (fromRef.includes('@') ? fromRef : '');
|
|
56
103
|
if (!roomJid) {
|
|
57
|
-
|
|
104
|
+
trace('no room for call push', parsed.roomRef);
|
|
105
|
+
endSystemIncomingCall(parsed.callId);
|
|
106
|
+
return false;
|
|
58
107
|
}
|
|
59
108
|
store.dispatch(setIncomingCallToken({
|
|
60
109
|
roomJid,
|
|
@@ -65,6 +114,27 @@ export const handleCallPush = data => {
|
|
|
65
114
|
callId: parsed.callId,
|
|
66
115
|
peerXmppUsername: parsed.callerXmppUsername
|
|
67
116
|
}));
|
|
117
|
+
trace('ringing', parsed.callId, intent);
|
|
118
|
+
applyIntent(intent);
|
|
119
|
+
return true;
|
|
120
|
+
};
|
|
121
|
+
export const handleCallPush = (data, intent = 'ring') => {
|
|
122
|
+
if (!isCallPush(data)) {
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
if (!callsConfigured()) {
|
|
126
|
+
trace('holding call push until the chat is configured');
|
|
127
|
+
holdUntilConfigured(data, intent);
|
|
128
|
+
return true;
|
|
129
|
+
}
|
|
130
|
+
ringFromPush(data, intent);
|
|
68
131
|
return true;
|
|
69
132
|
};
|
|
133
|
+
export const answerCallFromPush = data => handleCallPush(data, 'answer');
|
|
134
|
+
export const declineCallFromPush = data => handleCallPush(data, 'decline');
|
|
135
|
+
export const __resetCallPushForTests = () => {
|
|
136
|
+
unwatch?.();
|
|
137
|
+
unwatch = null;
|
|
138
|
+
pendingPush = null;
|
|
139
|
+
};
|
|
70
140
|
//# sourceMappingURL=incomingCallFromPush.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","setIncomingCallToken","isCallPush","parseCallPush","
|
|
1
|
+
{"version":3,"names":["store","acceptIncomingCall","setIncomingCallToken","endSystemIncomingCall","declineActiveCallWhenOnline","isCallPush","parseCallPush","normalizeRoomJid","PENDING_CALL_PUSH_TTL_MS","pendingPush","unwatch","trace","args","__DEV__","console","log","callsConfigured","getState","chatSettingStore","config","videoCalls","undefined","holdUntilConfigured","data","intent","at","Date","now","subscribe","held","callId","ringFromPush","applyIntent","call","direction","phase","dispatch","parsed","state","enabled","current","sameCall","roomBareName","token","rooms","resolved","Object","values","find","room","jid","split","roomRef","conference","xmppSettings","fromRef","roomJid","includes","roomName","callerName","title","name","kind","peerXmppUsername","callerXmppUsername","handleCallPush","answerCallFromPush","declineCallFromPush","__resetCallPushForTests"],"sourceRoot":"../../../src","sources":["helpers/incomingCallFromPush.ts"],"mappings":";;AAAA,SAASA,KAAK,QAAQ,cAAc;AACpC,SAASC,kBAAkB,EAAEC,oBAAoB,QAAQ,wBAAwB;AACjF,SAASC,qBAAqB,QAAQ,qCAAqC;AAC3E,SAASC,2BAA2B,QAAQ,sCAAsC;AAClF,SAASC,UAAU,EAAEC,aAAa,QAAQ,YAAY;AACtD,SAASC,gBAAgB,QAAQ,oBAAoB;AAErD,MAAMC,wBAAwB,GAAG,MAAM;AAKvC,IAAIC,WAAqF,GAAG,IAAI;AAChG,IAAIC,OAA4B,GAAG,IAAI;AAEvC,MAAMC,KAAK,GAAGA,CAAC,GAAGC,IAAe,KAAK;EACpC,IAAIC,OAAO,EAAE;IAACC,OAAO,CAACC,GAAG,CAAC,eAAe,EAAE,GAAGH,IAAI,CAAC;EAAC;AACtD,CAAC;AAED,MAAMI,eAAe,GAAGA,CAAA,KACtBhB,KAAK,CAACiB,QAAQ,CAAC,CAAC,CAACC,gBAAgB,CAACC,MAAM,EAAEC,UAAU,KAAKC,SAAS;AAEpE,MAAMC,mBAAmB,GAAGA,CAACC,IAAyB,EAAEC,MAAsB,KAAW;EACvFf,WAAW,GAAG;IAAEc,IAAI;IAAEC,MAAM;IAAEC,EAAE,EAAEC,IAAI,CAACC,GAAG,CAAC;EAAE,CAAC;EAC9C,IAAIjB,OAAO,EAAE;IAAC;EAAO;EACrBA,OAAO,GAAGV,KAAK,CAAC4B,SAAS,CAAC,MAAM;IAC9B,IAAI,CAACZ,eAAe,CAAC,CAAC,EAAE;MAAC;IAAO;IAChCN,OAAO,GAAG,CAAC;IACXA,OAAO,GAAG,IAAI;IACd,MAAMmB,IAAI,GAAGpB,WAAW;IACxBA,WAAW,GAAG,IAAI;IAClB,IAAI,CAACoB,IAAI,EAAE;MAAC;IAAO;IACnB,IAAIH,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGE,IAAI,CAACJ,EAAE,GAAGjB,wBAAwB,EAAE;MACnDG,KAAK,CAAC,wBAAwB,CAAC;MAC/BR,qBAAqB,CAACG,aAAa,CAACuB,IAAI,CAACN,IAAI,CAAC,CAACO,MAAM,CAAC;MACtD;IACF;IACAC,YAAY,CAACF,IAAI,CAACN,IAAI,EAAEM,IAAI,CAACL,MAAM,CAAC;EACtC,CAAC,CAAC;AACJ,CAAC;AAED,MAAMQ,WAAW,GAAIR,MAAsB,IAAW;EACpD,MAAMS,IAAI,GAAGjC,KAAK,CAACiB,QAAQ,CAAC,CAAC,CAACgB,IAAI;EAClC,IAAIA,IAAI,CAACC,SAAS,KAAK,UAAU,IAAID,IAAI,CAACE,KAAK,KAAK,kBAAkB,EAAE;IAAC;EAAO;EAChF,IAAIX,MAAM,KAAK,QAAQ,EAAE;IAACxB,KAAK,CAACoC,QAAQ,CAACnC,kBAAkB,CAAC,CAAC,CAAC;EAAC;EAC/D,IAAIuB,MAAM,KAAK,SAAS,EAAE;IAACpB,2BAA2B,CAAC,CAAC;EAAC;AAC3D,CAAC;AAED,MAAM2B,YAAY,GAAGA,CAACR,IAAyB,EAAEC,MAAsB,KAAc;EACnF,MAAMa,MAAM,GAAG/B,aAAa,CAACiB,IAAI,CAAC;EAClC,MAAMe,KAAK,GAAGtC,KAAK,CAACiB,QAAQ,CAAC,CAAC;;EAE9B;EACA;EACA,IAAIqB,KAAK,CAACpB,gBAAgB,CAACC,MAAM,EAAEC,UAAU,EAAEmB,OAAO,KAAK,IAAI,EAAE;IAC/D5B,KAAK,CAAC,yBAAyB,EAAE0B,MAAM,CAACP,MAAM,CAAC;IAC/C3B,qBAAqB,CAACkC,MAAM,CAACP,MAAM,CAAC;IACpC,OAAO,KAAK;EACd;;EAEA;EACA;EACA;EACA,MAAMU,OAAO,GAAGF,KAAK,CAACL,IAAI;EAC1B,IAAIO,OAAO,CAACL,KAAK,KAAK,MAAM,EAAE;IAC5B,MAAMM,QAAQ,GACX,CAAC,CAACJ,MAAM,CAACP,MAAM,IAAIO,MAAM,CAACP,MAAM,KAAKU,OAAO,CAACV,MAAM,IACnD,CAAC,CAACO,MAAM,CAACK,YAAY,IAAIL,MAAM,CAACK,YAAY,KAAKF,OAAO,CAACE,YAAa;IACzE,IAAID,QAAQ,EAAE;MACZT,WAAW,CAACR,MAAM,CAAC;MACnB,OAAO,IAAI;IACb;IACA,IAAIgB,OAAO,CAACL,KAAK,KAAK,SAAS,EAAE;MAC/B;MACAhC,qBAAqB,CAACkC,MAAM,CAACP,MAAM,CAAC;MACpC,OAAO,KAAK;IACd;EACF;;EAEA;EACA;EACA;EACA;EACA,IAAI,CAACO,MAAM,CAACM,KAAK,EAAE;IACjBxC,qBAAqB,CAACkC,MAAM,CAACP,MAAM,CAAC;IACpC,OAAO,KAAK;EACd;;EAEA;EACA;EACA,MAAMc,KAAK,GAAGN,KAAK,CAACM,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,KAAKd,MAAM,CAACK,YAAY,IACvDO,IAAI,EAAEC,GAAG,KAAKb,MAAM,CAACe,OACzB,CAAgE;EAEhE,MAAMC,UAAU,GACdf,KAAK,CAACpB,gBAAgB,CAACC,MAAM,EAAEmC,YAAY,EAAED,UAAU,IAAI,EAAE;EAC/D,MAAME,OAAO,GAAGlB,MAAM,CAACe,OAAO,GAC1B7C,gBAAgB,CAAC8B,MAAM,CAACe,OAAO,EAAEC,UAAU,CAAC,GAC5C,EAAE;EACN,MAAMG,OAAO,GAAGX,QAAQ,EAAEK,GAAG,KAAKK,OAAO,CAACE,QAAQ,CAAC,GAAG,CAAC,GAAGF,OAAO,GAAG,EAAE,CAAC;EACvE,IAAI,CAACC,OAAO,EAAE;IACZ7C,KAAK,CAAC,uBAAuB,EAAE0B,MAAM,CAACe,OAAO,CAAC;IAC9CjD,qBAAqB,CAACkC,MAAM,CAACP,MAAM,CAAC;IACpC,OAAO,KAAK;EACd;EAEA9B,KAAK,CAACoC,QAAQ,CACZlC,oBAAoB,CAAC;IACnBsD,OAAO;IACPE,QAAQ,EAAErB,MAAM,CAACsB,UAAU,IAAId,QAAQ,EAAEe,KAAK,IAAIf,QAAQ,EAAEgB,IAAI,IAAI,IAAI;IACxEnB,YAAY,EAAEL,MAAM,CAACK,YAAY;IACjCC,KAAK,EAAEN,MAAM,CAACM,KAAK;IACnBmB,IAAI,EAAEzB,MAAM,CAACyB,IAAI;IACjBhC,MAAM,EAAEO,MAAM,CAACP,MAAM;IACrBiC,gBAAgB,EAAE1B,MAAM,CAAC2B;EAC3B,CAAC,CACH,CAAC;EACDrD,KAAK,CAAC,SAAS,EAAE0B,MAAM,CAACP,MAAM,EAAEN,MAAM,CAAC;EACvCQ,WAAW,CAACR,MAAM,CAAC;EACnB,OAAO,IAAI;AACb,CAAC;AAED,OAAO,MAAMyC,cAAc,GAAGA,CAC5B1C,IAA4C,EAC5CC,MAAsB,GAAG,MAAM,KACnB;EACZ,IAAI,CAACnB,UAAU,CAACkB,IAAI,CAAC,EAAE;IACrB,OAAO,KAAK;EACd;EACA,IAAI,CAACP,eAAe,CAAC,CAAC,EAAE;IACtBL,KAAK,CAAC,gDAAgD,CAAC;IACvDW,mBAAmB,CAACC,IAAI,EAAyBC,MAAM,CAAC;IACxD,OAAO,IAAI;EACb;EACAO,YAAY,CAACR,IAAI,EAAyBC,MAAM,CAAC;EACjD,OAAO,IAAI;AACb,CAAC;AAED,OAAO,MAAM0C,kBAAkB,GAC7B3C,IAA4C,IAChC0C,cAAc,CAAC1C,IAAI,EAAE,QAAQ,CAAC;AAE5C,OAAO,MAAM4C,mBAAmB,GAC9B5C,IAA4C,IAChC0C,cAAc,CAAC1C,IAAI,EAAE,SAAS,CAAC;AAE7C,OAAO,MAAM6C,uBAAuB,GAAGA,CAAA,KAAY;EACjD1D,OAAO,GAAG,CAAC;EACXA,OAAO,GAAG,IAAI;EACdD,WAAW,GAAG,IAAI;AACpB,CAAC","ignoreList":[]}
|
package/lib/module/main.js
CHANGED
|
@@ -34,6 +34,9 @@ export { XmppProvider } from './context/xmppProvider';
|
|
|
34
34
|
// Hooks that consumers usually need (badge counts, logout, push, etc.).
|
|
35
35
|
export { useUnread } from './hooks/useUnreadMessagesCounter';
|
|
36
36
|
export { handlePushPayload, openRoomFromPush } from './helpers/pushPayload';
|
|
37
|
+
export { callKitUuid } from './components/VideoCalls/systemCall';
|
|
38
|
+
export { answerCallFromPush, declineCallFromPush } from './helpers/incomingCallFromPush';
|
|
39
|
+
export { isCallPush, parseCallPush } from './helpers/callPush';
|
|
37
40
|
export { registerPushToken, unregisterPushToken, getRegisteredPushToken, getRegisteredPushTokens } from './services/pushRegistration';
|
|
38
41
|
export { detectPushTokenType, PushRegistrationError, isPushRegistrationError } from './networking/api-requests/push.api';
|
|
39
42
|
// Encrypted (sealed) pushes: the device key and the Android renderer.
|
package/lib/module/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ReduxWrapper","Chat","XmppProvider","useUnread","handlePushPayload","openRoomFromPush","registerPushToken","unregisterPushToken","getRegisteredPushToken","getRegisteredPushTokens","detectPushTokenType","PushRegistrationError","isPushRegistrationError","ensurePushKeyPair","getPushKeyPair","resetPushKeyPair","clearPushKeyPair","PUSH_KEY_KEYCHAIN_SERVICE","PUSH_SECRET_KEY_ITEM","registerSealedPushTask","presentSealedPush","SEALED_PUSH_TASK","openSealedPush","isSealedPush","sealedPushEnvelopeOf","SEALED_PUSH_ALG","useChatRoomFocus","logoutService","useLogout","useQRCodeChat","handleQRChatId","resendMessage","useChatFonts","useT","useUiLocale","BUILTIN_STRINGS","DEFAULT_UI_LANGUAGE","resolveStringTable","toBaseLanguage","translateKey","refreshAuthTokens","refreshAuthTokensQuietly","RefreshFatalError","isRefreshFatalError","LIGHT_THEME","DARK_THEME","resolveTheme","isDarkTheme","useTheme","setThemePreference","setPushEnabled","omemo","isE2eeEnabled"],"sourceRoot":"../../src","sources":["main.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,gCAAgC;;AAEvC;AACA,SAASA,YAAY,IAAIC,IAAI,QAAQ,0CAA0C;AAC/E,SAASC,YAAY,QAAQ,wBAAwB;;AAErD;AACA,SAASC,SAAS,QAAQ,kCAAkC;AAE5D,SAASC,iBAAiB,EAAEC,gBAAgB,QAAQ,uBAAuB;
|
|
1
|
+
{"version":3,"names":["ReduxWrapper","Chat","XmppProvider","useUnread","handlePushPayload","openRoomFromPush","callKitUuid","answerCallFromPush","declineCallFromPush","isCallPush","parseCallPush","registerPushToken","unregisterPushToken","getRegisteredPushToken","getRegisteredPushTokens","detectPushTokenType","PushRegistrationError","isPushRegistrationError","ensurePushKeyPair","getPushKeyPair","resetPushKeyPair","clearPushKeyPair","PUSH_KEY_KEYCHAIN_SERVICE","PUSH_SECRET_KEY_ITEM","registerSealedPushTask","presentSealedPush","SEALED_PUSH_TASK","openSealedPush","isSealedPush","sealedPushEnvelopeOf","SEALED_PUSH_ALG","useChatRoomFocus","logoutService","useLogout","useQRCodeChat","handleQRChatId","resendMessage","useChatFonts","useT","useUiLocale","BUILTIN_STRINGS","DEFAULT_UI_LANGUAGE","resolveStringTable","toBaseLanguage","translateKey","refreshAuthTokens","refreshAuthTokensQuietly","RefreshFatalError","isRefreshFatalError","LIGHT_THEME","DARK_THEME","resolveTheme","isDarkTheme","useTheme","setThemePreference","setPushEnabled","omemo","isE2eeEnabled"],"sourceRoot":"../../src","sources":["main.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,gCAAgC;;AAEvC;AACA,SAASA,YAAY,IAAIC,IAAI,QAAQ,0CAA0C;AAC/E,SAASC,YAAY,QAAQ,wBAAwB;;AAErD;AACA,SAASC,SAAS,QAAQ,kCAAkC;AAE5D,SAASC,iBAAiB,EAAEC,gBAAgB,QAAQ,uBAAuB;AAC3E,SAASC,WAAW,QAAQ,oCAAoC;AAChE,SACEC,kBAAkB,EAClBC,mBAAmB,QACd,gCAAgC;AAEvC,SAASC,UAAU,EAAEC,aAAa,QAAQ,oBAAoB;AAG9D,SACEC,iBAAiB,EACjBC,mBAAmB,EACnBC,sBAAsB,EACtBC,uBAAuB,QAClB,6BAA6B;AAOpC,SACEC,mBAAmB,EACnBC,qBAAqB,EACrBC,uBAAuB,QAClB,oCAAoC;AAM3C;AACA;AACA;AACA,SACEC,iBAAiB,EACjBC,cAAc,EACdC,gBAAgB,EAChBC,gBAAgB,EAChBC,yBAAyB,EACzBC,oBAAoB,QACf,qBAAqB;AAE5B,SACEC,sBAAsB,EACtBC,iBAAiB,EACjBC,gBAAgB,QACX,uBAAuB;AAE9B,SACEC,cAAc,EACdC,YAAY,EACZC,oBAAoB,EACpBC,eAAe,QACV,mBAAmB;AAO1B,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,SAASC,aAAa,EAAEC,SAAS,QAAQ,mBAAmB;AAC5D,SAASC,aAAa,EAAEC,cAAc,QAAQ,8BAA8B;AAC5E,SAASC,aAAa,QAAQ,uBAAuB;AACrD;AACA,SAASC,YAAY,QAAQ,sBAAsB;;AAEnD;AACA;AACA;AACA,SAASC,IAAI,EAAEC,WAAW,QAAQ,aAAa;AAC/C,SACEC,eAAe,EACfC,mBAAmB,EACnBC,kBAAkB,EAClBC,cAAc,EACdC,YAAY,QACP,gBAAgB;;AAGvB;AACA;;AAqBA;AACA;AACA;AACA;AACA;AACA;AACA,SACEC,iBAAiB,EACjBC,wBAAwB,EACxBC,iBAAiB,EACjBC,mBAAmB,QACd,0BAA0B;AAOjC,SACEC,WAAW,EACXC,UAAU,EACVC,YAAY,EACZC,WAAW,EACXC,QAAQ,QACH,SAAS;AAGhB,SAASC,kBAAkB,EAAEC,cAAc,QAAQ,+BAA+B;AAClF,SAASC,KAAK,EAAEC,aAAa,QAAQ,QAAQ","ignoreList":[]}
|
|
@@ -445,6 +445,12 @@ export const onCallTokenMessage = stanza => {
|
|
|
445
445
|
}));
|
|
446
446
|
return true;
|
|
447
447
|
}
|
|
448
|
+
if (callState.direction === 'incoming' && callState.phase !== 'idle' && !!callId && callState.callId === callId) {
|
|
449
|
+
callTrace('drop call-token: call already known from push', {
|
|
450
|
+
callId
|
|
451
|
+
});
|
|
452
|
+
return true;
|
|
453
|
+
}
|
|
448
454
|
store.dispatch(setIncomingCallToken({
|
|
449
455
|
roomJid,
|
|
450
456
|
roomName: incomingRoomName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["xml","store","endCall","setCallKind","setIncomingCallToken","setOutgoingCallToken","getGlobalXmppClient","callStateHasLogData","pushLog","KIND_HINT_TTL_MS","kindHints","Map","stashKindHint","key","kind","now","Date","k","v","expiresAt","delete","set","consumeKindHint","keys","hit","get","MAX_CALL_TOKEN_AGE_MS","callTrace","message","extra","__DEV__","console","log","JSON","stringify","B64_ALPHABET","decodeBase64","input","clean","replace","out","buffer","bits","i","length","idx","indexOf","String","fromCharCode","bytesToUtf8","binary","decodeURIComponent","split","map","c","charCodeAt","toString","slice","join","decodeJwtPayload","token","parts","b64","padded","repeat","parse","extractCallId","data","jwtPayload","fromAttr","attrs","callId","callid","trim","metadata","parsed","extractCallerDisplayName","sub","trimmed","looksLikeRawId","test","derivePeerXmppUsername","bareRoomName","selfXmppUsername","includes","selfLocal","peer","find","p","CALL_BODY_KEYWORDS","Set","extractNumericTimestamp","value","source","direct","Number","isFinite","match","isFreshCallToken","stanza","stanzaId","getChild","id","createdTs","Math","abs","resolveRoomByStanzaRoom","roomAttr","rooms","getState","roomEntries","Object","values","byJid","byLocalpart","room","jid","byName","name","unwrapMucsub","inner","findCallData","type","getBodyText","body","getText","handleCallStateData","fallbackRoomAttr","state","event","toLowerCase","stanzaRoomAttr","stanzaCallId","currentCall","call","phase","roomMatches","roomJid","roomName","roomBareName","callIdMatches","isTerminalState","isServerCallLog","dispatch","onCallTokenMessage","dataType","traceStanzaId","traceTs","from","wrapped","hasToken","ageMs","durationMs","callerXmppUsername","fromRoom","inviteKind","normalized","inviteRoom","inviteCallId","matchesActive","videoCallsConfig","chatSettingStore","config","videoCalls","enabled","stanzaRoom","stanzaKind","hintedKind","resolvedRoom","allowedRoomTypes","usersCnt","isOneToOneLikeRoom","isPrivateAllowed","callerName","resolvedTitle","title","titleLooksBad","incomingRoomName","selfXmpp","user","xmppUsername","peerXmppUsername","callState","isOutgoingRoomMatch","direction","outgoing","bodyText","has","startsWith","stateFromBody","sendCallStateSignal","options","xmppClient","host","to","client","send","sendCallInviteSignal"],"sourceRoot":"../../../src","sources":["networking/callTokenStanza.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["xml","store","endCall","setCallKind","setIncomingCallToken","setOutgoingCallToken","getGlobalXmppClient","callStateHasLogData","pushLog","KIND_HINT_TTL_MS","kindHints","Map","stashKindHint","key","kind","now","Date","k","v","expiresAt","delete","set","consumeKindHint","keys","hit","get","MAX_CALL_TOKEN_AGE_MS","callTrace","message","extra","__DEV__","console","log","JSON","stringify","B64_ALPHABET","decodeBase64","input","clean","replace","out","buffer","bits","i","length","idx","indexOf","String","fromCharCode","bytesToUtf8","binary","decodeURIComponent","split","map","c","charCodeAt","toString","slice","join","decodeJwtPayload","token","parts","b64","padded","repeat","parse","extractCallId","data","jwtPayload","fromAttr","attrs","callId","callid","trim","metadata","parsed","extractCallerDisplayName","sub","trimmed","looksLikeRawId","test","derivePeerXmppUsername","bareRoomName","selfXmppUsername","includes","selfLocal","peer","find","p","CALL_BODY_KEYWORDS","Set","extractNumericTimestamp","value","source","direct","Number","isFinite","match","isFreshCallToken","stanza","stanzaId","getChild","id","createdTs","Math","abs","resolveRoomByStanzaRoom","roomAttr","rooms","getState","roomEntries","Object","values","byJid","byLocalpart","room","jid","byName","name","unwrapMucsub","inner","findCallData","type","getBodyText","body","getText","handleCallStateData","fallbackRoomAttr","state","event","toLowerCase","stanzaRoomAttr","stanzaCallId","currentCall","call","phase","roomMatches","roomJid","roomName","roomBareName","callIdMatches","isTerminalState","isServerCallLog","dispatch","onCallTokenMessage","dataType","traceStanzaId","traceTs","from","wrapped","hasToken","ageMs","durationMs","callerXmppUsername","fromRoom","inviteKind","normalized","inviteRoom","inviteCallId","matchesActive","videoCallsConfig","chatSettingStore","config","videoCalls","enabled","stanzaRoom","stanzaKind","hintedKind","resolvedRoom","allowedRoomTypes","usersCnt","isOneToOneLikeRoom","isPrivateAllowed","callerName","resolvedTitle","title","titleLooksBad","incomingRoomName","selfXmpp","user","xmppUsername","peerXmppUsername","callState","isOutgoingRoomMatch","direction","outgoing","bodyText","has","startsWith","stateFromBody","sendCallStateSignal","options","xmppClient","host","to","client","send","sendCallInviteSignal"],"sourceRoot":"../../../src","sources":["networking/callTokenStanza.ts"],"mappings":";;AACA,SAASA,GAAG,QAAQ,cAAc;AAClC,SAASC,KAAK,QAAQ,cAAc;AACpC,SACEC,OAAO,EACPC,WAAW,EACXC,oBAAoB,EACpBC,oBAAoB,QACf,wBAAwB;AAC/B,SAASC,mBAAmB,QAAQ,yBAAyB;AAC7D,SAASC,mBAAmB,QAAQ,2BAA2B;AAC/D,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,gBAAgB,GAAG,MAAM;AAC/B,MAAMC,SAAS,GAAG,IAAIC,GAAG,CAGvB,CAAC;AAEH,MAAMC,aAAa,GAAGA,CACpBC,GAA8B,EAC9BC,IAAuB,KACpB;EACH,IAAI,CAACD,GAAG,EAAE;IAAC;EAAO;EAClB;EACA,MAAME,GAAG,GAAGC,IAAI,CAACD,GAAG,CAAC,CAAC;EACtB,KAAK,MAAM,CAACE,CAAC,EAAEC,CAAC,CAAC,IAAIR,SAAS,EAAE;IAC9B,IAAIQ,CAAC,CAACC,SAAS,GAAGJ,GAAG,EAAE;MAACL,SAAS,CAACU,MAAM,CAACH,CAAC,CAAC;IAAC;EAC9C;EACAP,SAAS,CAACW,GAAG,CAACR,GAAG,EAAE;IAAEC,IAAI;IAAEK,SAAS,EAAEJ,GAAG,GAAGN;EAAiB,CAAC,CAAC;AACjE,CAAC;AAED,MAAMa,eAAe,GACnBC,IAAsC,IACT;EAC7B,MAAMR,GAAG,GAAGC,IAAI,CAACD,GAAG,CAAC,CAAC;EACtB,KAAK,MAAMF,GAAG,IAAIU,IAAI,EAAE;IACtB,IAAI,CAACV,GAAG,EAAE;MAAC;IAAS;IACpB,MAAMW,GAAG,GAAGd,SAAS,CAACe,GAAG,CAACZ,GAAG,CAAC;IAC9B,IAAIW,GAAG,IAAIA,GAAG,CAACL,SAAS,IAAIJ,GAAG,EAAE;MAC/BL,SAAS,CAACU,MAAM,CAACP,GAAG,CAAC;MACrB,OAAOW,GAAG,CAACV,IAAI;IACjB;EACF;EACA,OAAO,IAAI;AACb,CAAC;AAED,MAAMY,qBAAqB,GAAG,IAAI;;AAElC;AACA;AACA;AACA,MAAMC,SAAS,GAAGA,CAACC,OAAe,EAAEC,KAA+B,KAAK;EACtE,IAAI,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,EAAE;IAC7CC,OAAO,CAACC,GAAG,CAAC,WAAWJ,OAAO,EAAE,EAAEC,KAAK,GAAGI,IAAI,CAACC,SAAS,CAACL,KAAK,CAAC,GAAG,EAAE,CAAC;EACvE;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,MAAMM,YAAY,GAChB,kEAAkE;AAEpE,MAAMC,YAAY,GAAIC,KAAa,IAAa;EAC9C,MAAMC,KAAK,GAAGD,KAAK,CAACE,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;EAClD,IAAIC,GAAG,GAAG,EAAE;EACZ,IAAIC,MAAM,GAAG,CAAC;EACd,IAAIC,IAAI,GAAG,CAAC;EACZ,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGL,KAAK,CAACM,MAAM,EAAED,CAAC,EAAE,EAAE;IACrC,MAAME,GAAG,GAAGV,YAAY,CAACW,OAAO,CAACR,KAAK,CAACK,CAAC,CAAC,CAAC;IAC1C,IAAIE,GAAG,KAAK,CAAC,CAAC,EAAE;MAAC;IAAS;IAC1BJ,MAAM,GAAIA,MAAM,IAAI,CAAC,GAAII,GAAG;IAC5BH,IAAI,IAAI,CAAC;IACT,IAAIA,IAAI,IAAI,CAAC,EAAE;MACbA,IAAI,IAAI,CAAC;MACTF,GAAG,IAAIO,MAAM,CAACC,YAAY,CAAEP,MAAM,IAAIC,IAAI,GAAI,IAAI,CAAC;IACrD;EACF;EACA,OAAOF,GAAG;AACZ,CAAC;;AAED;AACA;AACA;AACA,MAAMS,WAAW,GAAIC,MAAc,IAAa;EAC9C,IAAI;IACF,OAAOC,kBAAkB,CACvBD,MAAM,CACHE,KAAK,CAAC,EAAE,CAAC,CACTC,GAAG,CAAEC,CAAC,IAAK,GAAG,GAAG,CAAC,IAAI,GAAGA,CAAC,CAACC,UAAU,CAAC,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,EAAEC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CACjEC,IAAI,CAAC,EAAE,CACZ,CAAC;EACH,CAAC,CAAC,MAAM;IACN,OAAOR,MAAM;EACf;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMS,gBAAgB,GAAIC,KAAa,IAAiC;EACtE,IAAI,CAACA,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAAC,OAAO,IAAI;EAAC;EACtD,MAAMC,KAAK,GAAGD,KAAK,CAACR,KAAK,CAAC,GAAG,CAAC;EAC9B,IAAIS,KAAK,CAACjB,MAAM,GAAG,CAAC,EAAE;IAAC,OAAO,IAAI;EAAC;EACnC,IAAI;IACF,MAAMkB,GAAG,GAAGD,KAAK,CAAC,CAAC,CAAC,CAACtB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAACA,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;IAC1D,MAAMwB,MAAM,GAAGD,GAAG,GAAG,GAAG,CAACE,MAAM,CAAC,CAAC,CAAC,GAAIF,GAAG,CAAClB,MAAM,GAAG,CAAE,IAAI,CAAC,CAAC;IAC3D,OAAOX,IAAI,CAACgC,KAAK,CAAChB,WAAW,CAACb,YAAY,CAAC2B,MAAM,CAAC,CAAC,CAAC;EACtD,CAAC,CAAC,MAAM;IACN,OAAO,IAAI;EACb;AACF,CAAC;AAED,MAAMG,aAAa,GAAGA,CACpBC,IAAa,EACbC,UAAsC,KACnC;EACH,MAAMC,QAAQ,GAAGtB,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAEC,MAAM,IAAIJ,IAAI,CAACG,KAAK,EAAEE,MAAM,IAAI,EAAE,CAAC,CAACC,IAAI,CAAC,CAAC;EAC9E,IAAIJ,QAAQ,EAAE;IAAC,OAAOA,QAAQ;EAAC;EAC/B,MAAMK,QAAQ,GAAGN,UAAU,EAAEM,QAAQ;EACrC,IAAI,OAAOA,QAAQ,KAAK,QAAQ,EAAE;IAChC,IAAI;MACF,MAAMC,MAAM,GAAG1C,IAAI,CAACgC,KAAK,CAACS,QAAQ,CAAC;MACnC,IAAIC,MAAM,EAAEJ,MAAM,EAAE;QAAC,OAAOxB,MAAM,CAAC4B,MAAM,CAACJ,MAAM,CAAC;MAAC;IACpD,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ,CAAC,MAAM,IAAIG,QAAQ,IAAI,OAAOA,QAAQ,KAAK,QAAQ,IAAIA,QAAQ,CAACH,MAAM,EAAE;IACtE,OAAOxB,MAAM,CAAC2B,QAAQ,CAACH,MAAM,CAAC;EAChC;EACA,OAAO,IAAI;AACb,CAAC;AAED,MAAMK,wBAAwB,GAC5BR,UAAsC,IAC3B;EACX,MAAMS,GAAG,GAAGT,UAAU,EAAES,GAAG;EAC3B,IAAI,OAAOA,GAAG,KAAK,QAAQ,EAAE;IAAC,OAAO,EAAE;EAAC;EACxC,MAAMC,OAAO,GAAGD,GAAG,CAACJ,IAAI,CAAC,CAAC;EAC1B,IAAI,CAACK,OAAO,EAAE;IAAC,OAAO,EAAE;EAAC;EACzB;EACA;EACA;EACA;EACA,MAAMC,cAAc,GAAG,oBAAoB,CAACC,IAAI,CAACF,OAAO,CAAC;EACzD,IAAIC,cAAc,EAAE;IAAC,OAAO,EAAE;EAAC;EAC/B,OAAOD,OAAO;AAChB,CAAC;;AAED;AACA;AACA;AACA,MAAMG,sBAAsB,GAAGA,CAC7BC,YAAoB,EACpBC,gBAAwB,KACN;EAClB,IAAI,CAACD,YAAY,CAACE,QAAQ,CAAC,GAAG,CAAC,EAAE;IAAC,OAAO,IAAI;EAAC;EAC9C,MAAMvB,KAAK,GAAGqB,YAAY,CAAC9B,KAAK,CAAC,GAAG,CAAC;EACrC,IAAIS,KAAK,CAACjB,MAAM,KAAK,CAAC,EAAE;IAAC,OAAO,IAAI;EAAC;EACrC,MAAMyC,SAAS,GAAGtC,MAAM,CAACoC,gBAAgB,IAAI,EAAE,CAAC,CAAC/B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;EAC9D,MAAMkC,IAAI,GAAGzB,KAAK,CAAC0B,IAAI,CAAEC,CAAC,IAAKA,CAAC,IAAIA,CAAC,KAAKH,SAAS,CAAC;EACpD,OAAOC,IAAI,IAAI,IAAI;AACrB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMG,kBAAkB,GAAG,IAAIC,GAAG,CAAC,CACjC,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,eAAe,CAChB,CAAC;AAEF,MAAMC,uBAAuB,GAAIC,KAAc,IAAoB;EACjE,MAAMC,MAAM,GAAG9C,MAAM,CAAC6C,KAAK,IAAI,EAAE,CAAC,CAACnB,IAAI,CAAC,CAAC;EACzC,IAAI,CAACoB,MAAM,EAAE;IAAC,OAAO,IAAI;EAAC;EAE1B,MAAMC,MAAM,GAAGC,MAAM,CAACF,MAAM,CAAC;EAC7B,IAAIE,MAAM,CAACC,QAAQ,CAACF,MAAM,CAAC,IAAIA,MAAM,GAAG,CAAC,EAAE;IACzC,OAAOD,MAAM,CAACjD,MAAM,GAAG,EAAE,GAAGmD,MAAM,CAACF,MAAM,CAACpC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAGqC,MAAM;EAClE;EAEA,MAAMG,KAAK,GAAGJ,MAAM,CAACI,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;EAC1C,IAAI,CAACA,KAAK,EAAE;IAAC,OAAO,IAAI;EAAC;EACzB,OAAOF,MAAM,CAACE,KAAK,CAACxC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,MAAMyC,gBAAgB,GAAIC,MAAe,IAAc;EACrD,MAAMC,QAAQ,GAAGD,MAAM,CAACE,QAAQ,CAAC,WAAW,CAAC,EAAE/B,KAAK,EAAEgC,EAAE;EACxD,MAAMC,SAAS,GAAGZ,uBAAuB,CAACS,QAAQ,CAAC;EACnD,IAAI,CAACG,SAAS,EAAE;IAAC,OAAO,KAAK;EAAC;EAC9B,OAAOC,IAAI,CAACC,GAAG,CAACzF,IAAI,CAACD,GAAG,CAAC,CAAC,GAAGwF,SAAS,CAAC,IAAI7E,qBAAqB;AAClE,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMgF,uBAAuB,GAAIC,QAAgB,IAAK;EACpD,MAAMC,KAAK,GAAI3G,KAAK,CAAC4G,QAAQ,CAAC,CAAC,CAACD,KAAK,CAACA,KAAK,IAAI,CAAC,CAG/C;EACD,MAAME,WAAW,GAAGC,MAAM,CAACC,MAAM,CAACJ,KAAK,CAAC;EAExC,MAAMK,KAAK,GAAGL,KAAK,CAACD,QAAQ,CAAC;EAC7B,IAAIM,KAAK,EAAE;IAAC,OAAOA,KAAK;EAAC;EAEzB,MAAMC,WAAW,GAAGJ,WAAW,CAACvB,IAAI,CACjC4B,IAAI,IAAK,CAACA,IAAI,EAAEC,GAAG,IAAI,EAAE,EAAEhE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAKuD,QAChD,CAAC;EACD,IAAIO,WAAW,EAAE;IAAC,OAAOA,WAAW;EAAC;EAErC,MAAMG,MAAM,GAAGP,WAAW,CAACvB,IAAI,CAAE4B,IAAI,IAAKA,IAAI,EAAEG,IAAI,KAAKX,QAAQ,CAAC;EAClE,IAAIU,MAAM,EAAE;IAAC,OAAOA,MAAM;EAAC;EAE3B,OAAO,IAAI;AACb,CAAC;;AAED;AACA;AACA;AACA,MAAME,YAAY,GAAIpB,MAAe,IAAc;EACjD;EACA;EACA;EACA;EACA,MAAMqB,KAAK,GAAGrB,MAAM,EAChBE,QAAQ,GAAG,OAAO,CAAC,EACnBA,QAAQ,GAAG,OAAO,CAAC,EACnBA,QAAQ,GAAG,MAAM,CAAC,EAClBA,QAAQ,GAAG,SAAS,CAAC;EACzB,OAAQmB,KAAK,IAAgBrB,MAAM;AACrC,CAAC;AAED,MAAMsB,YAAY,GAAItB,MAAe,IAAqB;EACxD;EACA;EACA;EACA,MAAML,MAAM,GAAGK,MAAM,EAAEE,QAAQ,GAAG,MAAM,CAAC;EACzC,IAAIP,MAAM,IAAI,SAAS,CAACd,IAAI,CAACjC,MAAM,CAAC+C,MAAM,CAACxB,KAAK,EAAEoD,IAAI,IAAI,EAAE,CAAC,CAAC,EAAE;IAC9D,OAAO5B,MAAM;EACf;EACA,OAAO,IAAI;AACb,CAAC;AAED,MAAM6B,WAAW,GAAIxB,MAAe,IAAa;EAC/C,MAAMyB,IAAI,GAAGzB,MAAM,EAAEE,QAAQ,GAAG,MAAM,CAAC;EACvC,OAAOtD,MAAM,CAAC6E,IAAI,EAAEC,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,CAACpD,IAAI,CAAC,CAAC;AAC/C,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMqD,mBAAmB,GAAGA,CAC1B3D,IAAa,EACb4D,gBAAyB,KAChB;EACT,MAAMC,KAAK,GAAGjF,MAAM,CAClBoB,IAAI,CAACG,KAAK,EAAE0D,KAAK,IAAI7D,IAAI,CAACG,KAAK,EAAE2D,KAAK,IAAI,EAC5C,CAAC,CAACC,WAAW,CAAC,CAAC;EACf,MAAMC,cAAc,GAClBpF,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAE6C,IAAI,IAAI,EAAE,CAAC,CAAC1C,IAAI,CAAC,CAAC,IAAKsD,gBAAgB,IAAI,EAAG;EACnE,MAAMK,YAAY,GAAGrF,MAAM,CACzBoB,IAAI,CAACG,KAAK,EAAEC,MAAM,IAAIJ,IAAI,CAACG,KAAK,EAAEE,MAAM,IAAI,EAC9C,CAAC,CAACC,IAAI,CAAC,CAAC;EACR,MAAM4D,WAAW,GAAGpI,KAAK,CAAC4G,QAAQ,CAAC,CAAC,CAACyB,IAAI;EAEzC,IAAID,WAAW,CAACE,KAAK,KAAK,MAAM,EAAE;IAAC;EAAO;EAE1C,MAAMC,WAAW,GACf,CAAC,CAACL,cAAc,KACfE,WAAW,CAACI,OAAO,KAAKN,cAAc,IACrCE,WAAW,CAACK,QAAQ,KAAKP,cAAc,IACvCE,WAAW,CAACM,YAAY,KAAKR,cAAc,IAC3C,CAACE,WAAW,CAACI,OAAO,IAAI,EAAE,EAAErF,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK+E,cAAc,CAAC;EACjE,MAAMS,aAAa,GACjB,CAAC,CAACR,YAAY,IACd,CAAC,CAACC,WAAW,CAAC9D,MAAM,IACpB8D,WAAW,CAAC9D,MAAM,KAAK6D,YAAY;EAErC,MAAMS,eAAe,GACnBb,KAAK,KAAK,OAAO,IACjBA,KAAK,KAAK,UAAU,IACpBA,KAAK,KAAK,WAAW,IACrBA,KAAK,KAAK,UAAU,IACpBA,KAAK,KAAK,SAAS,IACnBA,KAAK,KAAK,UAAU;;EAEtB;EACA;EACA,MAAMc,eAAe,GAAG,CAACd,KAAK,IAAIzH,mBAAmB,CAAC4D,IAAI,CAACG,KAAK,IAAI,CAAC,CAAC,CAAC;EAEvE,IAAI,CAACkE,WAAW,IAAII,aAAa,MAAMC,eAAe,IAAIC,eAAe,CAAC,EAAE;IAC1E7I,KAAK,CAAC8I,QAAQ,CAAC7I,OAAO,CAAC,CAAC,CAAC;EAC3B;AACF,CAAC;AAED,OAAO,MAAM8I,kBAAkB,GAAI7C,MAAe,IAAc;EAC9D;EACA;EACA;EACA;EACA;EACA,IAAIA,MAAM,EAAEmB,IAAI,KAAK,SAAS,EAAE;IAC9B,OAAO,KAAK;EACd;;EAEA;EACA;EACA,MAAME,KAAK,GAAGD,YAAY,CAACpB,MAAM,CAAC;;EAElC;EACA;EACA;EACA,MAAMhC,IAAI,GAAGsD,YAAY,CAACD,KAAK,CAAC;EAChC,IAAIrD,IAAI,EAAE;IACR,MAAM8E,QAAQ,GAAGlG,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAEoD,IAAI,IAAI,EAAE,CAAC,CAACQ,WAAW,CAAC,CAAC;IAC7D,MAAMgB,aAAa,GAAG1B,KAAK,CAACnB,QAAQ,GAAG,WAAW,CAAC,EAAE/B,KAAK,EAAEgC,EAAE;IAC9D,MAAM6C,OAAO,GAAGxD,uBAAuB,CAACuD,aAAa,CAAC;IACtDvH,SAAS,CAAC,YAAYsH,QAAQ,EAAE,EAAE;MAChCG,IAAI,EAAEjD,MAAM,CAAC7B,KAAK,EAAE8E,IAAI;MACxB1B,IAAI,EAAEvB,MAAM,CAAC7B,KAAK,EAAEoD,IAAI;MACxB2B,OAAO,EAAE7B,KAAK,KAAKrB,MAAM;MACzBgB,IAAI,EAAEhD,IAAI,CAACG,KAAK,EAAE6C,IAAI;MACtB5C,MAAM,EAAEJ,IAAI,CAACG,KAAK,EAAEC,MAAM,IAAIJ,IAAI,CAACG,KAAK,EAAEE,MAAM;MAChD8E,QAAQ,EAAE,CAAC,CAACnF,IAAI,CAACG,KAAK,EAAEV,KAAK;MAC7BwC,QAAQ,EAAE8C,aAAa;MACvBK,KAAK,EAAEJ,OAAO,GAAGnI,IAAI,CAACD,GAAG,CAAC,CAAC,GAAGoI,OAAO,GAAG;IAC1C,CAAC,CAAC;IAEF,IAAIF,QAAQ,KAAK,YAAY,EAAE;MAC7B;MACA;MACA,IAAI;QACFzI,OAAO,CAAC,MAAM,EAAE,uBAAuB,EAAE;UACvC+D,MAAM,EAAEJ,IAAI,CAACG,KAAK,EAAEC,MAAM;UAC1BiF,UAAU,EAAErF,IAAI,CAACG,KAAK,EAAEkF,UAAU;UAClCxB,KAAK,EAAE7D,IAAI,CAACG,KAAK,EAAE0D,KAAK;UACxByB,kBAAkB,EAAEtF,IAAI,CAACG,KAAK,EAAEmF,kBAAkB;UAClDL,IAAI,EAAEjD,MAAM,CAAC7B,KAAK,EAAE8E;QACtB,CAAC,CAAC;MACJ,CAAC,CAAC,MAAM;QACN;MAAA;;MAGF;MACA;MACA,MAAMM,QAAQ,GAAG3G,MAAM,CAACoD,MAAM,CAAC7B,KAAK,EAAE8E,IAAI,IAAI,EAAE,CAAC,CAC9ChG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACbA,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACbqB,IAAI,CAAC,CAAC;MACTqD,mBAAmB,CAACN,KAAK,EAAEkC,QAAQ,CAAC;;MAEpC;MACA;MACA;MACA;MACA;MACA,IAAInJ,mBAAmB,CAAC4D,IAAI,CAACG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE;QACzC,OAAO,KAAK;MACd;MACA,OAAO,IAAI;IACb;IAEA,IAAI2E,QAAQ,KAAK,aAAa,EAAE;MAC9B,MAAMU,UAAU,GAAG5G,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAExD,IAAI,IAAI,EAAE,CAAC,CAACoH,WAAW,CAAC,CAAC;MAC/D,MAAM0B,UAA6B,GACjCD,UAAU,KAAK,OAAO,GAAG,OAAO,GAAG,OAAO;MAC5C,MAAME,UAAU,GAAG9G,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAE6C,IAAI,IAAI,EAAE,CAAC,CAAC1C,IAAI,CAAC,CAAC,IAAI,IAAI;MAChE,MAAMqF,YAAY,GAChB/G,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAEC,MAAM,IAAIJ,IAAI,CAACG,KAAK,EAAEE,MAAM,IAAI,EAAE,CAAC,CAACC,IAAI,CAAC,CAAC,IAAI,IAAI;;MAEvE;MACA;MACA7D,aAAa,CAACiJ,UAAU,EAAED,UAAU,CAAC;MACrChJ,aAAa,CAACkJ,YAAY,EAAEF,UAAU,CAAC;MAEvC,MAAMvB,WAAW,GAAGpI,KAAK,CAAC4G,QAAQ,CAAC,CAAC,CAACyB,IAAI;MACzC,MAAMyB,aAAa,GACjB1B,WAAW,CAACE,KAAK,KAAK,MAAM,KAC1B,CAAC,CAACsB,UAAU,KACXxB,WAAW,CAACM,YAAY,KAAKkB,UAAU,IACtCxB,WAAW,CAACI,OAAO,KAAKoB,UAAU,IAClC,CAACxB,WAAW,CAACI,OAAO,IAAI,EAAE,EAAErF,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAKyG,UAAU,CAAC,IAC1D,CAAC,CAACC,YAAY,IAAIzB,WAAW,CAAC9D,MAAM,KAAKuF,YAAa,CAAC;MAC5D,IAAIC,aAAa,IAAI1B,WAAW,CAACvH,IAAI,KAAK8I,UAAU,EAAE;QACpD3J,KAAK,CAAC8I,QAAQ,CAAC5I,WAAW,CAACyJ,UAAU,CAAC,CAAC;MACzC;MACA,OAAO,IAAI;IACb;IAEA,IAAIX,QAAQ,KAAK,YAAY,EAAE;MAC7B,MAAMe,gBAAgB,GACpB/J,KAAK,CAAC4G,QAAQ,CAAC,CAAC,CAACoD,gBAAgB,CAACC,MAAM,EAAEC,UAAU;MACtD,IAAIH,gBAAgB,EAAEI,OAAO,KAAK,IAAI,EAAE;QACtCzI,SAAS,CAAC,iCAAiC,CAAC;QAC5C,OAAO,IAAI;MACb;MACA,IAAI,CAACuE,gBAAgB,CAACsB,KAAK,CAAC,EAAE;QAC5B7F,SAAS,CAAC,4BAA4B,CAAC;QACvC,OAAO,IAAI;MACb;MAEA,MAAMiC,KAAK,GAAGb,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAEV,KAAK,IAAI,EAAE,CAAC,CAACa,IAAI,CAAC,CAAC;MACpD,MAAM4F,UAAU,GAAGtH,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAE6C,IAAI,IAAI,EAAE,CAAC,CAAC1C,IAAI,CAAC,CAAC;MACxD,MAAM6F,UAAU,GAAGvH,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAExD,IAAI,IAAI,EAAE,CAAC,CAACoH,WAAW,CAAC,CAAC;MAC/D,MAAME,YAAY,GAChBrF,MAAM,CAACoB,IAAI,CAACG,KAAK,EAAEC,MAAM,IAAIJ,IAAI,CAACG,KAAK,EAAEE,MAAM,IAAI,EAAE,CAAC,CAACC,IAAI,CAAC,CAAC,IAAI,IAAI;MACvE;MACA;MACA;MACA;MACA,MAAM8F,UAAU,GAAGjJ,eAAe,CAAC,CAAC+I,UAAU,EAAEjC,YAAY,CAAC,CAAC;MAC9D,MAAMtH,IAAuB,GAC3ByJ,UAAU,KAAKD,UAAU,KAAK,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;MAC5D,IAAI,CAAC1G,KAAK,IAAI,CAACyG,UAAU,EAAE;QACzB1I,SAAS,CAAC,mCAAmC,CAAC;QAC9C,OAAO,IAAI;MACb;MAEA,MAAM6I,YAAY,GAAG9D,uBAAuB,CAAC2D,UAAU,CAAC;MACxD,MAAMI,gBAAgB,GAAGT,gBAAgB,CAACS,gBAAgB,IAAI,CAAC,SAAS,CAAC;MACzE,MAAMC,QAAQ,GAAG3E,MAAM,CAACyE,YAAY,EAAEE,QAAQ,IAAI,CAAC,CAAC;MACpD,MAAMC,kBAAkB,GAAGD,QAAQ,GAAG,CAAC,IAAIA,QAAQ,IAAI,CAAC;MACxD,MAAME,gBAAgB,GAAGH,gBAAgB,CAACrF,QAAQ,CAAC,SAAS,CAAC;MAC7D,IACEoF,YAAY,EAAE9C,IAAI,IAClB8C,YAAY,CAAC9C,IAAI,KAAK,SAAS,IAC/B,CAACiD,kBAAkB,EACnB;QACAhJ,SAAS,CAAC,4BAA4B,EAAE;UAAE+F,IAAI,EAAE8C,YAAY,CAAC9C,IAAI;UAAEgD;QAAS,CAAC,CAAC;QAC9E,OAAO,IAAI;MACb;MACA,IAAIF,YAAY,EAAE9C,IAAI,KAAK,SAAS,IAAI,CAACkD,gBAAgB,EAAE;QACzDjJ,SAAS,CAAC,sCAAsC,CAAC;QACjD,OAAO,IAAI;MACb;MACA,IACE,CAAC6I,YAAY,EAAE9C,IAAI,IACnB,CAAC2C,UAAU,CAACjF,QAAQ,CAAC,GAAG,CAAC,IACzB,CAACuF,kBAAkB,EACnB;QACAhJ,SAAS,CAAC,+BAA+B,EAAE;UAAE0I;QAAW,CAAC,CAAC;QAC1D,OAAO,IAAI;MACb;MAEA,MAAM5B,OAAO,GACX+B,YAAY,EAAEpD,GAAG,KAAKiD,UAAU,CAACjF,QAAQ,CAAC,GAAG,CAAC,GAAGiF,UAAU,GAAG,EAAE,CAAC;MACnE;MACA;MACA;MACA;MACA,MAAMjG,UAAU,GAAGT,gBAAgB,CAACC,KAAK,CAAC;MAC1C,MAAMiH,UAAU,GAAGjG,wBAAwB,CAACR,UAAU,CAAC;MACvD;MACA;MACA,MAAM0G,aAAa,GAAG/H,MAAM,CAC1ByH,YAAY,EAAEO,KAAK,IAAIP,YAAY,EAAElD,IAAI,IAAI,EAC/C,CAAC,CAAC7C,IAAI,CAAC,CAAC;MACR,MAAMuG,aAAa,GACjB,CAACF,aAAa,IACdA,aAAa,KAAKT,UAAU,IAC5B,CAAC,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,CAACjF,QAAQ,CACrD0F,aAAa,CAAC5C,WAAW,CAAC,CAC5B,CAAC;MACH;MACA;MACA,MAAM+C,gBAAgB,GACpB,CAACD,aAAa,GAAGH,UAAU,GAAGC,aAAa,KAAKD,UAAU,IAAI,EAAE;MAClE,IAAI,CAACpC,OAAO,EAAE;QACZ9G,SAAS,CAAC,8BAA8B,EAAE;UAAE0I;QAAW,CAAC,CAAC;QACzD,OAAO,IAAI;MACb;MAEA,MAAM9F,MAAM,GAAGL,aAAa,CAACC,IAAI,EAAEC,UAAU,CAAC;MAC9C,MAAM8G,QAAQ,GACZjL,KAAK,CAAC4G,QAAQ,CAAC,CAAC,CAACoD,gBAAgB,CAACkB,IAAI,EAAEC,YAAY,IAAI,EAAE;MAC5D,MAAMC,gBAAgB,GAAGpG,sBAAsB,CAACoF,UAAU,EAAEa,QAAQ,CAAC;MAErE,MAAMI,SAAS,GAAGrL,KAAK,CAAC4G,QAAQ,CAAC,CAAC,CAACyB,IAAI;MACvC,MAAMiD,mBAAmB,GACvBD,SAAS,CAACE,SAAS,KAAK,UAAU,KACjCF,SAAS,CAAC7C,OAAO,KAAKA,OAAO,IAC5B6C,SAAS,CAAC5C,QAAQ,KAAKuC,gBAAgB,IACvCK,SAAS,CAAC3C,YAAY,KAAK0B,UAAU,CAAC;MAE1C1I,SAAS,CAAC,mBAAmB,EAAE;QAC7B8J,QAAQ,EAAEF,mBAAmB;QAC7B9C,OAAO;QACPlE;MACF,CAAC,CAAC;MACF,IAAIgH,mBAAmB,EAAE;QACvBtL,KAAK,CAAC8I,QAAQ,CACZ1I,oBAAoB,CAAC;UAAEoI,OAAO;UAAE7E,KAAK;UAAEW,MAAM,EAAEA,MAAM,IAAI;QAAK,CAAC,CACjE,CAAC;QACD,OAAO,IAAI;MACb;MAEA,IACE+G,SAAS,CAACE,SAAS,KAAK,UAAU,IAClCF,SAAS,CAAC/C,KAAK,KAAK,MAAM,IAC1B,CAAC,CAAChE,MAAM,IACR+G,SAAS,CAAC/G,MAAM,KAAKA,MAAM,EAC3B;QACA5C,SAAS,CAAC,+CAA+C,EAAE;UAAE4C;QAAO,CAAC,CAAC;QACtE,OAAO,IAAI;MACb;MAEAtE,KAAK,CAAC8I,QAAQ,CACZ3I,oBAAoB,CAAC;QACnBqI,OAAO;QACPC,QAAQ,EAAEuC,gBAAgB;QAC1BtC,YAAY,EAAE0B,UAAU;QACxBzG,KAAK;QACL9C,IAAI;QACJyD,MAAM,EAAEA,MAAM,IAAI,IAAI;QACtB8G,gBAAgB,EAAEA,gBAAgB,IAAI;MACxC,CAAC,CACH,CAAC;MACD,OAAO,IAAI;IACb;;IAEA;IACA,OAAO,IAAI;EACb;;EAEA;EACA;EACA;EACA;EACA,MAAMK,QAAQ,GAAG/D,WAAW,CAACH,KAAK,CAAC,CAACU,WAAW,CAAC,CAAC;EACjD,IAAIwD,QAAQ,IAAIjG,kBAAkB,CAACkG,GAAG,CAACD,QAAQ,CAAC,EAAE;IAChD,IAAIA,QAAQ,CAACE,UAAU,CAAC,OAAO,CAAC,EAAE;MAChC,MAAMC,aAAa,GAAGH,QAAQ,CAACnJ,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;MACpD;MACA;MACAuF,mBAAmB,CAAC;QAClBxD,KAAK,EAAE;UAAE0D,KAAK,EAAE6D,aAAa;UAAE1E,IAAI,EAAE;QAAG;MAC1C,CAAuB,CAAC;IAC1B;IACA,OAAO,IAAI;EACb;EAEA,OAAO,KAAK;AACd,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,OAAO,MAAM2E,mBAAmB,GAAGA,CACjC9D,KAAsB,EACtB+D,OAIC,KACQ;EACT,MAAMC,UAAU,GAAG1L,mBAAmB,CAAC,CAAC;EACxC,IAAI,CAAC0L,UAAU,EAAE;IAAC;EAAO;EAEzB,MAAMV,SAAS,GAAGrL,KAAK,CAAC4G,QAAQ,CAAC,CAAC,CAACyB,IAAI;EACvC,MAAMhD,IAAI,GAAG,CACXyG,OAAO,EAAEV,gBAAgB,IACzBC,SAAS,CAACD,gBAAgB,IAC1B,EAAE,EACF5G,IAAI,CAAC,CAAC;EACR,IAAI,CAACa,IAAI,EAAE;IAAC;EAAO;EAEnB,MAAM2G,IAAI,GAAID,UAAU,CAASC,IAAI,IAAI,EAAE;EAC3C,IAAI,CAACA,IAAI,EAAE;IAAC;EAAO;EAEnB,MAAM1H,MAAM,GAAGwH,OAAO,EAAExH,MAAM,IAAI+G,SAAS,CAAC/G,MAAM,IAAI,EAAE;EACxD,MAAM4C,IAAI,GACR4E,OAAO,EAAEpD,YAAY,IACrB2C,SAAS,CAAC3C,YAAY,IACtB,CAAC2C,SAAS,CAAC7C,OAAO,IAAI,EAAE,EAAErF,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IACvC,EAAE;EAEJ,IAAI;IACF,MAAM+C,MAAM,GAAGnG,GAAG,CAChB,SAAS,EACT;MACEkM,EAAE,EAAE5G,IAAI,CAACF,QAAQ,CAAC,GAAG,CAAC,GAAGE,IAAI,GAAG,GAAGA,IAAI,IAAI2G,IAAI,EAAE;MACjDvE,IAAI,EAAE,MAAM;MACZpB,EAAE,EAAE,cAActF,IAAI,CAACD,GAAG,CAAC,CAAC;IAC9B,CAAC,EACDf,GAAG,CAAC,MAAM,EAAE;MACV0H,IAAI,EAAE,YAAY;MAClBM,KAAK;MACLzD,MAAM;MACN4C;IACF,CAAC,CACH,CAAC;IACA6E,UAAU,CAASG,MAAM,EAAEC,IAAI,GAAGjG,MAAM,CAAC;EAC5C,CAAC,CAAC,MAAM;IACN;IACA;EAAA;AAEJ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMkG,oBAAoB,GAAGA,CAClCvL,IAAuB,EACvBiL,OAIC,KACQ;EACT,MAAMC,UAAU,GAAG1L,mBAAmB,CAAC,CAAC;EACxC,IAAI,CAAC0L,UAAU,EAAE;IAAC;EAAO;EACzB,MAAM1G,IAAI,GAAGvC,MAAM,CAACgJ,OAAO,CAACV,gBAAgB,IAAI,EAAE,CAAC,CAAC5G,IAAI,CAAC,CAAC;EAC1D,IAAI,CAACa,IAAI,EAAE;IAAC;EAAO;EACnB,MAAM2G,IAAI,GAAID,UAAU,CAASC,IAAI,IAAI,EAAE;EAC3C,IAAI,CAACA,IAAI,EAAE;IAAC;EAAO;EAEnB,IAAI;IACF,MAAM9F,MAAM,GAAGnG,GAAG,CAChB,SAAS,EACT;MACEkM,EAAE,EAAE5G,IAAI,CAACF,QAAQ,CAAC,GAAG,CAAC,GAAGE,IAAI,GAAG,GAAGA,IAAI,IAAI2G,IAAI,EAAE;MACjDvE,IAAI,EAAE,MAAM;MACZpB,EAAE,EAAE,eAAetF,IAAI,CAACD,GAAG,CAAC,CAAC;IAC/B,CAAC,EACDf,GAAG,CAAC,MAAM,EAAE;MACV0H,IAAI,EAAE,aAAa;MACnB5G,IAAI;MACJqG,IAAI,EAAE4E,OAAO,CAACpD,YAAY,IAAI,EAAE;MAChCpE,MAAM,EAAEwH,OAAO,CAACxH,MAAM,IAAI;IAC5B,CAAC,CACH,CAAC;IACAyH,UAAU,CAASG,MAAM,EAAEC,IAAI,GAAGjG,MAAM,CAAC;EAC5C,CAAC,CAAC,MAAM;IACN;IACA;IACA;EAAA;AAEJ,CAAC","ignoreList":[]}
|