@ethora/chat-component-rn 26.10.3 → 26.10.5

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 (113) hide show
  1. package/lib/commonjs/components/Header/HeaderRoomList.js +72 -69
  2. package/lib/commonjs/components/Header/HeaderRoomList.js.map +1 -1
  3. package/lib/commonjs/components/MainComponents/ChatHeader.js +2 -1
  4. package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
  5. package/lib/commonjs/components/VideoCalls/ActiveCallBar.js +248 -0
  6. package/lib/commonjs/components/VideoCalls/ActiveCallBar.js.map +1 -0
  7. package/lib/commonjs/components/VideoCalls/CallIcons.js +41 -16
  8. package/lib/commonjs/components/VideoCalls/CallIcons.js.map +1 -1
  9. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js +193 -37
  10. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  11. package/lib/commonjs/components/VideoCalls/VideoCallSession.js +71 -109
  12. package/lib/commonjs/components/VideoCalls/VideoCallSession.js.map +1 -1
  13. package/lib/commonjs/components/VideoCalls/callSessionController.js +74 -21
  14. package/lib/commonjs/components/VideoCalls/callSessionController.js.map +1 -1
  15. package/lib/commonjs/components/VideoCalls/callUiStore.js +120 -0
  16. package/lib/commonjs/components/VideoCalls/callUiStore.js.map +1 -0
  17. package/lib/commonjs/components/VideoCalls/livekitRuntime.js +10 -1
  18. package/lib/commonjs/components/VideoCalls/livekitRuntime.js.map +1 -1
  19. package/lib/commonjs/components/VideoCalls/useCallKeep.js +197 -28
  20. package/lib/commonjs/components/VideoCalls/useCallKeep.js.map +1 -1
  21. package/lib/commonjs/components/VideoCalls/useOngoingCallNotification.js +88 -0
  22. package/lib/commonjs/components/VideoCalls/useOngoingCallNotification.js.map +1 -0
  23. package/lib/commonjs/components/VideoCalls/usePipTile.js +232 -0
  24. package/lib/commonjs/components/VideoCalls/usePipTile.js.map +1 -0
  25. package/lib/commonjs/helpers/updateMessagesTillLast.js +3 -1
  26. package/lib/commonjs/helpers/updateMessagesTillLast.js.map +1 -1
  27. package/lib/commonjs/i18n/strings.js +54 -0
  28. package/lib/commonjs/i18n/strings.js.map +1 -1
  29. package/lib/commonjs/main.js.map +1 -1
  30. package/lib/commonjs/version.js +1 -1
  31. package/lib/module/components/Header/HeaderRoomList.js +73 -70
  32. package/lib/module/components/Header/HeaderRoomList.js.map +1 -1
  33. package/lib/module/components/MainComponents/ChatHeader.js +2 -1
  34. package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
  35. package/lib/module/components/VideoCalls/ActiveCallBar.js +240 -0
  36. package/lib/module/components/VideoCalls/ActiveCallBar.js.map +1 -0
  37. package/lib/module/components/VideoCalls/CallIcons.js +38 -15
  38. package/lib/module/components/VideoCalls/CallIcons.js.map +1 -1
  39. package/lib/module/components/VideoCalls/VideoCallOverlay.js +195 -39
  40. package/lib/module/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  41. package/lib/module/components/VideoCalls/VideoCallSession.js +72 -111
  42. package/lib/module/components/VideoCalls/VideoCallSession.js.map +1 -1
  43. package/lib/module/components/VideoCalls/callSessionController.js +71 -19
  44. package/lib/module/components/VideoCalls/callSessionController.js.map +1 -1
  45. package/lib/module/components/VideoCalls/callUiStore.js +111 -0
  46. package/lib/module/components/VideoCalls/callUiStore.js.map +1 -0
  47. package/lib/module/components/VideoCalls/livekitRuntime.js +10 -1
  48. package/lib/module/components/VideoCalls/livekitRuntime.js.map +1 -1
  49. package/lib/module/components/VideoCalls/useCallKeep.js +198 -29
  50. package/lib/module/components/VideoCalls/useCallKeep.js.map +1 -1
  51. package/lib/module/components/VideoCalls/useOngoingCallNotification.js +84 -0
  52. package/lib/module/components/VideoCalls/useOngoingCallNotification.js.map +1 -0
  53. package/lib/module/components/VideoCalls/usePipTile.js +228 -0
  54. package/lib/module/components/VideoCalls/usePipTile.js.map +1 -0
  55. package/lib/module/helpers/updateMessagesTillLast.js +3 -1
  56. package/lib/module/helpers/updateMessagesTillLast.js.map +1 -1
  57. package/lib/module/i18n/strings.js +54 -0
  58. package/lib/module/i18n/strings.js.map +1 -1
  59. package/lib/module/main.js.map +1 -1
  60. package/lib/module/version.js +1 -1
  61. package/lib/typescript/components/Header/HeaderRoomList.d.ts.map +1 -1
  62. package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
  63. package/lib/typescript/components/VideoCalls/ActiveCallBar.d.ts +27 -0
  64. package/lib/typescript/components/VideoCalls/ActiveCallBar.d.ts.map +1 -0
  65. package/lib/typescript/components/VideoCalls/CallIcons.d.ts +9 -0
  66. package/lib/typescript/components/VideoCalls/CallIcons.d.ts.map +1 -1
  67. package/lib/typescript/components/VideoCalls/VideoCallOverlay.d.ts.map +1 -1
  68. package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts +7 -3
  69. package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts.map +1 -1
  70. package/lib/typescript/components/VideoCalls/callSessionController.d.ts +9 -0
  71. package/lib/typescript/components/VideoCalls/callSessionController.d.ts.map +1 -1
  72. package/lib/typescript/components/VideoCalls/callUiStore.d.ts +37 -0
  73. package/lib/typescript/components/VideoCalls/callUiStore.d.ts.map +1 -0
  74. package/lib/typescript/components/VideoCalls/livekitRuntime.d.ts +7 -0
  75. package/lib/typescript/components/VideoCalls/livekitRuntime.d.ts.map +1 -1
  76. package/lib/typescript/components/VideoCalls/useCallKeep.d.ts +12 -0
  77. package/lib/typescript/components/VideoCalls/useCallKeep.d.ts.map +1 -1
  78. package/lib/typescript/components/VideoCalls/useOngoingCallNotification.d.ts +10 -0
  79. package/lib/typescript/components/VideoCalls/useOngoingCallNotification.d.ts.map +1 -0
  80. package/lib/typescript/components/VideoCalls/usePipTile.d.ts +46 -0
  81. package/lib/typescript/components/VideoCalls/usePipTile.d.ts.map +1 -0
  82. package/lib/typescript/helpers/updateMessagesTillLast.d.ts.map +1 -1
  83. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  84. package/lib/typescript/main.d.ts +1 -1
  85. package/lib/typescript/main.d.ts.map +1 -1
  86. package/lib/typescript/types/types.d.ts +40 -0
  87. package/lib/typescript/types/types.d.ts.map +1 -1
  88. package/lib/typescript/version.d.ts +1 -1
  89. package/package.json +1 -1
  90. package/src/components/Header/HeaderRoomList.tsx +66 -61
  91. package/src/components/MainComponents/ChatHeader.tsx +3 -0
  92. package/src/components/VideoCalls/ActiveCallBar.tsx +222 -0
  93. package/src/components/VideoCalls/CallIcons.tsx +36 -12
  94. package/src/components/VideoCalls/VideoCallOverlay.tsx +211 -37
  95. package/src/components/VideoCalls/VideoCallSession.tsx +84 -93
  96. package/src/components/VideoCalls/callSessionController.ts +73 -24
  97. package/src/components/VideoCalls/callUiStore.ts +106 -0
  98. package/src/components/VideoCalls/livekitRuntime.ts +16 -0
  99. package/src/components/VideoCalls/useCallKeep.ts +204 -33
  100. package/src/components/VideoCalls/useOngoingCallNotification.ts +113 -0
  101. package/src/components/VideoCalls/usePipTile.ts +214 -0
  102. package/src/helpers/updateMessagesTillLast.tsx +2 -1
  103. package/src/i18n/strings.ts +54 -0
  104. package/src/main.ts +3 -0
  105. package/src/types/types.ts +48 -0
  106. package/src/version.ts +1 -1
  107. package/lib/commonjs/components/VideoCalls/useDraggable.js +0 -59
  108. package/lib/commonjs/components/VideoCalls/useDraggable.js.map +0 -1
  109. package/lib/module/components/VideoCalls/useDraggable.js +0 -55
  110. package/lib/module/components/VideoCalls/useDraggable.js.map +0 -1
  111. package/lib/typescript/components/VideoCalls/useDraggable.d.ts +0 -19
  112. package/lib/typescript/components/VideoCalls/useDraggable.d.ts.map +0 -1
  113. package/src/components/VideoCalls/useDraggable.ts +0 -46
