fcr-ui-scene 3.8.1 → 3.9.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 (1399) hide show
  1. package/lib/base.js +2 -2
  2. package/lib/creator/index.js +25 -10
  3. package/lib/creator/provider-initializer.browser.js +28 -3
  4. package/lib/creator/provider-initializer.electron.js +28 -5
  5. package/lib/electron/app.js +26 -9
  6. package/lib/electron/asar-validation.js +5 -1
  7. package/lib/electron/env.d.ts +1 -0
  8. package/lib/electron/env.js +2 -2
  9. package/lib/electron/injections.d.ts +2 -1
  10. package/lib/electron/injections.js +23 -17
  11. package/lib/electron/ipc/type.d.ts +2 -1
  12. package/lib/electron/ipc/type.js +1 -0
  13. package/lib/electron/ipc-protocol.d.ts +2 -0
  14. package/lib/electron/main.js +6 -6
  15. package/lib/electron/plugins/main-window-display.d.ts +8 -0
  16. package/lib/electron/plugins/main-window-display.js +23 -0
  17. package/lib/electron/preload.js +2 -1
  18. package/lib/electron/process-manager/index.d.ts +1 -0
  19. package/lib/electron/process-manager/index.js +37 -0
  20. package/lib/electron/process-manager/state-manager.d.ts +10 -0
  21. package/lib/electron/process-manager/state-manager.js +46 -4
  22. package/lib/electron/sdk-helper.js +4 -0
  23. package/lib/electron/window-proxy/browser-window-proxy-factory.d.ts +7 -0
  24. package/lib/electron/window-proxy/browser-window-proxy-factory.js +46 -0
  25. package/lib/electron/window-proxy/{browser-window-proxy.d.ts → implementations/browser-window-proxy.d.ts} +3 -24
  26. package/lib/electron/window-proxy/implementations/browser-window-proxy.js +335 -0
  27. package/lib/electron/window-proxy/implementations/electron-event-broadcaster.d.ts +9 -0
  28. package/lib/electron/window-proxy/implementations/electron-event-broadcaster.js +32 -0
  29. package/lib/electron/window-proxy/implementations/electron-ipc-handler.d.ts +6 -0
  30. package/lib/electron/window-proxy/implementations/electron-ipc-handler.js +27 -0
  31. package/lib/electron/window-proxy/implementations/electron-logger.d.ts +7 -0
  32. package/lib/electron/window-proxy/implementations/electron-logger.js +34 -0
  33. package/lib/electron/window-proxy/{main-process-handler.d.ts → implementations/main-process-handler.d.ts} +16 -9
  34. package/lib/electron/window-proxy/{main-process-handler.js → implementations/main-process-handler.js} +111 -111
  35. package/lib/electron/window-proxy/interfaces.d.ts +52 -0
  36. package/lib/electron/window-proxy/interfaces.js +6 -0
  37. package/lib/fragments/annotation/cursor.css +77 -0
  38. package/lib/fragments/annotation/index.d.ts +2 -4
  39. package/lib/fragments/annotation/index.js +4 -82
  40. package/lib/fragments/annotation/libs.d.ts +15 -11
  41. package/lib/fragments/annotation/libs.js +75 -26
  42. package/lib/fragments/annotation/store.d.ts +23 -43
  43. package/lib/fragments/annotation/store.js +319 -709
  44. package/lib/fragments/annotation/style.css +5 -6
  45. package/lib/fragments/annotation/view.d.ts +1 -0
  46. package/lib/fragments/annotation/view.js +8 -48
  47. package/lib/fragments/base.js +1 -1
  48. package/lib/fragments/whiteboard/libs.d.ts +72 -0
  49. package/lib/fragments/whiteboard/libs.js +155 -0
  50. package/lib/fragments/whiteboard/store.d.ts +1 -4
  51. package/lib/fragments/whiteboard/store.js +64 -128
  52. package/lib/modules/action-bar/components/apps/index.js +2 -2
  53. package/lib/modules/action-bar/components/collapse/index.js +8 -3
  54. package/lib/modules/action-bar/components/{confirm-leave-meeting → confirm-end-meeting}/index.d.ts +1 -1
  55. package/lib/modules/action-bar/components/{confirm-leave-meeting → confirm-end-meeting}/index.js +14 -33
  56. package/lib/modules/action-bar/components/leave/index.js +1 -1
  57. package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.css +6 -0
  58. package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.d.ts +3 -7
  59. package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.js +66 -42
  60. package/lib/modules/action-bar/components/notification-bar/components/virtual-image/index.d.ts +2 -2
  61. package/lib/modules/action-bar/components/notification-bar/components/virtual-image/index.js +11 -7
  62. package/lib/modules/action-bar/components/notification-bar/index.js +12 -70
  63. package/lib/modules/action-bar/components/screen-share/submenu.js +39 -2
  64. package/lib/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.css +1 -0
  65. package/lib/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.js +10 -7
  66. package/lib/modules/action-bar/index.css +1 -1
  67. package/lib/modules/action-bar/main-scene/index.d.ts +1 -1
  68. package/lib/modules/action-bar/main-scene/index.js +4 -4
  69. package/lib/modules/action-bar/main-scene/store.base.d.ts +16 -9
  70. package/lib/modules/action-bar/main-scene/store.base.js +165 -94
  71. package/lib/modules/action-bar/type.d.ts +1 -15
  72. package/lib/modules/action-bar/type.js +14 -0
  73. package/lib/modules/action-bar/waiting-scene/view.js +1 -1
  74. package/lib/modules/annotation/board-cursor.css +77 -0
  75. package/lib/modules/annotation/components/color-picker/components/color.d.ts +5 -0
  76. package/lib/modules/annotation/components/color-picker/components/color.js +37 -0
  77. package/lib/modules/annotation/components/color-picker/components/panel.d.ts +1 -0
  78. package/lib/modules/annotation/components/color-picker/components/panel.js +108 -0
  79. package/lib/modules/annotation/components/color-picker/components/picker.d.ts +1 -0
  80. package/lib/modules/annotation/components/color-picker/components/picker.js +75 -0
  81. package/lib/modules/annotation/components/color-picker/index.d.ts +2 -0
  82. package/lib/modules/annotation/components/color-picker/index.js +45 -0
  83. package/lib/modules/annotation/components/eraser-picker.d.ts +4 -0
  84. package/lib/modules/annotation/components/eraser-picker.js +142 -0
  85. package/lib/modules/annotation/components/expansion/index.d.ts +1 -0
  86. package/lib/modules/annotation/components/expansion/index.js +100 -0
  87. package/lib/modules/annotation/components/extra-tool-picker.d.ts +1 -0
  88. package/lib/modules/annotation/components/extra-tool-picker.js +62 -0
  89. package/lib/modules/annotation/components/history.d.ts +2 -0
  90. package/lib/modules/annotation/components/history.js +76 -0
  91. package/lib/modules/annotation/components/icons/fold-icon.d.ts +2 -0
  92. package/lib/modules/annotation/components/icons/fold-icon.js +41 -0
  93. package/lib/modules/annotation/components/icons/move-icon.d.ts +1 -0
  94. package/lib/modules/annotation/components/icons/move-icon.js +66 -0
  95. package/lib/modules/annotation/components/item/index.d.ts +1 -0
  96. package/lib/modules/annotation/components/item/index.js +43 -0
  97. package/lib/modules/annotation/components/move-handle.d.ts +5 -0
  98. package/lib/modules/annotation/components/move-handle.js +134 -0
  99. package/lib/modules/annotation/components/pen-picker.d.ts +4 -0
  100. package/lib/modules/annotation/components/pen-picker.js +150 -0
  101. package/lib/modules/annotation/components/screen-capture-picker.d.ts +4 -0
  102. package/lib/modules/annotation/components/screen-capture-picker.js +84 -0
  103. package/lib/modules/annotation/components/shape-picker.d.ts +4 -0
  104. package/lib/modules/annotation/components/shape-picker.js +201 -0
  105. package/lib/modules/annotation/hooks/index.d.ts +14 -0
  106. package/lib/modules/annotation/hooks/index.js +164 -0
  107. package/lib/modules/annotation/index.d.ts +31 -0
  108. package/lib/modules/annotation/index.js +152 -0
  109. package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/color-tool/color-panel/index.js +2 -2
  110. package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/color-tool/index.js +22 -9
  111. package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/graphic-tool/graphic-panel/index.js +2 -3
  112. package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/graphic-tool/index.js +22 -9
  113. package/lib/modules/annotation/standalone-toolbar/components/item/style.css +45 -0
  114. package/lib/modules/annotation/standalone-toolbar/components/panel/style.css +24 -0
  115. package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/pen-tool/index.js +22 -9
  116. package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/pen-tool/pen-panel/index.js +1 -1
  117. package/lib/modules/annotation/standalone-toolbar/components/permission-tool/index.d.ts +1 -0
  118. package/lib/modules/annotation/standalone-toolbar/components/permission-tool/index.js +52 -0
  119. package/lib/modules/annotation/standalone-toolbar/components/tips/style.css +19 -0
  120. package/lib/modules/annotation/standalone-toolbar/store.d.ts +104 -0
  121. package/lib/modules/annotation/standalone-toolbar/store.js +618 -0
  122. package/lib/modules/annotation/standalone-toolbar/style.css +58 -0
  123. package/lib/modules/annotation/standalone-toolbar/view.js +193 -0
  124. package/lib/modules/annotation/store.base.d.ts +27 -0
  125. package/lib/modules/annotation/store.base.js +185 -0
  126. package/lib/modules/annotation/store.browser.d.ts +3 -0
  127. package/lib/modules/annotation/store.browser.js +25 -0
  128. package/lib/modules/annotation/store.electron.d.ts +8 -0
  129. package/lib/modules/annotation/store.electron.js +75 -0
  130. package/lib/modules/annotation/style.css +36 -0
  131. package/lib/modules/annotation/toolbar-store.d.ts +86 -0
  132. package/lib/modules/annotation/toolbar-store.js +473 -0
  133. package/lib/modules/annotation/type.d.ts +7 -0
  134. package/lib/modules/annotation/type.js +6 -0
  135. package/lib/modules/annotation/view.d.ts +5 -0
  136. package/lib/modules/annotation/view.js +107 -0
  137. package/lib/modules/chat/chat-room-store.d.ts +8 -1
  138. package/lib/modules/chat/chat-room-store.js +152 -72
  139. package/lib/modules/chat/components/message-list/index.js +123 -93
  140. package/lib/modules/chat/components/message-list/message-item/index.js +89 -67
  141. package/lib/modules/chat/components/message-list/scroll-bottom-button/index.js +6 -8
  142. package/lib/modules/chat/index.css +1 -9
  143. package/lib/modules/chat/store.js +7 -5
  144. package/lib/modules/chat/view.js +4 -9
  145. package/lib/modules/components/annotation-menu/index.d.ts +5 -3
  146. package/lib/modules/components/annotation-menu/index.js +29 -34
  147. package/lib/modules/components/apps/index.css +3 -2
  148. package/lib/modules/components/caption-menu/translation-setting-options.js +2 -2
  149. package/lib/modules/components/confirm-wrapper/index.css +48 -0
  150. package/lib/modules/components/confirm-wrapper/index.d.ts +25 -0
  151. package/lib/modules/components/confirm-wrapper/index.js +87 -0
  152. package/lib/modules/components/control-bar/index.d.ts +40 -8
  153. package/lib/modules/components/control-bar/index.js +350 -200
  154. package/lib/modules/components/device-control/components/audio-menu/index.js +3 -2
  155. package/lib/modules/components/device-control/components/video-menu/index.js +5 -3
  156. package/lib/modules/components/device-control/store.base.d.ts +5 -0
  157. package/lib/modules/components/device-control/store.base.js +17 -1
  158. package/lib/modules/components/leave-meeting/index.css +21 -0
  159. package/lib/modules/components/leave-meeting/index.d.ts +0 -2
  160. package/lib/modules/components/leave-meeting/index.js +63 -103
  161. package/lib/modules/components/leave-meeting/portal.d.ts +0 -1
  162. package/lib/modules/components/leave-meeting/portal.js +4 -6
  163. package/lib/modules/components/leave-meeting/store.base.d.ts +3 -4
  164. package/lib/modules/components/leave-meeting/store.base.js +49 -55
  165. package/lib/modules/components/leave-meeting/style.css +0 -1
  166. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +2 -1
  167. package/lib/modules/components/member-window/components/member-actions/provider.js +1 -1
  168. package/lib/modules/components/member-window/index.d.ts +1 -1
  169. package/lib/modules/components/member-window/index.js +3 -3
  170. package/lib/modules/components/security-menu/store.js +7 -9
  171. package/lib/modules/components/tab-frame/index.css +2 -2
  172. package/lib/modules/connection-gateway/components/phone/index.js +1 -1
  173. package/lib/modules/connection-gateway/store.js +6 -8
  174. package/lib/modules/control-bar/components/annotation-button/index.d.ts +11 -0
  175. package/lib/modules/control-bar/components/annotation-button/index.js +51 -0
  176. package/lib/modules/control-bar/components/apps-popover/index.css +3 -0
  177. package/lib/modules/control-bar/components/apps-popover/index.d.ts +1 -0
  178. package/lib/modules/control-bar/components/apps-popover/index.js +2 -0
  179. package/lib/modules/control-bar/components/carmera/index.js +1 -1
  180. package/lib/modules/control-bar/components/meeting-details/index.js +14 -20
  181. package/lib/modules/control-bar/components/microphone/index.js +2 -2
  182. package/lib/modules/control-bar/hooks.js +1 -1
  183. package/lib/modules/control-bar/index.css +11 -0
  184. package/lib/modules/control-bar/store.d.ts +20 -5
  185. package/lib/modules/control-bar/store.js +190 -59
  186. package/lib/modules/control-bar/view.js +72 -39
  187. package/lib/modules/device-pretest/audio-preview/microphone-detection.js +3 -9
  188. package/lib/modules/device-pretest/audio-preview/speaker-detection.js +1 -1
  189. package/lib/modules/device-pretest/index.js +1 -1
  190. package/lib/modules/device-pretest/settings/beauty.js +1 -1
  191. package/lib/modules/device-pretest/settings/video-effect.d.ts +2 -0
  192. package/lib/modules/device-pretest/settings/video-effect.js +27 -12
  193. package/lib/modules/device-pretest/settings/video-settings-basic.js +1 -1
  194. package/lib/modules/device-pretest/settings/virtual-background-setting.js +1 -1
  195. package/lib/modules/dialog/components/confirm/index.css +0 -18
  196. package/lib/modules/dialog/components/confirm/index.d.ts +1 -0
  197. package/lib/modules/dialog/components/confirm/index.js +2 -2
  198. package/lib/modules/dialog/components/dialog-container/index.css +3 -4
  199. package/lib/modules/dialog/components/dialog-container/index.d.ts +6 -21
  200. package/lib/modules/dialog/components/dialog-container/index.js +80 -132
  201. package/lib/modules/dialog/components/normal-window/index.d.ts +8 -20
  202. package/lib/modules/dialog/components/normal-window/index.js +14 -34
  203. package/lib/modules/dialog/dialogConfig/browser.d.ts +12 -0
  204. package/lib/modules/dialog/dialogConfig/browser.js +11 -0
  205. package/lib/modules/dialog/dialogConfig/electron.d.ts +4 -0
  206. package/lib/modules/dialog/dialogConfig/electron.js +15 -0
  207. package/lib/modules/dialog/dialogs/annotation-mask/index.d.ts +8 -0
  208. package/lib/modules/dialog/dialogs/annotation-mask/index.js +41 -0
  209. package/lib/modules/dialog/dialogs/annotation-tool/index.d.ts +5 -4
  210. package/lib/modules/dialog/dialogs/annotation-tool/index.js +19 -35
  211. package/lib/modules/dialog/dialogs/caption/index.d.ts +4 -16
  212. package/lib/modules/dialog/dialogs/caption/index.js +25 -19
  213. package/lib/modules/dialog/dialogs/chat/index.d.ts +4 -18
  214. package/lib/modules/dialog/dialogs/chat/index.js +33 -54
  215. package/lib/modules/dialog/dialogs/confirm/index.css +2 -13
  216. package/lib/modules/dialog/dialogs/confirm/index.d.ts +2 -17
  217. package/lib/modules/dialog/dialogs/confirm/index.js +5 -7
  218. package/lib/modules/dialog/dialogs/confirm-leave-meeting/index.d.ts +5 -16
  219. package/lib/modules/dialog/dialogs/confirm-leave-meeting/index.js +4 -24
  220. package/lib/modules/dialog/dialogs/connection-gateway/index.d.ts +4 -20
  221. package/lib/modules/dialog/dialogs/connection-gateway/index.js +6 -29
  222. package/lib/modules/dialog/dialogs/connection-gateway/tabs.d.ts +0 -1
  223. package/lib/modules/dialog/dialogs/connection-gateway/tabs.js +2 -13
  224. package/lib/modules/dialog/dialogs/control-bar/index.d.ts +2 -16
  225. package/lib/modules/dialog/dialogs/control-bar/index.js +4 -6
  226. package/lib/modules/dialog/dialogs/control-bar-leave-meeting/index.d.ts +4 -14
  227. package/lib/modules/dialog/dialogs/control-bar-leave-meeting/index.js +3 -21
  228. package/lib/modules/dialog/dialogs/device-setting/index.d.ts +4 -13
  229. package/lib/modules/dialog/dialogs/device-setting/index.js +4 -20
  230. package/lib/modules/dialog/dialogs/end-meeting-notice/index.d.ts +8 -0
  231. package/lib/modules/dialog/dialogs/{end-meeting → end-meeting-notice}/index.js +4 -14
  232. package/lib/modules/dialog/dialogs/interpreter/index.d.ts +4 -14
  233. package/lib/modules/dialog/dialogs/interpreter/index.js +33 -24
  234. package/lib/modules/dialog/dialogs/invite/index.d.ts +4 -18
  235. package/lib/modules/dialog/dialogs/invite/index.js +25 -24
  236. package/lib/modules/dialog/dialogs/live-streaming/index.d.ts +4 -8
  237. package/lib/modules/dialog/dialogs/live-streaming/index.js +7 -11
  238. package/lib/modules/dialog/dialogs/mute-all/index.d.ts +4 -15
  239. package/lib/modules/dialog/dialogs/mute-all/index.js +4 -20
  240. package/lib/modules/dialog/dialogs/participant/index.d.ts +4 -18
  241. package/lib/modules/dialog/dialogs/participant/index.js +31 -31
  242. package/lib/modules/dialog/dialogs/rename/index.d.ts +2 -14
  243. package/lib/modules/dialog/dialogs/rename/index.js +2 -13
  244. package/lib/modules/dialog/dialogs/sample-dialog/index.d.ts +2 -13
  245. package/lib/modules/dialog/dialogs/sample-dialog/index.js +2 -2
  246. package/lib/modules/dialog/dialogs/share-screen-selection/index.d.ts +2 -14
  247. package/lib/modules/dialog/dialogs/share-screen-selection/index.js +3 -12
  248. package/lib/modules/dialog/dialogs/sub-window/index.d.ts +2 -17
  249. package/lib/modules/dialog/dialogs/sub-window/index.js +4 -3
  250. package/lib/modules/dialog/dialogs/subtitles-history/index.d.ts +4 -19
  251. package/lib/modules/dialog/dialogs/subtitles-history/index.js +32 -25
  252. package/lib/modules/dialog/dialogs/system-preference/index.css +3 -2
  253. package/lib/modules/dialog/dialogs/system-preference/index.d.ts +5 -28
  254. package/lib/modules/dialog/dialogs/system-preference/index.js +13 -13
  255. package/lib/modules/dialog/dialogs/toast/index.d.ts +2 -16
  256. package/lib/modules/dialog/dialogs/toast/index.js +5 -5
  257. package/lib/modules/dialog/dialogs/video-window/index.d.ts +2 -18
  258. package/lib/modules/dialog/dialogs/video-window/index.js +4 -4
  259. package/lib/modules/dialog/dialogs/whiteboard/index.d.ts +2 -18
  260. package/lib/modules/dialog/dialogs/whiteboard/index.js +2 -2
  261. package/lib/modules/dialog/dialogs/widget/index.d.ts +4 -14
  262. package/lib/modules/dialog/dialogs/widget/index.js +22 -26
  263. package/lib/modules/dialog/index.css +4 -11
  264. package/lib/modules/dialog/level-config.d.ts +1 -0
  265. package/lib/modules/dialog/level-config.js +1 -0
  266. package/lib/modules/dialog/store.base.js +0 -3
  267. package/lib/modules/dialog/store.electron.d.ts +1 -0
  268. package/lib/modules/dialog/store.electron.js +16 -9
  269. package/lib/modules/dialog/type.d.ts +3 -1
  270. package/lib/modules/dialog/view.js +25 -1
  271. package/lib/modules/dialog/web-dialog-wrapper.d.ts +3 -0
  272. package/lib/modules/dialog/web-dialog-wrapper.js +154 -0
  273. package/lib/modules/event-toast/index.css +5 -2
  274. package/lib/modules/event-toast/store.browser.js +1 -1
  275. package/lib/modules/event-toast/store.electron.js +1 -1
  276. package/lib/modules/interpreter/index.css +1 -2
  277. package/lib/modules/interpreter/store.js +22 -19
  278. package/lib/modules/interpreter/utils.js +1 -1
  279. package/lib/modules/invite/components/pstn-invite.js +5 -5
  280. package/lib/modules/invite/index.d.ts +4 -1
  281. package/lib/modules/invite/index.js +5 -2
  282. package/lib/modules/invite/store.d.ts +6 -2
  283. package/lib/modules/invite/store.js +49 -10
  284. package/lib/modules/invite/view.d.ts +4 -1
  285. package/lib/modules/invite/view.js +25 -10
  286. package/lib/modules/layout/components/Aside.js +1 -1
  287. package/lib/modules/layout/components/Carousel.js +1 -1
  288. package/lib/modules/layout/components/CommonVideoRenderer.js +14 -4
  289. package/lib/modules/layout/components/Gallery.js +1 -1
  290. package/lib/modules/layout/index.css +0 -31
  291. package/lib/modules/layout/store.base.d.ts +9 -15
  292. package/lib/modules/layout/store.base.js +69 -198
  293. package/lib/modules/layout/store.browser.d.ts +2 -1
  294. package/lib/modules/layout/store.browser.js +62 -2
  295. package/lib/modules/layout/store.electron.d.ts +1 -3
  296. package/lib/modules/layout/store.electron.js +10 -28
  297. package/lib/modules/layout/view.js +1 -3
  298. package/lib/modules/live-streaming/index.dev.js +1 -1
  299. package/lib/modules/live-streaming/store.js +3 -4
  300. package/lib/modules/participant/components/confirm-input/index.css +15 -0
  301. package/lib/modules/participant/components/confirm-input/index.js +10 -13
  302. package/lib/modules/participant/components/mute-all/index.css +34 -0
  303. package/lib/modules/participant/components/mute-all/index.d.ts +1 -0
  304. package/lib/modules/participant/components/mute-all/index.js +21 -15
  305. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.js +16 -2
  306. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/util.d.ts +2 -1
  307. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/util.js +3 -1
  308. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/microphone-indicator/index.js +3 -2
  309. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.js +1 -1
  310. package/lib/modules/participant/index.css +0 -16
  311. package/lib/modules/participant/store.base.d.ts +18 -5
  312. package/lib/modules/participant/store.base.js +219 -127
  313. package/lib/modules/participant/store.browser.d.ts +2 -1
  314. package/lib/modules/participant/store.browser.js +2 -2
  315. package/lib/modules/participant/store.electron.d.ts +2 -1
  316. package/lib/modules/participant/store.electron.js +2 -2
  317. package/lib/modules/pc-audio-connect/main-scene/index.d.ts +0 -1
  318. package/lib/modules/pc-audio-connect/main-scene/index.js +2 -4
  319. package/lib/modules/pc-audio-connect/main-scene/store.d.ts +0 -3
  320. package/lib/modules/pc-audio-connect/main-scene/store.js +7 -43
  321. package/lib/modules/pc-audio-connect/waiting-scene/index.js +6 -1
  322. package/lib/modules/phone-audio-connect/store.js +1 -1
  323. package/lib/modules/phone-audio-connect/view.js +1 -1
  324. package/lib/modules/secondary-window/index.d.ts +14 -7
  325. package/lib/modules/secondary-window/index.js +51 -25
  326. package/lib/modules/secondary-window/store.d.ts +4 -2
  327. package/lib/modules/secondary-window/store.js +39 -8
  328. package/lib/modules/secondary-window/type.d.ts +16 -25
  329. package/lib/modules/secondary-window/type.js +1 -0
  330. package/lib/modules/secondary-window/view.js +59 -58
  331. package/lib/modules/setting/audio-settings/audio-settings.js +2 -2
  332. package/lib/modules/setting/audio-whiteList/audio-device-adaptation.js +2 -2
  333. package/lib/modules/setting/audio-whiteList/audio-whiteList-manager.js +1 -1
  334. package/lib/modules/setting/caption_and_transcribing/index.js +1 -1
  335. package/lib/modules/setting/general-settings/general-settings.js +4 -4
  336. package/lib/modules/setting/index.css +2 -3
  337. package/lib/modules/setting/index.d.ts +1 -2
  338. package/lib/modules/setting/index.js +3 -10
  339. package/lib/modules/setting/minutes-settings/minutes-settings.js +1 -1
  340. package/lib/modules/setting/state/index.js +1 -1
  341. package/lib/modules/setting/storage-settings/storage-settings.js +1 -1
  342. package/lib/modules/setting/store.base.d.ts +11 -9
  343. package/lib/modules/setting/store.base.js +103 -88
  344. package/lib/modules/setting/store.electron.d.ts +2 -1
  345. package/lib/modules/setting/store.electron.js +19 -1
  346. package/lib/modules/setting/translate-settings/translate-settings.js +1 -1
  347. package/lib/modules/setting/type.d.ts +1 -9
  348. package/lib/modules/setting/video-settings/video-settings-basic.js +1 -1
  349. package/lib/modules/setting/video-settings/video-settings.js +11 -7
  350. package/lib/modules/setting/view.js +1 -1
  351. package/lib/modules/share-screen/components/control-bar/index.js +0 -86
  352. package/lib/modules/share-screen/components/selection/index.js +3 -1
  353. package/lib/modules/share-screen/store.base.d.ts +1 -1
  354. package/lib/modules/share-screen/store.base.js +10 -14
  355. package/lib/modules/share-screen/store.electron.d.ts +4 -0
  356. package/lib/modules/share-screen/store.electron.js +108 -34
  357. package/lib/modules/state-bar/layout-config.js +1 -1
  358. package/lib/modules/state-bar/live-streaming-state.js +6 -7
  359. package/lib/modules/state-bar/main-scene/store.browser.js +1 -1
  360. package/lib/modules/state-bar/main-scene/store.electron.js +1 -1
  361. package/lib/modules/state-bar/meeting-details.js +14 -21
  362. package/lib/modules/state-bar/meeting-network-state.css +5 -1
  363. package/lib/modules/state-bar/meeting-network-state.js +7 -1
  364. package/lib/modules/state-bar/meeting-time.js +1 -1
  365. package/lib/modules/state-bar/network-quality.js +1 -1
  366. package/lib/modules/state-bar/recording.js +1 -1
  367. package/lib/modules/state-bar/store.base.d.ts +3 -3
  368. package/lib/modules/state-bar/store.base.js +15 -24
  369. package/lib/modules/state-bar/view.js +6 -7
  370. package/lib/modules/subtitles-history/components/list-item.js +6 -1
  371. package/lib/modules/subtitles-history/index.css +2 -5
  372. package/lib/modules/subtitles-history/store.base.js +24 -12
  373. package/lib/modules/subtitles-history/store.electron.js +8 -2
  374. package/lib/modules/subtitles-history/view.js +7 -5
  375. package/lib/modules/toast-manager/index.d.ts +8 -0
  376. package/lib/modules/toast-manager/index.js +58 -0
  377. package/lib/modules/toast-manager/store.d.ts +28 -0
  378. package/lib/modules/toast-manager/store.js +391 -0
  379. package/lib/modules/toast-manager/toast-params.d.ts +7 -0
  380. package/lib/modules/toast-manager/toast-params.js +89 -0
  381. package/lib/modules/toast-manager/type.d.ts +112 -0
  382. package/lib/modules/toast-manager/type.js +337 -0
  383. package/lib/modules/video-window/store.d.ts +2 -2
  384. package/lib/modules/video-window/store.js +28 -50
  385. package/lib/modules/whiteboard/components/control-bar/store.d.ts +0 -1
  386. package/lib/modules/whiteboard/components/control-bar/store.js +0 -6
  387. package/lib/modules/whiteboard/components/toolbar/store.d.ts +1 -0
  388. package/lib/modules/whiteboard/components/toolbar/store.js +25 -14
  389. package/lib/modules/whiteboard/store.js +10 -9
  390. package/lib/modules/whiteboard/view.js +0 -1
  391. package/lib/modules/widget/store.electron.d.ts +0 -4
  392. package/lib/modules/widget/store.electron.js +4 -39
  393. package/lib/modules/widget/view.js +1 -1
  394. package/lib/modules/widget/web-widget.d.ts +1 -1
  395. package/lib/object-manager.d.ts +2 -0
  396. package/lib/object-manager.js +2 -0
  397. package/lib/plugins/multi-lang-plugin.js +1 -1
  398. package/lib/providers/ability-provider.d.ts +33 -1
  399. package/lib/providers/ability-provider.js +29 -1
  400. package/lib/providers/annotation/provider.base.d.ts +39 -0
  401. package/lib/providers/annotation/provider.base.js +270 -0
  402. package/lib/providers/annotation/provider.browser.d.ts +3 -0
  403. package/lib/providers/annotation/provider.browser.js +25 -0
  404. package/lib/providers/annotation/provider.electron.d.ts +34 -0
  405. package/lib/providers/annotation/provider.electron.js +231 -0
  406. package/lib/providers/annotation/standalone-toolbar-control/index.d.ts +26 -0
  407. package/lib/{fragments/annotation/toolbar/store.js → providers/annotation/standalone-toolbar-control/index.js} +103 -175
  408. package/lib/providers/annotation/toolbar-control/index.d.ts +31 -0
  409. package/lib/providers/annotation/toolbar-control/index.js +205 -0
  410. package/lib/providers/annotation/type.d.ts +64 -21
  411. package/lib/providers/app-list-provider.d.ts +4 -1
  412. package/lib/providers/app-list-provider.js +13 -7
  413. package/lib/providers/board-share/bar-control/base.d.ts +6 -8
  414. package/lib/providers/board-share/bar-control/base.js +7 -36
  415. package/lib/providers/board-share/bar-control/browser.d.ts +4 -1
  416. package/lib/providers/board-share/bar-control/browser.js +76 -3
  417. package/lib/providers/board-share/bar-control/electron.d.ts +4 -6
  418. package/lib/providers/board-share/bar-control/electron.js +36 -12
  419. package/lib/providers/board-share/provider.base.d.ts +11 -8
  420. package/lib/providers/board-share/provider.base.js +72 -13
  421. package/lib/providers/board-share/type.d.ts +11 -12
  422. package/lib/providers/device-privilege-provider.d.ts +5 -4
  423. package/lib/providers/device-privilege-provider.js +85 -62
  424. package/lib/providers/device-provider.d.ts +32 -1
  425. package/lib/providers/device-provider.js +412 -161
  426. package/lib/providers/device-stream-provider.d.ts +3 -3
  427. package/lib/providers/device-stream-provider.js +37 -111
  428. package/lib/providers/dialog/provider.electron.js +6 -1
  429. package/lib/providers/interpreter-provider.js +5 -5
  430. package/lib/providers/message/provider.d.ts +3 -1
  431. package/lib/providers/message/provider.js +12 -0
  432. package/lib/providers/message/type.d.ts +15 -0
  433. package/lib/providers/mouse-detect/provider.js +2 -2
  434. package/lib/providers/mouse-detect/struct.d.ts +2 -1
  435. package/lib/providers/mouse-detect/struct.js +1 -0
  436. package/lib/providers/multi-display-provider.d.ts +1 -0
  437. package/lib/providers/multi-display-provider.js +13 -0
  438. package/lib/providers/phone-audio-provider.d.ts +15 -0
  439. package/lib/providers/phone-audio-provider.js +17 -10
  440. package/lib/providers/privilege-provider.d.ts +15 -15
  441. package/lib/providers/room-provider/room-provider.d.ts +23 -11
  442. package/lib/providers/room-provider/room-provider.js +93 -199
  443. package/lib/providers/room-provider/waiting-room-control-manager.d.ts +2 -2
  444. package/lib/providers/room-provider/waiting-room-control-manager.js +2 -2
  445. package/lib/providers/screen-share/provider.base.d.ts +1 -0
  446. package/lib/providers/screen-share/provider.base.js +6 -1
  447. package/lib/providers/screen-share/provider.browser.js +13 -9
  448. package/lib/providers/screen-share/provider.electron.d.ts +1 -1
  449. package/lib/providers/screen-share/provider.electron.js +54 -44
  450. package/lib/providers/screen-share/strategy/electron.js +18 -3
  451. package/lib/providers/screen-share/stream-state-sync.d.ts +1 -1
  452. package/lib/providers/screen-share/stream-state-sync.js +4 -4
  453. package/lib/providers/screen-share/type.d.ts +9 -1
  454. package/lib/providers/session-provider.d.ts +1 -1
  455. package/lib/providers/stt-provider/stt-provider.d.ts +1 -1
  456. package/lib/providers/stt-provider/stt-provider.js +40 -77
  457. package/lib/providers/stt-provider/type.d.ts +5 -3
  458. package/lib/providers/stt-provider/type.js +4 -2
  459. package/lib/providers/user-audio-volume-provider.d.ts +47 -0
  460. package/lib/providers/user-audio-volume-provider.js +319 -0
  461. package/lib/providers/window/provider.d.ts +1 -1
  462. package/lib/providers/window/provider.js +23 -12
  463. package/lib/providers/window/renderer-window.d.ts +8 -2
  464. package/lib/providers/window/renderer-window.js +118 -33
  465. package/lib/providers/window/type.d.ts +1 -3
  466. package/lib/runtime.d.ts +12 -13
  467. package/lib/scenes/main-scene.js +101 -71
  468. package/lib/scenes/waiting-scene.js +4 -4
  469. package/lib/shared-data/member-data.d.ts +0 -9
  470. package/lib/shared-data/member-data.js +35 -61
  471. package/lib/shared-data/pin-data.d.ts +3 -2
  472. package/lib/shared-data/pin-data.js +8 -11
  473. package/lib/shared-data/setting.js +1 -1
  474. package/lib/shared-data/user-audio-volume.d.ts +19 -0
  475. package/lib/shared-data/user-audio-volume.js +104 -0
  476. package/lib/shared-data/video-window.js +49 -60
  477. package/lib/translations/enUS.d.ts +10 -0
  478. package/lib/translations/enUS.js +13 -3
  479. package/lib/translations/zhCN.d.ts +10 -0
  480. package/lib/translations/zhCN.js +12 -2
  481. package/lib/type.d.ts +27 -19
  482. package/lib/type.js +20 -2
  483. package/lib/ui-manager.js +1 -1
  484. package/lib/ui-scene-switch.d.ts +1 -0
  485. package/lib/ui-scene-switch.js +197 -87
  486. package/lib/utilities/browser-api.d.ts +0 -1
  487. package/lib/utilities/browser-api.js +0 -42
  488. package/lib/utilities/constant.d.ts +4 -4
  489. package/lib/utilities/constant.js +4 -5
  490. package/lib/utilities/default-config.d.ts +2 -8
  491. package/lib/utilities/default-config.js +8 -48
  492. package/lib/utilities/dialog-utils.js +1 -2
  493. package/lib/utilities/focus-helper.js +2 -2
  494. package/lib/utilities/logger.d.ts +1 -2
  495. package/lib/utilities/logger.js +12 -40
  496. package/lib/utilities/package-info.d.ts +1 -2
  497. package/lib/utilities/package-info.js +5 -6
  498. package/lib/utilities/renderer.d.ts +1 -0
  499. package/lib/utilities/renderer.js +7 -1
  500. package/lib/utilities/shared-storage.d.ts +2 -3
  501. package/lib/utilities/shared-storage.js +15 -11
  502. package/lib/utilities/tools.d.ts +1 -44
  503. package/lib/utilities/tools.js +28 -193
  504. package/lib/utilities/validate-params.js +3 -5
  505. package/lib-es/assets/mic-loading.gif +0 -0
  506. package/lib-es/base.js +335 -0
  507. package/lib-es/creator/index.js +559 -0
  508. package/lib-es/creator/provider-initializer.browser.js +347 -0
  509. package/lib-es/creator/provider-initializer.electron.js +382 -0
  510. package/lib-es/creator/type.js +1 -0
  511. package/lib-es/electron/app.js +264 -0
  512. package/lib-es/electron/asar-validation.js +110 -0
  513. package/lib-es/electron/bootstrap-dev.js +45 -0
  514. package/lib-es/electron/bootstrap-sdk.js +198 -0
  515. package/lib-es/electron/default-options.js +18 -0
  516. package/lib-es/electron/env.js +8 -0
  517. package/lib-es/electron/exit-codes.js +20 -0
  518. package/lib-es/electron/hang-detection/index.js +2 -0
  519. package/lib-es/electron/hang-detection/manager.js +225 -0
  520. package/lib-es/electron/hang-detection/types.js +1 -0
  521. package/lib-es/electron/index.js +2 -0
  522. package/lib-es/electron/injections.js +835 -0
  523. package/lib-es/electron/ipc/ipc.js +134 -0
  524. package/lib-es/electron/ipc/type.js +23 -0
  525. package/lib-es/electron/ipc-protocol.js +58 -0
  526. package/lib-es/electron/logger.js +57 -0
  527. package/lib-es/electron/main.js +117 -0
  528. package/lib-es/electron/plugins/devtool-shortcut.js +26 -0
  529. package/lib-es/electron/plugins/main-window-display.js +16 -0
  530. package/lib-es/electron/plugins/meeting-state.js +32 -0
  531. package/lib-es/electron/plugins/screenshot.js +46 -0
  532. package/lib-es/electron/preload.js +43 -0
  533. package/lib-es/electron/process-manager/constants.js +1 -0
  534. package/lib-es/electron/process-manager/event-manager.js +242 -0
  535. package/lib-es/electron/process-manager/index.js +879 -0
  536. package/lib-es/electron/process-manager/state-manager.js +396 -0
  537. package/lib-es/electron/process-manager/types.js +78 -0
  538. package/lib-es/electron/sdk-helper.js +309 -0
  539. package/lib-es/electron/struct.js +21 -0
  540. package/lib-es/electron/until.js +64 -0
  541. package/lib-es/electron/window-proxy/browser-window-proxy-factory.js +38 -0
  542. package/lib-es/electron/window-proxy/implementations/browser-window-proxy.js +328 -0
  543. package/lib-es/electron/window-proxy/implementations/electron-event-broadcaster.js +24 -0
  544. package/lib-es/electron/window-proxy/implementations/electron-ipc-handler.js +19 -0
  545. package/lib-es/electron/window-proxy/implementations/electron-logger.js +26 -0
  546. package/lib-es/electron/window-proxy/implementations/main-process-handler.js +438 -0
  547. package/lib-es/electron/window-proxy/interfaces.js +1 -0
  548. package/lib-es/electron/window.js +91 -0
  549. package/lib-es/fragments/annotation/cursor.css +77 -0
  550. package/lib-es/fragments/annotation/index.js +52 -0
  551. package/lib-es/fragments/annotation/libs.js +135 -0
  552. package/lib-es/fragments/annotation/store.js +476 -0
  553. package/lib-es/fragments/annotation/style.css +8 -0
  554. package/lib-es/fragments/annotation/view.js +20 -0
  555. package/lib-es/fragments/base.js +40 -0
  556. package/lib-es/fragments/whiteboard/cursor.css +77 -0
  557. package/lib-es/fragments/whiteboard/index.js +80 -0
  558. package/lib-es/fragments/whiteboard/libs.js +147 -0
  559. package/lib-es/fragments/whiteboard/store.js +423 -0
  560. package/lib-es/fragments/whiteboard/style.css +4 -0
  561. package/lib-es/fragments/whiteboard/view.js +24 -0
  562. package/lib-es/global.css +62 -0
  563. package/lib-es/global.d.ts +27 -0
  564. package/lib-es/hooks/i18n.js +10 -0
  565. package/lib-es/index.js +38 -0
  566. package/lib-es/modules/action-bar/components/apps/index.js +43 -0
  567. package/lib-es/modules/action-bar/components/board/index.js +25 -0
  568. package/lib-es/modules/action-bar/components/breakout-room/index.js +23 -0
  569. package/lib-es/modules/action-bar/components/chat/index.css +88 -0
  570. package/lib-es/modules/action-bar/components/chat/index.js +126 -0
  571. package/lib-es/modules/action-bar/components/collapse/index.js +208 -0
  572. package/lib-es/modules/action-bar/components/confirm-end-meeting/index.js +51 -0
  573. package/lib-es/modules/action-bar/components/interpreter/index.js +34 -0
  574. package/lib-es/modules/action-bar/components/item/index.js +158 -0
  575. package/lib-es/modules/action-bar/components/leave/index.js +118 -0
  576. package/lib-es/modules/action-bar/components/live-streaming/index.js +32 -0
  577. package/lib-es/modules/action-bar/components/more/index.css +114 -0
  578. package/lib-es/modules/action-bar/components/more/index.js +79 -0
  579. package/lib-es/modules/action-bar/components/more/poppover-content.js +410 -0
  580. package/lib-es/modules/action-bar/components/notification-bar/assets/dome.png +0 -0
  581. package/lib-es/modules/action-bar/components/notification-bar/assets/fcr_translateswitch.png +0 -0
  582. package/lib-es/modules/action-bar/components/notification-bar/components/interpreter/index.css +64 -0
  583. package/lib-es/modules/action-bar/components/notification-bar/components/interpreter/index.js +117 -0
  584. package/lib-es/modules/action-bar/components/notification-bar/components/virtual-image/index.css +56 -0
  585. package/lib-es/modules/action-bar/components/notification-bar/components/virtual-image/index.js +29 -0
  586. package/lib-es/modules/action-bar/components/notification-bar/index.css +74 -0
  587. package/lib-es/modules/action-bar/components/notification-bar/index.js +38 -0
  588. package/lib-es/modules/action-bar/components/participants/index.css +21 -0
  589. package/lib-es/modules/action-bar/components/participants/index.js +52 -0
  590. package/lib-es/modules/action-bar/components/placement/index.js +10 -0
  591. package/lib-es/modules/action-bar/components/record/index.css +39 -0
  592. package/lib-es/modules/action-bar/components/record/index.js +89 -0
  593. package/lib-es/modules/action-bar/components/record/popover.js +50 -0
  594. package/lib-es/modules/action-bar/components/record/stop-record-dialog.js +41 -0
  595. package/lib-es/modules/action-bar/components/respond/index.js +25 -0
  596. package/lib-es/modules/action-bar/components/screen-share/index.browser.js +61 -0
  597. package/lib-es/modules/action-bar/components/screen-share/index.electron.js +78 -0
  598. package/lib-es/modules/action-bar/components/screen-share/index.js +4 -0
  599. package/lib-es/modules/action-bar/components/screen-share/submenu.js +256 -0
  600. package/lib-es/modules/action-bar/components/security/index.js +42 -0
  601. package/lib-es/modules/action-bar/components/settings/index.js +29 -0
  602. package/lib-es/modules/action-bar/components/smaller/index.js +45 -0
  603. package/lib-es/modules/action-bar/components/trigger-output-language/fcr_translateswitch.png +0 -0
  604. package/lib-es/modules/action-bar/components/trigger-output-language/index.css +86 -0
  605. package/lib-es/modules/action-bar/components/trigger-output-language/index.js +228 -0
  606. package/lib-es/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.css +23 -0
  607. package/lib-es/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.js +65 -0
  608. package/lib-es/modules/action-bar/components/trigger-subscribe-language/index.js +216 -0
  609. package/lib-es/modules/action-bar/constants.js +1 -0
  610. package/lib-es/modules/action-bar/enums.js +28 -0
  611. package/lib-es/modules/action-bar/index.css +358 -0
  612. package/lib-es/modules/action-bar/main-scene/index.js +123 -0
  613. package/lib-es/modules/action-bar/main-scene/store.base.js +1557 -0
  614. package/lib-es/modules/action-bar/main-scene/store.browser.js +105 -0
  615. package/lib-es/modules/action-bar/main-scene/store.electron.js +94 -0
  616. package/lib-es/modules/action-bar/main-scene/view.js +105 -0
  617. package/lib-es/modules/action-bar/type.js +21 -0
  618. package/lib-es/modules/action-bar/waiting-scene/index.js +94 -0
  619. package/lib-es/modules/action-bar/waiting-scene/store.base.js +88 -0
  620. package/lib-es/modules/action-bar/waiting-scene/store.browser.js +17 -0
  621. package/lib-es/modules/action-bar/waiting-scene/store.electron.js +37 -0
  622. package/lib-es/modules/action-bar/waiting-scene/view.js +116 -0
  623. package/lib-es/modules/annotation/board-cursor.css +77 -0
  624. package/lib-es/modules/annotation/components/color-picker/components/color.js +29 -0
  625. package/lib-es/modules/annotation/components/color-picker/components/panel.js +100 -0
  626. package/lib-es/modules/annotation/components/color-picker/components/picker.js +67 -0
  627. package/lib-es/modules/annotation/components/color-picker/index.js +38 -0
  628. package/lib-es/modules/annotation/components/eraser-picker.js +134 -0
  629. package/lib-es/modules/annotation/components/expansion/index.js +85 -0
  630. package/lib-es/modules/annotation/components/extra-tool-picker.js +46 -0
  631. package/lib-es/modules/annotation/components/history.js +68 -0
  632. package/lib-es/modules/annotation/components/icons/fold-icon.js +33 -0
  633. package/lib-es/modules/annotation/components/icons/move-icon.js +59 -0
  634. package/lib-es/modules/annotation/components/item/index.js +35 -0
  635. package/lib-es/modules/annotation/components/move-handle.js +127 -0
  636. package/lib-es/modules/annotation/components/pen-picker.js +142 -0
  637. package/lib-es/modules/annotation/components/screen-capture-picker.js +77 -0
  638. package/lib-es/modules/annotation/components/shape-picker.js +193 -0
  639. package/lib-es/modules/annotation/hooks/index.js +156 -0
  640. package/lib-es/modules/annotation/index.js +144 -0
  641. package/lib-es/modules/annotation/standalone-toolbar/components/color-tool/color-panel/index.js +40 -0
  642. package/lib-es/modules/annotation/standalone-toolbar/components/color-tool/index.js +61 -0
  643. package/lib-es/modules/annotation/standalone-toolbar/components/graphic-tool/graphic-panel/index.js +54 -0
  644. package/lib-es/modules/annotation/standalone-toolbar/components/graphic-tool/graphic-panel/libs.js +57 -0
  645. package/lib-es/modules/annotation/standalone-toolbar/components/graphic-tool/index.js +75 -0
  646. package/lib-es/modules/annotation/standalone-toolbar/components/item/item.js +106 -0
  647. package/lib-es/modules/annotation/standalone-toolbar/components/panel/index.js +15 -0
  648. package/lib-es/modules/annotation/standalone-toolbar/components/pen-tool/index.js +67 -0
  649. package/lib-es/modules/annotation/standalone-toolbar/components/pen-tool/pen-panel/index.js +28 -0
  650. package/lib-es/modules/annotation/standalone-toolbar/components/permission-tool/index.js +44 -0
  651. package/lib-es/modules/annotation/standalone-toolbar/components/tips/index.js +18 -0
  652. package/lib-es/modules/annotation/standalone-toolbar/store.js +611 -0
  653. package/{lib/fragments/annotation/toolbar → lib-es/modules/annotation/standalone-toolbar}/style.css +4 -1
  654. package/lib-es/modules/annotation/standalone-toolbar/view.js +186 -0
  655. package/lib-es/modules/annotation/store.base.js +178 -0
  656. package/lib-es/modules/annotation/store.browser.js +17 -0
  657. package/lib-es/modules/annotation/store.electron.js +67 -0
  658. package/lib-es/modules/annotation/style.css +36 -0
  659. package/lib-es/modules/annotation/toolbar-store.js +466 -0
  660. package/lib-es/modules/annotation/type.js +1 -0
  661. package/lib-es/modules/annotation/view.js +99 -0
  662. package/lib-es/modules/audio-stream/index.js +393 -0
  663. package/lib-es/modules/caption/draggable-container/index.css +10 -0
  664. package/lib-es/modules/caption/draggable-container/index.js +159 -0
  665. package/lib-es/modules/caption/index.js +117 -0
  666. package/lib-es/modules/caption/store.js +352 -0
  667. package/lib-es/modules/caption/type.js +7 -0
  668. package/lib-es/modules/caption/view.css +158 -0
  669. package/lib-es/modules/caption/view.js +266 -0
  670. package/lib-es/modules/chat/chat-room-store.js +1003 -0
  671. package/lib-es/modules/chat/components/chat-action/index.js +21 -0
  672. package/lib-es/modules/chat/components/chat-bar/index.css +89 -0
  673. package/lib-es/modules/chat/components/chat-bar/index.js +141 -0
  674. package/lib-es/modules/chat/components/chat-select/index.css +185 -0
  675. package/lib-es/modules/chat/components/chat-select/index.js +100 -0
  676. package/lib-es/modules/chat/components/chat-select/select-input/index.js +27 -0
  677. package/lib-es/modules/chat/components/chat-select/select-item/index.js +150 -0
  678. package/lib-es/modules/chat/components/chat-tabs/index.js +53 -0
  679. package/lib-es/modules/chat/components/message-list/chat-empty/index.js +18 -0
  680. package/lib-es/modules/chat/components/message-list/history-unread-message-button/index.js +48 -0
  681. package/lib-es/modules/chat/components/message-list/index.js +361 -0
  682. package/lib-es/modules/chat/components/message-list/message-item/index.js +365 -0
  683. package/lib-es/modules/chat/components/message-list/scroll-bottom-button/index.js +58 -0
  684. package/lib-es/modules/chat/index.css +116 -0
  685. package/lib-es/modules/chat/index.dev.js +71 -0
  686. package/lib-es/modules/chat/index.js +168 -0
  687. package/lib-es/modules/chat/mock.js +276 -0
  688. package/lib-es/modules/chat/store.js +361 -0
  689. package/lib-es/modules/chat/types.js +12 -0
  690. package/lib-es/modules/chat/util.js +63 -0
  691. package/lib-es/modules/chat/view.js +307 -0
  692. package/lib-es/modules/components/annotation-menu/index.js +99 -0
  693. package/lib-es/modules/components/apps/app-item/index.css +49 -0
  694. package/lib-es/modules/components/apps/app-item/index.js +130 -0
  695. package/lib-es/modules/components/apps/app-list.js +49 -0
  696. package/lib-es/modules/components/apps/index.css +10 -0
  697. package/lib-es/modules/components/apps/types.js +1 -0
  698. package/lib-es/modules/components/caption-menu/index.css +58 -0
  699. package/lib-es/modules/components/caption-menu/index.js +108 -0
  700. package/lib-es/modules/components/caption-menu/participants-privilege-control-options.js +65 -0
  701. package/lib-es/modules/components/caption-menu/steps/index.css +73 -0
  702. package/lib-es/modules/components/caption-menu/steps/index.js +49 -0
  703. package/lib-es/modules/components/caption-menu/translation-setting-options.js +180 -0
  704. package/lib-es/modules/components/confirm-wrapper/index.css +48 -0
  705. package/lib-es/modules/components/confirm-wrapper/index.js +80 -0
  706. package/lib-es/modules/components/control-bar/components/loading/index.css +76 -0
  707. package/lib-es/modules/components/control-bar/components/loading/index.js +56 -0
  708. package/lib-es/modules/components/control-bar/components/loading/loading.png +0 -0
  709. package/lib-es/modules/components/control-bar/components/progress/index.js +36 -0
  710. package/lib-es/modules/components/control-bar/components/progress/style.css +51 -0
  711. package/lib-es/modules/components/control-bar/components/switch-theme/index.css +101 -0
  712. package/lib-es/modules/components/control-bar/components/switch-theme/index.js +86 -0
  713. package/lib-es/modules/components/control-bar/components/switch-theme/item.js +46 -0
  714. package/lib-es/modules/components/control-bar/components/switch-theme/libs.js +24 -0
  715. package/lib-es/modules/components/control-bar/index.css +99 -0
  716. package/lib-es/modules/components/control-bar/index.js +507 -0
  717. package/lib-es/modules/components/device-control/components/audio-menu/index.js +168 -0
  718. package/lib-es/modules/components/device-control/components/carmera/index.js +108 -0
  719. package/lib-es/modules/components/device-control/components/microphone/index.js +182 -0
  720. package/lib-es/modules/components/device-control/components/none-menu/index.js +61 -0
  721. package/lib-es/modules/components/device-control/components/phone-menu/index.js +54 -0
  722. package/lib-es/modules/components/device-control/components/video-menu/index.js +107 -0
  723. package/lib-es/modules/components/device-control/hooks/index.js +34 -0
  724. package/lib-es/modules/components/device-control/index.css +177 -0
  725. package/lib-es/modules/components/device-control/index.js +14 -0
  726. package/lib-es/modules/components/device-control/main-scene/store.js +88 -0
  727. package/lib-es/modules/components/device-control/store.base.js +258 -0
  728. package/lib-es/modules/components/device-control/type.js +1 -0
  729. package/lib-es/modules/components/device-control/waiting-scene/store.js +84 -0
  730. package/lib-es/modules/components/leave-meeting/components/assign-host.js +101 -0
  731. package/lib-es/modules/components/leave-meeting/components/index.css +151 -0
  732. package/lib-es/modules/components/leave-meeting/index.css +21 -0
  733. package/lib-es/modules/components/leave-meeting/index.js +109 -0
  734. package/lib-es/modules/components/leave-meeting/main-scene/store.js +107 -0
  735. package/lib-es/modules/components/leave-meeting/portal.js +20 -0
  736. package/lib-es/modules/components/leave-meeting/store.base.js +293 -0
  737. package/lib-es/modules/components/leave-meeting/style.css +8 -0
  738. package/lib-es/modules/components/leave-meeting/type.js +1 -0
  739. package/lib-es/modules/components/leave-meeting/waiting-scene/store.js +98 -0
  740. package/lib-es/modules/components/member-window/components/member-actions/components/audio-control.js +35 -0
  741. package/lib-es/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +162 -0
  742. package/lib-es/modules/components/member-window/components/member-actions/components/icon-status.js +80 -0
  743. package/lib-es/modules/components/member-window/components/member-actions/components/layout/index.js +23 -0
  744. package/lib-es/modules/components/member-window/components/member-actions/components/more-actions.js +129 -0
  745. package/lib-es/modules/components/member-window/components/member-actions/components/share-status.js +34 -0
  746. package/lib-es/modules/components/member-window/components/member-actions/components/user-info.js +105 -0
  747. package/lib-es/modules/components/member-window/components/member-actions/components/user-tag.js +51 -0
  748. package/lib-es/modules/components/member-window/components/member-actions/index.js +98 -0
  749. package/lib-es/modules/components/member-window/components/member-actions/libs/index.js +14 -0
  750. package/lib-es/modules/components/member-window/components/member-actions/provider.js +70 -0
  751. package/lib-es/modules/components/member-window/components/member-actions/store.js +430 -0
  752. package/lib-es/modules/components/member-window/components/mic-volume.js +16 -0
  753. package/lib-es/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +104 -0
  754. package/lib-es/modules/components/member-window/components/video-player/components/local-video-player.js +1 -0
  755. package/lib-es/modules/components/member-window/components/video-player/components/remote-video-player-with-zoom.js +60 -0
  756. package/lib-es/modules/components/member-window/components/video-player/components/remote-video-player.js +1 -0
  757. package/lib-es/modules/components/member-window/components/video-player/components/zoomable-container.js +223 -0
  758. package/lib-es/modules/components/member-window/components/video-player/index.js +37 -0
  759. package/lib-es/modules/components/member-window/index.css +502 -0
  760. package/lib-es/modules/components/member-window/index.js +179 -0
  761. package/lib-es/modules/components/member-window/types.js +1 -0
  762. package/lib-es/modules/components/security-menu/index.css +42 -0
  763. package/lib-es/modules/components/security-menu/index.js +472 -0
  764. package/lib-es/modules/components/security-menu/store.js +386 -0
  765. package/lib-es/modules/components/security-menu/type.js +1 -0
  766. package/lib-es/modules/components/tab-frame/index.css +40 -0
  767. package/lib-es/modules/components/tab-frame/index.js +51 -0
  768. package/lib-es/modules/components/toolbar/components/capture-tool/index.js +58 -0
  769. package/lib-es/modules/components/toolbar/components/clean-tool/index.js +63 -0
  770. package/lib-es/modules/components/toolbar/components/color-tool/color-panel/index.js +70 -0
  771. package/lib-es/modules/components/toolbar/components/color-tool/index.js +58 -0
  772. package/lib-es/modules/components/toolbar/components/graphic-tool/graphic-panel/index.js +57 -0
  773. package/lib-es/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.js +57 -0
  774. package/lib-es/modules/components/toolbar/components/graphic-tool/index.js +72 -0
  775. package/lib-es/modules/components/toolbar/components/group-tool/index.js +35 -0
  776. package/lib-es/modules/components/toolbar/components/icons/fold-icon.js +33 -0
  777. package/lib-es/modules/components/toolbar/components/icons/move-icon.js +59 -0
  778. package/lib-es/modules/components/toolbar/components/item/index.js +157 -0
  779. package/lib-es/modules/components/toolbar/components/item/style.css +94 -0
  780. package/lib-es/modules/components/toolbar/components/multiple-color-tool/index.js +67 -0
  781. package/lib-es/modules/components/toolbar/components/panel/index.js +21 -0
  782. package/lib-es/modules/components/toolbar/components/panel/style.css +86 -0
  783. package/lib-es/modules/components/toolbar/components/pen-tool/index.js +54 -0
  784. package/lib-es/modules/components/toolbar/components/pen-tool/pen-panel/index.js +32 -0
  785. package/lib-es/modules/components/toolbar/components/save-draft/index.js +51 -0
  786. package/lib-es/modules/components/toolbar/components/vertical-frame/index.js +176 -0
  787. package/lib-es/modules/components/toolbar/hooks/use-resize-visible.js +64 -0
  788. package/lib-es/modules/components/toolbar/index.js +235 -0
  789. package/lib-es/modules/components/toolbar/style.css +85 -0
  790. package/lib-es/modules/components/toolbar/types.js +1 -0
  791. package/lib-es/modules/connection-gateway/components/computer/index.css +12 -0
  792. package/lib-es/modules/connection-gateway/components/computer/index.js +59 -0
  793. package/lib-es/modules/connection-gateway/components/phone/components/callinfo/index.css +36 -0
  794. package/lib-es/modules/connection-gateway/components/phone/components/callinfo/index.js +71 -0
  795. package/lib-es/modules/connection-gateway/components/phone/components/calling/index.css +72 -0
  796. package/lib-es/modules/connection-gateway/components/phone/components/calling/index.js +51 -0
  797. package/lib-es/modules/connection-gateway/components/phone/components/remeber/index.css +10 -0
  798. package/lib-es/modules/connection-gateway/components/phone/components/remeber/index.js +17 -0
  799. package/lib-es/modules/connection-gateway/components/phone/components/useing/index.css +46 -0
  800. package/lib-es/modules/connection-gateway/components/phone/components/useing/index.js +29 -0
  801. package/lib-es/modules/connection-gateway/components/phone/index.css +49 -0
  802. package/lib-es/modules/connection-gateway/components/phone/index.js +177 -0
  803. package/lib-es/modules/connection-gateway/enums.js +5 -0
  804. package/lib-es/modules/connection-gateway/index.css +6 -0
  805. package/lib-es/modules/connection-gateway/index.js +60 -0
  806. package/lib-es/modules/connection-gateway/store.js +707 -0
  807. package/lib-es/modules/connection-gateway/types.js +1 -0
  808. package/lib-es/modules/connection-gateway/view.js +31 -0
  809. package/lib-es/modules/control-bar/components/annotation-button/index.js +43 -0
  810. package/lib-es/modules/control-bar/components/apps-popover/index.css +3 -0
  811. package/lib-es/modules/control-bar/components/apps-popover/index.js +36 -0
  812. package/lib-es/modules/control-bar/components/boundary-detector.js +49 -0
  813. package/lib-es/modules/control-bar/components/carmera/index.js +107 -0
  814. package/lib-es/modules/control-bar/components/cloud-recording-buttons.js +109 -0
  815. package/lib-es/modules/control-bar/components/meeting-details/index.css +133 -0
  816. package/lib-es/modules/control-bar/components/meeting-details/index.js +224 -0
  817. package/lib-es/modules/control-bar/components/microphone/index.js +185 -0
  818. package/lib-es/modules/control-bar/components/more-actions/index.css +103 -0
  819. package/lib-es/modules/control-bar/components/more-actions/index.js +158 -0
  820. package/lib-es/modules/control-bar/components/share-audio/index.css +90 -0
  821. package/lib-es/modules/control-bar/components/share-audio/index.js +142 -0
  822. package/lib-es/modules/control-bar/components/share-state-nav/index.css +79 -0
  823. package/lib-es/modules/control-bar/components/share-state-nav/index.js +122 -0
  824. package/lib-es/modules/control-bar/components/stop-live-streaming/index.js +29 -0
  825. package/lib-es/modules/control-bar/components/stop-live-streaming/stop-button.js +28 -0
  826. package/lib-es/modules/control-bar/components/transfer-position-icon/index.js +34 -0
  827. package/lib-es/modules/control-bar/context.js +5 -0
  828. package/lib-es/modules/control-bar/enums.js +27 -0
  829. package/lib-es/modules/control-bar/hooks.js +168 -0
  830. package/lib-es/modules/control-bar/index.css +351 -0
  831. package/lib-es/modules/control-bar/index.dev.js +37 -0
  832. package/lib-es/modules/control-bar/index.js +144 -0
  833. package/lib-es/modules/control-bar/store.js +912 -0
  834. package/lib-es/modules/control-bar/type.js +1 -0
  835. package/lib-es/modules/control-bar/view.js +696 -0
  836. package/lib-es/modules/device-pretest/assets/virtual-backdound-resources.js +14 -0
  837. package/lib-es/modules/device-pretest/audio-preview/microphone-detection.js +58 -0
  838. package/lib-es/modules/device-pretest/audio-preview/speaker-control.js +58 -0
  839. package/lib-es/modules/device-pretest/audio-preview/speaker-detection.js +63 -0
  840. package/lib-es/modules/device-pretest/index.css +123 -0
  841. package/lib-es/modules/device-pretest/index.js +234 -0
  842. package/lib-es/modules/device-pretest/settings/beauty.js +107 -0
  843. package/lib-es/modules/device-pretest/settings/camera-select.js +45 -0
  844. package/lib-es/modules/device-pretest/settings/video-effect.js +58 -0
  845. package/lib-es/modules/device-pretest/settings/video-settings-basic.js +137 -0
  846. package/lib-es/modules/device-pretest/settings/virtual-background-setting.js +94 -0
  847. package/lib-es/modules/device-pretest/store.js +437 -0
  848. package/lib-es/modules/dialog/components/confirm/index.css +6 -0
  849. package/lib-es/modules/dialog/components/confirm/index.js +155 -0
  850. package/lib-es/modules/dialog/components/dialog-container/index.css +111 -0
  851. package/lib-es/modules/dialog/components/dialog-container/index.js +89 -0
  852. package/lib-es/modules/dialog/components/normal-window/index.js +33 -0
  853. package/lib-es/modules/dialog/dialogConfig/browser.js +4 -0
  854. package/lib-es/modules/dialog/dialogConfig/electron.js +8 -0
  855. package/lib-es/modules/dialog/dialogs/annotation-mask/index.js +34 -0
  856. package/lib-es/modules/dialog/dialogs/annotation-tool/index.js +31 -0
  857. package/lib-es/modules/dialog/dialogs/caption/index.js +41 -0
  858. package/lib-es/modules/dialog/dialogs/chat/components/actions.js +36 -0
  859. package/lib-es/modules/dialog/dialogs/chat/index.js +53 -0
  860. package/lib-es/modules/dialog/dialogs/confirm/index.css +13 -0
  861. package/lib-es/modules/dialog/dialogs/confirm/index.js +49 -0
  862. package/lib-es/modules/dialog/dialogs/confirm-leave-meeting/index.js +18 -0
  863. package/lib-es/modules/dialog/dialogs/connection-gateway/index.js +17 -0
  864. package/lib-es/modules/dialog/dialogs/connection-gateway/tabs.js +40 -0
  865. package/lib-es/modules/dialog/dialogs/control-bar/index.js +27 -0
  866. package/lib-es/modules/dialog/dialogs/control-bar-leave-meeting/index.js +15 -0
  867. package/lib-es/modules/dialog/dialogs/device-setting/index.css +26 -0
  868. package/lib-es/modules/dialog/dialogs/device-setting/index.js +20 -0
  869. package/lib-es/modules/dialog/dialogs/end-meeting-notice/index.js +38 -0
  870. package/lib-es/modules/dialog/dialogs/interpreter/index.js +47 -0
  871. package/lib-es/modules/dialog/dialogs/invite/index.js +52 -0
  872. package/lib-es/modules/dialog/dialogs/live-streaming/index.js +26 -0
  873. package/lib-es/modules/dialog/dialogs/mute-all/index.js +26 -0
  874. package/lib-es/modules/dialog/dialogs/participant/components/actions.js +23 -0
  875. package/lib-es/modules/dialog/dialogs/participant/components/title.js +9 -0
  876. package/lib-es/modules/dialog/dialogs/participant/index.js +53 -0
  877. package/lib-es/modules/dialog/dialogs/rename/index.js +32 -0
  878. package/lib-es/modules/dialog/dialogs/sample-dialog/index.js +48 -0
  879. package/lib-es/modules/dialog/dialogs/share-screen-selection/index.js +23 -0
  880. package/lib-es/modules/dialog/dialogs/sub-window/index.js +32 -0
  881. package/lib-es/modules/dialog/dialogs/subtitles-history/index.js +51 -0
  882. package/lib-es/modules/dialog/dialogs/system-preference/assets/bg1.png +0 -0
  883. package/lib-es/modules/dialog/dialogs/system-preference/assets/bg2.png +0 -0
  884. package/lib-es/modules/dialog/dialogs/system-preference/assets/fcr_png_host.png +0 -0
  885. package/lib-es/modules/dialog/dialogs/system-preference/electron.js +31 -0
  886. package/lib-es/modules/dialog/dialogs/system-preference/index.css +53 -0
  887. package/lib-es/modules/dialog/dialogs/system-preference/index.js +130 -0
  888. package/lib-es/modules/dialog/dialogs/toast/index.js +28 -0
  889. package/lib-es/modules/dialog/dialogs/video-window/index.js +55 -0
  890. package/lib-es/modules/dialog/dialogs/whiteboard/index.js +60 -0
  891. package/lib-es/modules/dialog/dialogs/widget/index.js +36 -0
  892. package/lib-es/modules/dialog/hooks/use-web-drag.js +64 -0
  893. package/lib-es/modules/dialog/index.css +49 -0
  894. package/lib-es/modules/dialog/index.js +70 -0
  895. package/lib-es/modules/dialog/level-config.js +12 -0
  896. package/lib-es/modules/dialog/store.base.js +269 -0
  897. package/lib-es/modules/dialog/store.browser.js +135 -0
  898. package/lib-es/modules/dialog/store.electron.js +291 -0
  899. package/lib-es/modules/dialog/type.js +1 -0
  900. package/lib-es/modules/dialog/view.js +52 -0
  901. package/lib-es/modules/dialog/web-dialog-wrapper.js +147 -0
  902. package/lib-es/modules/event-sound/enum.js +13 -0
  903. package/lib-es/modules/event-sound/index.js +49 -0
  904. package/lib-es/modules/event-sound/sound-effect-player.js +49 -0
  905. package/lib-es/modules/event-sound/store.js +275 -0
  906. package/lib-es/modules/event-sound/type.js +1 -0
  907. package/lib-es/modules/event-toast/index.css +28 -0
  908. package/lib-es/modules/event-toast/index.js +82 -0
  909. package/lib-es/modules/event-toast/store.base.js +193 -0
  910. package/lib-es/modules/event-toast/store.browser.js +23 -0
  911. package/lib-es/modules/event-toast/store.electron.js +138 -0
  912. package/lib-es/modules/event-toast/type.js +1 -0
  913. package/lib-es/modules/event-toast/view.js +37 -0
  914. package/lib-es/modules/interpreter/action/add-btn/index.css +4 -0
  915. package/lib-es/modules/interpreter/action/add-btn/index.js +35 -0
  916. package/lib-es/modules/interpreter/action/delete-btn/index.css +14 -0
  917. package/lib-es/modules/interpreter/action/delete-btn/index.js +31 -0
  918. package/lib-es/modules/interpreter/action/edit-btn/index.js +39 -0
  919. package/lib-es/modules/interpreter/action/switch-btn/index.css +3 -0
  920. package/lib-es/modules/interpreter/action/switch-btn/index.js +44 -0
  921. package/lib-es/modules/interpreter/dialog-content/index.css +33 -0
  922. package/lib-es/modules/interpreter/dialog-content/index.js +30 -0
  923. package/lib-es/modules/interpreter/footer/index.css +11 -0
  924. package/lib-es/modules/interpreter/footer/index.js +18 -0
  925. package/lib-es/modules/interpreter/index.css +3 -0
  926. package/lib-es/modules/interpreter/index.js +109 -0
  927. package/lib-es/modules/interpreter/interpreter-list/index.css +8 -0
  928. package/lib-es/modules/interpreter/interpreter-list/index.js +30 -0
  929. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/index.css +46 -0
  930. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +173 -0
  931. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ar.png +0 -0
  932. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_cn.png +0 -0
  933. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_de.png +0 -0
  934. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_en.png +0 -0
  935. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_es.png +0 -0
  936. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_fr.png +0 -0
  937. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_hi.png +0 -0
  938. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_id.png +0 -0
  939. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_it.png +0 -0
  940. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_jp.png +0 -0
  941. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ko.png +0 -0
  942. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ms.png +0 -0
  943. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_pt.png +0 -0
  944. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ru.png +0 -0
  945. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_th.png +0 -0
  946. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_tr.png +0 -0
  947. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_vi.png +0 -0
  948. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.js +169 -0
  949. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.css +46 -0
  950. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +120 -0
  951. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/option-Item.js +51 -0
  952. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/index.css +32 -0
  953. package/lib-es/modules/interpreter/interpreter-list/interpreter-item/index.js +40 -0
  954. package/lib-es/modules/interpreter/loading-wrapper/index.css +53 -0
  955. package/lib-es/modules/interpreter/loading-wrapper/index.js +20 -0
  956. package/lib-es/modules/interpreter/store.js +617 -0
  957. package/lib-es/modules/interpreter/tooltip-wrapper/index.js +23 -0
  958. package/lib-es/modules/interpreter/type.js +5 -0
  959. package/lib-es/modules/interpreter/utils.js +54 -0
  960. package/lib-es/modules/interpreter/view.js +62 -0
  961. package/lib-es/modules/invite/components/error-tips.js +11 -0
  962. package/lib-es/modules/invite/components/pstn-invite.js +245 -0
  963. package/lib-es/modules/invite/components/voip-invite.css +26 -0
  964. package/lib-es/modules/invite/components/voip-invite.js +265 -0
  965. package/lib-es/modules/invite/enums.js +27 -0
  966. package/lib-es/modules/invite/index.css +331 -0
  967. package/lib-es/modules/invite/index.js +64 -0
  968. package/lib-es/modules/invite/store.js +578 -0
  969. package/lib-es/modules/invite/types.js +1 -0
  970. package/lib-es/modules/invite/view.js +46 -0
  971. package/lib-es/modules/layout/components/Aside.js +208 -0
  972. package/lib-es/modules/layout/components/Carousel.js +192 -0
  973. package/lib-es/modules/layout/components/CommonVideoRenderer.js +275 -0
  974. package/lib-es/modules/layout/components/Gallery.js +256 -0
  975. package/lib-es/modules/layout/components/index.css +653 -0
  976. package/lib-es/modules/layout/components/index.js +5 -0
  977. package/lib-es/modules/layout/components/utils.js +3 -0
  978. package/lib-es/modules/layout/components/who-is-speaking.js +49 -0
  979. package/lib-es/modules/layout/index.css +28 -0
  980. package/lib-es/modules/layout/index.dev.js +313 -0
  981. package/lib-es/modules/layout/index.js +74 -0
  982. package/lib-es/modules/layout/store.base.js +1339 -0
  983. package/lib-es/modules/layout/store.browser.js +110 -0
  984. package/lib-es/modules/layout/store.electron.js +157 -0
  985. package/lib-es/modules/layout/type.js +59 -0
  986. package/lib-es/modules/layout/view.js +147 -0
  987. package/lib-es/modules/live-streaming/index.css +0 -0
  988. package/lib-es/modules/live-streaming/index.dev.js +56 -0
  989. package/lib-es/modules/live-streaming/index.js +60 -0
  990. package/lib-es/modules/live-streaming/store.js +245 -0
  991. package/lib-es/modules/live-streaming/type.js +1 -0
  992. package/lib-es/modules/live-streaming/view.js +26 -0
  993. package/lib-es/modules/notification/index.css +77 -0
  994. package/lib-es/modules/notification/index.js +59 -0
  995. package/lib-es/modules/notification/interpreter-status/index.css +76 -0
  996. package/lib-es/modules/notification/interpreter-status/index.js +55 -0
  997. package/lib-es/modules/notification/store.js +122 -0
  998. package/lib-es/modules/notification/type.js +1 -0
  999. package/lib-es/modules/notification/view.js +127 -0
  1000. package/lib-es/modules/offscreen-pulling/index.js +122 -0
  1001. package/lib-es/modules/participant/components/can-moveable/index.js +59 -0
  1002. package/lib-es/modules/participant/components/confirm-input/index.css +19 -0
  1003. package/lib-es/modules/participant/components/confirm-input/index.js +109 -0
  1004. package/lib-es/modules/participant/components/mute-all/index.css +34 -0
  1005. package/lib-es/modules/participant/components/mute-all/index.js +73 -0
  1006. package/lib-es/modules/participant/components/operate-waitingroom-member/index.js +40 -0
  1007. package/lib-es/modules/participant/components/participants/components/footer/components/buttons.js +45 -0
  1008. package/lib-es/modules/participant/components/participants/components/footer/components/drop-menu/index.css +83 -0
  1009. package/lib-es/modules/participant/components/participants/components/footer/components/drop-menu/index.js +170 -0
  1010. package/lib-es/modules/participant/components/participants/components/footer/components/drop-menu/util.js +23 -0
  1011. package/lib-es/modules/participant/components/participants/components/footer/index.js +42 -0
  1012. package/lib-es/modules/participant/components/participants/components/merge/index.js +40 -0
  1013. package/lib-es/modules/participant/components/participants/components/render-tab/index.js +42 -0
  1014. package/lib-es/modules/participant/components/participants/components/render-user/components/attendee/components/interpreter-tag/index.js +40 -0
  1015. package/lib-es/modules/participant/components/participants/components/render-user/components/attendee/components/microphone-indicator/index.js +22 -0
  1016. package/lib-es/modules/participant/components/participants/components/render-user/components/attendee/components/user-avatar/index.js +32 -0
  1017. package/lib-es/modules/participant/components/participants/components/render-user/components/attendee/index.css +87 -0
  1018. package/lib-es/modules/participant/components/participants/components/render-user/components/attendee/index.js +138 -0
  1019. package/lib-es/modules/participant/components/participants/components/render-user/components/user-action/components/audio-button/index.js +25 -0
  1020. package/lib-es/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +70 -0
  1021. package/lib-es/modules/participant/components/participants/components/render-user/components/user-action/components/move-to-mainroom-button/index.js +20 -0
  1022. package/lib-es/modules/participant/components/participants/components/render-user/components/user-action/index.js +70 -0
  1023. package/lib-es/modules/participant/components/participants/components/render-user/index.js +16 -0
  1024. package/lib-es/modules/participant/components/participants/index.js +71 -0
  1025. package/lib-es/modules/participant/index.css +86 -0
  1026. package/lib-es/modules/participant/index.dev.js +87 -0
  1027. package/lib-es/modules/participant/index.js +137 -0
  1028. package/lib-es/modules/participant/member-list-data-source.js +297 -0
  1029. package/lib-es/modules/participant/store.base.js +2446 -0
  1030. package/lib-es/modules/participant/store.browser.js +117 -0
  1031. package/lib-es/modules/participant/store.electron.js +124 -0
  1032. package/lib-es/modules/participant/struct.js +55 -0
  1033. package/lib-es/modules/participant/type.js +7 -0
  1034. package/lib-es/modules/participant/view.js +18 -0
  1035. package/lib-es/modules/pc-audio-connect/index.css +12 -0
  1036. package/lib-es/modules/pc-audio-connect/main-scene/index.js +67 -0
  1037. package/lib-es/modules/pc-audio-connect/main-scene/store.js +313 -0
  1038. package/lib-es/modules/pc-audio-connect/types.js +1 -0
  1039. package/lib-es/modules/pc-audio-connect/view.js +60 -0
  1040. package/lib-es/modules/pc-audio-connect/waiting-scene/index.js +66 -0
  1041. package/lib-es/modules/pc-audio-connect/waiting-scene/store.js +293 -0
  1042. package/lib-es/modules/phone-audio-connect/components/callinfo/index.css +36 -0
  1043. package/lib-es/modules/phone-audio-connect/components/callinfo/index.js +71 -0
  1044. package/lib-es/modules/phone-audio-connect/components/calling/index.css +72 -0
  1045. package/lib-es/modules/phone-audio-connect/components/calling/index.js +51 -0
  1046. package/lib-es/modules/phone-audio-connect/components/remeber/index.css +10 -0
  1047. package/lib-es/modules/phone-audio-connect/components/remeber/index.js +17 -0
  1048. package/lib-es/modules/phone-audio-connect/components/useing/index.css +46 -0
  1049. package/lib-es/modules/phone-audio-connect/components/useing/index.js +29 -0
  1050. package/lib-es/modules/phone-audio-connect/enums.js +5 -0
  1051. package/lib-es/modules/phone-audio-connect/index.css +56 -0
  1052. package/lib-es/modules/phone-audio-connect/index.js +52 -0
  1053. package/lib-es/modules/phone-audio-connect/store.js +317 -0
  1054. package/lib-es/modules/phone-audio-connect/types.js +1 -0
  1055. package/lib-es/modules/phone-audio-connect/view.js +177 -0
  1056. package/lib-es/modules/secondary-window/index.js +173 -0
  1057. package/lib-es/modules/secondary-window/store.js +533 -0
  1058. package/lib-es/modules/secondary-window/type.js +29 -0
  1059. package/lib-es/modules/secondary-window/view.js +282 -0
  1060. package/lib-es/modules/setting/audio-settings/audio-settings.js +292 -0
  1061. package/lib-es/modules/setting/audio-settings/index.css +195 -0
  1062. package/lib-es/modules/setting/audio-whiteList/audio-device-adaptation.js +62 -0
  1063. package/lib-es/modules/setting/audio-whiteList/audio-whiteList-manager.js +368 -0
  1064. package/lib-es/modules/setting/caption_and_transcribing/index.css +88 -0
  1065. package/lib-es/modules/setting/caption_and_transcribing/index.js +89 -0
  1066. package/lib-es/modules/setting/general-settings/general-settings.js +148 -0
  1067. package/lib-es/modules/setting/general-settings/index.css +41 -0
  1068. package/lib-es/modules/setting/index.css +111 -0
  1069. package/lib-es/modules/setting/index.dev.js +120 -0
  1070. package/lib-es/modules/setting/index.js +138 -0
  1071. package/lib-es/modules/setting/minutes-settings/index.css +65 -0
  1072. package/lib-es/modules/setting/minutes-settings/minutes-settings.js +146 -0
  1073. package/lib-es/modules/setting/state/index.css +207 -0
  1074. package/lib-es/modules/setting/state/index.js +322 -0
  1075. package/lib-es/modules/setting/storage-settings/index.css +91 -0
  1076. package/lib-es/modules/setting/storage-settings/storage-settings.js +65 -0
  1077. package/lib-es/modules/setting/store.base.js +1455 -0
  1078. package/lib-es/modules/setting/store.browser.js +43 -0
  1079. package/lib-es/modules/setting/store.electron.js +186 -0
  1080. package/lib-es/modules/setting/translate-settings/index.css +47 -0
  1081. package/lib-es/modules/setting/translate-settings/language-select.js +40 -0
  1082. package/lib-es/modules/setting/translate-settings/translate-settings.js +131 -0
  1083. package/lib-es/modules/setting/type.js +14 -0
  1084. package/lib-es/modules/setting/video-settings/index.css +357 -0
  1085. package/lib-es/modules/setting/video-settings/video-settings-basic.js +131 -0
  1086. package/lib-es/modules/setting/video-settings/video-settings.js +171 -0
  1087. package/lib-es/modules/setting/view.js +147 -0
  1088. package/lib-es/modules/share-screen/components/control-bar/index.css +75 -0
  1089. package/lib-es/modules/share-screen/components/control-bar/index.js +6 -0
  1090. package/lib-es/modules/share-screen/components/control-bar/items/annotation-edit-btn/index.js +38 -0
  1091. package/lib-es/modules/share-screen/components/control-bar/items/full-container-btn/index.js +25 -0
  1092. package/lib-es/modules/share-screen/components/control-bar/items/original-size-btn/index.js +25 -0
  1093. package/lib-es/modules/share-screen/components/control-bar/items/zoom-in-btn/index.js +25 -0
  1094. package/lib-es/modules/share-screen/components/control-bar/items/zoom-out-btn/index.js +25 -0
  1095. package/lib-es/modules/share-screen/components/selection/index.css +73 -0
  1096. package/lib-es/modules/share-screen/components/selection/index.js +222 -0
  1097. package/lib-es/modules/share-screen/components/share-scenario/index.js +40 -0
  1098. package/lib-es/modules/share-screen/components/share-state-bar/index.css +76 -0
  1099. package/lib-es/modules/share-screen/components/share-state-bar/index.js +90 -0
  1100. package/lib-es/modules/share-screen/index.css +0 -0
  1101. package/lib-es/modules/share-screen/index.dev.js +90 -0
  1102. package/lib-es/modules/share-screen/index.js +99 -0
  1103. package/lib-es/modules/share-screen/store.base.js +460 -0
  1104. package/lib-es/modules/share-screen/store.browser.js +36 -0
  1105. package/lib-es/modules/share-screen/store.electron.js +503 -0
  1106. package/lib-es/modules/share-screen/type.js +8 -0
  1107. package/lib-es/modules/share-screen/view.js +24 -0
  1108. package/lib-es/modules/state-bar/assets/fcr_grid_big.svg +3 -0
  1109. package/lib-es/modules/state-bar/assets/fcr_listontop_big.svg +3 -0
  1110. package/lib-es/modules/state-bar/assets/live-streaming.gif +0 -0
  1111. package/lib-es/modules/state-bar/index.css +706 -0
  1112. package/lib-es/modules/state-bar/index.dev.js +78 -0
  1113. package/lib-es/modules/state-bar/index.js +41 -0
  1114. package/lib-es/modules/state-bar/layout-config.js +168 -0
  1115. package/lib-es/modules/state-bar/live-streaming-state.js +168 -0
  1116. package/lib-es/modules/state-bar/main-scene/index.js +39 -0
  1117. package/lib-es/modules/state-bar/main-scene/store.base.js +137 -0
  1118. package/lib-es/modules/state-bar/main-scene/store.browser.js +80 -0
  1119. package/lib-es/modules/state-bar/main-scene/store.electron.js +107 -0
  1120. package/lib-es/modules/state-bar/meeting-detail.css +137 -0
  1121. package/lib-es/modules/state-bar/meeting-details.js +212 -0
  1122. package/lib-es/modules/state-bar/meeting-network-state.css +154 -0
  1123. package/lib-es/modules/state-bar/meeting-network-state.js +113 -0
  1124. package/lib-es/modules/state-bar/meeting-time.js +25 -0
  1125. package/lib-es/modules/state-bar/network-quality.js +26 -0
  1126. package/lib-es/modules/state-bar/recording.js +103 -0
  1127. package/lib-es/modules/state-bar/store.base.electron.js +108 -0
  1128. package/lib-es/modules/state-bar/store.base.js +607 -0
  1129. package/lib-es/modules/state-bar/subtitles-history-state.js +101 -0
  1130. package/lib-es/modules/state-bar/type.js +1 -0
  1131. package/lib-es/modules/state-bar/view.js +240 -0
  1132. package/lib-es/modules/state-bar/waiting-scene/index.js +39 -0
  1133. package/lib-es/modules/state-bar/waiting-scene/store.base.js +48 -0
  1134. package/lib-es/modules/state-bar/waiting-scene/store.browser.js +80 -0
  1135. package/lib-es/modules/state-bar/waiting-scene/store.electron.js +99 -0
  1136. package/lib-es/modules/subtitles-history/components/actions.js +29 -0
  1137. package/lib-es/modules/subtitles-history/components/list-item.js +100 -0
  1138. package/lib-es/modules/subtitles-history/components/list.js +175 -0
  1139. package/lib-es/modules/subtitles-history/components/respond-dialog-content.js +36 -0
  1140. package/lib-es/modules/subtitles-history/components/settings/index.css +5 -0
  1141. package/lib-es/modules/subtitles-history/components/settings/index.js +46 -0
  1142. package/lib-es/modules/subtitles-history/components/timer.js +36 -0
  1143. package/lib-es/modules/subtitles-history/components/title.js +8 -0
  1144. package/lib-es/modules/subtitles-history/empty.js +14 -0
  1145. package/lib-es/modules/subtitles-history/index.css +126 -0
  1146. package/lib-es/modules/subtitles-history/index.js +89 -0
  1147. package/lib-es/modules/subtitles-history/store.base.js +802 -0
  1148. package/lib-es/modules/subtitles-history/store.electron.js +154 -0
  1149. package/lib-es/modules/subtitles-history/type.js +1 -0
  1150. package/lib-es/modules/subtitles-history/view.js +98 -0
  1151. package/lib-es/modules/toast-manager/index.js +50 -0
  1152. package/lib-es/modules/toast-manager/store.js +383 -0
  1153. package/lib-es/modules/toast-manager/toast-params.js +82 -0
  1154. package/lib-es/modules/toast-manager/type.js +329 -0
  1155. package/lib-es/modules/video-window/components/deviceState/index.js +68 -0
  1156. package/lib-es/modules/video-window/components/members/index.css +51 -0
  1157. package/lib-es/modules/video-window/components/members/index.js +116 -0
  1158. package/lib-es/modules/video-window/components/speaking/index.css +86 -0
  1159. package/lib-es/modules/video-window/components/speaking/index.js +40 -0
  1160. package/lib-es/modules/video-window/components/topControl/index.css +35 -0
  1161. package/lib-es/modules/video-window/components/topControl/index.js +68 -0
  1162. package/lib-es/modules/video-window/index.css +21 -0
  1163. package/lib-es/modules/video-window/index.js +82 -0
  1164. package/lib-es/modules/video-window/popover-watcher.js +69 -0
  1165. package/lib-es/modules/video-window/store.js +490 -0
  1166. package/lib-es/modules/video-window/type.js +19 -0
  1167. package/lib-es/modules/video-window/view.js +107 -0
  1168. package/lib-es/modules/waiting-room-layout/index.css +96 -0
  1169. package/lib-es/modules/waiting-room-layout/index.js +67 -0
  1170. package/lib-es/modules/waiting-room-layout/store.js +231 -0
  1171. package/lib-es/modules/waiting-room-layout/view.js +87 -0
  1172. package/lib-es/modules/whiteboard/components/control-bar/index.css +52 -0
  1173. package/lib-es/modules/whiteboard/components/control-bar/index.js +151 -0
  1174. package/lib-es/modules/whiteboard/components/control-bar/store.js +292 -0
  1175. package/lib-es/modules/whiteboard/components/loading/index.css +76 -0
  1176. package/lib-es/modules/whiteboard/components/loading/index.js +57 -0
  1177. package/lib-es/modules/whiteboard/components/loading/loading.png +0 -0
  1178. package/lib-es/modules/whiteboard/components/pagination/index.css +228 -0
  1179. package/lib-es/modules/whiteboard/components/pagination/index.js +155 -0
  1180. package/lib-es/modules/whiteboard/components/pagination/store.js +10 -0
  1181. package/lib-es/modules/whiteboard/components/progress/index.js +36 -0
  1182. package/lib-es/modules/whiteboard/components/progress/style.css +51 -0
  1183. package/lib-es/modules/whiteboard/components/scene-pagination.js +23 -0
  1184. package/lib-es/modules/whiteboard/components/switch-theme/index.css +99 -0
  1185. package/lib-es/modules/whiteboard/components/switch-theme/index.js +89 -0
  1186. package/lib-es/modules/whiteboard/components/switch-theme/item.js +46 -0
  1187. package/lib-es/modules/whiteboard/components/switch-theme/libs.js +24 -0
  1188. package/lib-es/modules/whiteboard/components/toolbar/components/color-picker/components/color.js +30 -0
  1189. package/lib-es/modules/whiteboard/components/toolbar/components/color-picker/components/panel.js +101 -0
  1190. package/lib-es/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +67 -0
  1191. package/lib-es/modules/whiteboard/components/toolbar/components/color-picker/index.js +40 -0
  1192. package/lib-es/modules/whiteboard/components/toolbar/components/eraser-picker.js +136 -0
  1193. package/lib-es/modules/whiteboard/components/toolbar/components/expansion/index.js +85 -0
  1194. package/lib-es/modules/whiteboard/components/toolbar/components/extra-tool-picker.js +46 -0
  1195. package/lib-es/modules/whiteboard/components/toolbar/components/history.js +70 -0
  1196. package/lib-es/modules/whiteboard/components/toolbar/components/icons/fold-icon.js +33 -0
  1197. package/lib-es/modules/whiteboard/components/toolbar/components/icons/move-icon.js +59 -0
  1198. package/lib-es/modules/whiteboard/components/toolbar/components/item/index.js +35 -0
  1199. package/lib-es/modules/whiteboard/components/toolbar/components/move-handle.js +127 -0
  1200. package/lib-es/modules/whiteboard/components/toolbar/components/pen-picker.js +147 -0
  1201. package/lib-es/modules/whiteboard/components/toolbar/components/screen-capture-picker.js +78 -0
  1202. package/lib-es/modules/whiteboard/components/toolbar/components/shape-picker.js +202 -0
  1203. package/lib-es/modules/whiteboard/components/toolbar/hooks/index.js +285 -0
  1204. package/lib-es/modules/whiteboard/components/toolbar/index.js +72 -0
  1205. package/lib-es/modules/whiteboard/components/toolbar/store.js +495 -0
  1206. package/lib-es/modules/whiteboard/components/toolbar/style.css +591 -0
  1207. package/lib-es/modules/whiteboard/context.js +28 -0
  1208. package/lib-es/modules/whiteboard/index.js +67 -0
  1209. package/lib-es/modules/whiteboard/libs/theme.js +24 -0
  1210. package/lib-es/modules/whiteboard/store.browser.js +20 -0
  1211. package/lib-es/modules/whiteboard/store.electron.js +163 -0
  1212. package/lib-es/modules/whiteboard/store.js +458 -0
  1213. package/lib-es/modules/whiteboard/style.css +140 -0
  1214. package/lib-es/modules/whiteboard/type.js +52 -0
  1215. package/lib-es/modules/whiteboard/utils.js +29 -0
  1216. package/lib-es/modules/whiteboard/view.js +104 -0
  1217. package/lib-es/modules/widget/index.css +9 -0
  1218. package/lib-es/modules/widget/index.js +129 -0
  1219. package/lib-es/modules/widget/store.base.js +35 -0
  1220. package/lib-es/modules/widget/store.browser.js +74 -0
  1221. package/lib-es/modules/widget/store.electron.js +92 -0
  1222. package/lib-es/modules/widget/type.js +1 -0
  1223. package/lib-es/modules/widget/view.js +49 -0
  1224. package/lib-es/modules/widget/web-widget.js +263 -0
  1225. package/lib-es/object-manager.js +196 -0
  1226. package/lib-es/plugins/browser-runtime-plugin.js +0 -0
  1227. package/lib-es/plugins/css-preset-plugin.js +18 -0
  1228. package/lib-es/plugins/electron-rtc-plugin.js +3 -0
  1229. package/lib-es/plugins/module-dev-plugin.js +162 -0
  1230. package/lib-es/plugins/multi-lang-plugin.js +18 -0
  1231. package/lib-es/plugins/rtm-plugin.js +3 -0
  1232. package/lib-es/plugins/web-rtc-plugin.js +3 -0
  1233. package/lib-es/providers/ability-provider.js +104 -0
  1234. package/lib-es/providers/annotation/provider.base.js +263 -0
  1235. package/lib-es/providers/annotation/provider.browser.js +17 -0
  1236. package/lib-es/providers/annotation/provider.electron.js +224 -0
  1237. package/lib-es/providers/annotation/standalone-toolbar-control/index.js +220 -0
  1238. package/lib-es/providers/annotation/toolbar-control/index.js +198 -0
  1239. package/lib-es/providers/annotation/type.js +1 -0
  1240. package/lib-es/providers/app-list-provider.js +398 -0
  1241. package/lib-es/providers/board-share/bar-control/base.js +289 -0
  1242. package/lib-es/providers/board-share/bar-control/browser.js +108 -0
  1243. package/lib-es/providers/board-share/bar-control/electron.js +235 -0
  1244. package/lib-es/providers/board-share/provider.base.js +465 -0
  1245. package/lib-es/providers/board-share/provider.browser.js +147 -0
  1246. package/lib-es/providers/board-share/provider.electron.js +162 -0
  1247. package/lib-es/providers/board-share/struct.js +16 -0
  1248. package/lib-es/providers/board-share/type.js +1 -0
  1249. package/lib-es/providers/chat-provider.js +166 -0
  1250. package/lib-es/providers/device-privilege-provider.js +425 -0
  1251. package/lib-es/providers/device-provider.js +2399 -0
  1252. package/lib-es/providers/device-stream-provider.js +344 -0
  1253. package/lib-es/providers/dialog/provider.base.js +282 -0
  1254. package/lib-es/providers/dialog/provider.browser.js +160 -0
  1255. package/lib-es/providers/dialog/provider.electron.js +278 -0
  1256. package/lib-es/providers/dialog/type.js +8 -0
  1257. package/lib-es/providers/event-provider.js +50 -0
  1258. package/lib-es/providers/facility/provider.base.js +152 -0
  1259. package/lib-es/providers/facility/provider.browser.js +67 -0
  1260. package/lib-es/providers/facility/provider.electron.js +83 -0
  1261. package/lib-es/providers/facility/struct.js +6 -0
  1262. package/lib-es/providers/facility/type.js +1 -0
  1263. package/lib-es/providers/interpreter-provider.js +955 -0
  1264. package/lib-es/providers/local-storage-provider.js +37 -0
  1265. package/lib-es/providers/message/provider.js +109 -0
  1266. package/lib-es/providers/message/struct.js +5 -0
  1267. package/lib-es/providers/message/type.js +1 -0
  1268. package/lib-es/providers/monitor-provider.js +22 -0
  1269. package/lib-es/providers/mouse-detect/provider.js +312 -0
  1270. package/lib-es/providers/mouse-detect/struct.js +6 -0
  1271. package/lib-es/providers/mouse-detect/type.js +1 -0
  1272. package/lib-es/providers/multi-display-provider.js +616 -0
  1273. package/lib-es/providers/phone-audio-provider.js +519 -0
  1274. package/lib-es/providers/privilege-provider.js +1158 -0
  1275. package/lib-es/providers/renderer-provider.js +310 -0
  1276. package/lib-es/providers/room-provider/room-provider.js +624 -0
  1277. package/lib-es/providers/room-provider/waiting-room-control-manager.js +224 -0
  1278. package/lib-es/providers/screen-share/constant.js +1 -0
  1279. package/lib-es/providers/screen-share/provider.base.js +516 -0
  1280. package/lib-es/providers/screen-share/provider.browser.js +294 -0
  1281. package/lib-es/providers/screen-share/provider.electron.js +496 -0
  1282. package/lib-es/providers/screen-share/strategy/browser.js +306 -0
  1283. package/lib-es/providers/screen-share/strategy/electron.js +379 -0
  1284. package/lib-es/providers/screen-share/strategy/type.js +31 -0
  1285. package/lib-es/providers/screen-share/stream-state-sync.js +312 -0
  1286. package/lib-es/providers/screen-share/struct.js +60 -0
  1287. package/lib-es/providers/screen-share/type.js +1 -0
  1288. package/lib-es/providers/session-provider.js +42 -0
  1289. package/lib-es/providers/setting-storage/provider.base.js +6 -0
  1290. package/lib-es/providers/setting-storage/provider.browser.js +57 -0
  1291. package/lib-es/providers/setting-storage/provider.electron.js +55 -0
  1292. package/lib-es/providers/setting-storage/type.js +1 -0
  1293. package/lib-es/providers/stt-provider/stt-provider.js +963 -0
  1294. package/lib-es/providers/stt-provider/type.js +16 -0
  1295. package/lib-es/providers/user-audio-volume-provider.js +312 -0
  1296. package/lib-es/providers/widget-provider.js +236 -0
  1297. package/lib-es/providers/window/main-window.js +259 -0
  1298. package/lib-es/providers/window/provider.js +168 -0
  1299. package/lib-es/providers/window/renderer-window.js +661 -0
  1300. package/lib-es/providers/window/type.js +1 -0
  1301. package/lib-es/runtime.js +1 -0
  1302. package/lib-es/scenes/main-scene.js +726 -0
  1303. package/lib-es/scenes/type.js +1 -0
  1304. package/lib-es/scenes/waiting-scene.js +155 -0
  1305. package/lib-es/schema.js +88 -0
  1306. package/lib-es/shared-context/board-context.js +7 -0
  1307. package/lib-es/shared-context/dialog-context.js +3 -0
  1308. package/lib-es/shared-context/video-track-render-context.js +2 -0
  1309. package/lib-es/shared-data/app-list-data.js +122 -0
  1310. package/lib-es/shared-data/chat-data.js +135 -0
  1311. package/lib-es/shared-data/config.js +38 -0
  1312. package/lib-es/shared-data/confirm-data.js +195 -0
  1313. package/lib-es/shared-data/device-privilege-data.js +18 -0
  1314. package/lib-es/shared-data/interpreter.js +235 -0
  1315. package/lib-es/shared-data/layout-data.js +211 -0
  1316. package/lib-es/shared-data/meeting-time.js +409 -0
  1317. package/lib-es/shared-data/member-data.js +456 -0
  1318. package/lib-es/shared-data/pin-data.js +104 -0
  1319. package/lib-es/shared-data/screen-share/index.js +188 -0
  1320. package/lib-es/shared-data/screen-share/type.js +1 -0
  1321. package/lib-es/shared-data/security-data.js +153 -0
  1322. package/lib-es/shared-data/setting.js +244 -0
  1323. package/lib-es/shared-data/speaker-spotlight.js +11 -0
  1324. package/lib-es/shared-data/stt-setting.ts/constant.js +27 -0
  1325. package/lib-es/shared-data/stt-setting.ts/index.js +195 -0
  1326. package/lib-es/shared-data/stt-setting.ts/type.js +7 -0
  1327. package/lib-es/shared-data/user-audio-volume.js +97 -0
  1328. package/lib-es/shared-data/video-window.js +1237 -0
  1329. package/lib-es/shared-data/waiting-room.js +216 -0
  1330. package/lib-es/shared-data/widget-data.js +42 -0
  1331. package/lib-es/translations/enUS.js +2085 -0
  1332. package/lib-es/translations/zhCN.js +2083 -0
  1333. package/lib-es/type.js +167 -0
  1334. package/lib-es/ui-manager.js +213 -0
  1335. package/lib-es/ui-scene-switch.js +683 -0
  1336. package/lib-es/utilities/browser-api.js +34 -0
  1337. package/lib-es/utilities/constant.js +189 -0
  1338. package/lib-es/utilities/debug.js +33 -0
  1339. package/lib-es/utilities/default-config.js +49 -0
  1340. package/lib-es/utilities/dialog-utils.js +210 -0
  1341. package/lib-es/utilities/focus-helper.js +26 -0
  1342. package/lib-es/utilities/i18n-common-data.js +7 -0
  1343. package/lib-es/utilities/logger.js +20 -0
  1344. package/lib-es/utilities/meeting-detail.js +74 -0
  1345. package/lib-es/utilities/package-info.js +6 -0
  1346. package/lib-es/utilities/parameters.js +47 -0
  1347. package/lib-es/utilities/privilege.js +21 -0
  1348. package/lib-es/utilities/renderer.js +436 -0
  1349. package/lib-es/utilities/shared-storage.js +60 -0
  1350. package/lib-es/utilities/tools.js +66 -0
  1351. package/lib-es/utilities/ui-resources.js +84 -0
  1352. package/lib-es/utilities/validate-params.js +7 -0
  1353. package/package.json +12 -11
  1354. package/public/js/meeting-manager.js +13 -11
  1355. package/lib/electron/window-proxy/browser-window-proxy.js +0 -728
  1356. package/lib/fragments/annotation/toolbar/store.d.ts +0 -64
  1357. package/lib/fragments/annotation/toolbar/view.js +0 -148
  1358. package/lib/fragments/annotation/utils.d.ts +0 -1
  1359. package/lib/fragments/annotation/utils.js +0 -27
  1360. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +0 -20
  1361. package/lib/modules/dialog/components/dialog-container/component/body.js +0 -111
  1362. package/lib/modules/dialog/components/host-area-container/index.d.ts +0 -12
  1363. package/lib/modules/dialog/components/host-area-container/index.js +0 -153
  1364. package/lib/modules/dialog/dialogs/end-meeting/index.d.ts +0 -13
  1365. package/lib/modules/dialog/dialogs/interpreter/index.css +0 -30
  1366. package/lib/modules/dialog/dialogs/mute-all/index.css +0 -20
  1367. package/lib/modules/whiteboard/components/multi-window/index.css +0 -63
  1368. package/lib/modules/whiteboard/components/multi-window/index.d.ts +0 -5
  1369. package/lib/modules/whiteboard/components/multi-window/index.js +0 -39
  1370. package/lib/providers/annotation/provider.d.ts +0 -15
  1371. package/lib/providers/annotation/provider.js +0 -69
  1372. package/lib/utilities/hooks.d.ts +0 -14
  1373. package/lib/utilities/hooks.js +0 -100
  1374. package/lib/utilities/mute-action.d.ts +0 -4
  1375. package/lib/utilities/mute-action.js +0 -48
  1376. package/lib/utilities/platform.d.ts +0 -2
  1377. package/lib/utilities/platform.js +0 -14
  1378. package/lib/utilities/regex.d.ts +0 -1
  1379. package/lib/utilities/regex.js +0 -14
  1380. package/lib/utilities/useNamespace.d.ts +0 -15
  1381. package/lib/utilities/useNamespace.js +0 -66
  1382. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/color-tool/color-panel/index.d.ts +0 -0
  1383. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/color-tool/index.d.ts +0 -0
  1384. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/graphic-tool/graphic-panel/index.d.ts +0 -0
  1385. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/graphic-tool/graphic-panel/libs.d.ts +0 -0
  1386. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/graphic-tool/graphic-panel/libs.js +0 -0
  1387. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/graphic-tool/index.d.ts +0 -0
  1388. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/item/item.d.ts +0 -0
  1389. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/item/item.js +0 -0
  1390. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/panel/index.d.ts +0 -0
  1391. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/panel/index.js +0 -0
  1392. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/pen-tool/index.d.ts +0 -0
  1393. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/pen-tool/pen-panel/index.d.ts +0 -0
  1394. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/tips/index.d.ts +0 -0
  1395. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/components/tips/index.js +0 -0
  1396. /package/lib/{fragments/annotation/toolbar → modules/annotation/standalone-toolbar}/view.d.ts +0 -0
  1397. /package/{lib/fragments/annotation/toolbar → lib-es/modules/annotation/standalone-toolbar}/components/item/style.css +0 -0
  1398. /package/{lib/fragments/annotation/toolbar → lib-es/modules/annotation/standalone-toolbar}/components/panel/style.css +0 -0
  1399. /package/{lib/fragments/annotation/toolbar → lib-es/modules/annotation/standalone-toolbar}/components/tips/style.css +0 -0
