@ethora/chat-component-rn 26.10.2 → 26.10.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/lib/commonjs/components/MainComponents/ChatHeader.js +11 -10
  2. package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
  3. package/lib/commonjs/components/MainComponents/MessageContainer.js +10 -2
  4. package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
  5. package/lib/commonjs/components/MainComponents/RoomList.js +8 -18
  6. package/lib/commonjs/components/MainComponents/RoomList.js.map +1 -1
  7. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js +17 -14
  8. package/lib/commonjs/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  9. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +131 -17
  10. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  11. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js +6 -1
  12. package/lib/commonjs/components/RoomComponents/ChatRoomItem.js.map +1 -1
  13. package/lib/commonjs/components/VideoCalls/CallButtons.js +3 -1
  14. package/lib/commonjs/components/VideoCalls/CallButtons.js.map +1 -1
  15. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js +123 -111
  16. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  17. package/lib/commonjs/components/VideoCalls/VideoCallSession.js +207 -346
  18. package/lib/commonjs/components/VideoCalls/VideoCallSession.js.map +1 -1
  19. package/lib/commonjs/components/VideoCalls/callActions.js +61 -0
  20. package/lib/commonjs/components/VideoCalls/callActions.js.map +1 -0
  21. package/lib/commonjs/components/VideoCalls/callSessionController.js +431 -0
  22. package/lib/commonjs/components/VideoCalls/callSessionController.js.map +1 -0
  23. package/lib/commonjs/components/VideoCalls/useDraggable.js +59 -0
  24. package/lib/commonjs/components/VideoCalls/useDraggable.js.map +1 -0
  25. package/lib/commonjs/helpers/createRoomFromApi.js +4 -0
  26. package/lib/commonjs/helpers/createRoomFromApi.js.map +1 -1
  27. package/lib/commonjs/helpers/incomingCallFromPush.js +1 -1
  28. package/lib/commonjs/helpers/incomingCallFromPush.js.map +1 -1
  29. package/lib/commonjs/helpers/roomUserCount.js +7 -1
  30. package/lib/commonjs/helpers/roomUserCount.js.map +1 -1
  31. package/lib/commonjs/helpers/uniqueMembers.js +36 -0
  32. package/lib/commonjs/helpers/uniqueMembers.js.map +1 -0
  33. package/lib/commonjs/hooks/useLeaveRoom.js +52 -0
  34. package/lib/commonjs/hooks/useLeaveRoom.js.map +1 -0
  35. package/lib/commonjs/i18n/strings.js +18 -0
  36. package/lib/commonjs/i18n/strings.js.map +1 -1
  37. package/lib/commonjs/networking/api-requests/rooms.api.js +36 -1
  38. package/lib/commonjs/networking/api-requests/rooms.api.js.map +1 -1
  39. package/lib/commonjs/networking/callTokenStanza.js +47 -3
  40. package/lib/commonjs/networking/callTokenStanza.js.map +1 -1
  41. package/lib/commonjs/networking/xmppClient.js +9 -2
  42. package/lib/commonjs/networking/xmppClient.js.map +1 -1
  43. package/lib/commonjs/version.js +1 -1
  44. package/lib/module/components/MainComponents/ChatHeader.js +13 -12
  45. package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
  46. package/lib/module/components/MainComponents/MessageContainer.js +10 -2
  47. package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
  48. package/lib/module/components/MainComponents/RoomList.js +8 -18
  49. package/lib/module/components/MainComponents/RoomList.js.map +1 -1
  50. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js +18 -15
  51. package/lib/module/components/Modals/ChatProfileModal/ChatProfileModal.js.map +1 -1
  52. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +132 -18
  53. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  54. package/lib/module/components/RoomComponents/ChatRoomItem.js +6 -1
  55. package/lib/module/components/RoomComponents/ChatRoomItem.js.map +1 -1
  56. package/lib/module/components/VideoCalls/CallButtons.js +3 -1
  57. package/lib/module/components/VideoCalls/CallButtons.js.map +1 -1
  58. package/lib/module/components/VideoCalls/VideoCallOverlay.js +125 -113
  59. package/lib/module/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  60. package/lib/module/components/VideoCalls/VideoCallSession.js +208 -348
  61. package/lib/module/components/VideoCalls/VideoCallSession.js.map +1 -1
  62. package/lib/module/components/VideoCalls/callActions.js +55 -0
  63. package/lib/module/components/VideoCalls/callActions.js.map +1 -0
  64. package/lib/module/components/VideoCalls/callSessionController.js +420 -0
  65. package/lib/module/components/VideoCalls/callSessionController.js.map +1 -0
  66. package/lib/module/components/VideoCalls/useDraggable.js +55 -0
  67. package/lib/module/components/VideoCalls/useDraggable.js.map +1 -0
  68. package/lib/module/helpers/createRoomFromApi.js +4 -0
  69. package/lib/module/helpers/createRoomFromApi.js.map +1 -1
  70. package/lib/module/helpers/incomingCallFromPush.js +1 -1
  71. package/lib/module/helpers/incomingCallFromPush.js.map +1 -1
  72. package/lib/module/helpers/roomUserCount.js +7 -1
  73. package/lib/module/helpers/roomUserCount.js.map +1 -1
  74. package/lib/module/helpers/uniqueMembers.js +31 -0
  75. package/lib/module/helpers/uniqueMembers.js.map +1 -0
  76. package/lib/module/hooks/useLeaveRoom.js +48 -0
  77. package/lib/module/hooks/useLeaveRoom.js.map +1 -0
  78. package/lib/module/i18n/strings.js +18 -0
  79. package/lib/module/i18n/strings.js.map +1 -1
  80. package/lib/module/networking/api-requests/rooms.api.js +35 -1
  81. package/lib/module/networking/api-requests/rooms.api.js.map +1 -1
  82. package/lib/module/networking/callTokenStanza.js +47 -3
  83. package/lib/module/networking/callTokenStanza.js.map +1 -1
  84. package/lib/module/networking/xmppClient.js +8 -1
  85. package/lib/module/networking/xmppClient.js.map +1 -1
  86. package/lib/module/version.js +1 -1
  87. package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
  88. package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
  89. package/lib/typescript/components/MainComponents/RoomList.d.ts.map +1 -1
  90. package/lib/typescript/components/Modals/ChatProfileModal/ChatProfileModal.d.ts.map +1 -1
  91. package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
  92. package/lib/typescript/components/RoomComponents/ChatRoomItem.d.ts.map +1 -1
  93. package/lib/typescript/components/VideoCalls/CallButtons.d.ts.map +1 -1
  94. package/lib/typescript/components/VideoCalls/VideoCallOverlay.d.ts +0 -6
  95. package/lib/typescript/components/VideoCalls/VideoCallOverlay.d.ts.map +1 -1
  96. package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts +9 -20
  97. package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts.map +1 -1
  98. package/lib/typescript/components/VideoCalls/callActions.d.ts +15 -0
  99. package/lib/typescript/components/VideoCalls/callActions.d.ts.map +1 -0
  100. package/lib/typescript/components/VideoCalls/callSessionController.d.ts +61 -0
  101. package/lib/typescript/components/VideoCalls/callSessionController.d.ts.map +1 -0
  102. package/lib/typescript/components/VideoCalls/useDraggable.d.ts +19 -0
  103. package/lib/typescript/components/VideoCalls/useDraggable.d.ts.map +1 -0
  104. package/lib/typescript/helpers/createRoomFromApi.d.ts.map +1 -1
  105. package/lib/typescript/helpers/roomUserCount.d.ts +1 -0
  106. package/lib/typescript/helpers/roomUserCount.d.ts.map +1 -1
  107. package/lib/typescript/helpers/uniqueMembers.d.ts +11 -0
  108. package/lib/typescript/helpers/uniqueMembers.d.ts.map +1 -0
  109. package/lib/typescript/hooks/useLeaveRoom.d.ts +9 -0
  110. package/lib/typescript/hooks/useLeaveRoom.d.ts.map +1 -0
  111. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  112. package/lib/typescript/networking/api-requests/rooms.api.d.ts +8 -0
  113. package/lib/typescript/networking/api-requests/rooms.api.d.ts.map +1 -1
  114. package/lib/typescript/networking/callTokenStanza.d.ts.map +1 -1
  115. package/lib/typescript/networking/xmppClient.d.ts.map +1 -1
  116. package/lib/typescript/version.d.ts +1 -1
  117. package/package.json +1 -1
  118. package/src/components/MainComponents/ChatHeader.tsx +10 -8
  119. package/src/components/MainComponents/MessageContainer.tsx +14 -1
  120. package/src/components/MainComponents/RoomList.tsx +8 -14
  121. package/src/components/Modals/ChatProfileModal/ChatProfileModal.tsx +16 -13
  122. package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +167 -36
  123. package/src/components/RoomComponents/ChatRoomItem.tsx +8 -1
  124. package/src/components/VideoCalls/CallButtons.tsx +5 -1
  125. package/src/components/VideoCalls/VideoCallOverlay.tsx +156 -163
  126. package/src/components/VideoCalls/VideoCallSession.tsx +207 -378
  127. package/src/components/VideoCalls/callActions.ts +63 -0
  128. package/src/components/VideoCalls/callSessionController.ts +421 -0
  129. package/src/components/VideoCalls/useDraggable.ts +46 -0
  130. package/src/helpers/createRoomFromApi.tsx +2 -0
  131. package/src/helpers/incomingCallFromPush.ts +2 -2
  132. package/src/helpers/roomUserCount.ts +6 -2
  133. package/src/helpers/uniqueMembers.ts +26 -0
  134. package/src/hooks/useLeaveRoom.ts +42 -0
  135. package/src/i18n/strings.ts +18 -0
  136. package/src/networking/api-requests/rooms.api.ts +28 -1
  137. package/src/networking/callTokenStanza.ts +46 -6
  138. package/src/networking/xmppClient.ts +10 -1
  139. package/src/version.ts +1 -1
