@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
package/lib/commonjs/main.js
CHANGED
|
@@ -33,6 +33,18 @@ Object.defineProperty(exports, "LIGHT_THEME", {
|
|
|
33
33
|
return _theme.LIGHT_THEME;
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
|
+
Object.defineProperty(exports, "PUSH_KEY_KEYCHAIN_SERVICE", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _pushKeyStore.PUSH_KEY_KEYCHAIN_SERVICE;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, "PUSH_SECRET_KEY_ITEM", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () {
|
|
45
|
+
return _pushKeyStore.PUSH_SECRET_KEY_ITEM;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
36
48
|
Object.defineProperty(exports, "PushRegistrationError", {
|
|
37
49
|
enumerable: true,
|
|
38
50
|
get: function () {
|
|
@@ -45,18 +57,66 @@ Object.defineProperty(exports, "RefreshFatalError", {
|
|
|
45
57
|
return _authRefresh.RefreshFatalError;
|
|
46
58
|
}
|
|
47
59
|
});
|
|
60
|
+
Object.defineProperty(exports, "SEALED_PUSH_ALG", {
|
|
61
|
+
enumerable: true,
|
|
62
|
+
get: function () {
|
|
63
|
+
return _sealedPush.SEALED_PUSH_ALG;
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
Object.defineProperty(exports, "SEALED_PUSH_TASK", {
|
|
67
|
+
enumerable: true,
|
|
68
|
+
get: function () {
|
|
69
|
+
return _sealedPushTask.SEALED_PUSH_TASK;
|
|
70
|
+
}
|
|
71
|
+
});
|
|
48
72
|
Object.defineProperty(exports, "XmppProvider", {
|
|
49
73
|
enumerable: true,
|
|
50
74
|
get: function () {
|
|
51
75
|
return _xmppProvider.XmppProvider;
|
|
52
76
|
}
|
|
53
77
|
});
|
|
78
|
+
Object.defineProperty(exports, "answerCallFromPush", {
|
|
79
|
+
enumerable: true,
|
|
80
|
+
get: function () {
|
|
81
|
+
return _incomingCallFromPush.answerCallFromPush;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
Object.defineProperty(exports, "callKitUuid", {
|
|
85
|
+
enumerable: true,
|
|
86
|
+
get: function () {
|
|
87
|
+
return _systemCall.callKitUuid;
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
Object.defineProperty(exports, "clearPushKeyPair", {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: function () {
|
|
93
|
+
return _pushKeyStore.clearPushKeyPair;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
Object.defineProperty(exports, "declineCallFromPush", {
|
|
97
|
+
enumerable: true,
|
|
98
|
+
get: function () {
|
|
99
|
+
return _incomingCallFromPush.declineCallFromPush;
|
|
100
|
+
}
|
|
101
|
+
});
|
|
54
102
|
Object.defineProperty(exports, "detectPushTokenType", {
|
|
55
103
|
enumerable: true,
|
|
56
104
|
get: function () {
|
|
57
105
|
return _push.detectPushTokenType;
|
|
58
106
|
}
|
|
59
107
|
});
|
|
108
|
+
Object.defineProperty(exports, "ensurePushKeyPair", {
|
|
109
|
+
enumerable: true,
|
|
110
|
+
get: function () {
|
|
111
|
+
return _pushKeyStore.ensurePushKeyPair;
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
Object.defineProperty(exports, "getPushKeyPair", {
|
|
115
|
+
enumerable: true,
|
|
116
|
+
get: function () {
|
|
117
|
+
return _pushKeyStore.getPushKeyPair;
|
|
118
|
+
}
|
|
119
|
+
});
|
|
60
120
|
Object.defineProperty(exports, "getRegisteredPushToken", {
|
|
61
121
|
enumerable: true,
|
|
62
122
|
get: function () {
|
|
@@ -81,6 +141,12 @@ Object.defineProperty(exports, "handleQRChatId", {
|
|
|
81
141
|
return _useQRCodeChatHandler.handleQRChatId;
|
|
82
142
|
}
|
|
83
143
|
});
|
|
144
|
+
Object.defineProperty(exports, "isCallPush", {
|
|
145
|
+
enumerable: true,
|
|
146
|
+
get: function () {
|
|
147
|
+
return _callPush.isCallPush;
|
|
148
|
+
}
|
|
149
|
+
});
|
|
84
150
|
Object.defineProperty(exports, "isDarkTheme", {
|
|
85
151
|
enumerable: true,
|
|
86
152
|
get: function () {
|
|
@@ -105,6 +171,12 @@ Object.defineProperty(exports, "isRefreshFatalError", {
|
|
|
105
171
|
return _authRefresh.isRefreshFatalError;
|
|
106
172
|
}
|
|
107
173
|
});
|
|
174
|
+
Object.defineProperty(exports, "isSealedPush", {
|
|
175
|
+
enumerable: true,
|
|
176
|
+
get: function () {
|
|
177
|
+
return _sealedPush.isSealedPush;
|
|
178
|
+
}
|
|
179
|
+
});
|
|
108
180
|
Object.defineProperty(exports, "logoutService", {
|
|
109
181
|
enumerable: true,
|
|
110
182
|
get: function () {
|
|
@@ -123,6 +195,24 @@ Object.defineProperty(exports, "openRoomFromPush", {
|
|
|
123
195
|
return _pushPayload.openRoomFromPush;
|
|
124
196
|
}
|
|
125
197
|
});
|
|
198
|
+
Object.defineProperty(exports, "openSealedPush", {
|
|
199
|
+
enumerable: true,
|
|
200
|
+
get: function () {
|
|
201
|
+
return _sealedPush.openSealedPush;
|
|
202
|
+
}
|
|
203
|
+
});
|
|
204
|
+
Object.defineProperty(exports, "parseCallPush", {
|
|
205
|
+
enumerable: true,
|
|
206
|
+
get: function () {
|
|
207
|
+
return _callPush.parseCallPush;
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
Object.defineProperty(exports, "presentSealedPush", {
|
|
211
|
+
enumerable: true,
|
|
212
|
+
get: function () {
|
|
213
|
+
return _sealedPushTask.presentSealedPush;
|
|
214
|
+
}
|
|
215
|
+
});
|
|
126
216
|
Object.defineProperty(exports, "refreshAuthTokens", {
|
|
127
217
|
enumerable: true,
|
|
128
218
|
get: function () {
|
|
@@ -141,12 +231,24 @@ Object.defineProperty(exports, "registerPushToken", {
|
|
|
141
231
|
return _pushRegistration.registerPushToken;
|
|
142
232
|
}
|
|
143
233
|
});
|
|
234
|
+
Object.defineProperty(exports, "registerSealedPushTask", {
|
|
235
|
+
enumerable: true,
|
|
236
|
+
get: function () {
|
|
237
|
+
return _sealedPushTask.registerSealedPushTask;
|
|
238
|
+
}
|
|
239
|
+
});
|
|
144
240
|
Object.defineProperty(exports, "resendMessage", {
|
|
145
241
|
enumerable: true,
|
|
146
242
|
get: function () {
|
|
147
243
|
return _resendMessage.resendMessage;
|
|
148
244
|
}
|
|
149
245
|
});
|
|
246
|
+
Object.defineProperty(exports, "resetPushKeyPair", {
|
|
247
|
+
enumerable: true,
|
|
248
|
+
get: function () {
|
|
249
|
+
return _pushKeyStore.resetPushKeyPair;
|
|
250
|
+
}
|
|
251
|
+
});
|
|
150
252
|
Object.defineProperty(exports, "resolveStringTable", {
|
|
151
253
|
enumerable: true,
|
|
152
254
|
get: function () {
|
|
@@ -159,6 +261,12 @@ Object.defineProperty(exports, "resolveTheme", {
|
|
|
159
261
|
return _theme.resolveTheme;
|
|
160
262
|
}
|
|
161
263
|
});
|
|
264
|
+
Object.defineProperty(exports, "sealedPushEnvelopeOf", {
|
|
265
|
+
enumerable: true,
|
|
266
|
+
get: function () {
|
|
267
|
+
return _sealedPush.sealedPushEnvelopeOf;
|
|
268
|
+
}
|
|
269
|
+
});
|
|
162
270
|
Object.defineProperty(exports, "setPushEnabled", {
|
|
163
271
|
enumerable: true,
|
|
164
272
|
get: function () {
|
|
@@ -242,8 +350,14 @@ var _ReduxWrapper = require("./components/MainComponents/ReduxWrapper");
|
|
|
242
350
|
var _xmppProvider = require("./context/xmppProvider");
|
|
243
351
|
var _useUnreadMessagesCounter = require("./hooks/useUnreadMessagesCounter");
|
|
244
352
|
var _pushPayload = require("./helpers/pushPayload");
|
|
353
|
+
var _systemCall = require("./components/VideoCalls/systemCall");
|
|
354
|
+
var _incomingCallFromPush = require("./helpers/incomingCallFromPush");
|
|
355
|
+
var _callPush = require("./helpers/callPush");
|
|
245
356
|
var _pushRegistration = require("./services/pushRegistration");
|
|
246
357
|
var _push = require("./networking/api-requests/push.api");
|
|
358
|
+
var _pushKeyStore = require("./push/pushKeyStore");
|
|
359
|
+
var _sealedPushTask = require("./push/sealedPushTask");
|
|
360
|
+
var _sealedPush = require("./push/sealedPush");
|
|
247
361
|
var _useChatRoomFocus = require("./hooks/useChatRoomFocus");
|
|
248
362
|
var _useLogout = require("./hooks/useLogout");
|
|
249
363
|
var _useQRCodeChatHandler = require("./hooks/useQRCodeChatHandler");
|
package/lib/commonjs/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["require","_ReduxWrapper","_xmppProvider","_useUnreadMessagesCounter","_pushPayload","_pushRegistration","_push","_useChatRoomFocus","_useLogout","_useQRCodeChatHandler","_resendMessage","_useChatFonts","_useT","_strings","_authRefresh","_theme","_chatSettingsSlice","_e2ee"],"sourceRoot":"../../src","sources":["main.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["require","_ReduxWrapper","_xmppProvider","_useUnreadMessagesCounter","_pushPayload","_systemCall","_incomingCallFromPush","_callPush","_pushRegistration","_push","_pushKeyStore","_sealedPushTask","_sealedPush","_useChatRoomFocus","_useLogout","_useQRCodeChatHandler","_resendMessage","_useChatFonts","_useT","_strings","_authRefresh","_theme","_chatSettingsSlice","_e2ee"],"sourceRoot":"../../src","sources":["main.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBAA,OAAA;AAGA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AAGA,IAAAG,yBAAA,GAAAH,OAAA;AAEA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,qBAAA,GAAAN,OAAA;AAKA,IAAAO,SAAA,GAAAP,OAAA;AAGA,IAAAQ,iBAAA,GAAAR,OAAA;AAYA,IAAAS,KAAA,GAAAT,OAAA;AAaA,IAAAU,aAAA,GAAAV,OAAA;AASA,IAAAW,eAAA,GAAAX,OAAA;AAMA,IAAAY,WAAA,GAAAZ,OAAA;AAYA,IAAAa,iBAAA,GAAAb,OAAA;AACA,IAAAc,UAAA,GAAAd,OAAA;AACA,IAAAe,qBAAA,GAAAf,OAAA;AACA,IAAAgB,cAAA,GAAAhB,OAAA;AAEA,IAAAiB,aAAA,GAAAjB,OAAA;AAKA,IAAAkB,KAAA,GAAAlB,OAAA;AACA,IAAAmB,QAAA,GAAAnB,OAAA;AAqCA,IAAAoB,YAAA,GAAApB,OAAA;AAYA,IAAAqB,MAAA,GAAArB,OAAA;AASA,IAAAsB,kBAAA,GAAAtB,OAAA;AACA,IAAAuB,KAAA,GAAAvB,OAAA","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.isPushRegistrationError = exports.detectPushTokenType = exports.buildPushSubscriptionPayload = exports.buildPushGatewayPayload = exports.PushRegistrationError = void 0;
|
|
6
|
+
exports.isPushRegistrationError = exports.detectPushTokenType = exports.buildPushSubscriptionPayload = exports.buildPushGatewayPayload = exports.PushRegistrationError = exports.PUSH_KEY_ALG = void 0;
|
|
7
7
|
exports.registerPushSubscription = registerPushSubscription;
|
|
8
8
|
exports.resolvePushDeviceType = void 0;
|
|
9
9
|
exports.subscribeToPushGateway = subscribeToPushGateway;
|
|
@@ -51,32 +51,47 @@ const toRegistrationError = (error, what) => {
|
|
|
51
51
|
return new PushRegistrationError(status ? `${what} refused (HTTP ${status}): ${detail}` : `${what} failed: ${detail}`, status, body);
|
|
52
52
|
};
|
|
53
53
|
const isUnknownFieldError = error => error?.response?.status === 422 && /not allowed/i.test(String(error?.response?.data?.error ?? ''));
|
|
54
|
-
|
|
54
|
+
|
|
55
|
+
/** The only sealing scheme the push service knows (README, "Encrypted pushes"). */
|
|
56
|
+
const PUSH_KEY_ALG = exports.PUSH_KEY_ALG = 'sealed-box-x25519';
|
|
57
|
+
const buildPushSubscriptionPayload = (token, tokenType, pushKey, pushKeyId) => ({
|
|
55
58
|
registrationToken: token,
|
|
56
59
|
deviceType: resolvePushDeviceType(),
|
|
57
|
-
tokenType
|
|
60
|
+
tokenType,
|
|
61
|
+
...(pushKey ? {
|
|
62
|
+
pushKey,
|
|
63
|
+
pushKeyAlg: PUSH_KEY_ALG,
|
|
64
|
+
...(pushKeyId ? {
|
|
65
|
+
pushKeyId
|
|
66
|
+
} : {})
|
|
67
|
+
} : {})
|
|
58
68
|
});
|
|
59
69
|
exports.buildPushSubscriptionPayload = buildPushSubscriptionPayload;
|
|
60
70
|
async function registerPushSubscription({
|
|
61
71
|
appId,
|
|
62
72
|
token,
|
|
63
73
|
tokenType,
|
|
64
|
-
authToken
|
|
74
|
+
authToken,
|
|
75
|
+
pushKey,
|
|
76
|
+
pushKeyId
|
|
65
77
|
}) {
|
|
66
78
|
const path = `/v1/push/subscription/${encodeURIComponent(appId)}`;
|
|
67
79
|
const headers = {
|
|
68
80
|
Authorization: authToken
|
|
69
81
|
};
|
|
70
|
-
const payload = buildPushSubscriptionPayload(token, tokenType);
|
|
82
|
+
const payload = buildPushSubscriptionPayload(token, tokenType, pushKey, pushKeyId);
|
|
71
83
|
try {
|
|
72
84
|
await _apiClient.default.post(path, payload, {
|
|
73
85
|
headers
|
|
74
86
|
});
|
|
75
87
|
return;
|
|
76
88
|
} catch (error) {
|
|
77
|
-
|
|
89
|
+
// A backend that predates `tokenType` still delivers to apns / fcm
|
|
90
|
+
// tokens. One that predates `pushKey` would deliver in the clear: the
|
|
91
|
+
// host asked for encryption, so that is an error, never a quiet fallback.
|
|
92
|
+
const canDowngrade = (tokenType === 'apns' || tokenType === 'fcm') && !pushKey;
|
|
78
93
|
if (!(canDowngrade && isUnknownFieldError(error))) {
|
|
79
|
-
throw toRegistrationError(error, tokenType === 'expo' ? 'Push registration (the backend does not accept Expo push tokens yet)' : 'Push registration');
|
|
94
|
+
throw toRegistrationError(error, tokenType === 'expo' ? 'Push registration (the backend does not accept Expo push tokens yet)' : pushKey && isUnknownFieldError(error) ? 'Push registration (the backend does not support encrypted pushes)' : 'Push registration');
|
|
80
95
|
}
|
|
81
96
|
}
|
|
82
97
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_axios","_interopRequireDefault","require","_reactNative","_roomStore","_apiClient","e","__esModule","default","PushRegistrationError","Error","constructor","message","status","body","name","exports","isPushRegistrationError","error","EXPO_PUSH_TOKEN","APNS_TOKEN","detectPushTokenType","token","t","trim","test","resolvePushDeviceType","Platform","OS","toRegistrationError","what","response","data","detail","isUnknownFieldError","String","buildPushSubscriptionPayload","tokenType","registrationToken","deviceType","registerPushSubscription","appId","authToken","path","encodeURIComponent","headers","Authorization","payload","http","post","canDowngrade","unregisterPushSubscription","delete","endpoint","DEFAULT_XMPP_HOST","resolveXmppHost","config","store","getState","chatSettingStore","xmppSettings","host","gatewayAxios","axios","create","buildPushGatewayPayload","userJid","projectName","jid","includes","subscribeToPushGateway","args","baseURL","apiUrl"],"sourceRoot":"../../../../src","sources":["networking/api-requests/push.api.ts"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAAgC,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAOhC;AACA;AACA;AACA;AACA;AACO,MAAMG,qBAAqB,SAASC,KAAK,CAAC;EAI/CC,WAAWA,CAACC,OAAe,EAAEC,MAAe,EAAEC,IAAc,EAAE;IAC5D,KAAK,CAACF,OAAO,CAAC;IACd,IAAI,CAACG,IAAI,GAAG,uBAAuB;IACnC,IAAI,CAACF,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,IAAI,GAAGA,IAAI;EAClB;AACF;AAACE,OAAA,CAAAP,qBAAA,GAAAA,qBAAA;AAEM,MAAMQ,uBAAuB,GAClCC,KAAc,IAEbA,KAAK,EAA4BH,IAAI,KAAK,uBAAuB;AAACC,OAAA,CAAAC,uBAAA,GAAAA,uBAAA;AAErE,MAAME,eAAe,GAAG,oCAAoC;AAC5D,MAAMC,UAAU,GAAG,kBAAkB;AAE9B,MAAMC,mBAAmB,GAAIC,KAAa,IAAoB;EACnE,MAAMC,CAAC,GAAGD,KAAK,CAACE,IAAI,CAAC,CAAC;EACtB,IAAIL,eAAe,CAACM,IAAI,CAACF,CAAC,CAAC,EAAE;IAC3B,OAAO,MAAM;EACf;EACA,IAAIH,UAAU,CAACK,IAAI,CAACF,CAAC,CAAC,EAAE;IACtB,OAAO,MAAM;EACf;EACA,OAAO,KAAK;AACd,CAAC;AAACP,OAAA,CAAAK,mBAAA,GAAAA,mBAAA;AAEK,MAAMK,qBAAqB,GAAGA,CAAA,KACnCC,qBAAQ,CAACC,EAAE,KAAK,KAAK,GAAG,KAAK,GAAG,SAAS;AAACZ,OAAA,CAAAU,qBAAA,GAAAA,qBAAA;AAE5C,MAAMG,mBAAmB,GAAGA,CAACX,KAAU,EAAEY,IAAY,KAA4B;EAC/E,MAAMjB,MAA0B,GAAGK,KAAK,EAAEa,QAAQ,EAAElB,MAAM;EAC1D,MAAMC,IAAI,GAAGI,KAAK,EAAEa,QAAQ,EAAEC,IAAI;EAClC,MAAMC,MAAM,GACT,OAAOnB,IAAI,EAAEI,KAAK,KAAK,QAAQ,IAAIJ,IAAI,CAACI,KAAK,IAC9CA,KAAK,EAAEN,OAAO,IACd,eAAe;EACjB,OAAO,IAAIH,qBAAqB,CAC9BI,MAAM,GACF,GAAGiB,IAAI,kBAAkBjB,MAAM,MAAMoB,MAAM,EAAE,GAC7C,GAAGH,IAAI,YAAYG,MAAM,EAAE,EAC/BpB,MAAM,EACNC,IACF,CAAC;AACH,CAAC;AAED,MAAMoB,mBAAmB,GAAIhB,KAAU,IACrCA,KAAK,EAAEa,QAAQ,EAAElB,MAAM,KAAK,GAAG,IAC/B,cAAc,CAACY,IAAI,CAACU,MAAM,CAACjB,KAAK,EAAEa,QAAQ,EAAEC,IAAI,EAAEd,KAAK,IAAI,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"names":["_axios","_interopRequireDefault","require","_reactNative","_roomStore","_apiClient","e","__esModule","default","PushRegistrationError","Error","constructor","message","status","body","name","exports","isPushRegistrationError","error","EXPO_PUSH_TOKEN","APNS_TOKEN","detectPushTokenType","token","t","trim","test","resolvePushDeviceType","Platform","OS","toRegistrationError","what","response","data","detail","isUnknownFieldError","String","PUSH_KEY_ALG","buildPushSubscriptionPayload","tokenType","pushKey","pushKeyId","registrationToken","deviceType","pushKeyAlg","registerPushSubscription","appId","authToken","path","encodeURIComponent","headers","Authorization","payload","http","post","canDowngrade","unregisterPushSubscription","delete","endpoint","DEFAULT_XMPP_HOST","resolveXmppHost","config","store","getState","chatSettingStore","xmppSettings","host","gatewayAxios","axios","create","buildPushGatewayPayload","userJid","projectName","jid","includes","subscribeToPushGateway","args","baseURL","apiUrl"],"sourceRoot":"../../../../src","sources":["networking/api-requests/push.api.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -448,6 +448,12 @@ const onCallTokenMessage = stanza => {
|
|
|
448
448
|
}));
|
|
449
449
|
return true;
|
|
450
450
|
}
|
|
451
|
+
if (callState.direction === 'incoming' && callState.phase !== 'idle' && !!callId && callState.callId === callId) {
|
|
452
|
+
callTrace('drop call-token: call already known from push', {
|
|
453
|
+
callId
|
|
454
|
+
});
|
|
455
|
+
return true;
|
|
456
|
+
}
|
|
451
457
|
_roomStore.store.dispatch((0, _callSlice.setIncomingCallToken)({
|
|
452
458
|
roomJid,
|
|
453
459
|
roomName: incomingRoomName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_client","require","_roomStore","_callSlice","_clientRegistry","_callLogMessage","_devLogger","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","store","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","callStateHasLogData","dispatch","endCall","onCallTokenMessage","dataType","traceStanzaId","traceTs","from","wrapped","hasToken","ageMs","pushLog","durationMs","callerXmppUsername","fromRoom","inviteKind","normalized","inviteRoom","inviteCallId","matchesActive","setCallKind","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","setOutgoingCallToken","setIncomingCallToken","bodyText","has","startsWith","stateFromBody","exports","sendCallStateSignal","options","xmppClient","getGlobalXmppClient","host","xml","to","client","send","sendCallInviteSignal"],"sourceRoot":"../../../src","sources":["networking/callTokenStanza.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_client","require","_roomStore","_callSlice","_clientRegistry","_callLogMessage","_devLogger","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","store","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","callStateHasLogData","dispatch","endCall","onCallTokenMessage","dataType","traceStanzaId","traceTs","from","wrapped","hasToken","ageMs","pushLog","durationMs","callerXmppUsername","fromRoom","inviteKind","normalized","inviteRoom","inviteCallId","matchesActive","setCallKind","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","setOutgoingCallToken","setIncomingCallToken","bodyText","has","startsWith","stateFromBody","exports","sendCallStateSignal","options","xmppClient","getGlobalXmppClient","host","xml","to","client","send","sendCallInviteSignal"],"sourceRoot":"../../../src","sources":["networking/callTokenStanza.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,13 +3,31 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.REACTION_MESSAGE_TEXT_MAX = void 0;
|
|
6
7
|
exports.sendMessageReaction = sendMessageReaction;
|
|
7
8
|
var _client = require("@xmpp/client");
|
|
8
|
-
|
|
9
|
+
var _send = require("../../e2ee/send");
|
|
10
|
+
const REACTION_MESSAGE_TEXT_MAX = exports.REACTION_MESSAGE_TEXT_MAX = 120;
|
|
11
|
+
function sendMessageReaction(client, messageId, roomJid, reactionsList, data = {}) {
|
|
9
12
|
const id = `message-reaction:${Date.now().toString()}`;
|
|
13
|
+
const push = Boolean(data.push) && reactionsList.length > 0;
|
|
14
|
+
const messageText = push && !(0, _send.shouldEncrypt)(roomJid) ? String(data.messageText ?? '').slice(0, REACTION_MESSAGE_TEXT_MAX) : '';
|
|
10
15
|
const dataReaction = {
|
|
11
|
-
senderFirstName: data.firstName,
|
|
12
|
-
senderLastName: data.lastName
|
|
16
|
+
senderFirstName: data.firstName ?? '',
|
|
17
|
+
senderLastName: data.lastName ?? '',
|
|
18
|
+
senderJID: client.jid?.toString() ?? '',
|
|
19
|
+
roomJid,
|
|
20
|
+
...(data.photoURL ? {
|
|
21
|
+
photoURL: data.photoURL
|
|
22
|
+
} : {}),
|
|
23
|
+
...(push ? {
|
|
24
|
+
push: 'true',
|
|
25
|
+
messageAuthor: data.messageAuthor ?? '',
|
|
26
|
+
messageText,
|
|
27
|
+
isMediafile: data.isMediafile ?? '',
|
|
28
|
+
mimetype: data.mimetype ?? '',
|
|
29
|
+
fileName: data.fileName ?? ''
|
|
30
|
+
} : {})
|
|
13
31
|
};
|
|
14
32
|
const message = (0, _client.xml)('message', {
|
|
15
33
|
id: id,
|
|
@@ -20,9 +38,7 @@ function sendMessageReaction(client, messageId, roomJid, reactionsList, data, re
|
|
|
20
38
|
id: messageId,
|
|
21
39
|
from: client.jid?.toString(),
|
|
22
40
|
xmlns: 'urn:xmpp:reactions:0'
|
|
23
|
-
}, ...reactionsList.map(reaction => (0, _client.xml)('reaction', {}, reaction ?? ''))
|
|
24
|
-
// xml('reaction', {}, reactionSymbol ?? '👋'),
|
|
25
|
-
), (0, _client.xml)('data', dataReaction), (0, _client.xml)('store', {
|
|
41
|
+
}, ...reactionsList.map(reaction => (0, _client.xml)('reaction', {}, reaction ?? ''))), (0, _client.xml)('data', dataReaction), (0, _client.xml)('store', {
|
|
26
42
|
xmlns: 'urn:xmpp:hints'
|
|
27
43
|
}));
|
|
28
44
|
client.send(message);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_client","require","sendMessageReaction","client","messageId","roomJid","reactionsList","data","
|
|
1
|
+
{"version":3,"names":["_client","require","_send","REACTION_MESSAGE_TEXT_MAX","exports","sendMessageReaction","client","messageId","roomJid","reactionsList","data","id","Date","now","toString","push","Boolean","length","messageText","shouldEncrypt","String","slice","dataReaction","senderFirstName","firstName","senderLastName","lastName","senderJID","jid","photoURL","messageAuthor","isMediafile","mimetype","fileName","message","xml","type","from","to","xmlns","map","reaction","send"],"sourceRoot":"../../../../src","sources":["networking/xmpp/sendMessageReaction.xmpp.ts"],"mappings":";;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAcO,MAAME,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA,GAAG,GAAG;AAErC,SAASE,mBAAmBA,CACjCC,MAAc,EACdC,SAAiB,EACjBC,OAAe,EACfC,aAAuB,EACvBC,IAAwB,GAAG,CAAC,CAAC,EAC7B;EACA,MAAMC,EAAE,GAAG,oBAAoBC,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE;EAEtD,MAAMC,IAAI,GAAGC,OAAO,CAACN,IAAI,CAACK,IAAI,CAAC,IAAIN,aAAa,CAACQ,MAAM,GAAG,CAAC;EAC3D,MAAMC,WAAW,GACfH,IAAI,IAAI,CAAC,IAAAI,mBAAa,EAACX,OAAO,CAAC,GAC3BY,MAAM,CAACV,IAAI,CAACQ,WAAW,IAAI,EAAE,CAAC,CAACG,KAAK,CAAC,CAAC,EAAElB,yBAAyB,CAAC,GAClE,EAAE;EAER,MAAMmB,YAAoC,GAAG;IAC3CC,eAAe,EAAEb,IAAI,CAACc,SAAS,IAAI,EAAE;IACrCC,cAAc,EAAEf,IAAI,CAACgB,QAAQ,IAAI,EAAE;IACnCC,SAAS,EAAErB,MAAM,CAACsB,GAAG,EAAEd,QAAQ,CAAC,CAAC,IAAI,EAAE;IACvCN,OAAO;IACP,IAAIE,IAAI,CAACmB,QAAQ,GAAG;MAAEA,QAAQ,EAAEnB,IAAI,CAACmB;IAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,IAAId,IAAI,GACJ;MACEA,IAAI,EAAE,MAAM;MACZe,aAAa,EAAEpB,IAAI,CAACoB,aAAa,IAAI,EAAE;MACvCZ,WAAW;MACXa,WAAW,EAAErB,IAAI,CAACqB,WAAW,IAAI,EAAE;MACnCC,QAAQ,EAAEtB,IAAI,CAACsB,QAAQ,IAAI,EAAE;MAC7BC,QAAQ,EAAEvB,IAAI,CAACuB,QAAQ,IAAI;IAC7B,CAAC,GACD,CAAC,CAAC;EACR,CAAC;EAED,MAAMC,OAAO,GAAG,IAAAC,WAAG,EACjB,SAAS,EACT;IACExB,EAAE,EAAEA,EAAE;IACNyB,IAAI,EAAE,WAAW;IACjBC,IAAI,EAAE/B,MAAM,CAACsB,GAAG,EAAEd,QAAQ,CAAC,CAAC;IAC5BwB,EAAE,EAAE9B;EACN,CAAC,EACD,IAAA2B,WAAG,EACD,WAAW,EACX;IACExB,EAAE,EAAEJ,SAAS;IACb8B,IAAI,EAAE/B,MAAM,CAACsB,GAAG,EAAEd,QAAQ,CAAC,CAAC;IAC5ByB,KAAK,EAAE;EACT,CAAC,EACD,GAAG9B,aAAa,CAAC+B,GAAG,CAAEC,QAAQ,IAAK,IAAAN,WAAG,EAAC,UAAU,EAAE,CAAC,CAAC,EAAEM,QAAQ,IAAI,EAAE,CAAC,CACxE,CAAC,EACD,IAAAN,WAAG,EAAC,MAAM,EAAEb,YAAY,CAAC,EACzB,IAAAa,WAAG,EAAC,OAAO,EAAE;IAAEI,KAAK,EAAE;EAAiB,CAAC,CAC1C,CAAC;EAEDjC,MAAM,CAACoC,IAAI,CAACR,OAAO,CAAC;AACtB","ignoreList":[]}
|