@ethora/chat-component-rn 26.10.10 → 26.10.11

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 (483) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +125 -0
  3. package/lib/commonjs/booking/index.js +44 -0
  4. package/lib/commonjs/booking/index.js.map +1 -0
  5. package/lib/commonjs/booking/pendingScheduledCall.js +275 -0
  6. package/lib/commonjs/booking/pendingScheduledCall.js.map +1 -0
  7. package/lib/commonjs/booking/scheduleForm.js +91 -0
  8. package/lib/commonjs/booking/scheduleForm.js.map +1 -0
  9. package/lib/commonjs/booking/scheduledCall.js +141 -0
  10. package/lib/commonjs/booking/scheduledCall.js.map +1 -0
  11. package/lib/commonjs/booking/scheduledCallActions.js +128 -0
  12. package/lib/commonjs/booking/scheduledCallActions.js.map +1 -0
  13. package/lib/commonjs/booking/scheduledCallLink.js +143 -0
  14. package/lib/commonjs/booking/scheduledCallLink.js.map +1 -0
  15. package/lib/commonjs/booking/scheduledCallStore.js +64 -0
  16. package/lib/commonjs/booking/scheduledCallStore.js.map +1 -0
  17. package/lib/commonjs/booking/startRoomCall.js +84 -0
  18. package/lib/commonjs/booking/startRoomCall.js.map +1 -0
  19. package/lib/commonjs/calls/callBusy.js +18 -0
  20. package/lib/commonjs/calls/callBusy.js.map +1 -0
  21. package/lib/commonjs/calls/callDisplay.js +73 -0
  22. package/lib/commonjs/calls/callDisplay.js.map +1 -0
  23. package/lib/commonjs/calls/callMode.js +175 -0
  24. package/lib/commonjs/calls/callMode.js.map +1 -0
  25. package/lib/commonjs/calls/declineReport.js +20 -0
  26. package/lib/commonjs/calls/declineReport.js.map +1 -0
  27. package/lib/commonjs/calls/p2p/P2PCallController.js +724 -0
  28. package/lib/commonjs/calls/p2p/P2PCallController.js.map +1 -0
  29. package/lib/commonjs/calls/p2p/icePolicy.js +107 -0
  30. package/lib/commonjs/calls/p2p/icePolicy.js.map +1 -0
  31. package/lib/commonjs/calls/p2p/negotiator.js +202 -0
  32. package/lib/commonjs/calls/p2p/negotiator.js.map +1 -0
  33. package/lib/commonjs/calls/p2p/p2pRuntime.js +147 -0
  34. package/lib/commonjs/calls/p2p/p2pRuntime.js.map +1 -0
  35. package/lib/commonjs/calls/p2p/signalInbox.js +98 -0
  36. package/lib/commonjs/calls/p2p/signalInbox.js.map +1 -0
  37. package/lib/commonjs/calls/p2p/signalStanza.js +141 -0
  38. package/lib/commonjs/calls/p2p/signalStanza.js.map +1 -0
  39. package/lib/commonjs/calls/p2p/webrtcRuntime.js +53 -0
  40. package/lib/commonjs/calls/p2p/webrtcRuntime.js.map +1 -0
  41. package/lib/commonjs/calls/senderTrust.js +43 -0
  42. package/lib/commonjs/calls/senderTrust.js.map +1 -0
  43. package/lib/commonjs/calls/startCall.js +51 -0
  44. package/lib/commonjs/calls/startCall.js.map +1 -0
  45. package/lib/commonjs/components/Booking/BookingIcons.js +55 -0
  46. package/lib/commonjs/components/Booking/BookingIcons.js.map +1 -0
  47. package/lib/commonjs/components/Booking/ScheduleCallButton.js +64 -0
  48. package/lib/commonjs/components/Booking/ScheduleCallButton.js.map +1 -0
  49. package/lib/commonjs/components/Booking/ScheduleCallSheet.js +351 -0
  50. package/lib/commonjs/components/Booking/ScheduleCallSheet.js.map +1 -0
  51. package/lib/commonjs/components/Booking/ScheduledCallCard.js +203 -0
  52. package/lib/commonjs/components/Booking/ScheduledCallCard.js.map +1 -0
  53. package/lib/commonjs/components/Booking/ScheduledCallHost.js +23 -0
  54. package/lib/commonjs/components/Booking/ScheduledCallHost.js.map +1 -0
  55. package/lib/commonjs/components/Booking/ScheduledCallMessage.js +55 -0
  56. package/lib/commonjs/components/Booking/ScheduledCallMessage.js.map +1 -0
  57. package/lib/commonjs/components/Booking/ScheduledCallPreJoin.js +235 -0
  58. package/lib/commonjs/components/Booking/ScheduledCallPreJoin.js.map +1 -0
  59. package/lib/commonjs/components/Booking/bookingShared.js +305 -0
  60. package/lib/commonjs/components/Booking/bookingShared.js.map +1 -0
  61. package/lib/commonjs/components/MainComponents/ChatHeader.js +2 -1
  62. package/lib/commonjs/components/MainComponents/ChatHeader.js.map +1 -1
  63. package/lib/commonjs/components/MainComponents/LanguageSelectorButton.js +5 -2
  64. package/lib/commonjs/components/MainComponents/LanguageSelectorButton.js.map +1 -1
  65. package/lib/commonjs/components/MainComponents/LanguageSelectorModal.js +6 -3
  66. package/lib/commonjs/components/MainComponents/LanguageSelectorModal.js.map +1 -1
  67. package/lib/commonjs/components/MainComponents/MessageContainer.js +13 -0
  68. package/lib/commonjs/components/MainComponents/MessageContainer.js.map +1 -1
  69. package/lib/commonjs/components/MainComponents/ReduxWrapper.js +10 -0
  70. package/lib/commonjs/components/MainComponents/ReduxWrapper.js.map +1 -1
  71. package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js +19 -15
  72. package/lib/commonjs/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -1
  73. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js +15 -8
  74. package/lib/commonjs/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  75. package/lib/commonjs/components/Modals/UserSettingsModal/LanguageCard.js +1 -1
  76. package/lib/commonjs/components/Modals/UserSettingsModal/LanguageCard.js.map +1 -1
  77. package/lib/commonjs/components/VideoCalls/ActiveCallBar.js +3 -2
  78. package/lib/commonjs/components/VideoCalls/ActiveCallBar.js.map +1 -1
  79. package/lib/commonjs/components/VideoCalls/CallButtons.js +19 -11
  80. package/lib/commonjs/components/VideoCalls/CallButtons.js.map +1 -1
  81. package/lib/commonjs/components/VideoCalls/CallControlBar.js +119 -0
  82. package/lib/commonjs/components/VideoCalls/CallControlBar.js.map +1 -0
  83. package/lib/commonjs/components/VideoCalls/CallVideo.js +49 -0
  84. package/lib/commonjs/components/VideoCalls/CallVideo.js.map +1 -0
  85. package/lib/commonjs/components/VideoCalls/GroupCallView.js +281 -0
  86. package/lib/commonjs/components/VideoCalls/GroupCallView.js.map +1 -0
  87. package/lib/commonjs/components/VideoCalls/P2PCallRunner.js +151 -0
  88. package/lib/commonjs/components/VideoCalls/P2PCallRunner.js.map +1 -0
  89. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js +38 -14
  90. package/lib/commonjs/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  91. package/lib/commonjs/components/VideoCalls/VideoCallSession.js +57 -128
  92. package/lib/commonjs/components/VideoCalls/VideoCallSession.js.map +1 -1
  93. package/lib/commonjs/components/VideoCalls/callActions.js +3 -0
  94. package/lib/commonjs/components/VideoCalls/callActions.js.map +1 -1
  95. package/lib/commonjs/components/VideoCalls/callElapsed.js +38 -0
  96. package/lib/commonjs/components/VideoCalls/callElapsed.js.map +1 -0
  97. package/lib/commonjs/components/VideoCalls/callLive.js +15 -0
  98. package/lib/commonjs/components/VideoCalls/callLive.js.map +1 -0
  99. package/lib/commonjs/components/VideoCalls/callSessionController.js +81 -24
  100. package/lib/commonjs/components/VideoCalls/callSessionController.js.map +1 -1
  101. package/lib/commonjs/components/VideoCalls/callSessionTypes.js +41 -0
  102. package/lib/commonjs/components/VideoCalls/callSessionTypes.js.map +1 -0
  103. package/lib/commonjs/components/VideoCalls/groupLayout.js +43 -0
  104. package/lib/commonjs/components/VideoCalls/groupLayout.js.map +1 -0
  105. package/lib/commonjs/components/VideoCalls/p2pCallSession.js +272 -0
  106. package/lib/commonjs/components/VideoCalls/p2pCallSession.js.map +1 -0
  107. package/lib/commonjs/components/VideoCalls/useCallKeep.js +7 -2
  108. package/lib/commonjs/components/VideoCalls/useCallKeep.js.map +1 -1
  109. package/lib/commonjs/components/VideoCalls/useOngoingCallNotification.js +2 -1
  110. package/lib/commonjs/components/VideoCalls/useOngoingCallNotification.js.map +1 -1
  111. package/lib/commonjs/context/xmppProvider.js +2 -1
  112. package/lib/commonjs/context/xmppProvider.js.map +1 -1
  113. package/lib/commonjs/helpers/callPush.js +3 -1
  114. package/lib/commonjs/helpers/callPush.js.map +1 -1
  115. package/lib/commonjs/helpers/incomingCallFromPush.js +63 -7
  116. package/lib/commonjs/helpers/incomingCallFromPush.js.map +1 -1
  117. package/lib/commonjs/helpers/pushPayload.js +5 -0
  118. package/lib/commonjs/helpers/pushPayload.js.map +1 -1
  119. package/lib/commonjs/helpers/reportRoom.js +76 -0
  120. package/lib/commonjs/helpers/reportRoom.js.map +1 -0
  121. package/lib/commonjs/i18n/strings.js +444 -0
  122. package/lib/commonjs/i18n/strings.js.map +1 -1
  123. package/lib/commonjs/main.js +93 -0
  124. package/lib/commonjs/main.js.map +1 -1
  125. package/lib/commonjs/networking/api-requests/callState.api.js +75 -0
  126. package/lib/commonjs/networking/api-requests/callState.api.js.map +1 -0
  127. package/lib/commonjs/networking/api-requests/push.api.js +29 -6
  128. package/lib/commonjs/networking/api-requests/push.api.js.map +1 -1
  129. package/lib/commonjs/networking/api-requests/rooms.api.js +8 -2
  130. package/lib/commonjs/networking/api-requests/rooms.api.js.map +1 -1
  131. package/lib/commonjs/networking/api-requests/scheduledCalls.api.js +141 -0
  132. package/lib/commonjs/networking/api-requests/scheduledCalls.api.js.map +1 -0
  133. package/lib/commonjs/networking/callTokenStanza.js +210 -50
  134. package/lib/commonjs/networking/callTokenStanza.js.map +1 -1
  135. package/lib/commonjs/roomStore/callSlice.js +59 -4
  136. package/lib/commonjs/roomStore/callSlice.js.map +1 -1
  137. package/lib/commonjs/services/appBadge.js +80 -0
  138. package/lib/commonjs/services/appBadge.js.map +1 -0
  139. package/lib/commonjs/services/languageSettings.js +47 -15
  140. package/lib/commonjs/services/languageSettings.js.map +1 -1
  141. package/lib/commonjs/services/pushRegistration.js +21 -5
  142. package/lib/commonjs/services/pushRegistration.js.map +1 -1
  143. package/lib/commonjs/version.js +1 -1
  144. package/lib/module/booking/index.js +5 -0
  145. package/lib/module/booking/index.js.map +1 -0
  146. package/lib/module/booking/pendingScheduledCall.js +261 -0
  147. package/lib/module/booking/pendingScheduledCall.js.map +1 -0
  148. package/lib/module/booking/scheduleForm.js +79 -0
  149. package/lib/module/booking/scheduleForm.js.map +1 -0
  150. package/lib/module/booking/scheduledCall.js +129 -0
  151. package/lib/module/booking/scheduledCall.js.map +1 -0
  152. package/lib/module/booking/scheduledCallActions.js +118 -0
  153. package/lib/module/booking/scheduledCallActions.js.map +1 -0
  154. package/lib/module/booking/scheduledCallLink.js +136 -0
  155. package/lib/module/booking/scheduledCallLink.js.map +1 -0
  156. package/lib/module/booking/scheduledCallStore.js +60 -0
  157. package/lib/module/booking/scheduledCallStore.js.map +1 -0
  158. package/lib/module/booking/startRoomCall.js +80 -0
  159. package/lib/module/booking/startRoomCall.js.map +1 -0
  160. package/lib/module/calls/callBusy.js +13 -0
  161. package/lib/module/calls/callBusy.js.map +1 -0
  162. package/lib/module/calls/callDisplay.js +65 -0
  163. package/lib/module/calls/callDisplay.js.map +1 -0
  164. package/lib/module/calls/callMode.js +168 -0
  165. package/lib/module/calls/callMode.js.map +1 -0
  166. package/lib/module/calls/declineReport.js +16 -0
  167. package/lib/module/calls/declineReport.js.map +1 -0
  168. package/lib/module/calls/p2p/P2PCallController.js +718 -0
  169. package/lib/module/calls/p2p/P2PCallController.js.map +1 -0
  170. package/lib/module/calls/p2p/icePolicy.js +102 -0
  171. package/lib/module/calls/p2p/icePolicy.js.map +1 -0
  172. package/lib/module/calls/p2p/negotiator.js +197 -0
  173. package/lib/module/calls/p2p/negotiator.js.map +1 -0
  174. package/lib/module/calls/p2p/p2pRuntime.js +137 -0
  175. package/lib/module/calls/p2p/p2pRuntime.js.map +1 -0
  176. package/lib/module/calls/p2p/signalInbox.js +93 -0
  177. package/lib/module/calls/p2p/signalInbox.js.map +1 -0
  178. package/lib/module/calls/p2p/signalStanza.js +135 -0
  179. package/lib/module/calls/p2p/signalStanza.js.map +1 -0
  180. package/lib/module/calls/p2p/webrtcRuntime.js +46 -0
  181. package/lib/module/calls/p2p/webrtcRuntime.js.map +1 -0
  182. package/lib/module/calls/senderTrust.js +38 -0
  183. package/lib/module/calls/senderTrust.js.map +1 -0
  184. package/lib/module/calls/startCall.js +47 -0
  185. package/lib/module/calls/startCall.js.map +1 -0
  186. package/lib/module/components/Booking/BookingIcons.js +48 -0
  187. package/lib/module/components/Booking/BookingIcons.js.map +1 -0
  188. package/lib/module/components/Booking/ScheduleCallButton.js +59 -0
  189. package/lib/module/components/Booking/ScheduleCallButton.js.map +1 -0
  190. package/lib/module/components/Booking/ScheduleCallSheet.js +345 -0
  191. package/lib/module/components/Booking/ScheduleCallSheet.js.map +1 -0
  192. package/lib/module/components/Booking/ScheduledCallCard.js +197 -0
  193. package/lib/module/components/Booking/ScheduledCallCard.js.map +1 -0
  194. package/lib/module/components/Booking/ScheduledCallHost.js +18 -0
  195. package/lib/module/components/Booking/ScheduledCallHost.js.map +1 -0
  196. package/lib/module/components/Booking/ScheduledCallMessage.js +48 -0
  197. package/lib/module/components/Booking/ScheduledCallMessage.js.map +1 -0
  198. package/lib/module/components/Booking/ScheduledCallPreJoin.js +229 -0
  199. package/lib/module/components/Booking/ScheduledCallPreJoin.js.map +1 -0
  200. package/lib/module/components/Booking/bookingShared.js +291 -0
  201. package/lib/module/components/Booking/bookingShared.js.map +1 -0
  202. package/lib/module/components/MainComponents/ChatHeader.js +2 -1
  203. package/lib/module/components/MainComponents/ChatHeader.js.map +1 -1
  204. package/lib/module/components/MainComponents/LanguageSelectorButton.js +5 -2
  205. package/lib/module/components/MainComponents/LanguageSelectorButton.js.map +1 -1
  206. package/lib/module/components/MainComponents/LanguageSelectorModal.js +7 -4
  207. package/lib/module/components/MainComponents/LanguageSelectorModal.js.map +1 -1
  208. package/lib/module/components/MainComponents/MessageContainer.js +13 -0
  209. package/lib/module/components/MainComponents/MessageContainer.js.map +1 -1
  210. package/lib/module/components/MainComponents/ReduxWrapper.js +10 -0
  211. package/lib/module/components/MainComponents/ReduxWrapper.js.map +1 -1
  212. package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js +21 -15
  213. package/lib/module/components/Modals/ChatProfileModal/ReportChatModal.js.map +1 -1
  214. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js +17 -10
  215. package/lib/module/components/Modals/UserProfileModal/UserProfileModal.js.map +1 -1
  216. package/lib/module/components/Modals/UserSettingsModal/LanguageCard.js +1 -1
  217. package/lib/module/components/Modals/UserSettingsModal/LanguageCard.js.map +1 -1
  218. package/lib/module/components/VideoCalls/ActiveCallBar.js +3 -2
  219. package/lib/module/components/VideoCalls/ActiveCallBar.js.map +1 -1
  220. package/lib/module/components/VideoCalls/CallButtons.js +19 -11
  221. package/lib/module/components/VideoCalls/CallButtons.js.map +1 -1
  222. package/lib/module/components/VideoCalls/CallControlBar.js +113 -0
  223. package/lib/module/components/VideoCalls/CallControlBar.js.map +1 -0
  224. package/lib/module/components/VideoCalls/CallVideo.js +43 -0
  225. package/lib/module/components/VideoCalls/CallVideo.js.map +1 -0
  226. package/lib/module/components/VideoCalls/GroupCallView.js +275 -0
  227. package/lib/module/components/VideoCalls/GroupCallView.js.map +1 -0
  228. package/lib/module/components/VideoCalls/P2PCallRunner.js +147 -0
  229. package/lib/module/components/VideoCalls/P2PCallRunner.js.map +1 -0
  230. package/lib/module/components/VideoCalls/VideoCallOverlay.js +38 -14
  231. package/lib/module/components/VideoCalls/VideoCallOverlay.js.map +1 -1
  232. package/lib/module/components/VideoCalls/VideoCallSession.js +46 -127
  233. package/lib/module/components/VideoCalls/VideoCallSession.js.map +1 -1
  234. package/lib/module/components/VideoCalls/callActions.js +3 -0
  235. package/lib/module/components/VideoCalls/callActions.js.map +1 -1
  236. package/lib/module/components/VideoCalls/callElapsed.js +33 -0
  237. package/lib/module/components/VideoCalls/callElapsed.js.map +1 -0
  238. package/lib/module/components/VideoCalls/callLive.js +10 -0
  239. package/lib/module/components/VideoCalls/callLive.js.map +1 -0
  240. package/lib/module/components/VideoCalls/callSessionController.js +80 -24
  241. package/lib/module/components/VideoCalls/callSessionController.js.map +1 -1
  242. package/lib/module/components/VideoCalls/callSessionTypes.js +37 -0
  243. package/lib/module/components/VideoCalls/callSessionTypes.js.map +1 -0
  244. package/lib/module/components/VideoCalls/groupLayout.js +36 -0
  245. package/lib/module/components/VideoCalls/groupLayout.js.map +1 -0
  246. package/lib/module/components/VideoCalls/p2pCallSession.js +256 -0
  247. package/lib/module/components/VideoCalls/p2pCallSession.js.map +1 -0
  248. package/lib/module/components/VideoCalls/useCallKeep.js +8 -2
  249. package/lib/module/components/VideoCalls/useCallKeep.js.map +1 -1
  250. package/lib/module/components/VideoCalls/useOngoingCallNotification.js +2 -1
  251. package/lib/module/components/VideoCalls/useOngoingCallNotification.js.map +1 -1
  252. package/lib/module/context/xmppProvider.js +2 -1
  253. package/lib/module/context/xmppProvider.js.map +1 -1
  254. package/lib/module/helpers/callPush.js +3 -1
  255. package/lib/module/helpers/callPush.js.map +1 -1
  256. package/lib/module/helpers/incomingCallFromPush.js +63 -7
  257. package/lib/module/helpers/incomingCallFromPush.js.map +1 -1
  258. package/lib/module/helpers/pushPayload.js +5 -0
  259. package/lib/module/helpers/pushPayload.js.map +1 -1
  260. package/lib/module/helpers/reportRoom.js +70 -0
  261. package/lib/module/helpers/reportRoom.js.map +1 -0
  262. package/lib/module/i18n/strings.js +444 -0
  263. package/lib/module/i18n/strings.js.map +1 -1
  264. package/lib/module/main.js +5 -0
  265. package/lib/module/main.js.map +1 -1
  266. package/lib/module/networking/api-requests/callState.api.js +66 -0
  267. package/lib/module/networking/api-requests/callState.api.js.map +1 -0
  268. package/lib/module/networking/api-requests/push.api.js +29 -6
  269. package/lib/module/networking/api-requests/push.api.js.map +1 -1
  270. package/lib/module/networking/api-requests/rooms.api.js +8 -2
  271. package/lib/module/networking/api-requests/rooms.api.js.map +1 -1
  272. package/lib/module/networking/api-requests/scheduledCalls.api.js +130 -0
  273. package/lib/module/networking/api-requests/scheduledCalls.api.js.map +1 -0
  274. package/lib/module/networking/callTokenStanza.js +210 -50
  275. package/lib/module/networking/callTokenStanza.js.map +1 -1
  276. package/lib/module/roomStore/callSlice.js +57 -3
  277. package/lib/module/roomStore/callSlice.js.map +1 -1
  278. package/lib/module/services/appBadge.js +74 -0
  279. package/lib/module/services/appBadge.js.map +1 -0
  280. package/lib/module/services/languageSettings.js +44 -13
  281. package/lib/module/services/languageSettings.js.map +1 -1
  282. package/lib/module/services/pushRegistration.js +21 -5
  283. package/lib/module/services/pushRegistration.js.map +1 -1
  284. package/lib/module/version.js +1 -1
  285. package/lib/typescript/booking/index.d.ts +3 -0
  286. package/lib/typescript/booking/index.d.ts.map +1 -0
  287. package/lib/typescript/booking/pendingScheduledCall.d.ts +80 -0
  288. package/lib/typescript/booking/pendingScheduledCall.d.ts.map +1 -0
  289. package/lib/typescript/booking/scheduleForm.d.ts +28 -0
  290. package/lib/typescript/booking/scheduleForm.d.ts.map +1 -0
  291. package/lib/typescript/booking/scheduledCall.d.ts +52 -0
  292. package/lib/typescript/booking/scheduledCall.d.ts.map +1 -0
  293. package/lib/typescript/booking/scheduledCallActions.d.ts +22 -0
  294. package/lib/typescript/booking/scheduledCallActions.d.ts.map +1 -0
  295. package/lib/typescript/booking/scheduledCallLink.d.ts +37 -0
  296. package/lib/typescript/booking/scheduledCallLink.d.ts.map +1 -0
  297. package/lib/typescript/booking/scheduledCallStore.d.ts +47 -0
  298. package/lib/typescript/booking/scheduledCallStore.d.ts.map +1 -0
  299. package/lib/typescript/booking/startRoomCall.d.ts +12 -0
  300. package/lib/typescript/booking/startRoomCall.d.ts.map +1 -0
  301. package/lib/typescript/calls/callBusy.d.ts +9 -0
  302. package/lib/typescript/calls/callBusy.d.ts.map +1 -0
  303. package/lib/typescript/calls/callDisplay.d.ts +23 -0
  304. package/lib/typescript/calls/callDisplay.d.ts.map +1 -0
  305. package/lib/typescript/calls/callMode.d.ts +106 -0
  306. package/lib/typescript/calls/callMode.d.ts.map +1 -0
  307. package/lib/typescript/calls/declineReport.d.ts +11 -0
  308. package/lib/typescript/calls/declineReport.d.ts.map +1 -0
  309. package/lib/typescript/calls/p2p/P2PCallController.d.ts +150 -0
  310. package/lib/typescript/calls/p2p/P2PCallController.d.ts.map +1 -0
  311. package/lib/typescript/calls/p2p/icePolicy.d.ts +37 -0
  312. package/lib/typescript/calls/p2p/icePolicy.d.ts.map +1 -0
  313. package/lib/typescript/calls/p2p/negotiator.d.ts +57 -0
  314. package/lib/typescript/calls/p2p/negotiator.d.ts.map +1 -0
  315. package/lib/typescript/calls/p2p/p2pRuntime.d.ts +41 -0
  316. package/lib/typescript/calls/p2p/p2pRuntime.d.ts.map +1 -0
  317. package/lib/typescript/calls/p2p/signalInbox.d.ts +35 -0
  318. package/lib/typescript/calls/p2p/signalInbox.d.ts.map +1 -0
  319. package/lib/typescript/calls/p2p/signalStanza.d.ts +52 -0
  320. package/lib/typescript/calls/p2p/signalStanza.d.ts.map +1 -0
  321. package/lib/typescript/calls/p2p/webrtcRuntime.d.ts +32 -0
  322. package/lib/typescript/calls/p2p/webrtcRuntime.d.ts.map +1 -0
  323. package/lib/typescript/calls/senderTrust.d.ts +8 -0
  324. package/lib/typescript/calls/senderTrust.d.ts.map +1 -0
  325. package/lib/typescript/calls/startCall.d.ts +17 -0
  326. package/lib/typescript/calls/startCall.d.ts.map +1 -0
  327. package/lib/typescript/components/Booking/BookingIcons.d.ts +9 -0
  328. package/lib/typescript/components/Booking/BookingIcons.d.ts.map +1 -0
  329. package/lib/typescript/components/Booking/ScheduleCallButton.d.ts +11 -0
  330. package/lib/typescript/components/Booking/ScheduleCallButton.d.ts.map +1 -0
  331. package/lib/typescript/components/Booking/ScheduleCallSheet.d.ts +4 -0
  332. package/lib/typescript/components/Booking/ScheduleCallSheet.d.ts.map +1 -0
  333. package/lib/typescript/components/Booking/ScheduledCallCard.d.ts +14 -0
  334. package/lib/typescript/components/Booking/ScheduledCallCard.d.ts.map +1 -0
  335. package/lib/typescript/components/Booking/ScheduledCallHost.d.ts +10 -0
  336. package/lib/typescript/components/Booking/ScheduledCallHost.d.ts.map +1 -0
  337. package/lib/typescript/components/Booking/ScheduledCallMessage.d.ts +20 -0
  338. package/lib/typescript/components/Booking/ScheduledCallMessage.d.ts.map +1 -0
  339. package/lib/typescript/components/Booking/ScheduledCallPreJoin.d.ts +8 -0
  340. package/lib/typescript/components/Booking/ScheduledCallPreJoin.d.ts.map +1 -0
  341. package/lib/typescript/components/Booking/bookingShared.d.ts +199 -0
  342. package/lib/typescript/components/Booking/bookingShared.d.ts.map +1 -0
  343. package/lib/typescript/components/MainComponents/ChatHeader.d.ts.map +1 -1
  344. package/lib/typescript/components/MainComponents/LanguageSelectorButton.d.ts +3 -1
  345. package/lib/typescript/components/MainComponents/LanguageSelectorButton.d.ts.map +1 -1
  346. package/lib/typescript/components/MainComponents/LanguageSelectorModal.d.ts.map +1 -1
  347. package/lib/typescript/components/MainComponents/MessageContainer.d.ts.map +1 -1
  348. package/lib/typescript/components/MainComponents/ReduxWrapper.d.ts.map +1 -1
  349. package/lib/typescript/components/Modals/ChatProfileModal/ReportChatModal.d.ts.map +1 -1
  350. package/lib/typescript/components/Modals/UserProfileModal/UserProfileModal.d.ts.map +1 -1
  351. package/lib/typescript/components/Modals/UserSettingsModal/LanguageCard.d.ts.map +1 -1
  352. package/lib/typescript/components/VideoCalls/ActiveCallBar.d.ts.map +1 -1
  353. package/lib/typescript/components/VideoCalls/CallButtons.d.ts +2 -1
  354. package/lib/typescript/components/VideoCalls/CallButtons.d.ts.map +1 -1
  355. package/lib/typescript/components/VideoCalls/CallControlBar.d.ts +17 -0
  356. package/lib/typescript/components/VideoCalls/CallControlBar.d.ts.map +1 -0
  357. package/lib/typescript/components/VideoCalls/CallVideo.d.ts +23 -0
  358. package/lib/typescript/components/VideoCalls/CallVideo.d.ts.map +1 -0
  359. package/lib/typescript/components/VideoCalls/GroupCallView.d.ts +22 -0
  360. package/lib/typescript/components/VideoCalls/GroupCallView.d.ts.map +1 -0
  361. package/lib/typescript/components/VideoCalls/P2PCallRunner.d.ts +2 -0
  362. package/lib/typescript/components/VideoCalls/P2PCallRunner.d.ts.map +1 -0
  363. package/lib/typescript/components/VideoCalls/VideoCallOverlay.d.ts.map +1 -1
  364. package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts +10 -12
  365. package/lib/typescript/components/VideoCalls/VideoCallSession.d.ts.map +1 -1
  366. package/lib/typescript/components/VideoCalls/callActions.d.ts.map +1 -1
  367. package/lib/typescript/components/VideoCalls/callElapsed.d.ts +8 -0
  368. package/lib/typescript/components/VideoCalls/callElapsed.d.ts.map +1 -0
  369. package/lib/typescript/components/VideoCalls/callLive.d.ts +9 -0
  370. package/lib/typescript/components/VideoCalls/callLive.d.ts.map +1 -0
  371. package/lib/typescript/components/VideoCalls/callSessionController.d.ts +10 -31
  372. package/lib/typescript/components/VideoCalls/callSessionController.d.ts.map +1 -1
  373. package/lib/typescript/components/VideoCalls/callSessionTypes.d.ts +60 -0
  374. package/lib/typescript/components/VideoCalls/callSessionTypes.d.ts.map +1 -0
  375. package/lib/typescript/components/VideoCalls/groupLayout.d.ts +23 -0
  376. package/lib/typescript/components/VideoCalls/groupLayout.d.ts.map +1 -0
  377. package/lib/typescript/components/VideoCalls/p2pCallSession.d.ts +31 -0
  378. package/lib/typescript/components/VideoCalls/p2pCallSession.d.ts.map +1 -0
  379. package/lib/typescript/components/VideoCalls/useCallKeep.d.ts.map +1 -1
  380. package/lib/typescript/components/VideoCalls/useOngoingCallNotification.d.ts.map +1 -1
  381. package/lib/typescript/context/xmppProvider.d.ts.map +1 -1
  382. package/lib/typescript/helpers/callPush.d.ts +11 -1
  383. package/lib/typescript/helpers/callPush.d.ts.map +1 -1
  384. package/lib/typescript/helpers/incomingCallFromPush.d.ts.map +1 -1
  385. package/lib/typescript/helpers/pushPayload.d.ts +1 -1
  386. package/lib/typescript/helpers/pushPayload.d.ts.map +1 -1
  387. package/lib/typescript/helpers/reportRoom.d.ts +19 -0
  388. package/lib/typescript/helpers/reportRoom.d.ts.map +1 -0
  389. package/lib/typescript/i18n/strings.d.ts.map +1 -1
  390. package/lib/typescript/main.d.ts +6 -1
  391. package/lib/typescript/main.d.ts.map +1 -1
  392. package/lib/typescript/networking/api-requests/callState.api.d.ts +25 -0
  393. package/lib/typescript/networking/api-requests/callState.api.d.ts.map +1 -0
  394. package/lib/typescript/networking/api-requests/push.api.d.ts +9 -2
  395. package/lib/typescript/networking/api-requests/push.api.d.ts.map +1 -1
  396. package/lib/typescript/networking/api-requests/rooms.api.d.ts +2 -1
  397. package/lib/typescript/networking/api-requests/rooms.api.d.ts.map +1 -1
  398. package/lib/typescript/networking/api-requests/scheduledCalls.api.d.ts +86 -0
  399. package/lib/typescript/networking/api-requests/scheduledCalls.api.d.ts.map +1 -0
  400. package/lib/typescript/networking/callTokenStanza.d.ts.map +1 -1
  401. package/lib/typescript/roomStore/callSlice.d.ts +23 -1
  402. package/lib/typescript/roomStore/callSlice.d.ts.map +1 -1
  403. package/lib/typescript/services/appBadge.d.ts +3 -0
  404. package/lib/typescript/services/appBadge.d.ts.map +1 -0
  405. package/lib/typescript/services/languageSettings.d.ts +7 -0
  406. package/lib/typescript/services/languageSettings.d.ts.map +1 -1
  407. package/lib/typescript/services/pushRegistration.d.ts.map +1 -1
  408. package/lib/typescript/types/types.d.ts +67 -4
  409. package/lib/typescript/types/types.d.ts.map +1 -1
  410. package/lib/typescript/version.d.ts +1 -1
  411. package/package.json +1 -1
  412. package/src/booking/index.ts +10 -0
  413. package/src/booking/pendingScheduledCall.ts +272 -0
  414. package/src/booking/scheduleForm.ts +84 -0
  415. package/src/booking/scheduledCall.ts +163 -0
  416. package/src/booking/scheduledCallActions.ts +141 -0
  417. package/src/booking/scheduledCallLink.ts +145 -0
  418. package/src/booking/scheduledCallStore.ts +69 -0
  419. package/src/booking/startRoomCall.ts +103 -0
  420. package/src/calls/callBusy.ts +10 -0
  421. package/src/calls/callDisplay.ts +74 -0
  422. package/src/calls/callMode.ts +286 -0
  423. package/src/calls/declineReport.ts +16 -0
  424. package/src/calls/p2p/P2PCallController.ts +813 -0
  425. package/src/calls/p2p/icePolicy.ts +99 -0
  426. package/src/calls/p2p/negotiator.ts +186 -0
  427. package/src/calls/p2p/p2pRuntime.ts +164 -0
  428. package/src/calls/p2p/signalInbox.ts +117 -0
  429. package/src/calls/p2p/signalStanza.ts +205 -0
  430. package/src/calls/p2p/webrtcRuntime.ts +60 -0
  431. package/src/calls/senderTrust.ts +40 -0
  432. package/src/calls/startCall.ts +56 -0
  433. package/src/components/Booking/BookingIcons.tsx +44 -0
  434. package/src/components/Booking/ScheduleCallButton.tsx +66 -0
  435. package/src/components/Booking/ScheduleCallSheet.tsx +380 -0
  436. package/src/components/Booking/ScheduledCallCard.tsx +216 -0
  437. package/src/components/Booking/ScheduledCallHost.tsx +18 -0
  438. package/src/components/Booking/ScheduledCallMessage.tsx +62 -0
  439. package/src/components/Booking/ScheduledCallPreJoin.tsx +230 -0
  440. package/src/components/Booking/bookingShared.tsx +295 -0
  441. package/src/components/MainComponents/ChatHeader.tsx +2 -0
  442. package/src/components/MainComponents/LanguageSelectorButton.tsx +9 -2
  443. package/src/components/MainComponents/LanguageSelectorModal.tsx +10 -6
  444. package/src/components/MainComponents/MessageContainer.tsx +15 -0
  445. package/src/components/MainComponents/ReduxWrapper.tsx +10 -0
  446. package/src/components/Modals/ChatProfileModal/ReportChatModal.tsx +22 -22
  447. package/src/components/Modals/UserProfileModal/UserProfileModal.tsx +28 -9
  448. package/src/components/Modals/UserSettingsModal/LanguageCard.tsx +9 -7
  449. package/src/components/VideoCalls/ActiveCallBar.tsx +6 -5
  450. package/src/components/VideoCalls/CallButtons.tsx +23 -12
  451. package/src/components/VideoCalls/CallControlBar.tsx +131 -0
  452. package/src/components/VideoCalls/CallVideo.tsx +59 -0
  453. package/src/components/VideoCalls/GroupCallView.tsx +324 -0
  454. package/src/components/VideoCalls/P2PCallRunner.tsx +192 -0
  455. package/src/components/VideoCalls/VideoCallOverlay.tsx +62 -17
  456. package/src/components/VideoCalls/VideoCallSession.tsx +55 -133
  457. package/src/components/VideoCalls/callActions.ts +3 -0
  458. package/src/components/VideoCalls/callElapsed.ts +27 -0
  459. package/src/components/VideoCalls/callLive.ts +13 -0
  460. package/src/components/VideoCalls/callSessionController.ts +130 -55
  461. package/src/components/VideoCalls/callSessionTypes.ts +80 -0
  462. package/src/components/VideoCalls/groupLayout.ts +48 -0
  463. package/src/components/VideoCalls/p2pCallSession.ts +291 -0
  464. package/src/components/VideoCalls/useCallKeep.ts +9 -2
  465. package/src/components/VideoCalls/useOngoingCallNotification.ts +2 -2
  466. package/src/context/xmppProvider.tsx +3 -0
  467. package/src/helpers/callPush.ts +13 -1
  468. package/src/helpers/incomingCallFromPush.ts +65 -7
  469. package/src/helpers/pushPayload.ts +9 -1
  470. package/src/helpers/reportRoom.ts +93 -0
  471. package/src/i18n/strings.ts +444 -0
  472. package/src/main.ts +33 -0
  473. package/src/networking/api-requests/callState.api.ts +83 -0
  474. package/src/networking/api-requests/push.api.ts +28 -3
  475. package/src/networking/api-requests/rooms.api.ts +12 -3
  476. package/src/networking/api-requests/scheduledCalls.api.ts +232 -0
  477. package/src/networking/callTokenStanza.ts +247 -50
  478. package/src/roomStore/callSlice.ts +86 -2
  479. package/src/services/appBadge.ts +85 -0
  480. package/src/services/languageSettings.ts +43 -8
  481. package/src/services/pushRegistration.ts +34 -3
  482. package/src/types/types.ts +70 -4
  483. package/src/version.ts +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bookingShared.d.ts","sourceRoot":"","sources":["../../../../src/components/Booking/bookingShared.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAa5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC5B,MAAM,6BAA6B,CAAC;AAIrC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,MAAM,CAAC;AAEzE;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAChC,MAAM,IAAI,CACR,qBAAqB,EACrB,SAAS,GAAG,iBAAiB,GAAG,QAAQ,CACzC,KACA;IAAE,KAAK,EAAE,sBAAsB,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAqB9C,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,OAAO,sBAAsB,EAC7B,SAAS,MAAM,EACf,KAAK,MAAM,KACV,MAaF,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,MAAM,IAAI,CAAC,qBAAqB,EAAE,SAAS,GAAG,iBAAiB,CAAC,EAChE,GAAG,CAAC,EACJ,SAAS,MAAM,KACd,MAImE,CAAC;AAEvE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAG5B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;CACvC,CAaA,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,CAAC;IACL,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAgCA,CAAC;AAEF,sEAAsE;AACtE,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAoCA,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CA6BA,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,OAAO,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DzC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChatHeader.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/ChatHeader.tsx"],"names":[],"mappings":"AAAA,cAAc;AAEd,OAAO,KAAgC,MAAM,OAAO,CAAC;AAUrD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA+B1C,UAAU,eAAe;IACvB,WAAW,EAAE,KAAK,CAAC;IACnB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5C;AAED,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAqOzC,CAAC;AA2CF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ChatHeader.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/ChatHeader.tsx"],"names":[],"mappings":"AAAA,cAAc;AAEd,OAAO,KAAgC,MAAM,OAAO,CAAC;AAUrD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAgC1C,UAAU,eAAe;IACvB,WAAW,EAAE,KAAK,CAAC;IACnB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5C;AAED,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAsOzC,CAAC;AA2CF,eAAe,UAAU,CAAC"}
