fcr-ui-scene 3.7.8 → 3.8.0-alpha

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 (569) hide show
  1. package/lib/creator/index.d.ts +6 -3
  2. package/lib/creator/index.js +45 -33
  3. package/lib/creator/provider-initializer.browser.js +34 -5
  4. package/lib/creator/provider-initializer.electron.js +34 -6
  5. package/lib/electron/bootstrap-sdk.d.ts +3 -1
  6. package/lib/electron/bootstrap-sdk.js +93 -358
  7. package/lib/electron/exit-codes.d.ts +6 -1
  8. package/lib/electron/exit-codes.js +5 -0
  9. package/lib/electron/injections.d.ts +10 -4
  10. package/lib/electron/injections.js +116 -74
  11. package/lib/electron/ipc/ipc.js +13 -11
  12. package/lib/electron/ipc/type.d.ts +3 -1
  13. package/lib/electron/ipc/type.js +2 -0
  14. package/lib/electron/main.js +3 -1
  15. package/lib/electron/preload.js +2 -1
  16. package/lib/electron/process-manager/constants.d.ts +1 -0
  17. package/lib/{modules/control-bar/types.js → electron/process-manager/constants.js} +3 -1
  18. package/lib/electron/{event-manager.d.ts → process-manager/event-manager.d.ts} +3 -4
  19. package/lib/electron/{event-manager.js → process-manager/event-manager.js} +38 -30
  20. package/lib/electron/process-manager/index.d.ts +179 -0
  21. package/lib/electron/process-manager/index.js +848 -0
  22. package/lib/electron/process-manager/state-manager.d.ts +135 -0
  23. package/lib/electron/process-manager/state-manager.js +358 -0
  24. package/lib/electron/process-manager/types.d.ts +80 -0
  25. package/lib/electron/process-manager/types.js +79 -0
  26. package/lib/electron/sdk-helper.d.ts +4 -0
  27. package/lib/electron/sdk-helper.js +45 -4
  28. package/lib/electron/until.js +3 -0
  29. package/lib/fragments/annotation/libs.d.ts +1 -1
  30. package/lib/fragments/annotation/libs.js +12 -12
  31. package/lib/fragments/annotation/store.d.ts +1 -1
  32. package/lib/fragments/annotation/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +1 -1
  33. package/lib/fragments/annotation/toolbar/components/graphic-tool/graphic-panel/libs.js +21 -21
  34. package/lib/fragments/annotation/toolbar/components/pen-tool/index.js +3 -3
  35. package/lib/fragments/annotation/toolbar/store.d.ts +1 -1
  36. package/lib/fragments/annotation/toolbar/store.js +10 -10
  37. package/lib/fragments/annotation/toolbar/view.js +7 -7
  38. package/lib/fragments/whiteboard/store.d.ts +2 -2
  39. package/lib/fragments/whiteboard/store.js +27 -21
  40. package/lib/fragments/whiteboard/view.js +2 -2
  41. package/lib/index.d.ts +1 -1
  42. package/lib/index.js +10 -3
  43. package/lib/modules/action-bar/components/apps/index.js +1 -37
  44. package/lib/modules/action-bar/components/collapse/index.d.ts +2 -1
  45. package/lib/modules/action-bar/components/collapse/index.js +11 -2
  46. package/lib/modules/action-bar/components/item/index.js +2 -2
  47. package/lib/modules/action-bar/components/screen-share/index.browser.js +21 -14
  48. package/lib/modules/action-bar/components/screen-share/index.electron.js +38 -24
  49. package/lib/modules/action-bar/components/screen-share/submenu.js +6 -5
  50. package/lib/modules/action-bar/components/security/index.js +2 -2
  51. package/lib/modules/action-bar/index.css +26 -0
  52. package/lib/modules/action-bar/main-scene/store.base.d.ts +6 -4
  53. package/lib/modules/action-bar/main-scene/store.base.js +41 -46
  54. package/lib/modules/action-bar/type.d.ts +0 -10
  55. package/lib/modules/audio-stream/index.d.ts +1 -1
  56. package/lib/modules/audio-stream/index.js +22 -8
  57. package/lib/modules/caption/draggable-container/index.css +10 -0
  58. package/lib/modules/caption/draggable-container/index.d.ts +4 -0
  59. package/lib/modules/caption/draggable-container/index.js +145 -0
  60. package/lib/modules/caption/index.d.ts +10 -0
  61. package/lib/modules/{annotation → caption}/index.js +43 -84
  62. package/lib/modules/caption/store.d.ts +56 -0
  63. package/lib/modules/caption/store.js +366 -0
  64. package/lib/modules/caption/type.d.ts +13 -0
  65. package/lib/modules/caption/type.js +14 -0
  66. package/lib/modules/caption/view.css +158 -0
  67. package/lib/modules/caption/view.d.ts +4 -0
  68. package/lib/modules/caption/view.js +292 -0
  69. package/lib/modules/chat/chat-room-store.d.ts +1 -1
  70. package/lib/modules/chat/chat-room-store.js +6 -6
  71. package/lib/modules/chat/components/message-list/message-item/index.js +60 -18
  72. package/lib/modules/chat/index.css +7 -0
  73. package/lib/modules/chat/store.js +1 -1
  74. package/lib/modules/components/apps/app-item/index.css +16 -1
  75. package/lib/modules/components/apps/app-item/index.js +102 -35
  76. package/lib/modules/components/apps/app-list.js +17 -1
  77. package/lib/modules/components/apps/types.d.ts +11 -1
  78. package/lib/modules/components/caption-menu/index.css +58 -0
  79. package/lib/modules/components/caption-menu/index.d.ts +41 -0
  80. package/lib/modules/components/caption-menu/index.js +112 -0
  81. package/lib/modules/components/caption-menu/participants-privilege-control-options.d.ts +2 -0
  82. package/lib/modules/components/caption-menu/participants-privilege-control-options.js +87 -0
  83. package/lib/modules/components/caption-menu/steps/index.css +73 -0
  84. package/lib/modules/components/caption-menu/steps/index.d.ts +11 -0
  85. package/lib/modules/components/caption-menu/steps/index.js +56 -0
  86. package/lib/modules/components/caption-menu/translation-setting-options.d.ts +17 -0
  87. package/lib/modules/components/caption-menu/translation-setting-options.js +181 -0
  88. package/lib/modules/components/control-bar/index.d.ts +3 -3
  89. package/lib/modules/components/control-bar/index.js +10 -10
  90. package/lib/modules/components/device-control/components/audio-menu/index.js +17 -0
  91. package/lib/modules/components/device-control/components/carmera/index.js +3 -0
  92. package/lib/modules/components/device-control/components/microphone/index.js +4 -1
  93. package/lib/modules/components/device-control/index.css +12 -4
  94. package/lib/modules/components/device-control/store.base.d.ts +1 -0
  95. package/lib/modules/components/device-control/store.base.js +2 -0
  96. package/lib/modules/components/leave-meeting/store.base.d.ts +1 -0
  97. package/lib/modules/components/leave-meeting/store.base.js +46 -5
  98. package/lib/modules/components/security-menu/index.js +147 -65
  99. package/lib/modules/components/security-menu/store.d.ts +15 -0
  100. package/lib/modules/components/security-menu/store.js +78 -16
  101. package/lib/modules/components/toolbar/components/clean-tool/index.d.ts +1 -1
  102. package/lib/modules/components/toolbar/components/clean-tool/index.js +4 -4
  103. package/lib/modules/components/toolbar/components/color-tool/index.d.ts +1 -1
  104. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +1 -1
  105. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +1 -1
  106. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.js +21 -21
  107. package/lib/modules/components/toolbar/components/graphic-tool/index.d.ts +1 -1
  108. package/lib/modules/components/toolbar/components/multiple-color-tool/index.d.ts +1 -1
  109. package/lib/modules/components/toolbar/components/pen-tool/index.d.ts +1 -1
  110. package/lib/modules/components/toolbar/components/pen-tool/index.js +3 -3
  111. package/lib/modules/components/toolbar/index.d.ts +2 -2
  112. package/lib/modules/components/toolbar/index.js +35 -34
  113. package/lib/modules/components/toolbar/style.css +1 -1
  114. package/lib/modules/components/toolbar/types.d.ts +1 -1
  115. package/lib/modules/connection-gateway/store.d.ts +1 -0
  116. package/lib/modules/connection-gateway/store.js +5 -0
  117. package/lib/modules/control-bar/components/apps-popover/index.d.ts +3 -0
  118. package/lib/modules/control-bar/components/apps-popover/index.js +41 -0
  119. package/lib/modules/control-bar/components/more-actions/index.js +9 -1
  120. package/lib/modules/control-bar/enums.d.ts +2 -1
  121. package/lib/modules/control-bar/enums.js +1 -0
  122. package/lib/modules/control-bar/store.d.ts +6 -1
  123. package/lib/modules/control-bar/store.js +56 -12
  124. package/lib/modules/control-bar/view.js +16 -11
  125. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +8 -0
  126. package/lib/modules/dialog/components/dialog-container/component/body.js +44 -5
  127. package/lib/modules/dialog/components/dialog-container/index.css +4 -1
  128. package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
  129. package/lib/modules/dialog/components/dialog-container/index.js +7 -1
  130. package/lib/modules/dialog/components/normal-window/index.d.ts +1 -0
  131. package/lib/modules/dialog/components/normal-window/index.js +3 -1
  132. package/lib/modules/dialog/dialogs/caption/index.d.ts +21 -0
  133. package/lib/modules/dialog/dialogs/caption/index.js +42 -0
  134. package/lib/modules/dialog/dialogs/chat/components/actions.js +2 -2
  135. package/lib/modules/dialog/dialogs/confirm/index.js +1 -1
  136. package/lib/modules/dialog/dialogs/confirm-leave-meeting/index.d.ts +1 -0
  137. package/lib/modules/dialog/dialogs/confirm-leave-meeting/index.js +2 -1
  138. package/lib/modules/dialog/dialogs/participant/components/actions.js +2 -2
  139. package/lib/modules/dialog/dialogs/share-screen-selection/index.js +0 -12
  140. package/lib/modules/dialog/dialogs/subtitles-history/index.d.ts +27 -0
  141. package/lib/modules/dialog/dialogs/subtitles-history/index.js +51 -0
  142. package/lib/modules/dialog/store.base.d.ts +1 -1
  143. package/lib/modules/dialog/store.browser.d.ts +1 -1
  144. package/lib/modules/dialog/store.electron.d.ts +1 -3
  145. package/lib/modules/dialog/store.electron.js +0 -9
  146. package/lib/modules/event-sound/enum.d.ts +5 -0
  147. package/lib/modules/event-sound/enum.js +20 -0
  148. package/lib/modules/event-sound/index.d.ts +0 -10
  149. package/lib/modules/event-sound/index.js +1 -12
  150. package/lib/modules/event-sound/store.d.ts +2 -2
  151. package/lib/modules/event-sound/store.js +21 -22
  152. package/lib/modules/interpreter/store.js +4 -2
  153. package/lib/modules/layout/components/Aside.d.ts +2 -1
  154. package/lib/modules/layout/components/Aside.js +97 -58
  155. package/lib/modules/layout/components/CommonVideoRenderer.js +1 -2
  156. package/lib/modules/layout/components/index.css +15 -2
  157. package/lib/modules/layout/store.base.d.ts +13 -2
  158. package/lib/modules/layout/store.base.js +149 -54
  159. package/lib/modules/layout/store.electron.d.ts +1 -0
  160. package/lib/modules/layout/store.electron.js +132 -32
  161. package/lib/modules/layout/type.d.ts +4 -0
  162. package/lib/modules/layout/view.js +27 -5
  163. package/lib/modules/notification/index.css +4 -4
  164. package/lib/modules/notification/store.d.ts +5 -3
  165. package/lib/modules/notification/store.js +9 -2
  166. package/lib/modules/notification/view.d.ts +1 -0
  167. package/lib/modules/notification/view.js +33 -2
  168. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.css +0 -1
  169. package/lib/modules/participant/components/participants/components/footer/index.js +1 -1
  170. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +2 -2
  171. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.d.ts +6 -1
  172. package/lib/modules/participant/components/participants/components/render-user/index.d.ts +1 -1
  173. package/lib/modules/participant/components/participants/index.js +13 -1
  174. package/lib/modules/participant/store.base.d.ts +1 -2
  175. package/lib/modules/participant/store.base.js +70 -71
  176. package/lib/modules/participant/type.d.ts +3 -1
  177. package/lib/modules/participant/type.js +2 -0
  178. package/lib/modules/pc-audio-connect/main-scene/store.d.ts +1 -0
  179. package/lib/modules/pc-audio-connect/main-scene/store.js +5 -0
  180. package/lib/modules/pc-audio-connect/waiting-scene/store.d.ts +2 -0
  181. package/lib/modules/pc-audio-connect/waiting-scene/store.js +10 -6
  182. package/lib/modules/phone-audio-connect/store.d.ts +1 -0
  183. package/lib/modules/phone-audio-connect/store.js +5 -0
  184. package/lib/modules/secondary-window/store.d.ts +1 -2
  185. package/lib/modules/secondary-window/store.js +22 -12
  186. package/lib/modules/secondary-window/type.d.ts +1 -1
  187. package/lib/modules/secondary-window/view.js +7 -8
  188. package/lib/modules/setting/audio-whiteList/audio-device-adaptation.d.ts +18 -0
  189. package/lib/modules/setting/audio-whiteList/audio-device-adaptation.js +34 -0
  190. package/lib/modules/setting/audio-whiteList/audio-whiteList-manager.d.ts +63 -0
  191. package/lib/modules/setting/audio-whiteList/audio-whiteList-manager.js +353 -0
  192. package/lib/modules/setting/caption_and_transcribing/index.css +88 -0
  193. package/lib/modules/setting/caption_and_transcribing/index.d.ts +3 -0
  194. package/lib/modules/setting/caption_and_transcribing/index.js +96 -0
  195. package/lib/modules/setting/general-settings/general-settings.d.ts +4 -0
  196. package/lib/modules/setting/general-settings/general-settings.js +3 -3
  197. package/lib/modules/setting/index.d.ts +1 -0
  198. package/lib/modules/setting/index.js +10 -7
  199. package/lib/modules/setting/state/index.js +5 -3
  200. package/lib/modules/setting/store.base.d.ts +29 -4
  201. package/lib/modules/setting/store.base.js +143 -62
  202. package/lib/modules/setting/store.browser.js +4 -9
  203. package/lib/modules/setting/store.electron.d.ts +11 -0
  204. package/lib/modules/setting/store.electron.js +110 -1
  205. package/lib/modules/setting/type.d.ts +2 -1
  206. package/lib/modules/setting/type.js +1 -0
  207. package/lib/modules/setting/video-settings/video-settings-basic.js +1 -7
  208. package/lib/modules/setting/view.js +11 -4
  209. package/lib/modules/share-screen/store.base.d.ts +1 -1
  210. package/lib/modules/share-screen/store.base.js +3 -2
  211. package/lib/modules/share-screen/store.electron.d.ts +3 -1
  212. package/lib/modules/share-screen/store.electron.js +168 -38
  213. package/lib/modules/state-bar/index.css +73 -2
  214. package/lib/modules/state-bar/main-scene/store.base.d.ts +2 -0
  215. package/lib/modules/state-bar/main-scene/store.base.js +7 -1
  216. package/lib/modules/state-bar/main-scene/store.browser.js +1 -1
  217. package/lib/modules/state-bar/main-scene/store.electron.js +1 -1
  218. package/lib/modules/state-bar/store.base.d.ts +5 -0
  219. package/lib/modules/state-bar/store.base.js +29 -2
  220. package/lib/modules/state-bar/subtitles-history-state.d.ts +7 -0
  221. package/lib/modules/state-bar/subtitles-history-state.js +108 -0
  222. package/lib/modules/state-bar/view.js +16 -1
  223. package/lib/modules/state-bar/waiting-scene/store.base.d.ts +1 -0
  224. package/lib/modules/state-bar/waiting-scene/store.base.js +5 -0
  225. package/lib/modules/subtitles-history/components/actions.d.ts +5 -0
  226. package/lib/modules/subtitles-history/components/actions.js +36 -0
  227. package/lib/modules/subtitles-history/components/list-item.d.ts +12 -0
  228. package/lib/modules/subtitles-history/components/list-item.js +105 -0
  229. package/lib/modules/subtitles-history/components/list.d.ts +10 -0
  230. package/lib/modules/subtitles-history/components/list.js +182 -0
  231. package/lib/modules/subtitles-history/components/respond-dialog-content.d.ts +5 -0
  232. package/lib/modules/subtitles-history/components/respond-dialog-content.js +44 -0
  233. package/lib/modules/subtitles-history/components/settings/index.css +5 -0
  234. package/lib/modules/subtitles-history/components/settings/index.d.ts +2 -0
  235. package/lib/modules/subtitles-history/components/settings/index.js +53 -0
  236. package/lib/modules/subtitles-history/components/timer.d.ts +3 -0
  237. package/lib/modules/subtitles-history/components/timer.js +44 -0
  238. package/lib/modules/subtitles-history/components/title.d.ts +1 -0
  239. package/lib/modules/subtitles-history/components/title.js +15 -0
  240. package/lib/modules/subtitles-history/empty.d.ts +2 -0
  241. package/lib/modules/subtitles-history/empty.js +22 -0
  242. package/lib/modules/subtitles-history/index.css +129 -0
  243. package/lib/modules/subtitles-history/index.d.ts +13 -0
  244. package/lib/modules/{event-confirm → subtitles-history}/index.js +62 -31
  245. package/lib/modules/subtitles-history/store.base.d.ts +74 -0
  246. package/lib/modules/subtitles-history/store.base.js +786 -0
  247. package/lib/modules/subtitles-history/store.electron.d.ts +15 -0
  248. package/lib/{shared-data-source/security-data.js → modules/subtitles-history/store.electron.js} +75 -77
  249. package/lib/modules/subtitles-history/type.d.ts +4 -0
  250. package/lib/modules/subtitles-history/view.d.ts +1 -0
  251. package/lib/modules/subtitles-history/view.js +104 -0
  252. package/lib/modules/video-window/popover-watcher.js +4 -1
  253. package/lib/modules/video-window/store.js +7 -1
  254. package/lib/modules/video-window/view.js +14 -4
  255. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +2 -2
  256. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +5 -5
  257. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +15 -15
  258. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +21 -21
  259. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +23 -21
  260. package/lib/modules/whiteboard/components/toolbar/store.d.ts +7 -6
  261. package/lib/modules/whiteboard/components/toolbar/store.js +14 -15
  262. package/lib/modules/whiteboard/store.d.ts +2 -3
  263. package/lib/modules/whiteboard/store.electron.d.ts +2 -0
  264. package/lib/modules/whiteboard/store.electron.js +35 -0
  265. package/lib/modules/whiteboard/store.js +14 -2
  266. package/lib/modules/whiteboard/type.d.ts +0 -35
  267. package/lib/modules/whiteboard/type.js +1 -26
  268. package/lib/modules/widget/type.d.ts +3 -66
  269. package/lib/object-manager.d.ts +3 -1
  270. package/lib/object-manager.js +2 -0
  271. package/lib/providers/ability-provider.d.ts +24 -0
  272. package/lib/providers/ability-provider.js +21 -0
  273. package/lib/providers/app-list-provider.d.ts +90 -4
  274. package/lib/providers/app-list-provider.js +157 -13
  275. package/lib/providers/board-share/bar-control/base.d.ts +4 -5
  276. package/lib/providers/board-share/bar-control/base.js +4 -4
  277. package/lib/providers/board-share/bar-control/browser.d.ts +2 -2
  278. package/lib/providers/board-share/bar-control/electron.d.ts +4 -5
  279. package/lib/providers/board-share/bar-control/electron.js +2 -0
  280. package/lib/providers/board-share/provider.base.d.ts +6 -6
  281. package/lib/providers/board-share/provider.base.js +20 -3
  282. package/lib/providers/board-share/provider.browser.js +2 -2
  283. package/lib/providers/board-share/provider.electron.js +1 -2
  284. package/lib/providers/board-share/type.d.ts +1 -2
  285. package/lib/providers/device-provider.d.ts +15 -5
  286. package/lib/providers/device-provider.js +198 -144
  287. package/lib/providers/dialog/provider.base.js +1 -1
  288. package/lib/providers/dialog/provider.electron.js +3 -0
  289. package/lib/providers/interpreter-provider.js +4 -9
  290. package/lib/providers/multi-display-provider.d.ts +1 -1
  291. package/lib/providers/privilege-provider.d.ts +241 -139
  292. package/lib/providers/privilege-provider.js +577 -318
  293. package/lib/providers/room-provider/waiting-room-control-manager.d.ts +1 -1
  294. package/lib/providers/screen-share/constant.d.ts +1 -0
  295. package/lib/{modules/share-screen/types.js → providers/screen-share/constant.js} +3 -1
  296. package/lib/providers/screen-share/provider.base.d.ts +20 -7
  297. package/lib/providers/screen-share/provider.base.js +27 -27
  298. package/lib/providers/screen-share/provider.browser.js +14 -18
  299. package/lib/providers/screen-share/provider.electron.d.ts +8 -0
  300. package/lib/providers/screen-share/provider.electron.js +41 -13
  301. package/lib/providers/screen-share/strategy/browser.js +1 -1
  302. package/lib/providers/screen-share/strategy/electron.d.ts +2 -1
  303. package/lib/providers/screen-share/strategy/electron.js +64 -56
  304. package/lib/providers/screen-share/strategy/type.d.ts +2 -2
  305. package/lib/providers/screen-share/stream-state-sync.js +5 -3
  306. package/lib/providers/screen-share/struct.d.ts +14 -4
  307. package/lib/providers/screen-share/struct.js +16 -5
  308. package/lib/providers/screen-share/type.d.ts +32 -2
  309. package/lib/providers/stt-provider/stt-provider.d.ts +89 -0
  310. package/lib/providers/stt-provider/stt-provider.js +1008 -0
  311. package/lib/providers/stt-provider/type.d.ts +168 -0
  312. package/lib/providers/stt-provider/type.js +19 -0
  313. package/lib/providers/window/main-window.d.ts +1 -0
  314. package/lib/providers/window/main-window.js +6 -4
  315. package/lib/providers/window/renderer-window.d.ts +7 -0
  316. package/lib/providers/window/renderer-window.js +65 -4
  317. package/lib/providers/window/type.d.ts +5 -0
  318. package/lib/runtime.d.ts +8 -7
  319. package/lib/runtime.js +1 -2
  320. package/lib/scenes/main-scene.d.ts +1 -0
  321. package/lib/scenes/main-scene.js +144 -67
  322. package/lib/schema.d.ts +70 -8
  323. package/lib/schema.js +7 -2
  324. package/lib/shared-data/app-list-data.d.ts +4 -0
  325. package/lib/shared-data/app-list-data.js +21 -1
  326. package/lib/shared-data/config.d.ts +5 -1
  327. package/lib/shared-data/layout-data.d.ts +5 -0
  328. package/lib/shared-data/layout-data.js +35 -9
  329. package/lib/shared-data/member-data.d.ts +2 -3
  330. package/lib/shared-data/screen-share/index.d.ts +0 -2
  331. package/lib/shared-data/screen-share/index.js +20 -36
  332. package/lib/shared-data/screen-share/type.d.ts +0 -8
  333. package/lib/shared-data/security-data.d.ts +4 -0
  334. package/lib/shared-data/security-data.js +14 -10
  335. package/lib/shared-data/setting.d.ts +16 -1
  336. package/lib/shared-data/setting.js +32 -5
  337. package/lib/shared-data/stt-setting.ts/constant.d.ts +29 -0
  338. package/lib/shared-data/stt-setting.ts/constant.js +35 -0
  339. package/lib/shared-data/stt-setting.ts/index.d.ts +67 -0
  340. package/lib/{shared-data-source/layout-data.js → shared-data/stt-setting.ts/index.js} +96 -83
  341. package/lib/shared-data/stt-setting.ts/type.d.ts +10 -0
  342. package/lib/shared-data/stt-setting.ts/type.js +14 -0
  343. package/lib/shared-data/video-window.d.ts +1 -2
  344. package/lib/shared-data/video-window.js +20 -32
  345. package/lib/translations/enUS.d.ts +9 -0
  346. package/lib/translations/enUS.js +21 -4
  347. package/lib/translations/zhCN.d.ts +9 -0
  348. package/lib/translations/zhCN.js +21 -4
  349. package/lib/type.d.ts +20 -15
  350. package/lib/type.js +1 -0
  351. package/lib/{ui-scene.d.ts → ui-scene-switch.d.ts} +1 -1
  352. package/lib/{ui-scene.js → ui-scene-switch.js} +29 -9
  353. package/lib/utilities/constant.d.ts +6 -2
  354. package/lib/utilities/constant.js +5 -1
  355. package/lib/utilities/default-config.d.ts +3 -3
  356. package/lib/utilities/default-config.js +8 -18
  357. package/lib/utilities/focus-helper.js +18 -11
  358. package/lib/utilities/logger.js +1 -1
  359. package/lib/utilities/renderer.d.ts +4 -6
  360. package/lib/utilities/renderer.js +10 -4
  361. package/lib/utilities/tools.d.ts +1 -0
  362. package/lib/utilities/tools.js +6 -1
  363. package/lib/utilities/ui-resources.d.ts +9 -2
  364. package/lib/utilities/ui-resources.js +36 -12
  365. package/package.json +11 -6
  366. package/public/index.html +3 -149
  367. package/public/meeting-manager.js +405 -0
  368. package/installer/icons/favicon.ico +0 -0
  369. package/installer/icons/favicon.png +0 -0
  370. package/installer/icons/icon.png +0 -0
  371. package/installer/mac/entitlements.mac.plist +0 -20
  372. package/lib/creator.d.ts +0 -36
  373. package/lib/creator.js +0 -465
  374. package/lib/modules/action-bar/index.d.ts +0 -56
  375. package/lib/modules/action-bar/index.dev.d.ts +0 -0
  376. package/lib/modules/action-bar/index.dev.js +0 -94
  377. package/lib/modules/action-bar/index.js +0 -108
  378. package/lib/modules/action-bar/store.d.ts +0 -256
  379. package/lib/modules/action-bar/store.js +0 -1572
  380. package/lib/modules/action-bar/types.d.ts +0 -90
  381. package/lib/modules/action-bar/view.d.ts +0 -5
  382. package/lib/modules/action-bar/view.js +0 -112
  383. package/lib/modules/annotation/annotation-index.d.ts +0 -2
  384. package/lib/modules/annotation/annotation-index.js +0 -80
  385. package/lib/modules/annotation/annotation-toolbar-store.d.ts +0 -75
  386. package/lib/modules/annotation/annotation-toolbar-store.js +0 -459
  387. package/lib/modules/annotation/board-cursor.css +0 -77
  388. package/lib/modules/annotation/components/color-picker/components/color.d.ts +0 -5
  389. package/lib/modules/annotation/components/color-picker/components/color.js +0 -38
  390. package/lib/modules/annotation/components/color-picker/components/panel.d.ts +0 -1
  391. package/lib/modules/annotation/components/color-picker/components/panel.js +0 -109
  392. package/lib/modules/annotation/components/color-picker/components/picker.d.ts +0 -1
  393. package/lib/modules/annotation/components/color-picker/components/picker.js +0 -75
  394. package/lib/modules/annotation/components/color-picker/index.d.ts +0 -2
  395. package/lib/modules/annotation/components/color-picker/index.js +0 -47
  396. package/lib/modules/annotation/components/eraser-picker.d.ts +0 -4
  397. package/lib/modules/annotation/components/eraser-picker.js +0 -144
  398. package/lib/modules/annotation/components/expansion/index.d.ts +0 -1
  399. package/lib/modules/annotation/components/expansion/index.js +0 -100
  400. package/lib/modules/annotation/components/extra-tool-picker.d.ts +0 -1
  401. package/lib/modules/annotation/components/extra-tool-picker.js +0 -62
  402. package/lib/modules/annotation/components/history.d.ts +0 -2
  403. package/lib/modules/annotation/components/history.js +0 -78
  404. package/lib/modules/annotation/components/icons/fold-icon.d.ts +0 -2
  405. package/lib/modules/annotation/components/icons/fold-icon.js +0 -41
  406. package/lib/modules/annotation/components/icons/move-icon.d.ts +0 -1
  407. package/lib/modules/annotation/components/icons/move-icon.js +0 -66
  408. package/lib/modules/annotation/components/item/index.d.ts +0 -1
  409. package/lib/modules/annotation/components/item/index.js +0 -43
  410. package/lib/modules/annotation/components/move-handle.d.ts +0 -5
  411. package/lib/modules/annotation/components/move-handle.js +0 -134
  412. package/lib/modules/annotation/components/pen-picker.d.ts +0 -4
  413. package/lib/modules/annotation/components/pen-picker.js +0 -155
  414. package/lib/modules/annotation/components/screen-capture-picker.d.ts +0 -4
  415. package/lib/modules/annotation/components/screen-capture-picker.js +0 -85
  416. package/lib/modules/annotation/components/shape-picker.d.ts +0 -4
  417. package/lib/modules/annotation/components/shape-picker.js +0 -210
  418. package/lib/modules/annotation/hooks/index.d.ts +0 -14
  419. package/lib/modules/annotation/hooks/index.js +0 -292
  420. package/lib/modules/annotation/index.d.ts +0 -45
  421. package/lib/modules/annotation/store.d.ts +0 -98
  422. package/lib/modules/annotation/store.js +0 -621
  423. package/lib/modules/annotation/style.css +0 -36
  424. package/lib/modules/annotation/view.d.ts +0 -3
  425. package/lib/modules/annotation/view.js +0 -44
  426. package/lib/modules/components/device-control/store.d.ts +0 -42
  427. package/lib/modules/components/device-control/store.js +0 -241
  428. package/lib/modules/components/leave-meeting/store.d.ts +0 -39
  429. package/lib/modules/components/leave-meeting/store.js +0 -270
  430. package/lib/modules/control-bar/components/annotation-button/index.d.ts +0 -1
  431. package/lib/modules/control-bar/components/annotation-button/index.js +0 -72
  432. package/lib/modules/control-bar/reactor.d.ts +0 -2
  433. package/lib/modules/control-bar/reactor.js +0 -8
  434. package/lib/modules/control-bar/types.d.ts +0 -20
  435. package/lib/modules/dialog/dialogs/pre-setting/index.css +0 -26
  436. package/lib/modules/dialog/dialogs/pre-setting/index.d.ts +0 -6
  437. package/lib/modules/dialog/dialogs/pre-setting/index.js +0 -62
  438. package/lib/modules/dialog/dialogs/widget/electron.d.ts +0 -6
  439. package/lib/modules/dialog/dialogs/widget/electron.js +0 -38
  440. package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +0 -14
  441. package/lib/modules/dialog/hooks/use-popover-watcher.js +0 -110
  442. package/lib/modules/dialog/hooks/useElectron.d.ts +0 -28
  443. package/lib/modules/dialog/hooks/useElectron.js +0 -277
  444. package/lib/modules/dialog/store.d.ts +0 -135
  445. package/lib/modules/dialog/store.js +0 -616
  446. package/lib/modules/event-confirm/components/window/index.d.ts +0 -4
  447. package/lib/modules/event-confirm/components/window/index.js +0 -197
  448. package/lib/modules/event-confirm/index.css +0 -24
  449. package/lib/modules/event-confirm/index.d.ts +0 -27
  450. package/lib/modules/event-confirm/store.d.ts +0 -45
  451. package/lib/modules/event-confirm/store.js +0 -345
  452. package/lib/modules/event-confirm/view.d.ts +0 -2
  453. package/lib/modules/event-confirm/view.js +0 -53
  454. package/lib/modules/event-toast/store.d.ts +0 -27
  455. package/lib/modules/event-toast/store.js +0 -205
  456. package/lib/modules/layout/store.d.ts +0 -176
  457. package/lib/modules/layout/store.js +0 -1466
  458. package/lib/modules/participant/components/participants/components/footer/components/footer/index.css +0 -17
  459. package/lib/modules/participant/components/participants/components/footer/components/footer/index.d.ts +0 -5
  460. package/lib/modules/participant/components/participants/components/footer/components/footer/index.js +0 -242
  461. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.css +0 -192
  462. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.d.ts +0 -4
  463. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +0 -206
  464. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.css +0 -57
  465. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.d.ts +0 -5
  466. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +0 -229
  467. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.d.ts +0 -5
  468. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +0 -68
  469. package/lib/modules/participant/components/participants/components/participants/index.css +0 -105
  470. package/lib/modules/participant/components/participants/components/participants/index.d.ts +0 -3
  471. package/lib/modules/participant/components/participants/components/participants/index.js +0 -117
  472. package/lib/modules/participant/components/participants/types.d.ts +0 -101
  473. package/lib/modules/participant/components/participants/types.js +0 -37
  474. package/lib/modules/participant/store.d.ts +0 -222
  475. package/lib/modules/participant/store.js +0 -1927
  476. package/lib/modules/pc-audio-connect/index.d.ts +0 -22
  477. package/lib/modules/pc-audio-connect/index.js +0 -67
  478. package/lib/modules/pc-audio-connect/store.d.ts +0 -46
  479. package/lib/modules/pc-audio-connect/store.js +0 -304
  480. package/lib/modules/setting/common/advance-link.d.ts +0 -3
  481. package/lib/modules/setting/common/advance-link.js +0 -27
  482. package/lib/modules/setting/common/index.css +0 -26
  483. package/lib/modules/setting/common/useNamespace.d.ts +0 -15
  484. package/lib/modules/setting/common/useNamespace.js +0 -66
  485. package/lib/modules/setting/config.d.ts +0 -36
  486. package/lib/modules/setting/config.js +0 -36
  487. package/lib/modules/setting/dialog-wrapper.d.ts +0 -2
  488. package/lib/modules/setting/dialog-wrapper.js +0 -110
  489. package/lib/modules/setting/store.d.ts +0 -261
  490. package/lib/modules/setting/store.js +0 -1321
  491. package/lib/modules/share-screen/store.d.ts +0 -148
  492. package/lib/modules/share-screen/store.js +0 -950
  493. package/lib/modules/share-screen/types.d.ts +0 -26
  494. package/lib/modules/state-bar/store.d.ts +0 -124
  495. package/lib/modules/state-bar/store.js +0 -664
  496. package/lib/modules/whiteboard/components/progress/electron.d.ts +0 -1
  497. package/lib/modules/whiteboard/components/progress/electron.js +0 -33
  498. package/lib/modules/widget/sdk.d.ts +0 -30
  499. package/lib/modules/widget/sdk.js +0 -224
  500. package/lib/modules/widget/store.d.ts +0 -14
  501. package/lib/modules/widget/store.js +0 -28
  502. package/lib/providers/annotation-provider.d.ts +0 -124
  503. package/lib/providers/annotation-provider.js +0 -369
  504. package/lib/providers/dialog-provider.d.ts +0 -137
  505. package/lib/providers/dialog-provider.js +0 -194
  506. package/lib/providers/message-provider.d.ts +0 -69
  507. package/lib/providers/message-provider.js +0 -140
  508. package/lib/providers/room-provider.d.ts +0 -194
  509. package/lib/providers/room-provider.js +0 -916
  510. package/lib/providers/screen-share-provider.d.ts +0 -244
  511. package/lib/providers/screen-share-provider.js +0 -835
  512. package/lib/providers/sharing-provider.d.ts +0 -42
  513. package/lib/providers/sharing-provider.js +0 -221
  514. package/lib/providers/user-setting-storage-provider.d.ts +0 -21
  515. package/lib/providers/user-setting-storage-provider.js +0 -65
  516. package/lib/providers/whiteboard-provider.d.ts +0 -24
  517. package/lib/providers/whiteboard-provider.js +0 -127
  518. package/lib/shared-data-source/annotation-data.d.ts +0 -17
  519. package/lib/shared-data-source/annotation-data.js +0 -110
  520. package/lib/shared-data-source/app-list-data.d.ts +0 -34
  521. package/lib/shared-data-source/app-list-data.js +0 -133
  522. package/lib/shared-data-source/chat-data.d.ts +0 -25
  523. package/lib/shared-data-source/chat-data.js +0 -139
  524. package/lib/shared-data-source/config.d.ts +0 -35
  525. package/lib/shared-data-source/config.js +0 -40
  526. package/lib/shared-data-source/confirm-data.d.ts +0 -25
  527. package/lib/shared-data-source/confirm-data.js +0 -97
  528. package/lib/shared-data-source/device-privilege-data.d.ts +0 -8
  529. package/lib/shared-data-source/device-privilege-data.js +0 -25
  530. package/lib/shared-data-source/interpreter.d.ts +0 -77
  531. package/lib/shared-data-source/interpreter.js +0 -247
  532. package/lib/shared-data-source/layout-data.d.ts +0 -31
  533. package/lib/shared-data-source/meeting-time.d.ts +0 -90
  534. package/lib/shared-data-source/meeting-time.js +0 -416
  535. package/lib/shared-data-source/member-data.d.ts +0 -139
  536. package/lib/shared-data-source/member-data.js +0 -517
  537. package/lib/shared-data-source/pin-data.d.ts +0 -13
  538. package/lib/shared-data-source/pin-data.js +0 -111
  539. package/lib/shared-data-source/screen-share-data.d.ts +0 -364
  540. package/lib/shared-data-source/screen-share-data.js +0 -520
  541. package/lib/shared-data-source/security-data.d.ts +0 -39
  542. package/lib/shared-data-source/setting.d.ts +0 -67
  543. package/lib/shared-data-source/setting.js +0 -220
  544. package/lib/shared-data-source/speaker-spotlight.d.ts +0 -5
  545. package/lib/shared-data-source/speaker-spotlight.js +0 -15
  546. package/lib/shared-data-source/video-window.d.ts +0 -165
  547. package/lib/shared-data-source/video-window.js +0 -1266
  548. package/lib/shared-data-source/waiting-room.d.ts +0 -46
  549. package/lib/shared-data-source/waiting-room.js +0 -222
  550. package/lib/shared-data-source/whiteboard-data.d.ts +0 -68
  551. package/lib/shared-data-source/whiteboard-data.js +0 -347
  552. package/lib/utilities/board-context.d.ts +0 -4
  553. package/lib/utilities/board-context.js +0 -12
  554. package/lib/utilities/copyText.d.ts +0 -2
  555. package/lib/utilities/copyText.js +0 -48
  556. package/lib/utilities/renderer-event.d.ts +0 -10
  557. package/lib/utilities/renderer-event.js +0 -95
  558. package/lib/utilities/screen-capture-permission.d.ts +0 -2
  559. package/lib/utilities/screen-capture-permission.js +0 -24
  560. package/lib/utilities/screen.d.ts +0 -3
  561. package/lib/utilities/screen.js +0 -53
  562. package/lib/utilities/video-track-render-context.d.ts +0 -6
  563. package/lib/utilities/video-track-render-context.js +0 -9
  564. package/lib/waiting-room-control-manager.d.ts +0 -28
  565. package/lib/waiting-room-control-manager.js +0 -230
  566. package/lib/widget-sdk.d.ts +0 -2
  567. package/lib/widget-sdk.js +0 -13
  568. /package/lib/modules/{action-bar/types.js → subtitles-history/type.js} +0 -0
  569. /package/public/assets/electron/sound_effects/{pretest.mp3 → speakerTest.mp3} +0 -0
