fcr-ui-scene 3.1.1 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (372) hide show
  1. package/installer/icons/favicon.ico +0 -0
  2. package/installer/icons/favicon.png +0 -0
  3. package/installer/mac/entitlements.mac.plist +16 -0
  4. package/lib/base.d.ts +0 -1
  5. package/lib/base.js +16 -0
  6. package/lib/common/device-store.d.ts +4 -5
  7. package/lib/common/device-store.js +178 -86
  8. package/lib/common/device-stream-store.d.ts +3 -2
  9. package/lib/common/device-stream-store.js +94 -72
  10. package/lib/common/event-store.d.ts +20 -3
  11. package/lib/common/event-store.js +43 -5
  12. package/lib/common/security-store.d.ts +16 -16
  13. package/lib/common/security-store.js +278 -124
  14. package/lib/electron/app.js +13 -5
  15. package/lib/electron/bootstrap-dev.d.ts +1 -0
  16. package/lib/electron/bootstrap-dev.js +51 -0
  17. package/lib/electron/bootstrap-sdk.d.ts +1 -0
  18. package/lib/electron/bootstrap-sdk.js +56 -0
  19. package/lib/electron/bootstrap.d.ts +1 -0
  20. package/lib/electron/bootstrap.js +56 -0
  21. package/lib/electron/default-options.js +1 -1
  22. package/lib/electron/dev.d.ts +1 -0
  23. package/lib/electron/dev.js +51 -0
  24. package/lib/electron/injections.d.ts +3 -4
  25. package/lib/electron/injections.js +46 -33
  26. package/lib/electron/logger.d.ts +6 -0
  27. package/lib/electron/logger.js +66 -0
  28. package/lib/electron/main.js +15 -11
  29. package/lib/electron/plugins/meeting-state.d.ts +2 -0
  30. package/lib/electron/plugins/meeting-state.js +39 -0
  31. package/lib/electron/preload.js +2 -1
  32. package/lib/electron/tools.js +9 -0
  33. package/lib/electron/window.d.ts +1 -1
  34. package/lib/electron/window.js +14 -2
  35. package/lib/fragments/control-bar/context.d.ts +0 -1
  36. package/lib/fragments/control-bar/control-bar-store.d.ts +34 -1
  37. package/lib/fragments/control-bar/control-bar-store.js +394 -81
  38. package/lib/fragments/control-bar/device/index.js +12 -3
  39. package/lib/fragments/control-bar/index.css +15 -10
  40. package/lib/fragments/control-bar/index.js +19 -1
  41. package/lib/fragments/control-bar/meeting-details/meeting-detail.css +109 -0
  42. package/lib/fragments/control-bar/meeting-details/meeting-details-portal.d.ts +3 -0
  43. package/lib/fragments/control-bar/meeting-details/meeting-details-portal.js +60 -0
  44. package/lib/fragments/control-bar/meeting-details/meeting-details.d.ts +2 -0
  45. package/lib/fragments/control-bar/meeting-details/meeting-details.js +179 -0
  46. package/lib/fragments/control-bar/more-actions/index.css +53 -0
  47. package/lib/fragments/control-bar/more-actions/index.js +77 -37
  48. package/lib/fragments/control-bar/security-content/index.css +10 -0
  49. package/lib/fragments/control-bar/security-content/index.js +43 -18
  50. package/lib/fragments/control-bar/view.js +8 -2
  51. package/lib/fragments/live-streaming/context.d.ts +0 -1
  52. package/lib/fragments/live-streaming/store.js +27 -17
  53. package/lib/fragments/share-screen-selection/context.d.ts +0 -1
  54. package/lib/fragments/share-screen-selection/selection-store.d.ts +0 -1
  55. package/lib/fragments/share-screen-selection/selection-store.js +34 -33
  56. package/lib/fragments/share-screen-selection/view.js +7 -0
  57. package/lib/fragments/toolbar/components/color-picker/components/color.js +2 -0
  58. package/lib/fragments/toolbar/components/color-picker/components/panel.js +4 -0
  59. package/lib/fragments/toolbar/components/color-picker/components/picker.js +2 -0
  60. package/lib/fragments/toolbar/components/color-picker/index.js +5 -1
  61. package/lib/fragments/toolbar/components/color-picker.js +3 -1
  62. package/lib/fragments/toolbar/components/eraser-picker.js +4 -13
  63. package/lib/fragments/toolbar/components/extension-toolbar-item.js +5 -0
  64. package/lib/fragments/toolbar/components/extra-tool-picker.js +4 -0
  65. package/lib/fragments/toolbar/components/pen-picker.js +2 -0
  66. package/lib/fragments/toolbar/components/screen-capture-picker.js +2 -0
  67. package/lib/fragments/toolbar/components/shape-picker.js +2 -0
  68. package/lib/fragments/toolbar/hooks.d.ts +1 -1
  69. package/lib/fragments/toolbar/hooks.js +13 -8
  70. package/lib/fragments/toolbar/store.d.ts +4 -4
  71. package/lib/fragments/toolbar/store.js +20 -2
  72. package/lib/fragments/toolbar/view.js +2 -0
  73. package/lib/global.d.ts +1 -0
  74. package/lib/hooks/meeting-time.d.ts +2 -2
  75. package/lib/login-confirm-dialog.d.ts +12 -0
  76. package/lib/login-confirm-dialog.js +80 -0
  77. package/lib/modules/action-bar/action-bar-collapes-items.js +14 -5
  78. package/lib/modules/action-bar/chat/index.js +6 -6
  79. package/lib/modules/action-bar/context.d.ts +0 -1
  80. package/lib/modules/action-bar/device/index.css +7 -2
  81. package/lib/modules/action-bar/device/index.d.ts +2 -2
  82. package/lib/modules/action-bar/device/index.js +6 -4
  83. package/lib/modules/action-bar/index.css +63 -12
  84. package/lib/modules/action-bar/index.d.ts +3 -2
  85. package/lib/modules/action-bar/index.dev.js +8 -7
  86. package/lib/modules/action-bar/index.js +21 -0
  87. package/lib/modules/action-bar/item-placement.d.ts +1 -2
  88. package/lib/modules/action-bar/item.js +5 -0
  89. package/lib/modules/action-bar/leave/assign-host.d.ts +3 -1
  90. package/lib/modules/action-bar/leave/assign-host.js +7 -7
  91. package/lib/modules/action-bar/leave/index.js +35 -7
  92. package/lib/modules/action-bar/leave/leave-meeting.d.ts +11 -1
  93. package/lib/modules/action-bar/leave/leave-meeting.js +25 -16
  94. package/lib/modules/action-bar/more/poppover-content.d.ts +0 -1
  95. package/lib/modules/action-bar/more/poppover-content.js +14 -4
  96. package/lib/modules/action-bar/participants/index.css +12 -0
  97. package/lib/modules/action-bar/participants/index.js +21 -14
  98. package/lib/modules/action-bar/screen-share/index.js +5 -1
  99. package/lib/modules/action-bar/screen-share/submenu.js +17 -22
  100. package/lib/modules/action-bar/security/drop-menu.js +124 -14
  101. package/lib/modules/action-bar/security/index.js +1 -1
  102. package/lib/modules/action-bar/settings/index.js +1 -1
  103. package/lib/modules/action-bar/store.d.ts +45 -21
  104. package/lib/modules/action-bar/store.js +544 -134
  105. package/lib/modules/action-bar/view.js +65 -42
  106. package/lib/modules/audio-stream/index.js +12 -6
  107. package/lib/modules/chat/chat-bar/index.js +46 -27
  108. package/lib/modules/chat/chat-select/index.css +19 -4
  109. package/lib/modules/chat/chat-select/index.d.ts +0 -1
  110. package/lib/modules/chat/chat-select/index.js +29 -3
  111. package/lib/modules/chat/chat.d.ts +2 -3
  112. package/lib/modules/chat/chat.js +210 -107
  113. package/lib/modules/chat/contex.d.ts +0 -1
  114. package/lib/modules/chat/demo-wrapper.d.ts +0 -1
  115. package/lib/modules/chat/index.css +49 -0
  116. package/lib/modules/chat/index.d.ts +3 -3
  117. package/lib/modules/chat/index.dev.js +4 -4
  118. package/lib/modules/chat/index.js +32 -11
  119. package/lib/modules/chat/message-list.js +81 -49
  120. package/lib/modules/chat/store.d.ts +50 -4
  121. package/lib/modules/chat/store.js +303 -124
  122. package/lib/modules/chat/util.js +1 -1
  123. package/lib/modules/connection-gateway/components/phone/components/callinfo/index.js +2 -0
  124. package/lib/modules/connection-gateway/components/phone/index.js +2 -0
  125. package/lib/modules/connection-gateway/index.d.ts +3 -2
  126. package/lib/modules/connection-gateway/index.js +2 -0
  127. package/lib/modules/connection-gateway/store.d.ts +6 -4
  128. package/lib/modules/connection-gateway/store.js +46 -15
  129. package/lib/modules/device-pretest/audio-preview/microphone-detection.d.ts +1 -0
  130. package/lib/modules/device-pretest/audio-preview/microphone-detection.js +3 -2
  131. package/lib/modules/device-pretest/audio-preview/speaker-control.d.ts +0 -1
  132. package/lib/modules/device-pretest/audio-preview/speaker-control.js +1 -1
  133. package/lib/modules/device-pretest/context.d.ts +0 -1
  134. package/lib/modules/device-pretest/index.css +0 -4
  135. package/lib/modules/device-pretest/index.d.ts +0 -1
  136. package/lib/modules/device-pretest/index.js +2 -1
  137. package/lib/modules/device-pretest/settings/beauty.js +19 -6
  138. package/lib/modules/device-pretest/settings/video-effect.d.ts +0 -1
  139. package/lib/modules/device-pretest/settings/video-settings-basic.js +1 -0
  140. package/lib/modules/device-pretest/settings/virtual-background-setting.js +2 -0
  141. package/lib/modules/device-pretest/store.js +34 -19
  142. package/lib/modules/dialog/components/chat/electron.js +3 -2
  143. package/lib/modules/dialog/components/chat/index.js +1 -1
  144. package/lib/modules/dialog/components/confirm/electron.js +7 -5
  145. package/lib/modules/dialog/components/confirm/index.js +16 -2
  146. package/lib/modules/dialog/components/connection-gateway/electron.js +4 -2
  147. package/lib/modules/dialog/components/connection-gateway/index.css +0 -2
  148. package/lib/modules/dialog/components/device-setting/electron.d.ts +2 -0
  149. package/lib/modules/dialog/components/device-setting/electron.js +74 -0
  150. package/lib/modules/dialog/components/device-setting/index.css +26 -0
  151. package/lib/modules/dialog/components/device-setting/index.d.ts +4 -0
  152. package/lib/modules/dialog/components/device-setting/index.js +60 -0
  153. package/lib/modules/dialog/components/operation-waiting-room/electron.d.ts +5 -0
  154. package/lib/modules/dialog/components/operation-waiting-room/electron.js +89 -0
  155. package/lib/modules/dialog/components/operation-waiting-room/index.css +44 -0
  156. package/lib/modules/dialog/components/operation-waiting-room/index.d.ts +5 -0
  157. package/lib/modules/dialog/components/operation-waiting-room/index.js +156 -0
  158. package/lib/modules/dialog/components/participant/electron.js +8 -2
  159. package/lib/modules/dialog/components/remove-admit-waiting-room/electron.d.ts +5 -0
  160. package/lib/modules/dialog/components/remove-admit-waiting-room/electron.js +89 -0
  161. package/lib/modules/dialog/components/remove-admit-waiting-room/index.css +50 -0
  162. package/lib/modules/dialog/components/remove-admit-waiting-room/index.d.ts +5 -0
  163. package/lib/modules/dialog/components/remove-admit-waiting-room/index.js +90 -0
  164. package/lib/modules/dialog/components/share-screen-selection/index.js +1 -1
  165. package/lib/modules/dialog/components/whiteboard/index.js +2 -1
  166. package/lib/modules/dialog/context.d.ts +0 -1
  167. package/lib/modules/dialog/dialogs.d.ts +0 -2
  168. package/lib/modules/dialog/dialogs.js +62 -103
  169. package/lib/modules/dialog/index.css +7 -6
  170. package/lib/modules/dialog/index.d.ts +1 -1
  171. package/lib/modules/dialog/index.js +17 -0
  172. package/lib/modules/dialog/store.d.ts +6 -2
  173. package/lib/modules/dialog/store.js +52 -9
  174. package/lib/modules/dialog/view.js +2 -0
  175. package/lib/modules/event-notification/context.d.ts +2 -0
  176. package/lib/modules/event-notification/context.js +9 -0
  177. package/lib/modules/event-notification/index.css +58 -0
  178. package/lib/modules/event-notification/index.d.ts +13 -0
  179. package/lib/modules/event-notification/index.js +48 -0
  180. package/lib/modules/event-notification/store.d.ts +17 -0
  181. package/lib/modules/event-notification/store.js +133 -0
  182. package/lib/modules/event-notification/view.d.ts +5 -0
  183. package/lib/modules/event-notification/view.js +114 -0
  184. package/lib/modules/event-toast/context.d.ts +0 -1
  185. package/lib/modules/event-toast/store.js +16 -0
  186. package/lib/modules/invite/context.d.ts +0 -1
  187. package/lib/modules/invite/index.css +4 -4
  188. package/lib/modules/invite/index.d.ts +2 -2
  189. package/lib/modules/invite/pstn-invite.js +4 -1
  190. package/lib/modules/invite/store.d.ts +2 -2
  191. package/lib/modules/invite/store.js +27 -7
  192. package/lib/modules/invite/voip-invite.d.ts +0 -1
  193. package/lib/modules/invite/voip-invite.js +1 -1
  194. package/lib/modules/layout/components/Aside.d.ts +0 -1
  195. package/lib/modules/layout/components/Aside.js +4 -1
  196. package/lib/modules/layout/components/Carousel.js +6 -5
  197. package/lib/modules/layout/components/Gallery.js +16 -9
  198. package/lib/modules/layout/components/Layout.js +82 -57
  199. package/lib/modules/layout/components/index.css +42 -5
  200. package/lib/modules/layout/components/index.js +3 -0
  201. package/lib/modules/layout/context.d.ts +0 -1
  202. package/lib/modules/layout/index.css +30 -0
  203. package/lib/modules/layout/index.dev.js +11 -11
  204. package/lib/modules/layout/index.js +0 -6
  205. package/lib/modules/layout/member-window/index.css +5 -5
  206. package/lib/modules/layout/member-window/index.d.ts +7 -7
  207. package/lib/modules/layout/member-window/index.js +59 -13
  208. package/lib/modules/layout/store.d.ts +61 -50
  209. package/lib/modules/layout/store.js +517 -342
  210. package/lib/modules/layout/type.d.ts +2 -1
  211. package/lib/modules/layout/video-window-datasource.d.ts +14 -8
  212. package/lib/modules/layout/video-window-datasource.js +129 -78
  213. package/lib/modules/live-streaming/context.d.ts +0 -1
  214. package/lib/modules/live-streaming/index.d.ts +2 -2
  215. package/lib/modules/live-streaming/index.dev.js +5 -4
  216. package/lib/modules/live-streaming/store.d.ts +2 -2
  217. package/lib/modules/live-streaming/store.js +32 -11
  218. package/lib/modules/participant/attendee/index.d.ts +12 -3
  219. package/lib/modules/participant/attendee/index.js +142 -30
  220. package/lib/modules/participant/context.d.ts +0 -1
  221. package/lib/modules/participant/index.css +20 -0
  222. package/lib/modules/participant/index.d.ts +5 -2
  223. package/lib/modules/participant/index.dev.js +14 -12
  224. package/lib/modules/participant/index.js +27 -0
  225. package/lib/modules/participant/member-list-data-source.d.ts +3 -3
  226. package/lib/modules/participant/member-list-data-source.js +29 -3
  227. package/lib/modules/participant/room-control-drop-menu/index.css +37 -0
  228. package/lib/modules/participant/room-control-drop-menu/index.js +35 -1
  229. package/lib/modules/participant/store.d.ts +59 -34
  230. package/lib/modules/participant/store.js +541 -222
  231. package/lib/modules/participant/view.d.ts +6 -6
  232. package/lib/modules/participant/view.js +138 -34
  233. package/lib/modules/setting/audio-settings/audio-settings.js +16 -12
  234. package/lib/modules/setting/audio-settings/index.css +2 -2
  235. package/lib/modules/setting/context.d.ts +0 -1
  236. package/lib/modules/setting/general-settings/general-settings.js +2 -1
  237. package/lib/modules/setting/general-settings/index.css +2 -2
  238. package/lib/modules/setting/index.css +1 -5
  239. package/lib/modules/setting/index.d.ts +2 -2
  240. package/lib/modules/setting/index.dev.js +14 -12
  241. package/lib/modules/setting/index.js +16 -0
  242. package/lib/modules/setting/minutes-settings/index.css +65 -0
  243. package/lib/modules/setting/minutes-settings/minutes-settings.d.ts +4 -0
  244. package/lib/modules/setting/minutes-settings/minutes-settings.js +159 -0
  245. package/lib/modules/setting/state/index.css +0 -4
  246. package/lib/modules/setting/state/index.js +11 -1
  247. package/lib/modules/setting/storage-settings/storage-settings.js +1 -1
  248. package/lib/modules/setting/store.d.ts +7 -5
  249. package/lib/modules/setting/store.js +69 -46
  250. package/lib/modules/setting/translate-settings/index.css +45 -0
  251. package/lib/modules/setting/translate-settings/language-select.d.ts +12 -0
  252. package/lib/modules/setting/translate-settings/language-select.js +50 -0
  253. package/lib/modules/setting/translate-settings/translate-settings.d.ts +4 -0
  254. package/lib/modules/setting/translate-settings/translate-settings.js +139 -0
  255. package/lib/modules/setting/video-settings/index.css +15 -6
  256. package/lib/modules/setting/video-settings/video-settings-basic.js +3 -2
  257. package/lib/modules/setting/video-settings/video-settings.js +5 -1
  258. package/lib/modules/setting/view.js +34 -2
  259. package/lib/modules/share-screen/index.d.ts +4 -2
  260. package/lib/modules/share-screen/index.dev.js +17 -14
  261. package/lib/modules/share-screen/index.js +2 -0
  262. package/lib/modules/share-screen/selection/index.css +2 -0
  263. package/lib/modules/share-screen/selection/index.js +44 -6
  264. package/lib/modules/share-screen/share-state-bar/index.css +49 -11
  265. package/lib/modules/share-screen/share-state-bar/index.d.ts +0 -1
  266. package/lib/modules/share-screen/share-state-bar/index.js +51 -20
  267. package/lib/modules/share-screen/store.d.ts +23 -13
  268. package/lib/modules/share-screen/store.js +733 -606
  269. package/lib/modules/state-bar/context.d.ts +0 -1
  270. package/lib/modules/state-bar/index.css +2 -2
  271. package/lib/modules/state-bar/index.d.ts +2 -2
  272. package/lib/modules/state-bar/index.dev.js +12 -10
  273. package/lib/modules/state-bar/layout-config.js +2 -0
  274. package/lib/modules/state-bar/live-streaming-state.js +3 -0
  275. package/lib/modules/state-bar/meeting-detail.css +6 -4
  276. package/lib/modules/state-bar/meeting-details.js +29 -3
  277. package/lib/modules/state-bar/meeting-network-state.css +14 -3
  278. package/lib/modules/state-bar/meeting-network-state.js +10 -4
  279. package/lib/modules/state-bar/recording.js +9 -11
  280. package/lib/modules/state-bar/store.d.ts +7 -5
  281. package/lib/modules/state-bar/store.js +68 -8
  282. package/lib/modules/state-bar/view.js +4 -8
  283. package/lib/modules/video-window/context.d.ts +0 -1
  284. package/lib/modules/video-window/deviceState/index.d.ts +3 -3
  285. package/lib/modules/video-window/index.css +1 -0
  286. package/lib/modules/video-window/members/index.js +7 -4
  287. package/lib/modules/video-window/store.d.ts +5 -4
  288. package/lib/modules/video-window/store.js +49 -17
  289. package/lib/modules/video-window/topControl/index.js +7 -0
  290. package/lib/modules/video-window/view.js +2 -0
  291. package/lib/modules/waiting-room-layout/context.d.ts +2 -0
  292. package/lib/modules/waiting-room-layout/context.js +9 -0
  293. package/lib/modules/waiting-room-layout/index.css +71 -0
  294. package/lib/modules/waiting-room-layout/index.d.ts +8 -0
  295. package/lib/modules/waiting-room-layout/index.js +47 -0
  296. package/lib/modules/waiting-room-layout/store.d.ts +30 -0
  297. package/lib/modules/waiting-room-layout/store.js +189 -0
  298. package/lib/modules/waiting-room-layout/type.d.ts +0 -0
  299. package/lib/modules/waiting-room-layout/type.js +1 -0
  300. package/lib/modules/waiting-room-layout/view.d.ts +3 -0
  301. package/lib/modules/waiting-room-layout/view.js +67 -0
  302. package/lib/modules/whiteboard/app.js +2 -8
  303. package/lib/modules/whiteboard/components/control-bar/index.css +3 -0
  304. package/lib/modules/whiteboard/components/control-bar/store.d.ts +0 -1
  305. package/lib/modules/whiteboard/components/control-bar/store.js +29 -29
  306. package/lib/modules/whiteboard/components/loading/index.js +2 -2
  307. package/lib/modules/whiteboard/components/multi-window/index.js +8 -3
  308. package/lib/modules/whiteboard/components/pagination/store.d.ts +0 -1
  309. package/lib/modules/whiteboard/components/progress/electron.js +3 -2
  310. package/lib/modules/whiteboard/components/progress/style.css +4 -3
  311. package/lib/modules/whiteboard/components/switch-theme/index.css +4 -0
  312. package/lib/modules/whiteboard/components/switch-theme/index.d.ts +2 -1
  313. package/lib/modules/whiteboard/components/switch-theme/index.js +29 -17
  314. package/lib/modules/whiteboard/components/switch-theme/item.d.ts +1 -0
  315. package/lib/modules/whiteboard/components/switch-theme/item.js +11 -2
  316. package/lib/modules/whiteboard/components/switch-theme/libs.d.ts +2 -1
  317. package/lib/modules/whiteboard/components/switch-theme/libs.js +21 -20
  318. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/panel.js +2 -0
  319. package/lib/modules/whiteboard/components/toolbar/components/color-picker/index.js +3 -1
  320. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +11 -9
  321. package/lib/modules/whiteboard/components/toolbar/components/extra-tool-picker.js +4 -0
  322. package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +5 -0
  323. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +2 -0
  324. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +18 -12
  325. package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +3 -3
  326. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +16 -11
  327. package/lib/modules/whiteboard/components/toolbar/index.js +9 -0
  328. package/lib/modules/whiteboard/components/toolbar/store.d.ts +8 -7
  329. package/lib/modules/whiteboard/components/toolbar/store.js +25 -4
  330. package/lib/modules/whiteboard/context.d.ts +7 -3
  331. package/lib/modules/whiteboard/context.js +6 -4
  332. package/lib/modules/whiteboard/index.d.ts +6 -8
  333. package/lib/modules/whiteboard/index.js +310 -255
  334. package/lib/modules/whiteboard/type.d.ts +4 -12
  335. package/lib/modules/whiteboard/type.js +6 -16
  336. package/lib/modules/whiteboard/utils.d.ts +1 -0
  337. package/lib/modules/whiteboard/utils.js +12 -1
  338. package/lib/plugins/browser-runtime-plugin.js +2 -1
  339. package/lib/plugins/module-dev-plugin.js +12 -10
  340. package/lib/plugins/multi-lang-plugin.d.ts +1 -5
  341. package/lib/plugins/multi-lang-plugin.js +2 -0
  342. package/lib/runtime.d.ts +3 -5
  343. package/lib/translations/enUS.d.ts +590 -0
  344. package/lib/translations/enUS.js +608 -6
  345. package/lib/translations/zhCN.d.ts +588 -0
  346. package/lib/translations/zhCN.js +604 -4
  347. package/lib/type.d.ts +6 -2
  348. package/lib/ui-manager.d.ts +7 -3
  349. package/lib/ui-manager.js +597 -143
  350. package/lib/ui-scene.d.ts +1 -0
  351. package/lib/ui-scene.js +32 -22
  352. package/lib/utilities/board-context.d.ts +0 -1
  353. package/lib/utilities/constant.d.ts +47 -5
  354. package/lib/utilities/constant.js +44 -1
  355. package/lib/utilities/copyText.js +1 -1
  356. package/lib/utilities/extract.js +26 -3
  357. package/lib/utilities/hooks.js +2 -0
  358. package/lib/utilities/parameters.js +2 -2
  359. package/lib/utilities/renderer-event.js +28 -0
  360. package/lib/utilities/renderer.d.ts +1 -0
  361. package/lib/utilities/renderer.js +15 -6
  362. package/lib/utilities/tools.js +5 -2
  363. package/lib/utilities/ui-resources.d.ts +2 -2
  364. package/lib/utilities/ui-resources.js +20 -3
  365. package/lib/utilities/video-track-render-context.d.ts +0 -1
  366. package/package.json +17 -16
  367. package/public/assets/fcr_defaultpage.png +0 -0
  368. package/public/assets/login_confirm.png +0 -0
  369. package/public/index.html +29 -11
  370. package/lib/modules/device-pretest/settings/index.css +0 -15
  371. package/lib/modules/participant/attendee/participants-more-action.d.ts +0 -18
  372. package/lib/modules/participant/attendee/participants-more-action.js +0 -275