@@ -5,7 +5,9 @@ import { FC } from 'react';
5
5
  * Renders only when translation is on. A host that drives the reader's
6
6
  * language from its own settings screen (via `config.translates
7
7
  * .readerLocale`) can hide this with `showLanguageSelector: false` rather
8
- * than shipping two competing controls.
8
+ * than shipping two competing controls. An install whose get-config
9
+ * reports no translate languages (`translates.languages: []`) has no
10
+ * translation server, so there is nothing to pick either.
9
11
  */
10
12
  export declare const LanguageSelectorButton: FC;
11
13
  export default LanguageSelectorButton;
@@ -1 +1 @@
1
- {"version":3,"file":"LanguageSelectorButton.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/LanguageSelectorButton.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAO5C;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,EAyBpC,CAAC;AAYF,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"LanguageSelectorButton.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/LanguageSelectorButton.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAQ5C;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,EAAE,EA6BpC,CAAC;AAYF,eAAe,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"LanguageSelectorModal.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/LanguageSelectorModal.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAe,MAAM,OAAO,CAAC;AAgC/C;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAe3D,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,qBAAqB,EAAE,EAAE,CAAC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAiJA,CAAC;AAoFF,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"LanguageSelectorModal.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/LanguageSelectorModal.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAwB,MAAM,OAAO,CAAC;AAgCxD;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAe3D,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,qBAAqB,EAAE,EAAE,CAAC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAqJA,CAAC;AAoFF,eAAe,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MessageContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/MessageContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAYtD,UAAU,qBAAqB;IAC7B,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAClC,OAAO,EAAE,QAAQ,CAAC;QAClB,MAAM,EAAE,OAAO,CAAC;QAChB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IACH,kBAAkB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QACvC,IAAI,EAAE,IAAI,CAAC;QACX,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;IACH,qBAAqB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,OAAO,EAAE,QAAQ,CAAC;IAClB,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAkGD,eAAO,MAAM,gBAAgB,mDAA6B,CAAC"}
1
+ {"version":3,"file":"MessageContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/MessageContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AActD,UAAU,qBAAqB;IAC7B,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAClC,OAAO,EAAE,QAAQ,CAAC;QAClB,MAAM,EAAE,OAAO,CAAC;QAChB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IACH,kBAAkB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QACvC,IAAI,EAAE,IAAI,CAAC;QACX,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;IACH,qBAAqB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,OAAO,EAAE,QAAQ,CAAC;IAClB,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA+GD,eAAO,MAAM,gBAAgB,mDAA6B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ReduxWrapper.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/ReduxWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAC;AAkBxD,OAAO,EAAC,UAAU,EAAE,OAAO,EAAE,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAMpE,OAAO,4BAA4B,CAAC;AAmBpC,UAAU,gBAAgB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAC;IAC9C,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC1C,sBAAsB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA6DD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAoDnD,CAAC"}
1
+ {"version":3,"file":"ReduxWrapper.d.ts","sourceRoot":"","sources":["../../../../src/components/MainComponents/ReduxWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmC,MAAM,OAAO,CAAC;AAkBxD,OAAO,EAAC,UAAU,EAAE,OAAO,EAAE,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAMpE,OAAO,4BAA4B,CAAC;AA6BpC,UAAU,gBAAgB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAC;IAC9C,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC1C,sBAAsB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA6DD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAoDnD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ReportChatModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/ChatProfileModal/ReportChatModal.tsx"],"names":[],"mappings":"AAAA,cAAc;AAEd,OAAO,KAA4B,MAAM,OAAO,CAAC;AAmCjD,UAAU,oBAAoB;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAkInD,CAAC;AA4EF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"ReportChatModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/ChatProfileModal/ReportChatModal.tsx"],"names":[],"mappings":"AAAA,cAAc;AAEd,OAAO,KAA4B,MAAM,OAAO,CAAC;AAiCjD,UAAU,oBAAoB;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAoInD,CAAC;AA4EF,eAAe,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"UserProfileModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/UserProfileModal/UserProfileModal.tsx"],"names":[],"mappings":"AAAA,cAAc;AAEd,OAAO,KAA4D,MAAM,OAAO,CAAC;AAuFjF,KAAK,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,CAAC;AAEjD,4DAA4D;AAC5D,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,GAAG,IAAI,KAAG,MAOnD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;CACvB,KAAG,MAAM,EAOT,CAAC;AAEF,UAAU,qBAAqB;IAC7B,gBAAgB,EAAE,GAAG,CAAC;CACvB;AAED,QAAA,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAkoBrD,CAAC;AAuHF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"UserProfileModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/UserProfileModal/UserProfileModal.tsx"],"names":[],"mappings":"AAAA,cAAc;AAEd,OAAO,KAA4D,MAAM,OAAO,CAAC;AA0FjF,KAAK,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,CAAC;AAEjD,4DAA4D;AAC5D,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,GAAG,IAAI,KAAG,MAOnD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;CACvB,KAAG,MAAM,EAOT,CAAC;AAEF,UAAU,qBAAqB;IAC7B,gBAAgB,EAAE,GAAG,CAAC;CACvB;AAED,QAAA,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAkpBrD,CAAC;AAuHF,eAAe,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"LanguageCard.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/UserSettingsModal/LanguageCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,SAAS,EAA4C,SAAS,EAAE,MAAM,cAAc,CAAC;AAY9F,UAAU,iBAAiB;IACzB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAkF7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"LanguageCard.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modals/UserSettingsModal/LanguageCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,SAAS,EAA4C,SAAS,EAAE,MAAM,cAAc,CAAC;AAY9F,UAAU,iBAAiB;IACzB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAoF7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ActiveCallBar.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/ActiveCallBar.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAA4C,MAAM,OAAO,CAAC;AAqB5E;;;GAGG;AACH,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,eAAe,KAAK,CAAC;AAgBlC;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,EAoE3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,EA6B3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,EAU3B,CAAC"}
1
+ {"version":3,"file":"ActiveCallBar.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/ActiveCallBar.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAA4C,MAAM,OAAO,CAAC;AAsB5E;;;GAGG;AACH,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,eAAe,KAAK,CAAC;AAclC;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,EAsE3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,EA6B3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,EAU3B,CAAC"}
@@ -8,7 +8,8 @@ import { FC } from 'react';
8
8
  * calls are off, which is the common case.
9
9
  *
10
10
  * Gating mirrors the web rules: calls need `config.videoCalls.enabled`, a
11
- * `livekitUrl`, a 1:1 (private) room, and no other call already running.
11
+ * `livekitUrl`, a 1:1 (private) or members-only group room (subject to
12
+ * `allowedRoomTypes`, default both), and no other call already running.
12
13
  * Audio is a second opt-in on top of that (`enableAudioCalls`).
13
14
  */
14
15
  export declare const CallButtons: FC;
@@ -1 +1 @@
1
- {"version":3,"file":"CallButtons.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/CallButtons.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAe,MAAM,OAAO,CAAC;AAY/C;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,WAAW,EAAE,EAqIzB,CAAC;AAiBF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"CallButtons.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/CallButtons.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAe,MAAM,OAAO,CAAC;AAa/C;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,EAAE,EA8IzB,CAAC;AAiBF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { FC } from 'react';
2
+ import { VideoCallIcons } from '../../types/types';
3
+ import type { CallSessionSnapshot } from './callSessionTypes';
4
+ interface CallControlBarProps {
5
+ session: Pick<CallSessionSnapshot, 'micOn' | 'cameraOn' | 'speakerOn'>;
6
+ isVideo: boolean;
7
+ icons?: VideoCallIcons;
8
+ onHangup: () => void;
9
+ }
10
+ /**
11
+ * The row of round buttons at the foot of the call screen: mic, camera (and
12
+ * its flip), speaker and hang up. Shared by the 1:1 and the group layout; the
13
+ * controls act on whichever transport carries the call.
14
+ */
15
+ export declare const CallControlBar: FC<CallControlBarProps>;
16
+ export default CallControlBar;
17
+ //# sourceMappingURL=CallControlBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CallControlBar.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/CallControlBar.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAGlC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAiBnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAO9D,UAAU,mBAAmB;IAC3B,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,OAAO,GAAG,UAAU,GAAG,WAAW,CAAC,CAAC;IACvE,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,mBAAmB,CAoElD,CAAC;AAuBF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { FC } from 'react';
2
+ import { StyleProp, ViewStyle } from 'react-native';
3
+ interface CallVideoProps {
4
+ /**
5
+ * What the session snapshot hands out: a LiveKit track reference
6
+ * (`{ participant, publication, source }`) or a p2p stream handle
7
+ * (`{ streamURL }`).
8
+ */
9
+ source: any;
10
+ style?: StyleProp<ViewStyle>;
11
+ objectFit?: 'contain' | 'cover';
12
+ mirror?: boolean;
13
+ zOrder?: number;
14
+ }
15
+ /**
16
+ * One video surface of a call, whichever transport it came from: LiveKit's
17
+ * `<VideoTrack />` for a room track, the fork's `<RTCView />` for the stream
18
+ * of a peer to peer connection. Renders nothing when the matching native
19
+ * package is missing.
20
+ */
21
+ export declare const CallVideo: FC<CallVideoProps>;
22
+ export default CallVideo;
23
+ //# sourceMappingURL=CallVideo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CallVideo.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/CallVideo.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIpD,UAAU,cAAc;IACtB;;;;OAIG;IACH,MAAM,EAAE,GAAG,CAAC;IACZ,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CAgCxC,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { FC } from 'react';
2
+ import { VideoCallIcons } from '../../types/types';
3
+ import type { CallSessionSnapshot } from './callSessionTypes';
4
+ interface GroupCallViewProps {
5
+ session: CallSessionSnapshot;
6
+ kind: 'audio' | 'video';
7
+ /** Room name; a neutral label is shown when it is empty. */
8
+ title?: string | null;
9
+ primaryColor: string;
10
+ icons?: VideoCallIcons;
11
+ onToggleMinimize?: () => void;
12
+ onHangup: () => void;
13
+ }
14
+ /**
15
+ * The group call screen: everyone in the room as a grid of tiles, the person
16
+ * who is speaking outlined, a mic-off badge on anyone muted. Cameras are drawn
17
+ * for at most MAX_VIDEO_TILES people (speakers first). Nothing here assumes
18
+ * two people; the 1:1 layout stays in VideoCallSession.
19
+ */
20
+ export declare const GroupCallView: FC<GroupCallViewProps>;
21
+ export default GroupCallView;
22
+ //# sourceMappingURL=GroupCallView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupCallView.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/GroupCallView.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAUlC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMnD,OAAO,KAAK,EAAuB,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAanF,UAAU,kBAAkB;IAC1B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAsED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CAwGhD,CAAC;AAyGF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const P2PCallRunner: React.FC;
2
+ //# sourceMappingURL=P2PCallRunner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"P2PCallRunner.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/P2PCallRunner.tsx"],"names":[],"mappings":"AAqDA,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EA0IjC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"VideoCallOverlay.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/VideoCallOverlay.tsx"],"names":[],"mappings":"AAAA,OAAc,EAEZ,EAAE,EAMH,MAAM,OAAO,CAAC;AA+qBf,eAAO,MAAM,gBAAgB,EAAE,EAS9B,CAAC;AAyGF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"VideoCallOverlay.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/VideoCallOverlay.tsx"],"names":[],"mappings":"AAAA,OAAc,EAEZ,EAAE,EAMH,MAAM,OAAO,CAAC;AAstBf,eAAO,MAAM,gBAAgB,EAAE,EAe9B,CAAC;AAyGF,eAAe,gBAAgB,CAAC"}
@@ -1,7 +1,11 @@
1
1
  import { FC } from 'react';
2
2
  import { VideoCallIcons } from '../../types/types';
3
+ import { formatCallDuration, useSharedCallElapsed } from './callElapsed';
4
+ export { formatCallDuration, useSharedCallElapsed };
3
5
  export interface VideoCallSessionProps {
4
6
  kind?: 'audio' | 'video';
7
+ /** Group room call: everyone in a grid, instead of the 1:1 stage. */
8
+ isGroup?: boolean;
5
9
  /** Display name of the peer, shown until LiveKit reports theirs. */
6
10
  peerName?: string | null;
7
11
  primaryColor?: string;
@@ -11,20 +15,14 @@ export interface VideoCallSessionProps {
11
15
  onHangup: () => void;
12
16
  }
13
17
  /**
14
- * Seconds since the call truly connected, counted from the server-set
15
- * `joinedAt` anchor so both sides show the same time (web's
16
- * useSharedCallElapsed). Null until the peer is in.
17
- */
18
- export declare const useSharedCallElapsed: (anchorAt: number | null) => number | null;
19
- export declare const formatCallDuration: (totalSeconds: number) => string;
20
- /**
21
- * The call screen, React Native edition. Pure view over the LiveKit session
22
- * owned by callSessionController.ts: it can unmount and remount (minimize,
23
- * leaving the chat screen) without touching the connection.
18
+ * The call screen, React Native edition. Pure view over the media session
19
+ * of the call (the LiveKit room in callSessionController.ts, or the peer to
20
+ * peer connection in p2pCallSession.ts): it can unmount and remount
21
+ * (minimize, leaving the chat screen) without touching the connection.
24
22
  *
25
23
  * The web SDK builds this on `@livekit/components-react` hooks, which
26
- * assume a DOM. Only the video surface comes from `@livekit/react-native`
27
- * (`<VideoTrack />`, `trackRef` prop, >= 2.7).
24
+ * assume a DOM. Only the video surfaces come from the native packages
25
+ * (`<CallVideo />`: LiveKit's `<VideoTrack />` or the fork's `<RTCView />`).
28
26
  */
29
27
  export declare const VideoCallSession: FC<VideoCallSessionProps>;
30
28
  export default VideoCallSession;
@@ -1 +1 @@
1
- {"version":3,"file":"VideoCallSession.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/VideoCallSession.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAuB,MAAM,OAAO,CAAC;AAWvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAkCnD,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACzB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,oDAAoD;IACpD,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,GAAG,IAAI,KAAG,MAAM,GAAG,IASvE,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,cAAc,MAAM,KAAG,MAQzD,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CA+PtD,CAAC;AAyJF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"VideoCallSession.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/VideoCallSession.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAW5C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAcnD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAWzE,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,CAAC;AAEpD,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACzB,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,oDAAoD;IACpD,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAiOtD,CAAC;AAuIF,eAAe,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"callActions.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/callActions.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,eAAe,EAEhB,MAAM,kCAAkC,CAAC;AAI1C;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAAI,OAAO,eAAe,KAAG,IA2B5D,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,IAGpC,CAAC;AAKF;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,QAAO,IAiB9C,CAAC;AAEF,qEAAqE;AACrE,eAAO,MAAM,mBAAmB,GAC9B,KAAK,MAAM,EACX,OAAO,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KACrC,MAKF,CAAC"}
1
+ {"version":3,"file":"callActions.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/callActions.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,eAAe,EAEhB,MAAM,kCAAkC,CAAC;AAK1C;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAAI,OAAO,eAAe,KAAG,IA2B5D,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,IAIpC,CAAC;AAKF;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,QAAO,IAkB9C,CAAC;AAEF,qEAAqE;AACrE,eAAO,MAAM,mBAAmB,GAC9B,KAAK,MAAM,EACX,OAAO,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KACrC,MAKF,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Seconds since the call truly connected, counted from the server-set
3
+ * `joinedAt` anchor so both sides show the same time (web's
4
+ * useSharedCallElapsed). Null until the peer is in.
5
+ */
6
+ export declare const useSharedCallElapsed: (anchorAt: number | null) => number | null;
7
+ export declare const formatCallDuration: (totalSeconds: number) => string;
8
+ //# sourceMappingURL=callElapsed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callElapsed.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/callElapsed.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,GAAG,IAAI,KAAG,MAAM,GAAG,IASvE,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,cAAc,MAAM,KAAG,MAQzD,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { CallState } from '../../roomStore/callSlice';
2
+ /**
3
+ * True while a call is far enough along to have a media session: connecting
4
+ * or in the call. A LiveKit call also needs its token (that is what the room
5
+ * is joined with); a peer to peer call has none, its media is the peer
6
+ * connection, so the phase alone decides.
7
+ */
8
+ export declare const callCanRenderSession: (call: Pick<CallState, "phase" | "mode" | "token">) => boolean;
9
+ //# sourceMappingURL=callLive.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callLive.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/callLive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAC/B,MAAM,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,KAChD,OAEoC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { CallSessionSnapshot } from './callSessionTypes';
1
2
  /**
2
3
  * The LiveKit connection of the current call, owned outside React.
3
4
  *
@@ -14,42 +15,20 @@
14
15
  * logout's resetCall), whether or not any call UI is mounted. Components
15
16
  * only read the snapshot and call the controls.
16
17
  */
17
- export interface CallSessionSnapshot {
18
- /** A LiveKit room exists for the current call. */
19
- active: boolean;
20
- connected: boolean;
21
- /** Translated, dismissible camera/mic problem. Never fails the call. */
22
- deviceError: string | null;
23
- micOn: boolean;
24
- cameraOn: boolean;
25
- speakerOn: boolean;
26
- /** Which camera the local video comes from; only the front one is mirrored. */
27
- facingMode: 'user' | 'environment';
28
- /**
29
- * Bumped whenever the local camera track is re-acquired, so the self view
30
- * can remount onto the new stream instead of holding the stopped one.
31
- */
32
- localVideoEpoch: number;
33
- /** `{ participant, publication, source }` for `<VideoTrack />`, live and unmuted only. */
34
- remoteVideo: any;
35
- localVideo: any;
36
- remoteName: string | null;
37
- remoteJoined: boolean;
38
- /** Peer joined but has no live microphone. */
39
- remoteMicMuted: boolean;
40
- /**
41
- * When the call truly connected: the later of the two LiveKit `joinedAt`
42
- * stamps. The server sets them, so both sides count from the same moment
43
- * (web's useSharedCallElapsed). Null until the peer is in.
44
- */
45
- anchorAt: number | null;
46
- }
18
+ export type { CallParticipantView, CallSessionSnapshot } from './callSessionTypes';
19
+ /**
20
+ * The media session of the current call, whichever transport carries it: a
21
+ * peer to peer connection (p2pCallSession.ts) when one is bound, else the
22
+ * LiveKit room. Callers never need to tell them apart.
23
+ */
47
24
  export declare const useCallSession: () => CallSessionSnapshot;
48
25
  export declare const stopCallSession: () => void;
49
26
  export interface StartCallSessionOptions {
50
27
  token: string;
51
28
  livekitUrl: string;
52
29
  kind: 'audio' | 'video';
30
+ /** Group room call: show everyone, and keep going while others remain. */
31
+ isGroup?: boolean;
53
32
  startWithMicOn?: boolean;
54
33
  startWithCameraOn?: boolean;
55
34
  }
@@ -57,7 +36,7 @@ export interface StartCallSessionOptions {
57
36
  * Join the LiveKit room for the current call. Idempotent per (url, token):
58
37
  * calling it again from a remounted overlay re-attaches to the same room.
59
38
  */
60
- export declare const startCallSession: ({ token, livekitUrl, kind, startWithMicOn, startWithCameraOn, }: StartCallSessionOptions) => void;
39
+ export declare const startCallSession: ({ token, livekitUrl, kind, isGroup, startWithMicOn, startWithCameraOn, }: StartCallSessionOptions) => void;
61
40
  export declare const toggleCallMic: () => Promise<void>;
62
41
  /** Set the mic to a given state (system call UI reports absolute values). */
63
42
  export declare const setCallMicEnabled: (next: boolean) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"callSessionController.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/callSessionController.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,WAAW,mBAAmB;IAClC,kDAAkD;IAClD,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC;IACnC;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,0FAA0F;IAC1F,WAAW,EAAE,GAAG,CAAC;IACjB,UAAU,EAAE,GAAG,CAAC;IAChB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,8CAA8C;IAC9C,cAAc,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AA8CD,eAAO,MAAM,cAAc,QAAO,mBACyB,CAAC;AAiE5D,eAAO,MAAM,eAAe,QAAO,IAkBlC,CAAC;AAiBF,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,iEAM9B,uBAAuB,KAAG,IA+I5B,CAAC;AAIF,eAAO,MAAM,aAAa,QAAO,OAAO,CAAC,IAAI,CAAuC,CAAC;AAErF,6EAA6E;AAC7E,eAAO,MAAM,iBAAiB,GAAU,MAAM,OAAO,KAAG,OAAO,CAAC,IAAI,CAWnE,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,IAAI,CAarD,CAAC;AAIF,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,IAAI,CAsCrD,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,IAAI,CAoBtD,CAAC;AAEF,eAAO,MAAM,sBAAsB,QAAO,IAEzC,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,0BAA0B,QAAO,IAI7C,CAAC"}
1
+ {"version":3,"file":"callSessionController.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/callSessionController.ts"],"names":[],"mappings":"AAgBA,OAAO,EAEL,mBAAmB,EAEpB,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;GAeG;AAEH,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAkCnF;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAO,mBAIjC,CAAC;AAoHF,eAAO,MAAM,eAAe,QAAO,IAkBlC,CAAC;AAiBF,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,0EAO9B,uBAAuB,KAAG,IA6J5B,CAAC;AAQF,eAAO,MAAM,aAAa,QAAO,OAAO,CAAC,IAAI,CACA,CAAC;AAE9C,6EAA6E;AAC7E,eAAO,MAAM,iBAAiB,GAAU,MAAM,OAAO,KAAG,OAAO,CAAC,IAAI,CAenE,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,IAAI,CAiBrD,CAAC;AAIF,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,IAAI,CA0CrD,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,IAAI,CAwBtD,CAAC;AAEF,eAAO,MAAM,sBAAsB,QAAO,IAMzC,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,0BAA0B,QAAO,IAI7C,CAAC"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * What the call UI reads from the media session of the current call.
3
+ *
4
+ * Two transports fill the same snapshot: the LiveKit room
5
+ * (callSessionController.ts) and the peer to peer connection
6
+ * (p2pCallSession.ts), so the screen, the minimized strip, CallKit and the
7
+ * ongoing-call notification never need to know which one carries the call.
8
+ */
9
+ /**
10
+ * One person in a group call grid. `video` is an opaque handle for
11
+ * `<CallVideo source={...} />`, present only while a live, unmuted camera
12
+ * track exists.
13
+ */
14
+ export interface CallParticipantView {
15
+ identity: string;
16
+ name: string;
17
+ isLocal: boolean;
18
+ video: any;
19
+ micMuted: boolean;
20
+ speaking: boolean;
21
+ }
22
+ export interface CallSessionSnapshot {
23
+ /** A media session (LiveKit room or p2p connection) exists for the current call. */
24
+ active: boolean;
25
+ connected: boolean;
26
+ /** Translated, dismissible camera/mic problem. Never fails the call. */
27
+ deviceError: string | null;
28
+ micOn: boolean;
29
+ cameraOn: boolean;
30
+ speakerOn: boolean;
31
+ /** Which camera the local video comes from; only the front one is mirrored. */
32
+ facingMode: 'user' | 'environment';
33
+ /**
34
+ * Bumped whenever the local camera track is re-acquired, so the self view
35
+ * can remount onto the new stream instead of holding the stopped one.
36
+ */
37
+ localVideoEpoch: number;
38
+ /** Opaque video handle for `<CallVideo />`, live and unmuted only. */
39
+ remoteVideo: any;
40
+ localVideo: any;
41
+ remoteName: string | null;
42
+ remoteJoined: boolean;
43
+ /** Peer joined but has no live microphone. */
44
+ remoteMicMuted: boolean;
45
+ /**
46
+ * When the call truly connected: the later of the two LiveKit `joinedAt`
47
+ * stamps (p2p: when media first flowed). The server sets the LiveKit ones,
48
+ * so both sides count from the same moment (web's useSharedCallElapsed).
49
+ * Null until the peer is in. In a group: when the first two were in.
50
+ */
51
+ anchorAt: number | null;
52
+ /** Group room call: render `participants` as a grid. */
53
+ isGroup: boolean;
54
+ /** Everyone in a group call, local first. Empty for a 1:1 call. */
55
+ participants: CallParticipantView[];
56
+ /** p2p only: media was flowing and the connection is being restored. */
57
+ reconnecting: boolean;
58
+ }
59
+ export declare const IDLE_SESSION: CallSessionSnapshot;
60
+ //# sourceMappingURL=callSessionTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callSessionTypes.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/callSessionTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,GAAG,CAAC;IACX,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,oFAAoF;IACpF,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC;IACnC;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,sEAAsE;IACtE,WAAW,EAAE,GAAG,CAAC;IACjB,UAAU,EAAE,GAAG,CAAC;IAChB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,8CAA8C;IAC9C,cAAc,EAAE,OAAO,CAAC;IACxB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,wDAAwD;IACxD,OAAO,EAAE,OAAO,CAAC;IACjB,mEAAmE;IACnE,YAAY,EAAE,mBAAmB,EAAE,CAAC;IACpC,wEAAwE;IACxE,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,YAAY,EAAE,mBAkB1B,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { CallParticipantView } from './callSessionTypes';
2
+ /**
3
+ * Pure layout decisions of the group call grid, kept apart from the view so
4
+ * they can be tested on their own.
5
+ */
6
+ /**
7
+ * Most camera surfaces rendered at once. A phone cannot decode and draw 50
8
+ * videos; the rest of the room shows as avatars until they speak. A track
9
+ * with no surface attached is also not requested from the server
10
+ * (adaptiveStream), so this bounds the bandwidth too.
11
+ */
12
+ export declare const MAX_VIDEO_TILES = 9;
13
+ /** Columns of the grid for `count` participants. */
14
+ export declare const gridColumns: (count: number, landscape: boolean) => number;
15
+ /**
16
+ * Which participants get a live video surface. Whoever is speaking comes
17
+ * first, then us, then everyone else in grid order, until the budget is
18
+ * used. Participants without a live camera never take a slot.
19
+ */
20
+ export declare const pickVideoTiles: (participants: CallParticipantView[], max?: number) => Set<string>;
21
+ /** Names of the people currently speaking, for the header line. */
22
+ export declare const speakingNames: (participants: CallParticipantView[], youLabel: string) => string[];
23
+ //# sourceMappingURL=groupLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groupLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/groupLayout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D;;;GAGG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,eAAe,IAAI,CAAC;AAEjC,oDAAoD;AACpD,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,EAAE,WAAW,OAAO,KAAG,MAI/D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,GACzB,cAAc,mBAAmB,EAAE,EACnC,MAAK,MAAwB,KAC5B,GAAG,CAAC,MAAM,CAQZ,CAAC;AAEF,mEAAmE;AACnE,eAAO,MAAM,aAAa,GACxB,cAAc,mBAAmB,EAAE,EACnC,UAAU,MAAM,KACf,MAAM,EAGuC,CAAC"}
@@ -0,0 +1,31 @@
1
+ import type { P2PCallController } from '../../calls/p2p/P2PCallController';
2
+ import { CallSessionSnapshot } from './callSessionTypes';
3
+ /** Translated version of a message the p2p controller produced. */
4
+ export declare const localizeP2PMessage: (message: string) => string;
5
+ export declare const getP2PSessionSnapshot: () => CallSessionSnapshot;
6
+ export declare const isP2PSessionActive: () => boolean;
7
+ export declare const useP2PSession: () => CallSessionSnapshot;
8
+ /**
9
+ * Show `controller`'s call through the session snapshot. Returns the unbind
10
+ * function. Only one call is ever bound; binding another replaces it.
11
+ */
12
+ export declare const bindP2PSession: (controller: P2PCallController, kind: "audio" | "video") => (() => void);
13
+ export declare const unbindP2PSession: () => void;
14
+ /**
15
+ * Claim the native audio session before the connection comes up. Without
16
+ * this the first seconds route to the earpiece on Android even for a video
17
+ * call (the LiveKit session does the same before `room.connect`). Best
18
+ * effort: a call answered from CallKit already owns the iOS session.
19
+ */
20
+ export declare const prepareP2PAudio: (kind: "audio" | "video") => Promise<void>;
21
+ /** Audio session first, then media and the offer / answer. */
22
+ export declare const startP2PController: (controller: P2PCallController, kind: "audio" | "video") => Promise<void>;
23
+ export declare const setP2PMicEnabled: (next: boolean) => void;
24
+ export declare const toggleP2PCamera: () => Promise<void>;
25
+ /** Front / back camera of the live local video track. */
26
+ export declare const switchP2PCamera: () => void;
27
+ export declare const toggleP2PSpeaker: () => Promise<void>;
28
+ export declare const dismissP2PDeviceError: () => void;
29
+ /** Reset module state. Test seam only. */
30
+ export declare const __resetP2PCallSessionForTests: () => void;
31
+ //# sourceMappingURL=p2pCallSession.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"p2pCallSession.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/p2pCallSession.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAE,mBAAmB,EAAgB,MAAM,oBAAoB,CAAC;AA8BvE,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,GAAI,SAAS,MAAM,KAAG,MAGpD,CAAC;AA8BF,eAAO,MAAM,qBAAqB,QAAO,mBAA+B,CAAC;AAEzE,eAAO,MAAM,kBAAkB,QAAO,OAAyB,CAAC;AAEhE,eAAO,MAAM,aAAa,QAAO,mBAC8C,CAAC;AA+DhF;;;GAGG;AACH,eAAO,MAAM,cAAc,GACzB,YAAY,iBAAiB,EAC7B,MAAM,OAAO,GAAG,OAAO,KACtB,CAAC,MAAM,IAAI,CAgBb,CAAC;AAMF,eAAO,MAAM,gBAAgB,QAAO,IAanC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAC1B,MAAM,OAAO,GAAG,OAAO,KACtB,OAAO,CAAC,IAAI,CAiBd,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,GAC7B,YAAY,iBAAiB,EAC7B,MAAM,OAAO,GAAG,OAAO,KACtB,OAAO,CAAC,IAAI,CAYd,CAAC;AAIF,eAAO,MAAM,gBAAgB,GAAI,MAAM,OAAO,KAAG,IAIhD,CAAC;AAEF,eAAO,MAAM,eAAe,QAAa,OAAO,CAAC,IAAI,CAIpD,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,eAAe,QAAO,IAYlC,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,IAAI,CAqBrD,CAAC;AAEF,eAAO,MAAM,qBAAqB,QAAO,IAExC,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,6BAA6B,QAAO,IAIhD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useCallKeep.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/useCallKeep.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,YAAY,EAGb,MAAM,cAAc,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,YAAY,EAAE,CAAC;AAMxB,eAAO,MAAM,WAAW,QAAO,IA4W9B,CAAC"}
1
+ {"version":3,"file":"useCallKeep.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/useCallKeep.ts"],"names":[],"mappings":"AAUA,OAAO,EAEL,YAAY,EAGb,MAAM,cAAc,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,YAAY,EAAE,CAAC;AAYxB,eAAO,MAAM,WAAW,QAAO,IA4W9B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useOngoingCallNotification.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/useOngoingCallNotification.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,uBAAuB,EAExB,MAAM,mBAAmB,CAAC;AAK3B;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,uBAAuB,GAAG,SAAS,KAC3C,IA2FF,CAAC"}
1
+ {"version":3,"file":"useOngoingCallNotification.d.ts","sourceRoot":"","sources":["../../../../src/components/VideoCalls/useOngoingCallNotification.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,uBAAuB,EAExB,MAAM,mBAAmB,CAAC;AAM3B;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,uBAAuB,GAAG,SAAS,KAC3C,IA0FF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"xmppProvider.d.ts","sourceRoot":"","sources":["../../../src/context/xmppProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,SAAS,EAQV,MAAM,OAAO,CAAC;AAIf,OAAO,UAEN,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,OAAO,EACP,uBAAuB,EAEvB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AA4CxB,UAAU,QAAQ;IAChB,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC;CAC9B;AAED,UAAU,eAAe;IACvB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC9B,SAAS,EAAE,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/C,gBAAgB,EAAE,CAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,qBAAqB,KACjC,OAAO,CAAC,UAAU,CAAC,CAAC;CAC1B;AAID,UAAU,iBAAiB;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IAIjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAcD,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAEvD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAu2BpD,CAAC;AAEF,eAAO,MAAM,aAAa,uBAkBzB,CAAC;AAEF,iFAAiF;AACjF,wBAAgB,cAAc,SAE7B"}
1
+ {"version":3,"file":"xmppProvider.d.ts","sourceRoot":"","sources":["../../../src/context/xmppProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,SAAS,EAQV,MAAM,OAAO,CAAC;AAKf,OAAO,UAEN,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,OAAO,EACP,uBAAuB,EAEvB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AA4CxB,UAAU,QAAQ;IAChB,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC;CAC9B;AAED,UAAU,eAAe;IACvB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC9B,SAAS,EAAE,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,KAAK,IAAI,CAAC;IAC/C,gBAAgB,EAAE,CAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,qBAAqB,KACjC,OAAO,CAAC,UAAU,CAAC,CAAC;CAC1B;AAID,UAAU,iBAAiB;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IAIjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAcD,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAEvD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAy2BpD,CAAC;AAEF,eAAO,MAAM,aAAa,uBAkBzB,CAAC;AAEF,iFAAiF;AACjF,wBAAgB,cAAc,SAE7B"}
@@ -1,6 +1,9 @@
1
1
  export interface ParsedCallPush {
2
2
  callId: string | null;
3
- /** LiveKit token, if the push carried one (lets us ring + accept offline). */
3
+ /**
4
+ * LiveKit token, if the push carried one (lets us ring + accept offline).
5
+ * Empty for a peer to peer call: there is no room to join with it.
6
+ */
4
7
  token: string | null;
5
8
  kind: 'audio' | 'video';
6
9
  /** Bare room name (JID localpart) the call belongs to. */
@@ -11,6 +14,13 @@ export interface ParsedCallPush {
11
14
  callerName: string | null;
12
15
  /** Caller's xmpp localpart, when provided. */
13
16
  callerXmppUsername: string | null;
17
+ /**
18
+ * How the call is carried. `p2p` pushes carry an empty token; an older push
19
+ * service sends no `mode`, which means `livekit`.
20
+ */
21
+ mode: 'p2p' | 'livekit';
22
+ /** The call is for a group room (always LiveKit). */
23
+ isGroup: boolean;
14
24
  }
15
25
  /**
16
26
  * True when a push `data` payload represents an incoming call. Matches on an
@@ -1 +1 @@
1
- {"version":3,"file":"callPush.d.ts","sourceRoot":"","sources":["../../../src/helpers/callPush.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,8EAA8E;IAC9E,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,0DAA0D;IAC1D,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,mEAAmE;IACnE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,iDAAiD;IACjD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,8CAA8C;IAC9C,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAYD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,KAC3C,OAwBF,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,KAC3C,cAmBF,CAAC"}
1
+ {"version":3,"file":"callPush.d.ts","sourceRoot":"","sources":["../../../src/helpers/callPush.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB;;;OAGG;IACH,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,0DAA0D;IAC1D,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,mEAAmE;IACnE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,iDAAiD;IACjD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,8CAA8C;IAC9C,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC;;;OAGG;IACH,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;IACxB,qDAAqD;IACrD,OAAO,EAAE,OAAO,CAAC;CAClB;AAYD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,KAC3C,OAwBF,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,KAC3C,cAqBF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"incomingCallFromPush.d.ts","sourceRoot":"","sources":["../../../src/helpers/incomingCallFromPush.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAmH3D,eAAO,MAAM,cAAc,GACzB,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,EAC5C,SAAQ,cAAuB,KAC9B,OAWF,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,KAC3C,OAAyC,CAAC;AAE7C,eAAO,MAAM,mBAAmB,GAC9B,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,KAC3C,OAA0C,CAAC;AAE9C,eAAO,MAAM,uBAAuB,QAAO,IAI1C,CAAC"}
1
+ {"version":3,"file":"incomingCallFromPush.d.ts","sourceRoot":"","sources":["../../../src/helpers/incomingCallFromPush.ts"],"names":[],"mappings":"AAcA,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAyK3D,eAAO,MAAM,cAAc,GACzB,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,EAC5C,SAAQ,cAAuB,KAC9B,OAWF,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,KAC3C,OAAyC,CAAC;AAE7C,eAAO,MAAM,mBAAmB,GAC9B,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,KAC3C,OAA0C,CAAC;AAE9C,eAAO,MAAM,uBAAuB,QAAO,IAI1C,CAAC"}
@@ -1,4 +1,4 @@
1
- export type PushPayloadOutcome = 'call' | 'room' | 'pending' | 'unknown';
1
+ export type PushPayloadOutcome = 'call' | 'scheduledCall' | 'room' | 'pending' | 'unknown';
2
2
  export declare const PENDING_NOTIFICATION_JID_KEY = "ethora_pending_notification_jid";
3
3
  export declare const PENDING_NOTIFICATION_TTL_MS: number;
4
4
  export declare const readPendingJid: () => Promise<string | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"pushPayload.d.ts","sourceRoot":"","sources":["../../../src/helpers/pushPayload.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAEzE,eAAO,MAAM,4BAA4B,oCAAoC,CAAC;AAC9E,eAAO,MAAM,2BAA2B,QAAgB,CAAC;AAEzD,eAAO,MAAM,cAAc,QAAa,OAAO,CAAC,MAAM,GAAG,IAAI,CAgB5D,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,KAAG,MAAM,GAAG,SAgBvD,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,KAC/C,kBAQF,CAAC"}
1
+ {"version":3,"file":"pushPayload.d.ts","sourceRoot":"","sources":["../../../src/helpers/pushPayload.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,kBAAkB,GAC1B,MAAM,GACN,eAAe,GACf,MAAM,GACN,SAAS,GACT,SAAS,CAAC;AAEd,eAAO,MAAM,4BAA4B,oCAAoC,CAAC;AAC9E,eAAO,MAAM,2BAA2B,QAAgB,CAAC;AAEzD,eAAO,MAAM,cAAc,QAAa,OAAO,CAAC,MAAM,GAAG,IAAI,CAgB5D,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,KAAG,MAAM,GAAG,SAgBvD,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,KAC/C,kBAUF,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { PostReportRoom } from '../types/models/room.model';
2
+ export interface ReportCategory {
3
+ id: string;
4
+ labelKey: string;
5
+ apiCategory: string;
6
+ /** English name, used in `text` (the report e-mail is not localized). */
7
+ name: string;
8
+ }
9
+ export declare const REPORT_CATEGORIES: ReportCategory[];
10
+ export declare const OTHER_REPORT_CATEGORY: ReportCategory;
11
+ export declare const findReportCategory: (id: string) => ReportCategory | undefined;
12
+ /**
13
+ * The request body for a room report. `roomJid` may be the full room JID or
14
+ * the bare room name: the route takes the bare name (JID localpart), like
15
+ * every other /v1/chats/... route. Returns null for an unknown category or
16
+ * an empty room.
17
+ */
18
+ export declare const buildReportRoomPayload: (roomJid: string, categoryId: string, details?: string) => PostReportRoom | null;
19
+ //# sourceMappingURL=reportRoom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reportRoom.d.ts","sourceRoot":"","sources":["../../../src/helpers/reportRoom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAUjE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,iBAAiB,EAAE,cAAc,EAqC7C,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,cAKnC,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,IAAI,MAAM,KAAG,cAAc,GAAG,SACO,CAAC;AAEzE;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,GACjC,SAAS,MAAM,EACf,YAAY,MAAM,EAClB,UAAU,MAAM,KACf,cAAc,GAAG,IAenB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../../../src/i18n/strings.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAs6EnD,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAOzD,CAAC;AAEF,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAExC,gFAAgF;AAChF,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,GAAG,IAAI,KAAG,MAIf,CAAC;AAE1C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,MAAM,GAAG,IAAI,EACtB,YAAY,aAAa,GAAG,IAAI,KAC/B,aAQF,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,WAAW,GACtB,UAAU,MAAM,EAChB,OAAO,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KACrC,MAKF,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,YAAY,GACvB,KAAK,MAAM,EACX,SAAS,MAAM,GAAG,IAAI,EACtB,YAAY,aAAa,GAAG,IAAI,EAChC,OAAO,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KACrC,MAGF,CAAC"}
1
+ {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../../../src/i18n/strings.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAk2FnD,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAOzD,CAAC;AAEF,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAExC,gFAAgF;AAChF,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,GAAG,IAAI,KAAG,MAIf,CAAC;AAE1C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,MAAM,GAAG,IAAI,EACtB,YAAY,aAAa,GAAG,IAAI,KAC/B,aAQF,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,WAAW,GACtB,UAAU,MAAM,EAChB,OAAO,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KACrC,MAKF,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,YAAY,GACvB,KAAK,MAAM,EACX,SAAS,MAAM,GAAG,IAAI,EACtB,YAAY,aAAa,GAAG,IAAI,EAChC,OAAO,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KACrC,MAGF,CAAC"}