@@ -1,13 +1,29 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.push.js");
7
+ require("core-js/modules/es.object.define-properties.js");
3
8
  require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/esnext.iterator.constructor.js");
14
+ require("core-js/modules/esnext.iterator.filter.js");
15
+ require("core-js/modules/esnext.iterator.for-each.js");
16
+ require("core-js/modules/web.dom-collections.for-each.js");
4
17
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
18
  Object.defineProperty(exports, "__esModule", {
6
19
  value: true
7
20
  });
8
- exports.getNormalDownloadResources = exports.BUILTIN_VIRTUAL_BACKGROUND_VIDEO_URL_LIST = exports.BUILTIN_VIRTUAL_BACKGROUND_IMAGE_URL_LIST = exports.BUILTIN_SOUND_EFFECT_URL_LIST = void 0;
21
+ exports.getNormalDownloadResources = exports.BUILTIN_VIRTUAL_BACKGROUND_VIDEO_URL_LIST = exports.BUILTIN_VIRTUAL_BACKGROUND_IMAGE_URL_LIST = exports.BUILTIN_SOUND_EFFECT_URL_MAP = void 0;
9
22
  require("core-js/modules/es.array.concat.js");
23
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
24
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
25
+ 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; }
26
+ 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; }
11
27
  // Asset types:
