fcr-ui-scene 3.5.1 → 3.6.0

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 (379) hide show
  1. package/lib/creator.d.ts +14 -0
  2. package/lib/creator.js +239 -14
  3. package/lib/electron/app.js +0 -21
  4. package/lib/electron/bootstrap-sdk.js +136 -7
  5. package/lib/electron/injections.d.ts +19 -7
  6. package/lib/electron/injections.js +206 -77
  7. package/lib/electron/ipc/ipc.d.ts +26 -0
  8. package/lib/electron/ipc/ipc.js +137 -0
  9. package/lib/electron/ipc/type.d.ts +11 -0
  10. package/lib/electron/ipc/type.js +19 -0
  11. package/lib/electron/logger.js +1 -1
  12. package/lib/electron/main.js +1 -1
  13. package/lib/electron/plugins/meeting-state.d.ts +1 -0
  14. package/lib/electron/plugins/meeting-state.js +3 -3
  15. package/lib/electron/plugins/screenshot.js +2 -2
  16. package/lib/electron/preload.js +67 -5
  17. package/lib/electron/window.js +0 -2
  18. package/lib/global.css +21 -0
  19. package/lib/modules/action-bar/components/apps/index.js +1 -0
  20. package/lib/modules/action-bar/components/apps/useWidgetList.js +1 -1
  21. package/lib/modules/action-bar/components/item/index.d.ts +2 -0
  22. package/lib/modules/action-bar/components/item/index.js +4 -2
  23. package/lib/modules/action-bar/components/leave/index.js +1 -0
  24. package/lib/modules/action-bar/components/more/index.js +1 -0
  25. package/lib/modules/action-bar/components/record/index.js +43 -106
  26. package/lib/modules/action-bar/components/record/popover.d.ts +4 -0
  27. package/lib/modules/action-bar/components/record/popover.js +57 -0
  28. package/lib/modules/action-bar/components/record/stop-record-dialog.js +1 -0
  29. package/lib/modules/action-bar/components/screen-share/index.js +15 -3
  30. package/lib/modules/action-bar/components/screen-share/submenu.js +2 -2
  31. package/lib/modules/action-bar/components/security/index.js +2 -1
  32. package/lib/modules/action-bar/components/smaller/index.js +1 -1
  33. package/lib/modules/action-bar/components/trigger-output-language/index.js +17 -22
  34. package/lib/modules/action-bar/components/trigger-subscribe-language/index.js +2 -1
  35. package/lib/modules/action-bar/index.css +3 -2
  36. package/lib/modules/action-bar/index.js +2 -1
  37. package/lib/modules/action-bar/store.d.ts +5 -0
  38. package/lib/modules/action-bar/store.js +30 -12
  39. package/lib/modules/action-bar/types.d.ts +1 -0
  40. package/lib/modules/chat/chat-room-store.js +1 -1
  41. package/lib/modules/chat/components/chat-bar/index.d.ts +1 -1
  42. package/lib/modules/chat/components/chat-bar/index.js +5 -3
  43. package/lib/modules/chat/components/chat-select/select-item/index.js +1 -1
  44. package/lib/modules/chat/components/message-list/index.js +1 -2
  45. package/lib/modules/chat/components/message-list/message-item/index.d.ts +0 -1
  46. package/lib/modules/chat/components/message-list/message-item/index.js +9 -10
  47. package/lib/modules/chat/index.css +24 -0
  48. package/lib/modules/chat/view.js +13 -3
  49. package/lib/modules/components/device-control/components/carmera/index.js +4 -5
  50. package/lib/modules/components/device-control/components/microphone/index.js +4 -5
  51. package/lib/modules/components/device-control/index.css +6 -3
  52. package/lib/modules/components/leave-meeting/components/assign-host.js +26 -4
  53. package/lib/modules/components/leave-meeting/components/index.css +35 -0
  54. package/lib/modules/components/leave-meeting/index.js +1 -0
  55. package/lib/modules/components/leave-meeting/store.js +25 -67
  56. package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +3 -2
  57. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +1 -1
  58. package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +10 -9
  59. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +2 -2
  60. package/lib/modules/components/member-window/components/member-actions/components/user-info.js +1 -1
  61. package/lib/modules/components/member-window/components/member-actions/index.js +2 -2
  62. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +3 -14
  63. package/lib/modules/components/member-window/index.css +18 -7
  64. package/lib/modules/components/member-window/types.d.ts +1 -1
  65. package/lib/modules/components/security-menu/index.css +2 -2
  66. package/lib/modules/components/security-menu/index.js +80 -28
  67. package/lib/modules/components/tab-frame/index.css +1 -1
  68. package/lib/modules/control-bar/components/meeting-details/index.css +1 -1
  69. package/lib/modules/control-bar/components/meeting-details/index.js +15 -9
  70. package/lib/modules/control-bar/components/more-actions/index.js +3 -21
  71. package/lib/modules/control-bar/components/share-state-nav/index.js +4 -20
  72. package/lib/modules/control-bar/index.d.ts +2 -0
  73. package/lib/modules/control-bar/index.js +3 -1
  74. package/lib/modules/control-bar/store.d.ts +11 -2
  75. package/lib/modules/control-bar/store.js +103 -95
  76. package/lib/modules/control-bar/view.js +1 -6
  77. package/lib/modules/device-pretest/audio-preview/speaker-detection.js +1 -1
  78. package/lib/modules/dialog/components/chat/electron.d.ts +1 -3
  79. package/lib/modules/dialog/components/chat/index.js +24 -17
  80. package/lib/modules/dialog/components/confirm-leave-meeting/index.d.ts +6 -0
  81. package/lib/modules/dialog/components/confirm-leave-meeting/index.js +86 -0
  82. package/lib/modules/dialog/components/control-bar/index.d.ts +1 -2
  83. package/lib/modules/dialog/components/control-bar/index.js +5 -17
  84. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -0
  85. package/lib/modules/dialog/components/dialog-container/component/body.js +4 -2
  86. package/lib/modules/dialog/components/dialog-container/index.css +2 -1
  87. package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
  88. package/lib/modules/dialog/components/dialog-container/index.js +3 -1
  89. package/lib/modules/dialog/components/participant/index.d.ts +0 -1
  90. package/lib/modules/dialog/components/participant/index.js +15 -24
  91. package/lib/modules/dialog/components/pre-setting/electron.d.ts +2 -0
  92. package/lib/modules/dialog/components/pre-setting/electron.js +51 -0
  93. package/lib/modules/dialog/components/pre-setting/index.css +26 -0
  94. package/lib/modules/dialog/components/pre-setting/index.d.ts +6 -0
  95. package/lib/modules/dialog/components/pre-setting/index.js +38 -0
  96. package/lib/modules/dialog/components/pre-setting-container/component/body.d.ts +8 -0
  97. package/lib/modules/dialog/components/pre-setting-container/component/body.js +80 -0
  98. package/lib/modules/dialog/components/pre-setting-container/index.css +82 -0
  99. package/lib/modules/dialog/components/pre-setting-container/index.d.ts +18 -0
  100. package/lib/modules/dialog/components/pre-setting-container/index.js +117 -0
  101. package/lib/modules/dialog/components/rename/index.d.ts +4 -0
  102. package/lib/modules/dialog/components/rename/index.js +72 -0
  103. package/lib/modules/dialog/components/video-window/index.js +18 -16
  104. package/lib/modules/dialog/components/widget/electron.d.ts +2 -1
  105. package/lib/modules/dialog/components/widget/electron.js +3 -2
  106. package/lib/modules/dialog/components/widget/index.d.ts +2 -1
  107. package/lib/modules/dialog/components/widget/index.js +4 -6
  108. package/lib/modules/dialog/dialogs.d.ts +1 -0
  109. package/lib/modules/dialog/dialogs.js +3 -2
  110. package/lib/modules/dialog/hooks/useElectron.d.ts +2 -0
  111. package/lib/modules/dialog/hooks/useElectron.js +11 -13
  112. package/lib/modules/dialog/index.d.ts +2 -0
  113. package/lib/modules/dialog/index.js +2 -1
  114. package/lib/modules/dialog/store.d.ts +8 -3
  115. package/lib/modules/dialog/store.js +38 -26
  116. package/lib/modules/dialog/type.d.ts +1 -0
  117. package/lib/modules/dialog/view.js +2 -1
  118. package/lib/modules/event-confirm/index.d.ts +2 -0
  119. package/lib/modules/event-confirm/index.js +2 -1
  120. package/lib/modules/event-confirm/store.d.ts +9 -1
  121. package/lib/modules/event-confirm/store.js +94 -8
  122. package/lib/modules/event-confirm/view.js +55 -46
  123. package/lib/modules/{sound-effect → event-sound}/index.d.ts +3 -2
  124. package/lib/modules/{sound-effect → event-sound}/index.js +9 -5
  125. package/lib/modules/event-toast/store.js +2 -0
  126. package/lib/modules/interpreter/dialog-content/index.js +4 -1
  127. package/lib/modules/interpreter/index.d.ts +2 -0
  128. package/lib/modules/interpreter/index.js +2 -1
  129. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +3 -0
  130. package/lib/modules/interpreter/store.d.ts +2 -2
  131. package/lib/modules/interpreter/store.js +30 -24
  132. package/lib/modules/interpreter/type.d.ts +2 -0
  133. package/lib/modules/invite/components/pstn-invite.js +3 -9
  134. package/lib/modules/invite/components/voip-invite.css +26 -0
  135. package/lib/modules/invite/components/voip-invite.d.ts +1 -0
  136. package/lib/modules/invite/components/voip-invite.js +8 -11
  137. package/lib/modules/invite/index.css +16 -3
  138. package/lib/modules/invite/index.d.ts +2 -1
  139. package/lib/modules/invite/index.js +2 -1
  140. package/lib/modules/invite/store.d.ts +5 -1
  141. package/lib/modules/invite/store.js +8 -1
  142. package/lib/modules/layout/components/Carousel.d.ts +1 -1
  143. package/lib/modules/layout/components/Carousel.js +16 -118
  144. package/lib/modules/layout/components/CommonVideoRenderer.d.ts +13 -0
  145. package/lib/modules/layout/components/CommonVideoRenderer.js +214 -0
  146. package/lib/modules/layout/components/Gallery.d.ts +1 -0
  147. package/lib/modules/layout/components/Gallery.js +62 -205
  148. package/lib/modules/layout/components/index.css +17 -34
  149. package/lib/modules/layout/index.d.ts +2 -0
  150. package/lib/modules/layout/index.js +2 -1
  151. package/lib/modules/layout/store.d.ts +5 -2
  152. package/lib/modules/layout/store.js +47 -39
  153. package/lib/modules/layout/type.d.ts +4 -0
  154. package/lib/modules/layout/type.js +6 -1
  155. package/lib/modules/live-streaming/store.d.ts +1 -0
  156. package/lib/modules/live-streaming/store.js +19 -8
  157. package/lib/modules/participant/components/confirm-input/index.d.ts +4 -4
  158. package/lib/modules/participant/components/confirm-input/index.js +74 -6
  159. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.css +27 -3
  160. package/lib/modules/participant/components/participants/components/footer/components/footer/index.css +4 -0
  161. package/lib/modules/participant/components/participants/components/footer/components/footer/index.js +3 -2
  162. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.css +4 -3
  163. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +1 -0
  164. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.css +9 -1
  165. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +1 -1
  166. package/lib/modules/participant/components/participants/components/participants/index.css +1 -0
  167. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.css +18 -0
  168. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +12 -5
  169. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +1 -8
  170. package/lib/modules/participant/index.css +6 -0
  171. package/lib/modules/participant/index.d.ts +1 -0
  172. package/lib/modules/participant/index.js +9 -0
  173. package/lib/modules/participant/store.d.ts +6 -0
  174. package/lib/modules/participant/store.js +130 -96
  175. package/lib/modules/pc-audio-connect/store.js +1 -1
  176. package/lib/modules/phone-audio-connect/index.d.ts +2 -0
  177. package/lib/modules/phone-audio-connect/index.js +2 -1
  178. package/lib/modules/phone-audio-connect/store.d.ts +4 -1
  179. package/lib/modules/phone-audio-connect/store.js +4 -2
  180. package/lib/modules/setting/audio-settings/audio-settings.js +70 -48
  181. package/lib/modules/setting/audio-settings/index.css +23 -6
  182. package/lib/modules/setting/general-settings/general-settings.d.ts +1 -2
  183. package/lib/modules/setting/general-settings/general-settings.js +111 -37
  184. package/lib/modules/setting/general-settings/index.css +15 -0
  185. package/lib/modules/setting/index.d.ts +4 -1
  186. package/lib/modules/setting/index.js +7 -4
  187. package/lib/modules/setting/state/index.js +1 -1
  188. package/lib/modules/setting/store.d.ts +24 -11
  189. package/lib/modules/setting/store.js +203 -142
  190. package/lib/modules/setting/video-settings/index.css +13 -2
  191. package/lib/modules/setting/video-settings/video-settings-basic.js +18 -27
  192. package/lib/modules/setting/video-settings/video-settings.d.ts +0 -2
  193. package/lib/modules/setting/video-settings/video-settings.js +3 -2
  194. package/lib/modules/setting/view.d.ts +11 -2
  195. package/lib/modules/setting/view.js +93 -71
  196. package/lib/modules/share-screen/components/selection/index.js +6 -2
  197. package/lib/modules/share-screen/index.d.ts +4 -1
  198. package/lib/modules/share-screen/index.js +3 -1
  199. package/lib/modules/share-screen/store.d.ts +15 -5
  200. package/lib/modules/share-screen/store.js +105 -59
  201. package/lib/modules/share-screen/view.js +1 -1
  202. package/lib/modules/state-bar/index.css +4 -2
  203. package/lib/modules/state-bar/index.d.ts +2 -0
  204. package/lib/modules/state-bar/index.js +2 -1
  205. package/lib/modules/state-bar/layout-config.js +1 -0
  206. package/lib/modules/state-bar/live-streaming-state.js +1 -0
  207. package/lib/modules/state-bar/meeting-detail.css +10 -1
  208. package/lib/modules/state-bar/meeting-details.js +42 -26
  209. package/lib/modules/state-bar/meeting-network-state.css +8 -0
  210. package/lib/modules/state-bar/meeting-time.js +9 -20
  211. package/lib/modules/state-bar/store.d.ts +5 -1
  212. package/lib/modules/state-bar/store.js +10 -3
  213. package/lib/modules/state-bar/view.js +17 -6
  214. package/lib/modules/video-window/components/members/index.js +0 -3
  215. package/lib/modules/waiting-room-layout/index.css +13 -0
  216. package/lib/modules/waiting-room-layout/index.d.ts +2 -1
  217. package/lib/modules/waiting-room-layout/index.js +2 -1
  218. package/lib/modules/waiting-room-layout/store.d.ts +12 -1
  219. package/lib/modules/waiting-room-layout/store.js +42 -6
  220. package/lib/modules/waiting-room-layout/view.js +22 -5
  221. package/lib/modules/whiteboard/components/control-bar/index.css +1 -1
  222. package/lib/modules/whiteboard/components/switch-theme/libs.d.ts +1 -1
  223. package/lib/modules/whiteboard/components/switch-theme/libs.js +3 -1
  224. package/lib/modules/whiteboard/components/toolbar/ style.css +1 -0
  225. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/panel.js +1 -0
  226. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +1 -0
  227. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +3 -14
  228. package/lib/modules/whiteboard/components/toolbar/components/expansion/index.d.ts +1 -0
  229. package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +83 -0
  230. package/lib/modules/whiteboard/components/toolbar/components/extra-tool-picker.js +2 -2
  231. package/lib/modules/whiteboard/components/toolbar/components/history.js +3 -3
  232. package/lib/modules/whiteboard/components/toolbar/components/item/index.d.ts +1 -0
  233. package/lib/modules/whiteboard/components/toolbar/components/item/index.js +42 -0
  234. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +2 -2
  235. package/lib/modules/whiteboard/components/toolbar/components/screen-capture-picker.js +2 -2
  236. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +3 -3
  237. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +6 -6
  238. package/lib/modules/whiteboard/components/toolbar/index.js +9 -113
  239. package/lib/modules/whiteboard/components/toolbar/store.d.ts +18 -0
  240. package/lib/modules/whiteboard/components/toolbar/store.js +276 -83
  241. package/lib/modules/whiteboard/context.d.ts +1 -2
  242. package/lib/modules/whiteboard/index.d.ts +1 -14
  243. package/lib/modules/whiteboard/index.js +131 -426
  244. package/lib/modules/whiteboard/view.js +12 -10
  245. package/lib/modules/widget/sdk.js +2 -1
  246. package/lib/object-manager.d.ts +8 -0
  247. package/lib/object-manager.js +75 -0
  248. package/lib/plugins/browser-runtime-plugin.js +19 -14
  249. package/lib/providers/ability-provider.d.ts +8 -0
  250. package/lib/providers/ability-provider.js +14 -0
  251. package/lib/providers/device-privilege-provider.d.ts +1 -0
  252. package/lib/providers/device-privilege-provider.js +53 -75
  253. package/lib/providers/device-provider.d.ts +18 -8
  254. package/lib/providers/device-provider.js +397 -209
  255. package/lib/providers/device-stream-provider.js +0 -4
  256. package/lib/providers/dialog-provider.d.ts +1 -0
  257. package/lib/providers/dialog-provider.js +4 -18
  258. package/lib/providers/event-provider.js +45 -2
  259. package/lib/providers/interpreter-provider.d.ts +4 -0
  260. package/lib/providers/interpreter-provider.js +166 -137
  261. package/lib/providers/message-provider.js +44 -2
  262. package/lib/providers/privilege-provider.d.ts +33 -0
  263. package/lib/providers/privilege-provider.js +120 -45
  264. package/lib/providers/room-provider.d.ts +12 -10
  265. package/lib/providers/room-provider.js +162 -262
  266. package/lib/providers/screen-share-provider.d.ts +4 -0
  267. package/lib/providers/screen-share-provider.js +3 -6
  268. package/lib/providers/widget-provider.js +6 -4
  269. package/lib/runtime.d.ts +20 -8
  270. package/lib/scenes/main-scene.d.ts +2 -0
  271. package/lib/scenes/main-scene.js +95 -37
  272. package/lib/scenes/waiting-scene.js +16 -13
  273. package/lib/schema.d.ts +55 -32
  274. package/lib/schema.js +23 -9
  275. package/lib/shared-data-source/config.d.ts +6 -2
  276. package/lib/shared-data-source/config.js +81 -10
  277. package/lib/shared-data-source/member-data.d.ts +16 -20
  278. package/lib/shared-data-source/member-data.js +121 -110
  279. package/lib/shared-data-source/screen-share-data-source.d.ts +37 -0
  280. package/lib/shared-data-source/screen-share-data-source.js +134 -0
  281. package/lib/shared-data-source/security-data.d.ts +1 -0
  282. package/lib/shared-data-source/security-data.js +3 -5
  283. package/lib/shared-data-source/setting.d.ts +1 -0
  284. package/lib/shared-data-source/setting.js +33 -17
  285. package/lib/shared-data-source/video-window.d.ts +3 -3
  286. package/lib/shared-data-source/video-window.js +55 -38
  287. package/lib/translations/enUS.d.ts +48 -1
  288. package/lib/translations/enUS.js +101 -17
  289. package/lib/translations/zhCN.d.ts +48 -1
  290. package/lib/translations/zhCN.js +88 -4
  291. package/lib/type.d.ts +40 -20
  292. package/lib/type.js +14 -1
  293. package/lib/ui-manager.d.ts +11 -9
  294. package/lib/ui-manager.js +118 -29
  295. package/lib/ui-scene.d.ts +7 -4
  296. package/lib/ui-scene.js +111 -128
  297. package/lib/utilities/constant.d.ts +3 -1
  298. package/lib/utilities/constant.js +2 -0
  299. package/lib/utilities/copyText.js +15 -11
  300. package/lib/utilities/default-config.d.ts +2 -0
  301. package/lib/utilities/default-config.js +11 -5
  302. package/lib/utilities/i18n-common-data.d.ts +2 -0
  303. package/lib/utilities/i18n-common-data.js +15 -0
  304. package/lib/utilities/logger.d.ts +0 -1
  305. package/lib/utilities/logger.js +3 -4
  306. package/lib/utilities/renderer.d.ts +0 -9
  307. package/lib/utilities/renderer.js +1 -70
  308. package/lib/utilities/screen.js +3 -1
  309. package/lib/utilities/setting-config-storage.d.ts +6 -1
  310. package/lib/utilities/setting-config-storage.js +21 -4
  311. package/lib/utilities/tools.d.ts +7 -6
  312. package/lib/utilities/tools.js +56 -44
  313. package/lib/utilities/ui-resources.d.ts +6 -0
  314. package/lib/utilities/ui-resources.js +47 -9
  315. package/lib/waiting-room-control-manager.d.ts +4 -4
  316. package/lib/waiting-room-control-manager.js +29 -9
  317. package/package.json +6 -6
  318. package/public/assets/browser/images/default1.jpg +0 -0
  319. package/public/assets/browser/images/default2.jpg +0 -0
  320. package/public/assets/browser/images/default3.jpg +0 -0
  321. package/public/assets/browser/images/default4.jpg +0 -0
  322. package/public/assets/browser/images/default5.jpg +0 -0
  323. package/public/assets/browser/images/default6.jpg +0 -0
  324. package/public/assets/browser/images/default7.jpg +0 -0
  325. package/public/assets/browser/sound_effects/pretest.mp3 +0 -0
  326. package/public/assets/browser/sound_effects/recording_started.mp3 +0 -0
  327. package/public/assets/browser/sound_effects/remote_user_joined.mp3 +0 -0
  328. package/public/assets/browser/sound_effects/speaker_test.mp3 +0 -0
  329. package/public/assets/browser/videos/default8.mp4 +0 -0
  330. package/public/assets/browser/videos/default9.mp4 +0 -0
  331. package/public/assets/electron/images/default1.jpg +0 -0
  332. package/public/assets/electron/images/default2.jpg +0 -0
  333. package/public/assets/electron/sound_effects/pretest.mp3 +0 -0
  334. package/public/assets/electron/videos/default8.mp4 +0 -0
  335. package/public/index.html +103 -82
  336. package/lib/hooks/meeting-time.d.ts +0 -15
  337. package/lib/hooks/meeting-time.js +0 -92
  338. package/lib/login-confirm-dialog.d.ts +0 -13
  339. package/lib/login-confirm-dialog.js +0 -85
  340. package/lib/modules/action-bar/components/apps/appitems.d.ts +0 -3
  341. package/lib/modules/action-bar/components/apps/appitems.js +0 -45
  342. package/lib/modules/components/member-window/components/member-board.d.ts +0 -2
  343. package/lib/modules/components/member-window/components/member-board.js +0 -63
  344. package/lib/modules/dialog/components/system-preference/bg1.png +0 -0
  345. package/lib/modules/dialog/components/system-preference/bg2.png +0 -0
  346. package/lib/modules/dialog/types/index.d.ts +0 -70
  347. package/lib/modules/participant/components/attendee/components/microphone-indicator/index.d.ts +0 -6
  348. package/lib/modules/participant/components/attendee/components/microphone-indicator/index.js +0 -28
  349. package/lib/modules/participant/components/attendee/components/user-avatar/index.d.ts +0 -7
  350. package/lib/modules/participant/components/attendee/components/user-avatar/index.js +0 -39
  351. package/lib/modules/participant/components/attendee/index.css +0 -69
  352. package/lib/modules/participant/components/attendee/index.d.ts +0 -4
  353. package/lib/modules/participant/components/attendee/index.js +0 -337
  354. package/lib/modules/participant/components/drop-menu/index.css +0 -60
  355. package/lib/modules/participant/components/drop-menu/index.d.ts +0 -2
  356. package/lib/modules/participant/components/drop-menu/index.js +0 -189
  357. package/lib/modules/participant/components/footer/buttons.d.ts +0 -6
  358. package/lib/modules/participant/components/footer/buttons.js +0 -52
  359. package/lib/modules/participant/components/footer/index.d.ts +0 -4
  360. package/lib/modules/participant/components/footer/index.js +0 -37
  361. package/lib/modules/participant/components/merge/index.d.ts +0 -11
  362. package/lib/modules/participant/components/merge/index.js +0 -49
  363. package/lib/modules/participant/components/rename/index.d.ts +0 -4
  364. package/lib/modules/participant/components/rename/index.js +0 -45
  365. package/lib/modules/participant/components/user-action/index.d.ts +0 -17
  366. package/lib/modules/participant/components/user-action/index.js +0 -169
  367. package/lib/modules/video-window/deviceState/index.d.ts +0 -16
  368. package/lib/modules/video-window/deviceState/index.js +0 -75
  369. package/lib/modules/video-window/members/index.css +0 -51
  370. package/lib/modules/video-window/members/index.d.ts +0 -2
  371. package/lib/modules/video-window/members/index.js +0 -157
  372. package/lib/modules/video-window/speaking/index.css +0 -69
  373. package/lib/modules/video-window/speaking/index.d.ts +0 -3
  374. package/lib/modules/video-window/speaking/index.js +0 -57
  375. package/lib/modules/video-window/topControl/index.css +0 -35
  376. package/lib/modules/video-window/topControl/index.d.ts +0 -3
  377. package/lib/modules/video-window/topControl/index.js +0 -92
  378. /package/lib/modules/{sound-effect → event-sound}/sound-effect-player.d.ts +0 -0
  379. /package/lib/modules/{sound-effect → event-sound}/sound-effect-player.js +0 -0
