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
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.LanguageSelect = void 0;
9
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
10
+ var _i18n = require("agora-ui-foundation/lib/i18n");
11
+ var _select = require("agora-ui-foundation/lib/components/select");
12
+ var _mobxReact = require("mobx-react");
13
+ var _icon = require("agora-ui-foundation/lib/components/icon");
14
+ var _type = require("agora-ui-foundation/lib/components/icon/type");
15
+ var _jsxRuntime = require("react/jsx-runtime");
16
+ var LanguageSelect = exports.LanguageSelect = (0, _mobxReact.observer)(function (_ref) {
17
+ var size = _ref.size,
18
+ styleType = _ref.styleType,
19
+ blurred = _ref.blurred,
20
+ languageId = _ref.languageId,
21
+ setLanguage = _ref.setLanguage,
22
+ languageList = _ref.languageList;
23
+ var t = (0, _i18n.useI18n)();
24
+ return languageList.length > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_select.FcrSelect, {
25
+ options: (0, _toConsumableArray2["default"])(languageList),
26
+ value: languageId,
27
+ onChange: function onChange(v) {
28
+ return setLanguage(v);
29
+ },
30
+ disabled: languageList.length === 0,
31
+ blurred: blurred,
32
+ size: size,
33
+ styleType: styleType
34
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
35
+ className: "fcr-device-settings-video__device-select-no-device",
36
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
37
+ size: 20,
38
+ type: _type.FcrIconType.FCR_SETTING_NONE,
39
+ colors: {
40
+ iconPrimary: 'var(--fcr_ui_scene_white10)'
41
+ }
42
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
43
+ colors: {
44
+ iconPrimary: 'var(--fcr_ui_scene_white10)'
45
+ },
46
+ type: _type.FcrIconType.FCR_DROPDOWN,
47
+ size: 24
48
+ })]
49
+ });
50
+ });
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ import './index.css';
3
+ export declare const TranslateSettings: FC;
4
+ export default TranslateSettings;
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.TranslateSettings = void 0;
9
+ require("core-js/modules/es.error.to-string.js");
10
+ require("core-js/modules/es.array.map.js");
11
+ require("core-js/modules/es.date.to-string.js");
12
+ require("core-js/modules/es.number.constructor.js");
13
+ require("core-js/modules/es.object.to-string.js");
14
+ require("core-js/modules/es.regexp.to-string.js");
15
+ require("core-js/modules/esnext.async-iterator.map.js");
16
+ require("core-js/modules/esnext.iterator.map.js");
17
+ var _react = require("react");
18
+ var _i18n = require("agora-ui-foundation/lib/i18n");
19
+ var _useNamespace = require("../common/useNamespace");
20
+ var _classnames = _interopRequireDefault(require("classnames"));
21
+ var _constant = require("../../../utilities/constant");
22
+ var _languageSelect = require("./language-select");
23
+ var _radio = require("agora-ui-foundation/lib/components/radio");
24
+ require("./index.css");
25
+ var _mobxReact = require("mobx-react");
26
+ var _context = require("../context");
27
+ var _checkbox = require("agora-ui-foundation/lib/components/checkbox");
28
+ var _jsxRuntime = require("react/jsx-runtime");
29
+ var TranslateSettings = exports.TranslateSettings = (0, _mobxReact.observer)(function () {
30
+ var ns = (0, _useNamespace.useNamespace)('translate-settings');
31
+ var t = (0, _i18n.useI18n)();
32
+ var _useContext = (0, _react.useContext)(_context.StoreContext),
33
+ setting = _useContext.setting,
34
+ setSetting = _useContext.setSetting;
35
+ var languageList = (0, _react.useMemo)(function () {
36
+ return [{
37
+ text: t('fmt_ai_subtitles_setting_options_english'),
38
+ value: '1'
39
+ }, {
40
+ text: t('fmt_ai_subtitles_setting_options_chinese'),
41
+ value: '2'
42
+ }];
43
+ }, [t]);
44
+ var interpreterOptions = (0, _react.useMemo)(function () {
45
+ return [{
46
+ label: t('fmt_ai_transcriptions_setting_option_noton'),
47
+ addition: '',
48
+ value: 0
49
+ }, {
50
+ label: t('fmt_ai_transcriptions_setting_option_english_translation'),
51
+ addition: '',
52
+ value: 1
53
+ }, {
54
+ label: t('fmt_ai_transcriptions_setting_option_translate'),
55
+ addition: '',
56
+ value: 2
57
+ }];
58
+ }, [t]);
59
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
60
+ className: ns.b(),
61
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
62
+ className: (0, _classnames["default"])(ns.e('section'), ns.e('section-source')),
63
+ id: _constant.HighlightElement.TRANSLATE_SOURCE,
64
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
65
+ className: ns.e('section-title'),
66
+ children: t('fmt_ai_transcriptions_setting_label_source')
67
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
68
+ className: ns.e('section-sub-title'),
69
+ children: t('fmt_ai_transcriptions_setting_label_live_language')
70
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
71
+ className: ns.e('translate-language-select'),
72
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_languageSelect.LanguageSelect, {
73
+ languageId: "1",
74
+ setLanguage: function setLanguage() {},
75
+ languageList: languageList
76
+ })
77
+ })]
78
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
79
+ className: (0, _classnames["default"])(ns.e('section'), ns.e('section-target')),
80
+ id: _constant.HighlightElement.TRANSLATE_TARGET,
81
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
82
+ className: ns.e('section-title'),
83
+ children: t('fmt_ai_transcriptions_setting_label_translate_to')
84
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
85
+ className: ns.e('section-sub-title'),
86
+ children: t('fmt_ai_transcriptions_setting_label_effects')
87
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
88
+ className: ns.e('translate-language-select'),
89
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_languageSelect.LanguageSelect, {
90
+ languageId: "2",
91
+ setLanguage: function setLanguage() {},
92
+ languageList: languageList
93
+ })
94
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
95
+ className: ns.e('show-two-language'),
96
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
97
+ size: "small",
98
+ label: t('fmt_ai_transcriptions_setting_option_bilingualism'),
99
+ checked: false,
100
+ onChange: function onChange(v) {}
101
+ })
102
+ })]
103
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
104
+ className: (0, _classnames["default"])(ns.e('section'), ns.e('section-interpreter')),
105
+ id: _constant.HighlightElement.TRANSLATE_INTERPRETER,
106
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
107
+ className: ns.e('section-title'),
108
+ children: t('fmt_ai_transcriptions_setting_label_translator')
109
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
110
+ className: ns.e('section-sub-title'),
111
+ children: t('fmt_ai_transcriptions_setting_label_visable_range')
112
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
113
+ className: ns.e('interpreter-mode'),
114
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_radio.FcrRadioGroup, {
115
+ value: setting.noiseReduce.toString(),
116
+ onChange: function onChange(v) {
117
+ return setSetting({
118
+ noiseReduce: Number(v)
119
+ });
120
+ },
121
+ children: interpreterOptions.map(function (item) {
122
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_radio.FcrRadio, {
123
+ value: item.value.toString(),
124
+ label: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
125
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
126
+ children: item.label
127
+ }), item.addition && /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
128
+ className: ns.e('radio-label-addition'),
129
+ children: ["\uFF08", item.addition, "\uFF09"]
130
+ })]
131
+ })
132
+ }, item.value);
133
+ })
134
+ })
135
+ })]
136
+ })]
137
+ });
138
+ });
139
+ var _default = exports["default"] = TranslateSettings;
@@ -33,7 +33,6 @@
33
33
  align-items: center;