@@ -1,27 +1,57 @@
1
1
  .share-state-bar {
2
2
  background-color: var(--fcr_web_ui_scene_fill2);
3
3
  border-radius: var(--fcr_cornerradius_s);
4
- gap: 10px;
5
- height: 34px;
6
- width: fit-content;
7
4
  padding: 10px;
5
+ box-shadow: var(--fcr_web_light_dropup);
6
+ flex-direction: column;
7
+ display: flex;
8
+ flex-wrap: nowrap;
9
+ align-items: center;
8
10
  }
9
11
 
10
- .share-state-bar,
11
- .share-state-bar__state {
12
+ .share-state-bar__control {
13
+ gap: 10px;
14
+ height: 28px;
12
15
  display: flex;
13
- flex-direction: row;
14
- flex-wrap: nowrap;
16
+ width: max-content;
15
17
  align-items: center;
16
18
  }
17
19
 
18
20
  .share-state-bar__state {
19
21
  gap: 10px;
22
+ display: flex;
23
+ align-items: center;
24
+ border-radius: var(--fcr_cornerradius_xs);
25
+ padding: 3px 5px 3px 3px;
26
+ }
27
+
28
+ .share-state-bar .divider-vertical {
29
+ border-left: 1px solid;
30
+ border-image: linear-gradient(to bottom, transparent 0%, #888 50%, #888 50%, transparent 100%) 1;
31
+ }
32
+
33
+ .share-state-bar__state:hover {
34
+ background: var(--fcr_web_ui_scene_hover);
35
+ color: var(--fcr_web_ui_scene_mainicon2);
36
+ cursor: pointer;
37
+ }
38
+
39
+ .share-state-bar__state:hover svg:nth-child(3) path {
40
+ fill: var(--fcr_web_ui_scene_mainicon2);
41
+ }
42
+
43
+ .share-state-bar__text {
44
+ width: 100px;
45
+ line-height: 1;
20
46
  }
21
47
 
22
48
  .share-state-bar__share_screen_preview {
23
- width: 58px;
24
- height: 34px;
49
+ width: 100%;
50
+ aspect-ratio: 16 / 9;
51
+ margin-top: 10px;
52
+ background-color: #d9d9d9;
53
+ border-radius: var(--fcr_cornerradius_xs);
54
+ overflow: hidden;
25
55
  }
26
56
 
27
57
  .share-state-bar__stop-share {
@@ -33,6 +63,14 @@
33
63
  cursor: pointer;
34
64
  }
35
65
 
36
- .share-state-bar__share_screen_preview {
37
- background-color: #d9d9d9;
66
+ .share-state-bar .share-state-nav__drag-button:hover,
67
+ .share-state-bar .share-state-nav__transfer-position:hover {
68
+ background-color: var(--fcr_web_ui_scene_hover);
69
+ height: 20px;
70
+ cursor: pointer;
71
+ }
72
+
73
+ .share-state-bar .share-state-nav__drag-button:hover path,
74
+ .share-state-bar .share-state-nav__transfer-position:hover path {
75
+ fill: var(--fcr_web_ui_scene_mainicon2);
38
76
  }
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import './index.css';
3
2
  export declare const ShareStateBar: import("react").ForwardRefExoticComponent<{
4
3
  onStopShare: () => void;
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.ShareStateBar = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
10
  var _button = require("agora-ui-foundation/lib/components/button");
10
11
  var _divider = _interopRequireDefault(require("agora-ui-foundation/lib/components/divider"));
11
12
  var _icon = require("agora-ui-foundation/lib/components/icon");
@@ -17,33 +18,60 @@ require("./index.css");
17
18
  var _i18n = require("agora-ui-foundation/lib/i18n");
18
19
  var _jsxRuntime = require("react/jsx-runtime");
19
20
  var ShareStateBar = exports.ShareStateBar = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
20
- var shareScreenPreviewRef = (0, _react.useRef)(null);
21
+ var shareScreenBarRef = (0, _react.useRef)(null);
22
+ var rndRef = (0, _react.useRef)(null);
23
+ var _useState = (0, _react.useState)(false),
24
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
25
+ showPreview = _useState2[0],
26
+ setShowPreview = _useState2[1];
21
27
  var t = (0, _i18n.useI18n)();
22
28
  (0, _react.useEffect)(function () {
23
- if (shareScreenPreviewRef) {
24
- // ref(shareScreenPreviewRef.current);
25
- }
26
- }, [shareScreenPreviewRef]);
29
+ var _shareScreenBarRef$cu, _rndRef$current;
30
+ var _document$body = document.body,
31
+ offsetWidth = _document$body.offsetWidth,
32
+ offsetTop = _document$body.offsetTop;
33
+ var barWidth = ((_shareScreenBarRef$cu = shareScreenBarRef.current) === null || _shareScreenBarRef$cu === void 0 ? void 0 : _shareScreenBarRef$cu.offsetWidth) || 300;
34
+ (_rndRef$current = rndRef.current) === null || _rndRef$current === void 0 || _rndRef$current.updatePosition({
35
+ x: offsetWidth / 2 - barWidth / 2,
36
+ y: offsetTop
37
+ });
38
+ }, [rndRef]);
27
39
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRnd.Rnd, {
40
+ bounds: "window",
41
+ ref: rndRef,
28
42
  enableResizing: false,
29
43
  dragHandleClassName: "share-state-nav__drag-icon",
30
44
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
31
45
  className: "share-state-bar",
32
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_shareStateNav.DragIcon, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_divider["default"], {
33
- type: "vertical"
34
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
35
- className: "share-state-bar__state",
36
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
37
- type: _type.FcrIconType.FCR_VIDEO_SHARESCREEN,
38
- size: 22,
39
- colors: {
40
- iconPrimary: 'var(--fcr_ui_scene_ramp_green6)'
41
- }
42
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
43
- children: t('fmt_modules_labels_sharing')
44
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
45
- className: "share-state-bar__share_screen_preview",
46
- ref: ref
46
+ ref: shareScreenBarRef,
47
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
48
+ className: "share-state-bar__control",
49
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_shareStateNav.DragIcon, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_divider["default"], {
50
+ type: "vertical"
51
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
52
+ className: "share-state-bar__state",
53
+ onClick: function onClick() {
54
+ return setShowPreview(!showPreview);
55
+ },
56
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
57
+ type: _type.FcrIconType.FCR_VIDEO_SHARESCREEN,
58
+ size: 22,
59
+ colors: {
60
+ iconPrimary: 'var(--fcr_ui_scene_ramp_green6)'
61
+ }
62
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
63
+ className: "share-state-bar__text",
64
+ children: t('fmt_modules_labels_sharing')
65
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
66
+ size: 12,
67
+ type: _type.FcrIconType.FCR_V2_CHEVRON_DOWN2,
68
+ style: {
69
+ transform: showPreview ? 'rotate(180deg)' : 'rotate(0deg)'
70
+ },
71
+ colors: {
72
+ iconPrimary: 'var(--fcr_ui_scene_icontext3)'
73
+ }
74
+ })]
47
75
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.FcrButton, {
48
76
  type: "primary",
49
77
  styleType: "danger",
@@ -61,6 +89,9 @@ var ShareStateBar = exports.ShareStateBar = /*#__PURE__*/(0, _react.forwardRef)(
61
89
  }), t('fmt_screenshare_controlbar_button_stop')]
62
90
  })