12
28
  // Electron
13
29
  // 1. Built-in assets: packaged with the app, no need to download
@@ -37,31 +53,39 @@ var BUILTIN_VIRTUAL_BACKGROUND_VIDEO_URL_LIST = exports.BUILTIN_VIRTUAL_BACKGROU
37
53
  // 'https://solutions-apaas.agora.io/fcr-ui-scene/video/common/default8.mp4',
38
54
  // 'https://solutions-apaas.agora.io/fcr-ui-scene/video/common/default9.mp4',
39
55
  ];
40
- var BUILTIN_SOUND_EFFECT_URL_LIST = exports.BUILTIN_SOUND_EFFECT_URL_LIST = [
41
- // Built-in assets URL
42
- 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/sound_effect_audios.zip'
56
+ var BUILTIN_SOUND_EFFECT_URL_MAP = exports.BUILTIN_SOUND_EFFECT_URL_MAP = {
57
+ // Built-in assets URL
58
+ cloudRecording: 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/sound_effect_audios.zip',
59
+ userJoin: 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/sound_effect_audios.zip'
60
+ // Use built-in mp3 for speaker test
61
+ // speakerTest: 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/sound_effect_audios.zip',
43
62
 
44
- // browser mp3
45
- // 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/remote_user_joined.mp3',
46
- // 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/speaker_test.mp3',
47
- // 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/recording_started.mp3',
48
- ];
63
+ // browser mp3
64
+ // cloudRecording:
65
+ // 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/recording_started.mp3',
66
+ // userJoin: 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/remote_user_joined.mp3',
67
+ // speakerTest: 'https://solutions-apaas.agora.io/fcr-ui-scene/audio/common/speaker_test.mp3',
68
+ };
49
69
  var getNormalDownloadResources = exports.getNormalDownloadResources = function getNormalDownloadResources(customResource) {
50
70
  var _ref = customResource !== null && customResource !== void 0 ? customResource : {
51
71
  virtualBackgroundImages: [],
52
72
  virtualBackgroundVideos: [],
53
- soundEffectAudios: []
73
+ soundEffectAudios: {}
54
74
  },
55
75
  _ref$virtualBackgroun = _ref.virtualBackgroundImages,
56
76
  virtualBackgroundImages = _ref$virtualBackgroun === void 0 ? [] : _ref$virtualBackgroun,
57
77
  _ref$virtualBackgroun2 = _ref.virtualBackgroundVideos,
58
78
  virtualBackgroundVideos = _ref$virtualBackgroun2 === void 0 ? [] : _ref$virtualBackgroun2,
59
79
  _ref$soundEffectAudio = _ref.soundEffectAudios,
60
- soundEffectAudios = _ref$soundEffectAudio === void 0 ? [] : _ref$soundEffectAudio;
80
+ soundEffectAudios = _ref$soundEffectAudio === void 0 ? {} : _ref$soundEffectAudio;
61
81
  var uiResources = {
62
82
  virtualBackgroundImages: [].concat(BUILTIN_VIRTUAL_BACKGROUND_IMAGE_URL_LIST, (0, _toConsumableArray2["default"])(virtualBackgroundImages)),
63
83
  virtualBackgroundVideos: [].concat(BUILTIN_VIRTUAL_BACKGROUND_VIDEO_URL_LIST, (0, _toConsumableArray2["default"])(virtualBackgroundVideos)),
64
- soundEffectAudios: [].concat(BUILTIN_SOUND_EFFECT_URL_LIST, (0, _toConsumableArray2["default"])(soundEffectAudios))
84
+ soundEffectAudios: _objectSpread({
85
+ userJoin: BUILTIN_SOUND_EFFECT_URL_MAP.userJoin,
86
+ // speakerTest: BUILTIN_SOUND_EFFECT_URL_MAP.speakerTest,
87
+ cloudRecording: BUILTIN_SOUND_EFFECT_URL_MAP.cloudRecording
88
+ }, soundEffectAudios)
65
89
  };
66
90
  return uiResources;
67
91
  };