34
34
  padding: 10px 12px;
35
35
  flex: 1;
36
- max-width: 76%;
37
36
  }
38
37
 
39
38
  .fcr-device-settings-video__beauty-slider-value {
@@ -56,10 +55,10 @@
56
55
  .fcr-device-settings-video__video-flip-container {
57
56
  position: absolute;
58
57
  z-index: 10;
59
- right: 8px;
60
- bottom: 8px;
58
+ right: 6px;
59
+ bottom: 6px;
61
60
  border-radius: var(--fcr_cornerradius_s);
62
- background: var(--fcr_mobile_ui_scene_color_popup_block4);
61
+ background: var(--fcr_ui_scene_click);
63
62
  }
64
63
 
65
64
  .fcr-device-settings-video__video-flip {
@@ -67,6 +66,10 @@
67
66
  border: none;
68
67
  }
69
68
 
69
+ .fcr-device-settings-video__video-flip:active {
70
+ background: var(--fcr_ui_scene_click);
71
+ }
72
+
70
73
  .fcr-device-settings-video__tab-wrapper {
71
74
  margin-top: 20px;
72
75
  }
@@ -162,7 +165,6 @@
162
165
  .fcr-virtual-background-setting__container {
163
166
  display: flex;
164
167
  flex-direction: column;
165
- gap: 10px;
166
168
  }
167
169
 
168
170
  .fcr-device-settings-video__tips {
@@ -172,6 +174,8 @@
172
174
  display: flex;
173
175
  align-items: center;
174
176
  justify-content: center;
177
+ margin: 20px 0px;
178
+ color: var(--fcr_ui_scene_icontext7);
175
179
  }
176
180
 
177
181
  .fcr-virtual-background-setting__virtual-list {
@@ -215,6 +219,11 @@
215
219
  flex-direction: column;
216
220
  }
217
221
 
222
+ .fcr-virtual-background-setting__virtual-item:not(:first-child):hover
223
+ .fcr-virtual-background-setting__virtual-source {
224
+ transform: scale(1.05);
225
+ }
226
+
218
227
  .fcr-virtual-background-setting__virtual-video-source {
219
228
  position: relative;
220
229
  width: 100%;
@@ -291,7 +300,7 @@
291
300
  font-weight: 300;
292
301
  font-size: 12px;
293
302
  line-height: 12px;
294
- color: var(--fcr_ui_scene_icontext2);
303
+ color: var(--fcr_ui_scene_icontext1);
295
304
  padding: 10px 0px 8px;
296
305
  }
297
306
 
@@ -16,6 +16,7 @@ var _constant = require("../../../utilities/constant");
16
16
  var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
17
17
  var _icon = require("agora-ui-foundation/lib/components/icon");
18
18
  var _type = require("agora-ui-foundation/lib/components/icon/type");
19
+ var _env = require("agora-foundation/lib/utilities/env");
19
20
  var _jsxRuntime = require("react/jsx-runtime");
20
21
  var VideoSettingsBasic = exports.VideoSettingsBasic = (0, _mobxReact.observer)(function (_ref) {
21
22
  var cameraDeviceId = _ref.cameraDeviceId,
@@ -69,7 +70,7 @@ var VideoSettingsBasic = exports.VideoSettingsBasic = (0, _mobxReact.observer)(f
69
70
  videoHD: v
70
71
  });
71
72
  }
72
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
73
+ }), (0, _env.isElectron)() && /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
73
74
  size: "small",