63
91
  })]
92
+ }), showPreview && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
93
+ className: "share-state-bar__share_screen_preview",
94
+ ref: ref
64
95
  })]
65
96
  })
66
97
  });
@@ -1,13 +1,13 @@
1
- /// <reference types="react" />
2
- import { FcrDesktopMediaControl, FcrMainRoomControl, FcrMediaSourceState } from 'agora-edu-core';
1
+ import { FcrBaseRoomControl, FcrDesktopMediaControl, FcrMediaSourceState } from 'agora-edu-core';
3
2
  import { FcrUserInfo, FcrUserRole } from 'agora-edu-core/lib/type';
4
3
  import { AgoraRtcDisplayInfo, AgoraRtcScreenCaptureType, AgoraRtcWindowInfo } from 'agora-rte-sdk/lib/core/rtc/type';
5
4
  import { AudioProcessingChannel } from 'agora-ui-foundation/lib/components/room-screen-share-state-bar/share-audio';
6
5
  import { FcrUIEventStore } from '../../common/event-store';
7
6
  import { FcrSecurityStore } from '../../common/security-store';
8
- import { DialogKey, UIAction } from '../../utilities/constant';
7
+ import { DialogKey } from '../../utilities/constant';
9
8
  import { FcrDeviceStreamStore } from '../../common/device-stream-store';