package/package.json CHANGED
@@ -1,10 +1,14 @@
1
1
  {
2
2
  "name": "fcr-ui-scene",
3
- "version": "3.7.8",
3
+ "version": "3.8.0-alpha",
4
4
  "main": "lib/index.js",
5
5
  "repository": "ssh://git@git.agoralab.co/aduc/fcr-ui-scene-desktop.git",
6
6
  "author": "agora.io",
7
7
  "license": "MIT",
8
+ "files": [
9
+ "lib",
10
+ "public"
11
+ ],
8
12
  "scripts": {
9
13
  "prepare": "husky",
10
14
  "dev": "agora-tc-dev-server",
@@ -21,14 +25,15 @@
21
25
  "@electron/remote": "2.0.1",
22
26
  "@react-spring/web": "^9.7.3",
23
27
  "@use-gesture/react": "^10.3.1",
24
- "agora-electron-sdk": "4.3.2-build.156-rc.1",
25
- "agora-foundation": "3.7.8",
26
- "agora-ui-foundation": "3.7.8",
28
+ "agora-electron-sdk": "4.3.2-build.163-rc.3",
29
+ "agora-foundation": "3.8.0-alpha",
30
+ "agora-ui-foundation": "3.8.0-alpha",
27
31
  "classnames": "^2.5.1",
28
32
  "core-js": "^3.33.3",
29
33
  "dayjs": "^1.10.4",
30
34
  "electron-screenshots": "^0.5.26",
31
- "fcr-core": "3.7.8",
35
+ "fcr-core": "3.8.0-alpha",
36
+ "fcr-ui-widget-sdk": "^3.8.0-alpha",
32
37
  "js-md5": "^0.8.3",
33
38
  "jszip": "^3.10.1",
34
39
  "lodash": "^4.17.21",
@@ -59,7 +64,7 @@
59
64
  "@types/react-dom": "^17.0.11",
60
65
  "@types/react-virtualized": "^9.21.30",
61
66
  "@types/tinycolor2": "^1.4.6",
62
- "agora-toolchain": "3.7.8",
67
+ "agora-toolchain": "3.8.0-alpha",
63
68
  "core-js": "^3.33.3",
64
69
  "electron": "22.3.27",
65
70
  "husky": "^9.0.11",
package/public/index.html CHANGED
@@ -157,6 +157,7 @@
157
157
  }
158
158
  }