@@ -0,0 +1,2446 @@
1
+ import "core-js/modules/es.symbol.js";
2
+ import "core-js/modules/es.symbol.description.js";
3
+ import "core-js/modules/es.symbol.to-primitive.js";
4
+ import "core-js/modules/es.error.cause.js";
5
+ import "core-js/modules/es.error.to-string.js";
6
+ import "core-js/modules/es.array.is-array.js";
7
+ import "core-js/modules/es.date.to-primitive.js";
8
+ import "core-js/modules/es.function.name.js";
9
+ import "core-js/modules/es.number.constructor.js";
10
+ import "core-js/modules/es.object.create.js";
11
+ import "core-js/modules/es.object.define-properties.js";
12
+ import "core-js/modules/es.object.define-property.js";
13
+ import "core-js/modules/es.object.get-own-property-descriptor.js";
14
+ import "core-js/modules/es.object.get-own-property-descriptors.js";
15
+ import "core-js/modules/es.object.keys.js";
16
+ import "core-js/modules/esnext.function.metadata.js";
17
+ import "core-js/modules/esnext.symbol.metadata.js";
18
+ import _typeof from "@babel/runtime/helpers/typeof";
19
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
20
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
21
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
22
+ import _createClass from "@babel/runtime/helpers/createClass";
23
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
24
+ var _ParticipantStoreBase;
25
+ var _initProto, _init__renamingUserName, _init__isChecked, _init__participantsWindowActive, _init_enableParticipantsJoinWithMute, _init_searchText, _init_currentModal, _init_mergeConfirmDialog, _init_mergeUserId, _init_activeTab, _init_interpreterInputLanguageList, _init_newName, _init_allowUnmute, _init_joinWithMuteAudio, _init_showBecomeHostButton, _init__userCount, _setCurrentModalDecs, _setParticipantsWindowActiveDecs, _handlerSearchUserDecs, _openRemoveAdmitWaitingRoomDialogDecs, _setAllowUnmuteDecs, _setAllowJoinWithMuteAudioDecs, _openMuteAllDialogDecs, _handlerRoomControlActionDecs, _moveToMainRoomByUserIdsDecs, _kickOutWaitingRoomAllMemberDecs, _moveToMainRoomAllMemberDecs, _removeWaitingRoomUserDecs, _handleUserCountUpdatedDecs, _handleConfirmChangeNameDecs, _handleCancelChangeNameDecs, _closeChangeNameDialogDecs, _getOutputLanguageDecs, _handlerUserActionDecs, _handleActiveTabDecs, _moveToWaitingRoomByUserIdDecs, _kickOutUserDecs, _onPeerSessionReceivedDecs, _ref;
26
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
27
+ 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; }
28
+ 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) { _defineProperty(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; }
29
+ import "core-js/modules/es.array.concat.js";
30
+ import "core-js/modules/es.array.filter.js";
31
+ import "core-js/modules/es.array.find.js";
32
+ import "core-js/modules/es.array.for-each.js";
33
+ import "core-js/modules/es.array.includes.js";
34
+ import "core-js/modules/es.array.iterator.js";
35
+ import "core-js/modules/es.array.map.js";
36
+ import "core-js/modules/es.array.push.js";
37
+ import "core-js/modules/es.array.some.js";
38
+ import "core-js/modules/es.date.now.js";
39
+ import "core-js/modules/es.date.to-json.js";
40
+ import "core-js/modules/es.function.bind.js";
41
+ import "core-js/modules/es.json.stringify.js";
42
+ import "core-js/modules/es.map.js";
43
+ import "core-js/modules/es.object.to-string.js";
44
+ import "core-js/modules/es.set.js";
45
+ import "core-js/modules/es.string.includes.js";
46
+ import "core-js/modules/es.string.iterator.js";
47
+ import "core-js/modules/es.weak-map.js";
48
+ import "core-js/modules/esnext.iterator.constructor.js";
49
+ import "core-js/modules/esnext.iterator.filter.js";
50
+ import "core-js/modules/esnext.iterator.find.js";
51
+ import "core-js/modules/esnext.iterator.for-each.js";
52
+ import "core-js/modules/esnext.iterator.map.js";
53
+ import "core-js/modules/esnext.iterator.some.js";
54
+ import "core-js/modules/esnext.map.delete-all.js";
55
+ import "core-js/modules/esnext.map.emplace.js";
56
+ import "core-js/modules/esnext.map.every.js";
57
+ import "core-js/modules/esnext.map.filter.js";
58
+ import "core-js/modules/esnext.map.find.js";
59
+ import "core-js/modules/esnext.map.find-key.js";
60
+ import "core-js/modules/esnext.map.includes.js";
61
+ import "core-js/modules/esnext.map.key-of.js";
62
+ import "core-js/modules/esnext.map.map-keys.js";
63
+ import "core-js/modules/esnext.map.map-values.js";
64
+ import "core-js/modules/esnext.map.merge.js";
65
+ import "core-js/modules/esnext.map.reduce.js";
66
+ import "core-js/modules/esnext.map.some.js";
67
+ import "core-js/modules/esnext.map.update.js";
68
+ import "core-js/modules/esnext.set.add-all.js";
69
+ import "core-js/modules/esnext.set.delete-all.js";
70
+ import "core-js/modules/esnext.set.difference.v2.js";
71
+ import "core-js/modules/esnext.set.difference.js";
72
+ import "core-js/modules/esnext.set.every.js";
73
+ import "core-js/modules/esnext.set.filter.js";
74
+ import "core-js/modules/esnext.set.find.js";
75
+ import "core-js/modules/esnext.set.intersection.v2.js";
76
+ import "core-js/modules/esnext.set.intersection.js";
77
+ import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
78
+ import "core-js/modules/esnext.set.is-disjoint-from.js";
79
+ import "core-js/modules/esnext.set.is-subset-of.v2.js";
80
+ import "core-js/modules/esnext.set.is-subset-of.js";
81
+ import "core-js/modules/esnext.set.is-superset-of.v2.js";
82
+ import "core-js/modules/esnext.set.is-superset-of.js";
83
+ import "core-js/modules/esnext.set.join.js";
84
+ import "core-js/modules/esnext.set.map.js";
85
+ import "core-js/modules/esnext.set.reduce.js";
86
+ import "core-js/modules/esnext.set.some.js";
87
+ import "core-js/modules/esnext.set.symmetric-difference.v2.js";
88
+ import "core-js/modules/esnext.set.symmetric-difference.js";
89
+ import "core-js/modules/esnext.set.union.v2.js";
90
+ import "core-js/modules/esnext.set.union.js";
91
+ import "core-js/modules/esnext.weak-map.delete-all.js";
92
+ import "core-js/modules/esnext.weak-map.emplace.js";
93
+ import "core-js/modules/web.dom-collections.for-each.js";
94
+ import "core-js/modules/web.dom-collections.iterator.js";
95
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
96
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
97
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
98
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
99
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
100
+ function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function set(e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) { return e[n]; }, (o < 2 || 4 === o) && (F = function F(e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function s(t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
101
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
102
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
103
+ function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
104
+ function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
105
+ import { FcrMediaSourceState, FcrRoomConnectorType, FcrVideoSourceType } from 'fcr-core';
106
+ import { FcrUserRole, FcrUserUpdatedReason, FcrStreamPrivilegeOperation } from 'fcr-core/lib/type';
107
+ import { FcrError } from 'fcr-core/lib/utilities/error';
108
+ import { ParticipantActionType } from 'agora-ui-foundation/lib/components/participants/attendee';
109
+ import { action, computed, observable, runInAction, reaction } from 'mobx';
110
+ import { ErrorCode, FcrUIAction, FcrUIDialogKey, FcrUIRoomControlType, SESSION_DURATION } from '../../utilities/constant';
111
+ import { bound } from 'agora-foundation/lib/decorator';
112
+ import { computedFn } from 'mobx-utils';
113
+ import { FcrUISessionKey } from './type';
114
+ import { transI18n } from 'agora-ui-foundation/lib/i18n';
115
+ import { FcrUserKickedOutType } from 'fcr-core/lib/room-control/user-control/type';
116
+ import { FcrSecurityAction } from 'fcr-core/lib/room-control/privilege-control/type';
117
+ import { FcrUIRoomType } from '../../type';
118
+ import { createLogger } from '../../utilities/logger';
119
+ import { FcrUIObjectKeys } from '../../object-manager';
120
+ import { createContext } from 'react';
121
+ import { OperateWaitingRoomMemberDialog } from './components/operate-waitingroom-member';
122
+ import { FcrConfirmInput } from './components/confirm-input';
123
+ import { USER_FORMAT_CONFIG, KICK_OUT_DIALOG_CONFIG } from './struct';
124
+ import { userRoleI18nKey } from '../../hooks/i18n';
125
+ import { FcrUIToastKey } from '../../modules/toast-manager/type';
126
+ import { jsx as _jsx } from "react/jsx-runtime";
127
+ var _A = /*#__PURE__*/new WeakMap();
128
+ var _B = /*#__PURE__*/new WeakMap();
129
+ var _C = /*#__PURE__*/new WeakMap();
130
+ var _D = /*#__PURE__*/new WeakMap();
131
+ var _E = /*#__PURE__*/new WeakMap();
132
+ var _F = /*#__PURE__*/new WeakMap();
133
+ var _G = /*#__PURE__*/new WeakMap();
134
+ var _H = /*#__PURE__*/new WeakMap();
135
+ var _I = /*#__PURE__*/new WeakMap();
136
+ var _J = /*#__PURE__*/new WeakMap();
137
+ var _K = /*#__PURE__*/new WeakMap();
138
+ var _L = /*#__PURE__*/new WeakMap();
139
+ var _M = /*#__PURE__*/new WeakMap();
140
+ var _N = /*#__PURE__*/new WeakMap();
141
+ var _O = /*#__PURE__*/new WeakMap();
142
+ _ref = (_setCurrentModalDecs = [action, action.bound], _setParticipantsWindowActiveDecs = [action, action.bound], _handlerSearchUserDecs = [action, action.bound], _openRemoveAdmitWaitingRoomDialogDecs = [action, action.bound], _setAllowUnmuteDecs = [action, action.bound], _setAllowJoinWithMuteAudioDecs = [action, action.bound], _openMuteAllDialogDecs = [action, action.bound], _handlerRoomControlActionDecs = [action, action.bound], _moveToMainRoomByUserIdsDecs = [action, action.bound], _kickOutWaitingRoomAllMemberDecs = [action, action.bound], _moveToMainRoomAllMemberDecs = [action, action.bound], _removeWaitingRoomUserDecs = [action, action.bound], _handleUserCountUpdatedDecs = [action, action.bound], _handleConfirmChangeNameDecs = [action, action.bound], _handleCancelChangeNameDecs = [action, action.bound], _closeChangeNameDialogDecs = [action, action.bound], _getOutputLanguageDecs = [action, action.bound], _handlerUserActionDecs = [action, action.bound], _handleActiveTabDecs = [action, action.bound], _moveToWaitingRoomByUserIdDecs = [action, action.bound], _kickOutUserDecs = [action, action.bound], _onPeerSessionReceivedDecs = [action, action.bound], "logger");
143
+ export var ParticipantStoreBase = /*#__PURE__*/function () {
144
+ // #endregion
145
+
146
+ function ParticipantStoreBase(_ref2) {
147
+ var _this = this;
148
+ var objectManager = _ref2.objectManager;
149
+ _classCallCheck(this, ParticipantStoreBase);
150
+ _defineProperty(this, _ref, (_initProto(this), createLogger({
151
+ prefix: 'ParticipantStore'
152
+ })));
153
+ _defineProperty(this, "_disposers", []);
154
+ _defineProperty(this, "_unmuteAudioTimestamp", new Map());
155
+ _defineProperty(this, "_unmuteVideoTimestamp", new Map());
156
+ _defineProperty(this, "_processedUserOpenDeviceRequests", new Set());
157
+ _defineProperty(this, "_peerSessionObserver", {
158
+ onPeerSessionReceived: this._onPeerSessionReceived,
159
+ onPeerSessionAccepted: this._onPeerSessionAccepted,
160
+ onPeerSessionRejected: this._onPeerSessionRejected
161
+ });
162
+ _defineProperty(this, "_roomStoreObserver", {
163
+ onJoinWaitingRoom: function onJoinWaitingRoom(roomControl) {
164
+ var room = roomControl;
165
+ _this._waitingRoomControl = room;
166
+ var waitingRoomUserControl = room.getUserControl();
167
+ _this._waitingRoomUserControl = waitingRoomUserControl;
168
+ },
169
+ onWaitingRoomManageCanceled: function onWaitingRoomManageCanceled() {
170
+ _this._waitingRoomControl = undefined;
171
+ _this._waitingRoomUserControl = undefined;
172
+ _this.handleActiveTab(FcrUIRoomType.MAIN_ROOM);
173
+ }
174
+ });
175
+ _defineProperty(this, "_privilegeControlObserver", {
176
+ onSecurityInfoUpdated: function onSecurityInfoUpdated(roomId, event) {
177
+ var _event$securityInfo$i;
178
+ if (((_event$securityInfo$i = event.securityInfo.info) === null || _event$securityInfo$i === void 0 ? void 0 : _event$securityInfo$i.action) === FcrSecurityAction.ChangeName) {
179
+ if (!event.securityInfo.enable) {
180
+ _this._closeChangeNameDialog();
181
+ }
182
+ }
183
+ }
184
+ });
185
+ _defineProperty(this, "_userObserver", {
186
+ onRemoteUsersJoined: this._handleRemoteUsersJoined.bind(this),
187
+ onUserPropertiesUpdated: this._handleUserPropertiesUpdated.bind(this),
188
+ onUserInfoUpdated: this._handleUserInfoUpdated.bind(this),
189
+ onAllUserCountUpdated: this._handleUserCountUpdated.bind(this)
190
+ });
191
+ _defineProperty(this, "_whitebaordObderver", {
192
+ onActive: function onActive(ownerId, operatorUser) {
193
+ _this._sharedMemberDataSource.updateMemberListWithBoardState();
194
+ },
195
+ onInactive: function onInactive(reason, operatorUser) {
196
+ _this._sharedMemberDataSource.updateMemberListWithBoardState();
197
+ }
198
+ });
199
+ _defineProperty(this, "_renamingUserId", '');
200
+ _classPrivateFieldInitSpec(this, _A, _init__renamingUserName(this, ''));
201
+ _classPrivateFieldInitSpec(this, _B, _init__isChecked(this, {}));
202
+ _classPrivateFieldInitSpec(this, _C, _init__participantsWindowActive(this, false));
203
+ _classPrivateFieldInitSpec(this, _D, _init_enableParticipantsJoinWithMute(this, false));
204
+ _classPrivateFieldInitSpec(this, _E, _init_searchText(this, ''));
205
+ _classPrivateFieldInitSpec(this, _F, _init_currentModal(this, 'modal'));
206
+ _classPrivateFieldInitSpec(this, _G, _init_mergeConfirmDialog(this, false));
207
+ _classPrivateFieldInitSpec(this, _H, _init_mergeUserId(this, ''));
208
+ _classPrivateFieldInitSpec(this, _I, _init_activeTab(this, FcrUIRoomType.MAIN_ROOM));
209
+ _classPrivateFieldInitSpec(this, _J, _init_interpreterInputLanguageList(this, []));
210
+ _classPrivateFieldInitSpec(this, _K, _init_newName(this, ''));
211
+ _classPrivateFieldInitSpec(this, _L, _init_allowUnmute(this, false));
212
+ _classPrivateFieldInitSpec(this, _M, _init_joinWithMuteAudio(this, false));
213
+ _classPrivateFieldInitSpec(this, _N, _init_showBecomeHostButton(this, false));
214
+ _classPrivateFieldInitSpec(this, _O, _init__userCount(this, 0));
215
+ _defineProperty(this, "allowedOperations", computedFn(function (userId, userRole) {
216
+ return _this.getAllowedOperations(userRole, userId === _this.localUser.userId);
217
+ }));
218
+ _defineProperty(this, "checkIsPin", computedFn(function (userId) {
219
+ var _this$userMap$get;
220
+ return !!((_this$userMap$get = _this.userMap.get(userId)) !== null && _this$userMap$get !== void 0 && _this$userMap$get.streams.some(function (stream) {
221
+ return _this.pinedStreamIds.includes(stream.streamId);
222
+ }));
223
+ }));
224
+ _defineProperty(this, "getAllowedOperations", computedFn(function (targetRole, isSelf) {
225
+ return _this._privilegeProvider.getAllowedOperations(targetRole, isSelf);
226
+ }));
227
+ /**
228
+ * 格式化用户数据为UI显示格式
229
+ * @param user 原始用户数据
230
+ * @returns 格式化后的用户数据
231
+ */
232
+ _defineProperty(this, "_formatUser", function (user) {
233
+ try {
234
+ // 参数验证
235
+ if (!user || !user.userId || !user.userInfo) {
236
+ _this.logger.warn('Invalid user data provided to _formatUser:', user);
237
+ return _this._getDefaultUserData();
238
+ }
239
+ var _user$streams = user.streams,
240
+ userStreams = _user$streams === void 0 ? [] : _user$streams;
241
+ var isSelf = user.userId === _this.localUser.userId;
242
+
243
+ // 获取基础信息
244
+ var baseInfo = _this._getUserBaseInfo(user, isSelf);
245
+
246
+ // 根据连接器类型处理设备信息
247
+ var deviceInfo = _this._getUserDeviceInfo(user, userStreams, isSelf);
248
+
249
+ // 获取流状态信息
250
+ var streamInfo = _this._getUserStreamInfo(user, userStreams);
251
+
252
+ // 组合所有信息
253
+ return _objectSpread(_objectSpread(_objectSpread({}, baseInfo), deviceInfo), streamInfo);
254
+ } catch (error) {
255
+ _this.logger.error('Error formatting user data:', error, 'user:', user);
256
+ return _this._getDefaultUserData();
257
+ }
258
+ });
259
+ // Get all required objects from objectManager
260
+ this._roomStore = objectManager.getObject(FcrUIObjectKeys.P_ROOM_PROVIDER);
261
+ this._roomControl = this._roomStore.currentRoomControl;
262
+ this._streamControl = this._roomControl.getStreamControl();
263
+ this._userControl = this._roomControl.getUserControl();
264
+ this._chatProvider = objectManager.getObject(FcrUIObjectKeys.P_CHAT_PROVIDER);
265
+ this._privilegeProvider = objectManager.getObject(FcrUIObjectKeys.P_PRIVILEGE_PROVIDER);
266
+ this._deviceStore = objectManager.getObject(FcrUIObjectKeys.P_DEVICE_PROVIDER);
267
+ this._deviceStreamStore = objectManager.getObject(FcrUIObjectKeys.P_DEVICE_STREAM_PROVIDER);
268
+ this._dialogProvider = objectManager.getObject(FcrUIObjectKeys.P_DIALOG_PROVIDER);
269
+ this._messageProvider = objectManager.getObject(FcrUIObjectKeys.P_MESSAGE_PROVIDER);
270
+ this._abilityProvider = objectManager.getObject(FcrUIObjectKeys.P_ABILITY_PROVIDER);
271
+ this._eventProvider = objectManager.getObject(FcrUIObjectKeys.P_EVENT_PROVIDER);
272
+ this._screenShareProvider = objectManager.getObject(FcrUIObjectKeys.P_SCREEN_SHARE_PROVIDER);
273
+ this._userAudioVolumeProvider = objectManager.getObject(FcrUIObjectKeys.P_USER_AUDIO_VOLUME_PROVIDER);
274
+ this._userCount = this._userControl.getAllUserCount();
275
+
276
+ // Get shared data sources
277
+ this._sharedPinDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_PIN_DATA_SOURCE);
278
+ this._sharedLayoutDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_LAYOUT_DATA_SOURCE);
279
+ this._sharedVideoWindowDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_VIDEO_WINDOW_DATA_SOURCE);
280
+ this._sharedWaitingRoomDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_WAITING_ROOM_DATA_SOURCE);
281
+ this._sharedInterpreterDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_INTERPRETER_DATA_SOURCE);
282
+ this._sharedMemberDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_MEMBER_DATA_SOURCE);
283
+ this._sharedUserAudioVolumeDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_USER_AUDIO_VOLUME_DATA_SOURCE);
284
+ this._sharedChatDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_CHAT_DATA_SOURCE);
285
+ this._sharedSettingDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_SETTING_DATA_SOURCE);
286
+ this._sharedSecurityDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_SECURITY_DATA_SOURCE);
287
+
288
+ // Try to get session provider if available
289
+ try {
290
+ this._peerSessionControl = objectManager.getObject(FcrUIObjectKeys.P_SESSION_PROVIDER);
291
+ } catch (e) {
292
+ // Session provider may not be available in all contexts
293
+ this._peerSessionControl = undefined;
294
+ }
295
+ this._userControl.addObserver(this._userObserver);
296
+ this._peerSessionControl.addObserver(this._peerSessionObserver);
297
+ this._roomControl.getSharingControl().getBoardControl().addObserver(this._whitebaordObderver);
298
+ this._roomControl.getPrivilegeControl().addObserver(this._privilegeControlObserver);
299
+ this._roomStore.addObserver(this._roomStoreObserver);
300
+ this._eventProvider.addObserver({
301
+ onEvent: this._handleEvent
302
+ });
303
+
304
+ // TODO: 使用 privilegeProvider 中的值代替
305
+ this.allowUnmute = this._privilegeProvider.isUnmuteSelfAudioAllowed();
306
+ this.joinWithMuteAudio = this._privilegeProvider.isJoinWithMutedAudioEnabled();
307
+ this._getOutputLanguage();
308
+ this.showBecomeHostButton = !this._sharedMemberDataSource.memberList.some(function (user) {
309
+ return user.userInfo.userRole === FcrUserRole.HOST;
310
+ });
311
+
312
+ // 设置等候室用户数量监听
313
+ this._setupWaitingRoomUserCountListener();
314
+ }
315
+ return _createClass(ParticipantStoreBase, [{
316
+ key: "_renamingUserName",
317
+ get: function get() {
318
+ return _classPrivateFieldGet(_A, this);
319
+ },
320
+ set: function set(v) {
321
+ _classPrivateFieldSet(_A, this, v);
322
+ }
323
+ }, {
324
+ key: "_isChecked",
325
+ get: function get() {
326
+ return _classPrivateFieldGet(_B, this);
327
+ },
328
+ set: function set(v) {
329
+ _classPrivateFieldSet(_B, this, v);
330
+ }
331
+ }, {
332
+ key: "_participantsWindowActive",
333
+ get: function get() {
334
+ return _classPrivateFieldGet(_C, this);
335
+ },
336
+ set: function set(v) {
337
+ _classPrivateFieldSet(_C, this, v);
338
+ }
339
+ }, {
340
+ key: "enableParticipantsJoinWithMute",
341
+ get: function get() {
342
+ return _classPrivateFieldGet(_D, this);
343
+ },
344
+ set: function set(v) {
345
+ _classPrivateFieldSet(_D, this, v);
346
+ }
347
+ }, {
348
+ key: "searchText",
349
+ get: function get() {
350
+ return _classPrivateFieldGet(_E, this);
351
+ },
352
+ set: function set(v) {
353
+ _classPrivateFieldSet(_E, this, v);
354
+ }
355
+ }, {
356
+ key: "currentModal",
357
+ get: function get() {
358
+ return _classPrivateFieldGet(_F, this);
359
+ },
360
+ set: function set(v) {
361
+ _classPrivateFieldSet(_F, this, v);
362
+ }
363
+ }, {
364
+ key: "mergeConfirmDialog",
365
+ get: function get() {
366
+ return _classPrivateFieldGet(_G, this);
367
+ },
368
+ set: function set(v) {
369
+ _classPrivateFieldSet(_G, this, v);
370
+ }
371
+ }, {
372
+ key: "mergeUserId",
373
+ get: function get() {
374
+ return _classPrivateFieldGet(_H, this);
375
+ },
376
+ set: function set(v) {
377
+ _classPrivateFieldSet(_H, this, v);
378
+ }
379
+ }, {
380
+ key: "activeTab",
381
+ get: function get() {
382
+ return _classPrivateFieldGet(_I, this);
383
+ },
384
+ set: function set(v) {
385
+ _classPrivateFieldSet(_I, this, v);
386
+ }
387
+ }, {
388
+ key: "interpreterInputLanguageList",
389
+ get: function get() {
390
+ return _classPrivateFieldGet(_J, this);
391
+ },
392
+ set: function set(v) {
393
+ _classPrivateFieldSet(_J, this, v);
394
+ }
395
+ }, {
396
+ key: "newName",
397
+ get: function get() {
398
+ return _classPrivateFieldGet(_K, this);
399
+ },
400
+ set: function set(v) {
401
+ _classPrivateFieldSet(_K, this, v);
402
+ }
403
+ }, {
404
+ key: "allowUnmute",
405
+ get: function get() {
406
+ return _classPrivateFieldGet(_L, this);
407
+ },
408
+ set: function set(v) {
409
+ _classPrivateFieldSet(_L, this, v);
410
+ }
411
+ }, {
412
+ key: "joinWithMuteAudio",
413
+ get: function get() {
414
+ return _classPrivateFieldGet(_M, this);
415
+ },
416
+ set: function set(v) {
417
+ _classPrivateFieldSet(_M, this, v);
418
+ }
419
+ }, {
420
+ key: "showBecomeHostButton",
421
+ get: function get() {
422
+ return _classPrivateFieldGet(_N, this);
423
+ },
424
+ set: function set(v) {
425
+ _classPrivateFieldSet(_N, this, v);
426
+ }
427
+ }, {
428
+ key: "_userCount",
429
+ get: // #region getters
430
+ function get() {
431
+ return _classPrivateFieldGet(_O, this);
432
+ },
433
+ set: function set(v) {
434
+ _classPrivateFieldSet(_O, this, v);
435
+ }
436
+ }, {
437
+ key: "renamingUserName",
438
+ get: function get() {
439
+ return this._renamingUserName;
440
+ }
441
+ }, {
442
+ key: "audioVolumeMap",
443
+ get: function get() {
444
+ return this._sharedUserAudioVolumeDataSource.audioVolumeMap;
445
+ }
446
+ }, {
447
+ key: "userIdToAudioStreamIdMap",
448
+ get: function get() {
449
+ return this._userAudioVolumeProvider.userIdToAudioStreamIdMap;
450
+ }
451
+ }, {
452
+ key: "localUser",
453
+ get: function get() {
454
+ return this._sharedMemberDataSource.localUser;
455
+ }
456
+ }, {
457
+ key: "localUserRole",
458
+ get: function get() {
459
+ return this._sharedMemberDataSource.localUserRole;
460
+ }
461
+ }, {
462
+ key: "isLocalUserHost",
463
+ get: function get() {
464
+ return this._sharedMemberDataSource.isLocalUserHost;
465
+ }
466
+ }, {
467
+ key: "enableSpotlight",
468
+ get: function get() {
469
+ return this._sharedSettingDataSource.setting.spotlightEnabled;
470
+ }
471
+ }, {
472
+ key: "userListSource",
473
+ get: function get() {
474
+ if (this.activeTab === FcrUIRoomType.MAIN_ROOM) {
475
+ return this._sharedMemberDataSource.memberList;
476
+ } else {
477
+ return this._sharedWaitingRoomDataSource.waitingRoomDataSource.list;
478
+ }
479
+ }
480
+ }, {
481
+ key: "spotlightStreamId",
482
+ get: function get() {
483
+ return this._sharedVideoWindowDataSource.spotlightStreamId;
484
+ }
485
+ }, {
486
+ key: "mergeUserInfo",
487
+ get: function get() {
488
+ var _this$userListSource$,
489
+ _this2 = this;
490
+ return (_this$userListSource$ = this.userListSource.find(function (user) {
491
+ return user.userId === _this2.mergeUserId;
492
+ })) === null || _this$userListSource$ === void 0 ? void 0 : _this$userListSource$.userInfo;
493
+ }
494
+ }, {
495
+ key: "userMap",
496
+ get: function get() {
497
+ var res = new Map();
498
+ this.userListSource.forEach(function (u) {
499
+ res.set(u.userId, u);
500
+ });
501
+ return res;
502
+ }
503
+ }, {
504
+ key: "mainRoomUserMap",
505
+ get: function get() {
506
+ var res = new Map();
507
+ this._sharedMemberDataSource.memberList.forEach(function (u) {
508
+ res.set(u.userId, u);
509
+ });
510
+ return res;
511
+ }
512
+ }, {
513
+ key: "waitingRoomUserMap",
514
+ get: function get() {
515
+ var res = new Map();
516
+ this._sharedWaitingRoomDataSource.waitingRoomDataSource.list.forEach(function (u) {
517
+ res.set(u.userId, u);
518
+ });
519
+ return res;
520
+ }
521
+ }, {
522
+ key: "userCount",
523
+ get: function get() {
524
+ return this._userCount;
525
+ }
526
+ }, {
527
+ key: "allowUnmuteSelfAudio",
528
+ get: function get() {
529
+ return this.checkedStateMap.unmuteYourself;
530
+ }
531
+ }, {
532
+ key: "allowJoinWithMuteAudio",
533
+ get: function get() {
534
+ return this.checkedStateMap.enableJoinWithAudio;
535
+ }
536
+ }, {
537
+ key: "allowUnmuteSelfVideo",
538
+ get: function get() {
539
+ return this.checkedStateMap.startVideo;
540
+ }
541
+ }, {
542
+ key: "isLockRoomEnabled",
543
+ get: function get() {
544
+ return this.checkedStateMap.lockRoom;
545
+ }
546
+ }, {
547
+ key: "isWaitingRoomEnabled",
548
+ get: function get() {
549
+ return this._privilegeProvider.isWaitingRoomEnabled();
550
+ }
551
+ }, {
552
+ key: "allowChangeSelfName",
553
+ get: function get() {
554
+ return this.checkedStateMap.rename;
555
+ }
556
+ }, {
557
+ key: "pinedStreamIds",
558
+ get: function get() {
559
+ var mainList = this._sharedVideoWindowDataSource.mainList;
560
+ return mainList.filter(function (i) {
561
+ return i.isPin;
562
+ }).map(function (i) {
563
+ return i.windowId;
564
+ });
565
+ }
566
+ }, {
567
+ key: "hasPinnedStream",
568
+ get: function get() {
569
+ var mainList = this._sharedVideoWindowDataSource.mainList;
570
+ return mainList.some(function (i) {
571
+ return i.isPin;
572
+ });
573
+ }
574
+ }, {
575
+ key: "userList",
576
+ get: function get() {
577
+ var _this3 = this;
578
+ var list = this.userListSource;
579
+ if (this.searchText.length) {
580
+ list = list.filter(function (user) {
581
+ return user.userInfo.userName.toLocaleLowerCase().includes(_this3.searchText.toLocaleLowerCase());
582
+ });
583
+ }
584
+ var uiDataList = list.map(function (user) {
585
+ return _this3._formatUser(user);
586
+ });
587
+ return uiDataList;
588
+ }
589
+ }, {
590
+ key: "isLocalScreenSharing",
591
+ get: function get() {
592
+ return this._screenShareProvider.isLocalUserScreenSharing;
593
+ }
594
+ }, {
595
+ key: "hasRevokeHostPermission",
596
+ get: function get() {
597
+ return this._privilegeProvider.hasRevokeHostPermission() && this.localUserRole !== FcrUserRole.HOST;
598
+ }
599
+ }, {
600
+ key: "interpreterUserList",
601
+ get: function get() {
602
+ return this._sharedInterpreterDataSource.interpreterUserList;
603
+ }
604
+ }, {
605
+ key: "isInterpreterEnabled",
606
+ get: function get() {
607
+ return this._sharedInterpreterDataSource.isInterpreterEnabled;
608
+ }
609
+ }, {
610
+ key: "waitingRoomUserCount",
611
+ get: function get() {
612
+ return this._sharedWaitingRoomDataSource.totalWaitingRoomUser;
613
+ }
614
+ }, {
615
+ key: "isNewWaitingRoomUserEnter",
616
+ get: function get() {
617
+ return this._sharedWaitingRoomDataSource.unReadState;
618
+ }
619
+ }, {
620
+ key: "isHostKeyEnabled",
621
+ get: function get() {
622
+ return this._roomControl.isHostKeyEnabled();
623
+ }
624
+ }, {
625
+ key: "hasInvite",
626
+ get: function get() {
627
+ return this._abilityProvider.isRoomDetailSupported() && this._abilityProvider.isCallOutAbilitySupported();
628
+ }
629
+ }, {
630
+ key: "checkedStateMap",
631
+ get: function get() {
632
+ return this._sharedSecurityDataSource.checkedStateMap;
633
+ }
634
+ }, {
635
+ key: "release",
636
+ value: function release() {
637
+ this._userControl.removeObserver(this._userObserver);
638
+ this._peerSessionControl.removeObserver(this._peerSessionObserver);
639
+ this._roomControl.getSharingControl().getBoardControl().removeObserver(this._whitebaordObderver);
640
+ this._roomControl.getPrivilegeControl().removeObserver(this._privilegeControlObserver);
641
+ this._roomStore.removeObserver(this._roomStoreObserver);
642
+ this._eventProvider.removeObserver({
643
+ onEvent: this._handleEvent
644
+ });
645
+ this._disposers.forEach(function (disposer) {
646
+ return disposer();
647
+ });
648
+ }
649
+ }, {
650
+ key: "hasMutePermission",
651
+ value: function hasMutePermission(targetRole) {
652
+ return this._privilegeProvider.hasMutePermission(targetRole);
653
+ }
654
+ }, {
655
+ key: "hasWaitingRoomPermission",
656
+ value: function hasWaitingRoomPermission() {
657
+ return this._privilegeProvider.isWaitingRoomEnabled() && this._privilegeProvider.hasEnableWaitingRoomPermission();
658
+ }
659
+ }, {
660
+ key: "hasUnmutePermission",
661
+ value: function hasUnmutePermission(targetRole) {
662
+ return this._privilegeProvider.hasUnmutePermission(targetRole);
663
+ }
664
+ }, {
665
+ key: "hasRequestStartAudioPermission",
666
+ value: function hasRequestStartAudioPermission(targetRole) {
667
+ return this._privilegeProvider.hasRequestStartAudioPermission(targetRole);
668
+ }
669
+ }, {
670
+ key: "setCurrentModal",
671
+ value: function setCurrentModal(modal) {
672
+ this.currentModal = modal;
673
+ }
674
+ }, {
675
+ key: "closeParticipantsAside",
676
+ value: function closeParticipantsAside() {
677
+ this.setLayoutAsideLayout({
678
+ participant: false
679
+ });
680
+ }
681
+ }, {
682
+ key: "setParticipantsRenderAt",
683
+ value: function setParticipantsRenderAt(renderPosition) {
684
+ this._sharedLayoutDataSource.setParticipantsRenderAt(renderPosition);
685
+ }
686
+ }, {
687
+ key: "setLayoutAsideLayout",
688
+ value: function setLayoutAsideLayout(params) {
689
+ this._sharedLayoutDataSource.setAsideLayout(params);
690
+ }
691
+ }, {
692
+ key: "getLayoutChatRenderAt",
693
+ get: function get() {
694
+ return this._sharedLayoutDataSource.chatRenderAt;
695
+ }
696
+
697
+ // TODO: 这里超级奇怪,传入的变量名是activeTab,但是实际上是roomType
698
+ // 看上去像是有个bug
699
+ }, {
700
+ key: "setChatActiveTab",
701
+ value: function setChatActiveTab(activeTab) {
702
+ this._sharedChatDataSource.activeTab = activeTab;
703
+ }
704
+ }, {
705
+ key: "closeParticipantsWindow",
706
+ value: function closeParticipantsWindow() {
707
+ this.closeDialog(FcrUIDialogKey.PARTICIPANT);
708
+ }
709
+ }, {
710
+ key: "openDialog",
711
+ value: function openDialog(key) {
712
+ this._openDialog(key);
713
+ }
714
+ }, {
715
+ key: "closeDialog",
716
+ value: function closeDialog(key) {
717
+ this._dialogProvider.closeDialog(key);
718
+ }
719
+ }, {
720
+ key: "openConfirmDialog",
721
+ value: function openConfirmDialog(params, key) {
722
+ var _this4 = this;
723
+ var dialogId = this._dialogProvider.openConfirmDialog(_objectSpread(_objectSpread({}, params), {}, {
724
+ key: key,
725
+ onCancel: function onCancel() {
726
+ _this4.closeConfirmDialog(dialogId);
727
+ params.onCancel && params.onCancel();
728
+ },
729
+ onOk: function onOk() {
730
+ _this4.closeConfirmDialog(dialogId);
731
+ params.onOk && params.onOk();
732
+ }
733
+ }));
734
+ this.logger.info("open Confirm Dialog: ".concat(JSON.stringify(params), ",dialogId: ").concat(dialogId));
735
+ return dialogId;
736
+ }
737
+ }, {
738
+ key: "closeConfirmDialog",
739
+ value: function closeConfirmDialog(id) {
740
+ this._dialogProvider.closeConfirmDialog(id);
741
+ }
742
+ }, {
743
+ key: "setParticipantsWindowActive",
744
+ value: function setParticipantsWindowActive(active) {
745
+ var _this5 = this;
746
+ runInAction(function () {
747
+ _this5._participantsWindowActive = active;
748
+ if (!active) {
749
+ _this5.setCurrentModal('modal');
750
+ }
751
+ });
752
+ }
753
+ }, {
754
+ key: "handlerSearchUser",
755
+ value: function handlerSearchUser(searchText) {
756
+ this.searchText = searchText;
757
+ }
758
+ }, {
759
+ key: "onInvite",
760
+ value: function onInvite() {
761
+ this._openDialog(FcrUIDialogKey.INVITE);
762
+ }
763
+ }, {
764
+ key: "setMergeConfirmDialog",
765
+ value: function setMergeConfirmDialog(visible) {
766
+ this.mergeConfirmDialog = visible;
767
+ }
768
+ }, {
769
+ key: "mergeConfirmDialogOk",
770
+ value: function mergeConfirmDialogOk(userId) {
771
+ var _this$userMap$get2;
772
+ this._streamControl.mergeAudioStream(userId);
773
+ this.setMergeConfirmDialog(false);
774
+ this._showToast({
775
+ key: FcrUIToastKey.FMT_PSTN_TOAST_MERGED,
776
+ params: {
777
+ transI18nOptions: {
778
+ reason1: (_this$userMap$get2 = this.userMap.get(userId)) === null || _this$userMap$get2 === void 0 ? void 0 : _this$userMap$get2.userInfo.userName
779
+ }
780
+ }
781
+ });
782
+ }
783
+ }, {
784
+ key: "openRemoveAdmitWaitingRoomDialog",
785
+ value: function openRemoveAdmitWaitingRoomDialog(params) {
786
+ var _this6 = this;
787
+ var buttonTextMap = {
788
+ removeAll: transI18n('fmt_waitingroom_sidebar_button_removeall'),
789
+ admitAll: transI18n('fmt_waitingroom_sidebar_button_admitall'),
790
+ remove: transI18n('fmt_waitingroom_sidebar_popup_button_remove')
791
+ };
792
+ this._isChecked[params.type] = false;
793
+ var dialogId = this.openConfirmDialog({
794
+ title: params.title,
795
+ alignCenter: true,
796
+ content: /*#__PURE__*/_jsx(OperateWaitingRoomMemberDialog, {
797
+ type: params.type,
798
+ userId: params.userId,
799
+ tooltip: params.tooltip,
800
+ title: params.title,
801
+ onChecked: function onChecked(isChecked) {
802
+ _this6._isChecked[params.type] = isChecked;
803
+ }
804
+ }),
805
+ onOk: function onOk() {
806
+ if (params.type === 'remove') {
807
+ _this6.removeWaitingRoomUser(params.userId, _this6._isChecked[params.type] ? FcrUserKickedOutType.Forever : FcrUserKickedOutType.Once);
808
+ }
809
+ if (params.type === 'removeAll') {
810
+ _this6.kickOutWaitingRoomAllMember(_this6._isChecked[params.type] ? FcrUserKickedOutType.Forever : FcrUserKickedOutType.Once);
811
+ }
812
+ if (params.type === 'admitAll') {
813
+ _this6.moveToMainRoomAllMember();
814
+ }
815
+ _this6.closeConfirmDialog(dialogId);
816
+ },
817
+ okText: buttonTextMap[params.type],
818
+ okButtonProps: {
819
+ styleType: params.type === 'remove' || params.type === 'removeAll' ? 'danger' : undefined
820
+ }
821
+ });
822
+ }
823
+ }, {
824
+ key: "setAllowUnmute",
825
+ value: function setAllowUnmute(checked) {
826
+ this.allowUnmute = checked;
827
+ }
828
+ }, {
829
+ key: "setAllowJoinWithMuteAudio",
830
+ value: function setAllowJoinWithMuteAudio(checked) {
831
+ this.joinWithMuteAudio = checked;
832
+ }
833
+ }, {
834
+ key: "openMuteAllDialog",
835
+ value: function openMuteAllDialog() {
836
+ this.allowUnmute = this.allowUnmuteSelfAudio;
837
+ this.joinWithMuteAudio = this.allowJoinWithMuteAudio;
838
+ this._dialogProvider.openDialog(FcrUIDialogKey.MUTE_ALL);
839
+ }
840
+ }, {
841
+ key: "handlerRoomControlAction",
842
+ value: function handlerRoomControlAction(action, data) {
843
+ console.log('handlerRoomControlAction', action, data);
844
+ switch (action) {
845
+ case FcrUIRoomControlType.MUTE_ALL_AUDIO:
846
+ this._muteAllAudio(data.allowUnmute, data.joinWithMuteAudio);
847
+ break;
848
+ case FcrUIRoomControlType.UNMUTE_ALL_AUDIO:
849
+ this._unmuteAllAudio();
850
+ break;
851
+ case FcrUIRoomControlType.ALLOW_ATTENDEE_TO_UNMUTE:
852
+ this._enableSelfUnmute(data);
853
+ break;
854
+ case FcrUIRoomControlType.ALLOW_ATTENDEE_TO_OPEN_CAMERA:
855
+ this._enableOpenVideo(data);
856
+ break;
857
+ case FcrUIRoomControlType.REVOKE_HOST:
858
+ this._revokeHost();
859
+ break;
860
+ case FcrUIRoomControlType.LOCK_ROOM:
861
+ this._lockRoom(data);
862
+ break;
863
+ case FcrUIRoomControlType.RENAME:
864
+ this._enableRename(data);
865
+ break;
866
+ case FcrUIRoomControlType.JOIN_WITH_MUTE_AUDIO:
867
+ this.enableJoinWithMuteAudio(data);
868
+ break;
869
+ case FcrUIRoomControlType.ACTION_REVOKE_HOST_BY_TICKET:
870
+ this._revokeHostByTicket();
871
+ break;
872
+ case FcrUIRoomControlType.ACTION_CHANGE_NAME:
873
+ this._openChangeNameDialog(this.localUser.userId, this.activeTab);
874
+ break;
875
+ }
876
+ }
877
+ }, {
878
+ key: "moveParticipantFromDialogToAside",
879
+ value: function moveParticipantFromDialogToAside() {
880
+ this.closeParticipantsWindow();
881
+ this.setParticipantsRenderAt('aside');
882
+ this.setLayoutAsideLayout({
883
+ participant: true
884
+ });
885
+ }
886
+ }, {
887
+ key: "_revokeHostByTicket",
888
+ value: function _revokeHostByTicket() {
889
+ var _this7 = this;
890
+ var hostKey = '';
891
+ var errMessage = {
892
+ '732403104': transI18n('fmt_hostkey_meetingroom_toast_unable_to_claim_host'),
893
+ '732403105': transI18n('fmt_hostkey_input_hostkey_tips_incorrect_key')
894
+ };
895
+ var dialogId = this.openConfirmDialog({
896
+ title: transI18n('fmt_hostkey_input_hostkey_title_enter_key'),
897
+ content: /*#__PURE__*/_jsx(FcrConfirmInput, {
898
+ type: "number",
899
+ placeholder: transI18n('fmt_hostkey_input_hostkey_text_hint_enter_key'),
900
+ onChange: function onChange(value) {
901
+ hostKey = String(value);
902
+ }
903
+ }),
904
+ alignCenter: true,
905
+ closable: false,
906
+ onOk: function () {
907
+ var _onOk = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
908
+ return _regeneratorRuntime.wrap(function (_context) {
909
+ while (1) switch (_context.prev = _context.next) {
910
+ case 0:
911
+ return _context.abrupt("return", _this7._userControl.claimHost(hostKey).then(function (res) {
912
+ _this7._showToast({
913
+ key: FcrUIToastKey.FMT_HOSTKEY_MEETINGROOM_TOAST_NOW_HOST
914
+ });
915
+ })["catch"](function (err) {
916
+ if (err.code === '732403105') return {
917
+ message: errMessage === null || errMessage === void 0 ? void 0 : errMessage["".concat(err.code)]
918
+ };
919
+ if (err.code === 0) {
920
+ _this7._showToast({
921
+ key: FcrUIToastKey.FMT_HOSTKEY_MEETINGROOM_TOAST_NOW_HOST
922
+ });
923
+ } else {
924
+ _this7._showToast({
925
+ key: FcrUIToastKey.ERR_MESSAGE,
926
+ params: {
927
+ message: (errMessage === null || errMessage === void 0 ? void 0 : errMessage["".concat(err.code)]) || err.message
928
+ }
929
+ });
930
+ }
931
+ }));
932
+ case 1:
933
+ case "end":
934
+ return _context.stop();
935
+ }
936
+ }, _callee);
937
+ }));
938
+ function onOk() {
939
+ return _onOk.apply(this, arguments);
940
+ }
941
+ return onOk;
942
+ }(),
943
+ onCancel: function onCancel() {
944
+ _this7.closeConfirmDialog(dialogId);
945
+ }
946
+ });
947
+ }
948
+
949
+ // room control actions
950
+ }, {
951
+ key: "_muteAllAudio",
952
+ value: function _muteAllAudio(allowUnmute, JoinWithMuteAudio) {
953
+ var _this8 = this;
954
+ // 使用 runInAction 将所有状态更新包装在一个事务中,避免多次渲染
955
+ runInAction(function () {
956
+ _this8._privilegeProvider.allowJoinWithMutedAudio(JoinWithMuteAudio);
957
+ _this8._privilegeProvider.allowStartAudio(allowUnmute);
958
+ _this8._privilegeProvider.muteAll();
959
+ _this8._sharedSecurityDataSource.setCheckedStateMap(_objectSpread(_objectSpread({}, _this8.checkedStateMap), {
960
+ enableJoinWithAudio: JoinWithMuteAudio,
961
+ unmuteYourself: allowUnmute
962
+ }));
963
+ });
964
+ this._showToast({
965
+ key: FcrUIToastKey.FMT_UIMANAGER_TIPS_ALLMUTED
966
+ });
967
+ }
968
+ }, {
969
+ key: "_unmuteAllAudio",
970
+ value: function _unmuteAllAudio() {
971
+ var _this9 = this;
972
+ this._setPrivilegeAndUpdateUI(function () {
973
+ return _this9._privilegeProvider.allowStartAudio(true);
974
+ }, {
975
+ unmuteYourself: true
976
+ });
977
+ }
978
+
979
+ //允许自我解除静音
980
+ }, {
981
+ key: "_enableSelfUnmute",
982
+ value: function _enableSelfUnmute(enable) {
983
+ var _this0 = this;
984
+ this._setPrivilegeAndUpdateUI(function () {
985
+ return _this0._privilegeProvider.allowStartAudio(enable);
986
+ }, {
987
+ unmuteYourself: enable
988
+ });
989
+ }
990
+ }, {
991
+ key: "_enableOpenVideo",
992
+ value: function _enableOpenVideo(enable) {
993
+ var _this1 = this;
994
+ this._setPrivilegeAndUpdateUI(function () {
995
+ return _this1._privilegeProvider.allowStartVideo(enable);
996
+ }, {
997
+ startVideo: enable
998
+ });
999
+ }
1000
+ }, {
1001
+ key: "_revokeHost",
1002
+ value: function _revokeHost() {
1003
+ if (!this._privilegeProvider.hasRevokeHostPermission() || this.localUser.userRole === FcrUserRole.HOST) {
1004
+ return;
1005
+ }
1006
+ this._userControl.revokeHost();
1007
+ }
1008
+ }, {
1009
+ key: "_lockRoom",
1010
+ value: function _lockRoom(enable) {
1011
+ var _this10 = this;
1012
+ this._showToast({
1013
+ key: enable ? FcrUIToastKey.FMT_SECURITY_TIPS_LOCK_MEETING_ON : FcrUIToastKey.FMT_SECURITY_TIPS_LOCK_MEETING_OFF
1014
+ });
1015
+ this._setPrivilegeAndUpdateUI(function () {
1016
+ return _this10._privilegeProvider.enableLockedRoom(enable);
1017
+ }, {
1018
+ lockRoom: enable
1019
+ });
1020
+ }
1021
+ }, {
1022
+ key: "_enableRename",
1023
+ value: function _enableRename(enable) {
1024
+ var _this11 = this;
1025
+ this._setPrivilegeAndUpdateUI(function () {
1026
+ return _this11._privilegeProvider.allowChangeUserName(enable);
1027
+ }, {
1028
+ rename: enable
1029
+ });
1030
+ }
1031
+
1032
+ // 所有人加入会议时静音
1033
+ }, {
1034
+ key: "enableJoinWithMuteAudio",
1035
+ value: function enableJoinWithMuteAudio(enable) {
1036
+ var _this12 = this;
1037
+ this._setPrivilegeAndUpdateUI(function () {
1038
+ return _this12._privilegeProvider.allowJoinWithMutedAudio(enable);
1039
+ }, {
1040
+ enableJoinWithAudio: enable
1041
+ });
1042
+ }
1043
+ }, {
1044
+ key: "moveToMainRoomByUserIds",
1045
+ value: function moveToMainRoomByUserIds(userId) {
1046
+ if (this._waitingRoomControl) {
1047
+ this._waitingRoomControl.moveToMainRoomByUserIds(userId);
1048
+ }
1049
+ }
1050
+ }, {
1051
+ key: "kickOutWaitingRoomAllMember",
1052
+ value: function () {
1053
+ var _kickOutWaitingRoomAllMember = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(type) {
1054
+ var _this$_waitingRoomUse;
1055
+ return _regeneratorRuntime.wrap(function (_context2) {
1056
+ while (1) switch (_context2.prev = _context2.next) {
1057
+ case 0:
1058
+ _context2.next = 1;
1059
+ return (_this$_waitingRoomUse = this._waitingRoomUserControl) === null || _this$_waitingRoomUse === void 0 ? void 0 : _this$_waitingRoomUse.kickOutByUserRoles([FcrUserRole.PARTICIPANT], type);
1060
+ case 1:
1061
+ this._showToast({
1062
+ key: FcrUIToastKey.FMT_WAITINGROOM_MOBILE_MEMBERLIST_TIPS_ALL_REMOVED
1063
+ });
1064
+ case 2:
1065
+ case "end":
1066
+ return _context2.stop();
1067
+ }
1068
+ }, _callee2, this);
1069
+ }));
1070
+ function kickOutWaitingRoomAllMember(_x) {
1071
+ return _kickOutWaitingRoomAllMember.apply(this, arguments);
1072
+ }
1073
+ return kickOutWaitingRoomAllMember;
1074
+ }()
1075
+ }, {
1076
+ key: "moveToMainRoomAllMember",
1077
+ value: function () {
1078
+ var _moveToMainRoomAllMember = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
1079
+ var _this$_waitingRoomCon;
1080
+ return _regeneratorRuntime.wrap(function (_context3) {
1081
+ while (1) switch (_context3.prev = _context3.next) {
1082
+ case 0:
1083
+ _context3.next = 1;
1084
+ return (_this$_waitingRoomCon = this._waitingRoomControl) === null || _this$_waitingRoomCon === void 0 ? void 0 : _this$_waitingRoomCon.moveToMainRoomByUserRoles([FcrUserRole.PARTICIPANT]);
1085
+ case 1:
1086
+ this._showToast({
1087
+ key: FcrUIToastKey.FMT_WAITINGROOM_MOBILE_MEMBERLIST_TIPS_ALL_AMITTED
1088
+ });
1089
+ case 2:
1090
+ case "end":
1091
+ return _context3.stop();
1092
+ }
1093
+ }, _callee3, this);
1094
+ }));
1095
+ function moveToMainRoomAllMember() {
1096
+ return _moveToMainRoomAllMember.apply(this, arguments);
1097
+ }
1098
+ return moveToMainRoomAllMember;
1099
+ }()
1100
+ }, {
1101
+ key: "removeWaitingRoomUser",
1102
+ value: function removeWaitingRoomUser(userId, type) {
1103
+ var _this$_waitingRoomUse2;
1104
+ (_this$_waitingRoomUse2 = this._waitingRoomUserControl) === null || _this$_waitingRoomUse2 === void 0 || _this$_waitingRoomUse2.kickOutByUserIds([userId], type);
1105
+ }
1106
+ }, {
1107
+ key: "removePin",
1108
+ value: function removePin(userId) {
1109
+ var streamId = this._getPinStreamIdFromUser(userId);
1110
+ if (streamId) {
1111
+ this._sharedPinDataSource.removePin(streamId);
1112
+ }
1113
+ }
1114
+ }, {
1115
+ key: "addPin",
1116
+ value: function addPin(userId) {
1117
+ var shouldHideMyVideo = this._sharedSettingDataSource.setting.shouldHideMyVideo;
1118
+ if (shouldHideMyVideo && userId === this.localUser.userId) {
1119
+ this._showToast({
1120
+ key: FcrUIToastKey.FMT_INTERNALSETTING_OTHER_HIDE_MY_WINDOW_PIN_CANCELLED
1121
+ });
1122
+ return;
1123
+ }
1124
+ var streamId = this._getPinStreamIdFromUser(userId);
1125
+ if (streamId) {
1126
+ this._sharedPinDataSource.addPin(streamId);
1127
+ }
1128
+ }
1129
+ }, {
1130
+ key: "_getPinStreamIdFromUser",
1131
+ value: function _getPinStreamIdFromUser(userId) {
1132
+ var _streams$find;
1133
+ var user = this.mainRoomUserMap.get(userId);
1134
+ var isPSTN = (user === null || user === void 0 ? void 0 : user.userInfo.connectorType) === FcrRoomConnectorType.PSTN;
1135
+ var streams = user === null || user === void 0 ? void 0 : user.streams;
1136
+ var streamId = streams === null || streams === void 0 || (_streams$find = streams.find(function (stream) {
1137
+ return stream.videoSourceType === FcrVideoSourceType.CAMERA || isPSTN && stream.videoSourceType === FcrVideoSourceType.NONE;
1138
+ })) === null || _streams$find === void 0 ? void 0 : _streams$find.streamId;
1139
+ return streamId;
1140
+ }
1141
+ }, {
1142
+ key: "_getDefaultUserData",
1143
+ value:
1144
+ /**
1145
+ * 获取默认用户数据(用于错误处理)
1146
+ * @returns 默认用户数据
1147
+ */
1148
+ function _getDefaultUserData() {
1149
+ return {
1150
+ userId: '',
1151
+ userName: '',
1152
+ isHost: false,
1153
+ isMe: false,
1154
+ hasAudio: false,
1155
+ hasVideo: false,
1156
+ isScreenSharing: false,
1157
+ audioDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.AUDIO.NONE,
1158
+ videoDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.VIDEO.NONE,
1159
+ userType: USER_FORMAT_CONFIG.USER_TYPES.NORMAL,
1160
+ userRole: FcrUserRole.PARTICIPANT,
1161
+ isSpotlight: false,
1162
+ isBoardActive: false,
1163
+ allowedOperations: [],
1164
+ isPin: false,
1165
+ hideAudioConnectIcon: false,
1166
+ avatar: ''
1167
+ };
1168
+ }
1169
+
1170
+ /**
1171
+ * 获取用户基础信息
1172
+ * @param user 用户数据
1173
+ * @param isSelf 是否为当前用户
1174
+ * @returns 基础信息对象
1175
+ */
1176
+ }, {
1177
+ key: "_getUserBaseInfo",
1178
+ value: function _getUserBaseInfo(user, isSelf) {
1179
+ return {
1180
+ userId: user.userId,
1181
+ userName: user.userInfo.userName,
1182
+ isHost: user.userInfo.userRole === FcrUserRole.HOST,
1183
+ isMe: isSelf,
1184
+ userRole: user.userInfo.userRole,
1185
+ isBoardActive: user.userInfo.isBoardActive,
1186
+ avatar: user.userInfo.avatar,
1187
+ allowedOperations: this.allowedOperations(user.userId, user.userInfo.userRole),
1188
+ isPin: this.checkIsPin(user.userId),
1189
+ hideAudioConnectIcon: false
1190
+ };
1191
+ }
1192
+
1193
+ /**
1194
+ * 获取用户设备信息
1195
+ * @param user 用户数据
1196
+ * @param userStreams 用户流数据
1197
+ * @param isSelf 是否为当前用户
1198
+ * @returns 设备信息对象
1199
+ */
1200
+ }, {
1201
+ key: "_getUserDeviceInfo",
1202
+ value: function _getUserDeviceInfo(user, userStreams, isSelf) {
1203
+ var connectorType = user.userInfo.connectorType;
1204
+ switch (connectorType) {
1205
+ case FcrRoomConnectorType.NONE:
1206
+ return this._getNormalUserDeviceInfo(userStreams, isSelf);
1207
+ case FcrRoomConnectorType.PSTN:
1208
+ return this._getPstnUserDeviceInfo(userStreams);
1209
+ case FcrRoomConnectorType.SIP:
1210
+ case FcrRoomConnectorType.H323:
1211
+ return this._getSipOrH323UserDeviceInfo(userStreams);
1212
+ default:
1213
+ return this._getDefaultDeviceInfo();
1214
+ }
1215
+ }
1216
+
1217
+ /**
1218
+ * 获取普通用户(电脑客户端)的设备信息
1219
+ * @param userStreams 用户流数据
1220
+ * @param isSelf 是否为当前用户
1221
+ * @returns 设备信息对象
1222
+ */
1223
+ }, {
1224
+ key: "_getNormalUserDeviceInfo",
1225
+ value: function _getNormalUserDeviceInfo(userStreams, isSelf) {
1226
+ var defaultStream = this._findStreamByVideoSourceType(userStreams, FcrVideoSourceType.CAMERA);
1227
+ var pstnStream = this._findStreamByConnectorType(userStreams, FcrRoomConnectorType.PSTN);
1228
+ var hasVideo = isSelf ? this._deviceStore.cameraEnabled : this._hasVideoPublishedAndStarted(defaultStream);
1229
+ if (pstnStream) {
1230
+ // 有PSTN流,使用电话麦克风
1231
+ return {
1232
+ audioDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.AUDIO.PHONE_MIC,
1233
+ videoDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.VIDEO.COMPUTER_CAM,
1234
+ userType: USER_FORMAT_CONFIG.USER_TYPES.NORMAL,
1235
+ hasAudio: pstnStream.audioSourceState === FcrMediaSourceState.OPEN,
1236
+ hasVideo: hasVideo
1237
+ };
1238
+ } else {
1239
+ // 普通电脑客户端
1240
+ return {
1241
+ audioDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.AUDIO.COMPUTER_MIC,
1242
+ videoDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.VIDEO.COMPUTER_CAM,
1243
+ userType: USER_FORMAT_CONFIG.USER_TYPES.NORMAL,
1244
+ hasAudio: isSelf ? this._deviceStore.microphoneEnabled : this._hasAudioPublishedAndStarted(defaultStream),
1245
+ hasVideo: hasVideo
1246
+ };
1247
+ }
1248
+ }
1249
+
1250
+ /**
1251
+ * 获取PSTN电话用户的设备信息
1252
+ * @param userStreams 用户流数据
1253
+ * @returns 设备信息对象
1254
+ */
1255
+ }, {
1256
+ key: "_getPstnUserDeviceInfo",
1257
+ value: function _getPstnUserDeviceInfo(userStreams) {
1258
+ var pstnStream = this._findStreamByConnectorType(userStreams, FcrRoomConnectorType.PSTN);
1259
+ return {
1260
+ audioDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.AUDIO.PHONE_MIC,
1261
+ videoDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.VIDEO.NONE,
1262
+ userType: USER_FORMAT_CONFIG.USER_TYPES.PHONE,
1263
+ hasAudio: this._hasAudioPublishedAndStarted(pstnStream),
1264
+ hasVideo: false
1265
+ };
1266
+ }
1267
+
1268
+ /**
1269
+ * 获取SIP/H323会议系统用户的设备信息
1270
+ * @param userStreams 用户流数据
1271
+ * @returns 设备信息对象
1272
+ */
1273
+ }, {
1274
+ key: "_getSipOrH323UserDeviceInfo",
1275
+ value: function _getSipOrH323UserDeviceInfo(userStreams) {
1276
+ var sipOrH323Stream = this._findSipOrH323Stream(userStreams);
1277
+ return {
1278
+ audioDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.AUDIO.PHONE_MIC,
1279
+ videoDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.VIDEO.COMPUTER_CAM,
1280
+ userType: USER_FORMAT_CONFIG.USER_TYPES.MEETING_SYSTEM,
1281
+ hasAudio: this._hasAudioPublishedAndStarted(sipOrH323Stream),
1282
+ hasVideo: this._hasVideoPublishedAndStarted(sipOrH323Stream)
1283
+ };
1284
+ }
1285
+
1286
+ /**
1287
+ * 获取默认设备信息
1288
+ * @returns 默认设备信息对象
1289
+ */
1290
+ }, {
1291
+ key: "_getDefaultDeviceInfo",
1292
+ value: function _getDefaultDeviceInfo() {
1293
+ return {
1294
+ audioDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.AUDIO.NONE,
1295
+ videoDeviceType: USER_FORMAT_CONFIG.DEVICE_TYPES.VIDEO.NONE,
1296
+ userType: USER_FORMAT_CONFIG.USER_TYPES.NORMAL,
1297
+ hasAudio: false,
1298
+ hasVideo: false
1299
+ };
1300
+ }
1301
+
1302
+ /**
1303
+ * 获取用户流状态信息
1304
+ * @param user 用户数据
1305
+ * @param userStreams 用户流数据
1306
+ * @returns 流状态信息对象
1307
+ */
1308
+ }, {
1309
+ key: "_getUserStreamInfo",
1310
+ value: function _getUserStreamInfo(user, userStreams) {
1311
+ var _this13 = this;
1312
+ var hasShareScreen = userStreams.some(function (stream) {
1313
+ return stream.videoSourceType === FcrVideoSourceType.SCREEN;
1314
+ });
1315
+ var isSpotlight = userStreams.some(function (stream) {
1316
+ return stream.streamId === _this13.spotlightStreamId;
1317
+ });
1318
+ return {
1319
+ isScreenSharing: !!hasShareScreen,
1320
+ isSpotlight: isSpotlight
1321
+ };
1322
+ }
1323
+
1324
+ /**
1325
+ * 根据视频源类型查找流
1326
+ * @param userStreams 用户流数组
1327
+ * @param videoSourceType 视频源类型
1328
+ * @returns 找到的流或undefined
1329
+ */
1330
+ }, {
1331
+ key: "_findStreamByVideoSourceType",
1332
+ value: function _findStreamByVideoSourceType(userStreams, videoSourceType) {
1333
+ return userStreams.find(function (stream) {
1334
+ return stream.videoSourceType === videoSourceType;
1335
+ });
1336
+ }
1337
+
1338
+ /**
1339
+ * 根据连接器类型查找流
1340
+ * @param userStreams 用户流数组
1341
+ * @param connectorType 连接器类型
1342
+ * @returns 找到的流或undefined
1343
+ */
1344
+ }, {
1345
+ key: "_findStreamByConnectorType",
1346
+ value: function _findStreamByConnectorType(userStreams, connectorType) {
1347
+ return userStreams.find(function (stream) {
1348
+ return stream.connectorType === connectorType;
1349
+ });
1350
+ }
1351
+
1352
+ /**
1353
+ * 查找SIP或H323流
1354
+ * @param userStreams 用户流数组
1355
+ * @returns 找到的流或undefined
1356
+ */
1357
+ }, {
1358
+ key: "_findSipOrH323Stream",
1359
+ value: function _findSipOrH323Stream(userStreams) {
1360
+ return userStreams.find(function (stream) {
1361
+ return [FcrRoomConnectorType.SIP, FcrRoomConnectorType.H323].includes(stream.connectorType);
1362
+ });
1363
+ }
1364
+
1365
+ /**
1366
+ * 检查流是否有音频发布并已启动
1367
+ * @param stream 流信息
1368
+ * @returns 是否有音频发布并已启动
1369
+ */
1370
+ }, {
1371
+ key: "_hasAudioPublishedAndStarted",
1372
+ value: function _hasAudioPublishedAndStarted(stream) {
1373
+ return (stream === null || stream === void 0 ? void 0 : stream.audioSourceState) === FcrMediaSourceState.OPEN;
1374
+ }
1375
+
1376
+ /**
1377
+ * 检查流是否有视频发布并已启动
1378
+ * @param stream 流信息
1379
+ * @returns 是否有视频发布并已启动
1380
+ */
1381
+ }, {
1382
+ key: "_hasVideoPublishedAndStarted",
1383
+ value: function _hasVideoPublishedAndStarted(stream) {
1384
+ return (stream === null || stream === void 0 ? void 0 : stream.videoSourceState) === FcrMediaSourceState.OPEN;
1385
+ }
1386
+
1387
+ // [其他所有私有方法的实现...]
1388
+ }, {
1389
+ key: "_handleRemoteUsersJoined",
1390
+ value: function _handleRemoteUsersJoined(roomId, events) {
1391
+ if (events.some(function (user) {
1392
+ return user.userInfo.userRole === FcrUserRole.HOST;
1393
+ })) {
1394
+ this.showBecomeHostButton = false;
1395
+ this._showToast({
1396
+ key: FcrUIToastKey.FMT_MEETING_TOAST_HOST_JOIN_MEETING
1397
+ });
1398
+ }
1399
+ }
1400
+ }, {
1401
+ key: "_handleUserInfoUpdated",
1402
+ value: function _handleUserInfoUpdated(roomId, event) {
1403
+ if (event.reason === FcrUserUpdatedReason.ROLE && event.modifiedUser.userRole === FcrUserRole.HOST) {
1404
+ this.showBecomeHostButton = false;
1405
+ }
1406
+ }
1407
+ }, {
1408
+ key: "_handleUserCountUpdated",
1409
+ value: function _handleUserCountUpdated(roomId, count) {
1410
+ this._userCount = count;
1411
+ }
1412
+ }, {
1413
+ key: "_handleUserPropertiesUpdated",
1414
+ value: function _handleUserPropertiesUpdated() {
1415
+ this._getOutputLanguage();
1416
+ }
1417
+ }, {
1418
+ key: "handleConfirmChangeName",
1419
+ value: function () {
1420
+ var _handleConfirmChangeName = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4() {
1421
+ var _this14 = this;
1422
+ return _regeneratorRuntime.wrap(function (_context4) {
1423
+ while (1) switch (_context4.prev = _context4.next) {
1424
+ case 0:
1425
+ _context4.next = 1;
1426
+ return this._userControl.updateUserName(this._renamingUserId, this.newName);
1427
+ case 1:
1428
+ runInAction(function () {
1429
+ _this14._closeChangeNameDialog();
1430
+ _this14._showToast({
1431
+ key: FcrUIToastKey.FMT_ADDITIONAL_TIPS_NICKNAME_CHANGE_SUCCESS
1432
+ });
1433
+ });
1434
+ case 2:
1435
+ case "end":
1436
+ return _context4.stop();
1437
+ }
1438
+ }, _callee4, this);
1439
+ }));
1440
+ function handleConfirmChangeName() {
1441
+ return _handleConfirmChangeName.apply(this, arguments);
1442
+ }
1443
+ return handleConfirmChangeName;
1444
+ }()
1445
+ }, {
1446
+ key: "handleCancelChangeName",
1447
+ value: function handleCancelChangeName() {
1448
+ this._closeChangeNameDialog();
1449
+ }
1450
+ }, {
1451
+ key: "_closeChangeNameDialog",
1452
+ value: function _closeChangeNameDialog() {
1453
+ this.newName = '';
1454
+ this._renamingUserId = '';
1455
+ this._renamingUserName = '';
1456
+ this._dialogProvider.closeDialog(FcrUIDialogKey.RENAME);
1457
+ }
1458
+ }, {
1459
+ key: "_getOutputLanguage",
1460
+ value: function () {
1461
+ var _getOutputLanguage2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5() {
1462
+ var _this15 = this;
1463
+ var interpreterInputLanguageList, index, user, language;
1464
+ return _regeneratorRuntime.wrap(function (_context5) {
1465
+ while (1) switch (_context5.prev = _context5.next) {
1466
+ case 0:
1467
+ interpreterInputLanguageList = [];
1468
+ for (index = 0; index < this.userList.length; index++) {
1469
+ user = this.userList[index];
1470
+ language = this._userControl.getUserPropertiesByKeyPath('interpreterLangCode', user.userId);
1471
+ if (language) {
1472
+ interpreterInputLanguageList.push({
1473
+ userId: user.userId,
1474
+ language: language
1475
+ });
1476
+ }
1477
+ }
1478
+ runInAction(function () {
1479
+ _this15.interpreterInputLanguageList = interpreterInputLanguageList;
1480
+ });
1481
+ case 1:
1482
+ case "end":
1483
+ return _context5.stop();
1484
+ }
1485
+ }, _callee5, this);
1486
+ }));
1487
+ function _getOutputLanguage() {
1488
+ return _getOutputLanguage2.apply(this, arguments);
1489
+ }
1490
+ return _getOutputLanguage;
1491
+ }()
1492
+ }, {
1493
+ key: "handlerUserAction",
1494
+ value: function handlerUserAction(action, userId) {
1495
+ var roomType = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.activeTab;
1496
+ this.logger.info("handler User Action: ".concat(action, ", target userId: ").concat(userId));
1497
+ switch (action) {
1498
+ case ParticipantActionType.MUTE_AUDIO:
1499
+ this._muteUserAudio(userId);
1500
+ break;
1501
+ case ParticipantActionType.UNMUTE_AUDIO:
1502
+ this._unmuteUserAudio(userId);
1503
+ break;
1504
+ case ParticipantActionType.MUTE_VIDEO:
1505
+ this._muteUserVideo(userId);
1506
+ break;
1507
+ case ParticipantActionType.UNMUTE_VIDEO:
1508
+ this._unmuteUserVideo(userId);
1509
+ break;
1510
+ case ParticipantActionType.PRIVATE_CHAT:
1511
+ this._privateChat(userId, roomType);
1512
+ break;
1513
+ case ParticipantActionType.KICK_OUT:
1514
+ this._kickOutUser(userId, roomType);
1515
+ break;
1516
+ case ParticipantActionType.ADD_PIN:
1517
+ this.addPin(userId);
1518
+ break;
1519
+ case ParticipantActionType.REMOVE_PIN:
1520
+ this.removePin(userId);
1521
+ break;
1522
+ case ParticipantActionType.SET_AS_HOST:
1523
+ this._setAsHost(userId);
1524
+ break;
1525
+ case ParticipantActionType.SET_AS_CO_HOST:
1526
+ this._setAsCoHost(userId);
1527
+ break;
1528
+ case ParticipantActionType.SET_AS_ATTENDEE:
1529
+ this._setAsAttendee(userId);
1530
+ break;
1531
+ case ParticipantActionType.RENAME_IN_MEETING:
1532
+ this._openChangeNameDialog(userId, roomType);
1533
+ break;
1534
+ case ParticipantActionType.PUT_IN_WAITING_ROOM:
1535
+ this._moveToWaitingRoomByUserId(userId);
1536
+ break;
1537
+ }
1538
+ }
1539
+ }, {
1540
+ key: "handleActiveTab",
1541
+ value: function handleActiveTab(tab) {
1542
+ this.activeTab = tab;
1543
+ if (this.activeTab === FcrUIRoomType.WAITING_ROOM) {
1544
+ this._sharedWaitingRoomDataSource.unReadState = false;
1545
+ }
1546
+ }
1547
+
1548
+ // [所有其他方法的完整实现...]
1549
+
1550
+ /**
1551
+ * 检查是否在会话持续时间内,避免重复发送请求
1552
+ * @param userId 用户ID
1553
+ * @param timestampMap 时间戳映射表
1554
+ * @returns 如果在持续时间内返回true,否则返回false
1555
+ */
1556
+ }, {
1557
+ key: "_isWithinSessionDuration",
1558
+ value: function _isWithinSessionDuration(userId, timestampMap) {
1559
+ var _timestampMap$get;
1560
+ var now = Date.now();
1561
+ return now - ((_timestampMap$get = timestampMap.get(userId)) !== null && _timestampMap$get !== void 0 ? _timestampMap$get : 0) <= SESSION_DURATION * 1000;
1562
+ }
1563
+
1564
+ /**
1565
+ * 设置权限并更新UI状态
1566
+ * 设置权限后需要同步更新UI状态
1567
+ * @param setPrivilege 设置权限的函数
1568
+ * @param uiState 要更新的UI状态
1569
+ */
1570
+ }, {
1571
+ key: "_setPrivilegeAndUpdateUI",
1572
+ value: function _setPrivilegeAndUpdateUI(setPrivilege, uiState) {
1573
+ setPrivilege();
1574
+ this._sharedSecurityDataSource.setCheckedStateMap(_objectSpread(_objectSpread({}, this.checkedStateMap), uiState));
1575
+ }
1576
+
1577
+ /**
1578
+ * 显示toast消息的辅助方法
1579
+ * @param message 消息内容
1580
+ * @param type 消息类型,默认为'normal'
1581
+ */
1582
+ }, {
1583
+ key: "_showToast",
1584
+ value: function _showToast(param) {
1585
+ this._messageProvider.showToastByKey(param);
1586
+ }
1587
+
1588
+ /**
1589
+ * 打开对话框的辅助方法
1590
+ * @param dialogKey 对话框键值
1591
+ */
1592
+ }, {
1593
+ key: "_openDialog",
1594
+ value: function _openDialog(dialogKey, params) {
1595
+ this._dialogProvider.openDialog(dialogKey, params);
1596
+ }
1597
+
1598
+ /**
1599
+ * 更新流发布权限的辅助方法
1600
+ * @param streamId 流ID
1601
+ * @param audioPrivilege 音频权限
1602
+ * @param videoPrivilege 视频权限
1603
+ */
1604
+ }, {
1605
+ key: "_updateStreamPrivilege",
1606
+ value: function _updateStreamPrivilege(streamId, audioPrivilege, videoPrivilege) {
1607
+ this._streamControl.updatePublishPrivilegeOfStreams(_defineProperty({}, streamId, {
1608
+ audioPrivilege: audioPrivilege,
1609
+ videoPrivilege: videoPrivilege
1610
+ }));
1611
+ }
1612
+
1613
+ /**
1614
+ * 获取用户的目标音频流
1615
+ * @param userId 用户ID
1616
+ * @returns 目标流信息,包含硬件设备流和普通客户端流
1617
+ */
1618
+ }, {
1619
+ key: "_getUserTargetAudioStreams",
1620
+ value: function _getUserTargetAudioStreams(userId) {
1621
+ var userStreams = this._streamControl.getStreamsByUserId(userId);
1622
+
1623
+ // 查找硬件设备流(PSTN电话、SIP、H323等外部设备连接)
1624
+ var hardwareDeviceStream = userStreams.find(function (stream) {
1625
+ return stream.connectorType !== FcrRoomConnectorType.NONE;
1626
+ });
1627
+
1628
+ // 查找普通客户端流(来自电脑摄像头/麦克风的流)
1629
+ var normalClientStream = userStreams.find(function (stream) {
1630
+ return stream.videoSourceType === FcrVideoSourceType.CAMERA;
1631
+ });
1632
+ return {
1633
+ hardwareDeviceStream: hardwareDeviceStream,
1634
+ normalClientStream: normalClientStream,
1635
+ isLocalUser: userId === this.localUser.userId
1636
+ };
1637
+ }
1638
+
1639
+ /**
1640
+ * 静音指定用户的音频
1641
+ * @param userId 用户ID
1642
+ */
1643
+ }, {
1644
+ key: "_muteUserAudio",
1645
+ value: function _muteUserAudio(userId) {
1646
+ var _this$_getUserTargetA = this._getUserTargetAudioStreams(userId),
1647
+ hardwareDeviceStream = _this$_getUserTargetA.hardwareDeviceStream,
1648
+ normalClientStream = _this$_getUserTargetA.normalClientStream,
1649
+ isLocalUser = _this$_getUserTargetA.isLocalUser;
1650
+
1651
+ // 如果是本地用户,需要先禁用本地麦克风设备
1652
+ if (isLocalUser) {
1653
+ this._deviceStreamStore.enableMicrophoneWithPreCheck(false);
1654
+ }
1655
+
1656
+ // 优先选择硬件设备流,如果没有则选择普通客户端流
1657
+ var targetStream = hardwareDeviceStream !== null && hardwareDeviceStream !== void 0 ? hardwareDeviceStream : normalClientStream;
1658
+
1659
+ // 如果找到目标流,则更新流的发布权限来静音
1660
+ if (targetStream) {
1661
+ this._updateStreamPrivilege(targetStream.streamId, FcrStreamPrivilegeOperation.NOPRIVILEGE,
1662
+ // 移除音频发布权限(静音)
1663
+ FcrStreamPrivilegeOperation.NOOPERATION // 视频权限保持不变
1664
+ );
1665
+ }
1666
+ }
1667
+
1668
+ /**
1669
+ * 取消静音指定用户的音频
1670
+ * @param userId 用户ID
1671
+ */
1672
+ }, {
1673
+ key: "_unmuteUserAudio",
1674
+ value: function _unmuteUserAudio(userId) {
1675
+ var _this$_getUserTargetA2 = this._getUserTargetAudioStreams(userId),
1676
+ hardwareDeviceStream = _this$_getUserTargetA2.hardwareDeviceStream,
1677
+ isLocalUser = _this$_getUserTargetA2.isLocalUser;
1678
+
1679
+ // 如果是硬件设备流,直接更新流的发布权限来取消静音
1680
+ if (hardwareDeviceStream) {
1681
+ this._updateStreamPrivilege(hardwareDeviceStream.streamId, FcrStreamPrivilegeOperation.HAS_PRIVILEGE, FcrStreamPrivilegeOperation.NOOPERATION);
1682
+ return;
1683
+ }
1684
+
1685
+ // 如果是本地用户,直接启用本地麦克风(上面硬件已经处理了,所以从这里往后都不是硬件设备了)
1686
+ if (isLocalUser) {
1687
+ this._deviceStreamStore.enableMicrophoneWithPreCheck(true);
1688
+ return;
1689
+ }
1690
+ // 邀请对端开启麦克风
1691
+ // 检查是否在会话持续时间内,避免重复发送请求
1692
+ if (this._isWithinSessionDuration(userId, this._unmuteAudioTimestamp)) {
1693
+ return;
1694
+ }
1695
+ this._unmuteAudioTimestamp.set(userId, Date.now());
1696
+ this._peerSessionControl.startPeerSession({
1697
+ sessionKey: FcrUISessionKey.REQUEST_OPEN_MICROPHONE,
1698
+ receiverId: userId,
1699
+ duration: SESSION_DURATION,
1700
+ payload: {
1701
+ sender: this.localUser
1702
+ }
1703
+ });
1704
+ }
1705
+
1706
+ /**
1707
+ * 静音指定用户的视频
1708
+ * @param userId 用户ID
1709
+ */
1710
+ }, {
1711
+ key: "_muteUserVideo",
1712
+ value: function _muteUserVideo(userId) {
1713
+ var isSelf = userId === this.localUser.userId;
1714
+ if (isSelf) {
1715
+ this._deviceStreamStore.enableCameraWithPreCheck(false);
1716
+ return;
1717
+ }
1718
+ var targetUsers = this._streamControl.getStreamsByUserId(userId);
1719
+ var targetUser = targetUsers.find(function (stream) {
1720
+ return stream.videoSourceType === FcrVideoSourceType.CAMERA;
1721
+ });
1722
+ if (!targetUser) {
1723
+ return;
1724
+ }
1725
+ this._updateStreamPrivilege(targetUser.streamId, FcrStreamPrivilegeOperation.NOOPERATION, FcrStreamPrivilegeOperation.NOPRIVILEGE);
1726
+ }
1727
+ }, {
1728
+ key: "_unmuteUserVideo",
1729
+ value: function _unmuteUserVideo(userId) {
1730
+ var isSelf = userId === this.localUser.userId;
1731
+ if (isSelf) {
1732
+ this._deviceStreamStore.enableCameraWithPreCheck(true);
1733
+ return;
1734
+ }
1735
+ if (this._isWithinSessionDuration(userId, this._unmuteVideoTimestamp)) {
1736
+ return;
1737
+ }
1738
+ this._unmuteVideoTimestamp.set(userId, Date.now());
1739
+ this._peerSessionControl.startPeerSession({
1740
+ sessionKey: FcrUISessionKey.REQUEST_OPEN_CAMERA,
1741
+ receiverId: userId,
1742
+ duration: SESSION_DURATION,
1743
+ payload: {
1744
+ sender: this.localUser
1745
+ }
1746
+ });
1747
+ }
1748
+ }, {
1749
+ key: "_privateChat",
1750
+ value: function _privateChat(userId, roomType) {
1751
+ var userData = this._getUserListByRoomType(roomType).find(function (u) {
1752
+ return u.userId === userId;
1753
+ });
1754
+ if (userData) {
1755
+ var hasPermissionToSendPrivateMessage = this._privilegeProvider.hasPermissionToSendPrivateMessage(userData.userInfo.userRole);
1756
+ if (!hasPermissionToSendPrivateMessage) {
1757
+ this._showToast({
1758
+ key: FcrUIToastKey.FMT_ATTENDIES_TIPS_CHAT_OFF
1759
+ });
1760
+ return;
1761
+ }
1762
+ if (!this._privilegeProvider.permitPrivateChat(userId)) {
1763
+ return;
1764
+ }
1765
+ this._chatProvider.setPrivateChatTargetUser(userData.userInfo, roomType);
1766
+ // TODO:
1767
+ // if (isElectron() && this.screenSharingOwner?.userId === this.localUser.userId) {
1768
+ // this._sharedLayoutDataSource.setParticipantsRenderAt('dialog');
1769
+ // this._dialogProvider.openDialog(FcrUIDialogKey.CHAT);
1770
+ // return;
1771
+ // }
1772
+ // 打开私聊对话框
1773
+ var res = this.openChatWindow();
1774
+ if (res) {
1775
+ return;
1776
+ }
1777
+ if (this._sharedLayoutDataSource.chatRenderAt !== 'dialog') {
1778
+ this._sharedLayoutDataSource.setAsideLayout({
1779
+ chat: true
1780
+ });
1781
+ this._sharedChatDataSource.activeTab = roomType;
1782
+ } else {
1783
+ this._openDialog(FcrUIDialogKey.CHAT);
1784
+ }
1785
+ }
1786
+ }
1787
+ }, {
1788
+ key: "_setAsHost",
1789
+ value: function _setAsHost(userId) {
1790
+ this._showSetHostDialog(userId, FcrUserRole.HOST);
1791
+ }
1792
+ }, {
1793
+ key: "_setAsCoHost",
1794
+ value: function _setAsCoHost(userId) {
1795
+ this._showSetHostDialog(userId, FcrUserRole.COHOST);
1796
+ }
1797
+
1798
+ /**
1799
+ * 显示设置主持人/联席主持人对话框
1800
+ * @param userId 用户ID
1801
+ * @param type 角色类型
1802
+ */
1803
+ }, {
1804
+ key: "_showSetHostDialog",
1805
+ value: function _showSetHostDialog(userId, type) {
1806
+ var _this16 = this;
1807
+ var user = this.mainRoomUserMap.get(userId);
1808
+ if (!user) {
1809
+ this._showToast({
1810
+ key: FcrUIToastKey.FMT_UIMANAGER_TIPS_USERLEAFT
1811
+ });
1812
+ return;
1813
+ }
1814
+ var canSetHost = this._abilityProvider.isHostSupportedByPlatform(user.userInfo.platform);
1815
+ if (!canSetHost) {
1816
+ this._showToast({
1817
+ key: type === FcrUserRole.HOST ? FcrUIToastKey.FMT_ATTENDIES_TOAST_CANT_SETHOST : FcrUIToastKey.FMT_ATTENDIES_TOAST_CANT_SETCOHOST
1818
+ });
1819
+ return;
1820
+ }
1821
+ var username = user.userInfo.userName;
1822
+ var targetRole = this._getRoleDisplayName(type);
1823
+ this.openConfirmDialog({
1824
+ title: transI18n('fmt_uimanager_labels_Setas', {
1825
+ reason1: targetRole
1826
+ }),
1827
+ content: transI18n('fmt_uimanager_tips_designedas', {
1828
+ reason1: username,
1829
+ reason2: targetRole
1830
+ }),
1831
+ onOk: function onOk() {
1832
+ return _this16._handleSetHostConfirmation(userId, type);
1833
+ },
1834
+ okText: transI18n('fmt_uimanager_labels_Setas', {
1835
+ reason1: targetRole
1836
+ }),
1837
+ cancelText: transI18n('fmt_security_buttons_cancel'),
1838
+ closable: false,
1839
+ alignCenter: true
1840
+ }, 'UPDATE_USER_ROLE');
1841
+ }
1842
+
1843
+ /**
1844
+ * 获取角色显示名称
1845
+ * @param type 角色类型
1846
+ * @returns 角色显示名称
1847
+ */
1848
+ }, {
1849
+ key: "_getRoleDisplayName",
1850
+ value: function _getRoleDisplayName(type) {
1851
+ return type === FcrUserRole.HOST ? transI18n('fmt_role_host') : transI18n('fmt_role_cohost');
1852
+ }
1853
+
1854
+ /**
1855
+ * 处理设置主持人确认操作
1856
+ * @param userId 用户ID
1857
+ * @param type 角色类型
1858
+ */
1859
+ }, {
1860
+ key: "_handleSetHostConfirmation",
1861
+ value: (function () {
1862
+ var _handleSetHostConfirmation2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee6(userId, type) {
1863
+ var _t;
1864
+ return _regeneratorRuntime.wrap(function (_context6) {
1865
+ while (1) switch (_context6.prev = _context6.next) {
1866
+ case 0:
1867
+ if (this.mainRoomUserMap.has(userId)) {
1868
+ _context6.next = 1;
1869
+ break;
1870
+ }
1871
+ this._showToast({
1872
+ key: FcrUIToastKey.FMT_UIMANAGER_TIPS_USERLEAFT
1873
+ });
1874
+ return _context6.abrupt("return");
1875
+ case 1:
1876
+ _context6.prev = 1;
1877
+ _context6.next = 2;
1878
+ return this._updateRemoteUserRole(userId, type);
1879
+ case 2:
1880
+ _context6.next = 4;
1881
+ break;
1882
+ case 3:
1883
+ _context6.prev = 3;
1884
+ _t = _context6["catch"](1);
1885
+ this._handleSetHostError(_t);
1886
+ case 4:
1887
+ case "end":
1888
+ return _context6.stop();
1889
+ }
1890
+ }, _callee6, this, [[1, 3]]);
1891
+ }));
1892
+ function _handleSetHostConfirmation(_x2, _x3) {
1893
+ return _handleSetHostConfirmation2.apply(this, arguments);
1894
+ }
1895
+ return _handleSetHostConfirmation;
1896
+ }()
1897
+ /**
1898
+ * 处理设置主持人时的错误
1899
+ * @param error 错误对象
1900
+ */
1901
+ )
1902
+ }, {
1903
+ key: "_handleSetHostError",
1904
+ value: function _handleSetHostError(error) {
1905
+ var _this17 = this;
1906
+ if (error instanceof FcrError) {
1907
+ var errorHandlers = _defineProperty(_defineProperty({}, ErrorCode.FAILED_TO_UPDATE_USER_ROLE_DUE_TO_PRIVILEGE, function () {
1908
+ _this17._showToast({
1909
+ key: FcrUIToastKey.FMT_ATTENDIES_BUTTON_REVOKEEHOST_ERROR
1910
+ });
1911
+ }), ErrorCode.FAILED_TO_UPDATE_USER_ROLE_DUE_TO_LIMIT_REACHED, function () {
1912
+ _this17._showToast({
1913
+ key: FcrUIToastKey.FMT_ATTENDIES_TOAST_COHOST_UPPER_LIMIT
1914
+ });
1915
+ });
1916
+ var handler = errorHandlers[error.code];
1917
+ if (handler) {
1918
+ handler();
1919
+ return;
1920
+ }
1921
+ }
1922
+ this.logger.error('Failed to set up the host:', error);
1923
+ }
1924
+ }, {
1925
+ key: "_updateRemoteUserRole",
1926
+ value: function _updateRemoteUserRole(userId, role) {
1927
+ this._userControl.updateRemoteUserRole(userId, role);
1928
+ }
1929
+ }, {
1930
+ key: "_setAsAttendee",
1931
+ value: function _setAsAttendee(userId) {
1932
+ this._userControl.updateRemoteUserRole(userId, FcrUserRole.PARTICIPANT);
1933
+ }
1934
+
1935
+ /**
1936
+ * 将指定用户移动到等待房间
1937
+ * @param userId 要移动的用户ID
1938
+ */
1939
+ }, {
1940
+ key: "_moveToWaitingRoomByUserId",
1941
+ value: (function () {
1942
+ var _moveToWaitingRoomByUserId2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee7(userId) {
1943
+ var username, _t2;
1944
+ return _regeneratorRuntime.wrap(function (_context7) {
1945
+ while (1) switch (_context7.prev = _context7.next) {
1946
+ case 0:
1947
+ if (!(!userId || typeof userId !== 'string')) {
1948
+ _context7.next = 1;
1949
+ break;
1950
+ }
1951
+ this.logger.warn('Invalid userId provided to _moveToWaitingRoomByUserId:', userId);
1952
+ return _context7.abrupt("return");
1953
+ case 1:
1954
+ if (this._isUserExists(userId, FcrUIRoomType.MAIN_ROOM)) {
1955
+ _context7.next = 2;
1956
+ break;
1957
+ }
1958
+ this.logger.warn('User not found for move to waiting room operation:', userId);
1959
+ return _context7.abrupt("return");
1960
+ case 2:
1961
+ username = this._getUserNameById(userId, FcrUIRoomType.MAIN_ROOM);
1962
+ _context7.prev = 3;
1963
+ this.logger.info('Moving user to waiting room:', {
1964
+ userId: userId,
1965
+ username: username
1966
+ });
1967
+ _context7.next = 4;
1968
+ return this._roomControl.moveToWaitingRoomByUserIds([userId]);
1969
+ case 4:
1970
+ this._showToast({
1971
+ key: FcrUIToastKey.FMT_WAITINGROOM_PUT_IN_SUCCESS,
1972
+ params: {
1973
+ transI18nOptions: {
1974
+ reason1: username
1975
+ }
1976
+ }
1977
+ });
1978
+ this.logger.info('Successfully moved user to waiting room:', {
1979
+ userId: userId,
1980
+ username: username
1981
+ });
1982
+ _context7.next = 7;
1983
+ break;
1984
+ case 5:
1985
+ _context7.prev = 5;
1986
+ _t2 = _context7["catch"](3);
1987
+ this.logger.error('Failed to move user to waiting room:', {
1988
+ userId: userId,
1989
+ username: username,
1990
+ error: _t2
1991
+ });
1992
+ if (!(_t2 instanceof FcrError && _t2.code === ErrorCode.FAILED_TO_MOVE_USER_TO_WAITING_ROOM)) {
1993
+ _context7.next = 6;
1994
+ break;
1995
+ }
1996
+ this._showToast({
1997
+ key: FcrUIToastKey.FMT_WAITINGROOM_SETTING_POPUP_TOAST_UNABLE_MOVE_CREATOR
1998
+ });
1999
+ return _context7.abrupt("return");
2000
+ case 6:
2001
+ this._showToast({
2002
+ key: FcrUIToastKey.FMT_WAITINGROOM_SETTING_POPUP_TOAST_MOVE_IN_FAILED
2003
+ });
2004
+ case 7:
2005
+ case "end":
2006
+ return _context7.stop();
2007
+ }
2008
+ }, _callee7, this, [[3, 5]]);
2009
+ }));
2010
+ function _moveToWaitingRoomByUserId(_x4) {
2011
+ return _moveToWaitingRoomByUserId2.apply(this, arguments);
2012
+ }
2013
+ return _moveToWaitingRoomByUserId;
2014
+ }()
2015
+ /**
2016
+ * 踢出用户的主入口方法
2017
+ * 根据当前房间类型选择相应的处理逻辑
2018
+ * @param userId 要踢出的用户ID
2019
+ * @param roomType 要踢出的用户所在的房间类型
2020
+ */
2021
+ )
2022
+ }, {
2023
+ key: "_kickOutUser",
2024
+ value: function _kickOutUser(userId, roomType) {
2025
+ // 参数验证
2026
+ if (!userId || typeof userId !== 'string') {
2027
+ this.logger.warn('Invalid userId provided to _kickOutUser:', userId);
2028
+ return;
2029
+ }
2030
+
2031
+ // 检查用户是否存在
2032
+ if (!this._isUserExists(userId, roomType)) {
2033
+ this.logger.warn('User not found for kick out operation:', userId);
2034
+ return;
2035
+ }
2036
+ var isMainRoom = roomType === FcrUIRoomType.MAIN_ROOM;
2037
+ if (isMainRoom) {
2038
+ this._kickOutUserFromMainRoom(userId);
2039
+ } else {
2040
+ this._kickOutUserFromWaitingRoom(userId);
2041
+ }
2042
+ }
2043
+
2044
+ /**
2045
+ * 从主房间踢出用户
2046
+ * @param userId 用户ID
2047
+ */
2048
+ }, {
2049
+ key: "_kickOutUserFromMainRoom",
2050
+ value: function _kickOutUserFromMainRoom(userId) {
2051
+ var userName = this._getUserNameById(userId, FcrUIRoomType.MAIN_ROOM);
2052
+ var dialogConfig = this._createMainRoomKickOutDialogConfig(userId, userName);
2053
+ this.openConfirmDialog(dialogConfig, KICK_OUT_DIALOG_CONFIG.MAIN_ROOM.DIALOG_ID);
2054
+ }
2055
+
2056
+ /**
2057
+ * 从等待房间踢出用户
2058
+ * @param userId 用户ID
2059
+ */
2060
+ }, {
2061
+ key: "_kickOutUserFromWaitingRoom",
2062
+ value: function _kickOutUserFromWaitingRoom(userId) {
2063
+ var userName = this._getUserNameById(userId, FcrUIRoomType.WAITING_ROOM);
2064
+ var dialogConfig = this._createWaitingRoomKickOutDialogConfig(userId, userName);
2065
+ this.openRemoveAdmitWaitingRoomDialog(dialogConfig);
2066
+ }
2067
+
2068
+ /**
2069
+ * 检查用户是否存在
2070
+ * @param userId 用户ID
2071
+ * @param roomType 房间类型
2072
+ * @returns 用户是否存在
2073
+ */
2074
+ }, {
2075
+ key: "_isUserExists",
2076
+ value: function _isUserExists(userId, roomType) {
2077
+ var userMap = this._getUserMapByRoomType(roomType);
2078
+ return userMap.has(userId);
2079
+ }
2080
+ }, {
2081
+ key: "_getUserMapByRoomType",
2082
+ value: function _getUserMapByRoomType(roomType) {
2083
+ if (roomType === FcrUIRoomType.MAIN_ROOM) {
2084
+ return this.mainRoomUserMap;
2085
+ } else {
2086
+ return this.waitingRoomUserMap;
2087
+ }
2088
+ }
2089
+
2090
+ /**
2091
+ * 根据 roomType 获取对应房间的用户列表
2092
+ * @param roomType 房间类型
2093
+ * @returns 用户列表
2094
+ */
2095
+ }, {
2096
+ key: "_getUserListByRoomType",
2097
+ value: function _getUserListByRoomType(roomType) {
2098
+ if (roomType === FcrUIRoomType.MAIN_ROOM) {
2099
+ return this._sharedMemberDataSource.memberList;
2100
+ } else {
2101
+ return this._sharedWaitingRoomDataSource.waitingRoomDataSource.list;
2102
+ }
2103
+ }
2104
+
2105
+ /**
2106
+ * 根据用户ID获取用户名
2107
+ * @param userId 用户ID
2108
+ * @param roomType 房间类型
2109
+ * @returns 用户名,如果找不到则返回空字符串
2110
+ */
2111
+ }, {
2112
+ key: "_getUserNameById",
2113
+ value: function _getUserNameById(userId, roomType) {
2114
+ var _userMap$get;
2115
+ var userMap = this._getUserMapByRoomType(roomType);
2116
+ return ((_userMap$get = userMap.get(userId)) === null || _userMap$get === void 0 ? void 0 : _userMap$get.userInfo.userName) || '';
2117
+ }
2118
+
2119
+ /**
2120
+ * 创建主房间踢出用户的对话框配置
2121
+ * @param userId 用户ID
2122
+ * @param userName 用户名
2123
+ * @returns 对话框配置对象
2124
+ */
2125
+ }, {
2126
+ key: "_createMainRoomKickOutDialogConfig",
2127
+ value: function _createMainRoomKickOutDialogConfig(userId, userName) {
2128
+ var _this18 = this;
2129
+ return {
2130
+ title: '',
2131
+ content: transI18n('fmt_uimanager_tips_Remove', {
2132
+ reason2: userName
2133
+ }),
2134
+ onOk: function onOk() {
2135
+ _this18._executeKickOut(userId, FcrUserKickedOutType.Once);
2136
+ },
2137
+ alignCenter: true,
2138
+ height: KICK_OUT_DIALOG_CONFIG.MAIN_ROOM.HEIGHT
2139
+ };
2140
+ }
2141
+
2142
+ /**
2143
+ * 创建等待房间踢出用户的对话框配置
2144
+ * @param userId 用户ID
2145
+ * @param userName 用户名
2146
+ * @returns 对话框配置对象
2147
+ */
2148
+ }, {
2149
+ key: "_createWaitingRoomKickOutDialogConfig",
2150
+ value: function _createWaitingRoomKickOutDialogConfig(userId, userName) {
2151
+ var _this19 = this;
2152
+ return {
2153
+ userId: userId,
2154
+ type: KICK_OUT_DIALOG_CONFIG.WAITING_ROOM.TYPE,
2155
+ title: transI18n('fmt_waitingroom_sidebar_popup_removeall'),
2156
+ tooltip: transI18n('fmt_waitingroom_sidebar_popup_label_remove', {
2157
+ reason1: userName
2158
+ }),
2159
+ onChecked: function onChecked(isChecked) {
2160
+ _this19._isChecked[KICK_OUT_DIALOG_CONFIG.WAITING_ROOM.TYPE] = isChecked;
2161
+ }
2162
+ };
2163
+ }
2164
+
2165
+ /**
2166
+ * 执行踢出用户操作
2167
+ * @param userId 用户ID
2168
+ * @param kickOutType 踢出类型
2169
+ */
2170
+ }, {
2171
+ key: "_executeKickOut",
2172
+ value: function _executeKickOut(userId, kickOutType) {
2173
+ try {
2174
+ this._userControl.kickOut(userId, kickOutType);
2175
+ this.logger.info('Successfully initiated kick out for user:', userId, 'type:', kickOutType);
2176
+ } catch (error) {
2177
+ this.logger.error('Failed to kick out user:', userId, 'error:', error);
2178
+ }
2179
+ }
2180
+ }, {
2181
+ key: "_onPeerSessionReceived",
2182
+ value: function _onPeerSessionReceived(session) {
2183
+ this.logger.info('participant store onPeerSessionReceived', {
2184
+ sessionId: session.sessionId
2185
+ });
2186
+
2187
+ // 检查是否已经处理过此会话
2188
+ if (this._isSessionAlreadyProcessed(session.sessionId)) {
2189
+ this.logger.info('Session already processed, skipping', {
2190
+ sessionId: session.sessionId
2191
+ });
2192
+ return;
2193
+ }
2194
+
2195
+ // 验证本地用户信息
2196
+ if (!this._validateLocalUser()) {
2197
+ this.logger.warn('Local user validation failed');
2198
+ return;
2199
+ }
2200
+
2201
+ // 标记会话为已处理
2202
+ this._processedUserOpenDeviceRequests.add(session.sessionId);
2203
+
2204
+ // 根据会话类型处理请求
2205
+ this._handleDeviceRequest(session);
2206
+ }
2207
+ }, {
2208
+ key: "_onPeerSessionAccepted",
2209
+ value: function _onPeerSessionAccepted(session) {
2210
+ this._updateSessionTimestamp(session);
2211
+ }
2212
+ }, {
2213
+ key: "_onPeerSessionRejected",
2214
+ value: function _onPeerSessionRejected(session) {
2215
+ this._updateSessionTimestamp(session);
2216
+ }
2217
+ }, {
2218
+ key: "_updateSessionTimestamp",
2219
+ value: function _updateSessionTimestamp(session) {
2220
+ var responderId = session.responderId,
2221
+ sessionKey = session.sessionKey;
2222
+ switch (sessionKey) {
2223
+ case FcrUISessionKey.REQUEST_OPEN_CAMERA:
2224
+ this._unmuteVideoTimestamp["delete"](responderId);
2225
+ break;
2226
+ case FcrUISessionKey.REQUEST_OPEN_MICROPHONE:
2227
+ this._unmuteAudioTimestamp["delete"](responderId);
2228
+ break;
2229
+ }
2230
+ }
2231
+
2232
+ /**
2233
+ * 设置等候室用户数量监听器
2234
+ * 当等候室用户数量为0时 tab自动切换回主房间
2235
+ */
2236
+ }, {
2237
+ key: "_setupWaitingRoomUserCountListener",
2238
+ value: function _setupWaitingRoomUserCountListener() {
2239
+ var _this20 = this;
2240
+ this._disposers.push(reaction(function () {
2241
+ return _this20.waitingRoomUserCount;
2242
+ }, function (userCount) {
2243
+ if (userCount === 0 && _this20.activeTab === FcrUIRoomType.WAITING_ROOM) {
2244
+ _this20.handleActiveTab(FcrUIRoomType.MAIN_ROOM);
2245
+ }
2246
+ }));
2247
+ }
2248
+
2249
+ /**
2250
+ * 检查会话是否已经被处理过
2251
+ * @param sessionId 会话ID
2252
+ * @returns 是否已处理
2253
+ */
2254
+ }, {
2255
+ key: "_isSessionAlreadyProcessed",
2256
+ value: function _isSessionAlreadyProcessed(sessionId) {
2257
+ return this._processedUserOpenDeviceRequests.has(sessionId);
2258
+ }
2259
+
2260
+ /**
2261
+ * 验证本地用户信息
2262
+ * @returns 验证是否通过
2263
+ */
2264
+ }, {
2265
+ key: "_validateLocalUser",
2266
+ value: function _validateLocalUser() {
2267
+ var localUserUid = this.localUser.userId;
2268
+ if (!localUserUid) {
2269
+ this.logger.warn('Local user ID not found');
2270
+ return false;
2271
+ }
2272
+ var localUserStream = this._streamControl.getStreamsByUserId(localUserUid).find(function (user) {
2273
+ return user.videoSourceType === FcrVideoSourceType.CAMERA;
2274
+ });
2275
+ if (!localUserStream) {
2276
+ this.logger.warn('Local user stream not found');
2277
+ return false;
2278
+ }
2279
+ return true;
2280
+ }
2281
+
2282
+ /**
2283
+ * 处理设备请求
2284
+ * @param session 对等会话
2285
+ */
2286
+ }, {
2287
+ key: "_handleDeviceRequest",
2288
+ value: function _handleDeviceRequest(session) {
2289
+ var sessionKey = session.sessionKey,
2290
+ payload = session.payload;
2291
+ var sender = payload.sender;
2292
+ switch (sessionKey) {
2293
+ case FcrUISessionKey.REQUEST_OPEN_CAMERA:
2294
+ this._handleCameraRequest(session, sender);
2295
+ break;
2296
+ case FcrUISessionKey.REQUEST_OPEN_MICROPHONE:
2297
+ this._handleMicrophoneRequest(session, sender);
2298
+ break;
2299
+ default:
2300
+ this.logger.warn('Unknown session key', {
2301
+ sessionKey: sessionKey
2302
+ });
2303
+ }
2304
+ }
2305
+
2306
+ /**
2307
+ * 处理摄像头开启请求
2308
+ * @param session 对等会话
2309
+ * @param sender 发送者信息
2310
+ */
2311
+ }, {
2312
+ key: "_handleCameraRequest",
2313
+ value: function _handleCameraRequest(session, sender) {
2314
+ var localUserHasVideo = this._deviceStore.cameraEnabled;
2315
+ this.logger.info('Handling camera request', {
2316
+ sessionId: session.sessionId,
2317
+ localUserHasVideo: localUserHasVideo
2318
+ });
2319
+
2320
+ // 如果本地用户已经开启摄像头,直接接受请求
2321
+ if (localUserHasVideo) {
2322
+ this._peerSessionControl.acceptPeerSession(session);
2323
+ return;
2324
+ }
2325
+
2326
+ // 显示确认对话框
2327
+ this._showCameraRequestDialog(session, sender);
2328
+ }
2329
+
2330
+ /**
2331
+ * 处理麦克风开启请求
2332
+ * @param session 对等会话
2333
+ * @param sender 发送者信息
2334
+ */
2335
+ }, {
2336
+ key: "_handleMicrophoneRequest",
2337
+ value: function _handleMicrophoneRequest(session, sender) {
2338
+ var localUserHasAudio = this._deviceStore.microphoneEnabled;
2339
+ this.logger.info('Handling microphone request', {
2340
+ sessionId: session.sessionId,
2341
+ localUserHasAudio: localUserHasAudio
2342
+ });
2343
+
2344
+ // 如果本地用户已经开启麦克风,直接接受请求
2345
+ if (localUserHasAudio) {
2346
+ this._peerSessionControl.acceptPeerSession(session);
2347
+ return;
2348
+ }
2349
+
2350
+ // 显示确认对话框
2351
+ this._showMicrophoneRequestDialog(session, sender);
2352
+ }
2353
+
2354
+ /**
2355
+ * 显示摄像头请求确认对话框
2356
+ * @param session 对等会话
2357
+ * @param sender 发送者信息
2358
+ */
2359
+ }, {
2360
+ key: "_showCameraRequestDialog",
2361
+ value: function _showCameraRequestDialog(session, sender) {
2362
+ var _this21 = this;
2363
+ this.openConfirmDialog({
2364
+ height: 166,
2365
+ title: transI18n('fmt_attendies_tips_apply_video_title', {
2366
+ reason1: transI18n(userRoleI18nKey[sender.userRole])
2367
+ }),
2368
+ content: transI18n('fmt_additional_tips_cameraturnon'),
2369
+ okText: transI18n('fmt_additional_button_accept'),
2370
+ cancelText: transI18n('fmt_additional_button_refuse'),
2371
+ closable: false,
2372
+ onOk: function onOk() {
2373
+ _this21._peerSessionControl.acceptPeerSession(session);
2374
+ _this21._deviceStreamStore.enableCameraWithPreCheck(true);
2375
+ },
2376
+ onCancel: function onCancel() {
2377
+ _this21._peerSessionControl.rejectPeerSession(session);
2378
+ }
2379
+ }, FcrUISessionKey.REQUEST_OPEN_CAMERA);
2380
+ }
2381
+
2382
+ /**
2383
+ * 显示麦克风请求确认对话框
2384
+ * @param session 对等会话
2385
+ * @param sender 发送者信息
2386
+ */
2387
+ }, {
2388
+ key: "_showMicrophoneRequestDialog",
2389
+ value: function _showMicrophoneRequestDialog(session, sender) {
2390
+ var _this22 = this;
2391
+ this.openConfirmDialog({
2392
+ title: transI18n('fmt_attendies_tips_apply_audio_title', {
2393
+ reason1: transI18n(userRoleI18nKey[sender.userRole])
2394
+ }),
2395
+ content: transI18n('fmt_additional_tips_agreeturnon'),
2396
+ okText: transI18n('fmt_device_label_audio_unmute'),
2397
+ cancelText: transI18n('fmt_additional_options_Keepsilent'),
2398
+ closable: false,
2399
+ onOk: function onOk() {
2400
+ _this22._processedUserOpenDeviceRequests["delete"](session.sessionId);
2401
+ _this22._peerSessionControl.acceptPeerSession(session);
2402
+ _this22._deviceStreamStore.enableMicrophoneWithPreCheck(true);
2403
+ },
2404
+ onCancel: function onCancel() {
2405
+ _this22._processedUserOpenDeviceRequests["delete"](session.sessionId);
2406
+ _this22._peerSessionControl.rejectPeerSession(session);
2407
+ },
2408
+ height: 166
2409
+ }, FcrUISessionKey.REQUEST_OPEN_MICROPHONE);
2410
+ }
2411
+ }, {
2412
+ key: "_handleEvent",
2413
+ value: function _handleEvent(event, payload) {
2414
+ switch (event) {
2415
+ case FcrUIAction.PARTICIPANT_ACTION:
2416
+ {
2417
+ var actionPayload = payload;
2418
+ this.handlerUserAction(actionPayload.action, actionPayload.userId, FcrUIRoomType.MAIN_ROOM);
2419
+ break;
2420
+ }
2421
+ case FcrUIAction.CHANGE_PARTICIPANT_TAB:
2422
+ this.handleActiveTab(payload);
2423
+ break;
2424
+ }
2425
+ }
2426
+ }]);
2427
+ }();
2428
+ _ParticipantStoreBase = ParticipantStoreBase;
2429
+ var _applyDecs$e = _slicedToArray(_applyDecs(_ParticipantStoreBase, [[observable, 1, "_renamingUserName"], [observable, 1, "_isChecked"], [observable, 1, "_participantsWindowActive"], [observable, 1, "enableParticipantsJoinWithMute"], [observable, 1, "searchText"], [observable, 1, "currentModal"], [observable, 1, "mergeConfirmDialog"], [observable, 1, "mergeUserId"], [observable, 1, "activeTab"], [observable, 1, "interpreterInputLanguageList"], [observable, 1, "newName"], [observable, 1, "allowUnmute"], [observable, 1, "joinWithMuteAudio"], [observable, 1, "showBecomeHostButton"], [observable, 1, "_userCount"], [computed, 3, "audioVolumeMap"], [computed, 3, "userIdToAudioStreamIdMap"], [computed, 3, "userListSource"], [computed, 3, "spotlightStreamId"], [computed, 3, "mergeUserInfo"], [computed, 3, "userMap"], [computed, 3, "mainRoomUserMap"], [computed, 3, "waitingRoomUserMap"], [computed, 3, "userCount"], [computed, 3, "pinedStreamIds"], [computed, 3, "hasPinnedStream"], [computed, 3, "userList"], [computed, 3, "hasRevokeHostPermission"], [computed, 3, "waitingRoomUserCount"], [computed, 3, "isNewWaitingRoomUserEnter"], [computed, 3, "hasInvite"], [bound, 2, "hasMutePermission"], [bound, 2, "hasWaitingRoomPermission"], [bound, 2, "hasUnmutePermission"], [bound, 2, "hasRequestStartAudioPermission"], [_setCurrentModalDecs, 18, "setCurrentModal"], [bound, 2, "closeParticipantsAside"], [bound, 2, "closeDialog"], [_setParticipantsWindowActiveDecs, 18, "setParticipantsWindowActive"], [_handlerSearchUserDecs, 18, "handlerSearchUser"], [bound, 2, "onInvite"], [bound, 2, "setMergeConfirmDialog"], [bound, 2, "mergeConfirmDialogOk"], [_openRemoveAdmitWaitingRoomDialogDecs, 18, "openRemoveAdmitWaitingRoomDialog"], [_setAllowUnmuteDecs, 18, "setAllowUnmute"], [_setAllowJoinWithMuteAudioDecs, 18, "setAllowJoinWithMuteAudio"], [_openMuteAllDialogDecs, 18, "openMuteAllDialog"], [_handlerRoomControlActionDecs, 18, "handlerRoomControlAction"], [bound, 2, "moveParticipantFromDialogToAside"], [_moveToMainRoomByUserIdsDecs, 18, "moveToMainRoomByUserIds"], [_kickOutWaitingRoomAllMemberDecs, 18, "kickOutWaitingRoomAllMember"], [_moveToMainRoomAllMemberDecs, 18, "moveToMainRoomAllMember"], [_removeWaitingRoomUserDecs, 18, "removeWaitingRoomUser"], [bound, 2, "removePin"], [bound, 2, "addPin"], [bound, 2, "_getPinStreamIdFromUser"], [_handleUserCountUpdatedDecs, 18, "_handleUserCountUpdated"], [_handleConfirmChangeNameDecs, 18, "handleConfirmChangeName"], [_handleCancelChangeNameDecs, 18, "handleCancelChangeName"], [_closeChangeNameDialogDecs, 18, "_closeChangeNameDialog"], [_getOutputLanguageDecs, 18, "_getOutputLanguage"], [_handlerUserActionDecs, 18, "handlerUserAction"], [_handleActiveTabDecs, 18, "handleActiveTab"], [_moveToWaitingRoomByUserIdDecs, 18, "_moveToWaitingRoomByUserId"], [_kickOutUserDecs, 18, "_kickOutUser"], [_onPeerSessionReceivedDecs, 18, "_onPeerSessionReceived"], [bound, 2, "_onPeerSessionAccepted"], [bound, 2, "_onPeerSessionRejected"], [bound, 2, "_handleEvent"]], []).e, 16);
2430
+ _init__renamingUserName = _applyDecs$e[0];
2431
+ _init__isChecked = _applyDecs$e[1];
2432
+ _init__participantsWindowActive = _applyDecs$e[2];
2433
+ _init_enableParticipantsJoinWithMute = _applyDecs$e[3];
2434
+ _init_searchText = _applyDecs$e[4];
2435
+ _init_currentModal = _applyDecs$e[5];
2436
+ _init_mergeConfirmDialog = _applyDecs$e[6];
2437
+ _init_mergeUserId = _applyDecs$e[7];
2438
+ _init_activeTab = _applyDecs$e[8];
2439
+ _init_interpreterInputLanguageList = _applyDecs$e[9];
2440
+ _init_newName = _applyDecs$e[10];
2441
+ _init_allowUnmute = _applyDecs$e[11];
2442
+ _init_joinWithMuteAudio = _applyDecs$e[12];
2443
+ _init_showBecomeHostButton = _applyDecs$e[13];
2444
+ _init__userCount = _applyDecs$e[14];
2445
+ _initProto = _applyDecs$e[15];
2446
+ export var StoreContext = /*#__PURE__*/createContext(null);