fcr-ui-scene 3.4.5 → 3.5.1

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 (421) hide show
  1. package/lib/base.js +4 -1
  2. package/lib/creator.d.ts +4 -1
  3. package/lib/creator.js +66 -3
  4. package/lib/electron/app.js +0 -3
  5. package/lib/electron/bootstrap-dev.js +2 -0
  6. package/lib/electron/bootstrap-sdk.js +2 -0
  7. package/lib/electron/main.js +14 -3
  8. package/lib/electron/plugins/devtool-shortcut.js +5 -0
  9. package/lib/electron/plugins/screenshot.js +4 -1
  10. package/lib/modules/action-bar/components/apps/app-item/index.css +3 -3
  11. package/lib/modules/action-bar/components/apps/app-item/index.js +35 -24
  12. package/lib/modules/action-bar/components/apps/app-list.d.ts +3 -0
  13. package/lib/modules/action-bar/components/apps/app-list.js +45 -0
  14. package/lib/modules/action-bar/components/apps/index.css +1 -0
  15. package/lib/modules/action-bar/components/apps/index.js +7 -4
  16. package/lib/modules/action-bar/components/apps/useAppItemOptions.d.ts +10 -2
  17. package/lib/modules/action-bar/components/apps/useAppItemOptions.js +10 -6
  18. package/lib/modules/action-bar/components/apps/useBeautyBackground.d.ts +1 -1
  19. package/lib/modules/action-bar/components/apps/useBeautyBackground.js +2 -2
  20. package/lib/modules/action-bar/components/apps/useInterpreter.d.ts +1 -1
  21. package/lib/modules/action-bar/components/apps/useInterpreter.js +6 -6
  22. package/lib/modules/action-bar/components/apps/useLiveStreaming.d.ts +1 -1
  23. package/lib/modules/action-bar/components/apps/useLiveStreaming.js +2 -2
  24. package/lib/modules/action-bar/components/apps/useWidgetList.d.ts +10 -0
  25. package/lib/modules/action-bar/components/apps/useWidgetList.js +38 -0
  26. package/lib/modules/action-bar/components/chat/index.css +8 -0
  27. package/lib/modules/action-bar/components/chat/index.js +2 -1
  28. package/lib/modules/action-bar/components/collapse/index.d.ts +8 -6
  29. package/lib/modules/action-bar/components/collapse/index.js +60 -74
  30. package/lib/modules/action-bar/components/interpreter/index.js +3 -3
  31. package/lib/modules/action-bar/components/item/index.js +1 -1
  32. package/lib/modules/action-bar/components/more/index.js +13 -7
  33. package/lib/modules/action-bar/components/notification-bar/index.d.ts +1 -1
  34. package/lib/modules/action-bar/components/notification-bar/index.js +13 -6
  35. package/lib/modules/action-bar/components/participants/index.js +1 -1
  36. package/lib/modules/action-bar/components/screen-share/index.js +1 -1
  37. package/lib/modules/action-bar/components/screen-share/submenu.js +55 -18
  38. package/lib/modules/action-bar/components/security/index.js +8 -2
  39. package/lib/modules/action-bar/components/trigger-output-language/index.js +68 -55
  40. package/lib/modules/action-bar/components/trigger-subscribe-language/index.js +35 -18
  41. package/lib/modules/action-bar/index.css +8 -0
  42. package/lib/modules/action-bar/index.d.ts +8 -0
  43. package/lib/modules/action-bar/index.js +6 -3
  44. package/lib/modules/action-bar/store.d.ts +37 -22
  45. package/lib/modules/action-bar/store.js +275 -375
  46. package/lib/modules/action-bar/types.d.ts +8 -13
  47. package/lib/modules/action-bar/view.js +3 -8
  48. package/lib/modules/audio-stream/index.d.ts +6 -1
  49. package/lib/modules/audio-stream/index.js +77 -11
  50. package/lib/modules/chat/chat-room-store.d.ts +4 -7
  51. package/lib/modules/chat/chat-room-store.js +39 -62
  52. package/lib/modules/chat/components/chat-action/index.js +2 -2
  53. package/lib/modules/chat/components/chat-bar/index.css +4 -0
  54. package/lib/modules/chat/components/chat-bar/index.d.ts +1 -1
  55. package/lib/modules/chat/components/chat-bar/index.js +18 -16
  56. package/lib/modules/chat/components/chat-select/index.js +16 -147
  57. package/lib/modules/chat/components/chat-select/select-input/index.d.ts +7 -0
  58. package/lib/modules/chat/components/chat-select/select-input/index.js +35 -0
  59. package/lib/modules/chat/components/chat-select/select-item/index.d.ts +12 -0
  60. package/lib/modules/chat/components/chat-select/select-item/index.js +153 -0
  61. package/lib/modules/chat/components/chat-tabs/index.d.ts +2 -0
  62. package/lib/modules/chat/components/chat-tabs/index.js +61 -0
  63. package/lib/modules/chat/components/message-list/chat-empty/index.d.ts +2 -0
  64. package/lib/modules/chat/components/message-list/chat-empty/index.js +26 -0
  65. package/lib/modules/chat/components/message-list/history-unread-message-button/index.d.ts +7 -0
  66. package/lib/modules/chat/components/message-list/history-unread-message-button/index.js +55 -0
  67. package/lib/modules/chat/components/message-list/index.d.ts +1 -1
  68. package/lib/modules/chat/components/message-list/index.js +55 -359
  69. package/lib/modules/chat/components/message-list/message-item/index.d.ts +15 -0
  70. package/lib/modules/chat/components/message-list/message-item/index.js +309 -0
  71. package/lib/modules/chat/components/message-list/scroll-bottom-button/index.d.ts +9 -0
  72. package/lib/modules/chat/components/message-list/scroll-bottom-button/index.js +67 -0
  73. package/lib/modules/chat/index.css +9 -0
  74. package/lib/modules/chat/index.d.ts +6 -0
  75. package/lib/modules/chat/index.js +4 -1
  76. package/lib/modules/chat/store.d.ts +17 -7
  77. package/lib/modules/chat/store.js +75 -72
  78. package/lib/modules/chat/types.d.ts +7 -7
  79. package/lib/modules/chat/types.js +2 -1
  80. package/lib/modules/chat/view.js +22 -102
  81. package/lib/modules/components/device-control/store.d.ts +4 -3
  82. package/lib/modules/components/device-control/store.js +13 -24
  83. package/lib/modules/components/leave-meeting/components/assign-host.js +17 -2
  84. package/lib/modules/components/leave-meeting/index.js +8 -7
  85. package/lib/modules/components/leave-meeting/store.d.ts +15 -7
  86. package/lib/modules/components/leave-meeting/store.js +116 -95
  87. package/lib/modules/components/member-window/components/member-actions/components/audio-control.d.ts +6 -0
  88. package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +36 -0
  89. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +40 -0
  90. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +170 -0
  91. package/lib/modules/components/member-window/components/member-actions/components/icon-status.d.ts +11 -0
  92. package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +105 -0
  93. package/lib/modules/components/member-window/components/member-actions/components/layout/index.d.ts +9 -0
  94. package/lib/modules/components/member-window/components/member-actions/components/layout/index.js +42 -0
  95. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +11 -0
  96. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +157 -0
  97. package/lib/modules/components/member-window/components/member-actions/components/share-status.d.ts +2 -0
  98. package/lib/modules/components/member-window/components/member-actions/components/share-status.js +34 -0
  99. package/lib/modules/components/member-window/components/member-actions/components/user-info.d.ts +16 -0
  100. package/lib/modules/components/member-window/components/member-actions/components/user-info.js +130 -0
  101. package/lib/modules/components/member-window/components/member-actions/components/user-tag.d.ts +12 -0
  102. package/lib/modules/components/member-window/components/member-actions/components/user-tag.js +57 -0
  103. package/lib/modules/components/member-window/components/member-actions/index.d.ts +3 -0
  104. package/lib/modules/components/member-window/components/member-actions/index.js +122 -0
  105. package/lib/modules/components/member-window/components/member-actions/libs/index.d.ts +2 -0
  106. package/lib/modules/components/member-window/components/member-actions/libs/index.js +24 -0
  107. package/lib/modules/components/member-window/components/member-actions/provider.d.ts +21 -0
  108. package/lib/modules/components/member-window/components/member-actions/provider.js +77 -0
  109. package/lib/modules/components/member-window/components/member-actions/store.d.ts +48 -0
  110. package/lib/modules/components/member-window/components/member-actions/store.js +307 -0
  111. package/lib/modules/components/member-window/components/member-board.d.ts +2 -0
  112. package/lib/modules/components/member-window/components/member-board.js +63 -0
  113. package/lib/modules/components/member-window/components/mic-volume.d.ts +2 -0
  114. package/lib/modules/components/member-window/components/mic-volume.js +23 -0
  115. package/lib/modules/components/member-window/components/video-player/components/local-video-player.d.ts +4 -0
  116. package/lib/modules/components/member-window/components/video-player/components/local-video-player.js +40 -0
  117. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +8 -0
  118. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +62 -0
  119. package/lib/modules/components/member-window/components/video-player/index.d.ts +9 -0
  120. package/lib/modules/components/member-window/components/video-player/index.js +38 -0
  121. package/lib/modules/components/member-window/index.css +22 -2
  122. package/lib/modules/components/member-window/index.d.ts +10 -75
  123. package/lib/modules/components/member-window/index.js +20 -738
  124. package/lib/modules/components/member-window/types.d.ts +79 -0
  125. package/lib/modules/components/member-window/types.js +6 -0
  126. package/lib/modules/components/security-menu/index.css +0 -2
  127. package/lib/modules/components/security-menu/index.d.ts +5 -1
  128. package/lib/modules/components/security-menu/index.js +37 -59
  129. package/lib/modules/connection-gateway/index.d.ts +6 -0
  130. package/lib/modules/connection-gateway/index.js +4 -1
  131. package/lib/modules/connection-gateway/store.d.ts +12 -3
  132. package/lib/modules/connection-gateway/store.js +29 -27
  133. package/lib/modules/control-bar/components/meeting-details/index.js +11 -17
  134. package/lib/modules/control-bar/components/more-actions/index.js +5 -4
  135. package/lib/modules/control-bar/components/share-state-nav/index.js +22 -10
  136. package/lib/modules/control-bar/index.css +1 -2
  137. package/lib/modules/control-bar/index.d.ts +14 -0
  138. package/lib/modules/control-bar/index.js +10 -4
  139. package/lib/modules/control-bar/store.d.ts +40 -20
  140. package/lib/modules/control-bar/store.js +156 -191
  141. package/lib/modules/control-bar/view.js +65 -25
  142. package/lib/modules/device-pretest/audio-preview/microphone-detection.js +1 -1
  143. package/lib/modules/dialog/components/control-bar/index.d.ts +1 -1
  144. package/lib/modules/dialog/components/control-bar/index.js +43 -43
  145. package/lib/modules/dialog/components/device-setting/index.js +2 -1
  146. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -0
  147. package/lib/modules/dialog/components/dialog-container/component/body.js +3 -2
  148. package/lib/modules/dialog/components/dialog-container/index.d.ts +2 -0
  149. package/lib/modules/dialog/components/dialog-container/index.js +19 -13
  150. package/lib/modules/dialog/components/live-streaming/index.js +4 -2
  151. package/lib/modules/dialog/components/participant/index.js +2 -2
  152. package/lib/modules/dialog/components/share-screen-selection/index.js +3 -1
  153. package/lib/modules/dialog/components/system-preference/assets/bg1.png +0 -0
  154. package/lib/modules/dialog/components/system-preference/assets/bg2.png +0 -0
  155. package/lib/modules/dialog/components/system-preference/assets/fcr_png_host.png +0 -0
  156. package/lib/modules/dialog/components/system-preference/electron.js +6 -6
  157. package/lib/modules/dialog/components/system-preference/index.css +3 -0
  158. package/lib/modules/dialog/components/system-preference/index.d.ts +17 -2
  159. package/lib/modules/dialog/components/system-preference/index.js +47 -55
  160. package/lib/modules/dialog/components/video-window/index.d.ts +1 -1
  161. package/lib/modules/dialog/components/video-window/index.js +216 -101
  162. package/lib/modules/dialog/components/widget/electron.d.ts +5 -0
  163. package/lib/modules/dialog/components/widget/electron.js +37 -0
  164. package/lib/modules/dialog/components/widget/index.d.ts +6 -0
  165. package/lib/modules/dialog/components/widget/index.js +43 -0
  166. package/lib/modules/dialog/hooks/useElectron.d.ts +7 -0
  167. package/lib/modules/dialog/hooks/useElectron.js +226 -28
  168. package/lib/modules/dialog/index.css +1 -11
  169. package/lib/modules/dialog/index.d.ts +9 -6
  170. package/lib/modules/dialog/index.js +12 -12
  171. package/lib/modules/dialog/store.d.ts +26 -10
  172. package/lib/modules/dialog/store.js +151 -82
  173. package/lib/modules/dialog/type.d.ts +84 -0
  174. package/lib/modules/dialog/type.js +6 -0
  175. package/lib/modules/dialog/view.d.ts +1 -4
  176. package/lib/modules/dialog/view.js +12 -9
  177. package/lib/modules/event-confirm/index.css +11 -0
  178. package/lib/modules/event-confirm/index.d.ts +6 -0
  179. package/lib/modules/event-confirm/index.js +3 -2
  180. package/lib/modules/event-confirm/store.d.ts +10 -4
  181. package/lib/modules/event-confirm/store.js +91 -32
  182. package/lib/modules/event-confirm/view.js +63 -24
  183. package/lib/modules/event-toast/store.js +4 -2
  184. package/lib/modules/interpreter/action/edit-btn/index.js +5 -5
  185. package/lib/modules/interpreter/action/switch-btn/index.js +7 -7
  186. package/lib/modules/interpreter/index.d.ts +5 -1
  187. package/lib/modules/interpreter/index.js +4 -2
  188. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +3 -3
  189. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +6 -5
  190. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/option-Item.js +2 -2
  191. package/lib/modules/interpreter/interpreter-list/interpreter-item/index.js +2 -2
  192. package/lib/modules/interpreter/store.d.ts +8 -5
  193. package/lib/modules/interpreter/store.js +90 -39
  194. package/lib/modules/interpreter/type.d.ts +5 -1
  195. package/lib/modules/interpreter/utils.d.ts +0 -1
  196. package/lib/modules/interpreter/utils.js +2 -23
  197. package/lib/modules/interpreter/view.js +2 -6
  198. package/lib/modules/invite/index.d.ts +4 -0
  199. package/lib/modules/invite/index.js +3 -1
  200. package/lib/modules/invite/store.d.ts +11 -2
  201. package/lib/modules/invite/store.js +27 -4
  202. package/lib/modules/layout/components/Aside.js +1 -1
  203. package/lib/modules/layout/components/Carousel.js +36 -14
  204. package/lib/modules/layout/components/Gallery.js +33 -11
  205. package/lib/modules/layout/index.css +2 -2
  206. package/lib/modules/layout/index.d.ts +6 -0
  207. package/lib/modules/layout/index.js +4 -1
  208. package/lib/modules/layout/store.d.ts +23 -10
  209. package/lib/modules/layout/store.js +185 -163
  210. package/lib/modules/layout/type.d.ts +2 -0
  211. package/lib/modules/live-streaming/index.d.ts +2 -0
  212. package/lib/modules/live-streaming/index.js +2 -2
  213. package/lib/modules/live-streaming/store.d.ts +4 -8
  214. package/lib/modules/live-streaming/store.js +9 -19
  215. package/lib/modules/notification/index.css +17 -0
  216. package/lib/modules/notification/store.js +4 -2
  217. package/lib/modules/notification/view.js +7 -2
  218. package/lib/modules/offscreen-pulling/index.d.ts +1 -0
  219. package/lib/modules/offscreen-pulling/index.js +4 -0
  220. package/lib/modules/participant/components/confirm-input/index.d.ts +6 -0
  221. package/lib/modules/participant/components/confirm-input/index.js +50 -0
  222. package/lib/modules/participant/components/mute-all/index.d.ts +3 -7
  223. package/lib/modules/participant/components/mute-all/index.js +21 -33
  224. package/lib/modules/participant/components/participants/components/footer/components/buttons.d.ts +6 -0
  225. package/lib/modules/participant/components/participants/components/footer/components/buttons.js +52 -0
  226. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.css +60 -0
  227. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.d.ts +2 -0
  228. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.js +166 -0
  229. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/util.d.ts +5 -0
  230. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/util.js +28 -0
  231. package/lib/modules/participant/components/participants/components/footer/components/footer/index.css +13 -0
  232. package/lib/modules/participant/components/participants/components/footer/components/footer/index.d.ts +5 -0
  233. package/lib/modules/participant/components/participants/components/footer/components/footer/index.js +242 -0
  234. package/lib/modules/participant/components/participants/components/footer/index.d.ts +5 -0
  235. package/lib/modules/participant/components/participants/components/footer/index.js +48 -0
  236. package/lib/modules/participant/components/participants/components/merge/index.d.ts +11 -0
  237. package/lib/modules/participant/components/participants/components/merge/index.js +49 -0
  238. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.css +191 -0
  239. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.d.ts +4 -0
  240. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +204 -0
  241. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.css +49 -0
  242. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.d.ts +5 -0
  243. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +219 -0
  244. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.d.ts +5 -0
  245. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +70 -0
  246. package/lib/modules/participant/components/participants/components/participants/index.css +104 -0
  247. package/lib/modules/participant/components/participants/components/participants/index.d.ts +3 -0
  248. package/lib/modules/participant/components/participants/components/participants/index.js +110 -0
  249. package/lib/modules/participant/components/participants/components/render-tab/index.d.ts +2 -0
  250. package/lib/modules/participant/components/participants/components/render-tab/index.js +49 -0
  251. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/interpreter-tag/index.d.ts +3 -0
  252. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/interpreter-tag/index.js +48 -0
  253. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/microphone-indicator/index.d.ts +6 -0
  254. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/microphone-indicator/index.js +28 -0
  255. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/user-avatar/index.d.ts +7 -0
  256. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/user-avatar/index.js +39 -0
  257. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.css +69 -0
  258. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.d.ts +5 -0
  259. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +135 -0
  260. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/audio-button/index.d.ts +7 -0
  261. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/audio-button/index.js +31 -0
  262. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.d.ts +12 -0
  263. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +82 -0
  264. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-to-mainroom-button/index.d.ts +4 -0
  265. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-to-mainroom-button/index.js +26 -0
  266. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.d.ts +2 -0
  267. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.js +75 -0
  268. package/lib/modules/participant/components/participants/components/render-user/index.d.ts +5 -0
  269. package/lib/modules/participant/components/participants/components/render-user/index.js +21 -0
  270. package/lib/modules/participant/components/participants/index.js +18 -112
  271. package/lib/modules/participant/components/participants/types.d.ts +96 -0
  272. package/lib/modules/participant/components/participants/types.js +37 -0
  273. package/lib/modules/participant/index.css +3 -0
  274. package/lib/modules/participant/index.d.ts +12 -0
  275. package/lib/modules/participant/index.js +7 -1
  276. package/lib/modules/participant/member-list-data-source.d.ts +2 -2
  277. package/lib/modules/participant/member-list-data-source.js +11 -17
  278. package/lib/modules/participant/store.d.ts +44 -37
  279. package/lib/modules/participant/store.js +527 -536
  280. package/lib/modules/participant/type.d.ts +2 -9
  281. package/lib/modules/pc-audio-connect/store.d.ts +1 -1
  282. package/lib/modules/pc-audio-connect/store.js +9 -6
  283. package/lib/modules/setting/audio-settings/audio-settings.js +5 -4
  284. package/lib/modules/setting/audio-settings/index.css +11 -2
  285. package/lib/modules/setting/config.js +1 -1
  286. package/lib/modules/setting/store.d.ts +1 -0
  287. package/lib/modules/setting/store.js +20 -2
  288. package/lib/modules/setting/video-settings/index.css +12 -17
  289. package/lib/modules/setting/video-settings/video-settings-basic.js +40 -44
  290. package/lib/modules/share-screen/components/selection/index.js +70 -80
  291. package/lib/modules/share-screen/index.d.ts +6 -1
  292. package/lib/modules/share-screen/index.js +4 -1
  293. package/lib/modules/share-screen/store.d.ts +37 -33
  294. package/lib/modules/share-screen/store.js +330 -438
  295. package/lib/modules/sound-effect/sound-effect-player.d.ts +0 -4
  296. package/lib/modules/sound-effect/sound-effect-player.js +4 -4
  297. package/lib/modules/state-bar/index.css +2 -15
  298. package/lib/modules/state-bar/index.d.ts +10 -0
  299. package/lib/modules/state-bar/index.js +6 -1
  300. package/lib/modules/state-bar/live-streaming-state.js +0 -17
  301. package/lib/modules/state-bar/meeting-details.js +12 -24
  302. package/lib/modules/state-bar/meeting-time.js +5 -10
  303. package/lib/modules/state-bar/store.d.ts +31 -8
  304. package/lib/modules/state-bar/store.js +146 -100
  305. package/lib/modules/state-bar/view.js +63 -32
  306. package/lib/modules/video-window/components/deviceState/index.d.ts +7 -0
  307. package/lib/modules/video-window/components/deviceState/index.js +75 -0
  308. package/lib/modules/video-window/components/members/index.css +51 -0
  309. package/lib/modules/video-window/components/members/index.d.ts +2 -0
  310. package/lib/modules/video-window/components/members/index.js +131 -0
  311. package/lib/modules/video-window/components/speaking/index.css +86 -0
  312. package/lib/modules/video-window/components/speaking/index.d.ts +3 -0
  313. package/lib/modules/video-window/components/speaking/index.js +48 -0
  314. package/lib/modules/video-window/components/topControl/index.css +35 -0
  315. package/lib/modules/video-window/components/topControl/index.d.ts +3 -0
  316. package/lib/modules/video-window/components/topControl/index.js +79 -0
  317. package/lib/modules/video-window/index.d.ts +7 -0
  318. package/lib/modules/video-window/index.js +14 -20
  319. package/lib/modules/video-window/store.d.ts +19 -88
  320. package/lib/modules/video-window/store.js +98 -365
  321. package/lib/modules/video-window/type.d.ts +40 -4
  322. package/lib/modules/video-window/type.js +4 -4
  323. package/lib/modules/video-window/view.js +11 -23
  324. package/lib/modules/whiteboard/index.d.ts +1 -0
  325. package/lib/modules/whiteboard/index.js +7 -4
  326. package/lib/modules/widget/index.css +17 -0
  327. package/lib/modules/widget/index.d.ts +10 -0
  328. package/lib/modules/widget/index.js +114 -0
  329. package/lib/modules/widget/sdk.d.ts +30 -0
  330. package/lib/modules/widget/sdk.js +224 -0
  331. package/lib/modules/widget/store.d.ts +14 -0
  332. package/lib/modules/widget/store.js +28 -0
  333. package/lib/modules/widget/type.d.ts +156 -0
  334. package/lib/modules/widget/type.js +6 -0
  335. package/lib/modules/widget/view.d.ts +2 -0
  336. package/lib/modules/widget/view.js +47 -0
  337. package/lib/modules/widget/web-widget.d.ts +29 -0
  338. package/lib/modules/widget/web-widget.js +234 -0
  339. package/lib/providers/ability-provider.d.ts +24 -0
  340. package/lib/providers/ability-provider.js +38 -0
  341. package/lib/providers/chat-provider.d.ts +16 -9
  342. package/lib/providers/chat-provider.js +76 -8
  343. package/lib/providers/device-privilege-provider.d.ts +5 -1
  344. package/lib/providers/device-privilege-provider.js +21 -1
  345. package/lib/providers/device-provider.js +5 -2
  346. package/lib/providers/device-stream-provider.d.ts +15 -3
  347. package/lib/providers/device-stream-provider.js +118 -34
  348. package/lib/providers/dialog-provider.d.ts +9 -8
  349. package/lib/providers/dialog-provider.js +8 -4
  350. package/lib/providers/event-provider.js +4 -2
  351. package/lib/providers/interpreter-provider.d.ts +7 -26
  352. package/lib/providers/interpreter-provider.js +473 -706
  353. package/lib/providers/local-storage-provider.d.ts +6 -1
  354. package/lib/providers/local-storage-provider.js +15 -2
  355. package/lib/providers/message-provider.js +4 -2
  356. package/lib/providers/phone-audio-provider.js +24 -18
  357. package/lib/providers/privilege-provider.d.ts +13 -12
  358. package/lib/providers/privilege-provider.js +19 -11
  359. package/lib/providers/renderer-provider.d.ts +5 -0
  360. package/lib/providers/renderer-provider.js +8 -1
  361. package/lib/providers/room-provider.d.ts +7 -17
  362. package/lib/providers/room-provider.js +113 -161
  363. package/lib/providers/screen-share-provider.d.ts +19 -0
  364. package/lib/providers/screen-share-provider.js +102 -10
  365. package/lib/providers/widget-provider.d.ts +52 -0
  366. package/lib/providers/widget-provider.js +171 -0
  367. package/lib/scenes/main-scene.d.ts +11 -0
  368. package/lib/scenes/main-scene.js +60 -33
  369. package/lib/scenes/waiting-scene.d.ts +9 -0
  370. package/lib/scenes/waiting-scene.js +27 -26
  371. package/lib/schema.d.ts +114 -0
  372. package/lib/schema.js +77 -0
  373. package/lib/shared-data-source/chat-data.d.ts +11 -0
  374. package/lib/shared-data-source/chat-data.js +17 -6
  375. package/lib/shared-data-source/interpreter.d.ts +34 -21
  376. package/lib/shared-data-source/interpreter.js +104 -103
  377. package/lib/shared-data-source/meeting-time.d.ts +68 -0
  378. package/lib/shared-data-source/meeting-time.js +299 -0
  379. package/lib/shared-data-source/member-data.d.ts +126 -0
  380. package/lib/shared-data-source/member-data.js +451 -0
  381. package/lib/shared-data-source/pin-data.d.ts +8 -4
  382. package/lib/shared-data-source/pin-data.js +92 -4
  383. package/lib/shared-data-source/security-data.d.ts +35 -0
  384. package/lib/shared-data-source/security-data.js +156 -0
  385. package/lib/shared-data-source/setting.d.ts +3 -1
  386. package/lib/shared-data-source/setting.js +12 -1
  387. package/lib/shared-data-source/video-window.d.ts +7 -8
  388. package/lib/shared-data-source/video-window.js +97 -94
  389. package/lib/shared-data-source/waiting-room.d.ts +29 -2
  390. package/lib/shared-data-source/waiting-room.js +103 -39
  391. package/lib/translations/enUS.d.ts +25 -12
  392. package/lib/translations/enUS.js +47 -68
  393. package/lib/translations/zhCN.d.ts +26 -12
  394. package/lib/translations/zhCN.js +63 -83
  395. package/lib/type.d.ts +64 -48
  396. package/lib/type.js +14 -1
  397. package/lib/ui-manager.d.ts +3 -2
  398. package/lib/ui-manager.js +8 -7
  399. package/lib/ui-scene.d.ts +7 -1
  400. package/lib/ui-scene.js +187 -97
  401. package/lib/utilities/constant.d.ts +7 -3
  402. package/lib/utilities/constant.js +4 -0
  403. package/lib/utilities/default-config.d.ts +5 -1
  404. package/lib/utilities/default-config.js +28 -2
  405. package/lib/utilities/logger.d.ts +8 -0
  406. package/lib/utilities/logger.js +42 -0
  407. package/lib/utilities/meeting-detail.js +11 -10
  408. package/lib/utilities/parameters.d.ts +4 -0
  409. package/lib/utilities/parameters.js +13 -1
  410. package/lib/utilities/renderer.d.ts +1 -0
  411. package/lib/utilities/renderer.js +4 -1
  412. package/lib/utilities/tools.d.ts +7 -6
  413. package/lib/utilities/tools.js +2 -6
  414. package/lib/utilities/validate-params.d.ts +2 -0
  415. package/lib/utilities/validate-params.js +16 -0
  416. package/lib/waiting-room-control-manager.d.ts +28 -0
  417. package/lib/waiting-room-control-manager.js +212 -0
  418. package/lib/widget-sdk.d.ts +2 -0
  419. package/lib/widget-sdk.js +13 -0
  420. package/package.json +7 -6
  421. package/public/index.html +12 -6