@@ -0,0 +1,228 @@
1
+ "use strict";
2
+
3
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
4
+ import { Animated, PanResponder } from 'react-native';
5
+
6
+ /**
7
+ * The small video tile of a call, Telegram-style: drag it anywhere and it
8
+ * snaps to the nearest corner when released (a flick carries it towards
9
+ * the flick), pinch it to switch between a small and a large size.
10
+ *
11
+ * Positions are kept per corner rather than per pixel, so the tile stays
12
+ * glued to its corner when the stage changes size (rotation, iPad split
13
+ * view) or the tile itself changes size.
14
+ */
15
+
16
+ export const PIP_TILE_SIZES = {
17
+ small: {
18
+ width: 104,
19
+ height: 148
20
+ },
21
+ large: {
22
+ width: 156,
23
+ height: 222
24
+ }
25
+ };
26
+ const MARGIN = 12;
27
+ // How far a flick carries the tile before picking a corner, in ms of velocity.
28
+ const FLICK_PROJECTION_MS = 160;
29
+ // Pinch past these ratios to change size; in between keeps the current one.
30
+ const GROW_RATIO = 1.12;
31
+ const SHRINK_RATIO = 0.9;
32
+ const SPRING = {
33
+ useNativeDriver: false,
34
+ damping: 20,
35
+ stiffness: 220,
36
+ mass: 0.8
37
+ };
38
+ const touchDistance = touches => {
39
+ const [a, b] = touches;
40
+ return Math.hypot(a.pageX - b.pageX, a.pageY - b.pageY);
41
+ };
42
+ export const usePipTile = ({
43
+ topInset = 0
44
+ } = {}) => {
45
+ const [stage, setStage] = useState(null);
46
+ const [size, setSize] = useState('small');
47
+ const stageRef = useRef(null);
48
+ const sizeRef = useRef('small');
49
+ const cornerRef = useRef({
50
+ right: true,
51
+ bottom: false
52
+ });
53
+ const topInsetRef = useRef(topInset);
54
+ topInsetRef.current = topInset;
55
+ const position = useRef(new Animated.ValueXY({
56
+ x: 0,
57
+ y: 0
58
+ })).current;
59
+ const width = useRef(new Animated.Value(PIP_TILE_SIZES.small.width)).current;
60
+ const height = useRef(new Animated.Value(PIP_TILE_SIZES.small.height)).current;
61
+ const pinchScale = useRef(new Animated.Value(1)).current;
62
+ // Where the tile rests, i.e. where a drag starts from.
63
+ const restRef = useRef({
64
+ x: 0,
65
+ y: 0
66
+ });
67
+ const gestureRef = useRef({
68
+ pinching: false,
69
+ startDistance: 0,
70
+ scale: 1
71
+ });
72
+ const cornerPoint = useCallback((corner, tileSize) => {
73
+ const area = stageRef.current;
74
+ if (!area) {
75
+ return {
76
+ x: 0,
77
+ y: 0
78
+ };
79
+ }
80
+ const tile = PIP_TILE_SIZES[tileSize];
81
+ const top = MARGIN + topInsetRef.current;
82
+ return {
83
+ x: corner.right ? Math.max(MARGIN, area.width - tile.width - MARGIN) : MARGIN,
84
+ y: corner.bottom ? Math.max(top, area.height - tile.height - MARGIN) : top
85
+ };
86
+ }, []);
87
+ const settle = useCallback(animated => {
88
+ const tileSize = sizeRef.current;
89
+ const target = cornerPoint(cornerRef.current, tileSize);
90
+ const tile = PIP_TILE_SIZES[tileSize];
91
+ restRef.current = target;
92
+ if (!animated) {
93
+ position.setValue(target);
94
+ width.setValue(tile.width);
95
+ height.setValue(tile.height);
96
+ pinchScale.setValue(1);
97
+ return;
98
+ }
99
+ Animated.parallel([Animated.spring(position, {
100
+ ...SPRING,
101
+ toValue: target
102
+ }), Animated.spring(width, {
103
+ ...SPRING,
104
+ toValue: tile.width
105
+ }), Animated.spring(height, {
106
+ ...SPRING,
107
+ toValue: tile.height
108
+ }), Animated.spring(pinchScale, {
109
+ ...SPRING,
110
+ toValue: 1
111
+ })]).start();
112
+ }, [cornerPoint, position, width, height, pinchScale]);
113
+ const onStageLayout = useCallback(event => {
114
+ const {
115
+ width: w,
116
+ height: h
117
+ } = event.nativeEvent.layout;
118
+ const prev = stageRef.current;
119
+ if (prev && prev.width === w && prev.height === h) {
120
+ return;
121
+ }
122
+ stageRef.current = {
123
+ width: w,
124
+ height: h
125
+ };
126
+ setStage(stageRef.current);
127
+ settle(false);
128
+ }, [settle]);
129
+
130
+ // The safe-area inset arrives after the first layout on some devices.
131
+ useEffect(() => {
132
+ if (stageRef.current) {
133
+ settle(false);
134
+ }
135
+ }, [topInset, settle]);
136
+ const panHandlers = useMemo(() => PanResponder.create({
137
+ // Two fingers are always ours (pinch); one finger only once it
138
+ // moves, so a tap still reaches the tile's onPress (swap videos).
139
+ onStartShouldSetPanResponderCapture: event => event.nativeEvent.touches.length >= 2,
140
+ // Own the touch from the start when the tile has no tap target
141
+ // (nothing to swap): an ancestor outside the call Modal would take
142
+ // it otherwise, and the move-capture below would never be asked.
143
+ onStartShouldSetPanResponder: () => true,
144
+ onMoveShouldSetPanResponderCapture: (event, gesture) => event.nativeEvent.touches.length >= 2 || Math.abs(gesture.dx) > 4 || Math.abs(gesture.dy) > 4,
145
+ // Never hand the tile over to the swipe-to-minimize of the screen.
146
+ onPanResponderTerminationRequest: () => false,
147
+ onPanResponderGrant: () => {
148
+ position.stopAnimation();
149
+ width.stopAnimation();
150
+ height.stopAnimation();
151
+ pinchScale.stopAnimation();
152
+ gestureRef.current = {
153
+ pinching: false,
154
+ startDistance: 0,
155
+ scale: 1
156
+ };
157
+ },
158
+ onPanResponderMove: (event, gesture) => {
159
+ const touches = event.nativeEvent.touches;
160
+ const state = gestureRef.current;
161
+ if (touches.length >= 2) {
162
+ const distance = touchDistance(touches);
163
+ if (!state.pinching || state.startDistance <= 0) {
164
+ state.pinching = true;
165
+ state.startDistance = distance;
166
+ } else {
167
+ state.scale = Math.min(1.8, Math.max(0.6, distance / state.startDistance));
168
+ pinchScale.setValue(state.scale);
169
+ }
170
+ }
171
+ position.setValue({
172
+ x: restRef.current.x + gesture.dx,
173
+ y: restRef.current.y + gesture.dy
174
+ });
175
+ },
176
+ onPanResponderRelease: (_event, gesture) => {
177
+ const area = stageRef.current;
178
+ const state = gestureRef.current;
179
+ if (state.pinching) {
180
+ const next = state.scale >= GROW_RATIO ? 'large' : state.scale <= SHRINK_RATIO ? 'small' : sizeRef.current;
181
+ if (next !== sizeRef.current) {
182
+ // Keep the size the finger left it at, then let the spring
183
+ // carry it to the new one, so the tile doesn't jump.
184
+ const from = PIP_TILE_SIZES[sizeRef.current];
185
+ width.setValue(from.width * state.scale);
186
+ height.setValue(from.height * state.scale);
187
+ pinchScale.setValue(1);
188
+ sizeRef.current = next;
189
+ setSize(next);
190
+ }
191
+ }
192
+ if (area) {
193
+ const tile = PIP_TILE_SIZES[sizeRef.current];
194
+ const centerX = restRef.current.x + gesture.dx + gesture.vx * FLICK_PROJECTION_MS + tile.width / 2;
195
+ const centerY = restRef.current.y + gesture.dy + gesture.vy * FLICK_PROJECTION_MS + tile.height / 2;
196
+ cornerRef.current = {
197
+ right: centerX > area.width / 2,
198
+ bottom: centerY > area.height / 2
199
+ };
200
+ }
201
+ settle(true);
202
+ },
203
+ onPanResponderTerminate: () => settle(true)
204
+ }).panHandlers, [position, width, height, pinchScale, settle]);
205
+ return {
206
+ /** Put on the area the tile moves within. */
207
+ onStageLayout,
208
+ panHandlers,
209
+ size,
210
+ /** Hidden until the stage is measured, so it never flashes at 0,0. */
211
+ style: {
212
+ position: 'absolute',
213
+ left: 0,
214
+ top: 0,
215
+ width,
216
+ height,
217
+ opacity: stage ? 1 : 0,
218
+ transform: [{
219
+ translateX: position.x
220
+ }, {
221
+ translateY: position.y
222
+ }, {
223
+ scale: pinchScale
224
+ }]
225
+ }
226
+ };
227
+ };
228
+ //# sourceMappingURL=usePipTile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","Animated","PanResponder","PIP_TILE_SIZES","small","width","height","large","MARGIN","FLICK_PROJECTION_MS","GROW_RATIO","SHRINK_RATIO","SPRING","useNativeDriver","damping","stiffness","mass","touchDistance","touches","a","b","Math","hypot","pageX","pageY","usePipTile","topInset","stage","setStage","size","setSize","stageRef","sizeRef","cornerRef","right","bottom","topInsetRef","current","position","ValueXY","x","y","Value","pinchScale","restRef","gestureRef","pinching","startDistance","scale","cornerPoint","corner","tileSize","area","tile","top","max","settle","animated","target","setValue","parallel","spring","toValue","start","onStageLayout","event","w","h","nativeEvent","layout","prev","panHandlers","create","onStartShouldSetPanResponderCapture","length","onStartShouldSetPanResponder","onMoveShouldSetPanResponderCapture","gesture","abs","dx","dy","onPanResponderTerminationRequest","onPanResponderGrant","stopAnimation","onPanResponderMove","state","distance","min","onPanResponderRelease","_event","next","from","centerX","vx","centerY","vy","onPanResponderTerminate","style","left","opacity","transform","translateX","translateY"],"sourceRoot":"../../../../src","sources":["components/VideoCalls/usePipTile.ts"],"mappings":"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","ignoreList":[]}
@@ -53,7 +53,9 @@ export const updateMessagesTillLast = async (rooms, client, batchSize = 5, maxFe
53
53
  source: 'background',
54
54
  selfApplied: true
55
55
  });
