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
@@ -6,20 +6,24 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.hookWindow = void 0;
8
8
  require("core-js/modules/es.array.concat.js");
9
+ require("core-js/modules/es.array.includes.js");
9
10
  require("core-js/modules/web.timers.js");
10
11
  var _window = require("./window");
11
12
  var _screenshot = require("./plugins/screenshot");
13
+ var _logger = require("./logger");
14
+ var _meetingState = require("./plugins/meeting-state");
12
15
  var hookWindow = exports.hookWindow = function hookWindow(mainWindow) {
13
- mainWindow.webContents.addListener('did-start-loading', function () {
14
- console.log('main window is gone, close all windows');
15
- (0, _window.closeAllWindows)();
16
- (0, _window.clearAllRendererWindows)();
17
- });
16
+ var logger = (0, _logger.getLogger)();
18
17
  mainWindow.webContents.addListener('did-create-window', function (window, details) {
19
- console.log('browser window is opened, frameName:', details.frameName);
18
+ logger.info("browser window is opened, frameName: ".concat(details.frameName));
19
+ var builtinFrameNames = ['device-setting', 'chat', 'live-streaming', 'participant', 'screen-selection', 'invite', 'video-window', 'confirm-dialog', 'connection-gateway', 'whiteboard', 'progress-dialog', 'operation-waiting-room', 'operation-waiting-room-remove', 'operation-waiting-room-removeAll', 'operation-waiting-room-admitAll'];
20
+ if (!builtinFrameNames.includes(details.frameName)) {
21
+ logger.info("frameName [".concat(details.frameName, "] is not in builtinFrameNames, ignore it"));
22
+ return;
23
+ }
20
24
  (0, _window.putRendererWindow)(details.frameName, window);
21
25
  window.webContents.addListener('destroyed', function () {
22
- console.log('browser window is destroyed, frameName:', details.frameName);
26
+ logger.info("browser window is destroyed, frameName: ".concat(details.frameName));
23
27
  (0, _window.deleteRendererWindow)(details.frameName);
24
28
  });
25
29
 
@@ -27,23 +31,23 @@ var hookWindow = exports.hookWindow = function hookWindow(mainWindow) {
27
31
  // renderer process will receive the will-close event, do some clean up and then call window.close() to close the window
28
32
  window.addListener('close', function (event) {
29
33
  event.preventDefault();
30
- console.log("Window [".concat(window.title, ":").concat(window.id, "] is closed by shortcut CMD + W, send 'will-close' event to that window"));
34
+ logger.info("Window [".concat(window.title, ":").concat(window.id, "] is closed by shortcut CMD + W, send 'will-close' event to that window"));
31
35
  window.emit('will-close');
32
36
  });
33
37
  attachEventOnMethod(window, 'hide', 'CALL_HIDE');
34
38
  attachEventOnMethod(window, 'show', 'CALL_SHOW');
35
39
  });
36
40
  mainWindow.webContents.addListener('render-process-gone', function (event, details) {
37
- console.log('main window render-process-gone, details', details);
38
- console.log('will reload main window');
41
+ logger.info("main window render-process-gone, details: ".concat(details));
39
42
  (0, _window.closeAllWindows)();
40
43
  (0, _window.clearAllRendererWindows)();
41
44
  setTimeout(function () {
42
- console.log('reload main window...');
45
+ logger.info('start reloading main window...');
43
46
  mainWindow.reload();
44
47
  }, 1000);
45
48
  });
46
49
  (0, _screenshot.listenScreenshot)(mainWindow);
50
+ (0, _meetingState.listenMeetingState)(mainWindow);
47
51
  };
48
52
  var attachEventOnMethod = function attachEventOnMethod(browserWindow, method, action) {
49
53
  var func = browserWindow[method];
@@ -0,0 +1,2 @@
1
+ import { BrowserWindow } from 'electron';
2
+ export declare const listenMeetingState: (window: BrowserWindow) => void;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.listenMeetingState = void 0;
8
+ require("core-js/modules/es.array.concat.js");
9
+ var _electron = require("electron");
10
+ var _logger = require("../logger");
11
+ var listenMeetingState = exports.listenMeetingState = function listenMeetingState(window) {
12
+ var logger = (0, _logger.getLogger)();
13
+ var isInMeeting = 0;
14
+ var saveBlockerId = 0;
15
+ _electron.ipcMain.addListener('set-in-meeting-state', function (_, state) {
16
+ isInMeeting = state;
17
+ logger.info('in-meeting state changed', state);
18
+ if (state === 1) {
19
+ if (!_electron.powerSaveBlocker.isStarted(saveBlockerId)) {
20
+ saveBlockerId = _electron.powerSaveBlocker.start('prevent-display-sleep');
21
+ logger.info("power save blocker is started, blocker id: ".concat(saveBlockerId));
22
+ }
23
+ } else {
24
+ if (_electron.powerSaveBlocker.isStarted(saveBlockerId)) {
25
+ var isStopped = _electron.powerSaveBlocker.stop(saveBlockerId);
26
+ logger.info("power save blocker is stopped, blocker id: ".concat(saveBlockerId, ", isStopped: ").concat(isStopped));
27
+ }
28
+ }
29
+ });
30
+ window.addListener('close', function (event) {
31
+ if (isInMeeting === 1) {
32
+ event.preventDefault();
33
+ window.webContents.send('custom-event', {
34
+ action: 'CALL_CLOSE_MAIN_WINDOW',
35
+ payload: window.id
36
+ });
37
+ }
38
+ });
39
+ };
@@ -31,5 +31,6 @@ window.runtime = {
31
31
  fileToBase64: _injections.fileToBase64,
32
32
  registerListenerReady: _injections.registerListenerReady,
33
33
  releaseSubAllWindowRefs: _injections.releaseSubAllWindowRefs,
34
- getMediaSourceIdList: _injections.getMediaSourceIdList
34
+ getMediaSourceIdList: _injections.getMediaSourceIdList,
35
+ setInMeetingState: _injections.setInMeetingState
35
36
  };
@@ -18,6 +18,15 @@ require("core-js/modules/es.number.to-fixed.js");
18
18
  require("core-js/modules/es.object.to-string.js");
19
19
  require("core-js/modules/es.promise.js");
20
20
  require("core-js/modules/es.string.includes.js");
21
+ require("core-js/modules/esnext.async-iterator.filter.js");
22
+ require("core-js/modules/esnext.async-iterator.for-each.js");
23
+ require("core-js/modules/esnext.async-iterator.map.js");
24
+ require("core-js/modules/esnext.async-iterator.reduce.js");
25
+ require("core-js/modules/esnext.iterator.constructor.js");
26
+ require("core-js/modules/esnext.iterator.filter.js");
27
+ require("core-js/modules/esnext.iterator.for-each.js");
28
+ require("core-js/modules/esnext.iterator.map.js");
29
+ require("core-js/modules/esnext.iterator.reduce.js");
21
30
  require("core-js/modules/web.dom-collections.for-each.js");
22
31
  var _systeminformation = _interopRequireDefault(require("systeminformation"));
23
32
  function getProcessIds(processName) {
@@ -1,4 +1,4 @@
1
- import Electron, { BrowserWindow } from 'electron';
1
+ import Electron from 'electron';
2
2
  export declare const windowOptionsMap: Record<string, Electron.BrowserWindowConstructorOptions>;
3
3
  export declare const webPreferencesMap: Record<string, Electron.WebPreferences>;
4
4
  export declare const open: (entryPath: string, dialogId?: string) => void;
@@ -9,10 +9,16 @@ require("core-js/modules/es.object.define-properties.js");
9
9
  require("core-js/modules/es.object.define-property.js");
10
10
  require("core-js/modules/es.object.get-own-property-descriptor.js");
11
11
  require("core-js/modules/es.object.get-own-property-descriptors.js");
12
- require("core-js/modules/es.object.keys.js");
13
12
  require("core-js/modules/es.object.to-string.js");
14
13
  require("core-js/modules/es.string.iterator.js");
15
14
  require("core-js/modules/es.weak-map.js");
15
+ require("core-js/modules/esnext.async-iterator.filter.js");
16
+ require("core-js/modules/esnext.async-iterator.for-each.js");
17
+ require("core-js/modules/esnext.iterator.constructor.js");
18
+ require("core-js/modules/esnext.iterator.filter.js");
19
+ require("core-js/modules/esnext.iterator.for-each.js");
20
+ require("core-js/modules/esnext.weak-map.delete-all.js");
21
+ require("core-js/modules/esnext.weak-map.emplace.js");
16
22
  require("core-js/modules/web.dom-collections.for-each.js");
17
23
  require("core-js/modules/web.dom-collections.iterator.js");
18
24
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -23,9 +29,11 @@ Object.defineProperty(exports, "__esModule", {
23
29
  exports.windowOptionsMap = exports.webPreferencesMap = exports.setFragmentBaseUrl = exports.putRendererWindow = exports.open = exports.getWindowKeyById = exports.getRendererWindow = exports.deleteRendererWindow = exports.closeAllWindows = exports.close = exports.clearAllRendererWindows = void 0;
24
30
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
31
  require("core-js/modules/es.array.concat.js");
32
+ require("core-js/modules/es.object.keys.js");
26
33
  var _electron = require("electron");
27
34
  var _defaultOptions = require("./default-options");
28
35
  var env = _interopRequireWildcard(require("./env"));
36
+ var _logger = require("./logger");
29
37
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
30
38
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
31
39
  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; }
@@ -37,6 +45,7 @@ var rendererWindows = {};
37
45
  var windowKeyById = {};
38
46
  var isDev = env.isDev;
39
47
  var baseUrl = env.devPageUrl;
48
+ var logger = (0, _logger.getLogger)();
40
49
  var loadFragment = function loadFragment(browserWindow, path) {
41
50
  var url = isDev ? "".concat(baseUrl, "/").concat(path, ".html") : "dist/".concat(path, ".html");
42
51
  if (isDev) {
@@ -59,7 +68,7 @@ var open = exports.open = function open(entryPath, dialogId) {
59
68
  delete windowKeyById[windowId];
60
69
  });
61
70
  browserWindow.webContents.addListener('render-process-gone', function (event, arg) {
62
- console.log('browserWindow render-process-gone', arg);
71
+ logger.info("BrowserWindow [".concat(entryPath, "] render-process-gone: ").concat(arg));
63
72
  });
64
73
  loadFragment(browserWindow, entryPath);
65
74
  windows[key] = browserWindow;
@@ -91,12 +100,15 @@ var closeAllWindows = exports.closeAllWindows = function closeAllWindows() {
91
100
  windowKeyById = {};
92
101
  };
93
102
  var putRendererWindow = exports.putRendererWindow = function putRendererWindow(entryPath, browserWindow) {
103
+ logger.info('[RendererWindow] putRendererWindow', entryPath);
94
104
  rendererWindows[entryPath] = browserWindow;
95
105
  };
96
106
  var deleteRendererWindow = exports.deleteRendererWindow = function deleteRendererWindow(entryPath) {
107
+ logger.info('[RendererWindow] deleteRendererWindow', entryPath);
97
108
  delete rendererWindows[entryPath];
98
109
  };
99
110
  var getRendererWindow = exports.getRendererWindow = function getRendererWindow(entryPath) {
111
+ logger.info('[RendererWindow] getRendererWindow', entryPath, Object.keys(rendererWindows));
100
112
  return rendererWindows[entryPath];
101
113
  };
102
114
  var clearAllRendererWindows = exports.clearAllRendererWindows = function clearAllRendererWindows() {
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import ControlBarStore from './control-bar-store';
3
2
  export declare const StoreContext: import("react").Context<ControlBarStore>;
@@ -1,7 +1,7 @@
1
1
  import { RendererEventAction } from '../../utilities/constant';
2
2
  import { AgoraRtcScreenCaptureType, AgoraRtcWindowInfo } from 'agora-rte-sdk/lib/core/rtc/type';
3
3
  import { AudioProcessingChannel } from 'agora-ui-foundation/lib/components/room-screen-share-state-bar/share-audio';
4
- import { FcrRecordingState, FcrUserRole, FcrLiveStreamingState } from 'agora-edu-core/lib/type';
4
+ import { FcrRecordingState, FcrUserRole, FcrLiveStreamingState, FcrRoomInfo, FcrUserInfo } from 'agora-edu-core/lib/type';
5
5
  import { ConnectType } from '../../modules/action-bar/type';
6
6
  export default class ControlBarStore {
7
7
  protected logger: import("agora-foundation/lib/logger").Logger;
@@ -26,6 +26,7 @@ export default class ControlBarStore {
26
26
  accessor allowChat: boolean;
27
27
  accessor allowJoinWithMuteAudio: boolean;
28
28
  accessor allowShareScreen: boolean;
29
+ accessor allowBoardWrite: boolean;
29
30
  accessor allowUnmuteSelfVideo: boolean;
30
31
  accessor allowUnmuteSelfAudio: boolean;
31
32
  accessor isLockRoomEnabled: boolean;
@@ -38,6 +39,7 @@ export default class ControlBarStore {
38
39
  accessor hasEnableChangeNamePermission: boolean;
39
40
  accessor hasEnableStartVideoPermission: boolean;
40
41
  accessor hasLockRoomPermission: boolean;
42
+ accessor hasAllowWriteBoardPermission: boolean;
41
43
  accessor roomDuration: number;
42
44
  accessor startTime: number;
43
45
  accessor videoSteamingUrl: string;
@@ -49,9 +51,23 @@ export default class ControlBarStore {
49
51
  accessor hasGetLiveStreamingUrlPermission: boolean;
50
52
  accessor hasStopLiveStreamingPermission: boolean;
51
53
  accessor hasStartLiveStreamingPermission: boolean;
54
+ accessor hasWaitingRoomPermission: boolean;
52
55
  accessor allApplicationWindows: AgoraRtcWindowInfo[];
53
56
  accessor phoneMicEnabled: boolean;
57
+ accessor roomInfo: FcrRoomInfo;
58
+ accessor userName: string;
59
+ accessor inviteLink: string;
60
+ accessor isShowMeetingDetailPortal: boolean;
61
+ accessor meetingDetailPortalLeft: number;
62
+ accessor meetingDetailPortalTop: number;
63
+ accessor remoteUsers: FcrUserInfo[];
64
+ accessor hasAssignHostBeforeLeavingPermission: boolean;
65
+ accessor isPstnUser: boolean;
66
+ accessor hasEndRoomPermission: boolean;
67
+ accessor isLocked: boolean;
68
+ accessor hiddenShareActionNav: boolean;
54
69
  constructor();
70
+ setHiddenShareActionNav(hiddenShareActionNav: boolean): void;
55
71
  initControlBar(payload: any): void;
56
72
  private _setControlBarWindowBounds;
57
73
  get hasSecurityPermission(): boolean;
@@ -74,6 +90,7 @@ export default class ControlBarStore {
74
90
  }): void;
75
91
  setLiveStreamingState(liveStreamingState: FcrLiveStreamingState): void;
76
92
  setStartTime(startTime: any): void;
93
+ setRoomInfo(roomInfo: FcrRoomInfo): void;
77
94
  setRoomDuration(duration: number): void;
78
95
  setStartScreenSharePermission(hasPermission: boolean): void;
79
96
  setPermissionToControlAllowSendAll(hasPermission: boolean): void;
@@ -127,6 +144,9 @@ export default class ControlBarStore {
127
144
  updateAllowJoinWithMuteAudio(allow: boolean): void;
128
145
  setAllowShareScreen(allow: boolean): void;
129
146
  updateAllowShareScreen(allow: boolean): void;
147
+ setBoardWriteEnabled(allow: boolean): void;
148
+ updateBoardWriteEnabled(): void;
149
+ setHasAllowWriteBoardPermission(allow: boolean): void;
130
150
  setAllowUnmuteSelfVideo(allow: boolean): void;
131
151
  updateAllowUnmuteSelfVideo(allow: boolean): void;
132
152
  setAllowUnmuteSelfAudio(allow: boolean): void;
@@ -135,6 +155,7 @@ export default class ControlBarStore {
135
155
  updateLockRoomEnabled(lock: boolean): void;
136
156
  setWaitingRoomEnabled(allow: boolean): void;
137
157
  setHasStartCloudRecordingPermission(allow: boolean): void;
158
+ setHasWaitingRoomPermission(allow: boolean): void;
138
159
  setHasGetLiveStreamingUrlPermission(hasGetLiveStreamingUrlPermission: boolean): void;
139
160
  setHasStopLiveStreamingPermission(hasStopLiveStreamingPermission: boolean): void;
140
161
  setHasStartLiveStreamingPermission(hasStartLiveStreamingPermission: boolean): void;
@@ -148,5 +169,17 @@ export default class ControlBarStore {
148
169
  x: number;
149
170
  y: number;
150
171
  };
172
+ fetchLeavingRoomPropsAfterInit(): void;
173
+ setShowMeetingDetailPortal(show: boolean): void;
174
+ setMeetingDetailPortalPosition(left: number, top: number): void;
175
+ setRemoteUsers(remoteUsers: FcrUserInfo[]): void;
176
+ setHasAssignHostBeforeLeavingPermission(hasAssignHostBeforeLeavingPermission: boolean): void;
177
+ setIsPstnUser(isPstnUser: boolean): void;
178
+ setHasEndRoomPermission(hasEndRoomPermission: boolean): void;
179
+ setIsLocked(isLocked: boolean): void;
180
+ sendLeave(): void;
181
+ keepPhoneAudioConnection(): void;
182
+ sendEnd(): void;
183
+ sendAssign(user: FcrUserInfo): void;
151
184
  showToast(params: any): void;
152
185
  }