@@ -211,7 +211,8 @@ var TriggerSubscribeLanguage = exports.TriggerSubscribeLanguage = (0, _mobxReact
211
211
  boxShadow: 'var(--fcr_web_light_dropup_m)',
212
212
  border: 'none',
213
213
  width: '256px'
214
- }
214
+ },
215
+ showArrow: false
215
216
  },
216
217
  id: id,
217
218
  order: order,
@@ -77,7 +77,8 @@ html {
77
77
  }
78
78
 
79
79
  .fcr-action-bar-device-extra:hover,
80
- .fcr-action-bar-extra:hover {
80
+ .fcr-action-bar-extra:hover,
81
+ .fcr-action-bar-extra.active {
81
82
  background: var(--fcr_web_ui_scene_hover2);
82
83
  }
83
84
 
@@ -220,7 +221,7 @@ html {
220
221
  border-top-right-radius: 8px;
221
222
  border: 1px solid var(--fcr_ui_scene_line1);
222
223
  border-bottom: none;
223
- background-color: #fff;
224
+ background-color: var(--fcr_web_ui_scene_fill2);
224
225
  cursor: pointer;
225
226
  }
226
227
 
@@ -67,7 +67,8 @@ var FcrActionBarUIModule = exports.FcrActionBarUIModule = /*#__PURE__*/function
67
67
  sharedDevicePrivilegeDataSource: this.sharedDevicePrivilegeDataSource,
68
68
  sharedMemberDataSource: this.sharedMemberDataSource,
69
69
  widgetProvider: this.widgetProvider,
70
- sharedSecuritySharedDataSource: this.sharedSecuritySharedDataSource
70
+ sharedSecuritySharedDataSource: this.sharedSecuritySharedDataSource,
71
+ abilityProvider: this.abilityProvider
71
72
  });
