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
@@ -16,6 +16,7 @@
16
16
  .fcr-layout-aside-active {
17
17
  display: flex;
18
18
  flex-flow: column nowrap;
19
+ z-index: 12;
19
20
  }
20
21
 
21
22
  .fcr-layout-aside-handler {
@@ -121,7 +122,7 @@
121
122
 
122
123
  .fcr-layout-content-expand {
123
124
  height: 0 !important;
124
- z-index: 1;
125
+ z-index: 11;
125
126
  display: flex;
126
127
  align-items: flex-end;
127
128
  justify-content: center;
@@ -155,6 +156,14 @@
155
156
  font-size: 0;
156
157
  }
157
158
 
159
+ .fcr-layout-content-expand button:active {
160
+ outline: none;
161
+ }
162
+
163
+ .fcr-layout-content-expand button:focus {
164
+ outline: none;
165
+ }
166
+
158
167
  .fcr-layout-content-expand svg {
159
168
  transform: rotate(180deg);
160
169
  height: 20px;
@@ -169,15 +178,18 @@
169
178
  flex-flow: row nowrap;
170
179
  justify-content: center;
171
180
  }
181
+
172
182
  .fcr-layout-content-carousel-items {
173
183
  display: flex;
174
184
  flex-flow: row nowrap;
175
185
  justify-content: center;
176
186
  }
187
+
177
188
  .fcr-layout-content-carousel-items .fcr-layout-content-carousel-item {
178
189
  border-radius: var(--fcr_cornerradius_s);
179
190
  overflow: hidden;
180
191
  }
192
+
181
193
  .fcr-layout-content-carousel-items .fcr-layout-content-carousel-item .fcr-member-window-excitation {
182
194
  border-radius: var(--fcr_cornerradius_s);
183
195
  }
@@ -216,10 +228,16 @@
216
228
  justify-content: center;
217
229
  font-size: 0;
218
230
  }
231
+
232
+ .fcr-layout-content-carousel-collapse:active {
233
+ outline: none;
234
+ }
235
+
219
236
  .fcr-layout-content-carousel-collapse:hover {
220
237
  color: var(--fcr_ui_scene_icontext2);
221
238
  background-color: var(--fcr_web_ui_scene_hover2);
222
239
  }
240
+
223
241
  .fcr-layout-content-carousel-collapse > svg {
224
242
  width: 48px;
225
243
  pointer-events: none;
@@ -264,6 +282,7 @@
264
282
  justify-content: center;
265
283
  align-items: center;
266
284
  }
285
+
267
286
  .fcr-layout-content-gallery-return-bar .fcr-button-XXS {
268
287
  height: 20px;
269
288
  margin-left: 24px;
@@ -275,10 +294,16 @@
275
294
  justify-content: center;
276
295
  font-size: 1rem;
277
296
  }
297
+
278
298
  .fcr-layout-content-gallery-row .fcr-layout-content-gallery-row-item {
279
299
  border-radius: var(--fcr_cornerradius_s);
280
300
  overflow: hidden;
281
301
  }
302
+
303
+ .fcr-layout-content-gallery-row .fcr-layout-content-gallery-row-noborder {
304
+ border-radius: 0px;
305
+ }
306
+
282
307
  .fcr-layout-content-gallery-row .fcr-layout-content-gallery-row-item .fcr-member-window-excitation {
283
308
  border-radius: var(--fcr_cornerradius_s);
284
309
  }
@@ -292,8 +317,7 @@
292
317
  .fcr-layout-content-gallery-arrow {
293
318
  pointer-events: auto;
294
319
  position: absolute;
295
- transform: translate(0, -50%);
296
- top: 50%;
320
+ top: calc(100% - 160px);
297
321
  background-color: var(--fcr_web_ui_scene_fill4_popup);
298
322
  border-radius: 8px;
299
323
  box-shadow: var(--fcr_web_light_dropup);
@@ -301,6 +325,7 @@
301
325
  flex-flow: column nowrap;
302
326
  align-items: center;
303
327
  font-size: 12px;
328
+ z-index: 1080;
304
329
  }
305
330
 
306
331
  .fcr-layout-content-gallery-arrow:has(button:disabled) {
@@ -495,6 +520,7 @@
495
520
  border-top-left-radius: 0;
496
521
  border-bottom-left-radius: 0;
497
522
  }
