fcr-ui-scene 3.5.1 → 3.6.1

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 (395) hide show
  1. package/lib/creator.d.ts +14 -0
  2. package/lib/creator.js +239 -14
  3. package/lib/electron/app.js +0 -21
  4. package/lib/electron/bootstrap-sdk.js +145 -7
  5. package/lib/electron/injections.d.ts +19 -7
  6. package/lib/electron/injections.js +206 -77
  7. package/lib/electron/ipc/ipc.d.ts +26 -0
  8. package/lib/electron/ipc/ipc.js +137 -0
  9. package/lib/electron/ipc/type.d.ts +11 -0
  10. package/lib/electron/ipc/type.js +19 -0
  11. package/lib/electron/logger.js +1 -1
  12. package/lib/electron/main.js +1 -1
  13. package/lib/electron/plugins/meeting-state.d.ts +1 -0
  14. package/lib/electron/plugins/meeting-state.js +3 -3
  15. package/lib/electron/plugins/screenshot.js +2 -2
  16. package/lib/electron/preload.js +67 -5
  17. package/lib/electron/window.js +0 -2
  18. package/lib/global.css +39 -0
  19. package/lib/modules/action-bar/components/apps/index.js +1 -0
  20. package/lib/modules/action-bar/components/apps/useWidgetList.js +1 -1
  21. package/lib/modules/action-bar/components/board/index.js +0 -2
  22. package/lib/modules/action-bar/components/breakout-room/index.js +0 -2
  23. package/lib/modules/action-bar/components/item/index.d.ts +2 -0
  24. package/lib/modules/action-bar/components/item/index.js +4 -2
  25. package/lib/modules/action-bar/components/leave/index.js +2 -12
  26. package/lib/modules/action-bar/components/more/index.js +1 -0
  27. package/lib/modules/action-bar/components/more/poppover-content.js +6 -9
  28. package/lib/modules/action-bar/components/participants/index.js +1 -9
  29. package/lib/modules/action-bar/components/record/index.js +43 -106
  30. package/lib/modules/action-bar/components/record/popover.d.ts +4 -0
  31. package/lib/modules/action-bar/components/record/popover.js +57 -0
  32. package/lib/modules/action-bar/components/record/stop-record-dialog.js +1 -0
  33. package/lib/modules/action-bar/components/screen-share/index.js +11 -3
  34. package/lib/modules/action-bar/components/screen-share/submenu.js +2 -2
  35. package/lib/modules/action-bar/components/security/index.js +2 -1
  36. package/lib/modules/action-bar/components/smaller/index.js +1 -1
  37. package/lib/modules/action-bar/components/trigger-output-language/index.js +17 -22
  38. package/lib/modules/action-bar/components/trigger-subscribe-language/index.js +2 -1
  39. package/lib/modules/action-bar/index.css +3 -2
  40. package/lib/modules/action-bar/index.js +2 -1
  41. package/lib/modules/action-bar/store.d.ts +5 -2
  42. package/lib/modules/action-bar/store.js +34 -22
  43. package/lib/modules/action-bar/types.d.ts +1 -0
  44. package/lib/modules/action-bar/view.js +1 -1
  45. package/lib/modules/audio-stream/index.js +4 -4
  46. package/lib/modules/chat/chat-room-store.js +4 -5
  47. package/lib/modules/chat/components/chat-bar/index.d.ts +1 -1
  48. package/lib/modules/chat/components/chat-bar/index.js +5 -3
  49. package/lib/modules/chat/components/chat-select/select-item/index.js +1 -1
  50. package/lib/modules/chat/components/message-list/index.js +1 -2
  51. package/lib/modules/chat/components/message-list/message-item/index.d.ts +0 -1
  52. package/lib/modules/chat/components/message-list/message-item/index.js +9 -10
  53. package/lib/modules/chat/index.css +24 -0
  54. package/lib/modules/chat/view.js +13 -3
  55. package/lib/modules/components/device-control/components/carmera/index.js +4 -5
  56. package/lib/modules/components/device-control/components/microphone/index.js +4 -5
  57. package/lib/modules/components/device-control/index.css +6 -3
  58. package/lib/modules/components/leave-meeting/components/assign-host.js +26 -4
  59. package/lib/modules/components/leave-meeting/components/index.css +35 -0
  60. package/lib/modules/components/leave-meeting/index.js +1 -0
  61. package/lib/modules/components/leave-meeting/store.js +25 -67
  62. package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +3 -2
  63. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +1 -2
  64. package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +10 -9
  65. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +2 -2
  66. package/lib/modules/components/member-window/components/member-actions/components/user-info.js +1 -1
  67. package/lib/modules/components/member-window/components/member-actions/index.js +2 -4
  68. package/lib/modules/components/member-window/components/member-actions/libs/index.js +0 -1
  69. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +1 -1
  70. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +4 -16
  71. package/lib/modules/components/member-window/index.css +19 -7
  72. package/lib/modules/components/member-window/index.js +0 -1
  73. package/lib/modules/components/member-window/types.d.ts +1 -1
  74. package/lib/modules/components/security-menu/index.css +2 -2
  75. package/lib/modules/components/security-menu/index.js +80 -28
  76. package/lib/modules/components/tab-frame/index.css +1 -1
  77. package/lib/modules/connection-gateway/components/phone/index.js +1 -1
  78. package/lib/modules/control-bar/components/meeting-details/index.css +1 -1
  79. package/lib/modules/control-bar/components/meeting-details/index.js +15 -9
  80. package/lib/modules/control-bar/components/more-actions/index.js +3 -21
  81. package/lib/modules/control-bar/components/share-state-nav/index.js +4 -20
  82. package/lib/modules/control-bar/index.d.ts +2 -0
  83. package/lib/modules/control-bar/index.js +3 -1
  84. package/lib/modules/control-bar/store.d.ts +12 -3
  85. package/lib/modules/control-bar/store.js +106 -98
  86. package/lib/modules/control-bar/view.js +1 -6
  87. package/lib/modules/device-pretest/audio-preview/speaker-detection.js +1 -1
  88. package/lib/modules/dialog/components/chat/electron.d.ts +1 -3
  89. package/lib/modules/dialog/components/chat/index.js +24 -17
  90. package/lib/modules/dialog/components/confirm-leave-meeting/index.d.ts +6 -0
  91. package/lib/modules/dialog/components/confirm-leave-meeting/index.js +86 -0
  92. package/lib/modules/dialog/components/control-bar/index.d.ts +1 -2
  93. package/lib/modules/dialog/components/control-bar/index.js +5 -17
  94. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -0
  95. package/lib/modules/dialog/components/dialog-container/component/body.js +4 -2
  96. package/lib/modules/dialog/components/dialog-container/index.css +18 -1
  97. package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
  98. package/lib/modules/dialog/components/dialog-container/index.js +3 -1
  99. package/lib/modules/dialog/components/participant/index.d.ts +0 -1
  100. package/lib/modules/dialog/components/participant/index.js +15 -24
  101. package/lib/modules/dialog/components/pre-setting/electron.d.ts +2 -0
  102. package/lib/modules/dialog/components/pre-setting/electron.js +51 -0
  103. package/lib/modules/dialog/components/pre-setting/index.css +26 -0
  104. package/lib/modules/dialog/components/pre-setting/index.d.ts +6 -0
  105. package/lib/modules/dialog/components/pre-setting/index.js +38 -0
  106. package/lib/modules/dialog/components/pre-setting-container/component/body.d.ts +8 -0
  107. package/lib/modules/dialog/components/pre-setting-container/component/body.js +80 -0
  108. package/lib/modules/dialog/components/pre-setting-container/index.css +82 -0
  109. package/lib/modules/dialog/components/pre-setting-container/index.d.ts +18 -0
  110. package/lib/modules/dialog/components/pre-setting-container/index.js +117 -0
  111. package/lib/modules/dialog/components/rename/index.d.ts +4 -0
  112. package/lib/modules/dialog/components/rename/index.js +72 -0
  113. package/lib/modules/dialog/components/share-screen-selection/index.js +1 -2
  114. package/lib/modules/dialog/components/video-window/index.js +18 -16
  115. package/lib/modules/dialog/components/widget/electron.d.ts +2 -1
  116. package/lib/modules/dialog/components/widget/electron.js +3 -2
  117. package/lib/modules/dialog/components/widget/index.d.ts +2 -1
  118. package/lib/modules/dialog/components/widget/index.js +4 -6
  119. package/lib/modules/dialog/dialogs.d.ts +1 -0
  120. package/lib/modules/dialog/dialogs.js +3 -2
  121. package/lib/modules/dialog/hooks/useElectron.d.ts +2 -0
  122. package/lib/modules/dialog/hooks/useElectron.js +22 -101
  123. package/lib/modules/dialog/index.d.ts +2 -0
  124. package/lib/modules/dialog/index.js +2 -2
  125. package/lib/modules/dialog/store.d.ts +8 -3
  126. package/lib/modules/dialog/store.js +38 -26
  127. package/lib/modules/dialog/type.d.ts +1 -0
  128. package/lib/modules/dialog/view.js +2 -1
  129. package/lib/modules/event-confirm/index.d.ts +2 -0
  130. package/lib/modules/event-confirm/index.js +2 -1
  131. package/lib/modules/event-confirm/store.d.ts +9 -1
  132. package/lib/modules/event-confirm/store.js +100 -8
  133. package/lib/modules/event-confirm/view.js +55 -46
  134. package/lib/modules/{sound-effect → event-sound}/index.d.ts +3 -2
  135. package/lib/modules/{sound-effect → event-sound}/index.js +9 -5
  136. package/lib/modules/event-toast/store.js +6 -1
  137. package/lib/modules/interpreter/dialog-content/index.js +4 -1
  138. package/lib/modules/interpreter/index.d.ts +2 -0
  139. package/lib/modules/interpreter/index.js +2 -1
  140. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +3 -0
  141. package/lib/modules/interpreter/store.d.ts +2 -2
  142. package/lib/modules/interpreter/store.js +30 -24
  143. package/lib/modules/interpreter/type.d.ts +2 -0
  144. package/lib/modules/invite/components/pstn-invite.js +2 -25
  145. package/lib/modules/invite/components/voip-invite.css +26 -0
  146. package/lib/modules/invite/components/voip-invite.d.ts +1 -0
  147. package/lib/modules/invite/components/voip-invite.js +8 -11
  148. package/lib/modules/invite/index.css +16 -3
  149. package/lib/modules/invite/index.d.ts +2 -1
  150. package/lib/modules/invite/index.js +2 -1
  151. package/lib/modules/invite/store.d.ts +5 -1
  152. package/lib/modules/invite/store.js +8 -1
  153. package/lib/modules/layout/components/Aside.js +0 -1
  154. package/lib/modules/layout/components/Carousel.d.ts +1 -1
  155. package/lib/modules/layout/components/Carousel.js +16 -118
  156. package/lib/modules/layout/components/CommonVideoRenderer.d.ts +13 -0
  157. package/lib/modules/layout/components/CommonVideoRenderer.js +214 -0
  158. package/lib/modules/layout/components/Gallery.d.ts +1 -0
  159. package/lib/modules/layout/components/Gallery.js +62 -205
  160. package/lib/modules/layout/components/index.css +17 -34
  161. package/lib/modules/layout/index.d.ts +2 -0
  162. package/lib/modules/layout/index.js +2 -1
  163. package/lib/modules/layout/store.d.ts +5 -2
  164. package/lib/modules/layout/store.js +53 -39
  165. package/lib/modules/layout/type.d.ts +4 -0
  166. package/lib/modules/layout/type.js +6 -1
  167. package/lib/modules/live-streaming/store.d.ts +1 -0
  168. package/lib/modules/live-streaming/store.js +19 -8
  169. package/lib/modules/participant/components/confirm-input/index.d.ts +4 -4
  170. package/lib/modules/participant/components/confirm-input/index.js +74 -6
  171. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.css +27 -3
  172. package/lib/modules/participant/components/participants/components/footer/components/footer/index.css +4 -0
  173. package/lib/modules/participant/components/participants/components/footer/components/footer/index.js +3 -4
  174. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.css +4 -3
  175. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +1 -0
  176. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.css +9 -1
  177. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +1 -1
  178. package/lib/modules/participant/components/participants/components/participants/index.css +1 -0
  179. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.css +18 -0
  180. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +12 -5
  181. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +1 -8
  182. package/lib/modules/participant/index.css +6 -0
  183. package/lib/modules/participant/index.d.ts +1 -0
  184. package/lib/modules/participant/index.js +9 -0
  185. package/lib/modules/participant/store.d.ts +6 -0
  186. package/lib/modules/participant/store.js +130 -96
  187. package/lib/modules/pc-audio-connect/store.js +3 -2
  188. package/lib/modules/phone-audio-connect/index.d.ts +2 -0
  189. package/lib/modules/phone-audio-connect/index.js +2 -1
  190. package/lib/modules/phone-audio-connect/store.d.ts +4 -1
  191. package/lib/modules/phone-audio-connect/store.js +4 -2
  192. package/lib/modules/setting/audio-settings/audio-settings.js +70 -48
  193. package/lib/modules/setting/audio-settings/index.css +23 -6
  194. package/lib/modules/setting/general-settings/general-settings.d.ts +1 -2
  195. package/lib/modules/setting/general-settings/general-settings.js +111 -37
  196. package/lib/modules/setting/general-settings/index.css +15 -0
  197. package/lib/modules/setting/index.d.ts +4 -1
  198. package/lib/modules/setting/index.js +7 -4
  199. package/lib/modules/setting/state/index.js +1 -1
  200. package/lib/modules/setting/store.d.ts +24 -11
  201. package/lib/modules/setting/store.js +203 -142
  202. package/lib/modules/setting/video-settings/index.css +13 -2
  203. package/lib/modules/setting/video-settings/video-settings-basic.js +18 -27
  204. package/lib/modules/setting/video-settings/video-settings.d.ts +0 -2
  205. package/lib/modules/setting/video-settings/video-settings.js +3 -2
  206. package/lib/modules/setting/view.d.ts +11 -2
  207. package/lib/modules/setting/view.js +93 -71
  208. package/lib/modules/share-screen/components/selection/index.js +6 -2
  209. package/lib/modules/share-screen/index.d.ts +4 -1
  210. package/lib/modules/share-screen/index.js +3 -1
  211. package/lib/modules/share-screen/store.d.ts +15 -5
  212. package/lib/modules/share-screen/store.js +105 -59
  213. package/lib/modules/share-screen/view.js +1 -1
  214. package/lib/modules/state-bar/index.css +4 -2
  215. package/lib/modules/state-bar/index.d.ts +2 -0
  216. package/lib/modules/state-bar/index.js +2 -1
  217. package/lib/modules/state-bar/layout-config.js +1 -0
  218. package/lib/modules/state-bar/live-streaming-state.js +1 -0
  219. package/lib/modules/state-bar/meeting-detail.css +10 -1
  220. package/lib/modules/state-bar/meeting-details.js +35 -25
  221. package/lib/modules/state-bar/meeting-network-state.css +8 -0
  222. package/lib/modules/state-bar/meeting-time.js +9 -20
  223. package/lib/modules/state-bar/store.d.ts +5 -1
  224. package/lib/modules/state-bar/store.js +10 -3
  225. package/lib/modules/state-bar/view.js +17 -6
  226. package/lib/modules/video-window/components/members/index.js +0 -3
  227. package/lib/modules/waiting-room-layout/index.css +13 -0
  228. package/lib/modules/waiting-room-layout/index.d.ts +2 -1
  229. package/lib/modules/waiting-room-layout/index.js +2 -1
  230. package/lib/modules/waiting-room-layout/store.d.ts +12 -1
  231. package/lib/modules/waiting-room-layout/store.js +42 -6
  232. package/lib/modules/waiting-room-layout/view.js +22 -5
  233. package/lib/modules/whiteboard/components/control-bar/index.css +1 -1
  234. package/lib/modules/whiteboard/components/control-bar/index.js +0 -2
  235. package/lib/modules/whiteboard/components/scene-pagination.js +0 -2
  236. package/lib/modules/whiteboard/components/switch-theme/libs.d.ts +1 -1
  237. package/lib/modules/whiteboard/components/switch-theme/libs.js +3 -1
  238. package/lib/modules/whiteboard/components/toolbar/ style.css +1 -0
  239. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/color.js +1 -2
  240. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/panel.js +1 -0
  241. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +1 -0
  242. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +3 -14
  243. package/lib/modules/whiteboard/components/toolbar/components/expansion/index.d.ts +1 -0
  244. package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +83 -0
  245. package/lib/modules/whiteboard/components/toolbar/components/extra-tool-picker.js +2 -2
  246. package/lib/modules/whiteboard/components/toolbar/components/history.js +3 -3
  247. package/lib/modules/whiteboard/components/toolbar/components/item/index.d.ts +1 -0
  248. package/lib/modules/whiteboard/components/toolbar/components/item/index.js +42 -0
  249. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +2 -2
  250. package/lib/modules/whiteboard/components/toolbar/components/screen-capture-picker.js +2 -2
  251. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +3 -3
  252. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +6 -6
  253. package/lib/modules/whiteboard/components/toolbar/index.js +9 -113
  254. package/lib/modules/whiteboard/components/toolbar/store.d.ts +18 -0
  255. package/lib/modules/whiteboard/components/toolbar/store.js +276 -83
  256. package/lib/modules/whiteboard/context.d.ts +1 -2
  257. package/lib/modules/whiteboard/index.d.ts +1 -14
  258. package/lib/modules/whiteboard/index.js +131 -426
  259. package/lib/modules/whiteboard/view.js +12 -10
  260. package/lib/modules/widget/sdk.js +2 -2
  261. package/lib/object-manager.d.ts +8 -0
  262. package/lib/object-manager.js +75 -0
  263. package/lib/plugins/browser-runtime-plugin.js +19 -14
  264. package/lib/providers/ability-provider.d.ts +8 -0
  265. package/lib/providers/ability-provider.js +14 -0
  266. package/lib/providers/device-privilege-provider.d.ts +1 -0
  267. package/lib/providers/device-privilege-provider.js +53 -75
  268. package/lib/providers/device-provider.d.ts +18 -8
  269. package/lib/providers/device-provider.js +378 -206
  270. package/lib/providers/device-stream-provider.js +0 -4
  271. package/lib/providers/dialog-provider.d.ts +1 -0
  272. package/lib/providers/dialog-provider.js +4 -18
  273. package/lib/providers/event-provider.js +45 -2
  274. package/lib/providers/interpreter-provider.d.ts +4 -0
  275. package/lib/providers/interpreter-provider.js +166 -137
  276. package/lib/providers/message-provider.js +44 -2
  277. package/lib/providers/privilege-provider.d.ts +33 -0
  278. package/lib/providers/privilege-provider.js +120 -45
  279. package/lib/providers/room-provider.d.ts +12 -10
  280. package/lib/providers/room-provider.js +162 -262
  281. package/lib/providers/screen-share-provider.d.ts +4 -0
  282. package/lib/providers/screen-share-provider.js +3 -6
  283. package/lib/providers/widget-provider.js +6 -4
  284. package/lib/runtime.d.ts +20 -8
  285. package/lib/scenes/main-scene.d.ts +2 -0
  286. package/lib/scenes/main-scene.js +95 -37
  287. package/lib/scenes/waiting-scene.js +16 -13
  288. package/lib/schema.d.ts +55 -32
  289. package/lib/schema.js +23 -9
  290. package/lib/shared-data-source/config.d.ts +6 -2
  291. package/lib/shared-data-source/config.js +81 -10
  292. package/lib/shared-data-source/meeting-time.js +2 -2
  293. package/lib/shared-data-source/member-data.d.ts +16 -20
  294. package/lib/shared-data-source/member-data.js +121 -110
  295. package/lib/shared-data-source/screen-share-data-source.d.ts +37 -0
  296. package/lib/shared-data-source/screen-share-data-source.js +134 -0
  297. package/lib/shared-data-source/security-data.d.ts +1 -0
  298. package/lib/shared-data-source/security-data.js +3 -5
  299. package/lib/shared-data-source/setting.d.ts +1 -0
  300. package/lib/shared-data-source/setting.js +33 -17
  301. package/lib/shared-data-source/video-window.d.ts +3 -4
  302. package/lib/shared-data-source/video-window.js +58 -48
  303. package/lib/translations/enUS.d.ts +48 -1
  304. package/lib/translations/enUS.js +101 -17
  305. package/lib/translations/zhCN.d.ts +48 -1
  306. package/lib/translations/zhCN.js +88 -4
  307. package/lib/type.d.ts +40 -20
  308. package/lib/type.js +14 -1
  309. package/lib/ui-manager.d.ts +11 -9
  310. package/lib/ui-manager.js +118 -29
  311. package/lib/ui-scene.d.ts +7 -4
  312. package/lib/ui-scene.js +111 -130
  313. package/lib/utilities/constant.d.ts +3 -1
  314. package/lib/utilities/constant.js +2 -0
  315. package/lib/utilities/copyText.js +15 -11
  316. package/lib/utilities/default-config.d.ts +2 -0
  317. package/lib/utilities/default-config.js +11 -5
  318. package/lib/utilities/i18n-common-data.d.ts +2 -0
  319. package/lib/utilities/i18n-common-data.js +15 -0
  320. package/lib/utilities/logger.d.ts +0 -1
  321. package/lib/utilities/logger.js +3 -4
  322. package/lib/utilities/renderer.d.ts +0 -9
  323. package/lib/utilities/renderer.js +1 -70
  324. package/lib/utilities/screen.js +3 -1
  325. package/lib/utilities/setting-config-storage.d.ts +6 -1
  326. package/lib/utilities/setting-config-storage.js +21 -4
  327. package/lib/utilities/tools.d.ts +30 -6
  328. package/lib/utilities/tools.js +74 -44
  329. package/lib/utilities/ui-resources.d.ts +6 -0
  330. package/lib/utilities/ui-resources.js +47 -9
  331. package/lib/waiting-room-control-manager.d.ts +4 -4
  332. package/lib/waiting-room-control-manager.js +29 -9
  333. package/package.json +6 -6
  334. package/public/assets/browser/images/default1.jpg +0 -0
  335. package/public/assets/browser/images/default2.jpg +0 -0
  336. package/public/assets/browser/images/default3.jpg +0 -0
  337. package/public/assets/browser/images/default4.jpg +0 -0
  338. package/public/assets/browser/images/default5.jpg +0 -0
  339. package/public/assets/browser/images/default6.jpg +0 -0
  340. package/public/assets/browser/images/default7.jpg +0 -0
  341. package/public/assets/browser/sound_effects/pretest.mp3 +0 -0
  342. package/public/assets/browser/sound_effects/recording_started.mp3 +0 -0
  343. package/public/assets/browser/sound_effects/remote_user_joined.mp3 +0 -0
  344. package/public/assets/browser/sound_effects/speaker_test.mp3 +0 -0
  345. package/public/assets/browser/videos/default8.mp4 +0 -0
  346. package/public/assets/browser/videos/default9.mp4 +0 -0
  347. package/public/assets/electron/images/default1.jpg +0 -0
  348. package/public/assets/electron/images/default2.jpg +0 -0
  349. package/public/assets/electron/sound_effects/pretest.mp3 +0 -0
  350. package/public/assets/electron/videos/default8.mp4 +0 -0
  351. package/public/index.html +103 -82
  352. package/lib/hooks/meeting-time.d.ts +0 -15
  353. package/lib/hooks/meeting-time.js +0 -92
  354. package/lib/login-confirm-dialog.d.ts +0 -13
  355. package/lib/login-confirm-dialog.js +0 -85
  356. package/lib/modules/action-bar/components/apps/appitems.d.ts +0 -3
  357. package/lib/modules/action-bar/components/apps/appitems.js +0 -45
  358. package/lib/modules/components/member-window/components/member-board.d.ts +0 -2
  359. package/lib/modules/components/member-window/components/member-board.js +0 -63
  360. package/lib/modules/dialog/components/system-preference/bg1.png +0 -0
  361. package/lib/modules/dialog/components/system-preference/bg2.png +0 -0
  362. package/lib/modules/dialog/types/index.d.ts +0 -70
  363. package/lib/modules/participant/components/attendee/components/microphone-indicator/index.d.ts +0 -6
  364. package/lib/modules/participant/components/attendee/components/microphone-indicator/index.js +0 -28
  365. package/lib/modules/participant/components/attendee/components/user-avatar/index.d.ts +0 -7
  366. package/lib/modules/participant/components/attendee/components/user-avatar/index.js +0 -39
  367. package/lib/modules/participant/components/attendee/index.css +0 -69
  368. package/lib/modules/participant/components/attendee/index.d.ts +0 -4
  369. package/lib/modules/participant/components/attendee/index.js +0 -337
  370. package/lib/modules/participant/components/drop-menu/index.css +0 -60
  371. package/lib/modules/participant/components/drop-menu/index.d.ts +0 -2
  372. package/lib/modules/participant/components/drop-menu/index.js +0 -189
  373. package/lib/modules/participant/components/footer/buttons.d.ts +0 -6
  374. package/lib/modules/participant/components/footer/buttons.js +0 -52
  375. package/lib/modules/participant/components/footer/index.d.ts +0 -4
  376. package/lib/modules/participant/components/footer/index.js +0 -37
  377. package/lib/modules/participant/components/merge/index.d.ts +0 -11
  378. package/lib/modules/participant/components/merge/index.js +0 -49
  379. package/lib/modules/participant/components/rename/index.d.ts +0 -4
  380. package/lib/modules/participant/components/rename/index.js +0 -45
  381. package/lib/modules/participant/components/user-action/index.d.ts +0 -17
  382. package/lib/modules/participant/components/user-action/index.js +0 -169
  383. package/lib/modules/video-window/deviceState/index.d.ts +0 -16
  384. package/lib/modules/video-window/deviceState/index.js +0 -75
  385. package/lib/modules/video-window/members/index.css +0 -51
  386. package/lib/modules/video-window/members/index.d.ts +0 -2
  387. package/lib/modules/video-window/members/index.js +0 -157
  388. package/lib/modules/video-window/speaking/index.css +0 -69
  389. package/lib/modules/video-window/speaking/index.d.ts +0 -3
  390. package/lib/modules/video-window/speaking/index.js +0 -57
  391. package/lib/modules/video-window/topControl/index.css +0 -35
  392. package/lib/modules/video-window/topControl/index.d.ts +0 -3
  393. package/lib/modules/video-window/topControl/index.js +0 -92
  394. /package/lib/modules/{sound-effect → event-sound}/sound-effect-player.d.ts +0 -0
  395. /package/lib/modules/{sound-effect → event-sound}/sound-effect-player.js +0 -0