72
73
  this._deviceControlStore = new _store2.DeviceControlStore((_this$currentRoomCont3 = this.currentRoomControlProvider) === null || _this$currentRoomCont3 === void 0 ? void 0 : _this$currentRoomCont3.currentRoomControl, this.deviceProvider, this.dialogProvider, this.deviceStreamProvider, this.sharedDevicePrivilegeDataSource);
73
74
  this._leaveMeetingStore = new _store3.LeaveMeetingStore(privilegeProvider, this.roomProvider, (_this$currentRoomCont4 = this.currentRoomControlProvider) === null || _this$currentRoomCont4 === void 0 ? void 0 : _this$currentRoomCont4.currentRoomControl, this.sharedMemberDataSource, this.abilityProvider, this.dialogProvider);
@@ -1,3 +1,4 @@
1
+ import { FcrConnectionState } from 'fcr-core';
1
2
  import { FcrLiveStreamingState, FcrRecordingState, FcrUserInfo, FcrUserRole, FcrLineType } from 'fcr-core/lib/type';
2
3
  import { DeviceSettingDialogConfig } from '../setting/store';
3
4
  import { FcrUIRoomType, FcrUIWebWidgetConfig } from '../../type';
@@ -24,6 +25,7 @@ import { FcrUISharedDevicePrivilegeDataSource } from '../../shared-data-source/d
24
25
  import { FcrUIMemberSharedDataSource } from '../../shared-data-source/member-data';
25
26
  import { FcrUIWidgetProvider } from '../../providers/widget-provider';
26
27
  import { FcrSecurityCheckedStateType, FcrUISecuritySharedDataSource } from '../../shared-data-source/security-data';