@@ -0,0 +1,309 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.push.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/esnext.async-iterator.filter.js");
14
+ require("core-js/modules/esnext.async-iterator.for-each.js");
15
+ require("core-js/modules/esnext.iterator.constructor.js");
16
+ require("core-js/modules/esnext.iterator.filter.js");
17
+ require("core-js/modules/esnext.iterator.for-each.js");
18
+ require("core-js/modules/web.dom-collections.for-each.js");
19
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
20
+ Object.defineProperty(exports, "__esModule", {
21
+ value: true
22
+ });
23
+ exports["default"] = void 0;
24
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
25
+ require("core-js/modules/es.array.concat.js");
26
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
28
+ var _messageLabel = require("agora-ui-foundation/lib/components/message-label");
29
+ var _textBubble = require("agora-ui-foundation/lib/components/text-bubble");
30
+ var _i18n = require("agora-ui-foundation/lib/i18n");
31
+ var _mobxReact = require("mobx-react");
32
+ var _types = require("../../../types");
33
+ var _classnames = _interopRequireDefault(require("classnames"));
34
+ var _multiSelectCheckbox = require("agora-ui-foundation/lib/components/multi-select-checkbox");
35
+ var _messageBubble = require("agora-ui-foundation/lib/components/message-bubble");
36
+ var _react = require("react");
37
+ var _store = require("../../../store");
38
+ var _avatar = require("agora-ui-foundation/lib/components/avatar");
39
+ var _multiSelect = require("agora-ui-foundation/lib/components/multi-select");
40
+ var _reactVirtualized = require("react-virtualized");
41
+ var _util = require("../../../util");
42
+ var _copyText = require("../../../../../utilities/copyText");
43
+ var _jsxRuntime = require("react/jsx-runtime");
44
+ 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; }
45
+ 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; }
46
+ var _default = exports["default"] = (0, _mobxReact.observer)(function (props) {
47
+ var _copyMap$size, _arr, _arr2, _arr3, _arr4;
48
+ var _useContext = (0, _react.useContext)(_store.StoreContext),
49
+ chatRoomStores = _useContext.chatRoomStores,
50
+ activeTabIndex = _useContext.activeTabIndex,
51
+ copyMap = _useContext.copyMap,
52
+ handleSelectMsg = _useContext.handleSelectMsg;
53
+ var messageContainerRef = (0, _react.useRef)(null);
54
+ var messageItemRef = (0, _react.useRef)(null);
55
+ var _ref = chatRoomStores[activeTabIndex],
56
+ messageList = _ref.messageList,
57
+ list = _ref.list,
58
+ cache = _ref.cache,
59
+ needRecomputeRowIdMap = _ref.needRecomputeRowIdMap,
60
+ viewIdx = _ref.viewIdx,
61
+ setLastScrollTop = _ref.setLastScrollTop,
62
+ permitPrivateChat = _ref.permitPrivateChat,
63
+ handleToast = _ref.handleToast;
64
+ var datum = props.messageItem,
65
+ index = props.index,
66
+ localUserId = props.localUserId,
67
+ key = props.key,
68
+ parent = props.parent,
69
+ style = props.style,
70
+ multiSelectActive = props.multiSelectActive,
71
+ setMultiSelectActive = props.setMultiSelectActive,
72
+ scrollToIdx = props.scrollToIdx;
73
+ var t = (0, _i18n.useI18n)();
74
+ var publisherRole = datum.role,
75
+ time = datum.time,
76
+ _datum$msg = datum.msg,
77
+ msg = _datum$msg === void 0 ? '' : _datum$msg,
78
+ color = datum.color,
79
+ publisherNickName = datum.nickName,
80
+ publisherUid = datum.uid,
81
+ isPrivate = datum.isPrivate,
82
+ targetNickname = datum.target,
83
+ chatLevel = datum.chatLevel;
84
+ var arr = messageList;
85
+ var idx = index;
86
+ var systemMsg = datum.systemMsg;
87
+ var publisherIsSelf = publisherUid === localUserId;
88
+ var checked = (copyMap === null || copyMap === void 0 ? void 0 : copyMap.get(idx)) || false;
89
+ var checkDisabled = ((_copyMap$size = copyMap.size) !== null && _copyMap$size !== void 0 ? _copyMap$size : 0) >= _multiSelect.MAX_SELECT_CNT && !checked;
90
+ var needLabel = ((_arr = arr[idx - 1]) === null || _arr === void 0 ? void 0 : _arr.uid) !== publisherUid || ((_arr2 = arr[idx - 1]) === null || _arr2 === void 0 ? void 0 : _arr2.isPrivate) !== isPrivate || ((_arr3 = arr[idx - 1]) === null || _arr3 === void 0 ? void 0 : _arr3.role) !== publisherRole || ((_arr4 = arr[idx - 1]) === null || _arr4 === void 0 ? void 0 : _arr4.target) !== targetNickname;
91
+ if (needLabel) {
92
+ needRecomputeRowIdMap.set(datum.id, idx);
93
+ }
94
+ var isManager = publisherRole === 'host' || publisherRole === 'union-host';
95
+ var isFile = datum !== null && datum !== void 0 && datum.img ? true : false;
96
+ (0, _react.useEffect)(function () {
97
+ // 标点符号特殊处理
98
+ // 如果是自己发的消息 由于有flex-end 如果标点符号大于1行, 则设置为100% (不然没法换行)
99
+ // 如果不是自己发的消息,每条都设置为100%
100
+ if (messageContainerRef.current && messageItemRef.current) {
101
+ var messageContainerWidth = messageContainerRef.current.offsetWidth;
102
+ var messageItemWidth = messageItemRef.current.offsetWidth;
103
+ if (publisherIsSelf) {
104
+ if (messageItemWidth > messageContainerWidth) {
105
+ messageItemRef.current.style.width = '100%';
106
+ // 由于动态计算了宽度,导致高度不对,所以需要重新计算高度
107
+ cache.clear(idx, 0);
108
+ list === null || list === void 0 || list.recomputeRowHeights(idx);
109
+ }
110
+ } else {
111
+ messageItemRef.current.style.width = '100%';
112
+ var childElement = messageItemRef.current.firstElementChild;
113
+ if (childElement) {
114
+ // 消息不是本人发的 有头像 如果长度大于父容器需要减去34px
115
+ if (childElement.offsetWidth > messageContainerWidth - 34) {
116
+ childElement.style.width = 'calc(100% - 34px)';
117
+ // 由于动态计算了宽度,导致高度不对,所以需要重新计算高度
118
+ cache.clear(idx, 0);
119
+ list === null || list === void 0 || list.recomputeRowHeights(idx);
120
+ }
121
+ }
122
+ }
123
+ }
124
+ }, []);
125
+ var handleCopyMsg = /*#__PURE__*/function () {
126
+ var _ref2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(msg, time, publisherNickName, targetNickname) {
127
+ var msgHandled;
128
+ return _regenerator["default"].wrap(function _callee$(_context) {
129
+ while (1) switch (_context.prev = _context.next) {
130
+ 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:
135
+ handleToast({
136
+ id: 'copy-multi-msg',
137
+ toastProps: {
138
+ type: 'normal',
139
+ content: t('fmt_statusbar_status_coppied'),
140
+ size: 'small'
141
+ }
142
+ });
143
+ case 4:
144
+ case "end":
145
+ return _context.stop();
146
+ }
147
+ }, _callee);
148
+ }));
149
+ return function handleCopyMsg(_x, _x2, _x3, _x4) {
150
+ return _ref2.apply(this, arguments);
151
+ };
152
+ }();
153
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactVirtualized.CellMeasurer, {
154
+ cache: cache,
155
+ columnIndex: 0,
156
+ rowIndex: index,
157
+ parent: parent,
158
+ children: function children() {
159
+ var _arr5;
160
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
161
+ ref: messageContainerRef,
162
+ style: _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, style), {}, {
163
+ display: 'flex',
164
+ flexDirection: 'column'
165
+ }, systemMsg ? {
166
+ width: '100%'
167
+ } : {
168
+ width: 'auto'
169
+ }), systemMsg ? {} : publisherIsSelf ? {
170
+ marginRight: 15,
171
+ marginLeft: multiSelectActive ? 8 : 25,
172
+ alignItems: 'flex-end',
173
+ right: 0
174
+ } : {
175
+ marginRight: 15,
176
+ marginLeft: multiSelectActive ? 8 : 15,
177
+ alignItems: 'flex-start',
178
+ right: 0
179
+ }), {}, {
180
+ pointerEvents: 'all'
181
+ }, index === 0 ? {
182
+ paddingTop: 10
183
+ } : {}),
184
+ id: String(idx),
185
+ children: systemMsg ? publisherRole === 'system' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_textBubble.TextBubble, {
186
+ txt: (0, _util.handleMessageTime)(time),
187
+ type: "transparent",
188
+ bold: true,
189
+ lineHeight: "small",
190
+ styles: {
191
+ marginBottom: 16
192
+ }
193
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_textBubble.TextBubble, {
194
+ classnames: "fcr-line-system-message",
195
+ txt: "".concat((0, _util.handleChatLevelChangedSystemMsg)(t, chatLevel, publisherRole, publisherNickName, publisherIsSelf)),
196
+ marginBottom: 15
197
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
198
+ children: [needLabel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_messageLabel.MessageLabel, {
199
+ handleClickPrivateChat: function handleClickPrivateChat() {
200
+ permitPrivateChat(publisherUid);
201
+ },
202
+ styles: {
203
+ marginLeft: publisherUid !== localUserId && multiSelectActive ? 24 : 0,
204
+ marginTop: index === 0 ? 0 : 15
205
+ },
206
+ color: color,
207
+ time: (0, _util.handleMessageTime)(time),
208
+ publisher: publisherNickName,
209
+ avatar: publisherUid !== localUserId ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.FcrAvatar, {
210
+ size: 24,
211
+ textSize: 24,
212
+ nickName: publisherNickName
213
+ }) : null,
214
+ publisherIsSelf: publisherIsSelf,
215
+ targetIsSelf: isPrivate,
216
+ target: targetNickname || _types.ALL_TO_USER.userName,
217
+ isPrivate: isPrivate,
218
+ tag: isManager ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
219
+ className: (0, _classnames["default"])('fcr-msg-tag', {
220
+ 'fcr-msg-tag--union': publisherRole === 'union-host'
221
+ }),
222
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
223
+ children: publisherRole === 'host' ? t('fmt_role_host') : t('fmt_role_cohost')
224
+ })
225
+ }) : null
226
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
227
+ className: "fcr-line-message",
228
+ style: {
229
+ display: 'flex',
230
+ alignItems: 'center',
231
+ justifyContent: publisherIsSelf ? multiSelectActive ? 'space-between' : 'flex-end' : 'flex-start',
232
+ flexDirection: 'row',
233
+ width: '100%'
234
+ },
235
+ children: [multiSelectActive && !systemMsg && /*#__PURE__*/(0, _jsxRuntime.jsx)(_multiSelectCheckbox.MultiSelectCheckbox, {
236
+ self: publisherIsSelf,
237
+ checked: checked,
238
+ nextMsgBelongSameUser: ((_arr5 = arr[idx + 1]) === null || _arr5 === void 0 ? void 0 : _arr5.uid) === publisherUid,
239
+ checkDisabled: checkDisabled || isFile,
240
+ onChange: function onChange(checked) {
241
+ if (checkDisabled) return;
242
+ handleSelectMsg(idx, checked);
243
+ }
244
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
245
+ onClick: function onClick() {
246
+ if (!multiSelectActive || checkDisabled) {
247
+ return;
248
+ }
249
+ var newChecked = !checked;
250
+ handleSelectMsg(idx, newChecked);
251
+ },
252
+ ref: messageItemRef,
253
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_messageBubble.MessageBubble, {
254
+ file: datum === null || datum === void 0 ? void 0 : datum.img,
255
+ msg: msg,
256
+ role: publisherRole,
257
+ isSelf: publisherIsSelf
258
+ // 消息间间距
259
+ ,
260
+ marginBottom: 'small',
261
+ styles: {
262
+ marginLeft: publisherUid !== localUserId && !multiSelectActive ? 34 : 0
263
+ },
264
+ onCopy: (/*#__PURE__*/function () {
265
+ var _ref3 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(type) {
266
+ var currentScrollTop;
267
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
268
+ while (1) switch (_context2.prev = _context2.next) {
269
+ case 0:
270
+ if (!(type === 'singling')) {
271
+ _context2.next = 5;
272
+ break;
273
+ }
274
+ _context2.next = 3;
275
+ return handleCopyMsg(msg, (0, _util.handleMessageTime)(time), publisherIsSelf && isPrivate ? t('fmt_settings_labels_you') : publisherNickName, // 你
276
+ targetNickname !== null && targetNickname !== void 0 ? targetNickname : _types.ALL_TO_USER.userName);
277
+ case 3:
278
+ _context2.next = 6;
279
+ break;
280
+ case 5:
281
+ if (type === 'multiple') {
282
+ currentScrollTop = list === null || list === void 0 ? void 0 : list.getOffsetForRow({
283
+ index: idx
284
+ });
285
+ scrollToIdx(viewIdx);
286
+ setLastScrollTop(currentScrollTop);
287
+ setMultiSelectActive && setMultiSelectActive(true);
288
+ }
289
+ case 6:
290
+ case "end":
291
+ return _context2.stop();
292
+ }
293
+ }, _callee2);
294
+ }));
295
+ return function (_x5) {
296
+ return _ref3.apply(this, arguments);
297
+ };
298
+ }()),
299
+ onPrivate: function onPrivate() {
300
+ permitPrivateChat(publisherUid);
301
+ }
302
+ })
303
+ })]
304
+ })]
305
+ })
306
+ });
307
+ }
308
+ }, key);
309
+ });
@@ -0,0 +1,9 @@
1
+ type IScrollBottomButton = {
2
+ latestBtnVisible: boolean;
3
+ scrollToIdx: (idx: number) => void;
4
+ setLatestBtnVisible: (visible: boolean) => void;
5
+ scrollIndex: number | undefined;
6
+ latestBtnVisibleFlagRef: React.MutableRefObject<boolean>;
7
+ };
8
+ declare const _default: (props: IScrollBottomButton) => import("react/jsx-runtime").JSX.Element;
9
+ export default _default;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _latestButton = require("agora-ui-foundation/lib/components/latest-button");
9
+ var _mobxReact = require("mobx-react");
10
+ var _react = require("react");
11
+ var _store = require("../../../store");
12
+ var _i18n = require("agora-ui-foundation/lib/i18n");
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ var _default = exports["default"] = (0, _mobxReact.observer)(function (props) {
15
+ var t = (0, _i18n.useI18n)();
16
+ var _useContext = (0, _react.useContext)(_store.StoreContext),
17
+ chatRoomStores = _useContext.chatRoomStores,
18
+ activeTabIndex = _useContext.activeTabIndex;
19
+ var _ref = chatRoomStores[activeTabIndex],
20
+ forceNotifyMsgs = _ref.forceNotifyMsgs,
21
+ messageList = _ref.messageList,
22
+ readIdx = _ref.readIdx,
23
+ list = _ref.list,
24
+ clientHeight = _ref.clientHeight,
25
+ scrollHeight = _ref.scrollHeight,
26
+ updateReadMsgIndex = _ref.updateReadMsgIndex,
27
+ newMsgsUnReadCnt = _ref.newMsgsUnReadCnt;
28
+ var latestBtnVisible = props.latestBtnVisible,
29
+ scrollToIdx = props.scrollToIdx,
30
+ setLatestBtnVisible = props.setLatestBtnVisible,
31
+ scrollIndex = props.scrollIndex,
32
+ latestBtnVisibleFlagRef = props.latestBtnVisibleFlagRef;
33
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
34
+ children: latestBtnVisible === true ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_latestButton.LatestButton, {
35
+ onClick: function onClick() {
36
+ var _messageList;
37
+ forceNotifyMsgs();
38
+ var len = messageList.length;
39
+
40
+ // 回到最新消息的第一条
41
+ if (readIdx === len - 1) {
42
+ // 没有新消息
43
+ if (scrollIndex === len - 1) {
44
+ list === null || list === void 0 || list.scrollToPosition(scrollHeight - clientHeight);
45
+ } else {
46
+ scrollToIdx(len - 1);
47
+ }
48
+ }
49
+ setLatestBtnVisible(false);
50
+ latestBtnVisibleFlagRef.current = false;
51
+ updateReadMsgIndex && updateReadMsgIndex({
52
+ index: len - 1,
53
+ msgId: (_messageList = messageList[len - 1]) === null || _messageList === void 0 ? void 0 : _messageList.id
54
+ });
55
+ },
56
+ txt: "".concat(
57
+ // readIdx === messageList.length - 1
58
+ newMsgsUnReadCnt === 0 ? t('fmt_chat_button_latestlocation') // 回到最新位置
59
+ : t('fmt_chat_tips_newmessage', {
60
+ reason1: newMsgsUnReadCnt || messageList.length - 1 - readIdx
61
+ })),
62
+ styles: {
63
+ zIndex: 999
64
+ }
65
+ }) : null
66
+ });
67
+ });
@@ -74,3 +74,12 @@
74
74
  margin-left: 15px;