74
75
  label: t('fmt_internalsetting_options_adjustlowlight'),
75
76
  checked: setting.videoLowLight,
@@ -102,7 +103,7 @@ var VideoSettingsBasic = exports.VideoSettingsBasic = (0, _mobxReact.observer)(f
102
103
  });
103
104
  }
104
105
  })]
105
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
106
+ }), (0, _env.isElectron)() && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
106
107
  className: ns.e('basic-form'),
107
108
  id: _constant.HighlightElement.VIDEO_BASIC,
108
109
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
@@ -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");
@@ -30,6 +32,7 @@ var _virtualBackgroundSetting = require("../../device-pretest/settings/virtual-b
30
32
  var _beauty = require("../../device-pretest/settings/beauty");
31
33
  var _videoSettingsBasic = require("./video-settings-basic");
32
34
  var _i18n = require("agora-ui-foundation/lib/i18n");
35
+ var _env = require("agora-foundation/lib/utilities/env");
33
36
  var _jsxRuntime = require("react/jsx-runtime");
34
37
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
35
38
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
@@ -136,7 +139,8 @@ var VideoSettings = exports.VideoSettings = (0, _mobxReact.observer)(function (p
136
139
  },
137
140
  stopLocalVideo: stopVideo,
138
141
  currentVideoViewType: currentVideoViewType,
139
- handleVideoViewChange: handleVideoViewChange
142
+ handleVideoViewChange: handleVideoViewChange,
143
+ showRotation: (0, _env.isElectron)()
140
144
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_videoEffect.VideoEffect, {
141
145
  currentTab: activeTab,
142
146
  handleActiveTab: handleActiveTab,
@@ -30,6 +30,8 @@ var _audioSettings = _interopRequireDefault(require("./audio-settings/audio-sett
30
30
  var _videoSettings = _interopRequireDefault(require("./video-settings/video-settings"));
31
31
  var _storageSettings = _interopRequireDefault(require("./storage-settings/storage-settings"));
32
32
  var _generalSettings = _interopRequireDefault(require("./general-settings/general-settings"));
33
+ var _translateSettings = _interopRequireDefault(require("./translate-settings/translate-settings"));
34
+ var _minutesSettings = _interopRequireDefault(require("./minutes-settings/minutes-settings"));
33
35
  var _jsxRuntime = require("react/jsx-runtime");
34
36
  // import { State } from './state';
35
37
 
@@ -39,9 +41,9 @@ var DeviceSettingsView = exports.DeviceSettingsView = (0, _mobxReact.observer)(f
39
41
  setDialogConfig = _useContext.setDialogConfig,
40
42
  setSettingVideoOpened = _useContext.setSettingVideoOpened;
41
43
  var t = (0, _i18n.useI18n)();
42
- var tabContents = (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, _store.DeviceSettingTab.GENERAL, /*#__PURE__*/(0, _jsxRuntime.jsx)(_generalSettings["default"], {})), _store.DeviceSettingTab.AUDIO, /*#__PURE__*/(0, _jsxRuntime.jsx)(_audioSettings["default"], {})), _store.DeviceSettingTab.VIDEO, /*#__PURE__*/(0, _jsxRuntime.jsx)(_videoSettings["default"], {
44
+ var tabContents = (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, _store.DeviceSettingTab.GENERAL, /*#__PURE__*/(0, _jsxRuntime.jsx)(_generalSettings["default"], {})), _store.DeviceSettingTab.AUDIO, /*#__PURE__*/(0, _jsxRuntime.jsx)(_audioSettings["default"], {})), _store.DeviceSettingTab.VIDEO, /*#__PURE__*/(0, _jsxRuntime.jsx)(_videoSettings["default"], {
43
45
  videoActiveTab: dialogConfig.videoActiveTab
44
- })), _store.DeviceSettingTab.STORAGE, /*#__PURE__*/(0, _jsxRuntime.jsx)(_storageSettings["default"], {})), _store.DeviceSettingTab.STATE, /*#__PURE__*/(0, _jsxRuntime.jsx)(_state["default"], {}));
46
+ })), _store.DeviceSettingTab.STORAGE, /*#__PURE__*/(0, _jsxRuntime.jsx)(_storageSettings["default"], {})), _store.DeviceSettingTab.STATE, /*#__PURE__*/(0, _jsxRuntime.jsx)(_state["default"], {})), _store.DeviceSettingTab.TRANSLATE, /*#__PURE__*/(0, _jsxRuntime.jsx)(_translateSettings["default"], {})), _store.DeviceSettingTab.MINUTES, /*#__PURE__*/(0, _jsxRuntime.jsx)(_minutesSettings["default"], {}));
45
47
  var ns = (0, _useNamespace.useNamespace)('device-settings');
