fcr-ui-scene 3.1.0 → 3.2.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 (364) hide show
  1. package/dist/132.js +2 -0
  2. package/dist/132.js.LICENSE.txt +311 -0
  3. package/dist/651.js +2 -0
  4. package/dist/651.js.LICENSE.txt +1 -0
  5. package/dist/73.js +1 -0
  6. package/dist/index.html +13 -0
  7. package/dist/main.da7c203ab32d15742cfe.css +11760 -0
  8. package/dist/main.js +2 -0
  9. package/dist/main.js.LICENSE.txt +254 -0
  10. package/dist/worker-entry.worker.js.LICENSE.txt +13 -0
  11. package/lib/base.js +16 -0
  12. package/lib/common/device-store.d.ts +3 -4
  13. package/lib/common/device-store.js +167 -83
  14. package/lib/common/device-stream-store.d.ts +3 -2
  15. package/lib/common/device-stream-store.js +94 -72
  16. package/lib/common/event-store.d.ts +3 -1
  17. package/lib/common/event-store.js +5 -0
  18. package/lib/common/security-store.d.ts +6 -16
  19. package/lib/common/security-store.js +136 -101
  20. package/lib/electron/app.d.ts +1 -0
  21. package/lib/electron/app.js +148 -0
  22. package/lib/electron/default-options.d.ts +2 -0
  23. package/lib/electron/default-options.js +25 -0
  24. package/lib/electron/env.d.ts +5 -0
  25. package/lib/electron/env.js +13 -0
  26. package/lib/electron/index.d.ts +2 -0
  27. package/lib/electron/index.js +20 -0
  28. package/lib/electron/injections.d.ts +44 -0
  29. package/lib/electron/injections.js +705 -0
  30. package/lib/electron/logger.d.ts +6 -0
  31. package/lib/electron/logger.js +66 -0
  32. package/lib/electron/main.d.ts +2 -0
  33. package/lib/electron/main.js +79 -0
  34. package/lib/electron/plugins/screenshot.d.ts +2 -0
  35. package/lib/electron/plugins/screenshot.js +49 -0
  36. package/lib/electron/preload.js +36 -0
  37. package/lib/electron/tools.d.ts +5 -0
  38. package/lib/electron/tools.js +66 -0
  39. package/lib/electron/window.d.ts +12 -0
  40. package/lib/electron/window.js +124 -0
  41. package/lib/fragments/control-bar/context.d.ts +0 -1
  42. package/lib/fragments/control-bar/control-bar-store.js +23 -2
  43. package/lib/fragments/control-bar/device/index.js +7 -0
  44. package/lib/fragments/control-bar/index.js +11 -1
  45. package/lib/fragments/control-bar/more-actions/index.js +5 -0
  46. package/lib/fragments/control-bar/security-content/index.js +3 -0
  47. package/lib/fragments/live-streaming/context.d.ts +0 -1
  48. package/lib/fragments/live-streaming/store.js +27 -17
  49. package/lib/fragments/share-screen-selection/context.d.ts +0 -1
  50. package/lib/fragments/share-screen-selection/selection-store.js +34 -33
  51. package/lib/fragments/share-screen-selection/view.js +7 -0
  52. package/lib/fragments/toolbar/components/color-picker/components/color.js +2 -0
  53. package/lib/fragments/toolbar/components/color-picker/components/panel.js +4 -0
  54. package/lib/fragments/toolbar/components/color-picker/components/picker.js +2 -0
  55. package/lib/fragments/toolbar/components/color-picker/index.js +5 -1
  56. package/lib/fragments/toolbar/components/color-picker.js +3 -1
  57. package/lib/fragments/toolbar/components/eraser-picker.js +4 -13
  58. package/lib/fragments/toolbar/components/extension-toolbar-item.js +5 -0
  59. package/lib/fragments/toolbar/components/extra-tool-picker.js +4 -0
  60. package/lib/fragments/toolbar/components/pen-picker.js +2 -0
  61. package/lib/fragments/toolbar/components/screen-capture-picker.js +2 -0
  62. package/lib/fragments/toolbar/components/shape-picker.js +2 -0
  63. package/lib/fragments/toolbar/hooks.d.ts +1 -1
  64. package/lib/fragments/toolbar/hooks.js +13 -8
  65. package/lib/fragments/toolbar/store.d.ts +4 -4
  66. package/lib/fragments/toolbar/store.js +20 -2
  67. package/lib/fragments/toolbar/view.js +2 -0
  68. package/lib/global.d.ts +1 -0
  69. package/lib/hooks/meeting-time.d.ts +2 -2
  70. package/lib/modules/action-bar/action-bar-collapes-items.js +9 -0
  71. package/lib/modules/action-bar/chat/index.js +1 -1
  72. package/lib/modules/action-bar/context.d.ts +0 -1
  73. package/lib/modules/action-bar/device/index.d.ts +2 -2
  74. package/lib/modules/action-bar/device/index.js +2 -0
  75. package/lib/modules/action-bar/index.css +4 -0
  76. package/lib/modules/action-bar/index.d.ts +2 -2
  77. package/lib/modules/action-bar/index.dev.js +7 -6
  78. package/lib/modules/action-bar/item-placement.d.ts +1 -2
  79. package/lib/modules/action-bar/item.js +5 -0
  80. package/lib/modules/action-bar/leave/assign-host.js +5 -3
  81. package/lib/modules/action-bar/leave/index.js +6 -1
  82. package/lib/modules/action-bar/more/poppover-content.js +10 -0
  83. package/lib/modules/action-bar/screen-share/submenu.js +1 -0
  84. package/lib/modules/action-bar/security/drop-menu.js +34 -1
  85. package/lib/modules/action-bar/security/index.js +1 -1
  86. package/lib/modules/action-bar/settings/index.js +1 -1
  87. package/lib/modules/action-bar/store.d.ts +9 -17
  88. package/lib/modules/action-bar/store.js +67 -49
  89. package/lib/modules/audio-stream/index.js +12 -6
  90. package/lib/modules/chat/chat-bar/index.js +7 -0
  91. package/lib/modules/chat/chat-select/index.css +5 -0
  92. package/lib/modules/chat/chat-select/index.js +29 -3
  93. package/lib/modules/chat/chat.d.ts +1 -1
  94. package/lib/modules/chat/chat.js +28 -4
  95. package/lib/modules/chat/contex.d.ts +0 -1
  96. package/lib/modules/chat/index.d.ts +3 -3
  97. package/lib/modules/chat/index.dev.js +3 -3
  98. package/lib/modules/chat/index.js +19 -3
  99. package/lib/modules/chat/message-list.js +24 -3
  100. package/lib/modules/chat/store.d.ts +3 -3
  101. package/lib/modules/chat/store.js +45 -79
  102. package/lib/modules/chat/util.js +1 -1
  103. package/lib/modules/connection-gateway/components/phone/components/callinfo/index.js +2 -0
  104. package/lib/modules/connection-gateway/components/phone/index.js +2 -0
  105. package/lib/modules/connection-gateway/index.d.ts +2 -2
  106. package/lib/modules/connection-gateway/index.js +2 -0
  107. package/lib/modules/connection-gateway/store.d.ts +1 -2
  108. package/lib/modules/connection-gateway/store.js +41 -14
  109. package/lib/modules/device-pretest/audio-preview/microphone-detection.d.ts +1 -0
  110. package/lib/modules/device-pretest/audio-preview/microphone-detection.js +3 -2
  111. package/lib/modules/device-pretest/context.d.ts +0 -1
  112. package/lib/modules/device-pretest/index.js +2 -1
  113. package/lib/modules/device-pretest/settings/beauty.js +2 -0
  114. package/lib/modules/device-pretest/settings/video-settings-basic.js +1 -0
  115. package/lib/modules/device-pretest/settings/virtual-background-setting.js +2 -0
  116. package/lib/modules/device-pretest/store.js +28 -9
  117. package/lib/modules/dialog/components/chat/electron.js +1 -1
  118. package/lib/modules/dialog/components/chat/index.js +1 -1
  119. package/lib/modules/dialog/components/confirm/electron.js +2 -2
  120. package/lib/modules/dialog/components/confirm/index.js +16 -2
  121. package/lib/modules/dialog/components/connection-gateway/electron.js +1 -1
  122. package/lib/modules/dialog/components/device-setting/electron.d.ts +2 -0
  123. package/lib/modules/dialog/components/device-setting/electron.js +72 -0
  124. package/lib/modules/dialog/components/device-setting/index.css +27 -0
  125. package/lib/modules/dialog/components/device-setting/index.d.ts +4 -0
  126. package/lib/modules/dialog/components/device-setting/index.js +60 -0
  127. package/lib/modules/dialog/components/participant/electron.js +6 -1
  128. package/lib/modules/dialog/components/share-screen-selection/index.js +1 -1
  129. package/lib/modules/dialog/context.d.ts +0 -1
  130. package/lib/modules/dialog/dialogs.d.ts +0 -2
  131. package/lib/modules/dialog/dialogs.js +46 -91
  132. package/lib/modules/dialog/index.css +5 -6
  133. package/lib/modules/dialog/index.d.ts +1 -1
  134. package/lib/modules/dialog/index.js +17 -0
  135. package/lib/modules/dialog/store.d.ts +2 -2
  136. package/lib/modules/dialog/store.js +36 -7
  137. package/lib/modules/dialog/view.js +2 -0
  138. package/lib/modules/event-toast/context.d.ts +0 -1
  139. package/lib/modules/event-toast/store.js +16 -0
  140. package/lib/modules/invite/context.d.ts +0 -1
  141. package/lib/modules/invite/index.d.ts +2 -2
  142. package/lib/modules/invite/pstn-invite.js +3 -1
  143. package/lib/modules/invite/store.d.ts +2 -2
  144. package/lib/modules/invite/store.js +27 -7
  145. package/lib/modules/invite/voip-invite.js +1 -1
  146. package/lib/modules/layout/components/Aside.js +4 -1
  147. package/lib/modules/layout/components/Carousel.js +6 -5
  148. package/lib/modules/layout/components/Gallery.js +9 -8
  149. package/lib/modules/layout/components/index.css +11 -1
  150. package/lib/modules/layout/components/index.js +3 -0
  151. package/lib/modules/layout/context.d.ts +0 -1
  152. package/lib/modules/layout/index.dev.js +11 -11
  153. package/lib/modules/layout/index.js +0 -6
  154. package/lib/modules/layout/member-window/index.css +5 -5
  155. package/lib/modules/layout/member-window/index.d.ts +7 -6
  156. package/lib/modules/layout/member-window/index.js +50 -10
  157. package/lib/modules/layout/store.d.ts +44 -49
  158. package/lib/modules/layout/store.js +406 -338
  159. package/lib/modules/layout/type.d.ts +2 -1
  160. package/lib/modules/layout/video-window-datasource.d.ts +14 -8
  161. package/lib/modules/layout/video-window-datasource.js +129 -78
  162. package/lib/modules/live-streaming/context.d.ts +0 -1
  163. package/lib/modules/live-streaming/index.d.ts +2 -2
  164. package/lib/modules/live-streaming/index.dev.js +4 -3
  165. package/lib/modules/live-streaming/store.d.ts +2 -2
  166. package/lib/modules/live-streaming/store.js +32 -11
  167. package/lib/modules/participant/attendee/index.js +10 -0
  168. package/lib/modules/participant/attendee/participants-more-action.js +5 -2
  169. package/lib/modules/participant/context.d.ts +0 -1
  170. package/lib/modules/participant/index.d.ts +3 -3
  171. package/lib/modules/participant/index.dev.js +13 -11
  172. package/lib/modules/participant/member-list-data-source.d.ts +3 -3
  173. package/lib/modules/participant/member-list-data-source.js +29 -3
  174. package/lib/modules/participant/room-control-drop-menu/index.js +35 -1
  175. package/lib/modules/participant/store.d.ts +31 -31
  176. package/lib/modules/participant/store.js +203 -157
  177. package/lib/modules/participant/view.d.ts +6 -6
  178. package/lib/modules/participant/view.js +5 -0
  179. package/lib/modules/setting/audio-settings/audio-settings.js +16 -12
  180. package/lib/modules/setting/audio-settings/index.css +2 -2
  181. package/lib/modules/setting/context.d.ts +0 -1
  182. package/lib/modules/setting/general-settings/general-settings.js +2 -1
  183. package/lib/modules/setting/general-settings/index.css +2 -2
  184. package/lib/modules/setting/index.d.ts +2 -2
  185. package/lib/modules/setting/index.dev.js +13 -11
  186. package/lib/modules/setting/index.js +16 -0
  187. package/lib/modules/setting/minutes-settings/index.css +65 -0
  188. package/lib/modules/setting/minutes-settings/minutes-settings.d.ts +4 -0
  189. package/lib/modules/setting/minutes-settings/minutes-settings.js +159 -0
  190. package/lib/modules/setting/state/index.css +0 -4
  191. package/lib/modules/setting/state/index.js +11 -1
  192. package/lib/modules/setting/storage-settings/storage-settings.js +1 -1
  193. package/lib/modules/setting/store.d.ts +6 -4
  194. package/lib/modules/setting/store.js +68 -40
  195. package/lib/modules/setting/translate-settings/index.css +45 -0
  196. package/lib/modules/setting/translate-settings/language-select.d.ts +12 -0
  197. package/lib/modules/{device-settings/video-settings/camera-select.js → setting/translate-settings/language-select.js} +16 -17
  198. package/lib/modules/setting/translate-settings/translate-settings.d.ts +4 -0
  199. package/lib/modules/setting/translate-settings/translate-settings.js +139 -0
  200. package/lib/modules/setting/video-settings/index.css +7 -1
  201. package/lib/modules/setting/video-settings/video-settings-basic.js +3 -2
  202. package/lib/modules/setting/video-settings/video-settings.js +5 -1
  203. package/lib/modules/setting/view.js +34 -2
  204. package/lib/modules/share-screen/index.d.ts +2 -2
  205. package/lib/modules/share-screen/index.dev.js +14 -12
  206. package/lib/modules/share-screen/index.js +2 -0
  207. package/lib/modules/share-screen/selection/index.js +44 -6
  208. package/lib/modules/share-screen/share-state-bar/index.css +49 -11
  209. package/lib/modules/share-screen/share-state-bar/index.d.ts +0 -1
  210. package/lib/modules/share-screen/share-state-bar/index.js +51 -20
  211. package/lib/modules/share-screen/store.d.ts +18 -11
  212. package/lib/modules/share-screen/store.js +656 -570
  213. package/lib/modules/state-bar/context.d.ts +0 -1
  214. package/lib/modules/state-bar/index.d.ts +1 -1
  215. package/lib/modules/state-bar/index.dev.js +11 -9
  216. package/lib/modules/state-bar/layout-config.js +2 -0
  217. package/lib/modules/state-bar/live-streaming-state.js +3 -0
  218. package/lib/modules/state-bar/recording.js +6 -6
  219. package/lib/modules/state-bar/store.d.ts +4 -4
  220. package/lib/modules/state-bar/store.js +50 -5
  221. package/lib/modules/state-bar/view.js +3 -2
  222. package/lib/modules/video-window/context.d.ts +0 -1
  223. package/lib/modules/video-window/deviceState/index.d.ts +3 -3
  224. package/lib/modules/video-window/members/index.js +7 -4
  225. package/lib/modules/video-window/store.d.ts +3 -2
  226. package/lib/modules/video-window/store.js +35 -6
  227. package/lib/modules/video-window/topControl/index.js +7 -0
  228. package/lib/modules/video-window/view.js +2 -0
  229. package/lib/modules/whiteboard/app.js +2 -2
  230. package/lib/modules/whiteboard/components/control-bar/store.d.ts +0 -1
  231. package/lib/modules/whiteboard/components/control-bar/store.js +29 -29
  232. package/lib/modules/whiteboard/components/loading/index.js +2 -2
  233. package/lib/modules/whiteboard/components/multi-window/index.js +2 -2
  234. package/lib/modules/whiteboard/components/pagination/store.d.ts +0 -1
  235. package/lib/modules/whiteboard/components/progress/electron.js +1 -1
  236. package/lib/modules/whiteboard/components/progress/style.css +4 -3
  237. package/lib/modules/whiteboard/components/switch-theme/index.js +9 -2
  238. package/lib/modules/whiteboard/components/switch-theme/item.js +2 -0
  239. package/lib/modules/whiteboard/components/switch-theme/libs.d.ts +2 -1
  240. package/lib/modules/whiteboard/components/switch-theme/libs.js +21 -20
  241. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/panel.js +2 -0
  242. package/lib/modules/whiteboard/components/toolbar/components/color-picker/index.js +3 -1
  243. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +11 -9
  244. package/lib/modules/whiteboard/components/toolbar/components/extra-tool-picker.js +4 -0
  245. package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +5 -0
  246. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +2 -0
  247. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +4 -2
  248. package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +3 -3
  249. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +16 -11
  250. package/lib/modules/whiteboard/components/toolbar/index.js +9 -0
  251. package/lib/modules/whiteboard/components/toolbar/store.d.ts +7 -7
  252. package/lib/modules/whiteboard/components/toolbar/store.js +22 -4
  253. package/lib/modules/whiteboard/context.d.ts +3 -3
  254. package/lib/modules/whiteboard/context.js +2 -2
  255. package/lib/modules/whiteboard/index.d.ts +6 -7
  256. package/lib/modules/whiteboard/index.js +292 -253
  257. package/lib/modules/whiteboard/type.d.ts +4 -12
  258. package/lib/modules/whiteboard/type.js +6 -16
  259. package/lib/modules/whiteboard/utils.d.ts +1 -0
  260. package/lib/modules/whiteboard/utils.js +12 -1
  261. package/lib/plugins/browser-runtime-plugin.js +2 -4
  262. package/lib/plugins/module-dev-plugin.js +4 -4
  263. package/lib/plugins/multi-lang-plugin.d.ts +1 -5
  264. package/lib/plugins/multi-lang-plugin.js +2 -0
  265. package/lib/runtime.d.ts +84 -0
  266. package/lib/translations/enUS.d.ts +148 -1
  267. package/lib/translations/enUS.js +156 -7
  268. package/lib/translations/zhCN.d.ts +148 -1
  269. package/lib/translations/zhCN.js +152 -3
  270. package/lib/ui-manager.d.ts +2 -2
  271. package/lib/ui-manager.js +37 -20
  272. package/lib/ui-scene.js +6 -1
  273. package/lib/utilities/board-context.d.ts +0 -1
  274. package/lib/utilities/constant.d.ts +4 -1
  275. package/lib/utilities/constant.js +3 -0
  276. package/lib/utilities/copyText.js +1 -1
  277. package/lib/utilities/extract.js +26 -3
  278. package/lib/utilities/hooks.js +2 -0
  279. package/lib/utilities/renderer-event.js +28 -0
  280. package/lib/utilities/renderer.js +9 -4
  281. package/lib/utilities/tools.js +5 -2
  282. package/lib/utilities/ui-resources.d.ts +2 -2
  283. package/lib/utilities/ui-resources.js +20 -3
  284. package/lib/utilities/video-track-render-context.d.ts +0 -1
  285. package/package.json +10 -8
  286. package/installer/icons/favicon.ico +0 -0
  287. package/installer/icons/favicon.png +0 -0
  288. package/installer/mac/entitlements.mac.plist +0 -16
  289. package/lib/common/device-streams-store.d.ts +0 -34
  290. package/lib/common/device-streams-store.js +0 -403
  291. package/lib/fragments/participant/context.d.ts +0 -3
  292. package/lib/fragments/participant/context.js +0 -9
  293. package/lib/fragments/participant/index.css +0 -20
  294. package/lib/fragments/participant/index.d.ts +0 -9
  295. package/lib/fragments/participant/index.js +0 -90
  296. package/lib/fragments/participant/room-control-drop-menu/index.css +0 -19
  297. package/lib/fragments/participant/room-control-drop-menu/index.d.ts +0 -2
  298. package/lib/fragments/participant/room-control-drop-menu/index.js +0 -134
  299. package/lib/fragments/participant/store.d.ts +0 -34
  300. package/lib/fragments/participant/store.js +0 -326
  301. package/lib/fragments/participant/view.d.ts +0 -2
  302. package/lib/fragments/participant/view.js +0 -86
  303. package/lib/fragments/state-bar/index.d.ts +0 -9
  304. package/lib/fragments/state-bar/index.js +0 -68
  305. package/lib/fragments/type.d.ts +0 -2
  306. package/lib/fragments/type.js +0 -6
  307. package/lib/modules/connection-gateway/components/computer/menu.d.ts +0 -0
  308. package/lib/modules/connection-gateway/components/computer/menu.js +0 -1
  309. package/lib/modules/device-settings/audio-settings/audio-settings.d.ts +0 -4
  310. package/lib/modules/device-settings/audio-settings/audio-settings.js +0 -297
  311. package/lib/modules/device-settings/audio-settings/index.css +0 -139
  312. package/lib/modules/device-settings/audio-settings/microphone-detection.d.ts +0 -2
  313. package/lib/modules/device-settings/audio-settings/microphone-detection.js +0 -68
  314. package/lib/modules/device-settings/audio-settings/speaker-detection.d.ts +0 -2
  315. package/lib/modules/device-settings/audio-settings/speaker-detection.js +0 -72
  316. package/lib/modules/device-settings/common/advance-link.d.ts +0 -3
  317. package/lib/modules/device-settings/common/advance-link.js +0 -27
  318. package/lib/modules/device-settings/common/index.css +0 -26
  319. package/lib/modules/device-settings/common/useNamespace.d.ts +0 -15
  320. package/lib/modules/device-settings/common/useNamespace.js +0 -66
  321. package/lib/modules/device-settings/context.d.ts +0 -3
  322. package/lib/modules/device-settings/context.js +0 -9
  323. package/lib/modules/device-settings/dialog-wrapper.d.ts +0 -2
  324. package/lib/modules/device-settings/dialog-wrapper.js +0 -110
  325. package/lib/modules/device-settings/general-settings/general-settings.d.ts +0 -4
  326. package/lib/modules/device-settings/general-settings/general-settings.js +0 -66
  327. package/lib/modules/device-settings/general-settings/index.css +0 -26
  328. package/lib/modules/device-settings/index.css +0 -109
  329. package/lib/modules/device-settings/index.d.ts +0 -21
  330. package/lib/modules/device-settings/index.dev.js +0 -112
  331. package/lib/modules/device-settings/index.js +0 -84
  332. package/lib/modules/device-settings/state/index.css +0 -211
  333. package/lib/modules/device-settings/state/index.d.ts +0 -4
  334. package/lib/modules/device-settings/state/index.js +0 -330
  335. package/lib/modules/device-settings/storage-settings/index.css +0 -91
  336. package/lib/modules/device-settings/storage-settings/storage-settings.d.ts +0 -3
  337. package/lib/modules/device-settings/storage-settings/storage-settings.js +0 -84
  338. package/lib/modules/device-settings/store.d.ts +0 -205
  339. package/lib/modules/device-settings/store.js +0 -1035
  340. package/lib/modules/device-settings/video-settings/camera-select.d.ts +0 -2
  341. package/lib/modules/device-settings/video-settings/index.css +0 -327
  342. package/lib/modules/device-settings/video-settings/local-video-player.d.ts +0 -3
  343. package/lib/modules/device-settings/video-settings/local-video-player.js +0 -37
  344. package/lib/modules/device-settings/video-settings/mirror-toggle.d.ts +0 -2
  345. package/lib/modules/device-settings/video-settings/mirror-toggle.js +0 -62
  346. package/lib/modules/device-settings/video-settings/video-settings-basic.d.ts +0 -9
  347. package/lib/modules/device-settings/video-settings/video-settings-basic.js +0 -177
  348. package/lib/modules/device-settings/video-settings/video-settings.d.ts +0 -6
  349. package/lib/modules/device-settings/video-settings/video-settings.js +0 -185
  350. package/lib/modules/device-settings/view.d.ts +0 -10
  351. package/lib/modules/device-settings/view.js +0 -193
  352. package/lib/modules/layout/components/UserWindow.d.ts +0 -8
  353. package/lib/modules/layout/components/UserWindow.js +0 -513
  354. package/lib/modules/layout/hooks.d.ts +0 -14
  355. package/lib/modules/layout/hooks.js +0 -48
  356. package/lib/modules/share-screen/context.d.ts +0 -3
  357. package/lib/modules/share-screen/context.js +0 -9
  358. package/lib/modules/whiteboard/i18n/config.d.ts +0 -1
  359. package/lib/modules/whiteboard/i18n/config.js +0 -15
  360. package/lib/modules/whiteboard/i18n/en/index.d.ts +0 -32
  361. package/lib/modules/whiteboard/i18n/en/index.js +0 -38
  362. package/lib/modules/whiteboard/i18n/zh/index.d.ts +0 -32
  363. package/lib/modules/whiteboard/i18n/zh/index.js +0 -38
  364. /package/lib/{modules/device-settings/index.dev.d.ts → electron/preload.d.ts} +0 -0
