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
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.Members = void 0;
9
9
  require("core-js/modules/es.array.map.js");
10
+ require("core-js/modules/esnext.async-iterator.map.js");
11
+ require("core-js/modules/esnext.iterator.map.js");
10
12
  var _react = require("react");
11
13
  var _mobxReact = require("mobx-react");
12
14
  var _type = require("../type");
@@ -18,8 +20,8 @@ var _memberWindow = require("../../layout/member-window");
18
20
  var _type3 = require("agora-rte-sdk/lib/core/rtc/type");
19
21
  require("./index.css");
20
22
  var _agoraEduCore = require("agora-edu-core");
21
- var _type4 = require("agora-edu-core/lib/type");
22
23
  var _muteAction = require("../../../utilities/mute-action");
24
+ var _env = require("agora-foundation/lib/utilities/env");
23
25
  var _jsxRuntime = require("react/jsx-runtime");
24
26
  var Members = exports.Members = (0, _mobxReact.observer)(function () {
25
27
  var _useContext = (0, _react.useContext)(_context.StoreContext),
@@ -68,8 +70,8 @@ var Members = exports.Members = (0, _mobxReact.observer)(function () {
68
70
  }),
69
71
  ref: ref,
70
72
  children: [foldListRenderData.map(function (windowData, index) {
71
- var muteAudioPermission = hasMutePermission(windowData.isMySelf ? _type4.FcrPrivilegeUserRole.SELF : windowData.ownerRoleType);
72
- var startAudioPermission = hasUnmutePermission(windowData.isMySelf ? _type4.FcrPrivilegeUserRole.SELF : windowData.ownerRoleType);
73
+ var muteAudioPermission = hasMutePermission(windowData.isMySelf ? _agoraEduCore.FcrPrivilegeUserRole.SELF : windowData.ownerRoleType);
74
+ var startAudioPermission = hasUnmutePermission(windowData.isMySelf ? _agoraEduCore.FcrPrivilegeUserRole.SELF : windowData.ownerRoleType);
73
75
  var requestStartAudioPermission = hasRequestStartAudioPermission(windowData.ownerRoleType);
74
76
  var _actionMute = (0, _muteAction.actionMute)(windowData.isMySelf, windowData.hasMicrophoneAudioStream, muteAudioPermission, startAudioPermission, requestStartAudioPermission),
75
77
  isShowActionAudio = _actionMute.isShowActionAudio,
@@ -101,7 +103,8 @@ var Members = exports.Members = (0, _mobxReact.observer)(function () {
101
103
  muteAudio: muteAudio,
102
104
  windowSize: "normal",
103
105
  windowData: windowData,
104
- iconSize: 16
106
+ iconSize: 16,
107
+ showRotation: (0, _env.isElectron)()
105
108
  }),
106
109
  videoRenderMode: _type3.AgoraRtcRenderMode.FIT,
107
110
  videoStreamType: _type3.AgoraRtcVideoStreamType.LOW_STREAM,
@@ -1,4 +1,4 @@
1
- import { FcrUserControl, FcrStreamControl, FcrDesktopMediaControl } from 'agora-edu-core';
1
+ import { FcrUserControl, FcrStreamControl, FcrDesktopMediaControl, FcrPrivilegeUserRole } from 'agora-edu-core';
2
2
  import { FcrUIEventStore } from '../../common/event-store';
3
3
  import { FcrSecurityStore } from '../../common/security-store';
4
4
  import { FcrDeviceStore } from '../../common/device-store';
@@ -6,9 +6,10 @@ import { UIAction } from '../../utilities/constant';
6
6
  import { FcrVideoWindowPreviewType } from './type';
7
7
  import { FcrUIVideoWindowData } from '../layout/type';
8
8
  import { AgoraRtcRenderMode, AgoraRtcVideoStreamType, AgoraRtcScreenCaptureType } from 'agora-rte-sdk/lib/core/rtc/type';
9
- import { FcrPrivilegeUserRole, FcrUserRole, FcrUserUpdatedEvent } from 'agora-edu-core/lib/type';
9
+ import { FcrUserRole } from 'agora-edu-core/lib/type';
10
10
  import { ConnectType, ConnectionTabType } from './type';
11
11
  import { FcrDeviceStreamStore } from '../../common/device-stream-store';
12
+ import { FcrUserUpdatedEvent } from 'agora-edu-core/lib/room-control/user-control/type';
12
13
  export interface VideoWindowStoreParams {
13
14
  uiEventStore: FcrUIEventStore;
14
15
  userControl: FcrUserControl;
@@ -64,9 +65,9 @@ export default class VideoWindowStore {
64
65
  sendParticipantEvent(payload: unknown): void;
65
66
  muteAudio(mute: boolean, userId: string): void;
66
67
  setLocalUserRole(role: FcrUserRole): void;
67
- computedVideoWindowHeight(list: FcrUIVideoWindowData[]): number;
68
+ computedVideoWindowHeight(list: FcrUIVideoWindowData[], previewType: FcrVideoWindowPreviewType): number;
68
69
  sliceFoldList(list: FcrUIVideoWindowData[], previewType: FcrVideoWindowPreviewType): FcrUIVideoWindowData[];
69
- changeVideoWindowBounds(x: number, y: number, width: number, height: number, list: FcrUIVideoWindowData[]): void;
70
+ changeVideoWindowBounds(x: number, y: number, width: number, height: number, list: FcrUIVideoWindowData[], previewType: FcrVideoWindowPreviewType): void;
70
71
  openPrivateChat(userId: string): void;
71
72
  hasMutePermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
72
73
  hasUnmutePermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
@@ -13,6 +13,8 @@ require("core-js/modules/es.number.constructor.js");
13
13
  require("core-js/modules/es.object.create.js");
14
14
  require("core-js/modules/es.object.define-property.js");
15
15
  require("core-js/modules/es.object.get-own-property-descriptor.js");
16
+ require("core-js/modules/esnext.function.metadata.js");
17
+ require("core-js/modules/esnext.symbol.metadata.js");
16
18
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
17
19
  var _typeof = require("@babel/runtime/helpers/typeof");
18
20
  Object.defineProperty(exports, "__esModule", {
@@ -32,6 +34,31 @@ require("core-js/modules/es.object.to-string.js");
32
34
  require("core-js/modules/es.object.values.js");
33
35
  require("core-js/modules/es.string.iterator.js");
34
36
  require("core-js/modules/es.weak-map.js");
37
+ require("core-js/modules/esnext.async-iterator.filter.js");
38
+ require("core-js/modules/esnext.async-iterator.find.js");
39
+ require("core-js/modules/esnext.async-iterator.for-each.js");
40
+ require("core-js/modules/esnext.async-iterator.some.js");
41
+ require("core-js/modules/esnext.iterator.constructor.js");
42
+ require("core-js/modules/esnext.iterator.filter.js");
43
+ require("core-js/modules/esnext.iterator.find.js");
44
+ require("core-js/modules/esnext.iterator.for-each.js");
45
+ require("core-js/modules/esnext.iterator.some.js");
46
+ require("core-js/modules/esnext.map.delete-all.js");
47
+ require("core-js/modules/esnext.map.emplace.js");
48
+ require("core-js/modules/esnext.map.every.js");
49
+ require("core-js/modules/esnext.map.filter.js");
50
+ require("core-js/modules/esnext.map.find.js");
51
+ require("core-js/modules/esnext.map.find-key.js");
52
+ require("core-js/modules/esnext.map.includes.js");
53
+ require("core-js/modules/esnext.map.key-of.js");
54
+ require("core-js/modules/esnext.map.map-keys.js");
55
+ require("core-js/modules/esnext.map.map-values.js");
56
+ require("core-js/modules/esnext.map.merge.js");
57
+ require("core-js/modules/esnext.map.reduce.js");
58
+ require("core-js/modules/esnext.map.some.js");
59
+ require("core-js/modules/esnext.map.update.js");
60
+ require("core-js/modules/esnext.weak-map.delete-all.js");
61
+ require("core-js/modules/esnext.weak-map.emplace.js");
35
62
  require("core-js/modules/web.dom-collections.for-each.js");
36
63
  require("core-js/modules/web.dom-collections.iterator.js");
37
64
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
@@ -40,6 +67,7 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
40
67
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
41
68
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
42
69
  var _mobx = require("mobx");
70
+ var _agoraEduCore = require("agora-edu-core");
43
71
  var _constant = require("../../utilities/constant");
44
72
  var _decorator = require("agora-foundation/lib/decorator");
45
73
  var _type2 = require("./type");
@@ -47,10 +75,12 @@ var _type3 = require("../layout/type");
47
75
  var _type4 = require("agora-rte-sdk/lib/core/rtc/type");
48
76
  var _renderer = require("../../utilities/renderer");
49
77
  var _type5 = require("agora-edu-core/lib/type");
78
+ var _env = require("agora-foundation/lib/utilities/env");
79
+ var _attendee = require("agora-ui-foundation/lib/components/participants/attendee");
50
80
  var _VideoWindowStore;
51
81
  var _initProto, _init_userVolumeMap, _init_speakHover, _init_videoWindowPreviewType, _init_videoWindowCurrentWidth, _init_videoWindowCurrentHeight, _init_foldList, _init_workareaX, _init_workareaY, _init_workareaWidth, _init_workareaHeight, _init_localUserRole, _init__spotlightStreamId, _init_shouldHideNonVideoParticipants, _init_connectType, _init_bounds, _setBoundsDecs, _onAudioVolumeUpdatedDecs, _changeVideoWindowBoundsDecs, _onUserInfoUpdatedDecs, _setVideoWindowPreviewTypeDecs, _closeVideoWindowDecs, _setSpeakHoverDecs, _getAllowedOperationsDecs, _getCurrentDisplayBoundsDecs, _handleStreamsAddedOrUpdatedDecs, _ref;
52
- function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
53
- function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
82
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
83
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
54
84
  function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
55
85
  function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
56
86
  function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
@@ -117,7 +147,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
117
147
  onEvent: this.onEvent
118
148
  });
119
149
  this._streamControl.addObserver({
120
- onAudioVolumeUpdated: this._onAudioVolumeUpdated,
150
+ onStreamVolumeIndicationUpdated: this._onAudioVolumeUpdated,
121
151
  onStreamsAdded: this._handleStreamsAddedOrUpdated,
122
152
  onStreamsUpdated: this._handleStreamsAddedOrUpdated,
123
153
  onStreamsRemoved: this._handleStreamsAddedOrUpdated
@@ -358,7 +388,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
358
388
  key: "muteAudio",
359
389
  value: function muteAudio(mute, userId) {
360
390
  this._uiEventStore.sendEvent(_constant.UIAction.PARTICIPANT_ACTION, {
361
- action: mute ? _constant.ParticipantType.MUTE_AUDIO : _constant.ParticipantType.UNMUTE_AUDIO,
391
+ action: mute ? _attendee.ParticipantActionType.MUTE_AUDIO : _attendee.ParticipantActionType.UNMUTE_AUDIO,
362
392
  userId: userId
363
393
  });
364
394
  }
@@ -369,13 +399,13 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
369
399
  }
370
400
  }, {
371
401
  key: "computedVideoWindowHeight",
372
- value: function computedVideoWindowHeight(list) {
402
+ value: function computedVideoWindowHeight(list, previewType) {
373
403
  var _height = _type2.DefaultVideoWindowHeight;
374
404
  var listCount = list.length > 4 ? 4 : list.length;
375
- if (this.videoWindowPreviewType !== _type2.FcrVideoWindowPreviewType.MIX) {
376
- if (this.videoWindowPreviewType === _type2.FcrVideoWindowPreviewType.SMALL) {
405
+ if (previewType !== _type2.FcrVideoWindowPreviewType.MIX) {
406
+ if (previewType === _type2.FcrVideoWindowPreviewType.SMALL) {
377
407
  _height = _type2.DefaultVideoWindowHeight + _type2.VideoWindowItemHeight;
378
- } else if (this.videoWindowPreviewType === _type2.FcrVideoWindowPreviewType.MIDDLE) {
408
+ } else if (previewType === _type2.FcrVideoWindowPreviewType.MIDDLE) {
379
409
  _height = _type2.DefaultVideoWindowHeight + listCount * _type2.VideoWindowItemHeight;
380
410
  }
381
411
  }
@@ -388,9 +418,9 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
388
418
  }
389
419
  }, {
390
420
  key: "changeVideoWindowBounds",
391
- value: function changeVideoWindowBounds(x, y, width, height, list) {
421
+ value: function changeVideoWindowBounds(x, y, width, height, list, previewType) {
392
422
  this._uiEventStore.sendEvent(_constant.UIAction.VIDEO_WINDOW_BOUNDS, {
393
- videoWindowHeight: this.computedVideoWindowHeight(list),
423
+ videoWindowHeight: this.computedVideoWindowHeight(list, previewType),
394
424
  videoWindowPreviewType: this.videoWindowPreviewType,
395
425
  workareaX: x,
396
426
  workareaY: y,
@@ -436,11 +466,13 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
436
466
  }, {
437
467
  key: "setVideoWindowPreviewType",
438
468
  value: function setVideoWindowPreviewType(type) {
469
+ var _list = this.filterFoldList(this.foldList, this.shouldHideNonVideoParticipants);
439
470
  this.videoWindowPreviewType = type;
440
- this.changeVideoWindowBounds(this.workareaX, this.workareaY, this.workareaWidth, this.workareaHeight, this.filterFoldList(this.foldList, this.shouldHideNonVideoParticipants));
471
+ this.changeVideoWindowBounds(this.workareaX, this.workareaY, this.workareaWidth, this.workareaHeight, _list, type);
472
+ this.setBounds(_type2.DefaultVideoWindowWidth, this.computedVideoWindowHeight(_list, type));
441
473
  this._uiEventStore.sendEvent(_constant.UIAction.VIDEO_WINDOW_RESIZE, {
442
474
  width: _type2.DefaultVideoWindowWidth,
443
- height: this.computedVideoWindowHeight(this.filterFoldList(this.foldList, this.shouldHideNonVideoParticipants))
475
+ height: this.computedVideoWindowHeight(_list, type)
444
476
  });
445
477
  }
446
478
  }, {
@@ -489,7 +521,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
489
521
  }, {
490
522
  key: "getCurrentDisplayBounds",
491
523
  value: function () {
492
- var _getCurrentDisplayBounds = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(id, type) {
524
+ var _getCurrentDisplayBounds = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(id, type) {
493
525
  var allApplicationWindows, filterList, _getCurrentWorkArea, x, y, width, height;
494
526
  return _regenerator["default"].wrap(function _callee$(_context) {
495
527
  while (1) switch (_context.prev = _context.next) {
@@ -504,7 +536,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
504
536
  this.workareaY = y;
505
537
  this.workareaWidth = width;
506
538
  this.workareaHeight = height;
507
- this.changeVideoWindowBounds(x, y, width, height, filterList);
539
+ this.changeVideoWindowBounds(x, y, width, height, filterList, this.videoWindowPreviewType);
508
540
  case 10:
509
541
  case "end":
510
542
  return _context.stop();
@@ -524,7 +556,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
524
556
  var streams = this._streamControl.getStreamsByUserId(userId);
525
557
  var hasPstnStream = streams.some(function (_ref2) {
526
558
  var connectorType = _ref2.connectorType;
527
- return connectorType === _type5.FcrRoomConnectorType.PSTN;
559
+ return connectorType === _agoraEduCore.FcrRoomConnectorType.PSTN;
528
560
  });
529
561
  this.connectType = hasPstnStream ? _type2.ConnectType.PHONE : _type2.ConnectType.COMPUTER;
530
562
  }
@@ -547,7 +579,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
547
579
  var _ref3 = payload,
548
580
  id = _ref3.id,
549
581
  type = _ref3.type;
550
- this.getCurrentDisplayBounds(id, type);
582
+ (0, _env.isElectron)() && this.getCurrentDisplayBounds(id, type);
551
583
  }
552
584
  if (action === _constant.UIAction.VIDEO_WINDOW_RESIZE) {
553
585
  var _ref4 = payload,
@@ -563,7 +595,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
563
595
  }
564
596
  if (action === _constant.UIAction.FOLD_LIST_CHANGED) {
565
597
  this.foldList = payload || [];
566
- this.changeVideoWindowBounds(this.workareaX, this.workareaY, this.workareaWidth, this.workareaHeight, this.filterFoldList(payload, this.shouldHideNonVideoParticipants));
598
+ this.changeVideoWindowBounds(this.workareaX, this.workareaY, this.workareaWidth, this.workareaHeight, this.filterFoldList(payload, this.shouldHideNonVideoParticipants), this.videoWindowPreviewType);
567
599
  }
568
600
  if (action === _constant.UIAction.SPOTLIGHT_STREAM_CHANGED) {
569
601
  var _ref6 = payload,
@@ -5,6 +5,8 @@ require("core-js/modules/es.object.define-property.js");
5
5
  require("core-js/modules/es.object.get-own-property-descriptor.js");
6
6
  require("core-js/modules/es.string.iterator.js");
7
7
  require("core-js/modules/es.weak-map.js");
8
+ require("core-js/modules/esnext.weak-map.delete-all.js");
9
+ require("core-js/modules/esnext.weak-map.emplace.js");
8
10
  require("core-js/modules/web.dom-collections.iterator.js");
9
11
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
10
12
  var _typeof = require("@babel/runtime/helpers/typeof");
@@ -15,6 +17,11 @@ exports["default"] = void 0;
15
17
  require("core-js/modules/es.array.filter.js");
16
18
  require("core-js/modules/es.array.map.js");
17
19
  require("core-js/modules/es.object.to-string.js");
20
+ require("core-js/modules/esnext.async-iterator.filter.js");
21
+ require("core-js/modules/esnext.async-iterator.map.js");
22
+ require("core-js/modules/esnext.iterator.constructor.js");
23
+ require("core-js/modules/esnext.iterator.filter.js");
24
+ require("core-js/modules/esnext.iterator.map.js");
18
25
  var _react = _interopRequireWildcard(require("react"));
19
26
  var _mobxReact = require("mobx-react");
20
27
  require("./index.css");
@@ -6,6 +6,8 @@ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
6
  require("core-js/modules/es.object.to-string.js");
7
7
  require("core-js/modules/es.string.iterator.js");
8
8
  require("core-js/modules/es.weak-map.js");
9
+ require("core-js/modules/esnext.weak-map.delete-all.js");
10
+ require("core-js/modules/esnext.weak-map.emplace.js");
9
11
  require("core-js/modules/web.dom-collections.iterator.js");
10
12
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
11
13
  var _typeof = require("@babel/runtime/helpers/typeof");
@@ -0,0 +1,2 @@
1
+ import LayoutStore from './store';
2
+ export declare const StoreContext: import("react").Context<LayoutStore>;
@@ -0,0 +1,9 @@
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.StoreContext = void 0;
8
+ var _react = require("react");
9
+ var StoreContext = exports.StoreContext = /*#__PURE__*/(0, _react.createContext)(null);
@@ -0,0 +1,71 @@
1
+ .waiting-room-layout {
2
+ display: flex;
3
+ flex-direction: column;
4
+ justify-content: center;
5
+ align-items: center;
6
+ }
7
+
8
+ .waiting-room-module {
9
+ width: 100%;
10
+ background-color: var(--fcr_web_ui_scene_fill2);
11
+ }
12
+
13
+ .waiting-room-bottom {
14
+ position: absolute;
15
+ bottom: 0;
16
+ }
17
+
18
+ .waiting-room-title {
19
+ margin-top: 50px;
20
+ margin-bottom: 20px;
21
+ font-weight: 700;
22
+ font-size: 24px;
23
+ color: var(--fcr_ui_scene_icontext1);
24
+ text-align: center;
25
+ }
26
+
27
+ .waiting-room-desc {
28
+ margin-bottom: 20px;
29
+ font-weight: 400;
30
+ font-size: 15px;
31
+ color: var(--fcr_ui_scene_icontext1);
32
+ text-align: center;
33
+ line-height: 22.5px;
34
+ width: 570px;
35
+ }
36
+
37
+ .waiting-room-content {
38
+ display: flex;
39
+ height: calc(100vh - 275px);
40
+ margin: 0 auto;
41
+ border-radius: 10px;
42
+ box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
43
+ align-items: center;
44
+ width: 815px;
45
+ }
46
+
47
+ .waiting-room-video-content {
48
+ position: relative;
49
+ display: flex;
50
+ width: 452px;
51
+ height: 95%;
52
+ margin: 10px;
53
+ }
54
+
55
+ .waiting-room-chat-content {
56
+ height: 95%;
57
+ margin: 10px;
58
+ }
59
+
60
+ .waiting-room-attendee-name {
61
+ color: var(--fcr_ui_scene_icontext1);
62
+ font-weight: 400;
63
+ font-size: 12px;
64
+ position: absolute;
65
+ left: 10px;
66
+ bottom: 10px;
67
+ background: white;
68
+ border-radius: 50px;
69
+ padding: 5px 10px;
70
+ z-index: 100;
71
+ }
@@ -0,0 +1,8 @@
1
+ import { UIModule } from '../../base';
2
+ import { LayoutStoreParams, FcrLayoutSlots } from './store';
3
+ export declare class WaitingRoomLayout extends UIModule {
4
+ private _store;
5
+ constructor(args: LayoutStoreParams);
6
+ getComponent(slots?: Partial<FcrLayoutSlots>): import("react/jsx-runtime").JSX.Element;
7
+ onUnload(): void;
8
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ require("core-js/modules/es.reflect.construct.js");
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
9
+ exports.WaitingRoomLayout = void 0;
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+ var _base = require("../../base");
16
+ var _context = require("./context");
17
+ var _store = _interopRequireDefault(require("./store"));
18
+ var _view = _interopRequireDefault(require("./view"));
19
+ var _jsxRuntime = require("react/jsx-runtime");
20
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
21
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
22
+ var WaitingRoomLayout = exports.WaitingRoomLayout = /*#__PURE__*/function (_UIModule) {
23
+ function WaitingRoomLayout(args) {
24
+ var _this;
25
+ (0, _classCallCheck2["default"])(this, WaitingRoomLayout);
26
+ _this = _callSuper(this, WaitingRoomLayout);
27
+ _this._store = new _store["default"](args);
28
+ return _this;
29
+ }
30
+ (0, _inherits2["default"])(WaitingRoomLayout, _UIModule);
31
+ return (0, _createClass2["default"])(WaitingRoomLayout, [{
32
+ key: "getComponent",
33
+ value: function getComponent() {
34
+ var slots = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
35
+ this._store.updateSlots(slots);
36
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_context.StoreContext.Provider, {
37
+ value: this._store,
38
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_view["default"], {})
39
+ });
40
+ }
41
+ }, {
42
+ key: "onUnload",
43
+ value: function onUnload() {
44
+ this._store.release();
45
+ }
46
+ }]);
47
+ }(_base.UIModule);
@@ -0,0 +1,30 @@
1
+ import { FcrDeviceStore } from '../../common/device-store';
2
+ import { FcrUserControl } from 'agora-edu-core';
3
+ export interface FcrLayoutSlots {
4
+ chat: React.ReactNode;
5
+ stateBar: React.ReactNode;
6
+ actionBar: React.ReactNode;
7
+ }
8
+ export interface LayoutStoreParams {
9
+ deviceStore: FcrDeviceStore;
10
+ userControl: FcrUserControl;
11
+ }
12
+ export default class LayoutStore implements FcrLayoutSlots {
13
+ private _deviceStore;
14
+ private _userControl;
15
+ accessor participant: React.ReactNode;
16
+ accessor chat: React.ReactNode;
17
+ accessor stateBar: React.ReactNode;
18
+ accessor actionBar: React.ReactNode;
19
+ accessor layers: React.ReactNode;
20
+ accessor whiteboard: React.ReactNode;
21
+ constructor(params: LayoutStoreParams);
22
+ get localUser(): import("agora-edu-core/lib/type").FcrUserInfo;
23
+ get cameraId(): string;
24
+ get cameraEnabled(): boolean;
25
+ startPlayLocalVideo(view: HTMLElement, isMirror?: boolean): void;
26
+ stopPlayLocalVideo(view: HTMLElement): void;
27
+ setCameraEnabled(enable: boolean): void;
28
+ updateSlots(slots: Partial<FcrLayoutSlots>): void;
29
+ release(): void;
30
+ }
@@ -0,0 +1,189 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.symbol.description.js");
5
+ require("core-js/modules/es.symbol.to-primitive.js");
6
+ require("core-js/modules/es.error.cause.js");
7
+ require("core-js/modules/es.error.to-string.js");
8
+ require("core-js/modules/es.array.is-array.js");
9
+ require("core-js/modules/es.array.push.js");
10
+ require("core-js/modules/es.date.to-primitive.js");
11
+ require("core-js/modules/es.function.bind.js");
12
+ require("core-js/modules/es.function.name.js");
13
+ require("core-js/modules/es.map.js");
14
+ require("core-js/modules/es.number.constructor.js");
15
+ require("core-js/modules/es.object.create.js");
16
+ require("core-js/modules/es.object.define-property.js");
17
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
18
+ require("core-js/modules/esnext.function.metadata.js");
19
+ require("core-js/modules/esnext.map.delete-all.js");
20
+ require("core-js/modules/esnext.map.emplace.js");
21
+ require("core-js/modules/esnext.map.every.js");
22
+ require("core-js/modules/esnext.map.filter.js");
23
+ require("core-js/modules/esnext.map.find.js");
24
+ require("core-js/modules/esnext.map.find-key.js");
25
+ require("core-js/modules/esnext.map.includes.js");
26
+ require("core-js/modules/esnext.map.key-of.js");
27
+ require("core-js/modules/esnext.map.map-keys.js");
28
+ require("core-js/modules/esnext.map.map-values.js");
29
+ require("core-js/modules/esnext.map.merge.js");
30
+ require("core-js/modules/esnext.map.reduce.js");
31
+ require("core-js/modules/esnext.map.some.js");
32
+ require("core-js/modules/esnext.map.update.js");
33
+ require("core-js/modules/esnext.symbol.metadata.js");
34
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
35
+ var _typeof = require("@babel/runtime/helpers/typeof");
36
+ Object.defineProperty(exports, "__esModule", {
37
+ value: true
38
+ });
39
+ exports["default"] = void 0;
40
+ require("core-js/modules/es.array.iterator.js");
41
+ require("core-js/modules/es.object.to-string.js");
42
+ require("core-js/modules/es.string.iterator.js");
43
+ require("core-js/modules/es.weak-map.js");
44
+ require("core-js/modules/esnext.weak-map.delete-all.js");
45
+ require("core-js/modules/esnext.weak-map.emplace.js");
46
+ require("core-js/modules/web.dom-collections.iterator.js");
47
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
48
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
49
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
50
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
51
+ var _mobx = require("mobx");
52
+ var _LayoutStore;
53
+ var _initProto, _participantDecs, _init_participant, _chatDecs, _init_chat, _stateBarDecs, _init_stateBar, _actionBarDecs, _init_actionBar, _layersDecs, _init_layers, _whiteboardDecs, _init_whiteboard, _startPlayLocalVideoDecs, _stopPlayLocalVideoDecs, _setCameraEnabledDecs, _updateSlotsDecs, _ref;
54
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
55
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
56
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
57
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
58
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
59
+ function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function set(e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) { return e[n]; }, (o < 2 || 4 === o) && (F = function F(e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function s(t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
60
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
61
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
62
+ function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
63
+ function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
64
+ var _A = /*#__PURE__*/new WeakMap();
65
+ var _B = /*#__PURE__*/new WeakMap();
66
+ var _C = /*#__PURE__*/new WeakMap();
67
+ var _D = /*#__PURE__*/new WeakMap();
68
+ var _E = /*#__PURE__*/new WeakMap();
69
+ var _F = /*#__PURE__*/new WeakMap();
70
+ _ref = (_participantDecs = [_mobx.observable, _mobx.observable.ref], _chatDecs = [_mobx.observable, _mobx.observable.ref], _stateBarDecs = [_mobx.observable, _mobx.observable.ref], _actionBarDecs = [_mobx.observable, _mobx.observable.ref], _layersDecs = [_mobx.observable, _mobx.observable.ref], _whiteboardDecs = [_mobx.observable, _mobx.observable.ref], _startPlayLocalVideoDecs = [_mobx.action, _mobx.action.bound], _stopPlayLocalVideoDecs = [_mobx.action, _mobx.action.bound], _setCameraEnabledDecs = [_mobx.action, _mobx.action.bound], _updateSlotsDecs = [_mobx.action, _mobx.action.bound], "_deviceStore");
71
+ var LayoutStore = exports["default"] = /*#__PURE__*/function () {
72
+ function LayoutStore(params) {
73
+ (0, _classCallCheck2["default"])(this, LayoutStore);
74
+ (0, _defineProperty2["default"])(this, _ref, void _initProto(this));
75
+ // Slots
76
+ _classPrivateFieldInitSpec(this, _A, _init_participant(this, null));
77
+ _classPrivateFieldInitSpec(this, _B, _init_chat(this, null));
78
+ _classPrivateFieldInitSpec(this, _C, _init_stateBar(this, null));
79
+ _classPrivateFieldInitSpec(this, _D, _init_actionBar(this, null));
80
+ _classPrivateFieldInitSpec(this, _E, _init_layers(this, null));
81
+ _classPrivateFieldInitSpec(this, _F, _init_whiteboard(this, null));
82
+ this._deviceStore = params.deviceStore;
83
+ this._userControl = params.userControl;
84
+ }
85
+ return (0, _createClass2["default"])(LayoutStore, [{
86
+ key: "participant",
87
+ get: function get() {
88
+ return _classPrivateFieldGet(_A, this);
89
+ },
90
+ set: function set(v) {
91
+ _classPrivateFieldSet(_A, this, v);
92
+ }
93
+ }, {
94
+ key: "chat",
95
+ get: function get() {
96
+ return _classPrivateFieldGet(_B, this);
97
+ },
98
+ set: function set(v) {
99
+ _classPrivateFieldSet(_B, this, v);
100
+ }
101
+ }, {
102
+ key: "stateBar",
103
+ get: function get() {
104
+ return _classPrivateFieldGet(_C, this);
105
+ },
106
+ set: function set(v) {
107
+ _classPrivateFieldSet(_C, this, v);
108
+ }
109
+ }, {
110
+ key: "actionBar",
111
+ get: function get() {
112
+ return _classPrivateFieldGet(_D, this);
113
+ },
114
+ set: function set(v) {
115
+ _classPrivateFieldSet(_D, this, v);
116
+ }
117
+ }, {
118
+ key: "layers",
119
+ get: function get() {
120
+ return _classPrivateFieldGet(_E, this);
121
+ },
122
+ set: function set(v) {
123
+ _classPrivateFieldSet(_E, this, v);
124
+ }
125
+ }, {
126
+ key: "whiteboard",
127
+ get: function get() {
128
+ return _classPrivateFieldGet(_F, this);
129
+ },
130
+ set: function set(v) {
131
+ _classPrivateFieldSet(_F, this, v);
132
+ }
133
+ }, {
134
+ key: "localUser",
135
+ get: function get() {
136
+ return this._userControl.getLocalUser();
137
+ }
138
+ }, {
139
+ key: "cameraId",
140
+ get: function get() {
141
+ return this._deviceStore.cameraId;
142
+ }
143
+ }, {
144
+ key: "cameraEnabled",
145
+ get: function get() {
146
+ return this._deviceStore.cameraEnabled;
147
+ }
148
+ }, {
149
+ key: "startPlayLocalVideo",
150
+ value: function startPlayLocalVideo(view, isMirror) {
151
+ return this._deviceStore.startPlayLocalVideo(view, isMirror);
152
+ }
153
+ }, {
154
+ key: "stopPlayLocalVideo",
155
+ value: function stopPlayLocalVideo(view) {
156
+ return this._deviceStore.stopPlayLocalVideo(view);
157
+ }
158
+ }, {
159
+ key: "setCameraEnabled",
160
+ value: function setCameraEnabled(enable) {
161
+ this._deviceStore.handleRealCameraEnabledChanged(enable);
162
+ this._deviceStore.cameraEnabled = enable;
163
+ }
164
+ }, {
165
+ key: "updateSlots",
166
+ value: function updateSlots(slots) {
167
+ for (var key in slots) {
168
+ var slot = slots[key];
169
+ if (key in this && slot !== undefined) {
170
+ this[key] = slot;
171
+ }
172
+ }
173
+ }
174
+ }, {
175
+ key: "release",
176
+ value: function release() {
177
+ // this._chatRoomControl.removeObserver(this._chatRoomObserver);
178
+ }
179
+ }]);
180
+ }();
181
+ _LayoutStore = LayoutStore;
182
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_LayoutStore, [[_participantDecs, 17, "participant"], [_chatDecs, 17, "chat"], [_stateBarDecs, 17, "stateBar"], [_actionBarDecs, 17, "actionBar"], [_layersDecs, 17, "layers"], [_whiteboardDecs, 17, "whiteboard"], [_startPlayLocalVideoDecs, 18, "startPlayLocalVideo"], [_stopPlayLocalVideoDecs, 18, "stopPlayLocalVideo"], [_setCameraEnabledDecs, 18, "setCameraEnabled"], [_updateSlotsDecs, 18, "updateSlots"]], []).e, 7);
183
+ _init_participant = _applyDecs$e[0];
184
+ _init_chat = _applyDecs$e[1];
185
+ _init_stateBar = _applyDecs$e[2];
186
+ _init_actionBar = _applyDecs$e[3];
187
+ _init_layers = _applyDecs$e[4];
188
+ _init_whiteboard = _applyDecs$e[5];
189
+ _initProto = _applyDecs$e[6];
File without changes
@@ -0,0 +1 @@
1
+ "use strict";