@@ -15,6 +15,7 @@ import { FcrUIWidgetProvider } from '../../providers/widget-provider';
15
15
  import { FcrUIChatProvider } from '../../providers/chat-provider';
16
16
  import { FcrUIAbilityProviderImpl } from 'fcr-ui-scene/src/providers/ability-provider';
17
17
  import { CurrentShareScreenWorkArea } from '../../utilities/tools';
18
+ import { FcrUIScreenShareProvider } from '../../providers/screen-share-provider';
18
19
  export declare const HIGH_LEVEL_DIALOG_LAYER: FcrUIDialogKey[];
19
20
  export declare const TOP_LEVEL_DIALOG_LAYER: FcrUIDialogKey[];
20
21
  export default class DialogStore {
@@ -29,6 +30,7 @@ export default class DialogStore {
29
30
  private _remoteVideoRenderManager;
30
31
  private _dialogProvider;
31
32
  private _widgetProvider;
33
+ private _screenShareProvider;
32
34
  private _sharedLayoutDataSource;
33
35
  private _phoneAudioConnectorProvider;
34
36
  private _dialogComponentMapByKey;
@@ -65,7 +67,9 @@ export default class DialogStore {
65
67
  get connectType(): import("../../type").FcrUIConnectType;
66
68
  get hasOwnPstnStream(): boolean;
67
69
  get widgetDialogIds(): Map<string, string>;
68
- constructor({ uiEventStore, userControl, deviceStore, streamControl, localVideoRenderProvider, remoteVideoRenderManager, securityStore, sharedLayoutDataSource, dialogProvider, phoneAudioConnectorProvider, dialogsByKey, widgetProvider, chatProvider, }: {
70
+ get chatRoomState(): import("fcr-core/lib/room-control/chatroom-control/type").FcrChatRoomConnectionState;
71
+ get isSharingScreen(): boolean;
72
+ constructor({ uiEventStore, userControl, deviceStore, streamControl, localVideoRenderProvider, remoteVideoRenderManager, securityStore, sharedLayoutDataSource, dialogProvider, phoneAudioConnectorProvider, dialogsByKey, widgetProvider, screenShareProvider, chatProvider, }: {
69
73
  streamControl: FcrStreamControl;
70
74
  userControl: FcrUserControl;
71
75
  uiEventStore: FcrUIEventProvider;
@@ -79,9 +83,9 @@ export default class DialogStore {
79
83
  dialogsByKey: Map<FcrUIDialogKey, FcrUIDialogComponent>;
80
84
  widgetProvider: FcrUIWidgetProvider;
81
85
  chatProvider: FcrUIChatProvider;
86
+ screenShareProvider: FcrUIScreenShareProvider;
82
87
  abilityProvider: FcrUIAbilityProviderImpl;
83
88
  });
84
- get chatRoomState(): import("fcr-core/lib/room-control/chatroom-control/type").FcrChatRoomConnectionState;
85
89
  setParticipantElectronDialogContainer(dom: HTMLElement | null): void;
86
90
  setVideoWindowBounds(payload: any): void;
87
91
  closeDialogByKey(dialogKey: FcrUIDialogKey): void;
@@ -95,8 +99,9 @@ export default class DialogStore {
95
99
  release(): void;
96
100
  resizeVideoWindow(width: number, height: number): void;
97
101
  updateCurrentShareContent(payload: CurrentShareScreenTypes): void;
98
- getCurrentSharingScreenBounds(): CurrentShareScreenWorkArea;
102
+ recordCurrentSharingScreenBounds(): CurrentShareScreenWorkArea;
99
103
  private _handleDialogEvent;
100
104
  private _hanleAllUserCountUpdated;
105
+ private _focusDialog;
101
106
  }
102
107
  export declare const StoreContext: import("react").Context<DialogStore>;
@@ -7,6 +7,7 @@ require("core-js/modules/es.error.cause.js");
7
7
  require("core-js/modules/es.error.to-string.js");
8
8
  require("core-js/modules/es.array.is-array.js");
9
9
  require("core-js/modules/es.date.to-primitive.js");
10
+ require("core-js/modules/es.function.bind.js");
10
11
  require("core-js/modules/es.function.name.js");
11
12
  require("core-js/modules/es.number.constructor.js");
12
13
  require("core-js/modules/es.object.create.js");
@@ -32,7 +33,6 @@ require("core-js/modules/es.array.includes.js");
32
33
  require("core-js/modules/es.array.iterator.js");
33
34
  require("core-js/modules/es.array.push.js");
34
35
  require("core-js/modules/es.array.some.js");
35
- require("core-js/modules/es.function.bind.js");
36
36
  require("core-js/modules/es.map.js");
37
37
  require("core-js/modules/es.object.to-string.js");
38
38
  require("core-js/modules/es.string.includes.js");
@@ -80,9 +80,10 @@ var _dialogProvider = require("../../providers/dialog-provider");
80
80
  var _type2 = require("agora-rte-sdk/lib/core/rtc/type");
81
81
  var _logger = require("../../utilities/logger");
82
82
  var _tools = require("../../utilities/tools");
83
+ var _useElectron = require("./hooks/useElectron");
83
84
  var _excluded = ["x", "y"];
84
85
  var _DialogStore;
85
- var _initProto, _init_openedDialogs, _init_confirmDialogs, _init_userCount, _init_participantElectronDialogContainer, _init_currentDialogBounds, _init_videoWindowBounds, _init_currentShareId, _init_currentShareType, _init_currentShareBounds, _init_recordShareBounds, _setVideoWindowBoundsDecs, _updateCurrentShareContentDecs, _getCurrentSharingScreenBoundsDecs, _handleDialogEventDecs, _hanleAllUserCountUpdatedDecs, _ref;
86
+ var _initProto, _init_openedDialogs, _init_confirmDialogs, _init_userCount, _init_participantElectronDialogContainer, _init_currentDialogBounds, _init_videoWindowBounds, _init_currentShareId, _init_currentShareType, _init_currentShareBounds, _init_recordShareBounds, _setVideoWindowBoundsDecs, _updateCurrentShareContentDecs, _recordCurrentSharingScreenBoundsDecs, _handleDialogEventDecs, _hanleAllUserCountUpdatedDecs, _ref;
86
87
  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; }
87
88
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
88
89
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
@@ -107,7 +108,7 @@ var _G = /*#__PURE__*/new WeakMap();
107
108
  var _H = /*#__PURE__*/new WeakMap();
108
109
  var _I = /*#__PURE__*/new WeakMap();
109
110
  var _J = /*#__PURE__*/new WeakMap();
110
- _ref = (_setVideoWindowBoundsDecs = [_mobx.action, _mobx.action.bound], _updateCurrentShareContentDecs = [_mobx.action, _mobx.action.bound], _getCurrentSharingScreenBoundsDecs = [_mobx.action, _mobx.action.bound], _handleDialogEventDecs = [_mobx.action, _mobx.action.bound], _hanleAllUserCountUpdatedDecs = [_mobx.action, _mobx.action.bound], "logger");
111
+ _ref = (_setVideoWindowBoundsDecs = [_mobx.action, _mobx.action.bound], _updateCurrentShareContentDecs = [_mobx.action, _mobx.action.bound], _recordCurrentSharingScreenBoundsDecs = [_mobx.action, _mobx.action.bound], _handleDialogEventDecs = [_mobx.action, _mobx.action.bound], _hanleAllUserCountUpdatedDecs = [_mobx.action, _mobx.action.bound], "logger");
111
112
  var DialogStore = exports["default"] = /*#__PURE__*/function () {
112
113
  function DialogStore(_ref2) {
113
114
  var _this = this;
@@ -123,16 +124,17 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
123
124
  phoneAudioConnectorProvider = _ref2.phoneAudioConnectorProvider,
124
125
  dialogsByKey = _ref2.dialogsByKey,
125
126
  widgetProvider = _ref2.widgetProvider,
127
+ screenShareProvider = _ref2.screenShareProvider,
126
128
  chatProvider = _ref2.chatProvider;
127
129
  (0, _classCallCheck2["default"])(this, DialogStore);
128
130
  (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
129
131
  prefix: 'DialogStore'
130
132
  })));
131
133
  (0, _defineProperty2["default"])(this, "_handleDialogEventObserver", {
132
- onEvent: this._handleDialogEvent.bind(this)
134
+ onEvent: this._handleDialogEvent
133
135
  });
134
136
  (0, _defineProperty2["default"])(this, "_userObserver", {
135
- onAllUserCountUpdated: this._hanleAllUserCountUpdated.bind(this)
137
+ onAllUserCountUpdated: this._hanleAllUserCountUpdated
136
138
  });
137
139
  _classPrivateFieldInitSpec(this, _A, _init_openedDialogs(this, []));
138
140
  _classPrivateFieldInitSpec(this, _B, _init_confirmDialogs(this, new Map()));
@@ -162,6 +164,7 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
162
164
  this._dialogComponentMapByKey = dialogsByKey;
163
165
  this._widgetProvider = widgetProvider;
164
166
  this._chatProvider = chatProvider;
167
+ this._screenShareProvider = screenShareProvider;
165
168
  this._userControl.addObserver(this._userObserver);
166
169
  this._uiEventStore.addObserver(this._handleDialogEventObserver);
167
170
  this._dialogProvider.addObserver(this._handleDialogEventObserver);
@@ -320,6 +323,11 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
320
323
  get: function get() {
321
324
  return this._chatProvider.chatConnectionState;
322
325
  }
326
+ }, {
327
+ key: "isSharingScreen",
328
+ get: function get() {
329
+ return this._screenShareProvider.isSharingScreen;
330
+ }
323
331
  }, {
324
332
  key: "setParticipantElectronDialogContainer",
325
333
  value: function setParticipantElectronDialogContainer(dom) {
@@ -419,8 +427,8 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
419
427
  this.currentShareBounds = bounds;
420
428
  }
421
429
  }, {
422
- key: "getCurrentSharingScreenBounds",
423
- value: function getCurrentSharingScreenBounds() {
430
+ key: "recordCurrentSharingScreenBounds",
431
+ value: function recordCurrentSharingScreenBounds() {
424
432
  var recordShareBounds = this.recordShareBounds;
425
433
  var currentShareBounds = this.currentShareBounds;
426
434
  var screenBounds = undefined;
@@ -442,15 +450,14 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
442
450
  x: x,
443
451
  y: y
444
452
  }, bounds);
453
+ this.logger.info('recordCurrentSharingScreenBounds is called and the recordShareBounds has currentShareBounds value, the value is', screenBounds);
445
454
  } else {
446
455
  recordShareBounds.clear();
447
456
  screenBounds = (0, _tools.getCurrentSharingWorkArea)({
448
- currentShareId: this.currentShareId,
449
- currentShareType: this.currentShareType,
450
- allApplicationWindows: [],
451
457
  currentShareBounds: this.currentShareBounds
452
458
  });
453
459
  recordShareBounds.set(currentShareBounds, screenBounds);
460
+ this.logger.info('recordCurrentSharingScreenBounds is called and the recordShareBounds is initialled, the value is', screenBounds);
454
461
  }
455
462
  return screenBounds;
456
463
  }
@@ -464,22 +471,13 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
464
471
  params = _ref6$params === void 0 ? {} : _ref6$params;
465
472
  switch (action) {
466
473
  case _constant.FcrUIAction.OPEN_DIALOG:
474
+ this.logger.info('open_dialog: ', dialogKey, '====', dialogId);
467
475
  // 因为窗口可能会移动,因此需要矫正 global toast 和 confirm 的 Bounds
468
476
  var isToastOrConfirm = [_constant.FcrUIDialogKey.SHOW_TOAST, _constant.FcrUIDialogKey.CONFIRM].includes(dialogKey);
477
+ this._focusDialog(dialogKey, dialogId);
469
478
  if (isToastOrConfirm && (0, _env.isElectron)()) {
470
479
  var _dialogWindows$get, _dialogWindows$get2;
471
- var toastWindow = _dialogs.dialogWindows.get(_constant.FcrUIDialogKey.SHOW_TOAST);
472
- var confirmWindow = _dialogs.dialogWindows.get(_constant.FcrUIDialogKey.CONFIRM);
473
- var controlbar = _dialogs.dialogWindows.get(_constant.FcrUIDialogKey.CONTROL_BAR);
474
- var nearDispaly = window.runtime.screen.getDisplayNearestPoint(controlbar && controlbar.isVisible() ? controlbar === null || controlbar === void 0 ? void 0 : controlbar.getBounds() : window.runtime.browserWindow.getBounds()).bounds;
475
- var bounds = {
476
- x: Math.floor(nearDispaly.x),
477
- y: Math.floor(nearDispaly.y),
478
- width: Math.floor(nearDispaly.width),
479
- height: Math.floor(nearDispaly.height)
480
- };
481
- toastWindow === null || toastWindow === void 0 || toastWindow.setBounds(bounds);
482
- confirmWindow === null || confirmWindow === void 0 || confirmWindow.setBounds(bounds);
480
+ // followCorrectDisplay([FcrUIDialogKey.CONFIRM, FcrUIDialogKey.SHOW_TOAST]); 已经内置到各自的 store
483
481
  if (!(0, _platform.isWindows)()) {
484
482
  _dialogs.dialogWindows.forEach(function (window, key) {
485
483
  if (key === dialogKey || HIGH_LEVEL_DIALOG_LAYER.includes(key) || TOP_LEVEL_DIALOG_LAYER.includes(key)) return;
@@ -487,7 +485,7 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
487
485
  });
488
486
  }
489
487
  (_dialogWindows$get = _dialogs.dialogWindows.get(dialogKey)) === null || _dialogWindows$get === void 0 || _dialogWindows$get.focus();
490
- (_dialogWindows$get2 = _dialogs.dialogWindows.get(dialogKey)) === null || _dialogWindows$get2 === void 0 || _dialogWindows$get2.setAlwaysOnTop(true, 'screen-saver');
488
+ (_dialogWindows$get2 = _dialogs.dialogWindows.get(dialogKey)) === null || _dialogWindows$get2 === void 0 || _dialogWindows$get2.setAlwaysOnTop(true, _useElectron.diffPlatformTopLevelLayer);
491
489
  // toast 有独立逻辑 src/event-dialog
492
490
  // confirm 有独立逻辑 src/evnet-confirm
493
491
  return;
@@ -496,8 +494,7 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
496
494
  return dialog.dialogId === dialogId;
497
495
  });
498
496
  if (currentDialog) {
499
- var _dialogWindows$get3;
500
- (_dialogWindows$get3 = _dialogs.dialogWindows.get(dialogKey)) === null || _dialogWindows$get3 === void 0 || _dialogWindows$get3.focus();
497
+ this._focusDialog(dialogKey, dialogId);
501
498
  } else {
502
499
  this.openedDialogs.push({
503
500
  dialogKey: dialogKey,
@@ -510,6 +507,7 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
510
507
  this.openedDialogs = this.openedDialogs.filter(function (dialog) {
511
508
  return dialog.dialogId !== dialogId;
512
509
  });
510
+ this.closeDialogByKey(dialogKey);
513
511
  break;
514
512
  case _constant.FcrUIAction.VIDEO_WINDOW_BOUNDS:
515
513
  this.setVideoWindowBounds(payload);
@@ -526,10 +524,24 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
526
524
  value: function _hanleAllUserCountUpdated(_roomId, count) {
527
525
  this.userCount = count;
528
526
  }
527
+ }, {
528
+ key: "_focusDialog",
529
+ value: function _focusDialog(dialogKey, dialogId) {
530
+ if ((0, _env.isElectron)()) {
531
+ var canFindById = _dialogs.dialogIdWindows.has(dialogId);
532
+ if (canFindById) {
533
+ var _dialogIdWindows$get;
534
+ (_dialogIdWindows$get = _dialogs.dialogIdWindows.get(dialogId)) === null || _dialogIdWindows$get === void 0 || _dialogIdWindows$get.focus();
535
+ } else {
536
+ var _dialogWindows$get3;
537
+ (_dialogWindows$get3 = _dialogs.dialogWindows.get(dialogKey)) === null || _dialogWindows$get3 === void 0 || _dialogWindows$get3.focus();
538
+ }
539
+ }
540
+ }
529
541
  }]);
530
542
  }();
531
543
  _DialogStore = DialogStore;
532
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_DialogStore, [[_mobx.observable, 1, "openedDialogs"], [_mobx.observable, 1, "confirmDialogs"], [_mobx.observable, 1, "userCount"], [_mobx.observable, 1, "participantElectronDialogContainer"], [_mobx.observable, 1, "currentDialogBounds"], [_mobx.observable, 1, "videoWindowBounds"], [_mobx.observable, 1, "currentShareId"], [_mobx.observable, 1, "currentShareType"], [_mobx.observable, 1, "currentShareBounds"], [_mobx.observable, 1, "recordShareBounds"], [_mobx.computed, 3, "connectType"], [_mobx.computed, 3, "hasOwnPstnStream"], [_mobx.computed, 3, "chatRoomState"], [_mobx.action, 2, "setParticipantElectronDialogContainer"], [_setVideoWindowBoundsDecs, 18, "setVideoWindowBounds"], [_decorator.bound, 2, "closeDialogByKey"], [_decorator.bound, 2, "closeDilaogByDialogId"], [_decorator.bound, 2, "closeSystemPreferenceDialog"], [_decorator.bound, 2, "closeChatFromDialog"], [_decorator.bound, 2, "moveChatFromDialogToAside"], [_decorator.bound, 2, "closeConnectionDialog"], [_decorator.bound, 2, "closeParticipantDialog"], [_decorator.bound, 2, "moveParticipantFromDialogToAside"], [_decorator.bound, 2, "resizeVideoWindow"], [_updateCurrentShareContentDecs, 18, "updateCurrentShareContent"], [_getCurrentSharingScreenBoundsDecs, 18, "getCurrentSharingScreenBounds"], [_handleDialogEventDecs, 18, "_handleDialogEvent"], [_hanleAllUserCountUpdatedDecs, 18, "_hanleAllUserCountUpdated"]], []).e, 11);
544
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_DialogStore, [[_mobx.observable, 1, "openedDialogs"], [_mobx.observable, 1, "confirmDialogs"], [_mobx.observable, 1, "userCount"], [_mobx.observable, 1, "participantElectronDialogContainer"], [_mobx.observable, 1, "currentDialogBounds"], [_mobx.observable, 1, "videoWindowBounds"], [_mobx.observable, 1, "currentShareId"], [_mobx.observable, 1, "currentShareType"], [_mobx.observable, 1, "currentShareBounds"], [_mobx.observable, 1, "recordShareBounds"], [_mobx.computed, 3, "connectType"], [_mobx.computed, 3, "hasOwnPstnStream"], [_mobx.computed, 3, "chatRoomState"], [_mobx.action, 2, "setParticipantElectronDialogContainer"], [_setVideoWindowBoundsDecs, 18, "setVideoWindowBounds"], [_decorator.bound, 2, "closeDialogByKey"], [_decorator.bound, 2, "closeDilaogByDialogId"], [_decorator.bound, 2, "closeSystemPreferenceDialog"], [_decorator.bound, 2, "closeChatFromDialog"], [_decorator.bound, 2, "moveChatFromDialogToAside"], [_decorator.bound, 2, "closeConnectionDialog"], [_decorator.bound, 2, "closeParticipantDialog"], [_decorator.bound, 2, "moveParticipantFromDialogToAside"], [_decorator.bound, 2, "resizeVideoWindow"], [_updateCurrentShareContentDecs, 18, "updateCurrentShareContent"], [_recordCurrentSharingScreenBoundsDecs, 18, "recordCurrentSharingScreenBounds"], [_handleDialogEventDecs, 18, "_handleDialogEvent"], [_hanleAllUserCountUpdatedDecs, 18, "_hanleAllUserCountUpdated"], [_decorator.bound, 2, "_focusDialog"]], []).e, 11);
533
545
  _init_openedDialogs = _applyDecs$e[0];