@@ -1,23 +1,22 @@
1
1
  "use strict";
2
2
 
3
- import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
3
+ import React, { Component, useCallback, useEffect, useMemo, useRef, useState } from 'react';
4
4
  import { Animated, BackHandler, Easing, Modal, Platform, StyleSheet, Text, TouchableOpacity, Vibration, View } from 'react-native';
5
5
  import { useDispatch, useSelector } from 'react-redux';
6
- import { store } from '../../roomStore';
7
- import { acceptIncomingCall, declineIncomingCall, endCall, resetCall, setCallError, setCallPhase } from '../../roomStore/callSlice';
8
- import { addRoomMessage } from '../../roomStore/roomsSlice';
9
- import { buildLocalCallLogMessage } from '../../helpers/callLogMessage';
6
+ import { acceptIncomingCall, resetCall, setCallError } from '../../roomStore/callSlice';
10
7
  import { useChatSettingState } from '../../hooks/useChatSettingState';
11
8
  import { sendCallStateSignal } from '../../networking/callTokenStanza';
9
+ import { useTheme } from '../../hooks/useTheme';
12
10
  import { VideoCallSession } from './VideoCallSession';
11
+ import { startCallSession } from './callSessionController';
12
+ import { declineActiveCall, terminateActiveCall } from './callActions';
13
+ import { useDraggable } from './useDraggable';
13
14
  import { ProfileImagePlaceholder } from '../MainComponents/ProfileImagePlaceholder';