75
75
  width: 100%;
76
76
  }
77
+
78
+ .fcr-line-message .fcr-message-bubble span {
79
+ display: block;
80
+ overflow-wrap: break-word;
81
+ }
82
+
83
+ .fcr-line-message-container {
84
+ width: 100%;
85
+ }
@@ -5,6 +5,9 @@ import { FcrChatRoomFile, FcrChatRoomMessageType } from 'fcr-core/lib/room-contr
5
5
  import { FcrUICurrentRoomControlProvider, FcrUIMainRoomControlProvider, FcrUIRoomProvider, FcrUIWaitingRoomControlProvider } from '../../providers/room-provider';
6
6
  import { FcrUIEventProvider } from '../../providers/event-provider';
7
7
  import { FcrUIChatProvider } from '../../providers/chat-provider';
8
+ import { FcrUISharedLayoutDataSource } from '../../shared-data-source/layout-data';
9
+ import { FcrUISharedWaitingRoomDataSource } from '../../shared-data-source/waiting-room';
10
+ import { FcrUISharedChatDataSource } from '../../shared-data-source/chat-data';
8
11
  export { CHAT_WRAPPER_CLASS };
9
12
  export declare class ChatUIModule extends UIModule {
10
13
  private _store?;
@@ -15,6 +18,9 @@ export declare class ChatUIModule extends UIModule {
15
18
  waitingRoomControlProvider?: FcrUIWaitingRoomControlProvider;
16
19
  roomProvider?: FcrUIRoomProvider;
17
20
  chatProvider?: FcrUIChatProvider;
21
+ sharedLayoutDataSource?: FcrUISharedLayoutDataSource;
22
+ sharedWaitingRoomDataSource?: FcrUISharedWaitingRoomDataSource;
23
+ sharedChatDataSource?: FcrUISharedChatDataSource;
18
24
  onNodeWillActive(): void;
19
25
  onNodeWillInactive(): void;
20
26
  getComponent(params?: {
@@ -115,7 +115,10 @@ var ChatUIModule = exports.ChatUIModule = /*#__PURE__*/function (_UIModule) {
115
115
  mainRoomControl: (_this$mainRoomControl2 = this.mainRoomControlProvider) === null || _this$mainRoomControl2 === void 0 ? void 0 : _this$mainRoomControl2.mainRoomControl,
116
116
  waitingRoomControlProvider: this.waitingRoomControlProvider,
117
117
  roomProvider: this.roomProvider,
118
- chatProvider: this.chatProvider
118
+ chatProvider: this.chatProvider,
119
+ sharedLayoutDataSource: this.sharedLayoutDataSource,
120
+ sharedWaitingRoomDataSource: this.sharedWaitingRoomDataSource,
121
+ sharedChatDataSource: this.sharedChatDataSource
119
122
  });
120
123
  this.sendMessage = this.sendMessage.bind(this);
121
124
  this.updateReadMsgIndex = this.updateReadMsgIndex.bind(this);
@@ -2,22 +2,28 @@ import { FcrUserControl } from 'fcr-core';
2
2
  import { FcrUserRole, FcrUserInfo } from 'fcr-core/lib/type';
3
3
  import { FcrUIEventProvider } from '../../providers/event-provider';
4
4
  import { FcrChatRoomControl } from 'fcr-core/lib/room-control/chatroom-control/type';
5
- import { FcrMainRoomControl, FcrRoomType, FcrWaitingRoomControl } from 'fcr-core/lib/room-control/type';
5
+ import { FcrMainRoomControl, FcrWaitingRoomControl } from 'fcr-core/lib/room-control/type';
6
6
  import { FcrUIPrivilegeProvider } from '../../providers/privilege-provider';
7
7
  import { FcrUIRoomProvider, FcrUIWaitingRoomControlProvider } from '../../providers/room-provider';
8
8
  import { FcrUIChatProvider } from '../../providers/chat-provider';
9
9
  import { ChatRoomStoreMap } from './types';
10
+ import { FcrUIRoomType } from '../../type';
11
+ import { FcrUISharedLayoutDataSource } from '../../shared-data-source/layout-data';
12
+ import { FcrUISharedWaitingRoomDataSource } from '../../shared-data-source/waiting-room';
13
+ import { FcrUISharedChatDataSource } from '../../shared-data-source/chat-data';
10
14
  export default class ChatStore {
11
15
  private _disposers;
12
16
  private _observable;
13
17
  private _securityStore;
14
18
  private _uiEventStore;
15
- private _chatVisible;
16
19
  private _chatProvider;
20
+ private _sharedLayoutDataSource;
21
+ private _sharedChatDataSource;
22
+ private _sharedWaitingRoomDataSource;
17
23
  accessor chatRoomStores: ChatRoomStoreMap;
18
- accessor activeTabIndex: FcrRoomType;
19
- accessor roomType: FcrRoomType;
20
- constructor({ chatRoomControl, userControl, uiEventStore, securityStore, roomControl, waitingRoomControlProvider, roomProvider, chatProvider, }: {
24
+ accessor activeTabIndex: FcrUIRoomType;
25
+ accessor copyMap: Map<number, boolean>;
26
+ constructor({ chatRoomControl, userControl, uiEventStore, securityStore, roomControl, waitingRoomControlProvider, roomProvider, chatProvider, sharedLayoutDataSource, sharedWaitingRoomDataSource, sharedChatDataSource, }: {
21
27
  chatRoomControl: FcrChatRoomControl;
22
28
  userControl: FcrUserControl;
23
29
  uiEventStore: FcrUIEventProvider;
@@ -27,11 +33,15 @@ export default class ChatStore {
27
33
  mainRoomControl: FcrMainRoomControl;
28
34
  roomProvider: FcrUIRoomProvider;
29
35
  chatProvider: FcrUIChatProvider;
36
+ sharedLayoutDataSource: FcrUISharedLayoutDataSource;
37
+ sharedWaitingRoomDataSource: FcrUISharedWaitingRoomDataSource;
38
+ sharedChatDataSource: FcrUISharedChatDataSource;
30
39
  });
31
40
  hasWaitingRoomPermission(): boolean;
32
41
  private _handleReceiveMessage;
33
- handlerActiveTab(key: FcrRoomType): void;
34
- private _handleEvent;
42
+ handlerActiveTab(key: FcrUIRoomType): void;
43
+ handleSelectMsg(idx: number, checked: boolean): void;
44
+ clearCopyMap(): void;
35
45
  release(): void;
36
46
  }
37
47
  export declare function isManager(role: FcrUserRole): role is FcrUserRole.HOST | FcrUserRole.COHOST;