523
+
498
524
  .fcr-user-window-actions-tag:has(~ .fcr-user-window-actions-microphone) {
499
525
  border-top-right-radius: 0;
500
526
  border-bottom-right-radius: 0;
@@ -551,7 +577,7 @@
551
577
  width: 100%;
552
578
  /* overflow: hidden; */
553
579
  transition: height 0s;
554
- z-index: 1;
580
+ z-index: 10;
555
581
  }
556
582
 
557
583
  .fcr-layout-speaker .fcr-layout-content-bar {
@@ -590,7 +616,11 @@
590
616
 
591
617
  .fcr-layout-hovering .fcr-layout-content-bottom,
592
618
  .fcr-layout-hovering .fcr-layout-content-bottom .fcr-layout-content-bar-body {
593
- height: 58px;
619
+ height: 77px;
620
+ width: 100%;
621
+ bottom: 2px;
622
+ z-index: 100;
623
+ position: absolute;
594
624
  }
595
625
 
596
626
  .fcr-layout-hovering .fcr-user-window-actions-top {
@@ -600,9 +630,16 @@
600
630
  .fcr-layout-content-bar--hidden .fcr-layout-content-bar-body {
601
631
  height: 0;
602
632
  }
633
+
603
634
  .fcr-layout-content-bar--hidden.fcr-layout-content-bottom,
604
635
  .fcr-layout-content-bar--hidden.fcr-layout-content-bottom .fcr-layout-content-bar-body {
605
636
  height: 0px;
606
637
  overflow: inherit;
607
638
  position: relative;
608
639
  }
640
+
641
+ .fcr-layout-adapter-div {
642
+ display: flex;
643
+ flex-flow: column nowrap;
644
+ justify-content: flex-end;
645
+ }
@@ -4,6 +4,9 @@ require("core-js/modules/es.array.for-each.js");
4
4
  require("core-js/modules/es.object.define-property.js");
5
5
  require("core-js/modules/es.object.keys.js");
6
6
  require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/esnext.async-iterator.for-each.js");
8
+ require("core-js/modules/esnext.iterator.constructor.js");
9
+ require("core-js/modules/esnext.iterator.for-each.js");
7
10
  require("core-js/modules/web.dom-collections.for-each.js");
8
11
  Object.defineProperty(exports, "__esModule", {
9
12
  value: true
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import LayoutStore from './store';
3
2
  export declare const StoreContext: import("react").Context<LayoutStore>;
@@ -25,3 +25,33 @@
25
25
  position: absolute;
26
26
  z-index: 1000;
27
27
  }
28
+
29
+ .login-confirm-dialog-content {
30
+ display: flex;
31
+ align-items: center;
32
+ justify-content: center;
33
+ flex-direction: column;
34
+ }
35
+
36
+ .login-confirm-dialog-content img {
37
+ margin-top: -36px;
38
+ margin-bottom: 10px;
39
+ }
40
+
41
+ .login-confirm-dialog-title {
42
+ font-weight: 600;
43
+ font-size: 16px;
44
+ margin-bottom: 10px;
45
+ }
46
+
47
+ .login-confirm-dialog-desc {
48
+ margin-bottom: 10px;
49
+ }
50
+
51
+ .login-confirm-dialog-btn {
52
+ width: 100%;
53
+ }
54
+
55
+ .login-confirm-dialog-content .fcr-button {
56
+ width: 100%;
57
+ }
@@ -23,8 +23,8 @@ var _index = require("./index");
23
23
  var _store = _interopRequireDefault(require("./store"));
24
24
  var _type2 = require("./type");
25
25
  require("./index.css");
26
- var _type3 = require("agora-edu-core/lib/type");
27
- var _type4 = require("agora-rte-sdk/lib/core/scene/type");
26
+ var _type3 = require("agora-rte-sdk/lib/core/scene/type");
27
+ var _agoraEduCore = require("agora-edu-core");
28
28
  var _jsxRuntime = require("react/jsx-runtime");
29
29
  var copyRoomId = function copyRoomId() {
30
30
  navigator.clipboard.writeText(window.__DEV_ROOM_ID__).then(function () {
@@ -39,8 +39,8 @@ var App = (0, _root.hot)(function () {
39
39
  children: "Loading..."
40
40
  });
41
41
  });
42
- _reactDom["default"].render( /*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
43
- window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
42
+ _reactDom["default"].render(/*#__PURE__*/(0, _jsxRuntime.jsx)(App, {}), document.querySelector('#root'));
43
+ window.__DEV_ENGINE_IS_READY__.then(/*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
44
44
  var addObserver, bool, sample, connectorTypes, params, layoutUIModule, store, mockUser, App;
45
45
  return _regenerator["default"].wrap(function _callee$(_context) {
46
46
  while (1) switch (_context.prev = _context.next) {
@@ -84,7 +84,7 @@ window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["defaul
84
84
  sample = function sample(a) {
85
85
  return a[Math.random() * a.length | 0];
86
86
  };
87
- connectorTypes = [_type3.FcrRoomConnectorType.NONE, _type3.FcrRoomConnectorType.PSTN, _type3.FcrRoomConnectorType.SIP, _type3.FcrRoomConnectorType.H323];
87
+ connectorTypes = [_agoraEduCore.FcrRoomConnectorType.NONE, _agoraEduCore.FcrRoomConnectorType.PSTN, _agoraEduCore.FcrRoomConnectorType.SIP, _agoraEduCore.FcrRoomConnectorType.H323];
88
88
  params = {
89
89
  deviceStore: {
90
90
  addObserver: addObserver
@@ -157,7 +157,7 @@ window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["defaul
157
157
  videoSourceType: 1,
158
158
  ownerRoleType: 1,
159
159
  sortingPriority: 0,
160
- videoStreamConnectorType: _type4.AgoraRteRoomConnectorType.NONE
160
+ videoStreamConnectorType: _type3.AgoraRteRoomConnectorType.NONE
161
161
  };
162
162
  };
163
163
  window.__layout = store;
@@ -287,16 +287,16 @@ window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["defaul
287
287
  children: ["audioStreamConnectorType:", ' ', /*#__PURE__*/(0, _jsxRuntime.jsxs)("select", {
288
288
  name: "audioStreamConnectorType",
289
289
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("option", {
290
- value: _type3.FcrRoomConnectorType.NONE,
290
+ value: _agoraEduCore.FcrRoomConnectorType.NONE,
291
291
  children: "NONE"
292
292
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("option", {
293
- value: _type3.FcrRoomConnectorType.PSTN,
293
+ value: _agoraEduCore.FcrRoomConnectorType.PSTN,
294
294
  children: "PSTN"
295
295
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("option", {
296
- value: _type3.FcrRoomConnectorType.H323,
296
+ value: _agoraEduCore.FcrRoomConnectorType.H323,
297
297
  children: "H323"
298
298
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("option", {
299
- value: _type3.FcrRoomConnectorType.SIP,
299
+ value: _agoraEduCore.FcrRoomConnectorType.SIP,
300
300
  children: "SIP"
301
301
  })]
302
302
  })]
@@ -366,7 +366,7 @@ window.__DEV_ENGINE_IS_READY__.then( /*#__PURE__*/(0, _asyncToGenerator2["defaul
366
366
  })]
367
367
  });
368
368
  }));
369
- _reactDom["default"].render( /*#__PURE__*/(0, _jsxRuntime.jsx)(_context2.StoreContext.Provider, {
369
+ _reactDom["default"].render(/*#__PURE__*/(0, _jsxRuntime.jsx)(_context2.StoreContext.Provider, {
370
370
  value: store,
371
371
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(App, {})
372
372
  }), document.getElementById('root'));
@@ -55,12 +55,6 @@ var LayoutUIModule = exports.LayoutUIModule = /*#__PURE__*/function (_UIModule)
55
55
  case _constant.RendererEventAction.OPEN_PARTICIPANTS:
56
56
  this._store.moveParticipantFromAsideToDialog();
57
57
  break;
58
- case _constant.RendererEventAction.CALL_HIDE:
59
- this._store.setDocumentVisibility(false);
60
- break;
61
- case _constant.RendererEventAction.CALL_SHOW:
62
- this._store.setDocumentVisibility(true);
63
- break;
64
58
  }
65
59
  }
66
60
  }, {
@@ -115,6 +115,7 @@
115
115
  margin-right: 2px;
116
116
  }
117
117
  .fcr-member-window-members-sharebtn-show {
118
+ margin-left: 6px;
118
119
  display: flex;
119
120
  }
120
121
  /* fcr-member-window-action start */
@@ -251,18 +252,17 @@
251
252
  text-overflow: ellipsis;
252
253
  }
253
254
  .fcr-user-window-actions-name-isme {
254
- padding-right: 2px;
255
255
  font-weight: normal;
256
256
  }
257
- .fcr-member-window-gallery .fcr-user-window-actions-name {
258
- padding: 0 10px;
259
- }
257
+ /* .fcr-member-window-gallery .fcr-user-window-actions-name {
258
+ padding: 0 4px;
259
+ } */
260
260
 
261
261
  .fcr-user-window-actions-name-doing {
262
262
  line-height: 1;
263
263
  font-weight: var(--fcr_font_weight_s);
264
264
  white-space: nowrap;
265
- padding-right: 2px;
265
+ padding-right: 6px;
266
266
  }
267
267
 
268
268
  .fcr-user-window-actions-top {
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { FcrUserRole } from 'agora-edu-core/lib/type';
3
2
  import { FcrUIVideoWindowData } from '../type';
4
3
  import './index.css';
@@ -20,10 +19,10 @@ export interface MemberWindowProps extends MemberWindowCustomProps {
20
19
  windowData: FcrUIVideoWindowData;
21
20
  }
22
21
  export declare const MemberWindow: ({ showAvatar, windowData, onDoubleClick, slot, width, height, canShowSpeakerSpotlight, onRemovePin, memberWindowPreviewType, videoRenderMode, videoStreamType, }: MemberWindowProps) => import("react/jsx-runtime").JSX.Element;
23
- export declare const MemberWindowActions: ({ windowData, iconSize, windowSize, openPrivateChat, localUserRole, sendParticipantEvent, muteAudio, hasPinnedStream, allowedOperations, setVideoOrientation, showActionBottomLabel, isShowActionAudio, actionAudioTag, onVisibleChanged, videoWindowCurrentWidth, videoWindowCurrentHeight, videoWindowPreviewType, }: {
22
+ export declare const MemberWindowActions: ({ windowData, iconSize, windowSize, openPrivateChat, localUserRole, sendParticipantEvent, muteAudio, hasPinnedStream, allowedOperations, setVideoOrientation, showActionBottomLabel, isShowActionAudio, actionAudioTag, onVisibleChanged, videoWindowCurrentWidth, videoWindowCurrentHeight, videoWindowPreviewType, showRotation, }: {
24
23
  windowData: FcrUIVideoWindowData;
25
24
  iconSize: number;
26
- windowSize: 'large' | 'normal';
25
+ windowSize: "large" | "normal";
27
26
  openPrivateChat: (userId: string) => void;
28
27
  localUserRole: FcrUserRole;
29
28
  sendParticipantEvent: (event: any) => void;
@@ -34,10 +33,11 @@ export declare const MemberWindowActions: ({ windowData, iconSize, windowSize, o
34
33
  showActionBottomLabel: boolean;
35
34
  isShowActionAudio: boolean;
36
35
  actionAudioTag: string;
37
- onVisibleChanged?: ((visible: boolean) => void) | undefined;
38
- videoWindowCurrentWidth?: number | undefined;
39
- videoWindowCurrentHeight?: number | undefined;
40
- videoWindowPreviewType?: FcrVideoWindowPreviewType | undefined;
36
+ onVisibleChanged?: (visible: boolean) => void;
37
+ videoWindowCurrentWidth?: number;
38
+ videoWindowCurrentHeight?: number;
39
+ videoWindowPreviewType?: FcrVideoWindowPreviewType;
40
+ showRotation: boolean;
41
41
  }) => import("react/jsx-runtime").JSX.Element;
42
42
  interface MemberBoardProps {
43
43
  slot: React.ReactNode;
@@ -9,6 +9,11 @@ require("core-js/modules/es.object.define-property.js");
9
9
  require("core-js/modules/es.object.get-own-property-descriptor.js");
10
10
  require("core-js/modules/es.object.get-own-property-descriptors.js");
11
11
  require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/esnext.async-iterator.filter.js");
13
+ require("core-js/modules/esnext.async-iterator.for-each.js");
14
+ require("core-js/modules/esnext.iterator.constructor.js");
15
+ require("core-js/modules/esnext.iterator.filter.js");
16
+ require("core-js/modules/esnext.iterator.for-each.js");
12
17
  require("core-js/modules/web.dom-collections.for-each.js");
13
18
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
14
19
  Object.defineProperty(exports, "__esModule", {
@@ -22,6 +27,29 @@ require("core-js/modules/es.array.iterator.js");
22
27
  require("core-js/modules/es.object.to-string.js");
23
28
  require("core-js/modules/es.set.js");
24
29
  require("core-js/modules/es.string.iterator.js");
30
+ require("core-js/modules/esnext.set.add-all.js");
31
+ require("core-js/modules/esnext.set.delete-all.js");
32
+ require("core-js/modules/esnext.set.difference.v2.js");
33
+ require("core-js/modules/esnext.set.difference.js");
34
+ require("core-js/modules/esnext.set.every.js");
35
+ require("core-js/modules/esnext.set.filter.js");
36
+ require("core-js/modules/esnext.set.find.js");
37
+ require("core-js/modules/esnext.set.intersection.v2.js");
38
+ require("core-js/modules/esnext.set.intersection.js");
39
+ require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
40
+ require("core-js/modules/esnext.set.is-disjoint-from.js");
41
+ require("core-js/modules/esnext.set.is-subset-of.v2.js");
42
+ require("core-js/modules/esnext.set.is-subset-of.js");
43
+ require("core-js/modules/esnext.set.is-superset-of.v2.js");
44
+ require("core-js/modules/esnext.set.is-superset-of.js");
45
+ require("core-js/modules/esnext.set.join.js");
46
+ require("core-js/modules/esnext.set.map.js");
47
+ require("core-js/modules/esnext.set.reduce.js");
48
+ require("core-js/modules/esnext.set.some.js");
49
+ require("core-js/modules/esnext.set.symmetric-difference.v2.js");
50
+ require("core-js/modules/esnext.set.symmetric-difference.js");
51
+ require("core-js/modules/esnext.set.union.v2.js");
52
+ require("core-js/modules/esnext.set.union.js");
25
53
  require("core-js/modules/web.dom-collections.iterator.js");
26
54
  require("core-js/modules/web.timers.js");
27
55
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -36,7 +64,6 @@ var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
36
64
  var _i18n = require("agora-ui-foundation/lib/i18n");
37
65
  var _type2 = require("agora-edu-core/lib/type");
38
66
  var _hooks = require("../../../utilities/hooks");
39
- var _participantsMoreAction = require("../../participant/attendee/participants-more-action");
40
67
  var _type3 = require("../type");
41
68
  require("./index.css");
42
69
  var _context = require("../context");
@@ -46,6 +73,9 @@ var _videoTrackRenderContext = require("../../../utilities/video-track-render-co
46
73
  var _dialogs = require("../../dialog/dialogs");
47
74
  var _constant = require("../../../utilities/constant");
48
75
  var _type4 = require("../../video-window/type");
76
+ var _env = require("agora-foundation/lib/utilities/env");
77
+ var _agoraEduCore = require("agora-edu-core");
78
+ var _participantsMore = require("agora-ui-foundation/lib/components/participants/participants-more");
49
79
  var _jsxRuntime = require("react/jsx-runtime");
50
80
  var _excluded = ["isLocal"];
51
81
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -55,7 +85,7 @@ var MaxAvatarSize = 175;
55
85
  var AvatarSizeRatio = 0.2445;
56
86
  var AvatarTextSizeRatio = 0.32;
57
87
  var HideControlsTimeout = 3000;
58
- var meetingConnectorTypes = new Set([_type2.FcrRoomConnectorType.SIP, _type2.FcrRoomConnectorType.H323]);
88
+ var meetingConnectorTypes = new Set([_agoraEduCore.FcrRoomConnectorType.SIP, _agoraEduCore.FcrRoomConnectorType.H323]);
59
89
  var clamp = function clamp(val, min, max) {
60
90
  return val < min ? min : val > max ? max : val;
61
91
  };
@@ -84,8 +114,8 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
84
114
  audioStreamConnectorType = windowData.audioStreamConnectorType,
85
115
  videoStreamConnectorType = windowData.videoStreamConnectorType;
86
116
  var t = (0, _i18n.useI18n)();
87
- var connectorType = audioStreamConnectorType !== _type2.FcrRoomConnectorType.NONE ? audioStreamConnectorType : videoStreamConnectorType;
88
- var isPhone = audioStreamConnectorType === _type2.FcrRoomConnectorType.PSTN;
117
+ var connectorType = audioStreamConnectorType !== _agoraEduCore.FcrRoomConnectorType.NONE ? audioStreamConnectorType : videoStreamConnectorType;
118
+ var isPhone = audioStreamConnectorType === _agoraEduCore.FcrRoomConnectorType.PSTN;
89
119
  var isPhoneOnlyAudio = isPhone && !videoStreamId;
90
120
  var isMeeting = meetingConnectorTypes.has(connectorType);
91
121
  var suffixedName = userName + (isMySelf ? t('fmt_attendies_labels_setting_mine') : '');
@@ -164,6 +194,8 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
164
194
  'fcr-member-window-pin-show': isPin
165
195
  }),
166
196
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
197
+ placement: "leftTop",
198
+ mouseEnterDelay: 0,
167
199
  content: t('fmt_attendies_options_cancelfixed'),
168
200
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
169
201
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
@@ -208,7 +240,9 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
208
240
  onVisibleChanged = _ref3.onVisibleChanged,
209
241
  videoWindowCurrentWidth = _ref3.videoWindowCurrentWidth,
210
242
  videoWindowCurrentHeight = _ref3.videoWindowCurrentHeight,
211
- videoWindowPreviewType = _ref3.videoWindowPreviewType;
243
+ videoWindowPreviewType = _ref3.videoWindowPreviewType,
244
+ _ref3$showRotation = _ref3.showRotation,
245
+ showRotation = _ref3$showRotation === void 0 ? true : _ref3$showRotation;
212
246
  // iconsize gallery 24 normal 16
213
247
  var _ref4 = windowData || {},
214
248
  videoStreamId = _ref4.videoStreamId,
@@ -225,6 +259,7 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
225
259
  videoStreamConnectorType = _ref4.videoStreamConnectorType,
226
260
  _ref4$phoneMicEnabled = _ref4.phoneMicEnabled,
227
261
  phoneMicEnabled = _ref4$phoneMicEnabled === void 0 ? false : _ref4$phoneMicEnabled;
262
+ var timerRef = (0, _react.useRef)();
228
263
  var t = (0, _i18n.useI18n)();
229
264
  var focus = (0, _hooks.useWindowFocus)();
230
265
  var _useState = (0, _react.useState)(false),
@@ -235,11 +270,11 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
235
270
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
236
271
  isShowDropMenu = _useState4[0],
237
272
  setIsShowDropMenu = _useState4[1];
238
- var connectorType = audioStreamConnectorType !== _type2.FcrRoomConnectorType.NONE ? audioStreamConnectorType : videoStreamConnectorType;
239
- var isNormal = connectorType === _type2.FcrRoomConnectorType.NONE;
240
- var isPhone = connectorType === _type2.FcrRoomConnectorType.PSTN;
273
+ var connectorType = audioStreamConnectorType !== _agoraEduCore.FcrRoomConnectorType.NONE ? audioStreamConnectorType : videoStreamConnectorType;
274
+ var isNormal = connectorType === _agoraEduCore.FcrRoomConnectorType.NONE;
275
+ var isPhone = connectorType === _agoraEduCore.FcrRoomConnectorType.PSTN;
241
276
  var isMeeting = meetingConnectorTypes.has(connectorType);
242
- var userType = audioStreamConnectorType === _type2.FcrRoomConnectorType.PSTN && !videoStreamId ? 'phone' : isMeeting ? 'meeting-system' : 'normal';
277
+ var userType = audioStreamConnectorType === _agoraEduCore.FcrRoomConnectorType.PSTN && !videoStreamId ? 'phone' : isMeeting ? 'meeting-system' : 'normal';
243
278
  var isManager = ownerRoleType === _type2.FcrUserRole.HOST || ownerRoleType === _type2.FcrUserRole.COHOST;
244
279
  var handleVideoWindowVisibleChange = function handleVideoWindowVisibleChange(width, height, setResizable) {
245
280
  var videoWindowBrower = _dialogs.dialogWindows.get(_constant.DialogKey.VIDEO_WINDOW);
@@ -261,12 +296,17 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
261
296
  onVisibleChanged === null || onVisibleChanged === void 0 || onVisibleChanged(visible);
262
297
  } else {
263
298
  setIsShowDropMenu(visible);
264
- setTimeout(function () {
299
+ timerRef.current = setTimeout(function () {
265
300
  handleVideoWindowVisibleChange(videoWindowCurrentWidth, videoWindowCurrentHeight, true);
266
301
  onVisibleChanged === null || onVisibleChanged === void 0 || onVisibleChanged(visible);
267
302
  }, 100);
268
303
  }
269
304
  };
305
+ (0, _react.useEffect)(function () {
306
+ return function () {
307
+ clearTimeout(timerRef.current);
308
+ };
309
+ }, [videoWindowPreviewType]);
270
310
  (0, _react.useEffect)(function () {
271
311
  if (!isOnlyShowVideoStream && !focus) {
272
312
  var timer = setTimeout(function () {
@@ -293,6 +333,7 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
293
333
  size: iconSize
294
334
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
295
335
  content: t('fmt_popup_label_muted'),
336
+ mouseEnterDelay: 0,
296
337
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
297
338
  className: "fcr-user-window-actions-microphone",
298
339
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
@@ -319,6 +360,7 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
319
360
  })
320
361
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
321
362
  content: t('fmt_popup_label_muted'),
363
+ mouseEnterDelay: 0,
322
364
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
323
365
  className: "fcr-user-window-actions-microphone",
324
366
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
@@ -363,6 +405,7 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
363
405
  if (isNormal) {
364
406
  icon = hasMicrophoneAudioStream ? null : /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
365
407
  content: t('fmt_popup_label_muted'),
408
+ mouseEnterDelay: 0,
366
409
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
367
410
  className: "fcr-user-window-actions-microphone",
368
411
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
@@ -394,6 +437,7 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
394
437
  })
395
438
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
396
439
  content: t('fmt_popup_label_muted'),
440
+ mouseEnterDelay: 0,
397
441
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
398
442
  className: "fcr-user-window-actions-microphone",
399
443
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
@@ -454,6 +498,7 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
454
498
  })
455
499
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
456
500
  content: t('fmt_popup_label_muted'),
501
+ mouseEnterDelay: 0,
457
502
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
458
503
  className: "fcr-user-window-actions-microphone",
459
504
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
@@ -580,7 +625,7 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
580
625
  trigger: "click",
581
626
  visible: isShowDropMenu,
582
627
  onVisibleChange: onVisibleChange,
583
- content: /*#__PURE__*/(0, _jsxRuntime.jsx)(_participantsMoreAction.ParticipantsMoreActions, {
628
+ content: /*#__PURE__*/(0, _jsxRuntime.jsx)(_participantsMore.FcrParticipantsMoreActions, {
584
629
  userType: userType,
585
630
  hasPinnedStream: hasPinnedStream,
586
631
  audioDeviceType: isPhone ? 'phone-mic' : 'computer-mic',
@@ -622,7 +667,7 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
622
667
  },
623
668
  children: t(actionAudioTag)
624
669
  })]
625
- }), windowData.isMySelf && hasVideoStream && /*#__PURE__*/(0, _jsxRuntime.jsx)(_localVideoPlayer.VideoOrientation, {
670
+ }), windowData.isMySelf && hasVideoStream && showRotation && /*#__PURE__*/(0, _jsxRuntime.jsx)(_localVideoPlayer.VideoOrientation, {
626
671
  setVideoOrientation: function setVideoOrientation() {
627
672
  _setVideoOrientation();
628
673
  }
@@ -666,7 +711,8 @@ var MemberBoard = exports.MemberBoard = (0, _mobxReact.observer)(function (_ref5
666
711
  openPrivateChat: openPrivateChat,
667
712
  windowSize: "large",
668
713
  windowData: windowData,
669
- iconSize: 24
714
+ iconSize: 24,
715
+ showRotation: (0, _env.isElectron)()
670
716
  }), slot]
671
717
  });
672
718
  });