14
15
  import { AudioCallIcon, HangUpIcon, VideoCallIcon } from './CallIcons';
15
16
  import { useT } from '../../i18n/useT';
16
17
  import { useCallKeep } from './useCallKeep';
17
18
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
18
19
  const DEFAULT_PRIMARY = '#0052CD';
19
- const TEXT_PRIMARY = '#141414';
20
- const TEXT_MUTED = '#8c8c8c';
21
20
  const DANGER = '#E53935';
22
21
  const ACCEPT = '#10B981';
23
22
 
@@ -101,13 +100,18 @@ const RingingCard = ({
101
100
  onAccept,
102
101
  onDecline,
103
102
  onHangup,
104
- onDismiss
103
+ onDismiss,
104
+ theme
105
105
  }) => {
106
106
  const t = useT();
107
107
  return /*#__PURE__*/_jsxs(View, {
108
- style: styles.ringingCard,
108
+ style: [styles.ringingCard, {
109
+ backgroundColor: theme.surface
110
+ }],
109
111
  children: [/*#__PURE__*/_jsx(Text, {
110
- style: styles.ringingTitle,
112
+ style: [styles.ringingTitle, {
113
+ color: theme.textSecondary
114
+ }],
111
115
  children: title
112
116
  }), /*#__PURE__*/_jsxs(View, {
113
117
  style: styles.avatarWrap,
@@ -126,18 +130,22 @@ const RingingCard = ({
126
130
  }), /*#__PURE__*/_jsxs(View, {
127
131
  style: styles.ringingIdentity,
128
132
  children: [/*#__PURE__*/_jsx(Text, {
129
- style: styles.ringingName,
133
+ style: [styles.ringingName, {
134
+ color: theme.text
135
+ }],
130
136
  children: roomName || (variant === 'incoming' ? t('call.unknownCaller') : t('call.title'))
131
137
  }), /*#__PURE__*/_jsxs(View, {
132
138
  style: styles.ringingSubtitleRow,
133
139
  children: [kind === 'audio' ? /*#__PURE__*/_jsx(AudioCallIcon, {
134
- color: TEXT_MUTED,
140
+ color: theme.textSecondary,
135
141
  size: 16
136
142
  }) : /*#__PURE__*/_jsx(VideoCallIcon, {
137
- color: TEXT_MUTED,
143
+ color: theme.textSecondary,
138
144
  size: 16
139
145
  }), /*#__PURE__*/_jsx(Text, {
140
- style: styles.ringingSubtitle,
146
+ style: [styles.ringingSubtitle, {
147
+ color: theme.textSecondary
148
+ }],
141
149
  children: subtitle
142
150
  })]
143
151
  })]
@@ -198,23 +206,58 @@ const RingingCard = ({
198
206
  });
199
207
  };
200
208
 
209
+ /**
210
+ * A crash in the call UI must not take the chat down with it (web wraps
211
+ * the overlay in a silent ChatErrorBoundary). Renders nothing on error and
212
+ * clears itself on the next call.
213
+ */
214
+ class CallErrorBoundary extends Component {
215
+ state = {
216
+ failed: false
217
+ };
218
+ static getDerivedStateFromError() {
219
+ return {
220
+ failed: true
221
+ };
222
+ }
223
+ componentDidUpdate(prev) {
224
+ if (prev.resetKey !== this.props.resetKey && this.state.failed) {
225
+ this.setState({
226
+ failed: false
227
+ });
228
+ }
229
+ }
230
+ componentDidCatch(error) {
231
+ console.warn('[calls] call UI crashed', error);
232
+ }
233
+ render() {
234
+ return this.state.failed ? null : this.props.children;
235
+ }
236
+ }
237
+
201
238
  /**
202
239
  * Call orchestration surface. Mounted once, above the chat, by XmppProvider,
203
240
  * so an incoming call rings on whatever screen the user happens to be on
204
241
  * rather than only inside <Chat>. Renders nothing while `call.phase` is
205
242
  * 'idle'.
243
+ *
244
+ * The LiveKit connection itself lives in callSessionController.ts, so
245
+ * switching between the full-screen Modal and the minimized panel (two
246
+ * different trees here) no longer drops the call.
206
247
  */
207
- export const VideoCallOverlay = () => {
248
+ const VideoCallOverlayInner = () => {
208
249
  const dispatch = useDispatch();
209
250
  const call = useSelector(state => state.call);
210
251
  const {
211
252
  config
212
253
  } = useChatSettingState();
254
+ const theme = useTheme();
213
255
  const t = useT();
256
+ const panel = useDraggable();
214
257
  const videoCallsConfig = config?.videoCalls;
215
258
  const enabled = videoCallsConfig?.enabled === true;
216
259
  const livekitUrl = (videoCallsConfig?.livekitUrl || '').trim();
217
- const primaryColor = config?.colors?.primary || DEFAULT_PRIMARY;
260
+ const primaryColor = theme.primary || config?.colors?.primary || DEFAULT_PRIMARY;
218
261
  const isOpen = enabled && call.phase !== 'idle';
219
262
 
220
263
  // Native incoming-call screen where the host installed react-native-
@@ -225,6 +268,22 @@ export const VideoCallOverlay = () => {
225
268
  const canRenderSession = !!call.token && (call.phase === 'connecting' || call.phase === 'in-call') && !!livekitUrl;
226
269
  const isMinimized = minimized && canRenderSession;
227
270
 
271
+ // Join the LiveKit room once the call has a token. Idempotent, and the
272
+ // controller tears itself down when the call slice leaves these phases.
273
+ useEffect(() => {
274
+ if (!enabled || !canRenderSession || !call.token) {
275
+ return;
276
+ }
277
+ startCallSession({
278
+ token: call.token,
279
+ livekitUrl,
280
+ kind: call.kind,
281
+ startWithMicOn: videoCallsConfig?.startWithMicOn,
282
+ startWithCameraOn: videoCallsConfig?.startWithCameraOn
283
+ });
284
+ // eslint-disable-next-line react-hooks/exhaustive-deps
285
+ }, [enabled, canRenderSession, call.token, livekitUrl, call.kind]);
286
+
228
287
  // Reset the minimized flag whenever the call ends, so the next call
229
288
  // opens full-screen.
230
289
  useEffect(() => {
@@ -233,12 +292,15 @@ export const VideoCallOverlay = () => {
233
292
  }
234
293
  }, [call.phase]);
235
294
 
236
- // Give up on an unanswered outgoing dial.
295
+ // Give up on an unanswered outgoing dial. Unlike web (which only shows
296
+ // the error), also tell the callee, who would otherwise keep ringing:
297
+ // there is no incoming ring timeout on either platform.
237
298
  useEffect(() => {
238
299
  if (call.phase !== 'requesting' || call.direction !== 'outgoing') {
239
300
  return;
240
301
  }
241
302
  const timer = setTimeout(() => {
303
+ sendCallStateSignal('cancelled');
242
304
  dispatch(setCallError(t('call.error.noAnswerTimeout')));
243
305
  }, OUTGOING_CALL_TIMEOUT_MS);
244
306
  return () => clearTimeout(timer);
@@ -255,42 +317,15 @@ export const VideoCallOverlay = () => {
255
317
  Vibration.vibrate(RING_VIBRATION_PATTERN, true);
256
318
  return () => Vibration.cancel();
257
319
  }, [call.direction, call.phase]);
258
- const terminateCall = useCallback(state => {
259
- // Write a local "call ended" log entry BEFORE endCall() wipes the
260
- // call slice. The authoritative entry is a server call-state
261
- // broadcast, but that isn't guaranteed to arrive, so we synthesize
262
- // our own. It's deduped against any server copy by callId in
263
- // addRoomMessage.
264
- const snap = store.getState().call;
265
- if (snap.roomJid && (snap.callId || snap.connectedAt)) {
266
- const durationMs = snap.connectedAt ? Math.max(0, Date.now() - snap.connectedAt) : 0;
267
- dispatch(addRoomMessage({
268
- roomJID: snap.roomJid,
269
- message: buildLocalCallLogMessage({
270
- callId: snap.callId || '',
271
- direction: snap.direction === 'incoming' ? 'incoming' : 'outgoing',
272
- durationMs,
273
- kind: snap.kind === 'audio' ? 'audio' : 'video',
274
- selfXmppUsername: store.getState().chatSettingStore.user?.xmppUsername || ''
275
- })
276
- }));
277
- }
278
- sendCallStateSignal(state);
279
- dispatch(endCall());
280
- }, [dispatch]);
281
- const declineCall = useCallback(() => {
282
- sendCallStateSignal('declined');
283
- dispatch(declineIncomingCall());
284
- }, [dispatch]);
285
320
  const hangupCurrent = useCallback(() => {
286
321
  if (call.direction === 'incoming' && call.phase === 'ringing-incoming') {
287
- declineCall();
322
+ declineActiveCall();
288
323
  } else if (call.phase === 'error') {
289
324
  dispatch(resetCall());
290
325
  } else {
291
- terminateCall(call.phase === 'requesting' ? 'cancelled' : 'ended');
326
+ terminateActiveCall(call.phase === 'requesting' ? 'cancelled' : 'ended');
292
327
  }
293
- }, [call.direction, call.phase, declineCall, terminateCall, dispatch]);
328
+ }, [call.direction, call.phase, dispatch]);
294
329
 
295
330
  // Android hardware back = hang up, the RN equivalent of the web Esc
296
331
  // handler. A minimized panel shouldn't swallow back: the user is using
@@ -336,30 +371,25 @@ export const VideoCallOverlay = () => {
336
371
  return null;
337
372
  }
338
373
  const showIncomingDecision = call.direction === 'incoming' && call.phase === 'ringing-incoming';
374
+ const session = /*#__PURE__*/_jsx(VideoCallSession, {
375
+ kind: call.kind,
376
+ peerName: call.roomName,
377
+ primaryColor: primaryColor,
378
+ icons: videoCallsConfig?.icons,
379
+ minimized: isMinimized,
380
+ onToggleMinimize: () => setMinimized(m => !m),
381
+ onHangup: () => terminateActiveCall('ended')
382
+ });
339
383
 
340
384
  // The minimized session is NOT a Modal: a modal is by definition on top
341
385
  // of everything and swallows touches, which is the opposite of what
342
386
  // minimize is for (keep talking, keep using the chat). It renders as a
343
- // floating absolutely-positioned bar instead.
344
- if (canRenderSession && isMinimized) {
345
- return /*#__PURE__*/_jsx(View, {
346
- style: styles.floatingPanel,
347
- pointerEvents: "box-none",
348
- children: /*#__PURE__*/_jsx(VideoCallSession, {
349
- token: call.token,
350
- livekitUrl: livekitUrl,
351
- kind: call.kind,
352
- peerName: call.roomName,
353
- primaryColor: primaryColor,
354
- icons: videoCallsConfig?.icons,
355
- startWithCameraOn: videoCallsConfig?.startWithCameraOn,
356
- startWithMicOn: videoCallsConfig?.startWithMicOn,
357
- minimized: true,
358
- onToggleMinimize: () => setMinimized(m => !m),
359
- onConnected: () => dispatch(setCallPhase('in-call')),
360
- onError: message => dispatch(setCallError(message)),
361
- onHangup: () => terminateCall('ended')
362
- })
387
+ // floating bar the user can drag out of the way, like web's panel.
388
+ if (isMinimized) {
389
+ return /*#__PURE__*/_jsx(Animated.View, {
390
+ ...panel.panHandlers,
391
+ style: [styles.floatingPanel, panel.style],
392
+ children: session
363
393
  });
364
394
  }
365
395
  return /*#__PURE__*/_jsx(Modal, {
@@ -367,27 +397,20 @@ export const VideoCallOverlay = () => {
367
397
  transparent: true,
368
398
  animationType: "fade",
369
399
  statusBarTranslucent: true,
400
+ supportedOrientations: ['portrait', 'landscape'],
370
401
  onRequestClose: hangupCurrent,
371
- children: /*#__PURE__*/_jsx(View, {
372
- style: styles.backdrop,
373
- children: canRenderSession ? /*#__PURE__*/_jsx(View, {
374
- style: call.kind === 'audio' ? styles.audioSessionCard : styles.sessionCard,
375
- children: /*#__PURE__*/_jsx(VideoCallSession, {
376
- token: call.token,
377
- livekitUrl: livekitUrl,
378
- kind: call.kind,
379
- peerName: call.roomName,
380
- primaryColor: primaryColor,
381
- icons: videoCallsConfig?.icons,
382
- startWithCameraOn: videoCallsConfig?.startWithCameraOn,
383
- startWithMicOn: videoCallsConfig?.startWithMicOn,
384
- minimized: false,
385
- onToggleMinimize: () => setMinimized(m => !m),
386
- onConnected: () => dispatch(setCallPhase('in-call')),
387
- onError: message => dispatch(setCallError(message)),
388
- onHangup: () => terminateCall('ended')
389
- })
390
- }) : showIncomingDecision ? /*#__PURE__*/_jsx(RingingCard, {
402
+ children: canRenderSession ?
403
+ /*#__PURE__*/
404
+ // Full-bleed: on a phone the call owns the screen, like the native
405
+ // dialer. The audio call keeps the same dark canvas as video.
406
+ _jsx(View, {
407
+ style: styles.sessionFull,
408
+ children: session
409
+ }) : /*#__PURE__*/_jsx(View, {
410
+ style: [styles.backdrop, {
411
+ backgroundColor: theme.overlay
412
+ }],
413
+ children: showIncomingDecision ? /*#__PURE__*/_jsx(RingingCard, {
391
414
  title: ringingHeader,
392
415
  subtitle: ringingSubtitle,
393
416
  roomName: call.roomName,
@@ -395,8 +418,9 @@ export const VideoCallOverlay = () => {
395
418
  variant: "incoming",
396
419
  primaryColor: primaryColor,
397
420
  icons: videoCallsConfig?.icons,
421
+ theme: theme,
398
422
  onAccept: () => dispatch(acceptIncomingCall()),
399
- onDecline: declineCall
423
+ onDecline: declineActiveCall
400
424
  }) : call.phase === 'error' ? /*#__PURE__*/_jsx(RingingCard, {
401
425
  title: ringingHeader,
402
426
  subtitle: ringingSubtitle,
@@ -404,6 +428,7 @@ export const VideoCallOverlay = () => {
404
428
  kind: call.kind,
405
429
  variant: "error",
406
430
  primaryColor: primaryColor,
431
+ theme: theme,
407
432
  errorMessage: call.error || (!livekitUrl ? t('call.error.missingLivekitUrl') : null),
408
433
  onDismiss: () => dispatch(resetCall())
409
434
  }) : /*#__PURE__*/_jsx(RingingCard, {
@@ -414,38 +439,29 @@ export const VideoCallOverlay = () => {
414
439
  variant: "outgoing",
415
440
  primaryColor: primaryColor,
416
441
  icons: videoCallsConfig?.icons,
417
- onHangup: () => terminateCall('cancelled')
442
+ theme: theme,
443
+ onHangup: () => terminateActiveCall('cancelled')
418
444
  })
419
445
  })
420
446
  });
421
447
  };
448
+ export const VideoCallOverlay = () => {
449
+ const callId = useSelector(state => state.call.callId || String(state.call.startedAt || ''));
450
+ return /*#__PURE__*/_jsx(CallErrorBoundary, {
451
+ resetKey: callId,
452
+ children: /*#__PURE__*/_jsx(VideoCallOverlayInner, {})
453
+ });
454
+ };
422
455
  const styles = StyleSheet.create({
423
456
  backdrop: {
424
457
  flex: 1,
425
- backgroundColor: 'rgba(0, 0, 0, 0.5)',
426
458
  alignItems: 'center',
427
459
  justifyContent: 'center',
428
460
  padding: 16
429
461
  },
430
- sessionCard: {
431
- width: '100%',
432
- height: '100%',
433
- borderRadius: 24,
434
- backgroundColor: '#fff',
435
- overflow: 'hidden'
436
- },
437
- // Audio calls don't need the full video canvas: a fixed tall card leaves
438
- // a dead gap around the avatar and strands the controls far from
439
- // anything else, so this one shrink-wraps its content.
440
- audioSessionCard: {
441
- width: '100%',
442
- maxHeight: 600,
443
- flexGrow: 0,
444
- flexShrink: 1,
445
- minHeight: 420,
446
- borderRadius: 24,
447
- backgroundColor: '#fff',
448
- overflow: 'hidden'
462
+ sessionFull: {
463
+ flex: 1,
464
+ backgroundColor: '#0B1220'
449
465
  },
450
466
  floatingPanel: {
451
467
  position: 'absolute',
@@ -460,13 +476,11 @@ const styles = StyleSheet.create({
460
476
  maxWidth: 420,
461
477
  padding: 32,
462
478
  borderRadius: 24,
463
- backgroundColor: '#fff',
464
479
  alignItems: 'center',
465
480
  gap: 24
466
481
  },
467
482
  ringingTitle: {
468
483
  fontSize: 14,
469
- color: TEXT_MUTED,
470
484
  letterSpacing: 0.2
471
485
  },
472
486
  avatarWrap: {
@@ -488,7 +502,6 @@ const styles = StyleSheet.create({
488
502
  },
489
503
  ringingName: {
490
504
  fontSize: 24,
491
- color: TEXT_PRIMARY,
492
505
  textAlign: 'center'
493
506
  },
494
507
  ringingSubtitleRow: {
@@ -497,7 +510,6 @@ const styles = StyleSheet.create({
497
510
  gap: 6
498
511
  },
499
512
  ringingSubtitle: {
500
- color: TEXT_MUTED,
501
513
  fontSize: 14
502
514
  },
503
515
  errorBox: {
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","Animated","BackHandler","Easing","Modal","Platform","StyleSheet","Text","TouchableOpacity","Vibration","View","useDispatch","useSelector","store","acceptIncomingCall","declineIncomingCall","endCall","resetCall","setCallError","setCallPhase","addRoomMessage","buildLocalCallLogMessage","useChatSettingState","sendCallStateSignal","VideoCallSession","ProfileImagePlaceholder","AudioCallIcon","HangUpIcon","VideoCallIcon","useT","useCallKeep","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DEFAULT_PRIMARY","TEXT_PRIMARY","TEXT_MUTED","DANGER","ACCEPT","OUTGOING_CALL_TIMEOUT_MS","RING_VIBRATION_PATTERN","hexToRgba","hex","alpha","value","String","trim","startsWith","slice","length","split","map","ch","join","num","parseInt","r","g","b","PulseRing","color","delay","progress","Value","current","animation","loop","sequence","timing","toValue","duration","easing","out","ease","useNativeDriver","start","stop","pointerEvents","style","styles","pulseRing","borderColor","opacity","interpolate","inputRange","outputRange","transform","scale","RingingCard","title","subtitle","roomName","kind","variant","primaryColor","errorMessage","icons","onAccept","onDecline","onHangup","onDismiss","t","ringingCard","children","ringingTitle","avatarWrap","name","size","ringingIdentity","ringingName","ringingSubtitleRow","ringingSubtitle","errorBox","errorBoxText","ringingActions","accessibilityRole","accessibilityLabel","onPress","circleAction","backgroundColor","decline","accept","hangup","dismissButton","dismissText","VideoCallOverlay","dispatch","call","state","config","videoCallsConfig","videoCalls","enabled","livekitUrl","colors","primary","isOpen","phase","minimized","setMinimized","canRenderSession","token","isMinimized","direction","timer","setTimeout","clearTimeout","startedAt","isRinging","vibrate","cancel","terminateCall","snap","getState","roomJid","callId","connectedAt","durationMs","Math","max","Date","now","roomJID","message","selfXmppUsername","chatSettingStore","user","xmppUsername","declineCall","hangupCurrent","OS","subscription","addEventListener","remove","ringingHeader","showIncomingDecision","floatingPanel","peerName","startWithCameraOn","startWithMicOn","onToggleMinimize","m","onConnected","onError","visible","transparent","animationType","statusBarTranslucent","onRequestClose","backdrop","audioSessionCard","sessionCard","error","create","flex","alignItems","justifyContent","padding","width","height","borderRadius","overflow","maxHeight","flexGrow","flexShrink","minHeight","position","right","bottom","left","zIndex","elevation","maxWidth","gap","fontSize","letterSpacing","borderWidth","textAlign","flexDirection","paddingVertical","paddingHorizontal","marginTop","minWidth"],"sourceRoot":"../../../../src","sources":["components/VideoCalls/VideoCallOverlay.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","useCallback","useEffect","useMemo","useRef","useState","Animated","BackHandler","Easing","Modal","Platform","StyleSheet","Text","TouchableOpacity","Vibration","View","useDispatch","useSelector","acceptIncomingCall","resetCall","setCallError","useChatSettingState","sendCallStateSignal","useTheme","VideoCallSession","startCallSession","declineActiveCall","terminateActiveCall","useDraggable","ProfileImagePlaceholder","AudioCallIcon","HangUpIcon","VideoCallIcon","useT","useCallKeep","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DEFAULT_PRIMARY","DANGER","ACCEPT","OUTGOING_CALL_TIMEOUT_MS","RING_VIBRATION_PATTERN","hexToRgba","hex","alpha","value","String","trim","startsWith","slice","length","split","map","ch","join","num","parseInt","r","g","b","PulseRing","color","delay","progress","Value","current","animation","loop","sequence","timing","toValue","duration","easing","out","ease","useNativeDriver","start","stop","pointerEvents","style","styles","pulseRing","borderColor","opacity","interpolate","inputRange","outputRange","transform","scale","RingingCard","title","subtitle","roomName","kind","variant","primaryColor","errorMessage","icons","onAccept","onDecline","onHangup","onDismiss","theme","t","ringingCard","backgroundColor","surface","children","ringingTitle","textSecondary","avatarWrap","name","size","ringingIdentity","ringingName","text","ringingSubtitleRow","ringingSubtitle","errorBox","errorBoxText","ringingActions","accessibilityRole","accessibilityLabel","onPress","circleAction","decline","accept","hangup","dismissButton","dismissText","CallErrorBoundary","state","failed","getDerivedStateFromError","componentDidUpdate","prev","resetKey","props","setState","componentDidCatch","error","console","warn","render","VideoCallOverlayInner","dispatch","call","config","panel","videoCallsConfig","videoCalls","enabled","livekitUrl","primary","colors","isOpen","phase","minimized","setMinimized","canRenderSession","token","isMinimized","startWithMicOn","startWithCameraOn","direction","timer","setTimeout","clearTimeout","startedAt","isRinging","vibrate","cancel","hangupCurrent","OS","subscription","addEventListener","remove","ringingHeader","showIncomingDecision","session","peerName","onToggleMinimize","m","panHandlers","floatingPanel","visible","transparent","animationType","statusBarTranslucent","supportedOrientations","onRequestClose","sessionFull","backdrop","overlay","VideoCallOverlay","callId","create","flex","alignItems","justifyContent","padding","position","right","bottom","left","zIndex","elevation","width","maxWidth","borderRadius","gap","fontSize","letterSpacing","height","borderWidth","textAlign","flexDirection","paddingVertical","paddingHorizontal","marginTop","minWidth"],"sourceRoot":"../../../../src","sources":["components/VideoCalls/VideoCallOverlay.tsx"],"mappings":"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","ignoreList":[]}