@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.
- package/CHANGELOG.md +7 -1
- package/README.md +6 -3
- 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/helpers/secureStoreRuntime.js +10 -1
- package/lib/commonjs/helpers/secureStoreRuntime.js.map +1 -1
- package/lib/commonjs/main.js +114 -0
- package/lib/commonjs/main.js.map +1 -1
- package/lib/commonjs/networking/api-requests/push.api.js +22 -7
- package/lib/commonjs/networking/api-requests/push.api.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/pushKeyStore.js +169 -0
- package/lib/commonjs/push/pushKeyStore.js.map +1 -0
- package/lib/commonjs/push/sealedBox.js +106 -0
- package/lib/commonjs/push/sealedBox.js.map +1 -0
- package/lib/commonjs/push/sealedPush.js +135 -0
- package/lib/commonjs/push/sealedPush.js.map +1 -0
- package/lib/commonjs/push/sealedPushTask.js +221 -0
- package/lib/commonjs/push/sealedPushTask.js.map +1 -0
- package/lib/commonjs/services/pushRegistration.js +12 -7
- package/lib/commonjs/services/pushRegistration.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/helpers/secureStoreRuntime.js +10 -1
- package/lib/module/helpers/secureStoreRuntime.js.map +1 -1
- package/lib/module/main.js +9 -0
- package/lib/module/main.js.map +1 -1
- package/lib/module/networking/api-requests/push.api.js +21 -6
- package/lib/module/networking/api-requests/push.api.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/pushKeyStore.js +159 -0
- package/lib/module/push/pushKeyStore.js.map +1 -0
- package/lib/module/push/sealedBox.js +97 -0
- package/lib/module/push/sealedBox.js.map +1 -0
- package/lib/module/push/sealedPush.js +127 -0
- package/lib/module/push/sealedPush.js.map +1 -0
- package/lib/module/push/sealedPushTask.js +212 -0
- package/lib/module/push/sealedPushTask.js.map +1 -0
- package/lib/module/services/pushRegistration.js +12 -7
- package/lib/module/services/pushRegistration.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/helpers/secureStoreRuntime.d.ts +17 -3
- package/lib/typescript/helpers/secureStoreRuntime.d.ts.map +1 -1
- package/lib/typescript/main.d.ts +11 -0
- package/lib/typescript/main.d.ts.map +1 -1
- package/lib/typescript/networking/api-requests/push.api.d.ts +14 -2
- package/lib/typescript/networking/api-requests/push.api.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/pushKeyStore.d.ts +35 -0
- package/lib/typescript/push/pushKeyStore.d.ts.map +1 -0
- package/lib/typescript/push/sealedBox.d.ts +24 -0
- package/lib/typescript/push/sealedBox.d.ts.map +1 -0
- package/lib/typescript/push/sealedPush.d.ts +67 -0
- package/lib/typescript/push/sealedPush.d.ts.map +1 -0
- package/lib/typescript/push/sealedPushTask.d.ts +44 -0
- package/lib/typescript/push/sealedPushTask.d.ts.map +1 -0
- package/lib/typescript/services/pushRegistration.d.ts +8 -0
- package/lib/typescript/services/pushRegistration.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/types/types.d.ts +6 -0
- package/lib/typescript/types/types.d.ts.map +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/package.json +11 -1
- package/plugins/notification-service/NotificationService.swift +113 -0
- package/plugins/notification-service/SealedBox.swift +355 -0
- package/plugins/notification-service/check/gen-vectors.mjs +24 -0
- package/plugins/notification-service/check/main.swift +37 -0
- package/plugins/notification-service/check/run.sh +12 -0
- package/plugins/notification-service/check/vectors.json +1 -0
- package/plugins/withNotificationServiceExtension.js +70 -18
- 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/helpers/secureStoreRuntime.ts +21 -3
- package/src/main.ts +38 -0
- package/src/networking/api-requests/push.api.ts +29 -4
- 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/pushKeyStore.ts +163 -0
- package/src/push/sealedBox.ts +104 -0
- package/src/push/sealedPush.ts +138 -0
- package/src/push/sealedPushTask.ts +221 -0
- package/src/services/pushRegistration.ts +25 -5
- package/src/types/models/xmpp.model.ts +2 -1
- package/src/types/types.ts +6 -0
- package/src/version.ts +1 -1
|
@@ -3,7 +3,13 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports
|
|
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
|
|
36
|
-
* a killed app
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
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
|
|
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(
|
|
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
|
-
|
|
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 =
|
|
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 =
|
|
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":"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","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":"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","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
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
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","
|
|
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":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AAEA,MAAMM,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,KACtBC,gBAAK,CAACC,QAAQ,CAAC,CAAC,CAACC,gBAAgB,CAACC,MAAM,EAAEC,UAAU,KAAKC,SAAS;AAEpE,MAAMC,mBAAmB,GAAGA,CAACC,IAAyB,EAAEC,MAAsB,KAAW;EACvFhB,WAAW,GAAG;IAAEe,IAAI;IAAEC,MAAM;IAAEC,EAAE,EAAEC,IAAI,CAACC,GAAG,CAAC;EAAE,CAAC;EAC9C,IAAIlB,OAAO,EAAE;IAAC;EAAO;EACrBA,OAAO,GAAGO,gBAAK,CAACY,SAAS,CAAC,MAAM;IAC9B,IAAI,CAACb,eAAe,CAAC,CAAC,EAAE;MAAC;IAAO;IAChCN,OAAO,GAAG,CAAC;IACXA,OAAO,GAAG,IAAI;IACd,MAAMoB,IAAI,GAAGrB,WAAW;IACxBA,WAAW,GAAG,IAAI;IAClB,IAAI,CAACqB,IAAI,EAAE;MAAC;IAAO;IACnB,IAAIH,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGE,IAAI,CAACJ,EAAE,GAAGlB,wBAAwB,EAAE;MACnDG,KAAK,CAAC,wBAAwB,CAAC;MAC/B,IAAAoB,iCAAqB,EAAC,IAAAC,uBAAa,EAACF,IAAI,CAACN,IAAI,CAAC,CAACS,MAAM,CAAC;MACtD;IACF;IACAC,YAAY,CAACJ,IAAI,CAACN,IAAI,EAAEM,IAAI,CAACL,MAAM,CAAC;EACtC,CAAC,CAAC;AACJ,CAAC;AAED,MAAMU,WAAW,GAAIV,MAAsB,IAAW;EACpD,MAAMW,IAAI,GAAGnB,gBAAK,CAACC,QAAQ,CAAC,CAAC,CAACkB,IAAI;EAClC,IAAIA,IAAI,CAACC,SAAS,KAAK,UAAU,IAAID,IAAI,CAACE,KAAK,KAAK,kBAAkB,EAAE;IAAC;EAAO;EAChF,IAAIb,MAAM,KAAK,QAAQ,EAAE;IAACR,gBAAK,CAACsB,QAAQ,CAAC,IAAAC,6BAAkB,EAAC,CAAC,CAAC;EAAC;EAC/D,IAAIf,MAAM,KAAK,SAAS,EAAE;IAAC,IAAAgB,wCAA2B,EAAC,CAAC;EAAC;AAC3D,CAAC;AAED,MAAMP,YAAY,GAAGA,CAACV,IAAyB,EAAEC,MAAsB,KAAc;EACnF,MAAMiB,MAAM,GAAG,IAAAV,uBAAa,EAACR,IAAI,CAAC;EAClC,MAAMmB,KAAK,GAAG1B,gBAAK,CAACC,QAAQ,CAAC,CAAC;;EAE9B;EACA;EACA,IAAIyB,KAAK,CAACxB,gBAAgB,CAACC,MAAM,EAAEC,UAAU,EAAEuB,OAAO,KAAK,IAAI,EAAE;IAC/DjC,KAAK,CAAC,yBAAyB,EAAE+B,MAAM,CAACT,MAAM,CAAC;IAC/C,IAAAF,iCAAqB,EAACW,MAAM,CAACT,MAAM,CAAC;IACpC,OAAO,KAAK;EACd;;EAEA;EACA;EACA;EACA,MAAMY,OAAO,GAAGF,KAAK,CAACP,IAAI;EAC1B,IAAIS,OAAO,CAACP,KAAK,KAAK,MAAM,EAAE;IAC5B,MAAMQ,QAAQ,GACX,CAAC,CAACJ,MAAM,CAACT,MAAM,IAAIS,MAAM,CAACT,MAAM,KAAKY,OAAO,CAACZ,MAAM,IACnD,CAAC,CAACS,MAAM,CAACK,YAAY,IAAIL,MAAM,CAACK,YAAY,KAAKF,OAAO,CAACE,YAAa;IACzE,IAAID,QAAQ,EAAE;MACZX,WAAW,CAACV,MAAM,CAAC;MACnB,OAAO,IAAI;IACb;IACA,IAAIoB,OAAO,CAACP,KAAK,KAAK,SAAS,EAAE;MAC/B;MACA,IAAAP,iCAAqB,EAACW,MAAM,CAACT,MAAM,CAAC;MACpC,OAAO,KAAK;IACd;EACF;;EAEA;EACA;EACA;EACA;EACA,IAAI,CAACS,MAAM,CAACM,KAAK,EAAE;IACjB,IAAAjB,iCAAqB,EAACW,MAAM,CAACT,MAAM,CAAC;IACpC,OAAO,KAAK;EACd;;EAEA;EACA;EACA,MAAMgB,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,CAACxB,gBAAgB,CAACC,MAAM,EAAEuC,YAAY,EAAED,UAAU,IAAI,EAAE;EAC/D,MAAME,OAAO,GAAGlB,MAAM,CAACe,OAAO,GAC1B,IAAAI,kCAAgB,EAACnB,MAAM,CAACe,OAAO,EAAEC,UAAU,CAAC,GAC5C,EAAE;EACN,MAAMI,OAAO,GAAGZ,QAAQ,EAAEK,GAAG,KAAKK,OAAO,CAACG,QAAQ,CAAC,GAAG,CAAC,GAAGH,OAAO,GAAG,EAAE,CAAC;EACvE,IAAI,CAACE,OAAO,EAAE;IACZnD,KAAK,CAAC,uBAAuB,EAAE+B,MAAM,CAACe,OAAO,CAAC;IAC9C,IAAA1B,iCAAqB,EAACW,MAAM,CAACT,MAAM,CAAC;IACpC,OAAO,KAAK;EACd;EAEAhB,gBAAK,CAACsB,QAAQ,CACZ,IAAAyB,+BAAoB,EAAC;IACnBF,OAAO;IACPG,QAAQ,EAAEvB,MAAM,CAACwB,UAAU,IAAIhB,QAAQ,EAAEiB,KAAK,IAAIjB,QAAQ,EAAEkB,IAAI,IAAI,IAAI;IACxErB,YAAY,EAAEL,MAAM,CAACK,YAAY;IACjCC,KAAK,EAAEN,MAAM,CAACM,KAAK;IACnBqB,IAAI,EAAE3B,MAAM,CAAC2B,IAAI;IACjBpC,MAAM,EAAES,MAAM,CAACT,MAAM;IACrBqC,gBAAgB,EAAE5B,MAAM,CAAC6B;EAC3B,CAAC,CACH,CAAC;EACD5D,KAAK,CAAC,SAAS,EAAE+B,MAAM,CAACT,MAAM,EAAER,MAAM,CAAC;EACvCU,WAAW,CAACV,MAAM,CAAC;EACnB,OAAO,IAAI;AACb,CAAC;AAEM,MAAM+C,cAAc,GAAGA,CAC5BhD,IAA4C,EAC5CC,MAAsB,GAAG,MAAM,KACnB;EACZ,IAAI,CAAC,IAAAgD,oBAAU,EAACjD,IAAI,CAAC,EAAE;IACrB,OAAO,KAAK;EACd;EACA,IAAI,CAACR,eAAe,CAAC,CAAC,EAAE;IACtBL,KAAK,CAAC,gDAAgD,CAAC;IACvDY,mBAAmB,CAACC,IAAI,EAAyBC,MAAM,CAAC;IACxD,OAAO,IAAI;EACb;EACAS,YAAY,CAACV,IAAI,EAAyBC,MAAM,CAAC;EACjD,OAAO,IAAI;AACb,CAAC;AAACiD,OAAA,CAAAF,cAAA,GAAAA,cAAA;AAEK,MAAMG,kBAAkB,GAC7BnD,IAA4C,IAChCgD,cAAc,CAAChD,IAAI,EAAE,QAAQ,CAAC;AAACkD,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AAEtC,MAAMC,mBAAmB,GAC9BpD,IAA4C,IAChCgD,cAAc,CAAChD,IAAI,EAAE,SAAS,CAAC;AAACkD,OAAA,CAAAE,mBAAA,GAAAA,mBAAA;AAEvC,MAAMC,uBAAuB,GAAGA,CAAA,KAAY;EACjDnE,OAAO,GAAG,CAAC;EACXA,OAAO,GAAG,IAAI;EACdD,WAAW,GAAG,IAAI;AACpB,CAAC;AAACiE,OAAA,CAAAG,uBAAA,GAAAA,uBAAA","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;;
|
|
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":[]}
|