534
546
  _init_confirmDialogs = _applyDecs$e[1];
535
547
  _init_userCount = _applyDecs$e[2];
@@ -77,6 +77,7 @@ export type FcrUIDialogHooksProps = {
77
77
  export type FcrUIDialogComponent = React.FC<FcrDialogProps>;
78
78
  export type FcrDialogProps = {
79
79
  params: unknown;
80
+ dialogId: string;
80
81
  };
81
82
  export type FcrUIDialogInfo = {
82
83
  key: FcrUIDialogKey;
@@ -26,7 +26,8 @@ var View = exports.View = (0, _mobxReact.observer)(function () {
26
26
  var DialogComponent = dialogComponentMapByKey.get(dialogKey);
27
27
  if (DialogComponent) {
28
28
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(DialogComponent, {
29
- params: params
29
+ params: params,
30
+ dialogId: dialogId
30
31
  }, dialogId);
31
32
  }
32
33
  return null;
@@ -6,6 +6,7 @@ import { FcrUICurrentRoomControlProvider, FcrUIRoomProvider } from '../../provid
6
6
  import { FcrUIMemberSharedDataSource } from '../../shared-data-source/member-data';
7
7
  import { FcrUIAbilityProviderImpl } from '../../providers/ability-provider';
8
8
  import { FcrUIScreenShareProvider } from '../../providers/screen-share-provider';
9
+ import { FcrUIScreenShareDataSource } from '../../shared-data-source/screen-share-data-source';
9
10
  export declare class EventConfirmUIModule extends UIModule {
10
11
  private _store?;
11
12
  private _leaveMeetingStore?;
@@ -17,6 +18,7 @@ export declare class EventConfirmUIModule extends UIModule {
17
18
  roomProvider?: FcrUIRoomProvider;
18
19
  sharedMemberDataSource?: FcrUIMemberSharedDataSource;
19
20
  abilityProvider?: FcrUIAbilityProviderImpl;
21
+ screenShareDataSource?: FcrUIScreenShareDataSource;
20
22
  onNodeWillActive(): void;
21
23
  onNodeWillInactive(): void;
22
24
  getComponent(): import("react/jsx-runtime").JSX.Element;
@@ -44,7 +44,8 @@ var EventConfirmUIModule = exports.EventConfirmUIModule = /*#__PURE__*/function
44
44
  this._store = new _store2["default"]({
45
45
  uiEventStore: this.eventProvider,
46
46
  dialogProvider: this.dialogProvider,
47
- screenShareProvider: this.screenShareProvider
47
+ screenShareProvider: this.screenShareProvider,
48
+ screenShareDataSource: this.screenShareDataSource
48
49
  });
49
50
  this._leaveMeetingStore = new _store.LeaveMeetingStore(this.privilegeProvider, this.roomProvider, (_this$currentRoomCont = this.currentRoomControlProvider) === null || _this$currentRoomCont === void 0 ? void 0 : _this$currentRoomCont.currentRoomControl, this.sharedMemberDataSource, this.abilityProvider, this.dialogProvider);
50
51
  }
@@ -3,28 +3,36 @@ import { FcrUIEventProvider } from '../../providers/event-provider';
3
3
  import { FcrUIDialogParams } from '../../type';
4
4
  import { FcrUIDialogProvider } from '../../providers/dialog-provider';
5
5
  import { FcrUIScreenShareProvider } from '../../providers/screen-share-provider';
6
+ import { CurrentShareBounds } from '../control-bar/types';
7
+ import { FcrUIScreenShareDataSource } from '../../shared-data-source/screen-share-data-source';
6
8
  export default class ConfirmStore {
7
9
  protected logger: import("agora-foundation/lib/logger").Logger;
8
10
  private _disposers;
9
11
  private _uiEventProvider;
10
12
  private _dialogProvider;
11
13
  private _screenShareProvider;
14
+ private _screenShareDataSource;
12
15
  private _handleConfirmEventObserver;
13
16
  accessor isReplaceShare: boolean;
17
+ accessor calculateMethods: Map<ConfirmContentProps, (bounds?: CurrentShareBounds | null) => void>;
18
+ accessor reposition: number;
14
19
  accessor confirms: Map<string, {
15
20
  params: ConfirmContentProps;
16
21
  timer?: () => void;
17
22
  }>;
23
+ accessor screenBounds: CurrentShareBounds | Electron.Rectangle | null;
18
24
  get confirmList(): ConfirmContentProps[];
19
25
  get isSeizeScreen(): boolean;
20
- constructor({ uiEventStore, dialogProvider, screenShareProvider, }: {
26
+ constructor({ uiEventStore, dialogProvider, screenShareProvider, screenShareDataSource, }: {
21
27
  uiEventStore: FcrUIEventProvider;
22
28
  dialogProvider: FcrUIDialogProvider;
23
29
  screenShareProvider: FcrUIScreenShareProvider;
30
+ screenShareDataSource: FcrUIScreenShareDataSource;
24
31
  });
25
32
  addConfirm(payload: FcrUIDialogParams<ConfirmContentProps>): void;
26
33
  resetIsReplace(): void;
27
34
  release(): void;
35
+ log(log: string): void;
28
36
  private _handleConfirmEvent;
29
37
  }
30
38
  export declare const StoreContext: import("react").Context<ConfirmStore>;
@@ -32,7 +32,9 @@ require("core-js/modules/es.array.from.js");
32
32
  require("core-js/modules/es.array.iterator.js");
33
33
  require("core-js/modules/es.array.map.js");
34
34
  require("core-js/modules/es.array.push.js");
35
+ require("core-js/modules/es.date.to-json.js");
35
36
  require("core-js/modules/es.function.bind.js");
37
+ require("core-js/modules/es.json.stringify.js");
36
38
  require("core-js/modules/es.map.js");
37
39
  require("core-js/modules/es.object.to-string.js");
38
40
  require("core-js/modules/es.string.iterator.js");
@@ -70,8 +72,11 @@ var _mobx = require("mobx");
70
72
  var _constant = require("../../utilities/constant");
71
73
  var _react = require("react");
72
74
  var _logger = require("../../utilities/logger");
75
+ var _decorator = require("agora-foundation/lib/decorator");
76
+ var _tools = require("../../utilities/tools");
77
+ var _env = require("agora-foundation/lib/utilities/env");
73
78
  var _ConfirmStore;
74
- var _initProto, _init_isReplaceShare, _init_confirms, _addConfirmDecs, _resetIsReplaceDecs, _handleConfirmEventDecs, _ref;
79
+ var _initProto, _init_isReplaceShare, _init_calculateMethods, _init_reposition, _init_confirms, _init_screenBounds, _addConfirmDecs, _resetIsReplaceDecs, _handleConfirmEventDecs, _ref;
75
80
  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; }
76
81
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
77
82
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
@@ -86,13 +91,17 @@ function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.descr
86
91
  function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
87
92
  var _A = /*#__PURE__*/new WeakMap();
88
93
  var _B = /*#__PURE__*/new WeakMap();
94
+ var _C = /*#__PURE__*/new WeakMap();
95
+ var _D = /*#__PURE__*/new WeakMap();
96
+ var _E = /*#__PURE__*/new WeakMap();
89
97
  _ref = (_addConfirmDecs = [_mobx.action, _mobx.action.bound], _resetIsReplaceDecs = [_mobx.action, _mobx.action.bound], _handleConfirmEventDecs = [_mobx.action, _mobx.action.bound], "logger");
90
98
  var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
91
99
  function ConfirmStore(_ref2) {
92
100
  var _this = this;
93
101
  var uiEventStore = _ref2.uiEventStore,
94
102
  dialogProvider = _ref2.dialogProvider,
95
- screenShareProvider = _ref2.screenShareProvider;
103
+ screenShareProvider = _ref2.screenShareProvider,
104
+ screenShareDataSource = _ref2.screenShareDataSource;
96
105
  (0, _classCallCheck2["default"])(this, ConfirmStore);
97
106
  (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
98
107
  prefix: 'ConfirmStore'
@@ -102,10 +111,14 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
102
111
  onEvent: this._handleConfirmEvent.bind(this)
103
112
  });
104
113
  _classPrivateFieldInitSpec(this, _A, _init_isReplaceShare(this, false));
105
- _classPrivateFieldInitSpec(this, _B, _init_confirms(this, new Map()));
114
+ _classPrivateFieldInitSpec(this, _B, _init_calculateMethods(this, new Map()));
115
+ _classPrivateFieldInitSpec(this, _C, _init_reposition(this, 0));
116
+ _classPrivateFieldInitSpec(this, _D, _init_confirms(this, new Map()));
117
+ _classPrivateFieldInitSpec(this, _E, _init_screenBounds(this, (0, _env.isElectron)() ? window.runtime.browserWindow.getBounds() : null));
106
118
  this._uiEventProvider = uiEventStore;
107
119
  this._dialogProvider = dialogProvider;
108
120
  this._screenShareProvider = screenShareProvider;
121
+ this._screenShareDataSource = screenShareDataSource;
109
122
  this._uiEventProvider.addObserver(this._handleConfirmEventObserver);
110
123
  this._dialogProvider.addObserver(this._handleConfirmEventObserver);
111
124
  this._disposers.push((0, _mobx.reaction)(function () {
@@ -115,6 +128,41 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
115
128
  var _value$timer;
116
129
  value === null || value === void 0 || (_value$timer = value.timer) === null || _value$timer === void 0 || _value$timer.call(value);
117
130
  });
131
+ }), (0, _mobx.reaction)(function () {
132
+ var _this$_screenShareDat;
133
+ return (_this$_screenShareDat = _this._screenShareDataSource) === null || _this$_screenShareDat === void 0 ? void 0 : _this$_screenShareDat.currentShareBounds;
134
+ }, function (bounds) {
135
+ if (bounds) {
136
+ var _ref3 = (0, _tools.followCorrectDisplay)({
137
+ dialogKey: _constant.FcrUIDialogKey.CONFIRM,
138
+ alwaysFollowScreen: true
139
+ }),
140
+ nearDisplayBounds = _ref3.nearDisplayBounds;
141
+ _this.calculateMethods.forEach(function (method) {
142
+ return method(nearDisplayBounds);
143
+ });
144
+ _this.logger.info("new sharing bounds is ".concat(JSON.stringify(nearDisplayBounds)));
145
+ _this.screenBounds = nearDisplayBounds;
146
+ } else {
147
+ _this.logger.error("there is have no bounds ".concat(JSON.stringify(bounds)));
148
+ }
149
+ }), (0, _mobx.reaction)(function () {
150
+ return _this.isSeizeScreen;
151
+ }, function (isSeize) {
152
+ if (isSeize && (0, _env.isElectron)()) {
153
+ var _ref4 = (0, _tools.followCorrectDisplay)({
154
+ dialogKey: _constant.FcrUIDialogKey.CONFIRM,
155
+ alwaysFollowScreen: true,
156
+ extraRefControlbarCondition: isSeize
157
+ }),
158
+ nearDisplayBounds = _ref4.nearDisplayBounds;
159
+ _this.screenBounds = nearDisplayBounds;
160
+ _this.logger.info("new sharing bounds is ".concat(JSON.stringify(nearDisplayBounds), ", when seize screen emit"));
161
+ }
162
+ }), (0, _mobx.reaction)(function () {
163
+ return _this.screenBounds;
164
+ }, function (bounds) {
165
+ _this.logger.debug("the bounds is changed=>", bounds);
118
166
  }));
119
167
  }
120
168
  return (0, _createClass2["default"])(ConfirmStore, [{
@@ -126,13 +174,37 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
126
174
  _classPrivateFieldSet(_A, this, v);
127
175
  }
128
176
  }, {
129
- key: "confirms",
177
+ key: "calculateMethods",
130
178
  get: function get() {
131
179
  return _classPrivateFieldGet(_B, this);
132
180
  },
133
181
  set: function set(v) {
134
182
  _classPrivateFieldSet(_B, this, v);
135
183
  }
184
+ }, {
185
+ key: "reposition",
186
+ get: function get() {
187
+ return _classPrivateFieldGet(_C, this);
188
+ },
189
+ set: function set(v) {
190
+ _classPrivateFieldSet(_C, this, v);
191
+ }
192
+ }, {
193
+ key: "confirms",
194
+ get: function get() {
195
+ return _classPrivateFieldGet(_D, this);
196
+ },
197
+ set: function set(v) {
198
+ _classPrivateFieldSet(_D, this, v);
199
+ }
200
+ }, {
201
+ key: "screenBounds",
202
+ get: function get() {
203
+ return _classPrivateFieldGet(_E, this);
204
+ },
205
+ set: function set(v) {
206
+ _classPrivateFieldSet(_E, this, v);
207
+ }
136
208
  }, {
137
209
  key: "confirmList",
138
210
  get: function get() {
@@ -169,7 +241,11 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
169
241
  }),
170
242
  timer: timer
171
243
  };
172
- if (!this.confirms.get(dialogId)) {
244
+ if (this.confirms.has(dialogId)) {
245
+ this.calculateMethods.forEach(function (method) {
246
+ return method(_this2.screenBounds);
247
+ });
248
+ } else {
173
249
  this.confirms.set(dialogId, confirmParams);
174
250
  }
175
251
  var confirmInstance = this.confirms.get(dialogId);
@@ -210,18 +286,31 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
210
286
  key: "release",
211
287
  value: function release() {
212
288
  this.confirms.clear();
289
+ this.calculateMethods.clear();
213
290
  this._disposers.forEach(function (disposer) {
214
291
  return disposer();
215
292
  });
216
293
  this._dialogProvider.removeObserver(this._handleConfirmEventObserver);
217
294
  this._uiEventProvider.removeObserver(this._handleConfirmEventObserver);
218
295
  }
296
+ }, {
297
+ key: "log",
298
+ value: function log(_log) {
299
+ this.logger.info(_log);
300
+ }
219
301
  }, {
220
302
  key: "_handleConfirmEvent",
221
303
  value: function _handleConfirmEvent(action, payload) {
222
304
  if ((payload === null || payload === void 0 ? void 0 : payload.dialogKey) === _constant.FcrUIDialogKey.CONFIRM) {
223
305
  switch (action) {
224
306
  case _constant.FcrUIAction.OPEN_DIALOG:
307
+ var _ref6 = (0, _tools.followCorrectDisplay)({
308
+ dialogKey: _constant.FcrUIDialogKey.CONFIRM,
309
+ alwaysFollowScreen: true
310
+ }),
311
+ nearDisplayBounds = _ref6.nearDisplayBounds;
312
+ this.screenBounds = nearDisplayBounds;
313
+ this.logger.info("open confirm dialog with bounds ".concat(JSON.stringify(nearDisplayBounds)));
225
314
  this.addConfirm(payload);
226
315
  break;
227
316
  case _constant.FcrUIAction.CLOSE_DIALOG:
@@ -233,8 +322,11 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
233
322
  }]);
234
323
  }();
235
324
  _ConfirmStore = ConfirmStore;
236
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ConfirmStore, [[_mobx.observable, 1, "isReplaceShare"], [_mobx.observable, 1, "confirms"], [_mobx.computed, 3, "confirmList"], [_addConfirmDecs, 18, "addConfirm"], [_resetIsReplaceDecs, 18, "resetIsReplace"], [_handleConfirmEventDecs, 18, "_handleConfirmEvent"]], []).e, 3);
325
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ConfirmStore, [[_mobx.observable, 1, "isReplaceShare"], [_mobx.observable, 1, "calculateMethods"], [_mobx.observable, 1, "reposition"], [_mobx.observable, 1, "confirms"], [_mobx.observable, 1, "screenBounds"], [_mobx.computed, 3, "confirmList"], [_addConfirmDecs, 18, "addConfirm"], [_resetIsReplaceDecs, 18, "resetIsReplace"], [_decorator.bound, 2, "log"], [_handleConfirmEventDecs, 18, "_handleConfirmEvent"]], []).e, 6);
237
326
  _init_isReplaceShare = _applyDecs$e[0];
238
- _init_confirms = _applyDecs$e[1];
239
- _initProto = _applyDecs$e[2];
327
+ _init_calculateMethods = _applyDecs$e[1];
328
+ _init_reposition = _applyDecs$e[2];
329
+ _init_confirms = _applyDecs$e[3];
330
+ _init_screenBounds = _applyDecs$e[4];
331
+ _initProto = _applyDecs$e[5];
240
332
  var StoreContext = exports.StoreContext = /*#__PURE__*/(0, _react.createContext)(null);