46
48
  var getListItemCls = function getListItemCls(tabKey) {
47
49
  return (0, _classnames["default"])(ns.e('nav-list-item'), ns.is('active', dialogConfig.activeTab === tabKey));
@@ -112,6 +114,36 @@ var DeviceSettingsView = exports.DeviceSettingsView = (0, _mobxReact.observer)(f
112
114
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
113
115
  children: t('fmt_setting_option_Video')
114
116
  })]
117
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("li", {
118
+ className: getListItemCls(_store.DeviceSettingTab.TRANSLATE),
119
+ onClick: tabClickHandler(_store.DeviceSettingTab.TRANSLATE),
120
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
121
+ className: getSurroundingCls('purple'),
122
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
123
+ type: _type.FcrIconType.FCR_MOBILE_SUBTITIES_ON,
124
+ colors: {
125
+ iconPrimary: 'white'
126
+ },
127
+ size: 24
128
+ })
129
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
130
+ children: t('fmt_ai_subtitles_setting_label_translation_setting')
131
+ })]
132
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("li", {
133
+ className: getListItemCls(_store.DeviceSettingTab.MINUTES),
134
+ onClick: tabClickHandler(_store.DeviceSettingTab.MINUTES),
135
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
136
+ className: getSurroundingCls('purple'),
137
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
138
+ type: _type.FcrIconType.FCR_MEETINGRECORD,
139
+ colors: {
140
+ iconPrimary: 'white'
141
+ },
142
+ size: 24
143
+ })
144
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
145
+ children: t('fmt_ai_summary_setting_label_AI')
146
+ })]
115
147
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("li", {
116
148
  className: getListItemCls(_store.DeviceSettingTab.STATE),
117
149
  onClick: tabClickHandler(_store.DeviceSettingTab.STATE),
@@ -1,19 +1,21 @@
1
- import { FcrDesktopMediaControl, FcrMainRoomControl } from 'agora-edu-core';
1
+ import { FcrDesktopMediaControl, FcrBaseRoomControl } from 'agora-edu-core';
2
2
  import { UIModule } from '../../base';
3
3
  import './index.css';
4
4
  import { FcrDeviceStore } from '../../common/device-store';
5
5
  import { FcrSecurityStore } from '../../common/security-store';
6
6
  import { FcrUIEventStore } from '../../common/event-store';
7
7
  import { FcrDeviceStreamStore } from '../../common/device-stream-store';
8
+ import { FcrUISceneConfig } from '../../type';
8
9
  export declare class ShareScreenUIModule extends UIModule {
9
10
  private _store;
10
11
  constructor(args: {
11
- roomControl: FcrMainRoomControl;
12
+ roomControl: FcrBaseRoomControl;
12
13
  mediaControl: FcrDesktopMediaControl;
13
14
  deviceStore: FcrDeviceStore;
14
15
  securityStore: FcrSecurityStore;
15
16
  uiEventStore: FcrUIEventStore;
16
17
  deviceStreamStore: FcrDeviceStreamStore;
18
+ config: FcrUISceneConfig;
17
19
  });
18
20
  getShareState(): void;
19
21
  startShareScreen(): void;
@@ -19,28 +19,30 @@ var _jsxRuntime = require("react/jsx-runtime");
19
19
  var App = (0, _root.hot)(function () {
20
20
  return null;
21
21
  });
22
- _reactDom["default"].render( /*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
23
- window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
24
- var engine, roomId, roomControl, userName, deviceStore, uiEventStore, securityStore, dialogModule, uiModule, App;
22
+ _reactDom["default"].render(/*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
23
+ window.__DEV_ENGINE_IS_READY__.then(/*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
24
+ var engine, roomId, token, roomControl, userName, deviceStore, uiEventStore, securityStore, dialogModule, uiModule, App;
25
25
  return _regenerator["default"].wrap(function _callee$(_context) {
26
26
  while (1) switch (_context.prev = _context.next) {
27
27
  case 0:
28
28
  engine = window.__DEV_ENGINE__;
29
29
  roomId = window.__DEV_ROOM_ID__;
30
- _context.next = 4;
30
+ token = window.__DEV_USER_TOKEN__;
31
+ _context.next = 5;
31
32
  return engine.login();
32
- case 4:
33
- roomControl = engine.createRoomControl(roomId);
33
+ case 5:
34
+ roomControl = engine.createMainRoomControl(roomId);
34
35
  userName = 'test-user';
35
- deviceStore = new _deviceStore.FcrDeviceStore(userName, engine.getMediaControl());
36
- _context.next = 9;
36
+ deviceStore = new _deviceStore.FcrDeviceStore(userName, engine.getDesktopMediaControl());
37
+ _context.next = 10;
37
38
  return roomControl.join({
38
39
  userRole: _type.FcrUserRole.HOST,
39
40
  userName: userName,
41
+ roomToken: token,
40
42
  streamLatency: _type.FcrStreamLatencyLevel.ULTRA_LOW,
41
43
  createStreamConfigs: []
42
44
  });
43
- case 9:
45
+ case 10:
44
46
  uiEventStore = new _eventStore.FcrUIEventStore();
45
47
  securityStore = new _securityStore.FcrSecurityStore(roomControl.getPrivilegeControl(), roomControl.getUserControl(), roomControl.getStreamControl(), roomControl.getRoomSessionControl(), uiEventStore);
46
48
  dialogModule = new _dialog.DialogUIModule({
@@ -54,17 +56,18 @@ window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["defaul
54
56
  });
55
57
  uiModule = new _.ShareScreenUIModule({
56
58
  roomControl: roomControl,
57
- mediaControl: engine.getMediaControl(),
59
+ mediaControl: engine.getDesktopMediaControl(),
58
60
  deviceStore: deviceStore,
59
61
  deviceStreamStore: new _deviceStreamStore.FcrDeviceStreamStore({
60
- mediaControl: engine.getMediaControl(),
62
+ mediaControl: engine.getDesktopMediaControl(),
61
63
  roomControl: roomControl,
62
64
  securityStore: securityStore,
63
65
  deviceStore: deviceStore,
64
66
  uiEventStore: uiEventStore
65
67
  }),
66
68
  securityStore: securityStore,
67
- uiEventStore: uiEventStore
69
+ uiEventStore: uiEventStore,
70
+ config: {}
68
71
  });
69
72
  App = (0, _root.hot)(function () {
70
73
  (0, _hooks.useUnmount)(function () {
@@ -87,8 +90,8 @@ window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["defaul
87
90
  }), uiModule.getComponent(), dialogModule.getComponent()]
88
91
  });
89
92
  });
90
- _reactDom["default"].render( /*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
91
- case 15:
93
+ _reactDom["default"].render(/*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
94
+ case 16:
92
95
  case "end":
93
96
  return _context.stop();
94
97
  }
@@ -7,6 +7,8 @@ require("core-js/modules/es.object.to-string.js");
7
7
  require("core-js/modules/es.reflect.construct.js");
8
8
  require("core-js/modules/es.string.iterator.js");
9
9
  require("core-js/modules/es.weak-map.js");
10
+ require("core-js/modules/esnext.weak-map.delete-all.js");
11
+ require("core-js/modules/esnext.weak-map.emplace.js");
10
12
  require("core-js/modules/web.dom-collections.iterator.js");
11
13
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
12
14
  var _typeof = require("@babel/runtime/helpers/typeof");
@@ -18,6 +18,8 @@
18
18
  min-height: 550px;
19
19
  overflow: hidden;
20
20
  -webkit-app-region: no-drag;
21
+ background-color: #fff;
22
+ border-radius: var(--fcr_cornerradius_l);
21
23
  }
22
24
 
23
25
  .share-selection-window__share-content {
@@ -9,6 +9,7 @@ exports.ShareSelection = void 0;
9
9
  require("core-js/modules/es.array.includes.js");
10
10
  require("core-js/modules/es.array.iterator.js");
11
11
  require("core-js/modules/es.array.map.js");
12
+ require("core-js/modules/es.array-buffer.constructor.js");
12
13
  require("core-js/modules/es.array-buffer.slice.js");
13
14
  require("core-js/modules/es.data-view.js");
14
15
  require("core-js/modules/es.object.to-string.js");
@@ -46,6 +47,12 @@ require("core-js/modules/es.typed-array.with.js");
46
47
  require("core-js/modules/esnext.array-buffer.detached.js");
47
48
  require("core-js/modules/esnext.array-buffer.transfer.js");
48
49
  require("core-js/modules/esnext.array-buffer.transfer-to-fixed-length.js");
50
+ require("core-js/modules/esnext.async-iterator.map.js");
51
+ require("core-js/modules/esnext.iterator.map.js");
52
+ require("core-js/modules/esnext.typed-array.filter-reject.js");
53
+ require("core-js/modules/esnext.typed-array.group-by.js");
54
+ require("core-js/modules/esnext.typed-array.to-spliced.js");
55
+ require("core-js/modules/esnext.typed-array.unique-by.js");
49
56
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
50
57
  var _card = require("agora-ui-foundation/lib/components/card");
51
58
  var _type = require("agora-rte-sdk/lib/core/rtc/type");
@@ -63,6 +70,8 @@ var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
63
70
  var _i18n = require("agora-ui-foundation/lib/i18n");
64
71
  require("./index.css");
65
72
  var _store = require("../store");
73
+ var _popover = require("agora-ui-foundation/lib/components/popover");
74
+ var _openMicTips = _interopRequireDefault(require("../../../fragments/share-screen-selection/open-mic-tips"));
66
75
  var _jsxRuntime = require("react/jsx-runtime");
67
76
  var ShareSelectionWindowType = /*#__PURE__*/function (ShareSelectionWindowType) {
68
77
  ShareSelectionWindowType["BASIC"] = "basic";
@@ -81,22 +90,37 @@ var ShareSelection = exports.ShareSelection = (0, _mobxReact.observer)(function
81
90
  localUser = _useContext.localUser,
82
91
  localUserRole = _useContext.localUserRole,
83
92
  title = _useContext.title,
93
+ localMicrophoneMute = _useContext.localMicrophoneMute,
84
94
  handleChooseScreen = _useContext.handleChooseScreen,
85
95
  handleStartShare = _useContext.handleStartShare,
86
96
  setShareWithAudioState = _useContext.setShareWithAudioState,
87
97
  setShareAudioProcessingChannel = _useContext.setShareAudioProcessingChannel,
88
98
  closeShareScreenSelection = _useContext.closeShareScreenSelection,
89
- handlerBoardShareStop = _useContext.handlerBoardShareStop;
99
+ handlerBoardShareStop = _useContext.handlerBoardShareStop,
100
+ sendLocalAudioStateEvent = _useContext.sendLocalAudioStateEvent;
90
101
  var _useState = (0, _react.useState)(false),
91
102
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
92
103
  loading = _useState2[0],
93
104
  setLoading = _useState2[1];
105
+ var _useState3 = (0, _react.useState)(false),
106
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
107
+ showOpenMicTips = _useState4[0],
108
+ setShowOpenMicTips = _useState4[1];
94
109
  (0, _react.useEffect)(function () {
95
110
  setLoading(false);
96
111
  return function () {
97
112
  setLoading(false);
98
113
  };
99
114
  }, []);
115
+ var toggleShareWithAudio = function toggleShareWithAudio(target) {
116
+ setShareWithAudioState(target);
117
+ setShowOpenMicTips(target && localMicrophoneMute);
118
+ };
119
+ var openMicAndCloseTips = function openMicAndCloseTips() {
120
+ setShareWithAudioState(true);
121
+ setShowOpenMicTips(false);
122
+ sendLocalAudioStateEvent();
123
+ };
100
124
  var handleOkClick = (0, _react.useCallback)((0, _debounce["default"])(function () {
101
125
  if (currentSelection) {
102
126
  setLoading(true);
@@ -201,11 +225,25 @@ var ShareSelection = exports.ShareSelection = (0, _mobxReact.observer)(function
201
225
  className: "share-selection-window__footer",
202
226
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
203
227
  className: "share-selection-window__footer-action",
204
- children: currentSelection.split('-')[0] !== 'whiteboard' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_shareAudio.ShareAudio, {
205
- shareWithAudio: shareWithAudio,
206
- toggleShareWithAudio: setShareWithAudioState,
207
- currentAudioChannel: currentShareAudioProcessingChannel,
208
- onSwitchAudioChannel: setShareAudioProcessingChannel
228
+ children: currentSelection.split('-')[0] !== 'whiteboard' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
229
+ showArrow: true,
230
+ visible: showOpenMicTips,
231
+ overlayInnerStyle: {
232
+ width: '270px'
233
+ },
234
+ placement: "top",
235
+ content: /*#__PURE__*/(0, _jsxRuntime.jsx)(_openMicTips["default"], {
236
+ onCancel: function onCancel() {
237
+ return toggleShareWithAudio(false);
238
+ },
239
+ onOK: openMicAndCloseTips
240
+ }),
241
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_shareAudio.ShareAudio, {
242
+ shareWithAudio: shareWithAudio,
243
+ toggleShareWithAudio: toggleShareWithAudio,
244
+ currentAudioChannel: currentShareAudioProcessingChannel,
245
+ onSwitchAudioChannel: setShareAudioProcessingChannel
246
+ })
209
247
  })
210
248
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.FcrButton, {
211
249
  disabled: currentSelection.split('-')[0] === 'whiteboard' && !!(boardOwnerUser !== null && boardOwnerUser !== void 0 && boardOwnerUser.userId) || loading,