28
+ import { FcrUIAbilityProviderImpl } from '../../providers/ability-provider';
27
29
  export declare enum AudioConnectType {
28
30
  NONE = 0,
29
31
  COMPUTER = 1,
@@ -55,6 +57,7 @@ export default class ActionBarStore {
55
57
  private _roomType;
56
58
  private _widgetProvider;
57
59
  private _sharedSecuritySharedDataSource;
60
+ private _abilityProvider;
58
61
  private _userObserver;
59
62
  private _roomObserver;
60
63
  private _mainRoomObserver;
@@ -82,6 +85,7 @@ export default class ActionBarStore {
82
85
  accessor popoverOpened: boolean;
83
86
  accessor stateBarLeaveMeeting: boolean;
84
87
  accessor hasOfflineUserExistence: boolean;
88
+ accessor connectionState: FcrConnectionState;
85
89
  constructor(args: {
86
90
  roomProvider: FcrUIRoomProvider;
87
91
  roomControl: FcrBaseRoomControl;
@@ -102,6 +106,7 @@ export default class ActionBarStore {
102
106
  sharedMemberDataSource: FcrUIMemberSharedDataSource;
103
107
  widgetProvider: FcrUIWidgetProvider;
104
108
  sharedSecuritySharedDataSource: FcrUISecuritySharedDataSource;
109
+ abilityProvider: FcrUIAbilityProviderImpl;
105
110
  });
106
111
  get checkedStateMap(): FcrSecurityCheckedStateType;
107
112
  setCheckedStateMap(val: FcrSecurityCheckedStateType): void;
@@ -85,7 +85,7 @@ var _constant = require("../../utilities/constant");
85
85
  var _enums = require("./enums");
86
86
  var _logger = require("../../utilities/logger");
87
87
  var _ActionBarStore;
88
- var _initProto, _init_newMessageTooltipVisible, _init_totalWaitingRoomUser, _init_liveStreamingState, _init_currentMenuIs, _init_cloudRecordingState, _init_connectionSettingVisible, _init_folded, _init_boardOwnerUser, _init_hasScreenShare, _init_showArrow, _init_phoneMicEnabled, _init_chatTabIndex, _init_popoverOpened, _init_stateBarLeaveMeeting, _init_hasOfflineUserExistence, _setCheckedStateMapDecs, _pauseCloudRecordingDecs, _resumeCloudRecordingDecs, _stopCloudRecordingDecs, _showLockedRoomToastDecs, _toggleLayoutBarLockDecs, _showNewMessageTooltipDecs, _hideNewMessageTooltipDecs, _switchMenuDecs, _setPopoverOpenedDecs, _setStateBarLeaveMeetingDecs, _handleJoinWaitingRoomDecs, _toggleFoldDecs, _setShowArrowDecs, _setEnableWaitingRoomDecs, _kickOutWaitingRoomAllMemberDecs, _moveToMainRoomAllMemberDecs, _handleRemoteUsersJoinedDecs, _handleRemoteUsersLeftDecs, _handleLiveStreamingStateUpdatedDecs, _handleChatVisibleDecs, _handlerTraceScreenCaptureStateUpdateDecs, _operateWaitingRoomDecs, _handleCloudRecordingStateUpdatedDecs, _handleStreamsAddedOrUpdatedDecs, _setOutputLanguageDecs, _subscribeLanguageDecs, _subscribeExtraOriginLanguageDecs, _getOfflineUserExistenceStateDecs, _openWidgetDecs, _closeWidgetDecs, _ref;
88
+ var _initProto, _init_newMessageTooltipVisible, _init_totalWaitingRoomUser, _init_liveStreamingState, _init_currentMenuIs, _init_cloudRecordingState, _init_connectionSettingVisible, _init_folded, _init_boardOwnerUser, _init_hasScreenShare, _init_showArrow, _init_phoneMicEnabled, _init_chatTabIndex, _init_popoverOpened, _init_stateBarLeaveMeeting, _init_hasOfflineUserExistence, _init_connectionState, _setCheckedStateMapDecs, _pauseCloudRecordingDecs, _resumeCloudRecordingDecs, _stopCloudRecordingDecs, _showLockedRoomToastDecs, _toggleLayoutBarLockDecs, _showNewMessageTooltipDecs, _hideNewMessageTooltipDecs, _switchMenuDecs, _setPopoverOpenedDecs, _setStateBarLeaveMeetingDecs, _handleJoinWaitingRoomDecs, _toggleFoldDecs, _setShowArrowDecs, _setEnableWaitingRoomDecs, _kickOutWaitingRoomAllMemberDecs, _moveToMainRoomAllMemberDecs, _handleRemoteUsersJoinedDecs, _handleRemoteUsersLeftDecs, _handleLiveStreamingStateUpdatedDecs, _handleChatVisibleDecs, _handlerTraceScreenCaptureStateUpdateDecs, _operateWaitingRoomDecs, _handleCloudRecordingStateUpdatedDecs, _handleStreamsAddedOrUpdatedDecs, _setOutputLanguageDecs, _subscribeLanguageDecs, _subscribeExtraOriginLanguageDecs, _getOfflineUserExistenceStateDecs, _openWidgetDecs, _closeWidgetDecs, _ref;
89
89
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
90
90
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
91
91
  function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
@@ -117,6 +117,7 @@ var _L = /*#__PURE__*/new WeakMap();
117
117
  var _M = /*#__PURE__*/new WeakMap();
118
118
  var _N = /*#__PURE__*/new WeakMap();
119
119
  var _O = /*#__PURE__*/new WeakMap();
120
+ var _P = /*#__PURE__*/new WeakMap();
120
121
  _ref = (_setCheckedStateMapDecs = [_mobx.action, _mobx.action.bound], _pauseCloudRecordingDecs = [_decorator.bound, (0, _decorator.debounced)(500, {
121
122
  leading: true
122
123
  })], _resumeCloudRecordingDecs = [_decorator.bound, (0, _decorator.debounced)(500, {
@@ -182,6 +183,7 @@ var ActionBarStore = exports["default"] = /*#__PURE__*/function () {
182
183
  _classPrivateFieldInitSpec(this, _M, _init_popoverOpened(this, false));
183
184
  _classPrivateFieldInitSpec(this, _N, _init_stateBarLeaveMeeting(this, false));
184
185
  _classPrivateFieldInitSpec(this, _O, _init_hasOfflineUserExistence(this, true));
186
+ _classPrivateFieldInitSpec(this, _P, _init_connectionState(this, _fcrCore.FcrConnectionState.CONNECTED));
185
187
  this._roomProvider = args.roomProvider;
186
188
  this._roomControl = args.roomControl;
187
189
  this._deviceProvider = args.deviceProvider;
@@ -199,6 +201,7 @@ var ActionBarStore = exports["default"] = /*#__PURE__*/function () {
199
201
  this._sharedMemberDataSource = args.sharedMemberDataSource;
200
202
  this._widgetProvider = args.widgetProvider;
201
203
  this._sharedSecuritySharedDataSource = args.sharedSecuritySharedDataSource;
204
+ this._abilityProvider = args.abilityProvider;
202
205
  this._streamControl = args.roomControl.getStreamControl();
203
206
  this._userControl = this._roomControl.getUserControl();
204
207
  this._streamControl = this._roomControl.getStreamControl();
@@ -385,6 +388,14 @@ var ActionBarStore = exports["default"] = /*#__PURE__*/function () {
385
388
  set: function set(v) {
386
389
  _classPrivateFieldSet(_O, this, v);
387
390
  }
391
+ }, {
392
+ key: "connectionState",
393
+ get: function get() {
394
+ return _classPrivateFieldGet(_P, this);
395
+ },
396
+ set: function set(v) {
397
+ _classPrivateFieldSet(_P, this, v);
398
+ }
388
399
  }, {
389
400
  key: "checkedStateMap",
390
401
  get: function get() {
@@ -521,24 +532,24 @@ var ActionBarStore = exports["default"] = /*#__PURE__*/function () {
521
532
  }, {
522
533
  key: "hasStopScreenSharePermission",
523
534
  get: function get() {
524
- var _this$_sharingOwnerUs;
525
- return this.hasScreenShare && this.hasEnableStartScreenSharePermission && this._sharingOwnerUser && this.localUserId !== ((_this$_sharingOwnerUs = this._sharingOwnerUser) === null || _this$_sharingOwnerUs === void 0 ? void 0 : _this$_sharingOwnerUs.userId);
535
+ var _this$sharingOwnerUse;
536
+ return this.hasScreenShare && this.hasEnableStartScreenSharePermission && this.sharingOwnerUser && this.localUserId !== ((_this$sharingOwnerUse = this.sharingOwnerUser) === null || _this$sharingOwnerUse === void 0 ? void 0 : _this$sharingOwnerUse.userId);
526
537
  }
527
538
  }, {
528
539
  key: "sharingOwnerUser",
529
540
  get: function get() {
530
- return this._sharingOwnerUser;
541
+ return this._screenShareProvider.screenSharingOwner;
531
542
  }
532
543
  }, {
533
544
  key: "hasEnableStartScreenSharePermission",
534
545
  get: function get() {
535
- var _this$sharingOwnerUse;
536
- return this._privilegeProvider.hasStopScreenSharePermission((_this$sharingOwnerUse = this.sharingOwnerUser) === null || _this$sharingOwnerUse === void 0 ? void 0 : _this$sharingOwnerUse.userRole);
546
+ var _this$sharingOwnerUse2;
547
+ return this._privilegeProvider.hasStopScreenSharePermission((_this$sharingOwnerUse2 = this.sharingOwnerUser) === null || _this$sharingOwnerUse2 === void 0 ? void 0 : _this$sharingOwnerUse2.userRole);
537
548
  }
538
549
  }, {
539
550
  key: "hasStartLiveStreamingPermission",
540
551
  get: function get() {
541
- return this._privilegeProvider.hasStartLiveStreamingPermission();
552
+ return this._abilityProvider.isLiveSupported() && this._privilegeProvider.hasStartLiveStreamingPermission();
542
553
  }
543
554
  }, {
544
555
  key: "hasEnableStartAudioPermission",
@@ -644,7 +655,7 @@ var ActionBarStore = exports["default"] = /*#__PURE__*/function () {
644
655
  }, {
645
656
  key: "hasEnableInterpreterPermission",
646
657
  get: function get() {
647
- return this._privilegeProvider.hasEnableInterpreterPermission();
658
+ return this._abilityProvider.isInterpreterSupported() && this._privilegeProvider.hasEnableInterpreterPermission();
648
659
  }
649
660
  }, {
650
661
  key: "hasDisableInterpreterPermission",
@@ -1096,6 +1107,12 @@ var ActionBarStore = exports["default"] = /*#__PURE__*/function () {
1096
1107
  },
1097
1108
  okText: (0, _i18n.transI18n)('fmt_waitingroom_mobile_setting_popup_button_admit_all'),
1098
1109
  cancelText: (0, _i18n.transI18n)('fmt_waitingroom_mobile_setting_popup_button_cancel'),
1110
+ cancelButtonProps: {
1111
+ block: true
1112
+ },
1113
+ okButtonProps: {
1114
+ block: true
1115
+ },
1099
1116
  alignCenter: true
1100
1117
  });
1101
1118
  _context.next = 8;
@@ -1177,11 +1194,11 @@ var ActionBarStore = exports["default"] = /*#__PURE__*/function () {
1177
1194
  value: function _interceptShareScreen() {
1178
1195
  var _this5 = this;
1179
1196
  if (this.hasScreenShare || this.boardOwnerUser && this.boardOwnerUser.userId !== this.localUserId) {
1180
- var _this$_sharingOwnerUs2;
1197
+ var _this$sharingOwnerUse3;
1181
1198
  var confirmKey = this._dialogProvider.openConfirmDialog({
1182
1199
  title: (0, _i18n.transI18n)('fmt_share_tips_otherssharing'),
1183
1200
  content: (0, _i18n.transI18n)("fmt_share_tips_stopothersharing", {
1184
- reason1: ((_this$_sharingOwnerUs2 = this._sharingOwnerUser) === null || _this$_sharingOwnerUs2 === void 0 ? void 0 : _this$_sharingOwnerUs2.userName) || (0, _i18n.transI18n)('fmt_actionbar_screenshare_labels_others')
1201
+ reason1: ((_this$sharingOwnerUse3 = this.sharingOwnerUser) === null || _this$sharingOwnerUse3 === void 0 ? void 0 : _this$sharingOwnerUse3.userName) || (0, _i18n.transI18n)('fmt_actionbar_screenshare_labels_others')
1185
1202
  }),
1186
1203
  okText: (0, _i18n.transI18n)('fmt_screenshare_continue_share'),
1187
1204
  closable: false,
@@ -1541,7 +1558,7 @@ var ActionBarStore = exports["default"] = /*#__PURE__*/function () {
1541
1558
  }]);
1542
1559
  }();
1543
1560
  _ActionBarStore = ActionBarStore;
1544
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ActionBarStore, [[_mobx.observable, 1, "newMessageTooltipVisible"], [_mobx.observable, 1, "totalWaitingRoomUser"], [_mobx.observable, 1, "liveStreamingState"], [_mobx.observable, 1, "currentMenuIs"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.observable, 1, "connectionSettingVisible"], [_mobx.observable, 1, "folded"], [_mobx.observable, 1, "boardOwnerUser"], [_mobx.observable, 1, "hasScreenShare"], [_mobx.observable, 1, "showArrow"], [_mobx.observable, 1, "phoneMicEnabled"], [_mobx.observable, 1, "chatTabIndex"], [_mobx.observable, 1, "popoverOpened"], [_mobx.observable, 1, "stateBarLeaveMeeting"], [_mobx.observable, 1, "hasOfflineUserExistence"], [_mobx.computed, 3, "checkedStateMap"], [_setCheckedStateMapDecs, 18, "setCheckedStateMap"], [_mobx.computed, 3, "registeredWidgetConfigs"], [_mobx.computed, 3, "users"], [_mobx.computed, 3, "localUserRole"], [_mobx.computed, 3, "localUserId"], [_mobx.computed, 3, "totalUser"], [_mobx.computed, 3, "isPstnUser"], [_mobx.computed, 3, "asideLayout"], [_mobx.computed, 3, "chatRenderAt"], [_mobx.computed, 3, "participantsRenderAt"], [_mobx.computed, 3, "participantVisible"], [_mobx.computed, 3, "chatVisible"], [_mobx.computed, 3, "remoteUsers"], [_mobx.computed, 3, "hasStartScreenSharePermission"], [_mobx.computed, 3, "hasStopScreenSharePermission"], [_mobx.computed, 3, "sharingOwnerUser"], [_mobx.computed, 3, "hasEnableStartScreenSharePermission"], [_mobx.computed, 3, "hasStartLiveStreamingPermission"], [_mobx.computed, 3, "hasEnableStartAudioPermission"], [_mobx.computed, 3, "hasEnableChangeNamePermission"], [_mobx.computed, 3, "hasEnableStartVideoPermission"], [_mobx.computed, 3, "hasLockRoomPermission"], [_mobx.computed, 3, "hasEnableJoinWithAudioPermission"], [_mobx.computed, 3, "hasWaitingRoomPermission"], [_mobx.computed, 3, "hasWatermarkDisablePermission"], [_mobx.computed, 3, "hasEnableStartSharePermission"], [_mobx.computed, 3, "hasAllowWriteBoardPermission"], [_mobx.computed, 3, "hasCloseWriteBoardPermission"], [_mobx.computed, 3, "hasAllowScreenShareAndBoardPermission"], [_mobx.computed, 3, "hasAllowChatPermission"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasAssignHostBeforeLeavingPermission"], [_mobx.computed, 3, "hasEndRoomPermission"], [_mobx.computed, 3, "isScreenShareAndBoardEnabled"], [_mobx.computed, 3, "isBoardWriteEnabled"], [_mobx.computed, 3, "isWaterMarkEnabled"], [_mobx.computed, 3, "isMulti"], [_mobx.computed, 3, "hasEnableInterpreterPermission"], [_mobx.computed, 3, "hasDisableInterpreterPermission"], [_mobx.computed, 3, "microphoneEnabled"], [_mobx.computed, 3, "allNewMessage"], [_mobx.computed, 3, "isMainRoom"], [_mobx.computed, 3, "hasAllowChangeNamePromission"], [_mobx.computed, 3, "hasDisallowChangeNamePromission"], [_mobx.computed, 3, "newMessageCount"], [_pauseCloudRecordingDecs, 2, "pauseCloudRecording"], [_resumeCloudRecordingDecs, 2, "resumeCloudRecording"], [_stopCloudRecordingDecs, 2, "stopCloudRecording"], [_decorator.bound, 2, "startCloudRecording"], [_showLockedRoomToastDecs, 18, "showLockedRoomToast"], [_toggleLayoutBarLockDecs, 18, "toggleLayoutBarLock"], [_showNewMessageTooltipDecs, 18, "showNewMessageTooltip"], [_hideNewMessageTooltipDecs, 18, "hideNewMessageTooltip"], [_switchMenuDecs, 18, "switchMenu"], [_mobx.computed, 3, "isLocked"], [_decorator.bound, 2, "isWaitingRoomEnabled"], [_decorator.bound, 2, "isAllowJoinWithAudioEnabled"], [_decorator.bound, 2, "enableMicrophone"], [_decorator.bound, 2, "setAllowWriteBoard"], [_decorator.bound, 2, "setAllowScreenShare"], [_setPopoverOpenedDecs, 18, "setPopoverOpened"], [_setStateBarLeaveMeetingDecs, 18, "setStateBarLeaveMeeting"], [_decorator.bound, 2, "getRoomType"], [_decorator.bound, 2, "allowJoinWithMuteAudio"], [_decorator.bound, 2, "setAllowJoinWithMuteAudio"], [_decorator.bound, 2, "isLockRoomEnabled"], [_decorator.bound, 2, "setLockRoomEnabled"], [_decorator.bound, 2, "setAllowShareScreen"], [_decorator.bound, 2, "allowShareScreen"], [_decorator.bound, 2, "allowWriteBoard"], [_decorator.bound, 2, "allowChat"], [_decorator.bound, 2, "setAllowChat"], [_decorator.bound, 2, "allowUnmuteSelfAudio"], [_decorator.bound, 2, "setAllowUnmuteSelfAudio"], [_decorator.bound, 2, "allowUnmuteSelfVideo"], [_decorator.bound, 2, "setAllowUnmuteSelfVideo"], [_decorator.bound, 2, "allowChangeName"], [_decorator.bound, 2, "toggleChat"], [_decorator.bound, 2, "openChat"], [_decorator.bound, 2, "closeChat"], [_decorator.bound, 2, "toggleParticipants"], [_decorator.bound, 2, "openParticipants"], [_decorator.bound, 2, "closeParticipants"], [_decorator.bound, 2, "openDeviceSettingDialog"], [_decorator.bound, 2, "startScreenShare"], [_decorator.bound, 2, "openInterpreterDialog"], [_decorator.bound, 2, "openWhiteboard"], [_decorator.bound, 2, "closeWhiteboard"], [_decorator.bound, 2, "closeShareScreen"], [_decorator.bound, 2, "openLiveStreamingDialog"], [_decorator.bound, 2, "toggleConnection"], [_decorator.bound, 2, "openConnection"], [_decorator.bound, 2, "closeConnection"], [_handleJoinWaitingRoomDecs, 18, "_handleJoinWaitingRoom"], [_toggleFoldDecs, 18, "toggleFold"], [_setShowArrowDecs, 18, "setShowArrow"], [_setEnableWaitingRoomDecs, 18, "setEnableWaitingRoom"], [_kickOutWaitingRoomAllMemberDecs, 18, "kickOutWaitingRoomAllMember"], [_moveToMainRoomAllMemberDecs, 18, "moveToMainRoomAllMember"], [_decorator.bound, 2, "_interceptShareScreen"], [_decorator.bound, 2, "_interceptShareBoard"], [_handleRemoteUsersJoinedDecs, 18, "_handleRemoteUsersJoined"], [_handleRemoteUsersLeftDecs, 18, "_handleRemoteUsersLeft"], [_handleLiveStreamingStateUpdatedDecs, 18, "_handleLiveStreamingStateUpdated"], [_handleChatVisibleDecs, 18, "_handleChatVisible"], [_handlerTraceScreenCaptureStateUpdateDecs, 18, "_handlerTraceScreenCaptureStateUpdate"], [_decorator.bound, 2, "setAllowWaterMark"], [_decorator.bound, 2, "setWaterMarkLineType"], [_decorator.bound, 2, "setAlllowChangeName"], [_decorator.bound, 2, "_onEvent"], [_operateWaitingRoomDecs, 18, "_operateWaitingRoom"], [_handleCloudRecordingStateUpdatedDecs, 18, "_handleCloudRecordingStateUpdated"], [_handleStreamsAddedOrUpdatedDecs, 18, "_handleStreamsAddedOrUpdated"], [_setOutputLanguageDecs, 18, "setOutputLanguage"], [_subscribeLanguageDecs, 18, "subscribeLanguage"], [_subscribeExtraOriginLanguageDecs, 18, "subscribeExtraOriginLanguage"], [_getOfflineUserExistenceStateDecs, 18, "getOfflineUserExistenceState"], [_openWidgetDecs, 18, "openWidget"], [_closeWidgetDecs, 18, "closeWidget"]], []).e, 16);
1561
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ActionBarStore, [[_mobx.observable, 1, "newMessageTooltipVisible"], [_mobx.observable, 1, "totalWaitingRoomUser"], [_mobx.observable, 1, "liveStreamingState"], [_mobx.observable, 1, "currentMenuIs"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.observable, 1, "connectionSettingVisible"], [_mobx.observable, 1, "folded"], [_mobx.observable, 1, "boardOwnerUser"], [_mobx.observable, 1, "hasScreenShare"], [_mobx.observable, 1, "showArrow"], [_mobx.observable, 1, "phoneMicEnabled"], [_mobx.observable, 1, "chatTabIndex"], [_mobx.observable, 1, "popoverOpened"], [_mobx.observable, 1, "stateBarLeaveMeeting"], [_mobx.observable, 1, "hasOfflineUserExistence"], [_mobx.observable, 1, "connectionState"], [_mobx.computed, 3, "checkedStateMap"], [_setCheckedStateMapDecs, 18, "setCheckedStateMap"], [_mobx.computed, 3, "registeredWidgetConfigs"], [_mobx.computed, 3, "asideLayout"], [_mobx.computed, 3, "chatRenderAt"], [_mobx.computed, 3, "participantsRenderAt"], [_mobx.computed, 3, "participantVisible"], [_mobx.computed, 3, "chatVisible"], [_mobx.computed, 3, "hasStartScreenSharePermission"], [_mobx.computed, 3, "hasStopScreenSharePermission"], [_mobx.computed, 3, "sharingOwnerUser"], [_mobx.computed, 3, "hasEnableStartScreenSharePermission"], [_mobx.computed, 3, "hasStartLiveStreamingPermission"], [_mobx.computed, 3, "hasEnableStartAudioPermission"], [_mobx.computed, 3, "hasEnableChangeNamePermission"], [_mobx.computed, 3, "hasEnableStartVideoPermission"], [_mobx.computed, 3, "hasLockRoomPermission"], [_mobx.computed, 3, "hasEnableJoinWithAudioPermission"], [_mobx.computed, 3, "hasWaitingRoomPermission"], [_mobx.computed, 3, "hasWatermarkDisablePermission"], [_mobx.computed, 3, "hasEnableStartSharePermission"], [_mobx.computed, 3, "hasAllowWriteBoardPermission"], [_mobx.computed, 3, "hasCloseWriteBoardPermission"], [_mobx.computed, 3, "hasAllowScreenShareAndBoardPermission"], [_mobx.computed, 3, "hasAllowChatPermission"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasAssignHostBeforeLeavingPermission"], [_mobx.computed, 3, "hasEndRoomPermission"], [_mobx.computed, 3, "isScreenShareAndBoardEnabled"], [_mobx.computed, 3, "isBoardWriteEnabled"], [_mobx.computed, 3, "isWaterMarkEnabled"], [_mobx.computed, 3, "isMulti"], [_mobx.computed, 3, "hasEnableInterpreterPermission"], [_mobx.computed, 3, "hasDisableInterpreterPermission"], [_mobx.computed, 3, "microphoneEnabled"], [_mobx.computed, 3, "allNewMessage"], [_mobx.computed, 3, "isMainRoom"], [_mobx.computed, 3, "hasAllowChangeNamePromission"], [_mobx.computed, 3, "hasDisallowChangeNamePromission"], [_mobx.computed, 3, "newMessageCount"], [_pauseCloudRecordingDecs, 2, "pauseCloudRecording"], [_resumeCloudRecordingDecs, 2, "resumeCloudRecording"], [_stopCloudRecordingDecs, 2, "stopCloudRecording"], [_decorator.bound, 2, "startCloudRecording"], [_showLockedRoomToastDecs, 18, "showLockedRoomToast"], [_toggleLayoutBarLockDecs, 18, "toggleLayoutBarLock"], [_showNewMessageTooltipDecs, 18, "showNewMessageTooltip"], [_hideNewMessageTooltipDecs, 18, "hideNewMessageTooltip"], [_switchMenuDecs, 18, "switchMenu"], [_mobx.computed, 3, "isLocked"], [_decorator.bound, 2, "isWaitingRoomEnabled"], [_decorator.bound, 2, "isAllowJoinWithAudioEnabled"], [_decorator.bound, 2, "enableMicrophone"], [_decorator.bound, 2, "setAllowWriteBoard"], [_decorator.bound, 2, "setAllowScreenShare"], [_setPopoverOpenedDecs, 18, "setPopoverOpened"], [_setStateBarLeaveMeetingDecs, 18, "setStateBarLeaveMeeting"], [_decorator.bound, 2, "getRoomType"], [_decorator.bound, 2, "allowJoinWithMuteAudio"], [_decorator.bound, 2, "setAllowJoinWithMuteAudio"], [_decorator.bound, 2, "isLockRoomEnabled"], [_decorator.bound, 2, "setLockRoomEnabled"], [_decorator.bound, 2, "setAllowShareScreen"], [_decorator.bound, 2, "allowShareScreen"], [_decorator.bound, 2, "allowWriteBoard"], [_decorator.bound, 2, "allowChat"], [_decorator.bound, 2, "setAllowChat"], [_decorator.bound, 2, "allowUnmuteSelfAudio"], [_decorator.bound, 2, "setAllowUnmuteSelfAudio"], [_decorator.bound, 2, "allowUnmuteSelfVideo"], [_decorator.bound, 2, "setAllowUnmuteSelfVideo"], [_decorator.bound, 2, "allowChangeName"], [_decorator.bound, 2, "toggleChat"], [_decorator.bound, 2, "openChat"], [_decorator.bound, 2, "closeChat"], [_decorator.bound, 2, "toggleParticipants"], [_decorator.bound, 2, "openParticipants"], [_decorator.bound, 2, "closeParticipants"], [_decorator.bound, 2, "openDeviceSettingDialog"], [_decorator.bound, 2, "startScreenShare"], [_decorator.bound, 2, "openInterpreterDialog"], [_decorator.bound, 2, "openWhiteboard"], [_decorator.bound, 2, "closeWhiteboard"], [_decorator.bound, 2, "closeShareScreen"], [_decorator.bound, 2, "openLiveStreamingDialog"], [_decorator.bound, 2, "toggleConnection"], [_decorator.bound, 2, "openConnection"], [_decorator.bound, 2, "closeConnection"], [_handleJoinWaitingRoomDecs, 18, "_handleJoinWaitingRoom"], [_toggleFoldDecs, 18, "toggleFold"], [_setShowArrowDecs, 18, "setShowArrow"], [_setEnableWaitingRoomDecs, 18, "setEnableWaitingRoom"], [_kickOutWaitingRoomAllMemberDecs, 18, "kickOutWaitingRoomAllMember"], [_moveToMainRoomAllMemberDecs, 18, "moveToMainRoomAllMember"], [_decorator.bound, 2, "_interceptShareScreen"], [_decorator.bound, 2, "_interceptShareBoard"], [_handleRemoteUsersJoinedDecs, 18, "_handleRemoteUsersJoined"], [_handleRemoteUsersLeftDecs, 18, "_handleRemoteUsersLeft"], [_handleLiveStreamingStateUpdatedDecs, 18, "_handleLiveStreamingStateUpdated"], [_handleChatVisibleDecs, 18, "_handleChatVisible"], [_handlerTraceScreenCaptureStateUpdateDecs, 18, "_handlerTraceScreenCaptureStateUpdate"], [_decorator.bound, 2, "setAllowWaterMark"], [_decorator.bound, 2, "setWaterMarkLineType"], [_decorator.bound, 2, "setAlllowChangeName"], [_decorator.bound, 2, "_onEvent"], [_operateWaitingRoomDecs, 18, "_operateWaitingRoom"], [_handleCloudRecordingStateUpdatedDecs, 18, "_handleCloudRecordingStateUpdated"], [_handleStreamsAddedOrUpdatedDecs, 18, "_handleStreamsAddedOrUpdated"], [_setOutputLanguageDecs, 18, "setOutputLanguage"], [_subscribeLanguageDecs, 18, "subscribeLanguage"], [_subscribeExtraOriginLanguageDecs, 18, "subscribeExtraOriginLanguage"], [_getOfflineUserExistenceStateDecs, 18, "getOfflineUserExistenceState"], [_openWidgetDecs, 18, "openWidget"], [_closeWidgetDecs, 18, "closeWidget"]], []).e, 17);
1545
1562
  _init_newMessageTooltipVisible = _applyDecs$e[0];
1546
1563
  _init_totalWaitingRoomUser = _applyDecs$e[1];
1547
1564
  _init_liveStreamingState = _applyDecs$e[2];
@@ -1557,5 +1574,6 @@ _init_chatTabIndex = _applyDecs$e[11];
1557
1574
  _init_popoverOpened = _applyDecs$e[12];
1558
1575
  _init_stateBarLeaveMeeting = _applyDecs$e[13];
1559
1576
  _init_hasOfflineUserExistence = _applyDecs$e[14];
1560
- _initProto = _applyDecs$e[15];
1577
+ _init_connectionState = _applyDecs$e[15];
1578
+ _initProto = _applyDecs$e[16];
1561
1579
  var ActionBarContext = exports.ActionBarContext = /*#__PURE__*/(0, _react.createContext)(null);
@@ -48,6 +48,7 @@ export interface AssignHostProps {
48
48
  remoteUsers: FcrUserInfo[];
49
49
  assignHost: (user: FcrUserInfo) => void;
50
50
  setPopoverOpened: React.Dispatch<React.SetStateAction<boolean>>;
51
+ setCanAssign: (value: boolean) => void;
51
52
  handleKeepConnect?: () => void;
52
53
  loading?: boolean;
53
54
  }
@@ -464,7 +464,7 @@ var ChatRoomStore = exports.ChatRoomStore = /*#__PURE__*/function () {
464
464
  nickName: userName,
465
465
  uid: userId,
466
466
  isPrivate: isPrivate,
467
- target: target || (isPrivate ? 'Me' : 'All')
467
+ target: target || (isPrivate ? (0, _i18n.transI18n)('fmt_participant_label_Me') : 'All')
468
468
  }, type === _type.FcrChatRoomMessageType.Text ? {
469
469
  msg: message.content
470
470
  } : {
@@ -1,3 +1,3 @@
1
- import './index.css';
2
1
  import { MessageBarProps } from '../../types';
2
+ import './index.css';
3
3
  export declare const MessageBar: ({ styles, users }: React.PropsWithChildren<MessageBarProps>) => import("react/jsx-runtime").JSX.Element;
@@ -29,17 +29,17 @@ var _textBubble = require("agora-ui-foundation/lib/components/text-bubble");
29
29
  var _iconText = require("agora-ui-foundation/lib/components/icon-text");
30
30
  var _classnames = _interopRequireDefault(require("classnames"));
31
31
  var _react = require("react");
32
- require("./index.css");
33
32
  var _chatSelect = require("../chat-select");
34
33
  var _store = require("../../store");
35
34
  var _mobxReact = require("mobx-react");
36
35
  var _i18n = require("agora-ui-foundation/lib/i18n");
37
36
  var _types = require("../../types");
37
+ require("./index.css");
38
38
  var _jsxRuntime = require("react/jsx-runtime");
39
39
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
40
40
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
41
41
  var MessageBar = exports.MessageBar = (0, _mobxReact.observer)(function (_ref) {
42
- var _users$filter, _privateTargetUser$us, _privateTargetUser$us2;
42
+ var _users$filter, _privateTargetUser$us;
43
43
  var styles = _ref.styles,
44
44
  _ref$users = _ref.users,
45
45
  users = _ref$users === void 0 ? [] : _ref$users;
@@ -77,6 +77,7 @@ var MessageBar = exports.MessageBar = (0, _mobxReact.observer)(function (_ref) {
77
77
  chatLevel = _ref2.chatLevel;
78
78
  var selectedUserId = (_privateTargetUser$us = privateTargetUser === null || privateTargetUser === void 0 ? void 0 : privateTargetUser.userId) !== null && _privateTargetUser$us !== void 0 ? _privateTargetUser$us : _types.USER_ALL;
79
79
  var chatSelectNoTitle = localIsManager || chatLevel === 'everyone' || chatLevel === 'no_one';
80
+ var privateTargetUserName = (privateTargetUser === null || privateTargetUser === void 0 ? void 0 : privateTargetUser.userName) === 'All' ? t('fmt_chat_option_all') : privateTargetUser === null || privateTargetUser === void 0 ? void 0 : privateTargetUser.userName;
80
81
  var title = chatSelectNoTitle ? undefined : /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
81
82
  className: "assign-host-title",
82
83
  children: chatLevel === 'public' ? t('fmt_chat_option_onlypublic') : t('fmt_chat_option_onlyprivate')
@@ -91,6 +92,7 @@ var MessageBar = exports.MessageBar = (0, _mobxReact.observer)(function (_ref) {
91
92
  className: "fcr-tip-".concat(selectedUserId === _types.USER_ALL ? t('fmt_chat_option_all') : t('fmt_chats_label_privatechat')),
92
93
  children: tips
93
94
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
95
+ showArrow: false,
94
96
  overlayInnerStyle: {
95
97
  boxShadow: 'none',
96
98
  border: 'none',
@@ -122,7 +124,7 @@ var MessageBar = exports.MessageBar = (0, _mobxReact.observer)(function (_ref) {
122
124
  }
123
125
  // TODO: 当选中的 uid 为 None 时,需要提示选择管理员
124
126
  ,
125
- txt: privateTargetUser.userId === _types.USER_NONE && !localIsManager ? t('fmt_chat_tips_selecthost') : (_privateTargetUser$us2 = privateTargetUser === null || privateTargetUser === void 0 ? void 0 : privateTargetUser.userName) !== null && _privateTargetUser$us2 !== void 0 ? _privateTargetUser$us2 : _types.USER_ALL,
127
+ txt: privateTargetUser.userId === _types.USER_NONE && !localIsManager ? t('fmt_chat_tips_selecthost') : privateTargetUserName !== null && privateTargetUserName !== void 0 ? privateTargetUserName : t('fmt_chat_option_all'),
126
128
  icon: _type.FcrIconType.FCR_DROPDOWN,
127
129
  colors: {
128
130
  iconPrimary: 'var(--fcr_web_ui_scene_mainicon1)',
@@ -76,7 +76,7 @@ var _default = exports["default"] = (0, _mobxReact.observer)(function (props) {
76
76
  (0, _jsxRuntime.jsx)(_avatar.FcrAvatar, {
77
77
  isShowFirstLetter: true,
78
78
  size: 32,
79
- nickName: currentUser.userName,
79
+ nickName: currentUser.userName === _types.USER_ALL ? t('fmt_chat_option_all') : currentUser.userName,
80
80
  textSize: 14
81
81
  })
82
82
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
@@ -186,7 +186,6 @@ var MessageList = exports.MessageList = (0, _mobxReact.observer)(function (_ref)
186
186
  var rowRenderer = function rowRenderer(messageList) {
187
187
  return function (_ref3) {
188
188
  var index = _ref3.index,
189
- key = _ref3.key,
190
189
  parent = _ref3.parent,
191
190
  style = _ref3.style;
192
191
  var datum = messageList[index % messageList.length];
@@ -199,7 +198,7 @@ var MessageList = exports.MessageList = (0, _mobxReact.observer)(function (_ref)
199
198
  localUserId: localUserId,
200
199
  parent: parent,
201
200
  scrollToIdx: scrollToIdx
202
- }, key);
201
+ }, datum.id);
203
202
  };
204
203
  };
205
204
  var scrollToIdx = (0, _react.useCallback)(function (idx) {
@@ -4,7 +4,6 @@ type IMessageItem = {
4
4
  messageItem: MsgListType;
5
5
  index: number;
6
6
  localUserId: string | undefined;
7
- key: string;
8
7
  parent: MeasuredCellParent;
9
8
  style: React.CSSProperties | undefined;
10
9
  multiSelectActive: boolean | undefined;
@@ -22,7 +22,6 @@ Object.defineProperty(exports, "__esModule", {
22
22
  });
23
23
  exports["default"] = void 0;
24
24
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
25
- require("core-js/modules/es.array.concat.js");
26
25
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
26
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
28
27
  var _messageLabel = require("agora-ui-foundation/lib/components/message-label");
@@ -64,7 +63,6 @@ var _default = exports["default"] = (0, _mobxReact.observer)(function (props) {
64
63
  var datum = props.messageItem,
65
64
  index = props.index,
66
65
  localUserId = props.localUserId,
67
- key = props.key,
68
66
  parent = props.parent,
69
67
  style = props.style,
70
68
  multiSelectActive = props.multiSelectActive,
@@ -124,14 +122,12 @@ var _default = exports["default"] = (0, _mobxReact.observer)(function (props) {
124
122
  }, []);
125
123
  var handleCopyMsg = /*#__PURE__*/function () {
126
124
  var _ref2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(msg, time, publisherNickName, targetNickname) {
127
- var msgHandled;
128
125
  return _regenerator["default"].wrap(function _callee$(_context) {
129
126
  while (1) switch (_context.prev = _context.next) {
130
127
  case 0:
131
- msgHandled = (0, _i18n.getLanguage)() === 'zh' ? "".concat(publisherNickName, "\u5BF9").concat(targetNickname, "\u8BF4(").concat(time, ")\n").concat(msg) : "".concat(publisherNickName, " said to ").concat(targetNickname, "(").concat(time, ")\n").concat(msg);
132
- _context.next = 3;
133
- return (0, _copyText.copyText)(msgHandled);
134
- case 3:
128
+ _context.next = 2;
129
+ return (0, _copyText.copyText)(msg);
130
+ case 2:
135
131
  handleToast({
136
132
  id: 'copy-multi-msg',
137
133
  toastProps: {
@@ -140,7 +136,7 @@ var _default = exports["default"] = (0, _mobxReact.observer)(function (props) {
140
136
  size: 'small'
141
137
  }
142
138
  });
143
- case 4:
139
+ case 3:
144
140
  case "end":
145
141
  return _context.stop();
146
142
  }
@@ -194,7 +190,10 @@ var _default = exports["default"] = (0, _mobxReact.observer)(function (props) {
194
190
  classnames: "fcr-line-system-message",
195
191
  txt: "".concat((0, _util.handleChatLevelChangedSystemMsg)(t, chatLevel, publisherRole, publisherNickName, publisherIsSelf)),
196
192
  marginBottom: 15
197
- }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
193
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
194
+ className: (0, _classnames["default"])('fcr-message-publisher', {
195
+ 'fcr-message-publisher-content': !publisherIsSelf
196
+ }),
198
197
  children: [needLabel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_messageLabel.MessageLabel, {
199
198
  handleClickPrivateChat: function handleClickPrivateChat() {
200
199
  permitPrivateChat(publisherUid);
@@ -305,5 +304,5 @@ var _default = exports["default"] = (0, _mobxReact.observer)(function (props) {
305
304
  })
306
305
  });
307
306
  }
308
- }, key);
307
+ });
309
308
  });
@@ -12,10 +12,34 @@
12
12
  flex-direction: row-reverse;
13
13
  }
14
14
 
15
+ .fcr-message-publisher {
16
+ width: 100%;
17
+ }
18
+
19
+ .fcr-message-publisher-content .fcr-message-label__content {
20
+ justify-content: flex-start;
21
+ }
22
+
23
+ .fcr-message-publisher .fcr-message-label {
24
+ width: 100%;
25
+ }
26
+
15
27
  .fcr-message-label .fcr-avatar {
16
28
  cursor: pointer;
17
29
  }
18
30
 
31
+ .fcr-message-label .fcr-message-label__content {
32
+ width: 100%;
33
+ }
34
+
35
+ .fcr-message-label span.fcr-message-label__marginR {
36
+ white-space: nowrap;
37
+ overflow: hidden;
38
+ text-overflow: ellipsis;
39
+ flex: 1;
40
+ text-align: right;
41
+ }
42
+
19
43
  .chat-tabs-container {
20
44
  width: 100%;
21
45
  display: flex;
@@ -125,12 +125,22 @@ var Chat = exports.Chat = (0, _mobxReact.observer)(function (_ref) {
125
125
  }, [chatLevel, remoteUsers, activeTabIndex, hasChatSendPublicPermission, hasChatSendPrivatePermission]);
126
126
  var handleMultiCopyMsg = /*#__PURE__*/function () {
127
127
  var _ref3 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
128
- var msgHandled, msgIndex;
128
+ var msgHandled, msgIndex, msg;
129
129
  return _regenerator["default"].wrap(function _callee$(_context) {
130
130
  while (1) switch (_context.prev = _context.next) {
131
131
  case 0:
132
132
  msgHandled = '';
133
133
  msgIndex = Array.from(copyMap.keys()).sort();
134
+ if (!(msgIndex.length === 1)) {
135
+ _context.next = 7;
136
+ break;
137
+ }
138
+ msg = messageList[msgIndex[0]].msg;
139
+ _context.next = 6;
140
+ return (0, _copyText.copyText)(msg);
141
+ case 6:
142
+ return _context.abrupt("return");
143
+ case 7:
134
144
  msgIndex.forEach(function (msgIdx, arrIdx) {
135
145
  var _messageList$msgIndex, _messageList$msgIndex2, _messageList$msgIndex3;
136
146
  var _messageList$msgIdx = messageList[msgIdx],
@@ -150,9 +160,9 @@ var Chat = exports.Chat = (0, _mobxReact.observer)(function (_ref) {
150
160
  msgHandled += "".concat(msg, "\n");
151
161
  }
152
162
  });
153
- _context.next = 5;
163
+ _context.next = 10;
154
164
  return (0, _copyText.copyText)(msgHandled);
155
- case 5:
165
+ case 10:
156
166
  case "end":
157
167
  return _context.stop();
158
168
  }
@@ -37,9 +37,7 @@ var CameraControl = exports.CameraControl = (0, _mobxReact.observer)(function (p
37
37
  iconSecondary: 'var(--fcr_ui_scene_ramp_red6)'
38
38
  };
39
39
  var icon = cameraEnabled ? _type.FcrIconType.FCR_CAMERA : _type.FcrIconType.FCR_CAMERAOFF;
40
- var title = (0, _react.useMemo)(function () {
41
- return cameraEnabled ? transI18n('fmt_toolbar_label_camera') : transI18n('fmt_toolbar_options_enablecamera');
42
- }, [cameraEnabled]);
40
+ var title = cameraEnabled ? transI18n('fmt_toolbar_label_camera') : transI18n('fmt_toolbar_options_enablecamera');
43
41
  var tooltip = title;
44
42
  var noCam = cameraList.length === 0;
45
43
  var noCamColor = {
@@ -54,7 +52,7 @@ var CameraControl = exports.CameraControl = (0, _mobxReact.observer)(function (p
54
52
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
55
53
  className: "device-control-item-wrapper",
56
54
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
57
- className: "device-control",
55
+ className: "device-control ".concat(popoverOpened ? 'active' : ''),
58
56
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
59
57
  className: "device-control-inner",
60
58
  children: !noCam ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
@@ -83,6 +81,7 @@ var CameraControl = exports.CameraControl = (0, _mobxReact.observer)(function (p
83
81
  })]
84
82
  })
85
83
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
84
+ showArrow: false,
86
85
  visible: popoverOpened,
87
86
  onVisibleChange: handlePopoverVisibleChanged,
88
87
  overlayClassName: "device-control--device-popover",
@@ -95,7 +94,7 @@ var CameraControl = exports.CameraControl = (0, _mobxReact.observer)(function (p
95
94
  onClick: function onClick(e) {
96
95
  e.stopPropagation();
97
96
  },
98
- className: "device-control-extra",
97
+ className: "device-control-extra ".concat(popoverOpened ? 'active' : ''),
99
98
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
100
99
  type: _type.FcrIconType.FCR_DROPUP4,
101
100
  colors: {
@@ -62,9 +62,7 @@ var MicrophoneControl = exports.MicrophoneControl = (0, _mobxReact.observer)(fun
62
62
  handlePopoverVisibleChanged = _useDeviceTooltipVisi.handlePopoverVisibleChanged,
63
63
  handleTooltipVisibleChanged = _useDeviceTooltipVisi.handleTooltipVisibleChanged;
64
64
  var transI18n = (0, _i18n.useI18n)();
65
- var title = (0, _react.useMemo)(function () {
66
- return microphoneEnabled ? transI18n('fmt_device_label_audio_mute') : transI18n('fmt_device_label_audio_unmute');
67
- }, [microphoneEnabled]);
65
+ var title = microphoneEnabled ? transI18n('fmt_device_label_audio_mute') : transI18n('fmt_device_label_audio_unmute');
68
66
  var tooltip = title;
69
67
  var noMic = microphoneList.length === 0;
70
68
  var noMicColor = {
@@ -79,7 +77,7 @@ var MicrophoneControl = exports.MicrophoneControl = (0, _mobxReact.observer)(fun
79
77
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
80
78
  className: "device-control-item-wrapper",
81
79
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
82
- className: "device-control",
80
+ className: "device-control ".concat(popoverOpened ? 'active' : ''),
83
81
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
84
82
  className: "device-control-inner",
85
83
  children: [connectType === _type2.FcrUIConnectType.NONE && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
@@ -128,6 +126,7 @@ var MicrophoneControl = exports.MicrophoneControl = (0, _mobxReact.observer)(fun
128
126
  })]
129
127
  })]
130
128
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
129
+ showArrow: false,
131
130
  overlayClassName: "device-control--device-popover",
132
131
  visible: popoverOpened,
133
132
  onVisibleChange: handlePopoverVisibleChanged,
@@ -154,7 +153,7 @@ var MicrophoneControl = exports.MicrophoneControl = (0, _mobxReact.observer)(fun
154
153
  onClick: function onClick(e) {
155
154
  e.stopPropagation();
156
155
  },
157
- className: "device-control-extra",
156
+ className: "device-control-extra ".concat(popoverOpened ? 'active' : ''),
158
157
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
159
158
  type: _type.FcrIconType.FCR_DROPUP4,
160
159
  colors: {
@@ -4,7 +4,8 @@
4
4
  min-width: 71px;
5
5
  cursor: pointer;
6
6
  }
7
- .device-control:hover {
7
+ .device-control:hover,
8
+ .device-control.active {
8
9
  background: var(--fcr_web_ui_scene_hover2);
9
10
  }
10
11
  .device-control-inner {
@@ -45,11 +46,13 @@
45
46
  justify-content: center;
46
47
  }
47
48
 
48
- .device-control-extra:hover {
49
+ .device-control-extra:hover,
50
+ .device-control-extra.active {
49
51
  background: var(--fcr_web_ui_scene_hover2);
50
52
  }
51
53
 
52
- .device-control-extra:hover svg {
54
+ .device-control-extra:hover svg,
55
+ .device-control-extra.active svg {
53
56
  transform: translateY(-3px);
54
57
  transition: all 0.2s;
55
58
  }