10
9
  import { FcrDeviceStore } from '../../common/device-store';
10
+ import { FcrUISceneConfig } from '../../type';
11
11
  type ScreenCaptureSourceType = Omit<AgoraRtcDisplayInfo, 'image'> & {
12
12
  image: React.ReactNode | Uint8Array;
13
13
  };
@@ -26,6 +26,8 @@ export default class ShareScreenStore {
26
26
  private _currentShareStreamId;
27
27
  private _connectType;
28
28
  private _removeScreenStreamFailed;
29
+ private _isReplaceScreen;
30
+ private _previewDom;
29
31
  private _observer;
30
32
  private _deviceStoreObserver;
31
33
  private _roomObserver;
@@ -53,38 +55,36 @@ export default class ShareScreenStore {
53
55
  accessor currentSelection: string;
54
56
  accessor currentSelectionType: AgoraRtcScreenCaptureType;
55
57
  accessor shareWithAudio: boolean;
56
- accessor boardOwnerUser: FcrUserInfo | null;
58
+ accessor boardOwnerUser: FcrUserInfo | undefined;
57
59
  accessor localUser: FcrUserInfo | null;
58
60
  accessor localUserRole: FcrUserRole;
59
61
  accessor title: string;
62
+ accessor localMicrophoneMute: boolean;
63
+ private _config;
60
64
  get localVideoState(): boolean | undefined;
61
65
  get localAudioState(): boolean | undefined;
62
66
  get localAudioVolume(): boolean | undefined;
63
- constructor({ roomControl, mediaControl, securityStore, uiEventStore, deviceStore, deviceStreamStore, }: {
64
- roomControl: FcrMainRoomControl;
67
+ constructor({ roomControl, mediaControl, securityStore, uiEventStore, deviceStore, deviceStreamStore, config, }: {
68
+ roomControl: FcrBaseRoomControl;
65
69
  mediaControl: FcrDesktopMediaControl;
66
70
  securityStore: FcrSecurityStore;
67
71
  uiEventStore: FcrUIEventStore;
68
72
  deviceStore: FcrDeviceStore;
69
73
  deviceStreamStore: FcrDeviceStreamStore;
74
+ config: FcrUISceneConfig;
70
75
  });
71
76
  handleChooseScreen: (id: string, type?: AgoraRtcScreenCaptureType) => void;
72
77
  setShareWithAudioState(withAudio: boolean): void;
73
78
  setShareAudioProcessingChannel(currentShareAudioProcessingChannel: any): void;
74
79
  handlerBoardShareStop(): void;
80
+ sendLocalAudioStateEvent(): void;
75
81
  release(): void;
76
82
  handleCheckScreenCapturePermission(): void;
77
83
  handleToSetting(): void;
78
- setShareWithAudio(withAudio: any, confirmAudioShareWhileMicOff?: boolean): void;
79
84
  muteLocalAudio(mute: boolean, confirmAudioShareWhileMicOff?: boolean): Promise<void>;
80
85
  muteLocalVideo(mute: boolean): Promise<void>;
81
- onUiEvent(event: UIAction, params: any): Promise<void>;
82
- handleShareScreenResource(): Promise<void>;
83
- handleStartShare(id?: string, type?: AgoraRtcScreenCaptureType, withAudio?: boolean, audioProcessingChannel?: AudioProcessingChannel): Promise<void>;
84
86
  handleShareStartWithAudio(): void;
85
87
  handleShareStopWithAudio(): void;
86
- handleStopShare(): void;
87
- handleReplaceScreen(id?: string, type?: AgoraRtcScreenCaptureType, withAudio?: boolean, audioProcessingChannel?: AudioProcessingChannel): void;
88
88
  startPreview(dom: HTMLElement): void;
89
89
  setShareControlBarActive(active: boolean): void;
90
90
  setCurrentCameraId(deviceId: string): void;
@@ -97,7 +97,6 @@ export default class ShareScreenStore {
97
97
  setAllowUnmuteSelfVideo(allow: boolean): void;
98
98
  setAllowUnmuteSelfAudio(allow: boolean): void;
99
99
  setLockRoomEnabled(lock: boolean): void;
100
- setWaitingRoomEnabled(allow: boolean): void;
101
100
  openDialog(item: DialogKey): void;
102
101
  closeDialog(item: DialogKey): void;
103
102
  openLiveStreamingDialog(): void;
@@ -107,6 +106,14 @@ export default class ShareScreenStore {
107
106
  openVideoWindowDialog(): void;
108
107
  closeControlBar(): void;
109
108
  closeVideoWindowDialog(): void;
109
+ setShareWithAudio(withAudio: boolean, confirmAudioShareWhileMicOff?: boolean): void;
110
+ private _setWithAudioState;
111
+ handleShareScreenResource(): Promise<void>;
112
+ handleStartShare(id?: string, type?: AgoraRtcScreenCaptureType, withAudio?: boolean, audioProcessingChannel?: AudioProcessingChannel): Promise<void>;
113
+ handleReplaceScreen(id?: string, type?: AgoraRtcScreenCaptureType, withAudio?: boolean, audioProcessingChannel?: AudioProcessingChannel): void;
114
+ handleStopShare(): void;
115
+ private _createScreenStream;
116
+ private _handleWebScreenCaptureStateUpdated;
110
117
  private _handleScreenCaptureStateUpdated;
111
118
  private _updateCameraList;
112
119
  private _updateMicrophoneList;
@@ -117,9 +124,11 @@ export default class ShareScreenStore {
117
124
  private _removeScreenStream;
118
125
  private _syncShareStreamState;
119
126
  private _refreshLocalUser;
127
+ private _onStreamRemoved;
120
128
  private _addEventListeners;
121
129
  private _removeEventListeners;
122
130
  private _addReactions;
131
+ private _onUiEvent;
123
132
  private _removeReactions;
124
133
  private _showToast;
125
134
  private _validateWindow;
@@ -127,6 +136,7 @@ export default class ShareScreenStore {
127
136
  private _validateShareStart;
128
137
  private _hasScreenSharePermission;
129
138
  private _getExcludeWindows;
139
+ private _initToolbar;
130
140
  }
131
141
  export declare const StoreContext: import("react").Context<ShareScreenStore>;
132
142
  export {};