159
159
  };
160
+
160
161
  const setFullScreenFailureComp = (visible, errorMsg) => {
161
162
  setLoading(false);
162
163
  const dom = document.querySelector('#fcr-launch-failure-comp');
@@ -176,154 +177,7 @@
176
177
  }
177
178
  }
178
179
  };
179
-
180
- (async () => {
181
- let creator;
182
- let uiScene;
183
- let sendExitedEventFlag = true;
184
- window.cppSdkHelper.onCreatorInit = (config) => {
185
- if (creator) {
186
- creator.release();
187
- creator = undefined;
188
- }
189
-
190
- creator = new FcrUIScene.FcrUISceneCreator(config);
191
- };
192
-
193
- window.cppSdkHelper.onSettingOpen = () => {
194
- creator.openSetting();
195
- };
196
-
197
- window.cppSdkHelper.onSettingClose = () => {
198
- creator.closeSetting();
199
- };
200
-
201
- window.cppSdkHelper.onSetParameters = (parameters) => {
202
- creator.setParameters(parameters);
203
- };
204
-
205
- window.cppSdkHelper.onRenewUserToken = (token) => {
206
- creator.renewUserToken(token);
207
- };
208
-
209
- window.cppSdkHelper.onLaunchMeeting = (launchOptions) => {
210
- try {
211
- if (uiScene) {
212
- console.log('the previous sequence ui scene exists, exit it');
213
- uiScene.exit();
214
- sendExitedEventFlag = false;
215
- }
216
- } catch (error) {
217
- // 这里可能会有报错,但是不影响后续的流程
218
- console.error(
219
- ' the previous sequence ui scene exists, exit it,but exit has error',
220
- JSON.stringify(error),
221
- );
222
- }
223
- setFullScreenFailureComp(false);
224
- setLoading(true);
225
-
226
- // 定义事件处理函数,以便可以正确移除
227
- const handleConfirmClick = () => {
228
- setFullScreenFailureComp(false);
229
- console.log('windows_release error button clicked');
230
- window.runtime.getCurrentBrowserWindow().hide();
231
- };
232
-
233
- document
234
- .querySelector('#fcr-launch-failure-confirm-btn')
235
- .removeEventListener('click', handleConfirmClick);
236
- document
237
- .querySelector('#fcr-launch-failure-confirm-btn')
238
- .addEventListener('click', handleConfirmClick);
239
-
240
- const { widgets, ...others } = launchOptions;
241
-
242
- if (widgets && widgets instanceof Array) {
243
- widgets.forEach((w) => {
244
- creator.registerWidget(w);
245
- });
246
- }
247
- uiScene = creator.launch(
248
- others,
249
- () => {
250
- console.log('windows_release ui scene closed callback');
251
- window.runtime.getCurrentBrowserWindow().hide();
252
- },
253
- () => {},
254
- () => {},
255
- document.getElementById('root'),
256
- );
257
-
258
- window.cppSdkHelper.exitUiScene = () => {
259
- try {
260
- uiScene.exit();
261
- } catch (error) {
262
- window.cppSdkHelper.exitedMeeting(roomId, FcrUIExitReason.USER_QUIT);
263
- }
264
- };
265
-
266
- uiScene.addObserver({
267
- onLaunchSuccess: () => {
268
- setLoading(false);
269
- sendExitedEventFlag = true;
270
- const roomProvider = uiScene._objectManager.getObject('roomProvider');
271
- if (!roomProvider) {
272
- throw new Error('roomProvider not found in uiScene');
273
- }
274
- const currentRoomControl = roomProvider.currentRoomControl;
275
- if (!currentRoomControl) {
276
- throw new Error('currentRoomControl not found in uiScene');
277
- }
278
- const roomInfo = currentRoomControl.getRoomInfo();
279
-
280
- if (!roomInfo) {
281
- throw new Error('roomInfo not found in uiScene');
282
- }
283
- const { roomName, roomId } = roomInfo;
284
- document.querySelector('title').innerText = roomName;
285
- window.cppSdkHelper.launchSuccess(roomId);
286
- },
287
- onLaunchFailure: (roomId, error) => {
288
- const errorCode = Number(error.code);
289
- let errorMessage = error.message;
290
-
291
- if (errorCode === 732403100 || errorCode === 631735290) {
292
- errorMessage = window._transI18n('fmt_lock_error');
293
- } else if (errorCode === 732403101) {
294
- errorMessage = window._transI18n('fmt_pc_room_not_exist_error');
295
- } else if (errorCode === 732403103) {
296
- errorMessage = window._transI18n('fmt_host_leave_error');
297
- } else if (errorCode === 720410100) {
298
- errorMessage = window._transI18n('fmt_end_error');
299
- } else {
300
- errorMessage = `Error: code=${errorCode}, message=${errorMessage}`;
301
- }
302
-
303
- setFullScreenFailureComp(true, errorMessage);
304
- window.cppSdkHelper.launchFailure(roomId, errorCode);
305
- },
306
-
307
- onExited: (roomId, reason) => {
308
- if (!sendExitedEventFlag) {
309
- return;
310
- }
311
- console.log('the previous sequence ui scene : ui scene exited');
312
- window.cppSdkHelper.exitedMeeting(roomId, reason);
313
- uiScene = null;
314
- setTimeout(() => {
315
- console.log('windows_release ui scene exited callback');
316
- window.runtime.getCurrentBrowserWindow().hide();
317
- });
318
- },
319
- onWidgetClicked: (widgetId) => {
320
- window.cppSdkHelper.onWidgetClicked(widgetId);
321
- },
322
- onUserTokenWillExpire: () => {
323
- window.cppSdkHelper.onUserTokenWillExpire();
324
- },
325
- });
326
- };
327
- })();
328
180
  </script>