56
- if (!fetchedMessages.length) {
56
+
57
+ // undefined when the stanza was dropped (e.g. reconnecting).
58
+ if (!fetchedMessages?.length) {
57
59
  break;
58
60
  }
59
61
  counter++;
@@ -1 +1 @@
1
- {"version":3,"names":["store","addRoomMessages","setRoomMessages","checkUniqueUsers","updateMessagesTillLast","rooms","client","batchSize","maxFetchAttempts","messagesPerFetch","roomEntries","Object","keys","length","processedIndex","currentBatch","slice","lastTimestampsByJid","reduce","acc","current","room","getState","cached","Array","isArray","messages","newest","m","pending","id","Number","isFinite","Promise","all","map","jid","index","res","setTimeout","counter","isMessageFound","currentJidNewMessages","lastCachedMessagesTimeStamp","lastMessageId","undefined","fetchedMessages","getHistoryStanza","coalesceRoom","source","selfApplied","some","message","dispatch","roomJID","error","console","log"],"sourceRoot":"../../../src","sources":["helpers/updateMessagesTillLast.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["store","addRoomMessages","setRoomMessages","checkUniqueUsers","updateMessagesTillLast","rooms","client","batchSize","maxFetchAttempts","messagesPerFetch","roomEntries","Object","keys","length","processedIndex","currentBatch","slice","lastTimestampsByJid","reduce","acc","current","room","getState","cached","Array","isArray","messages","newest","m","pending","id","Number","isFinite","Promise","all","map","jid","index","res","setTimeout","counter","isMessageFound","currentJidNewMessages","lastCachedMessagesTimeStamp","lastMessageId","undefined","fetchedMessages","getHistoryStanza","coalesceRoom","source","selfApplied","some","message","dispatch","roomJID","error","console","log"],"sourceRoot":"../../../src","sources":["helpers/updateMessagesTillLast.tsx"],"mappings":"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","ignoreList":[]}
@@ -115,6 +115,15 @@ const en = {
115
115
  'call.action.stopCamera': 'Turn camera off',
116
116
  'call.action.startCamera': 'Turn camera on',
117
117
  'call.action.switchCamera': 'Switch camera',
118
+ 'call.action.swapVideo': 'Swap videos',
119
+ 'call.action.fillVideo': 'Stretch video',
120
+ 'call.action.fitVideo': 'Show whole video',
121
+ 'call.notification.ongoing': 'Ongoing call',
122
+ 'call.notification.ongoingVideo': 'Ongoing video call',
123
+ 'call.notification.mute': 'Mute',
124
+ 'call.notification.unmute': 'Unmute',
125
+ 'call.notification.cameraOn': 'Camera on',
126
+ 'call.notification.cameraOff': 'Camera off',
118
127
  'call.action.speakerOn': 'Turn speaker on',
119
128
  'call.action.speakerOff': 'Turn speaker off',
120
129
  'call.action.startAudioCall': 'Start audio call',
@@ -494,6 +503,15 @@ const fr = {
494
503
  'call.action.stopCamera': 'Désactiver la caméra',
495
504
  'call.action.startCamera': 'Activer la caméra',
496
505
  'call.action.switchCamera': 'Changer de caméra',
506
+ 'call.action.swapVideo': 'Inverser les vidéos',
507
+ 'call.action.fillVideo': 'Étirer la vidéo',
508
+ 'call.action.fitVideo': 'Afficher toute la vidéo',
509
+ 'call.notification.ongoing': 'Appel en cours',
510
+ 'call.notification.ongoingVideo': 'Appel vidéo en cours',
511
+ 'call.notification.mute': 'Couper',
512
+ 'call.notification.unmute': 'Réactiver',
513
+ 'call.notification.cameraOn': 'Caméra on',
514
+ 'call.notification.cameraOff': 'Caméra off',
497
515
  'call.action.speakerOn': 'Activer le haut-parleur',
498
516
  'call.action.speakerOff': 'Désactiver le haut-parleur',
499
517
  'call.action.startAudioCall': 'Démarrer un appel audio',
@@ -873,6 +891,15 @@ const es = {
873
891
  'call.action.stopCamera': 'Apagar la cámara',
874
892
  'call.action.startCamera': 'Encender la cámara',
875
893
  'call.action.switchCamera': 'Cambiar de cámara',
894
+ 'call.action.swapVideo': 'Intercambiar vídeos',
895
+ 'call.action.fillVideo': 'Ampliar vídeo',
896
+ 'call.action.fitVideo': 'Ver vídeo completo',
897
+ 'call.notification.ongoing': 'Llamada en curso',
898
+ 'call.notification.ongoingVideo': 'Videollamada en curso',
899
+ 'call.notification.mute': 'Silenciar',
900
+ 'call.notification.unmute': 'Activar',
901
+ 'call.notification.cameraOn': 'Cámara on',
902
+ 'call.notification.cameraOff': 'Cámara off',
876
903
  'call.action.speakerOn': 'Activar el altavoz',
877
904
  'call.action.speakerOff': 'Desactivar el altavoz',
878
905
  'call.action.startAudioCall': 'Iniciar llamada de audio',
@@ -1252,6 +1279,15 @@ const pt = {
1252
1279
  'call.action.stopCamera': 'Desligar a câmara',
1253
1280
  'call.action.startCamera': 'Ligar a câmara',
1254
1281
  'call.action.switchCamera': 'Mudar de câmara',
1282
+ 'call.action.swapVideo': 'Trocar vídeos',
1283
+ 'call.action.fillVideo': 'Esticar vídeo',
1284
+ 'call.action.fitVideo': 'Mostrar vídeo inteiro',
1285
+ 'call.notification.ongoing': 'Chamada em andamento',
1286
+ 'call.notification.ongoingVideo': 'Videochamada em andamento',
1287
+ 'call.notification.mute': 'Silenciar',
1288
+ 'call.notification.unmute': 'Ativar som',
1289
+ 'call.notification.cameraOn': 'Ligar câmera',
1290
+ 'call.notification.cameraOff': 'Desligar câmera',
1255
1291
  'call.action.speakerOn': 'Ligar o altifalante',
1256
1292
  'call.action.speakerOff': 'Desligar o altifalante',
1257
1293
  'call.action.startAudioCall': 'Iniciar chamada de áudio',
@@ -1631,6 +1667,15 @@ const ht = {
1631
1667
  'call.action.stopCamera': 'Etenn kamera a',
1632
1668
  'call.action.startCamera': 'Limen kamera a',
1633
1669
  'call.action.switchCamera': 'Chanje kamera',
1670
+ 'call.action.swapVideo': 'Chanje videyo yo',
1671
+ 'call.action.fillVideo': 'Lonje videyo a',
1672
+ 'call.action.fitVideo': 'Montre tout videyo a',
1673
+ 'call.notification.ongoing': 'Apèl k ap fèt',
1674
+ 'call.notification.ongoingVideo': 'Apèl videyo k ap fèt',
1675
+ 'call.notification.mute': 'Fèmen mikwo',
1676
+ 'call.notification.unmute': 'Louvri mikwo',
1677
+ 'call.notification.cameraOn': 'Limen kamera',
1678
+ 'call.notification.cameraOff': 'Etenn kamera',
1634
1679
  'call.action.speakerOn': 'Limen opalè a',
1635
1680
  'call.action.speakerOff': 'Etenn opalè a',
1636
1681
  'call.action.startAudioCall': 'Kòmanse yon apèl odyo',
@@ -2010,6 +2055,15 @@ const zh = {
2010
2055
  'call.action.stopCamera': '关闭摄像头',
2011
2056
  'call.action.startCamera': '打开摄像头',
2012
2057
  'call.action.switchCamera': '切换摄像头',
2058
+ 'call.action.swapVideo': '切换画面',
2059
+ 'call.action.fillVideo': '铺满画面',
2060
+ 'call.action.fitVideo': '显示完整画面',
2061
+ 'call.notification.ongoing': '通话中',
2062
+ 'call.notification.ongoingVideo': '视频通话中',
2063
+ 'call.notification.mute': '静音',
2064
+ 'call.notification.unmute': '取消静音',
2065
+ 'call.notification.cameraOn': '开启摄像头',
2066
+ 'call.notification.cameraOff': '关闭摄像头',
2013
2067
  'call.action.speakerOn': '打开扬声器',
2014
2068
  'call.action.speakerOff': '关闭扬声器',
2015
2069
  'call.action.startAudioCall': '发起语音通话',