@@ -1,4 +1,5 @@
1
- import { FcrUserRole, FcrRoomConnectorType, FcrVideoSourceType } from 'agora-edu-core/lib/type';
1
+ import { FcrRoomConnectorType, FcrVideoSourceType } from 'agora-edu-core';
2
+ import { FcrUserRole } from 'agora-edu-core/lib/type';
2
3
  export declare enum FcrUIVideoWindowLayoutType {
3
4
  /** Show a carousel on top and a big video on the rest of the screen. */
4
5
  Speaker = "speaker",
@@ -1,6 +1,9 @@
1
1
  import { FcrUIVideoWindowData, FcrUIVideoWindowFoldSortingPriority, FcrUIVideoWindowLayoutType, FcrUIVideoWindowMainSortingPriority, FcrUIWindowType } from './type';
2
- import { FcrRoomConnectorType, FcrStreamInfo, FcrUserInfo, FcrUserRole } from 'agora-edu-core/lib/type';
3
- import { AgoraRtcVideoSourceType } from 'agora-rte-sdk/lib/core/rtc/type';
2
+ import { FcrStreamInfo, FcrUserInfo, FcrUserRole } from 'agora-edu-core/lib/type';
3
+ import { FcrRoomConnectorType, FcrVideoSourceType } from 'agora-edu-core';
4
+ type FcrStreamUIData = Omit<FcrStreamInfo, 'owner'> & {
5
+ owner: FcrUserInfo;
6
+ };
4
7
  export declare class FcrUIVideoWindowDataImpl implements FcrUIVideoWindowData {
5
8
  private _placement;
6
9
  private _isMySelf;
@@ -28,18 +31,18 @@ export declare class FcrUIVideoWindowDataImpl implements FcrUIVideoWindowData {
28
31
  get userId(): string;
29
32
  get userName(): string;
30
33
  get ownerRoleType(): FcrUserRole;
31
- get videoSourceType(): AgoraRtcVideoSourceType;
34
+ get videoSourceType(): FcrVideoSourceType;
32
35
  get isMySelf(): boolean;
33
36
  get sortingPriority(): FcrUIVideoWindowMainSortingPriority | FcrUIVideoWindowFoldSortingPriority;
34
37
  constructor(type: FcrUIWindowType, { videoStream, audioStream, boardUserInfo, }: {
35
- videoStream?: FcrStreamInfo;
36
- audioStream?: FcrStreamInfo;
38
+ videoStream?: FcrStreamUIData;
39
+ audioStream?: FcrStreamUIData;
37
40
  boardUserInfo?: FcrUserInfo;
38
41
  }, _placement: 'main-list' | 'fold-list', _isMySelf: boolean, layoutType: FcrUIVideoWindowLayoutType | undefined, spotlightEnabled: boolean, canEdit?: boolean);
39
42
  setLayoutType(layoutType: FcrUIVideoWindowLayoutType): void;
40
- setVideoStream(videoStream: FcrStreamInfo | undefined): void;
43
+ setVideoStream(videoStream: FcrStreamUIData | undefined): void;
41
44
  setVideoStreamOwnerInfo(userInfo: FcrUserInfo): void;
42
- setAudioStream(audioStream: FcrStreamInfo | undefined): void;
45
+ setAudioStream(audioStream: FcrStreamUIData | undefined): void;
43
46
  setAudioStreamOwnerInfo(userInfo: FcrUserInfo): void;
44
47
  setPin(pin: boolean): void;
45
48
  setSpotlightEnabled(enabled: boolean): void;
@@ -63,6 +66,7 @@ export declare class FcrUIVideoWindowDataSource {
63
66
  private _spotlightPool;
64
67
  accessor spotlightEnabled: boolean;
65
68
  accessor layoutType: FcrUIVideoWindowLayoutType;
69
+ accessor manualLayout: FcrUIVideoWindowLayoutType;
66
70
  accessor pinLimitedCount: number;
67
71
  accessor mainListLimitedCount: number;
68
72
  accessor foldListLimitedCount: number;
@@ -70,7 +74,7 @@ export declare class FcrUIVideoWindowDataSource {
70
74
  accessor foldList: FcrUIVideoWindowDataImpl[];
71
75
  constructor();
72
76
  setSpotlightEnabled(enabled: boolean): void;
73
- setLayout(layout: FcrUIVideoWindowLayoutType): void;
77
+ setLayout(layout: FcrUIVideoWindowLayoutType, manual?: boolean): void;
74
78
  onSpotlightRemoved(streamId: string): void;
75
79
  resetList(): void;
76
80
  addBoard(userInfo: FcrUserInfo, isMySelf: boolean, canEdit?: boolean): void;
@@ -88,6 +92,7 @@ export declare class FcrUIVideoWindowDataSource {
88
92
  clearSpeakerSpotlight(): void;
89
93
  addObserver(observer: Partial<FcrUIVideoWindowDataSourceObserver>): void;
90
94
  removeObserver(observer: Partial<FcrUIVideoWindowDataSourceObserver>): void;
95
+ private copyStreamInfo;
91
96
  private _syncHasScreenSharing;
92
97
  private _insertByPriority;
93
98
  private _insertBeginningByPriority;
@@ -117,3 +122,4 @@ export declare class FcrUISpeakerSpotlightPool {
117
122
  onRemoved: (streamId: string) => void;
118
123
  }): void;
119
124
  }
125
+ export {};
@@ -19,6 +19,8 @@ require("core-js/modules/es.object.get-own-property-descriptor.js");
19
19
  require("core-js/modules/es.regexp.exec.js");
20
20
  require("core-js/modules/es.regexp.test.js");
21
21
  require("core-js/modules/es.regexp.to-string.js");
22
+ require("core-js/modules/esnext.function.metadata.js");
23
+ require("core-js/modules/esnext.symbol.metadata.js");
22
24
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
23
25
  var _typeof = require("@babel/runtime/helpers/typeof");
24
26
  Object.defineProperty(exports, "__esModule", {
@@ -39,13 +41,40 @@ require("core-js/modules/es.array.unshift.js");
39
41
  require("core-js/modules/es.date.now.js");
40
42
  require("core-js/modules/es.function.bind.js");
41
43
  require("core-js/modules/es.map.js");
44
+ require("core-js/modules/es.object.assign.js");
42
45
  require("core-js/modules/es.object.to-string.js");
43
46
  require("core-js/modules/es.string.iterator.js");
44
47
  require("core-js/modules/es.weak-map.js");
48
+ require("core-js/modules/esnext.async-iterator.filter.js");
49
+ require("core-js/modules/esnext.async-iterator.find.js");
50
+ require("core-js/modules/esnext.async-iterator.for-each.js");
51
+ require("core-js/modules/esnext.async-iterator.some.js");
52
+ require("core-js/modules/esnext.iterator.constructor.js");
53
+ require("core-js/modules/esnext.iterator.filter.js");
54
+ require("core-js/modules/esnext.iterator.find.js");
55
+ require("core-js/modules/esnext.iterator.for-each.js");
56
+ require("core-js/modules/esnext.iterator.some.js");
57
+ require("core-js/modules/esnext.map.delete-all.js");
58
+ require("core-js/modules/esnext.map.emplace.js");
59
+ require("core-js/modules/esnext.map.every.js");
60
+ require("core-js/modules/esnext.map.filter.js");
61
+ require("core-js/modules/esnext.map.find.js");
62
+ require("core-js/modules/esnext.map.find-key.js");
63
+ require("core-js/modules/esnext.map.includes.js");
64
+ require("core-js/modules/esnext.map.key-of.js");
65
+ require("core-js/modules/esnext.map.map-keys.js");
66
+ require("core-js/modules/esnext.map.map-values.js");
67
+ require("core-js/modules/esnext.map.merge.js");
68
+ require("core-js/modules/esnext.map.reduce.js");
69
+ require("core-js/modules/esnext.map.some.js");
70
+ require("core-js/modules/esnext.map.update.js");
71
+ require("core-js/modules/esnext.weak-map.delete-all.js");
72
+ require("core-js/modules/esnext.weak-map.emplace.js");
45
73
  require("core-js/modules/web.dom-collections.for-each.js");
46
74
  require("core-js/modules/web.dom-collections.iterator.js");
47
75
  require("core-js/modules/web.timers.js");
48
76
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
77
+ var _readOnlyError2 = _interopRequireDefault(require("@babel/runtime/helpers/readOnlyError"));
49
78
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
50
79
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
51
80
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
@@ -53,15 +82,14 @@ var _observable = require("agora-foundation/lib/utilities/observable");
53
82
  var _type = require("./type");
54
83
  var _mobx = require("mobx");
55
84
  var _type2 = require("agora-edu-core/lib/type");
56
- var _type3 = require("agora-rte-sdk/lib/core/rtc/type");
57
- var _type4 = require("agora-rte-sdk/lib/core/scene/type");
85
+ var _agoraEduCore = require("agora-edu-core");
58
86
  var _FcrUIVideoWindowDataImpl, _FcrUIVideoWindowDataSource;
59
- var _initProto, _init__videoStream, _init__audioStream, _init__spotlightEnabled, _init__isSpeakerSpotlight, _init__boardCanEdit, _init_isPin, _init_hasScreenSharing, _setVideoStreamDecs, _setVideoStreamOwnerInfoDecs, _setAudioStreamDecs, _setAudioStreamOwnerInfoDecs, _setPinDecs, _setSpotlightEnabledDecs, _setSpeakerSpotlightDecs, _setHasScreenSharingDecs, _setBoardCanEditDecs, _ref, _initProto2, _init_spotlightEnabled, _init_layoutType, _init_pinLimitedCount, _init_mainListLimitedCount, _init_foldListLimitedCount, _init_mainList, _init_foldList, _setSpotlightEnabledDecs2, _setLayoutDecs, _onSpotlightRemovedDecs, _resetListDecs, _addBoardDecs, _updateBoardDecs, _removeBoardDecs, _mergePstnStreamOrInsertNewDataDecs, _addDecs, _updateDecs, _deleteDecs, _addPinDecs, _removePinDecs, _setSpeakerSpotlightDecs2, _toggleMainStreamDecs, _insertBeginningByPriorityDecs, _insertEndByPriorityDecs, _findInsertBeginningIndexDecs, _findInsertEndIndexDecs, _insertBoardDecs, _insertNewDataDecs, _ref3;
60
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
61
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
62
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
63
- function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
64
- function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
87
+ var _initProto, _init__videoStream, _init__audioStream, _init__spotlightEnabled, _init__isSpeakerSpotlight, _init__boardCanEdit, _init_isPin, _init_hasScreenSharing, _setVideoStreamDecs, _setVideoStreamOwnerInfoDecs, _setAudioStreamDecs, _setAudioStreamOwnerInfoDecs, _setPinDecs, _setSpotlightEnabledDecs, _setSpeakerSpotlightDecs, _setHasScreenSharingDecs, _setBoardCanEditDecs, _ref, _initProto2, _init_spotlightEnabled, _init_layoutType, _init_manualLayout, _init_pinLimitedCount, _init_mainListLimitedCount, _init_foldListLimitedCount, _init_mainList, _init_foldList, _setSpotlightEnabledDecs2, _setLayoutDecs, _onSpotlightRemovedDecs, _resetListDecs, _addBoardDecs, _updateBoardDecs, _removeBoardDecs, _mergePstnStreamOrInsertNewDataDecs, _addDecs, _updateDecs, _deleteDecs, _addPinDecs, _removePinDecs, _setSpeakerSpotlightDecs2, _toggleMainStreamDecs, _insertBeginningByPriorityDecs, _insertEndByPriorityDecs, _findInsertBeginningIndexDecs, _findInsertEndIndexDecs, _insertBoardDecs, _insertNewDataDecs, _ref3;
88
+ function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
89
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
90
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
91
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
92
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
65
93
  function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
66
94
  function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
67
95
  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"); }
@@ -189,20 +217,20 @@ var FcrUIVideoWindowDataImpl = exports.FcrUIVideoWindowDataImpl = /*#__PURE__*/f
189
217
  key: "audioStreamConnectorType",
190
218
  get: function get() {
191
219
  var _this$_audioStream2;
192
- return ((_this$_audioStream2 = this._audioStream) === null || _this$_audioStream2 === void 0 ? void 0 : _this$_audioStream2.connectorType) || _type2.FcrRoomConnectorType.NONE;
220
+ return ((_this$_audioStream2 = this._audioStream) === null || _this$_audioStream2 === void 0 ? void 0 : _this$_audioStream2.connectorType) || _agoraEduCore.FcrRoomConnectorType.NONE;
193
221
  }
194
222
  }, {
195
223
  key: "videoStreamConnectorType",
196
224
  get: function get() {
197
225
  var _this$_videoStream2;
198
- return ((_this$_videoStream2 = this._videoStream) === null || _this$_videoStream2 === void 0 ? void 0 : _this$_videoStream2.connectorType) || _type2.FcrRoomConnectorType.NONE;
226
+ return ((_this$_videoStream2 = this._videoStream) === null || _this$_videoStream2 === void 0 ? void 0 : _this$_videoStream2.connectorType) || _agoraEduCore.FcrRoomConnectorType.NONE;
199
227
  }
200
228
  }, {
201
229
  key: "hasMicrophoneAudioStream",
202
230
  get: function get() {
203
- if (this.audioStreamConnectorType === _type2.FcrRoomConnectorType.NONE) {
231
+ if (this.audioStreamConnectorType === _agoraEduCore.FcrRoomConnectorType.NONE) {
204
232
  var _this$_videoStream3;
205
- return ((_this$_videoStream3 = this._videoStream) === null || _this$_videoStream3 === void 0 ? void 0 : _this$_videoStream3.audioSourceState) === _type3.AgoraRtcMediaSourceState.STARTED && (this._videoStream.streamType === _type4.AgoraRteMediaStreamType.BOTH || this._videoStream.streamType === _type4.AgoraRteMediaStreamType.AUDIO);
233
+ return ((_this$_videoStream3 = this._videoStream) === null || _this$_videoStream3 === void 0 ? void 0 : _this$_videoStream3.audioSourceState) === _agoraEduCore.FcrMediaSourceState.STARTED && (this._videoStream.streamType === _agoraEduCore.FcrStreamType.BOTH || this._videoStream.streamType === _agoraEduCore.FcrStreamType.AUDIO);
206
234
  } else {
207
235
  return true;
208
236
  }
@@ -210,9 +238,9 @@ var FcrUIVideoWindowDataImpl = exports.FcrUIVideoWindowDataImpl = /*#__PURE__*/f
210
238
  }, {
211
239
  key: "phoneMicEnabled",
212
240
  get: function get() {
213
- if (this.audioStreamConnectorType === _type2.FcrRoomConnectorType.PSTN) {
241
+ if (this.audioStreamConnectorType === _agoraEduCore.FcrRoomConnectorType.PSTN) {
214
242
  var _this$_audioStream3, _this$_videoStream4;
215
- return ((_this$_audioStream3 = this._audioStream) === null || _this$_audioStream3 === void 0 ? void 0 : _this$_audioStream3.audioSourceState) === _type3.AgoraRtcMediaSourceState.STARTED || ((_this$_videoStream4 = this._videoStream) === null || _this$_videoStream4 === void 0 ? void 0 : _this$_videoStream4.streamType) === _type4.AgoraRteMediaStreamType.BOTH;
243
+ return ((_this$_audioStream3 = this._audioStream) === null || _this$_audioStream3 === void 0 ? void 0 : _this$_audioStream3.audioSourceState) === _agoraEduCore.FcrMediaSourceState.STARTED || ((_this$_videoStream4 = this._videoStream) === null || _this$_videoStream4 === void 0 ? void 0 : _this$_videoStream4.streamType) === _agoraEduCore.FcrStreamType.BOTH;
216
244
  } else {
217
245
  return false;
218
246
  }
@@ -220,38 +248,38 @@ var FcrUIVideoWindowDataImpl = exports.FcrUIVideoWindowDataImpl = /*#__PURE__*/f
220
248
  }, {
221
249
  key: "hasVideoStream",
222
250
  get: function get() {
223
- var _this$_videoStream5;
224
- return ((_this$_videoStream5 = this._videoStream) === null || _this$_videoStream5 === void 0 ? void 0 : _this$_videoStream5.videoSourceState) === _type3.AgoraRtcMediaSourceState.STARTED && (this._videoStream.streamType === _type4.AgoraRteMediaStreamType.BOTH || this._videoStream.streamType === _type4.AgoraRteMediaStreamType.VIDEO);
251
+ var _this$_videoStream5, _this$_videoStream6, _this$_videoStream7;
252
+ return ((_this$_videoStream5 = this._videoStream) === null || _this$_videoStream5 === void 0 ? void 0 : _this$_videoStream5.videoSourceState) === _agoraEduCore.FcrMediaSourceState.STARTED && (((_this$_videoStream6 = this._videoStream) === null || _this$_videoStream6 === void 0 ? void 0 : _this$_videoStream6.streamType) === _agoraEduCore.FcrStreamType.BOTH || ((_this$_videoStream7 = this._videoStream) === null || _this$_videoStream7 === void 0 ? void 0 : _this$_videoStream7.streamType) === _agoraEduCore.FcrStreamType.VIDEO);
225
253
  }
226
254
  }, {
227
255
  key: "hasLoopbackAudioStream",
228
256
  get: function get() {
229
- var _this$_videoStream6;
230
- return ((_this$_videoStream6 = this._videoStream) === null || _this$_videoStream6 === void 0 ? void 0 : _this$_videoStream6.audioSourceType) === _type3.AgoraRtcAudioSourceType.LOOPBACK;
257
+ var _this$_videoStream8;
258
+ return ((_this$_videoStream8 = this._videoStream) === null || _this$_videoStream8 === void 0 ? void 0 : _this$_videoStream8.audioSourceType) === _agoraEduCore.FcrAudioSourceType.LOOPBACK;
231
259
  }
232
260
  }, {
233
261
  key: "userId",
234
262
  get: function get() {
235
- var _this$_videoStream7, _this$_audioStream4, _this$_boardUserInfo;
236
- return ((_this$_videoStream7 = this._videoStream) === null || _this$_videoStream7 === void 0 ? void 0 : _this$_videoStream7.owner.userId) || ((_this$_audioStream4 = this._audioStream) === null || _this$_audioStream4 === void 0 ? void 0 : _this$_audioStream4.owner.userId) || ((_this$_boardUserInfo = this._boardUserInfo) === null || _this$_boardUserInfo === void 0 ? void 0 : _this$_boardUserInfo.userId) || '';
263
+ var _this$_videoStream9, _this$_audioStream4, _this$_boardUserInfo;
264
+ return ((_this$_videoStream9 = this._videoStream) === null || _this$_videoStream9 === void 0 ? void 0 : _this$_videoStream9.owner.userId) || ((_this$_audioStream4 = this._audioStream) === null || _this$_audioStream4 === void 0 ? void 0 : _this$_audioStream4.owner.userId) || ((_this$_boardUserInfo = this._boardUserInfo) === null || _this$_boardUserInfo === void 0 ? void 0 : _this$_boardUserInfo.userId) || '';
237
265
  }
238
266
  }, {
239
267
  key: "userName",
240
268
  get: function get() {
241
- var _this$_videoStream8, _this$_audioStream5, _this$_boardUserInfo2;
242
- return ((_this$_videoStream8 = this._videoStream) === null || _this$_videoStream8 === void 0 ? void 0 : _this$_videoStream8.owner.userName) || ((_this$_audioStream5 = this._audioStream) === null || _this$_audioStream5 === void 0 ? void 0 : _this$_audioStream5.owner.userName) || ((_this$_boardUserInfo2 = this._boardUserInfo) === null || _this$_boardUserInfo2 === void 0 ? void 0 : _this$_boardUserInfo2.userName) || '';
269
+ var _this$_videoStream10, _this$_audioStream5, _this$_boardUserInfo2;
270
+ return ((_this$_videoStream10 = this._videoStream) === null || _this$_videoStream10 === void 0 ? void 0 : _this$_videoStream10.owner.userName) || ((_this$_audioStream5 = this._audioStream) === null || _this$_audioStream5 === void 0 ? void 0 : _this$_audioStream5.owner.userName) || ((_this$_boardUserInfo2 = this._boardUserInfo) === null || _this$_boardUserInfo2 === void 0 ? void 0 : _this$_boardUserInfo2.userName) || '';
243
271
  }
244
272
  }, {
245
273
  key: "ownerRoleType",
246
274
  get: function get() {
247
- var _this$_videoStream9, _this$_audioStream6, _this$_boardUserInfo3;
248
- return ((_this$_videoStream9 = this._videoStream) === null || _this$_videoStream9 === void 0 ? void 0 : _this$_videoStream9.owner.userRole) || ((_this$_audioStream6 = this._audioStream) === null || _this$_audioStream6 === void 0 ? void 0 : _this$_audioStream6.owner.userRole) || ((_this$_boardUserInfo3 = this._boardUserInfo) === null || _this$_boardUserInfo3 === void 0 ? void 0 : _this$_boardUserInfo3.userRole) || _type2.FcrUserRole.AUDIENCE;
275
+ var _this$_videoStream11, _this$_audioStream6, _this$_boardUserInfo3;
276
+ return ((_this$_videoStream11 = this._videoStream) === null || _this$_videoStream11 === void 0 ? void 0 : _this$_videoStream11.owner.userRole) || ((_this$_audioStream6 = this._audioStream) === null || _this$_audioStream6 === void 0 ? void 0 : _this$_audioStream6.owner.userRole) || ((_this$_boardUserInfo3 = this._boardUserInfo) === null || _this$_boardUserInfo3 === void 0 ? void 0 : _this$_boardUserInfo3.userRole) || _type2.FcrUserRole.AUDIENCE;
249
277
  }
250
278
  }, {
251
279
  key: "videoSourceType",
252
280
  get: function get() {
253
- var _this$_videoStream10;
254
- return ((_this$_videoStream10 = this._videoStream) === null || _this$_videoStream10 === void 0 ? void 0 : _this$_videoStream10.videoSourceType) || _type3.AgoraRtcVideoSourceType.CAMERA;
281
+ var _this$_videoStream12;
282
+ return ((_this$_videoStream12 = this._videoStream) === null || _this$_videoStream12 === void 0 ? void 0 : _this$_videoStream12.videoSourceType) || _agoraEduCore.FcrVideoSourceType.CAMERA;
255
283
  }
256
284
  }, {
257
285
  key: "isMySelf",
@@ -262,11 +290,11 @@ var FcrUIVideoWindowDataImpl = exports.FcrUIVideoWindowDataImpl = /*#__PURE__*/f
262
290
  key: "sortingPriority",
263
291
  get: function get() {
264
292
  if (this._placement === 'main-list') {
265
- var _this$_videoStream11;
293
+ var _this$_videoStream13;
266
294
  if (this.type === _type.FcrUIWindowType.BOARD && this._boardCanEdit) {
267
295
  return _type.FcrUIVideoWindowMainSortingPriority.HIGHEST;
268
296
  }
269
- if (this.isPin || ((_this$_videoStream11 = this._videoStream) === null || _this$_videoStream11 === void 0 ? void 0 : _this$_videoStream11.videoSourceType) === _type3.AgoraRtcVideoSourceType.SCREEN || this.type === _type.FcrUIWindowType.BOARD) {
297
+ if (this.isPin || ((_this$_videoStream13 = this._videoStream) === null || _this$_videoStream13 === void 0 ? void 0 : _this$_videoStream13.videoSourceType) === _agoraEduCore.FcrVideoSourceType.SCREEN || this.type === _type.FcrUIWindowType.BOARD) {
270
298
  return _type.FcrUIVideoWindowMainSortingPriority.FOCUS;
271
299
  }
272
300
  if (this.isSpeakerSpotlight && this._layoutType === _type.FcrUIVideoWindowLayoutType.Speaker) {
@@ -294,14 +322,14 @@ var FcrUIVideoWindowDataImpl = exports.FcrUIVideoWindowDataImpl = /*#__PURE__*/f
294
322
  return _type.FcrUIVideoWindowMainSortingPriority.MICROPHONE_OPEN;
295
323
  }
296
324
  } else {
297
- var _this$_videoStream12;
325
+ var _this$_videoStream14;
298
326
  if (this.isSpeakerSpotlight) {
299
327
  return _type.FcrUIVideoWindowFoldSortingPriority.FOCUS;
300
328
  }
301
329
  if (this.isPin) {
302
330
  return _type.FcrUIVideoWindowFoldSortingPriority.PIN;
303
331
  }
304
- if (((_this$_videoStream12 = this._videoStream) === null || _this$_videoStream12 === void 0 ? void 0 : _this$_videoStream12.videoSourceType) === _type3.AgoraRtcVideoSourceType.SCREEN) {
332
+ if (((_this$_videoStream14 = this._videoStream) === null || _this$_videoStream14 === void 0 ? void 0 : _this$_videoStream14.videoSourceType) === _agoraEduCore.FcrVideoSourceType.SCREEN) {
305
333
  return _type.FcrUIVideoWindowFoldSortingPriority.SCREEN_SHARING_STREAM;
306
334
  }
307
335
  if (this.hasScreenSharing) {
@@ -401,6 +429,7 @@ var _D2 = /*#__PURE__*/new WeakMap();
401
429
  var _E2 = /*#__PURE__*/new WeakMap();
402
430
  var _F2 = /*#__PURE__*/new WeakMap();
403
431
  var _G2 = /*#__PURE__*/new WeakMap();
432
+ var _H = /*#__PURE__*/new WeakMap();
404
433
  _ref3 = (_setSpotlightEnabledDecs2 = [_mobx.action, _mobx.action.bound], _setLayoutDecs = [_mobx.action, _mobx.action.bound], _onSpotlightRemovedDecs = [_mobx.action, _mobx.action.bound], _resetListDecs = [_mobx.action, _mobx.action.bound], _addBoardDecs = [_mobx.action, _mobx.action.bound], _updateBoardDecs = [_mobx.action, _mobx.action.bound], _removeBoardDecs = [_mobx.action, _mobx.action.bound], _mergePstnStreamOrInsertNewDataDecs = [_mobx.action, _mobx.action.bound], _addDecs = [_mobx.action, _mobx.action.bound], _updateDecs = [_mobx.action, _mobx.action.bound], _deleteDecs = [_mobx.action, _mobx.action.bound], _addPinDecs = [_mobx.action, _mobx.action.bound], _removePinDecs = [_mobx.action, _mobx.action.bound], _setSpeakerSpotlightDecs2 = [_mobx.action, _mobx.action.bound], _toggleMainStreamDecs = [_mobx.action, _mobx.action.bound], _insertBeginningByPriorityDecs = [_mobx.action, _mobx.action.bound], _insertEndByPriorityDecs = [_mobx.action, _mobx.action.bound], _findInsertBeginningIndexDecs = [_mobx.action, _mobx.action.bound], _findInsertEndIndexDecs = [_mobx.action, _mobx.action.bound], _insertBoardDecs = [_mobx.action, _mobx.action.bound], _insertNewDataDecs = [_mobx.action, _mobx.action.bound], "_observer");
405
434
  var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE__*/function () {
406
435
  function FcrUIVideoWindowDataSource() {
@@ -409,11 +438,12 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
409
438
  (0, _defineProperty2["default"])(this, "_spotlightPool", new FcrUISpeakerSpotlightPool());
410
439
  _classPrivateFieldInitSpec(this, _A2, _init_spotlightEnabled(this, true));
411
440
  _classPrivateFieldInitSpec(this, _B2, _init_layoutType(this, _type.FcrUIVideoWindowLayoutType.Gallery));
412
- _classPrivateFieldInitSpec(this, _C2, _init_pinLimitedCount(this, 1));
413
- _classPrivateFieldInitSpec(this, _D2, _init_mainListLimitedCount(this, 255));
414
- _classPrivateFieldInitSpec(this, _E2, _init_foldListLimitedCount(this, 255));
415
- _classPrivateFieldInitSpec(this, _F2, _init_mainList(this, []));
416
- _classPrivateFieldInitSpec(this, _G2, _init_foldList(this, []));
441
+ _classPrivateFieldInitSpec(this, _C2, _init_manualLayout(this, _type.FcrUIVideoWindowLayoutType.Gallery));
442
+ _classPrivateFieldInitSpec(this, _D2, _init_pinLimitedCount(this, 1));
443
+ _classPrivateFieldInitSpec(this, _E2, _init_mainListLimitedCount(this, 255));
444
+ _classPrivateFieldInitSpec(this, _F2, _init_foldListLimitedCount(this, 255));
445
+ _classPrivateFieldInitSpec(this, _G2, _init_mainList(this, []));
446
+ _classPrivateFieldInitSpec(this, _H, _init_foldList(this, []));
417
447
  this._spotlightPool.addObserver({
418
448
  onRemoved: this.onSpotlightRemoved
419
449
  });
@@ -435,7 +465,7 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
435
465
  _classPrivateFieldSet(_B2, this, v);
436
466
  }
437
467
  }, {
438
- key: "pinLimitedCount",
468
+ key: "manualLayout",
439
469
  get: function get() {
440
470
  return _classPrivateFieldGet(_C2, this);
441
471
  },
@@ -443,7 +473,7 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
443
473
  _classPrivateFieldSet(_C2, this, v);
444
474
  }
445
475
  }, {
446
- key: "mainListLimitedCount",
476
+ key: "pinLimitedCount",
447
477
  get: function get() {
448
478
  return _classPrivateFieldGet(_D2, this);
449
479
  },
@@ -451,7 +481,7 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
451
481
  _classPrivateFieldSet(_D2, this, v);
452
482
  }
453
483
  }, {
454
- key: "foldListLimitedCount",
484
+ key: "mainListLimitedCount",
455
485
  get: function get() {
456
486
  return _classPrivateFieldGet(_E2, this);
457
487
  },
@@ -459,7 +489,7 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
459
489
  _classPrivateFieldSet(_E2, this, v);
460
490
  }
461
491
  }, {
462
- key: "mainList",
492
+ key: "foldListLimitedCount",
463
493
  get: function get() {
464
494
  return _classPrivateFieldGet(_F2, this);
465
495
  },
@@ -467,13 +497,21 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
467
497
  _classPrivateFieldSet(_F2, this, v);
468
498
  }
469
499
  }, {
470
- key: "foldList",
500
+ key: "mainList",
471
501
  get: function get() {
472
502
  return _classPrivateFieldGet(_G2, this);
473
503
  },
474
504
  set: function set(v) {
475
505
  _classPrivateFieldSet(_G2, this, v);
476
506
  }
507
+ }, {
508
+ key: "foldList",
509
+ get: function get() {
510
+ return _classPrivateFieldGet(_H, this);
511
+ },
512
+ set: function set(v) {
513
+ _classPrivateFieldSet(_H, this, v);
514
+ }
477
515
  }, {
478
516
  key: "setSpotlightEnabled",
479
517
  value: function setSpotlightEnabled(enabled) {
@@ -491,7 +529,10 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
491
529
  }
492
530
  }, {
493
531
  key: "setLayout",
494
- value: function setLayout(layout) {
532
+ value: function setLayout(layout, manual) {
533
+ if (manual) {
534
+ this.manualLayout = layout;
535
+ }
495
536
  if (this.layoutType === _type.FcrUIVideoWindowLayoutType.Gallery && layout === _type.FcrUIVideoWindowLayoutType.Speaker && this.mainList.length < 2 || this.layoutType === layout) {
496
537
  return;
497
538
  }
@@ -573,7 +614,7 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
573
614
  key: "_mergePstnStreamOrInsertNewData",
574
615
  value: function _mergePstnStreamOrInsertNewData(stream, list, limitCount, isMySelf, placement) {
575
616
  var existedUserPstnStream = list.find(function (item) {
576
- return item.userId === stream.owner.userId && item.audioStreamConnectorType === _type2.FcrRoomConnectorType.PSTN;
617
+ return item.userId === stream.owner.userId && item.audioStreamConnectorType === _agoraEduCore.FcrRoomConnectorType.PSTN;
577
618
  });
578
619
  if (existedUserPstnStream) {
579
620
  existedUserPstnStream.setVideoStream(stream);
@@ -585,10 +626,11 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
585
626
  key: "add",
586
627
  value: function add(stream, isMySelf) {
587
628
  var _this3 = this;
588
- if (stream.connectorType === _type2.FcrRoomConnectorType.PSTN) {
629
+ var streamCopy = this.copyStreamInfo(stream);
630
+ if (streamCopy.connectorType === _agoraEduCore.FcrRoomConnectorType.PSTN) {
589
631
  var handlePSTNStreamAdded = function handlePSTNStreamAdded(stream, list, limitCount, isMySelf, placement) {
590
632
  var existedUserStream = list.find(function (item) {
591
- return item.userId === stream.owner.userId && item.videoSourceType === _type3.AgoraRtcVideoSourceType.CAMERA;
633
+ return item.userId === stream.owner.userId && item.videoSourceType === _agoraEduCore.FcrVideoSourceType.CAMERA;
592
634
  });
593
635
  if (existedUserStream) {
594
636
  existedUserStream.setAudioStream(stream);
@@ -596,15 +638,15 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
596
638
  _this3._insertNewData(stream, list, limitCount, isMySelf, placement);
597
639
  }
598
640
  };
599
- handlePSTNStreamAdded(stream, this.mainList, this.mainListLimitedCount, isMySelf, 'main-list');
600
- handlePSTNStreamAdded(stream, this.foldList, this.foldListLimitedCount, isMySelf, 'fold-list');
641
+ handlePSTNStreamAdded(streamCopy, this.mainList, this.mainListLimitedCount, isMySelf, 'main-list');
642
+ handlePSTNStreamAdded(streamCopy, this.foldList, this.foldListLimitedCount, isMySelf, 'fold-list');
601
643
  } else {
602
- this._mergePstnStreamOrInsertNewData(stream, this.mainList, this.mainListLimitedCount, isMySelf, 'main-list');
603
- this._mergePstnStreamOrInsertNewData(stream, this.foldList, this.foldListLimitedCount, isMySelf, 'fold-list');
644
+ this._mergePstnStreamOrInsertNewData(streamCopy, this.mainList, this.mainListLimitedCount, isMySelf, 'main-list');
645
+ this._mergePstnStreamOrInsertNewData(streamCopy, this.foldList, this.foldListLimitedCount, isMySelf, 'fold-list');
604
646
  }
605
- if (stream.videoSourceType === _type3.AgoraRtcVideoSourceType.SCREEN) {
606
- this._syncHasScreenSharing(true, stream.owner.userId, this.mainList, this.mainListLimitedCount, 'main-list');
607
- this._syncHasScreenSharing(true, stream.owner.userId, this.foldList, this.foldListLimitedCount, 'fold-list');
647
+ if (streamCopy.videoSourceType === _agoraEduCore.FcrVideoSourceType.SCREEN) {
648
+ this._syncHasScreenSharing(true, streamCopy.owner.userId, this.mainList, this.mainListLimitedCount, 'main-list');
649
+ this._syncHasScreenSharing(true, streamCopy.owner.userId, this.foldList, this.foldListLimitedCount, 'fold-list');
608
650
  }
609
651
  }
610
652
  }, {
@@ -614,13 +656,13 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
614
656
  var handleStreamInfoUpdated = function handleStreamInfoUpdated(stream, list, limitCount, placement) {
615
657
  var existedUserStream = list[_this4._findItemIndexWithWindowId(stream.streamId, list)];
616
658
  if (existedUserStream) {
617
- if (param.connectorType === _type2.FcrRoomConnectorType.PSTN) {
659
+ if (param.connectorType === _agoraEduCore.FcrRoomConnectorType.PSTN) {
618
660
  existedUserStream.setAudioStream(stream);
619
661
  } else {
620
662
  existedUserStream.setVideoStream(stream);
621
663
  }
622
- var _index = _this4._insertByPriority(existedUserStream, list, limitCount);
623
- _this4._observer.notifyObservers(placement === 'main-list' ? 'onMainListUpdated' : 'onFoldListUpdated', _index);
664
+ var index = _this4._insertByPriority(existedUserStream, list, limitCount);
665
+ _this4._observer.notifyObservers(placement === 'main-list' ? 'onMainListUpdated' : 'onFoldListUpdated', index);
624
666
  }
625
667
  };
626
668
  var handleUserInfoUpdated = function handleUserInfoUpdated(user, list, limitCount, placement) {
@@ -638,8 +680,9 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
638
680
  });
639
681
  };
640
682
  if ('streamId' in param) {
641
- handleStreamInfoUpdated(param, this.mainList, this.mainListLimitedCount, 'main-list');
642
- handleStreamInfoUpdated(param, this.foldList, this.foldListLimitedCount, 'fold-list');
683
+ var streamCopy = this.copyStreamInfo(param);
684
+ handleStreamInfoUpdated(streamCopy, this.mainList, this.mainListLimitedCount, 'main-list');
685
+ handleStreamInfoUpdated(streamCopy, this.foldList, this.foldListLimitedCount, 'fold-list');
643
686
  } else {
644
687
  handleUserInfoUpdated(param, this.mainList, this.mainListLimitedCount, 'main-list');
645
688
  handleUserInfoUpdated(param, this.foldList, this.foldListLimitedCount, 'fold-list');
@@ -649,6 +692,7 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
649
692
  key: "delete",
650
693
  value: function _delete(stream) {
651
694
  var _this5 = this;
695
+ var streamCopy = this.copyStreamInfo(stream);
652
696
  var handlePSTNStreamDeleted = function handlePSTNStreamDeleted(stream, list, placement) {
653
697
  var index = _this5._findItemIndexWithAudioStreamId(stream.streamId, list);
654
698
  var existedUserStream = list[index];
@@ -662,9 +706,9 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
662
706
  }
663
707
  }
664
708
  };
665
- if (stream.connectorType === _type2.FcrRoomConnectorType.PSTN) {
666
- handlePSTNStreamDeleted(stream, this.mainList, 'main-list');
667
- handlePSTNStreamDeleted(stream, this.foldList, 'fold-list');
709
+ if (stream.connectorType === _agoraEduCore.FcrRoomConnectorType.PSTN) {
710
+ handlePSTNStreamDeleted(streamCopy, this.mainList, 'main-list');
711
+ handlePSTNStreamDeleted(streamCopy, this.foldList, 'fold-list');
668
712
  } else {
669
713
  var handleVideoStreamDeleted = function handleVideoStreamDeleted(streamId, list, placement) {
670
714
  var existStreamIndex = list.findIndex(function (item) {
@@ -676,14 +720,14 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
676
720
  list.splice(existStreamIndex, 1);
677
721
  _this5._observer.notifyObservers(placement === 'main-list' ? 'onMainListRemoved' : 'onFoldListRemoved', existStreamIndex);
678
722
  };
679
- handleVideoStreamDeleted(stream.streamId, this.mainList, 'main-list');
680
- handleVideoStreamDeleted(stream.streamId, this.foldList, 'fold-list');
723
+ handleVideoStreamDeleted(streamCopy.streamId, this.mainList, 'main-list');
724
+ handleVideoStreamDeleted(streamCopy.streamId, this.foldList, 'fold-list');
681
725
  }
682
726
  // if it is the last screen share stream of the user, remove the screen sharing flag
683
727
 
684
- if (stream.videoSourceType === _type3.AgoraRtcVideoSourceType.SCREEN) {
685
- this._syncHasScreenSharing(false, stream.owner.userId, this.mainList, this.mainListLimitedCount, 'main-list');
686
- this._syncHasScreenSharing(false, stream.owner.userId, this.foldList, this.foldListLimitedCount, 'fold-list');
728
+ if (stream.videoSourceType === _agoraEduCore.FcrVideoSourceType.SCREEN) {
729
+ this._syncHasScreenSharing(false, streamCopy.owner.userId, this.mainList, this.mainListLimitedCount, 'main-list');
730
+ this._syncHasScreenSharing(false, streamCopy.owner.userId, this.foldList, this.foldListLimitedCount, 'fold-list');
687
731
  }
688
732
  }
689
733
  }, {
@@ -799,6 +843,12 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
799
843
  value: function removeObserver(observer) {
800
844
  this._observer.removeObserver(observer);
801
845
  }
846
+ }, {
847
+ key: "copyStreamInfo",
848
+ value: function copyStreamInfo(stream) {
849
+ var streamCopy = Object.assign({}, stream);
850
+ return streamCopy;
851
+ }
802
852
  }, {
803
853
  key: "_syncHasScreenSharing",
804
854
  value: function _syncHasScreenSharing(enable, userId, list, limitCount, placement) {
@@ -817,14 +867,14 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
817
867
  });
818
868
  } else {
819
869
  var remainingShare = list.some(function (item) {
820
- return item.userId === userId && (item.type === _type.FcrUIWindowType.BOARD || item.videoSourceType === _type3.AgoraRtcVideoSourceType.SCREEN);
870
+ return item.userId === userId && (item.type === _type.FcrUIWindowType.BOARD || item.videoSourceType === _agoraEduCore.FcrVideoSourceType.SCREEN);
821
871
  });
822
872
  if (!remainingShare) {
823
873
  list.forEach(function (item) {
824
874
  if (item.userId === userId) {
825
875
  item.setHasScreenSharing(enable);
826
- var _index2 = _this9._insertByPriority(item, list, limitCount);
827
- _this9._observer.notifyObservers(placement === 'main-list' ? 'onMainListUpdated' : 'onFoldListUpdated', _index2);
876
+ var index = _this9._insertByPriority(item, list, limitCount);
877
+ _this9._observer.notifyObservers(placement === 'main-list' ? 'onMainListUpdated' : 'onFoldListUpdated', index);
828
878
  }
829
879
  });
830
880
  }
@@ -931,7 +981,7 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
931
981
  }, {
932
982
  key: "_insertNewData",
933
983
  value: function _insertNewData(stream, list, limitCount, isMySelf, placement) {
934
- var videoWindowData = new FcrUIVideoWindowDataImpl(_type.FcrUIWindowType.VIDEO, stream.connectorType === _type2.FcrRoomConnectorType.PSTN ? {
984
+ var videoWindowData = new FcrUIVideoWindowDataImpl(_type.FcrUIWindowType.VIDEO, stream.connectorType === _agoraEduCore.FcrRoomConnectorType.PSTN ? {
935
985
  audioStream: stream
936
986
  } : {
937
987
  videoStream: stream
@@ -942,15 +992,16 @@ var FcrUIVideoWindowDataSource = exports.FcrUIVideoWindowDataSource = /*#__PURE_
942
992
  }]);
943
993
  }();
944
994
  _FcrUIVideoWindowDataSource = FcrUIVideoWindowDataSource;
945
- var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIVideoWindowDataSource, [[_mobx.observable, 1, "spotlightEnabled"], [_mobx.observable, 1, "layoutType"], [_mobx.observable, 1, "pinLimitedCount"], [_mobx.observable, 1, "mainListLimitedCount"], [_mobx.observable, 1, "foldListLimitedCount"], [_mobx.observable, 1, "mainList"], [_mobx.observable, 1, "foldList"], [_setSpotlightEnabledDecs2, 18, "setSpotlightEnabled"], [_setLayoutDecs, 18, "setLayout"], [_onSpotlightRemovedDecs, 18, "onSpotlightRemoved"], [_resetListDecs, 18, "resetList"], [_addBoardDecs, 18, "addBoard"], [_updateBoardDecs, 18, "updateBoard"], [_removeBoardDecs, 18, "removeBoard"], [_mergePstnStreamOrInsertNewDataDecs, 18, "_mergePstnStreamOrInsertNewData"], [_addDecs, 18, "add"], [_updateDecs, 18, "update"], [_deleteDecs, 18, "delete"], [_addPinDecs, 18, "addPin"], [_removePinDecs, 18, "removePin"], [_setSpeakerSpotlightDecs2, 18, "setSpeakerSpotlight"], [_toggleMainStreamDecs, 18, "toggleMainStream"], [_insertBeginningByPriorityDecs, 18, "_insertBeginningByPriority"], [_insertEndByPriorityDecs, 18, "_insertEndByPriority"], [_findInsertBeginningIndexDecs, 18, "_findInsertBeginningIndex"], [_findInsertEndIndexDecs, 18, "_findInsertEndIndex"], [_insertBoardDecs, 18, "_insertBoard"], [_insertNewDataDecs, 18, "_insertNewData"]], []).e, 8);
995
+ var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIVideoWindowDataSource, [[_mobx.observable, 1, "spotlightEnabled"], [_mobx.observable, 1, "layoutType"], [_mobx.observable, 1, "manualLayout"], [_mobx.observable, 1, "pinLimitedCount"], [_mobx.observable, 1, "mainListLimitedCount"], [_mobx.observable, 1, "foldListLimitedCount"], [_mobx.observable, 1, "mainList"], [_mobx.observable, 1, "foldList"], [_setSpotlightEnabledDecs2, 18, "setSpotlightEnabled"], [_setLayoutDecs, 18, "setLayout"], [_onSpotlightRemovedDecs, 18, "onSpotlightRemoved"], [_resetListDecs, 18, "resetList"], [_addBoardDecs, 18, "addBoard"], [_updateBoardDecs, 18, "updateBoard"], [_removeBoardDecs, 18, "removeBoard"], [_mergePstnStreamOrInsertNewDataDecs, 18, "_mergePstnStreamOrInsertNewData"], [_addDecs, 18, "add"], [_updateDecs, 18, "update"], [_deleteDecs, 18, "delete"], [_addPinDecs, 18, "addPin"], [_removePinDecs, 18, "removePin"], [_setSpeakerSpotlightDecs2, 18, "setSpeakerSpotlight"], [_toggleMainStreamDecs, 18, "toggleMainStream"], [_insertBeginningByPriorityDecs, 18, "_insertBeginningByPriority"], [_insertEndByPriorityDecs, 18, "_insertEndByPriority"], [_findInsertBeginningIndexDecs, 18, "_findInsertBeginningIndex"], [_findInsertEndIndexDecs, 18, "_findInsertEndIndex"], [_insertBoardDecs, 18, "_insertBoard"], [_insertNewDataDecs, 18, "_insertNewData"]], []).e, 9);
946
996
  _init_spotlightEnabled = _applyDecs$e2[0];
947
997
  _init_layoutType = _applyDecs$e2[1];
948
- _init_pinLimitedCount = _applyDecs$e2[2];
949
- _init_mainListLimitedCount = _applyDecs$e2[3];
950
- _init_foldListLimitedCount = _applyDecs$e2[4];
951
- _init_mainList = _applyDecs$e2[5];
952
- _init_foldList = _applyDecs$e2[6];
953
- _initProto2 = _applyDecs$e2[7];
998
+ _init_manualLayout = _applyDecs$e2[2];
999
+ _init_pinLimitedCount = _applyDecs$e2[3];
1000
+ _init_mainListLimitedCount = _applyDecs$e2[4];
1001
+ _init_foldListLimitedCount = _applyDecs$e2[5];
1002
+ _init_mainList = _applyDecs$e2[6];
1003
+ _init_foldList = _applyDecs$e2[7];
1004
+ _initProto2 = _applyDecs$e2[8];
954
1005
  var FcrUISpeakerSpotlightPool = exports.FcrUISpeakerSpotlightPool = /*#__PURE__*/function () {
955
1006
  function FcrUISpeakerSpotlightPool() {
956
1007
  (0, _classCallCheck2["default"])(this, FcrUISpeakerSpotlightPool);
@@ -986,11 +1037,11 @@ var FcrUISpeakerSpotlightPool = exports.FcrUISpeakerSpotlightPool = /*#__PURE__*
986
1037
  try {
987
1038
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
988
1039
  var _step$value = (0, _slicedToArray2["default"])(_step.value, 2),
989
- _streamId2 = _step$value[0],
1040
+ streamId = _step$value[0],
990
1041
  time = _step$value[1];
991
1042
  if (now - time - _this10.duration * 1000 >= 0) {
992
- _this10.streams["delete"](_streamId2);
993
- _this10._observer.notifyObservers('onRemoved', _streamId2);
1043
+ _this10.streams["delete"](streamId);
1044
+ _this10._observer.notifyObservers('onRemoved', streamId);
994
1045
  }
995
1046
  }
996
1047
  } catch (err) {
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import store from './store';
3
2
  export declare const StoreContext: import("react").Context<store>;
@@ -1,10 +1,10 @@
1
- import { FcrRoomControl } from 'agora-edu-core/lib/room-control';
2
1
  import { UIModule } from '../../base';
3
2
  import { FcrUIEventStore } from '../../common/event-store';
3
+ import { FcrBaseRoomControl } from 'agora-edu-core/lib/room-control/type';
4
4
  export declare class LiveStreamingUIModule extends UIModule {
5
5
  private _store;
6
6
  constructor({ roomControl, uiEventStore, }: {
7
- roomControl: FcrRoomControl;
7
+ roomControl: FcrBaseRoomControl;
8
8
  uiEventStore: FcrUIEventStore;
9
9
  });
10
10
  getComponent(): import("react/jsx-runtime").JSX.Element;
@@ -14,8 +14,8 @@ var _jsxRuntime = require("react/jsx-runtime");
14
14
  var App = (0, _root.hot)(function () {
15
15
  return null;
16
16
  });
17
- _reactDom["default"].render( /*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
18
- window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
17
+ _reactDom["default"].render(/*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
18
+ window.__DEV_ENGINE_IS_READY__.then(/*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
19
19
  var engine, roomId, roomControl, roomConfig, uiEventStore, uiModule, App;
20
20
  return _regenerator["default"].wrap(function _callee$(_context) {
21
21
  while (1) switch (_context.prev = _context.next) {
@@ -29,6 +29,7 @@ window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["defaul
29
29
  roomConfig = {
30
30
  userRole: _type.FcrUserRole.HOST,
31
31
  userName: 'test-user',
32
+ roomToken: window.__DEV_USER_TOKEN__,
32
33
  streamLatency: _type.FcrStreamLatencyLevel.ULTRA_LOW,
33
34
  createStreamConfigs: []
34
35
  };
@@ -50,7 +51,7 @@ window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["defaul
50
51
  children: uiModule.getComponent()
51
52
  });
52
53
  });
53
- _reactDom["default"].render( /*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
54
+ _reactDom["default"].render(/*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
54
55
  case 12:
55
56
  case "end":
56
57
  return _context.stop();