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
@@ -26,9 +26,9 @@ var _fcrCore = require("fcr-core");
26
26
  var _boardContext = _interopRequireDefault(require("../../../utilities/board-context"));
27
27
  var _muteAction = require("../../../utilities/mute-action");
28
28
  var _env = require("agora-foundation/lib/utilities/env");
29
+ var _memberBoard = require("../../components/member-window/components/member-board");
30
+ var _memberActions = require("../../components/member-window/components/member-actions");
29
31
  var _jsxRuntime = require("react/jsx-runtime");
30
- // import { UserWindow, UserWindowActions } from './UserWindow';
31
-
32
32
  var Gap = 8;
33
33
  var CollapseHeight = 8;
34
34
  var HandlerHeight = 2;
@@ -41,7 +41,9 @@ var calcPages = function calcPages(n, pageSize) {
41
41
  return Math.max(1, pageSize > 0 ? Math.ceil(n / pageSize) : 1);
42
42
  };
43
43
  var calcItems = function calcItems(bounds, videoWidth) {
44
- return Math.max(0, Math.floor((bounds.width - (ArrowWidth + Gap) * 2 + Gap) / (videoWidth + Gap)));
44
+ var val = Math.max(0, Math.floor((bounds.width - (ArrowWidth + Gap) * 2 + Gap) / (videoWidth + Gap)));
45
+ var maxVal = 7;
46
+ return Math.min(val, maxVal);
45
47
  };