181
+
182
+ <script src="meeting-manager.js"></script>
329
183
  </html>
@@ -0,0 +1,405 @@
1
+ /**
2
+ * 会议管理器 - 负责处理会议的生命周期管理
3
+ * 包括创建者初始化、会议启动、错误处理等功能
4
+ */
5
+ class MeetingManager {
6
+ constructor() {
7
+ this.creator = null;
8
+ this.uiScene = null;
9
+
10
+ this.sendExitedEventFlag = true;
11
+ this.lastInitParams = '';
12
+
13
+ this.bindGlobalMethods();
14
+ }
15
+
16
+ /**
17
+ * 重新加载创建者
18
+ * @param {string} stringInitParams - 初始化参数字符串
19
+ */
20
+ reloadCreator(stringInitParams) {
21
+ try {
22
+ const config = JSON.parse(stringInitParams);
23
+ this.creator = new FcrUIScene.FcrUISceneCreator(config);
24
+ this.logInfo('Creator reloaded successfully');
25
+ } catch (error) {
26
+ this.logError('Failed to parse init options:', error);
27
+ }
28
+ }
29
+
30
+
31
+ releaseCreator() {
32
+ if (this.creator) {
33
+ this.logInfo('Creator exists, releasing previous creator');
34
+ this.releasePreviousScene();
35
+ this.creator.release();
36
+ this.creator = undefined;
37
+ }
38
+ }
39
+
40
+ /**
41
+ * 创建或初始化创建者
42
+ * @param {Object} config - 配置对象
43
+ */
44
+ createOrInitCreator(config) {
45
+ try {
46
+ // 如果存在旧的创建者,先释放
47
+ this.releaseCreator();
48
+ } catch (error) {
49
+ this.logError('Failed to release creator:', error);
50
+ }
51
+
52
+ // 创建新的创建者
53
+ this.lastInitParams = JSON.stringify(config);
54
+ this.logInfo(`Creating new creator with config: ${this.lastInitParams}`);
55
+ this.creator = new FcrUIScene.FcrUISceneCreator(config);
56
+ }
57
+
58
+ /**
59
+ * 释放之前的场景
60
+ */
61
+ releasePreviousScene() {
62
+ if (this.uiScene) {
63
+ this.sendExitedEventFlag = false;
64
+ this.uiScene.exit();
65
+ this.uiScene = null;
66
+ this.logInfo('Previous UI scene released');
67
+ }
68
+ }
69
+
70
+ /**
71
+ * 启动会议
72
+ * @param {Object} launchOptions - 启动选项
73
+ */
74
+ launchMeeting(launchOptions) {
75
+ const { data, lastInitParams: initParamsFromMainProcess } = launchOptions;
76
+
77
+ this.logInfo(`Launching meeting with params: ${initParamsFromMainProcess}`);
78
+
79
+ // 检查是否需要重新加载创建者
80
+ if (initParamsFromMainProcess !== this.lastInitParams) {
81
+ this.logInfo('Init params changed, reloading creator');
82
+ this.lastInitParams = initParamsFromMainProcess;
83
+ this.releaseCreator();
84
+ this.reloadCreator(initParamsFromMainProcess);
85
+ }
86
+
87
+ // 清理之前的场景
88
+ this.cleanupPreviousScene();
89
+
90
+ // 设置UI状态
91
+ this.setFullScreenFailureComp(false);
92
+ this.setLoading(true);
93
+
94
+ // 绑定错误处理事件
95
+ this.bindErrorHandlers();
96
+
97
+ // 注册小部件
98
+ this.registerWidgets(data);
99
+
100
+ // 启动场景
101
+ this.startUIScene(data);
102
+
103
+ // 添加观察者
104
+ this.addSceneObservers();
105
+ }
106
+
107
+ /**
108
+ * 清理之前的场景
109
+ */
110
+ cleanupPreviousScene() {
111
+ try {
112
+ if (this.uiScene) {
113
+ this.logInfo('Cleaning up previous UI scene');
114
+ this.sendExitedEventFlag = false;
115
+ this.uiScene.exit();
116
+ }
117
+ } catch (error) {
118
+ this.logError('Error during scene cleanup:', error);
119
+ }
120
+ }
121
+
122
+ /**
123
+ * 绑定错误处理事件
124
+ */
125
+ bindErrorHandlers() {
126
+ const confirmBtn = document.querySelector('#fcr-launch-failure-confirm-btn');
127
+ if (confirmBtn) {
128
+ confirmBtn.removeEventListener('click', this.handleConfirmClick);
129
+ confirmBtn.addEventListener('click', this.handleConfirmClick.bind(this));
130
+ }
131
+ }
132
+
133
+ /**
134
+ * 注册小部件
135
+ * @param {Object} data - 数据对象
136
+ */
137
+ registerWidgets(data) {
138
+ const { widgets, ...others } = data;
139
+ if (widgets && Array.isArray(widgets)) {
140
+ widgets.forEach(widget => {
141
+ this.creator.registerWidget(widget);
142
+ });
143
+ }
144
+ }
145
+
146
+ /**
147
+ * 启动UI场景
148
+ * @param {Object} data - 数据对象
149
+ */
150
+ startUIScene(data) {
151
+ const { widgets, ...others } = data;
152
+
153
+ this.uiScene = this.creator.launch(
154
+ others,
155
+ async () => {
156
+ this.logInfo('UI scene closed callback');
157
+ const currentBrowserWindow = window.runtime.getCurrentBrowserWindow();
158
+ if(currentBrowserWindow.isFullScreen()) {
159
+ currentBrowserWindow.setFullScreen(false);
160
+ await new Promise(resolve => setTimeout(resolve, 500));
161
+ }
162
+
163
+ if (currentBrowserWindow) {
164
+ currentBrowserWindow.hide();
165
+ }
166
+ },
167
+ () => { }, // 空回调
168
+ () => { }, // 空回调
169
+ document.getElementById('root')
170
+ );
171
+ }
172
+
173
+ /**
174
+ * 添加场景观察者
175
+ */
176
+ addSceneObservers() {
177
+ this.uiScene.addObserver({
178
+ onLaunchSuccess: () => this.handleLaunchSuccess(),
179
+ onLaunchFailure: (roomId, error) => this.handleLaunchFailure(roomId, error),
180
+ onExited: (roomId, reason) => this.handleSceneExited(roomId, reason),
181
+ onWidgetClicked: (widgetId) => this.handleWidgetClicked(widgetId),
182
+ onUserTokenWillExpire: () => this.handleUserTokenWillExpire()
183
+ });
184
+ }
185
+
186
+ /**
187
+ * 处理启动成功
188
+ */
189
+ handleLaunchSuccess() {
190
+ this.setLoading(false);
191
+ this.sendExitedEventFlag = true;
192
+
193
+ try {
194
+ const roomProvider = this.uiScene._objectManager.getObject('roomProvider');
195
+ if (!roomProvider) {
196
+ throw new Error('roomProvider not found in uiScene');
197
+ }
198
+
199
+ const currentRoomControl = roomProvider.currentRoomControl;
200
+ if (!currentRoomControl) {
201
+ throw new Error('currentRoomControl not found in uiScene');
202
+ }
203
+
204
+ const roomInfo = currentRoomControl.getRoomInfo();
205
+ if (!roomInfo) {
206
+ throw new Error('roomInfo not found in uiScene');
207
+ }
208
+
209
+ const { roomName, roomId } = roomInfo;
210
+ document.querySelector('title').innerText = roomName;
211
+ window.cppSdkHelper.launchSuccess(roomId);
212
+ } catch (error) {
213
+ this.logError('Error in launch success handler:', error);
214
+ }
215
+ }
216
+
217
+ /**
218
+ * 处理启动失败
219
+ * @param {string} roomId - 房间ID
220
+ * @param {Object} error - 错误对象
221
+ */
222
+ handleLaunchFailure(roomId, error) {
223
+ const errorCode = Number(error.code);
224
+ let errorMessage = this.getErrorMessage(errorCode, error.message);
225
+
226
+ this.setFullScreenFailureComp(true, errorMessage);
227
+ window.cppSdkHelper.launchFailure(roomId, errorCode);
228
+ }
229
+
230
+ /**
231
+ * 获取错误消息
232
+ * @param {number} errorCode - 错误代码
233
+ * @param {string} defaultMessage - 默认错误消息
234
+ * @returns {string} 错误消息
235
+ */
236
+ getErrorMessage(errorCode, defaultMessage) {
237
+ const errorCodeMap = {
238
+ 732403100: 'fmt_lock_error',
239
+ 631735290: 'fmt_lock_error',
240
+ 732403101: 'fmt_pc_room_not_exist_error',
241
+ 732403103: 'fmt_host_leave_error',
242
+ 720410100: 'fmt_end_error'
243
+ };
244
+
245
+ const errorKey = errorCodeMap[errorCode];
246
+ if (errorKey) {
247
+ return window._transI18n(errorKey);
248
+ }
249
+
250
+ return `Error: code=${errorCode}, message=${defaultMessage}`;
251
+ }
252
+
253
+ /**
254
+ * 处理场景退出
255
+ * @param {string} roomId - 房间ID
256
+ * @param {string} reason - 退出原因
257
+ */
258
+ handleSceneExited(roomId, reason) {
259
+ if (!this.sendExitedEventFlag) {
260
+ return;
261
+ }
262
+
263
+ this.logInfo('UI scene exited');
264
+ window.cppSdkHelper.exitedMeeting(roomId, reason);
265
+ this.uiScene = null;
266
+
267
+ setTimeout(() => {
268
+ this.logInfo('UI scene exited callback');
269
+ window.runtime.getCurrentBrowserWindow().hide();
270
+ });
271
+ }
272
+
273
+ /**
274
+ * 处理小部件点击
275
+ * @param {string} widgetId - 小部件ID
276
+ */
277
+ handleWidgetClicked(widgetId) {
278
+ window.cppSdkHelper.onWidgetClicked(widgetId);
279
+ }
280
+
281
+ /**
282
+ * 处理用户令牌即将过期
283
+ */
284
+ handleUserTokenWillExpire() {
285
+ window.cppSdkHelper.onUserTokenWillExpire();
286
+ }
287
+
288
+ /**
289
+ * 退出UI场景
290
+ */
291
+ exitUiScene() {
292
+ try {
293
+ if (!this.uiScene) {
294
+ return;
295
+ }
296
+ this.uiScene.exit();
297
+ this.lastInitParams = '';
298
+ } catch (error) {
299
+ window.cppSdkHelper.exitedMeeting(roomId, FcrUIExitReason.USER_QUIT);
300
+ }
301
+ }
302
+
303
+ /**
304
+ * 处理确认按钮点击
305
+ */
306
+ handleConfirmClick() {
307
+ this.setFullScreenFailureComp(false);
308
+ this.logInfo('Error confirmation button clicked');
309
+ window.runtime.getCurrentBrowserWindow().hide();
310
+ }
311
+
312
+ /**
313
+ * 绑定全局方法
314
+ */
315
+ bindGlobalMethods() {
316
+ window.cppSdkHelper.onCreatorInit = (config) => {
317
+ window.__AgoraMutex.dispatch(() => {
318
+ this.createOrInitCreator(config);
319
+ });
320
+ };
321
+
322
+ window.cppSdkHelper.onSettingOpen = () => {
323
+ this.creator.openSetting();
324
+ };
325
+
326
+ window.cppSdkHelper.onSettingClose = () => {
327
+ this.creator.closeSetting();
328
+ };
329
+
330
+ window.cppSdkHelper.onSetParameters = (parameters) => {
331
+ this.creator.setParameters(parameters);
332
+ };
333
+
334
+ window.cppSdkHelper.onRenewUserToken = (token) => {
335
+ this.creator.renewUserToken(token);
336
+ };
337
+
338
+ window.cppSdkHelper.exitUiScene = () => {
339
+ window.__AgoraMutex.dispatch(() => {
340
+ this.exitUiScene();
341
+ });
342
+ };
343
+
344
+ window.cppSdkHelper.onLaunchMeeting = (launchOptions) => {
345
+ window.__AgoraMutex.dispatch(() => {
346
+ this.launchMeeting(launchOptions);
347
+ })
348
+ };
349
+ }
350
+
351
+ /**
352
+ * 设置加载状态
353
+ * @param {boolean} visible - 是否显示加载状态
354
+ */
355
+ setLoading(visible) {
356
+ const dom = document.querySelector('#launch-loading');
357
+ if (dom) {
358
+ dom.style.display = visible ? 'flex' : 'none';
359
+ }
360
+ }
361
+
362
+ /**
363
+ * 设置全屏失败组件
364
+ * @param {boolean} visible - 是否显示
365
+ * @param {string} errorMsg - 错误消息
366
+ */
367
+ setFullScreenFailureComp(visible, errorMsg) {
368
+ this.setLoading(false);
369
+ const dom = document.querySelector('#fcr-launch-failure-comp');
370
+ const btnTextDom = document.querySelector('#fcr-launch-failure-btn-text');
371
+
372
+ if (dom) {
373
+ if (visible) {
374
+ dom.style.display = 'flex';
375
+ btnTextDom.innerText = window.$$agora_language === 'zh' ? '我已知悉' : 'I know';
376
+ if (errorMsg) {
377
+ const msgDom = document.querySelector('#fcr-launch-failure-error-info');
378
+ msgDom.innerText = errorMsg;
379
+ }
380
+ } else {
381
+ dom.style.display = 'none';
382
+ }
383
+ }
384
+ }
385
+
386
+ /**
387
+ * 记录信息日志
388
+ * @param {string} message - 日志消息
389
+ */
390
+ logInfo(message) {
391
+ window.__AgoraLogger.info(`MEETING MANAGER: ${message}`);
392
+ }
393
+
394
+ /**
395
+ * 记录错误日志
396
+ * @param {string} message - 错误消息
397
+ * @param {Error} error - 错误对象
398
+ */
399
+ logError(message, error) {
400
+ window.__AgoraLogger.error(`MEETING MANAGER: ${message}`, error);
401
+ }
402
+ }
403
+
404
+ // 初始化会议管理器
405
+ const meetingManager = new MeetingManager();
Binary file
Binary file
Binary file