46
48
  var Carousel = exports.Carousel = (0, _mobxReact.observer)(function () {
47
49
  var _useContext = (0, _react.useContext)(_store.StoreContext),
@@ -63,9 +65,11 @@ var Carousel = exports.Carousel = (0, _mobxReact.observer)(function () {
63
65
  setVideoOrientation = _useContext.setVideoOrientation,
64
66
  hasUnmutePermission = _useContext.hasUnmutePermission,
65
67
  hasRequestStartAudioPermission = _useContext.hasRequestStartAudioPermission,
66
- interpreterUsers = _useContext.interpreterUsers,
67
- interpreterState = _useContext.interpreterState,
68
- openRenameDialog = _useContext.openRenameDialog;
68
+ interpreterUserList = _useContext.interpreterUserList,
69
+ isInterpreterEnabled = _useContext.isInterpreterEnabled,
70
+ openRenameDialog = _useContext.openRenameDialog,
71
+ userVolumeMap = _useContext.userVolumeMap,
72
+ isVideoSuspended = _useContext.isVideoSuspended;
69
73
  var _useState = (0, _react.useState)(MinVideoHeight),
70
74
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
71
75
  videoHeight = _useState2[0],
@@ -166,7 +170,6 @@ var Carousel = exports.Carousel = (0, _mobxReact.observer)(function () {
166
170
  gap: Gap
167
171
  },
168
172
  children: carouselList.slice(page * itemsPerPage, (page + 1) * itemsPerPage).map(function (windowData) {
169
- var isScreenSharing = windowData.videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN;
170
173
  var isBoard = windowData.type === _type2.FcrUIWindowType.BOARD;
171
174
  var showActionBottomLabel = carouselList.length > 1 && windowData.isSpeakerSpotlight;
172
175
  var muteAudioPermission = hasMutePermission(windowData.isMySelf ? _fcrCore.FcrPrivilegeUserRole.SELF : windowData.ownerRoleType);
@@ -175,6 +178,11 @@ var Carousel = exports.Carousel = (0, _mobxReact.observer)(function () {
175
178
  var _actionMute = (0, _muteAction.actionMute)(windowData.isMySelf, windowData.hasMicrophoneAudioStream, muteAudioPermission, startAudioPermission, requestStartAudioPermission),
176
179
  isShowActionAudio = _actionMute.isShowActionAudio,
177
180
  actionAudioTag = _actionMute.actionAudioTag;
181
+ var isMySelf = windowData.isMySelf,
182
+ videoStreamId = windowData.videoStreamId,
183
+ audioStreamId = windowData.audioStreamId;
184
+ var id = isMySelf ? '0' : videoStreamId || audioStreamId;
185
+ var volume = userVolumeMap.get(id || '') || 0;
178
186
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
179
187
  style: style,
180
188
  className: "fcr-layout-content-carousel-item",
@@ -182,7 +190,7 @@ var Carousel = exports.Carousel = (0, _mobxReact.observer)(function () {
182
190
  value: {
183
191
  showToolbar: false
184
192
  },
185
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberWindow.MemberBoard, {
193
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberBoard.MemberBoard, {
186
194
  isShowActionAudio: isShowActionAudio,
187
195
  actionAudioTag: actionAudioTag,
188
196
  showActionBottomLabel: showActionBottomLabel,
@@ -192,7 +200,18 @@ var Carousel = exports.Carousel = (0, _mobxReact.observer)(function () {
192
200
  toggleMainStream(windowData.windowId);
193
201
  },
194
202
  isMask: true,
195
- slot: whiteboard
203
+ slot: whiteboard,
204
+ hasPinnedStream: hasPinnedStream,
205
+ localUserRole: localUserRole,
206
+ sendParticipantEvent: sendParticipantEvent,
207
+ muteAudio: muteAudio,
208
+ openPrivateChat: openPrivateChat,
209
+ setVideoOrientation: setVideoOrientation,
210
+ interpreterUserList: interpreterUserList,
211
+ isInterpreterEnabled: isInterpreterEnabled,
212
+ openRenameDialog: openRenameDialog,
213
+ id: id,
214
+ volume: volume
196
215
  })
197
216
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberWindow.MemberWindow, {
198
217
  onRemovePin: removePin,
@@ -200,8 +219,8 @@ var Carousel = exports.Carousel = (0, _mobxReact.observer)(function () {
200
219
  width: videoWidth,
201
220
  height: videoHeight,
202
221
  memberWindowPreviewType: 'carousel',
203
- slot: !isScreenSharing && /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberWindow.MemberWindowActions, {
204
- interpreterUsers: interpreterUsers,
222
+ slot: /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberActions.MemberWindowActions, {
223
+ interpreterUserList: interpreterUserList,
205
224
  isShowActionAudio: isShowActionAudio,
206
225
  actionAudioTag: actionAudioTag,
207
226
  showActionBottomLabel: showActionBottomLabel,
@@ -216,8 +235,10 @@ var Carousel = exports.Carousel = (0, _mobxReact.observer)(function () {
216
235
  windowData: windowData,
217
236
  iconSize: 16,
218
237
  showRotation: (0, _env.isElectron)(),
219
- interpreterState: interpreterState,
220
- handleRename: openRenameDialog
238
+ isInterpreterEnabled: isInterpreterEnabled,
239
+ handleRename: openRenameDialog,
240
+ id: id,
241
+ volume: volume
221
242
  }),
222
243
  videoRenderMode: _type3.AgoraRtcRenderMode.FIT,
223
244
  videoStreamType: _type3.AgoraRtcVideoStreamType.LOW_STREAM,
@@ -230,7 +251,8 @@ var Carousel = exports.Carousel = (0, _mobxReact.observer)(function () {
230
251
  addPin(windowData.windowId);
231
252
  setPage(0);
232
253
  }
233
- }
254
+ },
255
+ isVideoSuspended: isVideoSuspended
234
256
  }, windowData.windowId)
235
257
  }, windowData.windowId);
236
258
  })
@@ -48,6 +48,8 @@ var _button = require("agora-ui-foundation/lib/components/button");
48
48
  var _i18n = require("agora-ui-foundation/lib/i18n");
49
49
  var _muteAction = require("../../../utilities/mute-action");
50
50
  var _env = require("agora-foundation/lib/utilities/env");
51
+ var _memberBoard = require("../../components/member-window/components/member-board");
52
+ var _memberActions = require("../../components/member-window/components/member-actions");
51
53
  var _jsxRuntime = require("react/jsx-runtime");
52
54
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
53
55
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
@@ -112,9 +114,11 @@ var Gallery = exports.Gallery = (0, _mobxReact.observer)(function () {
112
114
  setVideoOrientation = _useContext.setVideoOrientation,
113
115
  hasUnmutePermission = _useContext.hasUnmutePermission,
114
116
  hasRequestStartAudioPermission = _useContext.hasRequestStartAudioPermission,
115
- interpreterUsers = _useContext.interpreterUsers,
116
- interpreterState = _useContext.interpreterState,
117
- openRenameDialog = _useContext.openRenameDialog;
117
+ interpreterUserList = _useContext.interpreterUserList,
118
+ isInterpreterEnabled = _useContext.isInterpreterEnabled,
119
+ openRenameDialog = _useContext.openRenameDialog,
120
+ userVolumeMap = _useContext.userVolumeMap,
121
+ isVideoSuspended = _useContext.isVideoSuspended;
118
122
  var _useDelayedMeasure = (0, _hooks.useDelayedMeasure)(),
119
123
  _useDelayedMeasure2 = (0, _slicedToArray2["default"])(_useDelayedMeasure, 2),
120
124
  ref = _useDelayedMeasure2[0],
@@ -228,7 +232,6 @@ var Gallery = exports.Gallery = (0, _mobxReact.observer)(function () {
228
232
  gap: Gap
229
233
  },
230
234
  children: row.map(function (windowData) {
231
- var isScreenSharing = windowData.videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN;
232
235
  var isSpeakerMode = layout === _type2.FcrUIVideoWindowLayoutType.Speaker;
233
236
  var isMainWindow = galleryList.length === 1;
234
237
  var showActionBottomLabel = galleryList.length > 1 && windowData.isSpeakerSpotlight;
@@ -242,6 +245,11 @@ var Gallery = exports.Gallery = (0, _mobxReact.observer)(function () {
242
245
  'fcr-layout-content-gallery-row-noborder': participantCount == 1 && galleryList.length == 1,
243
246
  'fcr-layout-content-gallery-row-onlyone': galleryList.length == 1
244
247
  });
248
+ var isMySelf = windowData.isMySelf,
249
+ videoStreamId = windowData.videoStreamId,
250
+ audioStreamId = windowData.audioStreamId;
251
+ var id = isMySelf ? '0' : videoStreamId || audioStreamId;
252
+ var volume = userVolumeMap.get(id || '') || 0;
245
253
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
246
254
  className: cls,
247
255
  style: {
@@ -252,7 +260,7 @@ var Gallery = exports.Gallery = (0, _mobxReact.observer)(function () {
252
260
  value: {
253
261
  showToolbar: galleryList.length === 1
254
262
  },
255
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberWindow.MemberBoard, {
263
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberBoard.MemberBoard, {
256
264
  isShowActionAudio: isShowActionAudio,
257
265
  actionAudioTag: actionAudioTag,
258
266
  showActionBottomLabel: showActionBottomLabel,
@@ -266,14 +274,25 @@ var Gallery = exports.Gallery = (0, _mobxReact.observer)(function () {
266
274
  toggleMainStream(windowData.windowId);
267
275
  },
268
276
  isMask: galleryList.length !== 1,
269
- slot: whiteboard
277
+ slot: whiteboard,
278
+ hasPinnedStream: hasPinnedStream,
279
+ localUserRole: localUserRole,
280
+ sendParticipantEvent: sendParticipantEvent,
281
+ muteAudio: muteAudio,
282
+ openPrivateChat: openPrivateChat,
283
+ setVideoOrientation: setVideoOrientation,
284
+ interpreterUserList: interpreterUserList,
285
+ isInterpreterEnabled: isInterpreterEnabled,
286
+ openRenameDialog: openRenameDialog,
287
+ id: id,
288
+ volume: volume
270
289
  })
271
290
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberWindow.MemberWindow, {
272
291
  canShowSpeakerSpotlight: galleryList.length > 1,
273
292
  memberWindowPreviewType: 'gallery',
274
- slot: !isScreenSharing && /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberWindow.MemberWindowActions, {
275
- interpreterUsers: interpreterUsers,
276
- interpreterState: interpreterState,
293
+ slot: /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberActions.MemberWindowActions, {
294
+ interpreterUserList: interpreterUserList,
295
+ isInterpreterEnabled: isInterpreterEnabled,
277
296
  isShowActionAudio: isShowActionAudio,
278
297
  actionAudioTag: actionAudioTag,
279
298
  showActionBottomLabel: showActionBottomLabel,
@@ -289,7 +308,9 @@ var Gallery = exports.Gallery = (0, _mobxReact.observer)(function () {
289
308
  iconSize: 24,
290
309
  showRotation: (0, _env.isElectron)(),
291
310
  handleRename: openRenameDialog,
292
- renderListLength: galleryList.length
311
+ renderListLength: galleryList.length,
312
+ id: id,
313
+ volume: volume
293
314
  }),
294
315
  videoRenderMode: _type3.AgoraRtcRenderMode.FIT,
295
316
  videoStreamType: videoStreamType,
@@ -312,7 +333,8 @@ var Gallery = exports.Gallery = (0, _mobxReact.observer)(function () {
312
333
  toggleMainStream(windowData.windowId);
313
334
  }
314
335
  }
315
- }
336
+ },
337
+ isVideoSuspended: isVideoSuspended
316
338
  }, windowData.windowId)
317
339
  }, windowData.windowId);
318
340
  })
@@ -36,7 +36,7 @@
36
36
 
37
37
  .login-confirm-dialog-content img {
38
38
  margin-top: -36px;
39
- margin-bottom: 10px;
39
+ margin-bottom: 24px;
40
40
  }
41
41
 
42
42
  .login-confirm-dialog-title {
@@ -46,7 +46,7 @@
46
46
  }
47
47
 
48
48
  .login-confirm-dialog-desc {
49
- margin-bottom: 10px;
49
+ margin-bottom: 20px;
50
50
  }
51
51
 
52
52
  .login-confirm-dialog-btn {
@@ -11,6 +11,9 @@ import { FcrUISharedInterpreterDataSource } from '../../shared-data-source/inter
11
11
  import { FcrUISharedSettingDataSource } from '../../shared-data-source/setting';
12
12
  import { FcrUIChatProvider } from '../../providers/chat-provider';
13
13
  import { FcrUIVideoWindowDataSource } from '../../shared-data-source/video-window';
14
+ import { FcrUIMemberSharedDataSource } from '../../shared-data-source/member-data';
15
+ import { FcrUIScreenShareProvider } from '../../providers/screen-share-provider';
16
+ import { FcrUISharedPinDataSource } from '../../shared-data-source/pin-data';
14
17
  export declare class LayoutUIModule extends UIModule {
15
18
  private _store?;
16
19
  eventProvider?: FcrUIEventProvider;
@@ -24,6 +27,9 @@ export declare class LayoutUIModule extends UIModule {
24
27
  sharedSettingDataSource?: FcrUISharedSettingDataSource;
25
28
  chatProvider?: FcrUIChatProvider;
26
29
  sharedVideoWindowDataSource?: FcrUIVideoWindowDataSource;
30
+ sharedMemberDataSource?: FcrUIMemberSharedDataSource;
31
+ screenShareProvider?: FcrUIScreenShareProvider;
32
+ sharedPinDataSource?: FcrUISharedPinDataSource;
27
33
  onNodeWillActive(): void;
28
34
  onNodeWillInactive(): void;
29
35
  getComponent(slots?: Partial<FcrLayoutSlots & {
@@ -53,7 +53,10 @@ var LayoutUIModule = exports.LayoutUIModule = /*#__PURE__*/function (_UIModule)
53
53
  sharedInterpreterDataSource: this.sharedInterpreterDataSource,
54
54
  sharedSettingDataSource: this.sharedSettingDataSource,
55
55
  chatProvider: this.chatProvider,
56
- sharedVideoWindowDataSource: this.sharedVideoWindowDataSource
56
+ sharedVideoWindowDataSource: this.sharedVideoWindowDataSource,
57
+ sharedMemberDataSource: this.sharedMemberDataSource,
58
+ screenShareProvider: this.screenShareProvider,
59
+ sharedPinDataSource: this.sharedPinDataSource
57
60
  });
58
61
  }
59
62
  }, {
@@ -1,6 +1,5 @@
1
1
  import { FcrPrivilegeUserRole, FcrStreamControl } from 'fcr-core';
2
2
  import { FcrUserInfo, FcrUserRole } from 'fcr-core/lib/type';
3
- import { FcrVideoWindowPreviewType } from '../video-window/type';
4
3
  import { FcrUIVideoWindowData, FcrUIVideoWindowLayoutType } from './type';
5
4
  import { FcrChatRoomConnectionState } from 'fcr-core/lib/room-control/chatroom-control/type';
6
5
  import { FcrUserUpdatedEvent } from 'fcr-core/lib/room-control/user-control/type';
@@ -17,6 +16,9 @@ import { FcrUISharedInterpreterDataSource } from '../../shared-data-source/inter
17
16
  import { FcrUISharedSettingDataSource } from '../../shared-data-source/setting';
18
17
  import { FcrUIChatProvider } from '../../providers/chat-provider';
19
18
  import { FcrUIVideoWindowDataSource } from '../../shared-data-source/video-window';
19
+ import { FcrUIMemberSharedDataSource } from '../../shared-data-source/member-data';
20
+ import { FcrUIScreenShareProvider } from '../../providers/screen-share-provider';
21
+ import { FcrUISharedPinDataSource } from '../../shared-data-source/pin-data';
20
22
  export interface FcrLayoutSlots {
21
23
  participant: React.ReactNode;
22
24
  chat: React.ReactNode;
@@ -42,6 +44,9 @@ export interface LayoutStoreParams {
42
44
  sharedSettingDataSource: FcrUISharedSettingDataSource;
43
45
  chatProvider: FcrUIChatProvider;
44
46
  sharedVideoWindowDataSource: FcrUIVideoWindowDataSource;
47
+ sharedMemberDataSource: FcrUIMemberSharedDataSource;
48
+ screenShareProvider: FcrUIScreenShareProvider;
49
+ sharedPinDataSource: FcrUISharedPinDataSource;
45
50
  }
46
51
  export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
47
52
  private readonly logger;
@@ -63,7 +68,10 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
63
68
  private _managerRoleUpdateForToast;
64
69
  private _sharedLayoutDataSource;
65
70
  private _sharedSettingDataSource;
71
+ private _sharedMemberDataSource;
66
72
  private _chatProvider;
73
+ private _screenShareProvider;
74
+ private _pinDataSource;
67
75
  accessor participant: React.ReactNode;
68
76
  accessor chat: React.ReactNode;
69
77
  accessor chatAction: React.ReactNode;
@@ -73,25 +81,26 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
73
81
  accessor whiteboard: React.ReactNode;
74
82
  accessor collapsed: boolean;
75
83
  accessor aside: boolean;
76
- accessor localUserRole: FcrUserRole;
77
84
  accessor barHovering: boolean;
78
85
  accessor barLocked: boolean;
79
86
  accessor barHidden: boolean;
80
87
  accessor asideWidth: number;
81
88
  accessor userVolumeMap: Map<string, number>;
82
89
  accessor chatRoomState: FcrChatRoomConnectionState;
83
- accessor videoWindowPreviewType: FcrVideoWindowPreviewType;
84
90
  accessor whiteboardActive: boolean;
85
91
  accessor participantCount: number;
86
92
  accessor ownerUser: FcrUserInfo | undefined;
87
- accessor localUser: FcrUserInfo;
88
93
  get streamControl(): FcrStreamControl;
94
+ get localUserRole(): FcrUserRole;
95
+ get localUser(): FcrUserInfo;
89
96
  get shouldHideNonVideoParticipants(): boolean;
90
97
  get enableSpotlight(): boolean;
91
98
  get isWaterMarkEnabled(): boolean;
92
99
  get isMulti(): boolean;
93
100
  get layout(): import("../../type").FcrUIVideoWindowLayoutType;
94
101
  get manualLayout(): import("../../type").FcrUIVideoWindowLayoutType | undefined;
102
+ get sourceList(): import("../../shared-data-source/video-window").FcrUIVideoWindowDataImpl[];
103
+ get layoutMainList(): import("../../shared-data-source/video-window").FcrUIVideoWindowDataImpl[];
95
104
  get mainList(): import("../../shared-data-source/video-window").FcrUIVideoWindowDataImpl[];
96
105
  get mainListMapByAudioStreamId(): Map<string, FcrUIVideoWindowData>;
97
106
  get spotlightStreamId(): string;
@@ -101,7 +110,6 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
101
110
  get asideLayout(): import("../../type").FcrUIUpdateAsideParams;
102
111
  get carouselList(): import("../../shared-data-source/video-window").FcrUIVideoWindowDataImpl[];
103
112
  get hasPinnedStream(): boolean;
104
- get isManager(): boolean;
105
113
  get isRobot(): boolean;
106
114
  get findSpotlightUser(): import("../../shared-data-source/video-window").FcrUIVideoWindowDataImpl | null | undefined;
107
115
  get microphoneEnabled(): boolean;
@@ -116,9 +124,10 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
116
124
  get disallowedAllChat(): boolean;
117
125
  get privilegeOperator(): FcrUserInfo | undefined;
118
126
  get localUserId(): string;
119
- get interpreterUsers(): import("fcr-core/lib/room-control/interpreter-control/types").FcrInterpreterUserInfo[] | null;
120
- get interpreterState(): boolean;
127
+ get interpreterUserList(): import("fcr-core/lib/room-control/interpreter-control/types").FcrInterpreterUserInfo[] | null;
128
+ get isInterpreterEnabled(): boolean;
121
129
  constructor(params: LayoutStoreParams);
130
+ get isVideoSuspended(): boolean;
122
131
  get asideContent(): import("../../type").FcrUIUpdateAsideParams;
123
132
  get participantsRenderAt(): "aside" | "dialog";
124
133
  get chatRenderAt(): "aside" | "dialog";
@@ -127,14 +136,15 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
127
136
  hasUnmutePermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
128
137
  hasRequestStartAudioPermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
129
138
  toggleMainStream(streamId: string): void;
139
+ addPinMessage(streamId: string): void;
140
+ cancelPinMessage(streamId: string): void;
130
141
  addPin(streamId: string): void;
131
- removePin(streamId: string, toastText?: string): void;
142
+ removePin(streamId: string): void;
132
143
  setVideoOrientation(): void;
133
144
  setAllowChat(allowChat: boolean): void;
134
145
  handleSetPinState(userId: string): void;
135
146
  setWhiteboardActive(active: boolean): void;
136
147
  setAsideWidth(val: number): void;
137
- getLocalUserId(): string;
138
148
  /**
139
149
  * Partially update slots, use `null` to delete the slot.
140
150
  * `undefined` is ignored.
@@ -160,7 +170,6 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
160
170
  handleLiveLayoutChange(modifiedUser: FcrUserInfo): void;
161
171
  release(): void;
162
172
  onUserInfoUpdated(roomId: string, event: FcrUserUpdatedEvent): void;
163
- setLocalUserRole(role: FcrUserRole): void;
164
173
  stopLocalPreview(view: HTMLDivElement): void;
165
174
  startLocalPreview(div: HTMLDivElement | null): void;
166
175
  setAllowChatWithPayload(type: 'public' | 'private_to_manager'): void;
@@ -169,8 +178,12 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
169
178
  onEvent(action: FcrUIAction.SET_MAIN_SPEAKER, payload: FcrUISetMainSpeakerParams): void;
170
179
  onEvent(action: FcrUIAction.TOGGLE_LAYOUT_BAR_LOCK, payload: boolean): void;
171
180
  private _addListeners;
181
+ private get _hasVideoStreamUser();
182
+ private _shouldUnpin;
183
+ private _isVideoParticipantVisible;
172
184
  private _handleLayoutUpdated;
173
185
  private _handleFoldListChanged;
186
+ private _handleMainListLengthChanged;
174
187
  private _handleMainListChanged;
175
188
  private _switchToSpeaker;
176
189
  private _switchToGallery;