fcr-ui-scene 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (540) hide show
  1. package/installer/icons/icon.png +0 -0
  2. package/lib/common/device-store.d.ts +21 -11
  3. package/lib/common/device-store.js +236 -151
  4. package/lib/common/device-stream-store.d.ts +22 -4
  5. package/lib/common/device-stream-store.js +297 -113
  6. package/lib/common/event-store.d.ts +19 -10
  7. package/lib/common/event-store.js +28 -10
  8. package/lib/common/remote-renderer.d.ts +15 -0
  9. package/lib/common/remote-renderer.js +138 -0
  10. package/lib/common/room-store.d.ts +58 -0
  11. package/lib/common/room-store.js +402 -0
  12. package/lib/common/security-store.d.ts +35 -27
  13. package/lib/common/security-store.js +221 -383
  14. package/lib/creator.d.ts +3 -1
  15. package/lib/creator.js +15 -1
  16. package/lib/electron/app.js +51 -0
  17. package/lib/electron/bootstrap-sdk.js +3 -1
  18. package/lib/electron/injections.d.ts +7 -4
  19. package/lib/electron/injections.js +141 -113
  20. package/lib/electron/logger.js +3 -1
  21. package/lib/electron/main.js +13 -1
  22. package/lib/electron/plugins/devtool-shortcut.d.ts +2 -0
  23. package/lib/electron/plugins/devtool-shortcut.js +19 -0
  24. package/lib/electron/preload.js +6 -3
  25. package/lib/fragments/control-bar/cloud-recording-buttons.js +1 -1
  26. package/lib/fragments/control-bar/control-bar-store.d.ts +11 -1
  27. package/lib/fragments/control-bar/control-bar-store.js +196 -111
  28. package/lib/fragments/control-bar/index.js +6 -0
  29. package/lib/fragments/control-bar/more-actions/index.js +1 -1
  30. package/lib/fragments/control-bar/security-content/index.css +65 -0
  31. package/lib/fragments/control-bar/security-content/index.js +66 -2
  32. package/lib/fragments/control-bar/share-state-nav/index.js +1 -1
  33. package/lib/fragments/control-bar/view.js +15 -6
  34. package/lib/fragments/live-streaming/store.d.ts +1 -1
  35. package/lib/fragments/live-streaming/store.js +1 -1
  36. package/lib/fragments/live-streaming/view.js +4 -2
  37. package/lib/fragments/share-screen-selection/selection-store.d.ts +1 -1
  38. package/lib/fragments/share-screen-selection/selection-store.js +1 -1
  39. package/lib/fragments/share-screen-selection/view.js +20 -20
  40. package/lib/fragments/toolbar/components/eraser-picker.js +1 -1
  41. package/lib/fragments/toolbar/components/pen-picker.js +1 -1
  42. package/lib/fragments/toolbar/components/shape-picker.js +1 -1
  43. package/lib/fragments/toolbar/components/transfer-position-icon/index.d.ts +11 -0
  44. package/lib/fragments/toolbar/components/transfer-position-icon/index.js +46 -0
  45. package/lib/fragments/toolbar/components/wrapper.js +1 -1
  46. package/lib/fragments/toolbar/hooks.js +1 -1
  47. package/lib/fragments/toolbar/store.d.ts +1 -1
  48. package/lib/hooks/meeting-time.d.ts +1 -1
  49. package/lib/modules/Interpreter/action/add-btn/index.css +4 -0
  50. package/lib/modules/Interpreter/action/add-btn/index.d.ts +11 -0
  51. package/lib/modules/Interpreter/action/add-btn/index.js +43 -0
  52. package/lib/modules/Interpreter/action/delete-btn/index.css +14 -0
  53. package/lib/modules/Interpreter/action/delete-btn/index.d.ts +6 -0
  54. package/lib/modules/Interpreter/action/delete-btn/index.js +38 -0
  55. package/lib/modules/Interpreter/action/edit-btn/index.css +3 -0
  56. package/lib/modules/Interpreter/action/edit-btn/index.d.ts +5 -0
  57. package/lib/modules/Interpreter/action/edit-btn/index.js +49 -0
  58. package/lib/modules/Interpreter/action/switch-btn/index.d.ts +5 -0
  59. package/lib/modules/Interpreter/action/switch-btn/index.js +52 -0
  60. package/lib/modules/Interpreter/add-button/index.css +4 -0
  61. package/lib/modules/Interpreter/add-button/index.d.ts +11 -0
  62. package/lib/modules/Interpreter/add-button/index.js +43 -0
  63. package/lib/modules/Interpreter/config.d.ts +16 -0
  64. package/lib/modules/Interpreter/config.js +17 -0
  65. package/lib/modules/Interpreter/constant.d.ts +55 -0
  66. package/lib/modules/Interpreter/constant.js +100 -0
  67. package/lib/modules/Interpreter/context.d.ts +2 -0
  68. package/lib/modules/Interpreter/context.js +9 -0
  69. package/lib/modules/Interpreter/dialog-content/index.css +33 -0
  70. package/lib/modules/Interpreter/dialog-content/index.d.ts +8 -0
  71. package/lib/modules/Interpreter/dialog-content/index.js +34 -0
  72. package/lib/modules/Interpreter/footer/components/interpreter-btn/index.d.ts +5 -0
  73. package/lib/modules/Interpreter/footer/components/interpreter-btn/index.js +53 -0
  74. package/lib/modules/Interpreter/footer/components/set-btn/index.d.ts +5 -0
  75. package/lib/modules/Interpreter/footer/components/set-btn/index.js +49 -0
  76. package/lib/modules/Interpreter/footer/components/tooltip-wrapper/index.d.ts +6 -0
  77. package/lib/modules/Interpreter/footer/components/tooltip-wrapper/index.js +30 -0
  78. package/lib/modules/Interpreter/footer/index.css +10 -0
  79. package/lib/modules/Interpreter/footer/index.d.ts +6 -0
  80. package/lib/modules/Interpreter/footer/index.js +26 -0
  81. package/lib/modules/Interpreter/index.css +15 -0
  82. package/lib/modules/Interpreter/index.d.ts +23 -0
  83. package/lib/modules/Interpreter/index.js +116 -0
  84. package/lib/modules/Interpreter/interpreter-list/index.css +4 -0
  85. package/lib/modules/Interpreter/interpreter-list/index.d.ts +6 -0
  86. package/lib/modules/Interpreter/interpreter-list/index.js +46 -0
  87. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.css +52 -0
  88. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.d.ts +14 -0
  89. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +179 -0
  90. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ar.png +0 -0
  91. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_cn.png +0 -0
  92. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_de.png +0 -0
  93. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_en.png +0 -0
  94. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_es.png +0 -0
  95. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_fr.png +0 -0
  96. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_hi.png +0 -0
  97. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_id.png +0 -0
  98. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_it.png +0 -0
  99. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_jp.png +0 -0
  100. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ko.png +0 -0
  101. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ms.png +0 -0
  102. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_pt.png +0 -0
  103. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ru.png +0 -0
  104. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_th.png +0 -0
  105. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_tr.png +0 -0
  106. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_vi.png +0 -0
  107. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.d.ts +16 -0
  108. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.js +178 -0
  109. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.css +48 -0
  110. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.d.ts +12 -0
  111. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +154 -0
  112. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.css +32 -0
  113. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.d.ts +8 -0
  114. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.js +48 -0
  115. package/lib/modules/Interpreter/loading-wrapper/index.css +53 -0
  116. package/lib/modules/Interpreter/loading-wrapper/index.d.ts +6 -0
  117. package/lib/modules/Interpreter/loading-wrapper/index.js +28 -0
  118. package/lib/modules/Interpreter/store.d.ts +104 -0
  119. package/lib/modules/Interpreter/store.js +1632 -0
  120. package/lib/modules/Interpreter/tooltip-wrapper/index.d.ts +6 -0
  121. package/lib/modules/Interpreter/tooltip-wrapper/index.js +30 -0
  122. package/lib/modules/Interpreter/view.d.ts +3 -0
  123. package/lib/modules/Interpreter/view.js +69 -0
  124. package/lib/modules/action-bar/Interpreter/index.d.ts +6 -0
  125. package/lib/modules/action-bar/Interpreter/index.js +41 -0
  126. package/lib/modules/action-bar/action-bar-collapes-items.d.ts +4 -1
  127. package/lib/modules/action-bar/action-bar-collapes-items.js +32 -15
  128. package/lib/modules/action-bar/apps/app-item/index.css +35 -0
  129. package/lib/modules/action-bar/apps/app-item/index.d.ts +12 -0
  130. package/lib/modules/action-bar/apps/app-item/index.js +61 -0
  131. package/lib/modules/action-bar/apps/appitems.d.ts +5 -0
  132. package/lib/modules/action-bar/apps/appitems.js +45 -0
  133. package/lib/modules/action-bar/apps/index.css +8 -0
  134. package/lib/modules/action-bar/apps/index.d.ts +4 -0
  135. package/lib/modules/action-bar/apps/index.js +57 -0
  136. package/lib/modules/action-bar/apps/useAppItemOptions.d.ts +9 -0
  137. package/lib/modules/action-bar/apps/useAppItemOptions.js +29 -0
  138. package/lib/modules/action-bar/apps/useBeautyBackground.d.ts +10 -0
  139. package/lib/modules/action-bar/apps/useBeautyBackground.js +34 -0
  140. package/lib/modules/action-bar/apps/useInterpreter.d.ts +14 -0
  141. package/lib/modules/action-bar/apps/useInterpreter.js +35 -0
  142. package/lib/modules/action-bar/apps/useLiveStreaming.d.ts +16 -0
  143. package/lib/modules/action-bar/apps/useLiveStreaming.js +41 -0
  144. package/lib/modules/action-bar/chat/index.js +3 -3
  145. package/lib/modules/action-bar/device/index.js +22 -24
  146. package/lib/modules/action-bar/index.css +30 -3
  147. package/lib/modules/action-bar/index.d.ts +8 -2
  148. package/lib/modules/action-bar/index.dev.js +6 -3
  149. package/lib/modules/action-bar/index.js +25 -61
  150. package/lib/modules/action-bar/leave/assign-host.d.ts +1 -1
  151. package/lib/modules/action-bar/leave/index.css +10 -0
  152. package/lib/modules/action-bar/leave/index.js +66 -39
  153. package/lib/modules/action-bar/leave/leave-meeting.d.ts +3 -2
  154. package/lib/modules/action-bar/leave/leave-meeting.js +13 -4
  155. package/lib/modules/action-bar/live-streaming/index.js +3 -3
  156. package/lib/modules/action-bar/more/index.js +9 -6
  157. package/lib/modules/action-bar/more/poppover-content.js +33 -12
  158. package/lib/modules/action-bar/participants/index.js +2 -2
  159. package/lib/modules/action-bar/record/index.js +4 -4
  160. package/lib/modules/action-bar/screen-share/index.js +4 -4
  161. package/lib/modules/action-bar/screen-share/submenu.js +4 -4
  162. package/lib/modules/action-bar/security/drop-menu.js +49 -11
  163. package/lib/modules/action-bar/security/index.js +11 -6
  164. package/lib/modules/action-bar/settings/index.js +4 -4
  165. package/lib/modules/action-bar/smaller.js +4 -4
  166. package/lib/modules/action-bar/store.d.ts +54 -11
  167. package/lib/modules/action-bar/store.js +390 -164
  168. package/lib/modules/action-bar/switch-input-language-room/fcr_translateswitch.png +0 -0
  169. package/lib/modules/action-bar/switch-input-language-room/index.css +86 -0
  170. package/lib/modules/action-bar/switch-input-language-room/index.d.ts +16 -0
  171. package/lib/modules/action-bar/switch-input-language-room/index.js +236 -0
  172. package/lib/modules/action-bar/switch-output-language-room/drop-menu.d.ts +1 -0
  173. package/lib/modules/action-bar/switch-output-language-room/drop-menu.js +197 -0
  174. package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.css +18 -0
  175. package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.d.ts +14 -0
  176. package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.js +72 -0
  177. package/lib/modules/action-bar/switch-output-language-room/index.d.ts +12 -0
  178. package/lib/modules/action-bar/switch-output-language-room/index.js +303 -0
  179. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.css +58 -0
  180. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.d.ts +8 -0
  181. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.js +100 -0
  182. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.css +56 -0
  183. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.d.ts +5 -0
  184. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.js +33 -0
  185. package/lib/modules/action-bar/switch-output-language-room/notification-bar/dome.png +0 -0
  186. package/lib/modules/action-bar/switch-output-language-room/notification-bar/fcr_translateswitch.png +0 -0
  187. package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.css +74 -0
  188. package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.d.ts +2 -0
  189. package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.js +99 -0
  190. package/lib/modules/action-bar/view.js +25 -11
  191. package/lib/modules/audio-stream/index.d.ts +32 -9
  192. package/lib/modules/audio-stream/index.js +258 -57
  193. package/lib/modules/chat/chat-bar/index.css +1 -0
  194. package/lib/modules/chat/chat-bar/index.d.ts +3 -3
  195. package/lib/modules/chat/chat-bar/index.js +14 -16
  196. package/lib/modules/chat/chat-select/index.css +7 -0
  197. package/lib/modules/chat/chat-select/index.d.ts +1 -1
  198. package/lib/modules/chat/chat-select/index.js +18 -4
  199. package/lib/modules/chat/chat.js +14 -26
  200. package/lib/modules/chat/index.d.ts +5 -3
  201. package/lib/modules/chat/index.dev.js +7 -3
  202. package/lib/modules/chat/index.js +16 -9
  203. package/lib/modules/chat/message-list.js +8 -3
  204. package/lib/modules/chat/store.d.ts +12 -6
  205. package/lib/modules/chat/store.js +109 -69
  206. package/lib/modules/components/device-control/components/audio-menu/index.d.ts +6 -0
  207. package/lib/modules/components/device-control/components/audio-menu/index.js +156 -0
  208. package/lib/modules/components/device-control/components/carmera/index.d.ts +3 -0
  209. package/lib/modules/components/device-control/components/carmera/index.js +111 -0
  210. package/lib/modules/components/device-control/components/microphone/index.d.ts +7 -0
  211. package/lib/modules/components/device-control/components/microphone/index.js +170 -0
  212. package/lib/modules/components/device-control/components/none-menu/index.d.ts +4 -0
  213. package/lib/modules/components/device-control/components/none-menu/index.js +68 -0
  214. package/lib/modules/components/device-control/components/phone-menu/index.d.ts +4 -0
  215. package/lib/modules/components/device-control/components/phone-menu/index.js +61 -0
  216. package/lib/modules/components/device-control/components/video-menu/index.d.ts +5 -0
  217. package/lib/modules/components/device-control/components/video-menu/index.js +111 -0
  218. package/lib/modules/components/device-control/hooks/index.d.ts +9 -0
  219. package/lib/modules/components/device-control/hooks/index.js +42 -0
  220. package/lib/modules/components/device-control/index.css +163 -0
  221. package/lib/modules/components/device-control/index.d.ts +3 -0
  222. package/lib/modules/components/device-control/index.js +21 -0
  223. package/lib/modules/components/device-control/store.d.ts +42 -0
  224. package/lib/modules/components/device-control/store.js +256 -0
  225. package/lib/modules/components/device-control/type.d.ts +6 -0
  226. package/lib/modules/components/device-control/type.js +13 -0
  227. package/lib/modules/components/security-menu/index.css +35 -0
  228. package/lib/modules/components/security-menu/index.d.ts +5 -0
  229. package/lib/modules/components/security-menu/index.js +315 -0
  230. package/lib/modules/components/toast/index.css +12 -0
  231. package/lib/modules/components/toast/index.d.ts +10 -0
  232. package/lib/modules/components/toast/index.js +66 -0
  233. package/lib/modules/components/toast/store.d.ts +17 -0
  234. package/lib/modules/components/toast/store.js +149 -0
  235. package/lib/modules/components/toast/view.d.ts +2 -0
  236. package/lib/modules/components/toast/view.js +35 -0
  237. package/lib/modules/connection-gateway/components/computer/index.js +6 -6
  238. package/lib/modules/connection-gateway/components/phone/components/callinfo/index.css +1 -1
  239. package/lib/modules/connection-gateway/components/phone/components/callinfo/index.d.ts +1 -1
  240. package/lib/modules/connection-gateway/components/phone/index.js +3 -2
  241. package/lib/modules/connection-gateway/components/tabs/index.js +2 -1
  242. package/lib/modules/connection-gateway/index.d.ts +1 -1
  243. package/lib/modules/connection-gateway/index.js +1 -1
  244. package/lib/modules/connection-gateway/store.d.ts +8 -12
  245. package/lib/modules/connection-gateway/store.js +87 -111
  246. package/lib/modules/control-bar/components/cloud-recording-buttons.d.ts +1 -0
  247. package/lib/modules/control-bar/components/cloud-recording-buttons.js +67 -0
  248. package/lib/modules/control-bar/components/meeting-details/index.css +133 -0
  249. package/lib/modules/control-bar/components/meeting-details/index.d.ts +2 -0
  250. package/lib/modules/control-bar/components/meeting-details/index.js +251 -0
  251. package/lib/modules/control-bar/components/more-actions/index.css +72 -0
  252. package/lib/modules/control-bar/components/more-actions/index.d.ts +7 -0
  253. package/lib/modules/control-bar/components/more-actions/index.js +182 -0
  254. package/lib/modules/control-bar/components/share-state-nav/index.css +74 -0
  255. package/lib/modules/control-bar/components/share-state-nav/index.d.ts +10 -0
  256. package/lib/modules/control-bar/components/share-state-nav/index.js +116 -0
  257. package/lib/modules/control-bar/components/stop-live-streaming/index.d.ts +1 -0
  258. package/lib/modules/control-bar/components/stop-live-streaming/index.js +36 -0
  259. package/lib/modules/control-bar/components/stop-live-streaming/stop-button.d.ts +6 -0
  260. package/lib/modules/control-bar/components/stop-live-streaming/stop-button.js +35 -0
  261. package/lib/modules/control-bar/components/transfer-position-icon/index.d.ts +11 -0
  262. package/lib/modules/control-bar/components/transfer-position-icon/index.js +46 -0
  263. package/lib/modules/control-bar/index.css +341 -0
  264. package/lib/modules/control-bar/index.d.ts +29 -0
  265. package/lib/modules/control-bar/index.js +111 -0
  266. package/lib/modules/control-bar/store.d.ts +111 -0
  267. package/lib/modules/control-bar/store.js +881 -0
  268. package/lib/modules/control-bar/type.d.ts +10 -0
  269. package/lib/modules/control-bar/type.js +18 -0
  270. package/lib/modules/control-bar/view.d.ts +1 -0
  271. package/lib/modules/control-bar/view.js +351 -0
  272. package/lib/modules/device-pretest/assets/virtual-backdound-resources.d.ts +9 -0
  273. package/lib/modules/device-pretest/assets/virtual-backdound-resources.js +7 -1
  274. package/lib/modules/device-pretest/audio-preview/speaker-control.js +2 -2
  275. package/lib/modules/device-pretest/index.js +2 -2
  276. package/lib/modules/device-pretest/settings/beauty.d.ts +1 -1
  277. package/lib/modules/device-pretest/settings/video-settings-basic.js +2 -2
  278. package/lib/modules/device-pretest/store.d.ts +2 -1
  279. package/lib/modules/device-pretest/store.js +7 -7
  280. package/lib/modules/dialog/components/Interpreter/electron.d.ts +2 -0
  281. package/lib/modules/dialog/components/Interpreter/electron.js +53 -0
  282. package/lib/modules/dialog/components/Interpreter/index.css +30 -0
  283. package/lib/modules/dialog/components/Interpreter/index.d.ts +4 -0
  284. package/lib/modules/dialog/components/Interpreter/index.js +62 -0
  285. package/lib/modules/dialog/components/Interpreter/user-queue/index.css +36 -0
  286. package/lib/modules/dialog/components/Interpreter/user-queue/index.d.ts +3 -0
  287. package/lib/modules/dialog/components/Interpreter/user-queue/index.js +47 -0
  288. package/lib/modules/dialog/components/chat/electron.d.ts +1 -1
  289. package/lib/modules/dialog/components/chat/electron.js +17 -44
  290. package/lib/modules/dialog/components/chat/index.js +3 -3
  291. package/lib/modules/dialog/components/confirm/electron.d.ts +1 -1
  292. package/lib/modules/dialog/components/confirm/electron.js +38 -70
  293. package/lib/modules/dialog/components/confirm/index.d.ts +1 -9
  294. package/lib/modules/dialog/components/confirm/index.js +31 -77
  295. package/lib/modules/dialog/components/connection-gateway/electron.d.ts +4 -1
  296. package/lib/modules/dialog/components/connection-gateway/electron.js +30 -40
  297. package/lib/modules/dialog/components/connection-gateway/index.d.ts +6 -1
  298. package/lib/modules/dialog/components/connection-gateway/index.js +11 -6
  299. package/lib/modules/dialog/components/control-bar/index.d.ts +7 -0
  300. package/lib/modules/dialog/components/control-bar/index.js +42 -0
  301. package/lib/modules/dialog/components/device-setting/electron.js +37 -56
  302. package/lib/modules/dialog/components/device-setting/index.js +4 -3
  303. package/lib/modules/dialog/components/invite/index.d.ts +3 -0
  304. package/lib/modules/dialog/components/invite/index.js +68 -0
  305. package/lib/modules/dialog/components/live-streaming/index.d.ts +4 -0
  306. package/lib/modules/dialog/components/live-streaming/index.js +88 -0
  307. package/lib/modules/dialog/components/operation-waiting-room/electron.js +28 -75
  308. package/lib/modules/dialog/components/operation-waiting-room/index.js +4 -4
  309. package/lib/modules/dialog/components/participant/electron.js +25 -74
  310. package/lib/modules/dialog/components/participant/index.js +6 -3
  311. package/lib/modules/dialog/components/remove-admit-waiting-room/electron.d.ts +8 -1
  312. package/lib/modules/dialog/components/remove-admit-waiting-room/electron.js +22 -75
  313. package/lib/modules/dialog/components/remove-admit-waiting-room/index.js +3 -3
  314. package/lib/modules/dialog/components/share-screen-selection/index.js +10 -28
  315. package/lib/modules/dialog/components/switch-language-channels/electron.d.ts +2 -0
  316. package/lib/modules/dialog/components/switch-language-channels/electron.js +72 -0
  317. package/lib/modules/dialog/components/switch-language-channels/index.css +30 -0
  318. package/lib/modules/dialog/components/switch-language-channels/index.d.ts +4 -0
  319. package/lib/modules/dialog/components/switch-language-channels/index.js +63 -0
  320. package/lib/modules/dialog/components/switch-language-channels/user-queue/index.css +36 -0
  321. package/lib/modules/dialog/components/switch-language-channels/user-queue/index.d.ts +3 -0
  322. package/lib/modules/dialog/components/switch-language-channels/user-queue/index.js +47 -0
  323. package/lib/modules/dialog/components/system-preference/bg1.png +0 -0
  324. package/lib/modules/dialog/components/system-preference/bg2.png +0 -0
  325. package/lib/modules/dialog/components/system-preference/electron.d.ts +5 -0
  326. package/lib/modules/dialog/components/system-preference/electron.js +42 -0
  327. package/lib/modules/dialog/components/system-preference/index.css +49 -0
  328. package/lib/modules/dialog/components/system-preference/index.d.ts +5 -0
  329. package/lib/modules/dialog/components/system-preference/index.js +150 -0
  330. package/lib/modules/dialog/components/toast/index.d.ts +3 -0
  331. package/lib/modules/dialog/components/toast/index.js +62 -0
  332. package/lib/modules/dialog/components/whiteboard/index.js +2 -2
  333. package/lib/modules/dialog/dialogs.d.ts +1 -5
  334. package/lib/modules/dialog/dialogs.js +23 -177
  335. package/lib/modules/dialog/hooks/useElectron.d.ts +26 -0
  336. package/lib/modules/dialog/hooks/useElectron.js +109 -0
  337. package/lib/modules/dialog/index.css +7 -2
  338. package/lib/modules/dialog/index.d.ts +6 -6
  339. package/lib/modules/dialog/index.js +9 -18
  340. package/lib/modules/dialog/store.d.ts +16 -18
  341. package/lib/modules/dialog/store.js +114 -164
  342. package/lib/modules/dialog/view.js +2 -2
  343. package/lib/modules/event-confirm/index.css +12 -0
  344. package/lib/modules/event-confirm/index.d.ts +10 -0
  345. package/lib/modules/event-confirm/index.js +55 -0
  346. package/lib/modules/event-confirm/store.d.ts +18 -0
  347. package/lib/modules/event-confirm/store.js +172 -0
  348. package/lib/modules/event-confirm/view.d.ts +2 -0
  349. package/lib/modules/event-confirm/view.js +156 -0
  350. package/lib/modules/event-toast/index.css +16 -0
  351. package/lib/modules/event-toast/index.d.ts +1 -1
  352. package/lib/modules/event-toast/index.js +19 -3
  353. package/lib/modules/event-toast/store.d.ts +13 -0
  354. package/lib/modules/event-toast/store.js +114 -17
  355. package/lib/modules/event-toast/view.d.ts +4 -1
  356. package/lib/modules/event-toast/view.js +28 -4
  357. package/lib/modules/invite/index.d.ts +1 -1
  358. package/lib/modules/invite/index.js +13 -3
  359. package/lib/modules/invite/pstn-invite.js +6 -9
  360. package/lib/modules/invite/store.d.ts +24 -25
  361. package/lib/modules/invite/store.js +148 -147
  362. package/lib/modules/invite/view.js +2 -2
  363. package/lib/modules/invite/voip-invite.js +2 -3
  364. package/lib/modules/layout/components/Aside.js +3 -3
  365. package/lib/modules/layout/components/Carousel.js +15 -9
  366. package/lib/modules/layout/components/Gallery.js +25 -17
  367. package/lib/modules/layout/components/Layout.js +11 -6
  368. package/lib/modules/layout/components/index.css +11 -4
  369. package/lib/modules/layout/index.css +1 -0
  370. package/lib/modules/layout/index.d.ts +4 -2
  371. package/lib/modules/layout/index.dev.js +20 -10
  372. package/lib/modules/layout/index.js +24 -18
  373. package/lib/modules/layout/member-window/index.css +95 -10
  374. package/lib/modules/layout/member-window/index.d.ts +10 -3
  375. package/lib/modules/layout/member-window/index.js +205 -112
  376. package/lib/modules/layout/store.d.ts +20 -7
  377. package/lib/modules/layout/store.js +137 -65
  378. package/lib/modules/layout/type.d.ts +2 -2
  379. package/lib/modules/layout/video-window-datasource.d.ts +5 -3
  380. package/lib/modules/layout/video-window-datasource.js +61 -26
  381. package/lib/modules/live-streaming/index.d.ts +1 -2
  382. package/lib/modules/live-streaming/index.js +13 -29
  383. package/lib/modules/live-streaming/store.d.ts +3 -7
  384. package/lib/modules/live-streaming/store.js +7 -73
  385. package/lib/modules/live-streaming/view.js +3 -3
  386. package/lib/modules/notification/context.d.ts +2 -0
  387. package/lib/modules/notification/context.js +9 -0
  388. package/lib/modules/notification/index.css +59 -0
  389. package/lib/modules/notification/index.d.ts +15 -0
  390. package/lib/modules/notification/index.js +61 -0
  391. package/lib/modules/notification/interpreter-status/index.css +76 -0
  392. package/lib/modules/notification/interpreter-status/index.d.ts +3 -0
  393. package/lib/modules/notification/interpreter-status/index.js +62 -0
  394. package/lib/modules/notification/store.d.ts +17 -0
  395. package/lib/modules/notification/store.js +129 -0
  396. package/lib/modules/notification/view.d.ts +10 -0
  397. package/lib/modules/notification/view.js +116 -0
  398. package/lib/modules/offscreen-pulling/index.d.ts +19 -0
  399. package/lib/modules/offscreen-pulling/index.js +127 -0
  400. package/lib/modules/participant/attendee/index.css +3 -0
  401. package/lib/modules/participant/attendee/index.d.ts +14 -3
  402. package/lib/modules/participant/attendee/index.js +87 -33
  403. package/lib/modules/participant/attendee/participants-more-action.d.ts +18 -0
  404. package/lib/modules/participant/attendee/participants-more-action.js +278 -0
  405. package/lib/modules/participant/components/drop-menu/index.css +59 -0
  406. package/lib/modules/participant/components/drop-menu/index.d.ts +2 -0
  407. package/lib/modules/participant/components/drop-menu/index.js +189 -0
  408. package/lib/modules/participant/components/footer/buttons.d.ts +7 -0
  409. package/lib/modules/participant/components/footer/buttons.js +53 -0
  410. package/lib/modules/participant/components/footer/index.d.ts +4 -0
  411. package/lib/modules/participant/components/footer/index.js +37 -0
  412. package/lib/modules/participant/components/merge/index.d.ts +11 -0
  413. package/lib/modules/participant/components/merge/index.js +49 -0
  414. package/lib/modules/participant/components/mute-all/index.d.ts +9 -0
  415. package/lib/modules/participant/components/mute-all/index.js +78 -0
  416. package/lib/modules/participant/components/participants/index.d.ts +2 -0
  417. package/lib/modules/participant/components/participants/index.js +201 -0
  418. package/lib/modules/participant/components/rename/index.d.ts +4 -0
  419. package/lib/modules/participant/components/rename/index.js +45 -0
  420. package/lib/modules/participant/index.css +6 -0
  421. package/lib/modules/participant/index.d.ts +8 -6
  422. package/lib/modules/participant/index.dev.js +10 -4
  423. package/lib/modules/participant/index.js +13 -33
  424. package/lib/modules/participant/member-list-data-source.d.ts +1 -1
  425. package/lib/modules/participant/member-list-data-source.js +3 -3
  426. package/lib/modules/participant/store.d.ts +38 -27
  427. package/lib/modules/participant/store.js +456 -292
  428. package/lib/modules/participant/type.d.ts +1 -1
  429. package/lib/modules/participant/view.d.ts +0 -9
  430. package/lib/modules/participant/view.js +8 -346
  431. package/lib/modules/setting/audio-settings/audio-settings.js +10 -10
  432. package/lib/modules/setting/dialog-wrapper.js +2 -2
  433. package/lib/modules/setting/general-settings/general-settings.js +2 -2
  434. package/lib/modules/setting/index.d.ts +3 -2
  435. package/lib/modules/setting/index.dev.js +1 -1
  436. package/lib/modules/setting/index.js +7 -3
  437. package/lib/modules/setting/minutes-settings/minutes-settings.js +2 -2
  438. package/lib/modules/setting/state/index.js +3 -3
  439. package/lib/modules/setting/storage-settings/storage-settings.js +2 -2
  440. package/lib/modules/setting/store.d.ts +16 -13
  441. package/lib/modules/setting/store.js +83 -53
  442. package/lib/modules/setting/translate-settings/translate-settings.js +2 -2
  443. package/lib/modules/setting/video-settings/video-settings-basic.js +2 -2
  444. package/lib/modules/setting/video-settings/video-settings.js +2 -11
  445. package/lib/modules/setting/view.js +1 -2
  446. package/lib/modules/share-screen/index.d.ts +1 -5
  447. package/lib/modules/share-screen/index.dev.js +8 -16
  448. package/lib/modules/share-screen/index.js +2 -99
  449. package/lib/modules/share-screen/selection/index.js +51 -40
  450. package/lib/modules/share-screen/share-state-bar/index.js +1 -1
  451. package/lib/modules/share-screen/store.d.ts +13 -47
  452. package/lib/modules/share-screen/store.js +470 -924
  453. package/lib/modules/share-screen/view.js +6 -19
  454. package/lib/modules/sound-effect/index.d.ts +54 -0
  455. package/lib/modules/sound-effect/index.js +295 -0
  456. package/lib/modules/sound-effect/sound-effect-player.d.ts +12 -0
  457. package/lib/modules/sound-effect/sound-effect-player.js +57 -0
  458. package/lib/modules/state-bar/index.css +3 -0
  459. package/lib/modules/state-bar/index.d.ts +8 -4
  460. package/lib/modules/state-bar/index.js +37 -23
  461. package/lib/modules/state-bar/layout-config.js +6 -7
  462. package/lib/modules/state-bar/live-streaming-state.js +10 -15
  463. package/lib/modules/state-bar/meeting-detail.css +32 -13
  464. package/lib/modules/state-bar/meeting-details.js +118 -57
  465. package/lib/modules/state-bar/meeting-network-state.js +4 -4
  466. package/lib/modules/state-bar/meeting-time.js +2 -2
  467. package/lib/modules/state-bar/network-quality.js +2 -2
  468. package/lib/modules/state-bar/recording.js +2 -3
  469. package/lib/modules/state-bar/store.d.ts +10 -6
  470. package/lib/modules/state-bar/store.js +58 -42
  471. package/lib/modules/state-bar/view.js +41 -26
  472. package/lib/modules/video-window/deviceState/index.d.ts +2 -1
  473. package/lib/modules/video-window/deviceState/index.js +8 -8
  474. package/lib/modules/video-window/index.d.ts +2 -1
  475. package/lib/modules/video-window/index.js +23 -16
  476. package/lib/modules/video-window/members/index.js +14 -8
  477. package/lib/modules/video-window/speaking/index.js +2 -2
  478. package/lib/modules/video-window/store.d.ts +13 -5
  479. package/lib/modules/video-window/store.js +73 -20
  480. package/lib/modules/video-window/topControl/index.js +2 -2
  481. package/lib/modules/video-window/type.d.ts +0 -5
  482. package/lib/modules/video-window/type.js +1 -7
  483. package/lib/modules/video-window/view.js +2 -2
  484. package/lib/modules/waiting-room-layout/index.css +17 -3
  485. package/lib/modules/waiting-room-layout/index.js +13 -3
  486. package/lib/modules/waiting-room-layout/store.d.ts +5 -2
  487. package/lib/modules/waiting-room-layout/store.js +12 -5
  488. package/lib/modules/waiting-room-layout/view.js +43 -33
  489. package/lib/modules/whiteboard/app.js +2 -2
  490. package/lib/modules/whiteboard/components/control-bar/index.js +4 -6
  491. package/lib/modules/whiteboard/components/control-bar/store.d.ts +2 -2
  492. package/lib/modules/whiteboard/components/control-bar/store.js +1 -1
  493. package/lib/modules/whiteboard/components/loading/index.js +2 -2
  494. package/lib/modules/whiteboard/components/multi-window/index.js +2 -2
  495. package/lib/modules/whiteboard/components/progress/electron.js +3 -3
  496. package/lib/modules/whiteboard/components/switch-theme/index.css +1 -0
  497. package/lib/modules/whiteboard/components/switch-theme/index.js +19 -9
  498. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +1 -1
  499. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +1 -1
  500. package/lib/modules/whiteboard/components/toolbar/store.d.ts +1 -1
  501. package/lib/modules/whiteboard/context.d.ts +1 -1
  502. package/lib/modules/whiteboard/context.js +2 -2
  503. package/lib/modules/whiteboard/index.d.ts +5 -10
  504. package/lib/modules/whiteboard/index.js +32 -74
  505. package/lib/modules/whiteboard/type.d.ts +1 -1
  506. package/lib/plugins/browser-runtime-plugin.js +27 -3
  507. package/lib/plugins/electron-rtc-plugin.js +3 -3
  508. package/lib/plugins/module-dev-plugin.d.ts +1 -1
  509. package/lib/plugins/module-dev-plugin.js +3 -3
  510. package/lib/plugins/rtm-plugin.js +3 -3
  511. package/lib/plugins/web-rtc-plugin.js +3 -3
  512. package/lib/runtime.d.ts +15 -4
  513. package/lib/translations/enUS.d.ts +267 -2
  514. package/lib/translations/enUS.js +373 -103
  515. package/lib/translations/zhCN.d.ts +267 -3
  516. package/lib/translations/zhCN.js +299 -30
  517. package/lib/type.d.ts +13 -4
  518. package/lib/type.js +4 -4
  519. package/lib/ui-manager.d.ts +8 -9
  520. package/lib/ui-manager.js +602 -655
  521. package/lib/ui-scene.d.ts +3 -3
  522. package/lib/ui-scene.js +9 -22
  523. package/lib/utilities/constant.d.ts +44 -155
  524. package/lib/utilities/constant.js +42 -129
  525. package/lib/utilities/extract.d.ts +1 -1
  526. package/lib/utilities/parameters.d.ts +4 -0
  527. package/lib/utilities/parameters.js +19 -1
  528. package/lib/utilities/renderer.d.ts +2 -1
  529. package/lib/utilities/renderer.js +6 -3
  530. package/lib/utilities/screen-capture-permission.d.ts +1 -0
  531. package/lib/utilities/screen-capture-permission.js +16 -0
  532. package/lib/utilities/screen.js +32 -23
  533. package/lib/utilities/tools.d.ts +10 -1
  534. package/lib/utilities/tools.js +69 -4
  535. package/lib/utilities/ui-resources.d.ts +1 -0
  536. package/lib/utilities/ui-resources.js +5 -2
  537. package/lib/utilities/video-track-render-context.d.ts +2 -2
  538. package/package.json +7 -7
  539. package/public/assets/loading.gif +0 -0
  540. package/public/index.html +50 -6
@@ -0,0 +1,1632 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.symbol.description.js");
5
+ require("core-js/modules/es.symbol.to-primitive.js");
6
+ require("core-js/modules/es.error.cause.js");
7
+ require("core-js/modules/es.error.to-string.js");
8
+ require("core-js/modules/es.array.is-array.js");
9
+ require("core-js/modules/es.date.to-primitive.js");
10
+ require("core-js/modules/es.function.name.js");
11
+ require("core-js/modules/es.map.js");
12
+ require("core-js/modules/es.number.constructor.js");
13
+ require("core-js/modules/es.object.create.js");
14
+ require("core-js/modules/es.object.define-properties.js");
15
+ require("core-js/modules/es.object.define-property.js");
16
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
17
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
18
+ require("core-js/modules/esnext.function.metadata.js");
19
+ require("core-js/modules/esnext.map.delete-all.js");
20
+ require("core-js/modules/esnext.map.emplace.js");
21
+ require("core-js/modules/esnext.map.every.js");
22
+ require("core-js/modules/esnext.map.filter.js");
23
+ require("core-js/modules/esnext.map.find.js");
24
+ require("core-js/modules/esnext.map.find-key.js");
25
+ require("core-js/modules/esnext.map.includes.js");
26
+ require("core-js/modules/esnext.map.key-of.js");
27
+ require("core-js/modules/esnext.map.map-keys.js");
28
+ require("core-js/modules/esnext.map.map-values.js");
29
+ require("core-js/modules/esnext.map.merge.js");
30
+ require("core-js/modules/esnext.map.reduce.js");
31
+ require("core-js/modules/esnext.map.some.js");
32
+ require("core-js/modules/esnext.map.update.js");
33
+ require("core-js/modules/esnext.symbol.metadata.js");
34
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
35
+ var _typeof = require("@babel/runtime/helpers/typeof");
36
+ Object.defineProperty(exports, "__esModule", {
37
+ value: true
38
+ });
39
+ exports["default"] = exports.StoreContext = void 0;
40
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
41
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
42
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
43
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
44
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
45
+ require("core-js/modules/es.array.concat.js");
46
+ require("core-js/modules/es.array.every.js");
47
+ require("core-js/modules/es.array.filter.js");
48
+ require("core-js/modules/es.array.find.js");
49
+ require("core-js/modules/es.array.find-index.js");
50
+ require("core-js/modules/es.array.for-each.js");
51
+ require("core-js/modules/es.array.includes.js");
52
+ require("core-js/modules/es.array.iterator.js");
53
+ require("core-js/modules/es.array.map.js");
54
+ require("core-js/modules/es.array.push.js");
55
+ require("core-js/modules/es.array.sort.js");
56
+ require("core-js/modules/es.function.bind.js");
57
+ require("core-js/modules/es.object.keys.js");
58
+ require("core-js/modules/es.object.to-string.js");
59
+ require("core-js/modules/es.set.js");
60
+ require("core-js/modules/es.string.includes.js");
61
+ require("core-js/modules/es.string.iterator.js");
62
+ require("core-js/modules/es.weak-map.js");
63
+ require("core-js/modules/esnext.async-iterator.every.js");
64
+ require("core-js/modules/esnext.async-iterator.filter.js");
65
+ require("core-js/modules/esnext.async-iterator.find.js");
66
+ require("core-js/modules/esnext.async-iterator.for-each.js");
67
+ require("core-js/modules/esnext.async-iterator.map.js");
68
+ require("core-js/modules/esnext.iterator.constructor.js");
69
+ require("core-js/modules/esnext.iterator.every.js");
70
+ require("core-js/modules/esnext.iterator.filter.js");
71
+ require("core-js/modules/esnext.iterator.find.js");
72
+ require("core-js/modules/esnext.iterator.for-each.js");
73
+ require("core-js/modules/esnext.iterator.map.js");
74
+ require("core-js/modules/esnext.set.add-all.js");
75
+ require("core-js/modules/esnext.set.delete-all.js");
76
+ require("core-js/modules/esnext.set.difference.v2.js");
77
+ require("core-js/modules/esnext.set.difference.js");
78
+ require("core-js/modules/esnext.set.every.js");
79
+ require("core-js/modules/esnext.set.filter.js");
80
+ require("core-js/modules/esnext.set.find.js");
81
+ require("core-js/modules/esnext.set.intersection.v2.js");
82
+ require("core-js/modules/esnext.set.intersection.js");
83
+ require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
84
+ require("core-js/modules/esnext.set.is-disjoint-from.js");
85
+ require("core-js/modules/esnext.set.is-subset-of.v2.js");
86
+ require("core-js/modules/esnext.set.is-subset-of.js");
87
+ require("core-js/modules/esnext.set.is-superset-of.v2.js");
88
+ require("core-js/modules/esnext.set.is-superset-of.js");
89
+ require("core-js/modules/esnext.set.join.js");
90
+ require("core-js/modules/esnext.set.map.js");
91
+ require("core-js/modules/esnext.set.reduce.js");
92
+ require("core-js/modules/esnext.set.some.js");
93
+ require("core-js/modules/esnext.set.symmetric-difference.v2.js");
94
+ require("core-js/modules/esnext.set.symmetric-difference.js");
95
+ require("core-js/modules/esnext.set.union.v2.js");
96
+ require("core-js/modules/esnext.set.union.js");
97
+ require("core-js/modules/esnext.weak-map.delete-all.js");
98
+ require("core-js/modules/esnext.weak-map.emplace.js");
99
+ require("core-js/modules/web.dom-collections.for-each.js");
100
+ require("core-js/modules/web.dom-collections.iterator.js");
101
+ require("core-js/modules/web.timers.js");
102
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
103
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
104
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
105
+ var _mobx = require("mobx");
106
+ var _i18n = require("agora-ui-foundation/lib/i18n");
107
+ var _type = require("fcr-core/lib/type");
108
+ var _uuid = require("uuid");
109
+ var _eventStore = require("../../common/event-store");
110
+ var _dialogContent = require("./dialog-content");
111
+ var _fcrCore = require("fcr-core");
112
+ var _constant = require("../../utilities/constant");
113
+ var _type2 = require("agora-rte-sdk/lib/core/scene/type");
114
+ var _type3 = require("agora-rte-sdk/lib/core/rtc/type");
115
+ var _type4 = require("agora-rte-sdk/lib/type");
116
+ var _constant2 = require("./constant");
117
+ var _switchOutputLanguageRoom = require("../action-bar/switch-output-language-room");
118
+ var _logger = require("agora-foundation/lib/logger");
119
+ var _store = require("../action-bar/store");
120
+ var _react = require("react");
121
+ var _useLanguageConfig = require("./interpreter-list/interpreter-item/components/pick-language/useLanguageConfig");
122
+ var _excluded = ["randomKey"];
123
+ var _InterpreterStore;
124
+ var _initProto, _init__isSpeaking, _init__languageRoomList, _init_localInterpreterUsers, _init_orgInterpreterUsers, _init_interpreterUsersEditState, _init_initUsers, _init_interpreterState, _init_currentDialogId, _openInterpreterStateDecs, _closeInterpreterStateDecs, _setInterpreterListEditStateDecs, _addInterpreterUsersDecs, _deleteInterpreterUsersDecs, _updateInterpreterUsersDecs, _queryInterpreterUsersDecs, _updateInterpreterRoomStatusDecs, _changeMainRoomStreamDecs, _toggleLanguageRoomDecs, _updateLanguageRoomListDecs, _changeInputLanguageDecs, _closeAllLanguageRoomInputDecs, _handleOutputLanguageRoomDecs, _changeOutputLanguageDecs, _bindLocalMicrophoneIdDecs, _joinInterpreterRoomDecs, _leaveInterpreterRoomDecs, _getInterpreterStateDecs, _openInterpreterDialogDecs, _closeInterpreterDialogDecs, _getLocalUserByInterpreterDecs, _checkIsSelfOperationDecs, _interpreterUsersUpdatedToastDecs, _interpreterStateUpdatedToastDecs, _openUpdateInterpreterStateToastDecs, _updateInterpreterUsersToastDecs, _interpreterUsersJoinToastDecs, _closeConfirmDialogDecs, _openUpdateLanguageDialogDecs, _openCreateInterpreterStatusToastDecs, _openCancelInterpreterStatusToastDecs, _getInitUsersDecs, _updateUsersDecs, _clearTimerDecs, _clearRetryTaskTimerDecs, _restoreVolumeByMainRoomDecs, _adjustMainRoomVolumeDecs, _setInterpreterRoomControlInfoDecs, _onStreamVolumeIndicationUpdatedDecs, _ref;
125
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
126
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
127
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
128
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
129
+ 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"); }
130
+ 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)]; } }; }
131
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
132
+ 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); }
133
+ 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; }
134
+ 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; }
135
+ 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; }
136
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
137
+ // 生成本地翻译员初始值
138
+ var getInterpreterItem = function getInterpreterItem() {
139
+ return _objectSpread(_objectSpread({}, _constant2.initInterpreterItemModel), {}, {
140
+ randomKey: (0, _uuid.v4)()
141
+ });
142
+ };
143
+ var _A = /*#__PURE__*/new WeakMap();
144
+ var _B = /*#__PURE__*/new WeakMap();
145
+ var _C = /*#__PURE__*/new WeakMap();
146
+ var _D = /*#__PURE__*/new WeakMap();
147
+ var _E = /*#__PURE__*/new WeakMap();
148
+ var _F = /*#__PURE__*/new WeakMap();
149
+ var _G = /*#__PURE__*/new WeakMap();
150
+ var _H = /*#__PURE__*/new WeakMap();
151
+ _ref = (_openInterpreterStateDecs = [_mobx.action, _mobx.action.bound], _closeInterpreterStateDecs = [_mobx.action, _mobx.action.bound], _setInterpreterListEditStateDecs = [_mobx.action, _mobx.action.bound], _addInterpreterUsersDecs = [_mobx.action, _mobx.action.bound], _deleteInterpreterUsersDecs = [_mobx.action, _mobx.action.bound], _updateInterpreterUsersDecs = [_mobx.action, _mobx.action.bound], _queryInterpreterUsersDecs = [_mobx.action, _mobx.action.bound], _updateInterpreterRoomStatusDecs = [_mobx.action, _mobx.action.bound], _changeMainRoomStreamDecs = [_mobx.action, _mobx.action.bound], _toggleLanguageRoomDecs = [_mobx.action, _mobx.action.bound], _updateLanguageRoomListDecs = [_mobx.action, _mobx.action.bound], _changeInputLanguageDecs = [_mobx.action, _mobx.action.bound], _closeAllLanguageRoomInputDecs = [_mobx.action, _mobx.action.bound], _handleOutputLanguageRoomDecs = [_mobx.action, _mobx.action.bound], _changeOutputLanguageDecs = [_mobx.action, _mobx.action.bound], _bindLocalMicrophoneIdDecs = [_mobx.action, _mobx.action.bound], _joinInterpreterRoomDecs = [_mobx.action, _mobx.action.bound], _leaveInterpreterRoomDecs = [_mobx.action, _mobx.action.bound], _getInterpreterStateDecs = [_mobx.action, _mobx.action.bound], _openInterpreterDialogDecs = [_mobx.action, _mobx.action.bound], _closeInterpreterDialogDecs = [_mobx.action, _mobx.action.bound], _getLocalUserByInterpreterDecs = [_mobx.action, _mobx.action.bound], _checkIsSelfOperationDecs = [_mobx.action, _mobx.action.bound], _interpreterUsersUpdatedToastDecs = [_mobx.action, _mobx.action.bound], _interpreterStateUpdatedToastDecs = [_mobx.action, _mobx.action.bound], _openUpdateInterpreterStateToastDecs = [_mobx.action, _mobx.action.bound], _updateInterpreterUsersToastDecs = [_mobx.action, _mobx.action.bound], _interpreterUsersJoinToastDecs = [_mobx.action, _mobx.action.bound], _closeConfirmDialogDecs = [_mobx.action, _mobx.action.bound], _openUpdateLanguageDialogDecs = [_mobx.action, _mobx.action.bound], _openCreateInterpreterStatusToastDecs = [_mobx.action, _mobx.action.bound], _openCancelInterpreterStatusToastDecs = [_mobx.action, _mobx.action.bound], _getInitUsersDecs = [_mobx.action, _mobx.action.bound], _updateUsersDecs = [_mobx.action, _mobx.action.bound], _clearTimerDecs = [_mobx.action, _mobx.action.bound], _clearRetryTaskTimerDecs = [_mobx.action, _mobx.action.bound], _restoreVolumeByMainRoomDecs = [_mobx.action, _mobx.action.bound], _adjustMainRoomVolumeDecs = [_mobx.action, _mobx.action.bound], _setInterpreterRoomControlInfoDecs = [_mobx.action, _mobx.action.bound], _onStreamVolumeIndicationUpdatedDecs = [_mobx.action, _mobx.action.bound], "logger");
152
+ var InterpreterStore = exports["default"] = /*#__PURE__*/function () {
153
+ function InterpreterStore(_ref2) {
154
+ var _this = this;
155
+ var roomControl = _ref2.roomControl,
156
+ interpreterControl = _ref2.interpreterControl,
157
+ uiEventStore = _ref2.uiEventStore,
158
+ deviceStore = _ref2.deviceStore,
159
+ roomStore = _ref2.roomStore,
160
+ deviceStreamStore = _ref2.deviceStreamStore,
161
+ securityStore = _ref2.securityStore;
162
+ (0, _classCallCheck2["default"])(this, InterpreterStore);
163
+ (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.getLogger)()));
164
+ (0, _defineProperty2["default"])(this, "_indicateTimerId", null);
165
+ (0, _defineProperty2["default"])(this, "_volumeTimerId", null);
166
+ (0, _defineProperty2["default"])(this, "_disposers", []);
167
+ (0, _defineProperty2["default"])(this, "_retryTask", {
168
+ timerId: null,
169
+ isAllowRetry: true
170
+ });
171
+ (0, _defineProperty2["default"])(this, "_confirmDialogs", new Set());
172
+ _classPrivateFieldInitSpec(this, _A, _init__isSpeaking(this, false));
173
+ _classPrivateFieldInitSpec(this, _B, _init__languageRoomList(this));
174
+ // 语言房间列表
175
+ _classPrivateFieldInitSpec(this, _C, _init_localInterpreterUsers(this, []));
176
+ // 本地同声传译列表
177
+ _classPrivateFieldInitSpec(this, _D, _init_orgInterpreterUsers(this, []));
178
+ // 服务端原始同声传译列表 作对比用
179
+ _classPrivateFieldInitSpec(this, _E, _init_interpreterUsersEditState(this, false));
180
+ // 同声传译列表-编辑状态
181
+ _classPrivateFieldInitSpec(this, _F, _init_initUsers(this, []));
182
+ // 历史用户列表
183
+ _classPrivateFieldInitSpec(this, _G, _init_interpreterState(this));
184
+ _classPrivateFieldInitSpec(this, _H, _init_currentDialogId(this, null));
185
+ this._mainRoomControl = roomControl;
186
+ this._interpreterControl = interpreterControl;
187
+ this._uiEventStore = uiEventStore;
188
+ this._deviceStore = deviceStore;
189
+ this._roomStore = roomStore;
190
+ this._deviceStreamStore = deviceStreamStore;
191
+ this._securityStore = securityStore;
192
+ this._streamControl = this._mainRoomControl.getStreamControl();
193
+ this._userControl = this._mainRoomControl.getUserControl();
194
+ this._localUser = this._userControl.getLocalUser();
195
+ this.interpreterState = this.getInterpreterState();
196
+ this._getInitUsers(); // 初始化历史参会者列表
197
+ this.updateLanguageRoomList(); // 初始化语言房间
198
+ this.interpreterUsersJoinToast();
199
+ this._interpreterControl.addObserver({
200
+ onInterpreterStateUpdated: function onInterpreterStateUpdated() {
201
+ _this.interpreterStateUpdatedToast.apply(_this, arguments);
202
+ _this.interpreterState = _this.getInterpreterState();
203
+ _this.queryInterpreterUsers(); // 查询同声传译列表
204
+ _this.updateLanguageRoomList();
205
+ },
206
+ onInterpreterUsersUpdated: function onInterpreterUsersUpdated(roomId, users, operatorUser) {
207
+ _this.interpreterUsersUpdatedToast(roomId, users, operatorUser);
208
+ _this.queryInterpreterUsers(); // 查询同声传译列表
209
+ _this.interpreterUsersEditState = false;
210
+ },
211
+ onInterpreterRoomListUpdated: function onInterpreterRoomListUpdated() {
212
+ _this.updateLanguageRoomList();
213
+ }
214
+ });
215
+ // 监听参会者人员变化
216
+ this._userControl.addObserver({
217
+ //成员加入
218
+ onRemoteUsersJoined: function onRemoteUsersJoined(roomId, events) {
219
+ _this._updateUsers({
220
+ roomId: roomId,
221
+ events: events
222
+ }, _constant2.UpdateType.JOIN);
223
+ },
224
+ //成员离开
225
+ onRemoteUsersLeft: function onRemoteUsersLeft(roomId, events) {
226
+ _this._updateUsers({
227
+ roomId: roomId,
228
+ events: events
229
+ }, _constant2.UpdateType.LEFT);
230
+ },
231
+ onUserInfoUpdated: function onUserInfoUpdated(roomId, event) {
232
+ _this._updateUsers({
233
+ roomId: roomId,
234
+ events: [event]
235
+ });
236
+ }
237
+ });
238
+ this._uiEventStore.addObserver({
239
+ onEvent: this._uiEvents.bind(this)
240
+ });
241
+ this._deviceStore.addObserver({
242
+ onMicrophoneChanged: function onMicrophoneChanged(microphoneId) {
243
+ var _this$_languageRoomLi;
244
+ (_this$_languageRoomLi = _this._languageRoomList) === null || _this$_languageRoomLi === void 0 || _this$_languageRoomLi.forEach(function (room) {
245
+ if (room.status === _constant2.UpdateType.JOIN) {
246
+ _this.bindLocalMicrophoneId(room, microphoneId);
247
+ }
248
+ });
249
+ }
250
+ });
251
+ this._disposers.push((0, _mobx.reaction)(function () {
252
+ return _this._isSpeaking;
253
+ }, function (speaking) {
254
+ _this._adjustMainRoomVolume(speaking);
255
+ }, {
256
+ delay: 500
257
+ }));
258
+
259
+ // @ts-ignore
260
+ window._interpreterStore = this;
261
+ }
262
+
263
+ // 同声传译——开关------------------------------------
264
+ return (0, _createClass2["default"])(InterpreterStore, [{
265
+ key: "_isSpeaking",
266
+ get: function get() {
267
+ return _classPrivateFieldGet(_A, this);
268
+ },
269
+ set: function set(v) {
270
+ _classPrivateFieldSet(_A, this, v);
271
+ }
272
+ }, {
273
+ key: "_languageRoomList",
274
+ get: function get() {
275
+ return _classPrivateFieldGet(_B, this);
276
+ },
277
+ set: function set(v) {
278
+ _classPrivateFieldSet(_B, this, v);
279
+ }
280
+ }, {
281
+ key: "localInterpreterUsers",
282
+ get: function get() {
283
+ return _classPrivateFieldGet(_C, this);
284
+ },
285
+ set: function set(v) {
286
+ _classPrivateFieldSet(_C, this, v);
287
+ }
288
+ }, {
289
+ key: "orgInterpreterUsers",
290
+ get: function get() {
291
+ return _classPrivateFieldGet(_D, this);
292
+ },
293
+ set: function set(v) {
294
+ _classPrivateFieldSet(_D, this, v);
295
+ }
296
+ }, {
297
+ key: "interpreterUsersEditState",
298
+ get: function get() {
299
+ return _classPrivateFieldGet(_E, this);
300
+ },
301
+ set: function set(v) {
302
+ _classPrivateFieldSet(_E, this, v);
303
+ }
304
+ }, {
305
+ key: "initUsers",
306
+ get: function get() {
307
+ return _classPrivateFieldGet(_F, this);
308
+ },
309
+ set: function set(v) {
310
+ _classPrivateFieldSet(_F, this, v);
311
+ }
312
+ }, {
313
+ key: "interpreterState",
314
+ get: function get() {
315
+ return _classPrivateFieldGet(_G, this);
316
+ },
317
+ set: function set(v) {
318
+ _classPrivateFieldSet(_G, this, v);
319
+ }
320
+ }, {
321
+ key: "currentDialogId",
322
+ get: function get() {
323
+ return _classPrivateFieldGet(_H, this);
324
+ },
325
+ set: function set(v) {
326
+ _classPrivateFieldSet(_H, this, v);
327
+ }
328
+ }, {
329
+ key: "hasEnableInterpreterPermission",
330
+ get: function get() {
331
+ return this._securityStore.hasEnableInterpreterPermission();
332
+ }
333
+
334
+ // 同声传译列表-表单校验是否通过
335
+ }, {
336
+ key: "interpreterUsersCheckPass",
337
+ get: function get() {
338
+ var hasNonNullValuesExcludingKey = this.localInterpreterUsers.every(function (obj) {
339
+ var remainingKeys = Object.keys(obj).filter(function (key) {
340
+ return key !== 'randomKey';
341
+ });
342
+ return remainingKeys.every(function (key) {
343
+ return obj[key] !== null && obj[key] !== undefined && obj[key] !== '';
344
+ });
345
+ });
346
+ return hasNonNullValuesExcludingKey;
347
+ }
348
+
349
+ // 同声传译列表-翻译官是否全部离线
350
+ }, {
351
+ key: "interpreterUsersAllOffLine",
352
+ get: function get() {
353
+ var _this2 = this;
354
+ var isAllOffLine = this.localInterpreterUsers.every(function (ele) {
355
+ var _this2$initUsers$find;
356
+ return (_this2$initUsers$find = _this2.initUsers.find(function (item) {
357
+ return item.userId === ele.userId;
358
+ })) === null || _this2$initUsers$find === void 0 ? void 0 : _this2$initUsers$find.isOffLine;
359
+ });
360
+ return isAllOffLine;
361
+ }
362
+
363
+ // 语言列表
364
+ }, {
365
+ key: "languageList",
366
+ get: function get() {
367
+ return this._interpreterControl.getInterpreterLanguageList();
368
+ }
369
+ }, {
370
+ key: "openInterpreterState",
371
+ value: function
372
+ // 开启同声传译
373
+ openInterpreterState() {
374
+ var interpreterUsers = this.localInterpreterUsers.map(function (ele) {
375
+ var randomKey = ele.randomKey,
376
+ res = (0, _objectWithoutProperties2["default"])(ele, _excluded);
377
+ return res;
378
+ });
379
+ this._interpreterControl.setInterpreterUsers(interpreterUsers);
380
+ this.closeInterpreterDialog();
381
+ }
382
+ }, {
383
+ key: "closeInterpreterState",
384
+ value: function
385
+ // 关闭同声传译
386
+ closeInterpreterState() {
387
+ this._interpreterControl.close();
388
+ this.closeInterpreterDialog();
389
+ }
390
+
391
+ // 同声传译——列表------------------------------------
392
+ }, {
393
+ key: "setInterpreterListEditState",
394
+ value: function
395
+ // 传译列表-设置编辑状态
396
+ setInterpreterListEditState() {
397
+ this.interpreterUsersEditState = !this.interpreterUsersEditState;
398
+ }
399
+ }, {
400
+ key: "addInterpreterUsers",
401
+ value: function
402
+ //传译列表-增加
403
+ addInterpreterUsers() {
404
+ this.localInterpreterUsers = [].concat((0, _toConsumableArray2["default"])(this.localInterpreterUsers), [getInterpreterItem()]);
405
+ }
406
+ }, {
407
+ key: "deleteInterpreterUsers",
408
+ value: function
409
+ //传译列表-删除
410
+ deleteInterpreterUsers(data) {
411
+ this.localInterpreterUsers = this.localInterpreterUsers.filter(function (ele) {
412
+ return ele.randomKey !== data.randomKey;
413
+ });
414
+ }
415
+ }, {
416
+ key: "updateInterpreterUsers",
417
+ value: function
418
+ //传译列表-更新
419
+ updateInterpreterUsers(data) {
420
+ var index = this.localInterpreterUsers.findIndex(function (ele) {
421
+ return ele.randomKey === data.randomKey;
422
+ });
423
+ var updateInterpreterListModel = (0, _toConsumableArray2["default"])(this.localInterpreterUsers);
424
+ if (index > -1) {
425
+ updateInterpreterListModel[index] = data;
426
+ } else {
427
+ updateInterpreterListModel.push(data);
428
+ }
429
+ this.localInterpreterUsers = updateInterpreterListModel;
430
+ }
431
+ }, {
432
+ key: "queryInterpreterUsers",
433
+ value: function
434
+ //传译列表-查询
435
+ queryInterpreterUsers() {
436
+ var _this$_interpreterCon;
437
+ var interpreterUsers = ((_this$_interpreterCon = this._interpreterControl.getInterpreterUserList()) === null || _this$_interpreterCon === void 0 ? void 0 : _this$_interpreterCon.map(function (ele) {
438
+ return _objectSpread(_objectSpread({}, ele), {}, {
439
+ randomKey: (0, _uuid.v4)()
440
+ });
441
+ })) || [];
442
+ this.orgInterpreterUsers = interpreterUsers;
443
+ this.localInterpreterUsers = interpreterUsers.length > 0 ? interpreterUsers : [getInterpreterItem()];
444
+ }
445
+ // 同声传译——列表------------------------------------end
446
+
447
+ // 同步更改的后的语言房间状态
448
+ }, {
449
+ key: "updateInterpreterRoomStatus",
450
+ value: function () {
451
+ var _updateInterpreterRoomStatus = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(executeRoomList) {
452
+ var _this$_languageRoomLi2;
453
+ return _regenerator["default"].wrap(function _callee$(_context) {
454
+ while (1) switch (_context.prev = _context.next) {
455
+ case 0:
456
+ this._languageRoomList = (_this$_languageRoomLi2 = this._languageRoomList) === null || _this$_languageRoomLi2 === void 0 ? void 0 : _this$_languageRoomLi2.map(function (ele) {
457
+ var executeRoom = executeRoomList.find(function (item) {
458
+ return item.language === ele.language;
459
+ }) || {};
460
+ return _objectSpread(_objectSpread({}, ele), executeRoom);
461
+ });
462
+ case 1:
463
+ case "end":
464
+ return _context.stop();
465
+ }
466
+ }, _callee, this);
467
+ }));
468
+ function updateInterpreterRoomStatus(_x) {
469
+ return _updateInterpreterRoomStatus.apply(this, arguments);
470
+ }
471
+ return updateInterpreterRoomStatus;
472
+ }() // #region checked
473
+ // 控制主房间说话
474
+ }, {
475
+ key: "changeMainRoomStream",
476
+ value: function () {
477
+ var _changeMainRoomStream = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(_ref3) {
478
+ var _this3 = this;
479
+ var close, callback, localStreamList, micStreams;
480
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
481
+ while (1) switch (_context2.prev = _context2.next) {
482
+ case 0:
483
+ close = _ref3.close, callback = _ref3.callback;
484
+ this._clearRetryTaskTimer();
485
+ if (!this._mainRoomControl.getStreamControl()) {
486
+ _context2.next = 8;
487
+ break;
488
+ }
489
+ localStreamList = this._mainRoomControl.getStreamControl().getStreamsByUserId(this._mainRoomControl.getUserControl().getLocalUser().userId);
490
+ micStreams = localStreamList.filter(function (ele) {
491
+ return ele.audioSourceType === _type4.AgoraRteAudioSourceType.MICROPHONE;
492
+ });
493
+ if (!micStreams.length) {
494
+ _context2.next = 8;
495
+ break;
496
+ }
497
+ _context2.next = 8;
498
+ return (0, _constant2.retryTask)(function () {
499
+ return _this3._mainRoomControl.getStreamControl().updatePublishPrivilegeOfStreams((0, _defineProperty2["default"])({}, micStreams[0].streamId, {
500
+ audioPrivilege: close ? _fcrCore.FcrStreamPrivilegeOperation.NOPRIVILEGE : _fcrCore.FcrStreamPrivilegeOperation.HAS_PRIVILEGE,
501
+ videoPrivilege: _fcrCore.FcrStreamPrivilegeOperation.NOOPERATION
502
+ }));
503
+ }, this._retryTask);
504
+ case 8:
505
+ callback && callback(true);
506
+ case 9:
507
+ case "end":
508
+ return _context2.stop();
509
+ }
510
+ }, _callee2, this);
511
+ }));
512
+ function changeMainRoomStream(_x2) {
513
+ return _changeMainRoomStream.apply(this, arguments);
514
+ }
515
+ return changeMainRoomStream;
516
+ }() // 更新翻译官语言房间状态
517
+ }, {
518
+ key: "toggleLanguageRoom",
519
+ value: function () {
520
+ var _toggleLanguageRoom = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(_ref4) {
521
+ var languageRoomList, actionType, callback, executeRoomList, _languageRoomList;
522
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
523
+ while (1) switch (_context3.prev = _context3.next) {
524
+ case 0:
525
+ languageRoomList = _ref4.languageRoomList, actionType = _ref4.actionType, callback = _ref4.callback;
526
+ _context3.prev = 1;
527
+ executeRoomList = [];
528
+ if (!this._languageRoomList) {
529
+ _context3.next = 13;
530
+ break;
531
+ }
532
+ _languageRoomList = this._languageRoomList;
533
+ executeRoomList = languageRoomList.map(function (languageRoom) {
534
+ return _languageRoomList.find(function (ele) {
535
+ return ele.language === languageRoom.value;
536
+ });
537
+ }).filter(function (languageRoom) {
538
+ return !!languageRoom;
539
+ });
540
+ if (!(actionType === _constant2.UpdateType.JOIN)) {
541
+ _context3.next = 11;
542
+ break;
543
+ }
544
+ _context3.next = 9;
545
+ return this.joinInterpreterRoom(executeRoomList);
546
+ case 9:
547
+ _context3.next = 13;
548
+ break;
549
+ case 11:
550
+ _context3.next = 13;
551
+ return this.leaveInterpreterRoom(executeRoomList);
552
+ case 13:
553
+ callback && callback(executeRoomList);
554
+ _context3.next = 19;
555
+ break;
556
+ case 16:
557
+ _context3.prev = 16;
558
+ _context3.t0 = _context3["catch"](1);
559
+ callback && callback([]);
560
+ case 19:
561
+ case "end":
562
+ return _context3.stop();
563
+ }
564
+ }, _callee3, this, [[1, 16]]);
565
+ }));
566
+ function toggleLanguageRoom(_x3) {
567
+ return _toggleLanguageRoom.apply(this, arguments);
568
+ }
569
+ return toggleLanguageRoom;
570
+ }() // 更新语言房间Control
571
+ }, {
572
+ key: "updateLanguageRoomList",
573
+ value: function () {
574
+ var _updateLanguageRoomList = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4() {
575
+ var _this4 = this;
576
+ var rooms, newlanguageRoomList;
577
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
578
+ while (1) switch (_context4.prev = _context4.next) {
579
+ case 0:
580
+ rooms = this._interpreterControl.getInterpreterRoomList(); //语言房间列表
581
+ newlanguageRoomList = (rooms === null || rooms === void 0 ? void 0 : rooms.map(function (ele) {
582
+ return _objectSpread(_objectSpread({}, ele), {}, {
583
+ control: _this4._interpreterControl.createRoomControl(ele.roomId),
584
+ status: _constant2.UpdateType.LEFT
585
+ });
586
+ }).filter(function (room) {
587
+ var _this4$_languageRoomL;
588
+ return !((_this4$_languageRoomL = _this4._languageRoomList) !== null && _this4$_languageRoomL !== void 0 && _this4$_languageRoomL.find(function (preRomm) {
589
+ return preRomm.roomId === room.roomId;
590
+ }));
591
+ })) || [];
592
+ this._languageRoomList = [].concat((0, _toConsumableArray2["default"])(this._languageRoomList || []), (0, _toConsumableArray2["default"])(newlanguageRoomList));
593
+ case 3:
594
+ case "end":
595
+ return _context4.stop();
596
+ }
597
+ }, _callee4, this);
598
+ }));
599
+ function updateLanguageRoomList() {
600
+ return _updateLanguageRoomList.apply(this, arguments);
601
+ }
602
+ return updateLanguageRoomList;
603
+ }()
604
+ }, {
605
+ key: "_updateUserProperties",
606
+ value: function () {
607
+ var _updateUserProperties2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(language) {
608
+ var interpreterLangCode;
609
+ return _regenerator["default"].wrap(function _callee5$(_context5) {
610
+ while (1) switch (_context5.prev = _context5.next) {
611
+ case 0:
612
+ _context5.prev = 0;
613
+ interpreterLangCode = this._userControl.getUserPropertiesByKeyPath('interpreterLangCode', this._localUser.userId);
614
+ if (!(!language && !interpreterLangCode)) {
615
+ _context5.next = 4;
616
+ break;
617
+ }
618
+ return _context5.abrupt("return");
619
+ case 4:
620
+ _context5.next = 6;
621
+ return this._userControl.updateUserProperties({
622
+ interpreterLangCode: language
623
+ }, {}, this._localUser.userId);
624
+ case 6:
625
+ this.logger.info("interpreterLog- _updateUserProperties interpreterLangCode:".concat(language, " succeed"));
626
+ _context5.next = 12;
627
+ break;
628
+ case 9:
629
+ _context5.prev = 9;
630
+ _context5.t0 = _context5["catch"](0);
631
+ this.logger.info("interpreterLog- _updateUserProperties interpreterLangCode:".concat(language, " fail"));
632
+ case 12:
633
+ case "end":
634
+ return _context5.stop();
635
+ }
636
+ }, _callee5, this, [[0, 9]]);
637
+ }));
638
+ function _updateUserProperties(_x4) {
639
+ return _updateUserProperties2.apply(this, arguments);
640
+ }
641
+ return _updateUserProperties;
642
+ }() // 修改输入的语言频道
643
+ }, {
644
+ key: "changeInputLanguage",
645
+ value: function () {
646
+ var _changeInputLanguage = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee8(_ref5) {
647
+ var _this5 = this;
648
+ var language, options, callback, updateTargetLanguageStreams, updateSourceLanguageStreams, outputLanguageList, _this$getLocalUserByI, interpreter, _this$_languageRoomLi3, _this$_languageRoomLi4, targetLanguage, sourceLanguage, openTargetLanguage, openSourceLanguage, updateTargetLanguage, updateSourceLanguage, sourceLanguageRoomControl, targetLanguageRoomControl;
649
+ return _regenerator["default"].wrap(function _callee8$(_context8) {
650
+ while (1) switch (_context8.prev = _context8.next) {
651
+ case 0:
652
+ language = _ref5.language, options = _ref5.options, callback = _ref5.callback;
653
+ this._clearRetryTaskTimer();
654
+ this._updateUserProperties(language);
655
+ updateTargetLanguageStreams = /*#__PURE__*/function () {
656
+ var _ref6 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee6(open) {
657
+ var _this5$getLocalUserBy, interpreter, _this5$_languageRoomL, targetLanguage, targetLanguageRoomControl;
658
+ return _regenerator["default"].wrap(function _callee6$(_context6) {
659
+ while (1) switch (_context6.prev = _context6.next) {
660
+ case 0:
661
+ _this5$getLocalUserBy = _this5.getLocalUserByInterpreter(), interpreter = _this5$getLocalUserBy.interpreter;
662
+ if (!interpreter) {
663
+ _context6.next = 7;
664
+ break;
665
+ }
666
+ targetLanguage = interpreter.targetLanguage;
667
+ targetLanguageRoomControl = (_this5$_languageRoomL = _this5._languageRoomList) === null || _this5$_languageRoomL === void 0 || (_this5$_languageRoomL = _this5$_languageRoomL.find(function (ele) {
668
+ return ele.language === targetLanguage;
669
+ })) === null || _this5$_languageRoomL === void 0 ? void 0 : _this5$_languageRoomL.control;
670
+ if (!targetLanguageRoomControl) {
671
+ _context6.next = 7;
672
+ break;
673
+ }
674
+ _context6.next = 7;
675
+ return (0, _constant2.retryTask)(function () {
676
+ return _this5._deviceStreamStore.updateStreams(targetLanguageRoomControl, open);
677
+ }, _this5._retryTask);
678
+ case 7:
679
+ case "end":
680
+ return _context6.stop();
681
+ }
682
+ }, _callee6);
683
+ }));
684
+ return function updateTargetLanguageStreams(_x6) {
685
+ return _ref6.apply(this, arguments);
686
+ };
687
+ }();
688
+ updateSourceLanguageStreams = /*#__PURE__*/function () {
689
+ var _ref7 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee7(open) {
690
+ var _this5$getLocalUserBy2, interpreter, _this5$_languageRoomL2, sourceLanguage, sourceLanguageRoomControl;
691
+ return _regenerator["default"].wrap(function _callee7$(_context7) {
692
+ while (1) switch (_context7.prev = _context7.next) {
693
+ case 0:
694
+ _this5$getLocalUserBy2 = _this5.getLocalUserByInterpreter(), interpreter = _this5$getLocalUserBy2.interpreter;
695
+ if (!interpreter) {
696
+ _context7.next = 7;
697
+ break;
698
+ }
699
+ sourceLanguage = interpreter.sourceLanguage;
700
+ sourceLanguageRoomControl = (_this5$_languageRoomL2 = _this5._languageRoomList) === null || _this5$_languageRoomL2 === void 0 || (_this5$_languageRoomL2 = _this5$_languageRoomL2.find(function (ele) {
701
+ return ele.language === sourceLanguage;
702
+ })) === null || _this5$_languageRoomL2 === void 0 ? void 0 : _this5$_languageRoomL2.control;
703
+ if (!sourceLanguageRoomControl) {
704
+ _context7.next = 7;
705
+ break;
706
+ }
707
+ _context7.next = 7;
708
+ return (0, _constant2.retryTask)(function () {
709
+ return _this5._deviceStreamStore.updateStreams(sourceLanguageRoomControl, open);
710
+ }, _this5._retryTask);
711
+ case 7:
712
+ case "end":
713
+ return _context7.stop();
714
+ }
715
+ }, _callee7);
716
+ }));
717
+ return function updateSourceLanguageStreams(_x7) {
718
+ return _ref7.apply(this, arguments);
719
+ };
720
+ }();
721
+ outputLanguageList = (0, _toConsumableArray2["default"])(options);
722
+ _this$getLocalUserByI = this.getLocalUserByInterpreter(), interpreter = _this$getLocalUserByI.interpreter;
723
+ if (!interpreter) {
724
+ _context8.next = 29;
725
+ break;
726
+ }
727
+ targetLanguage = interpreter.targetLanguage, sourceLanguage = interpreter.sourceLanguage;
728
+ openTargetLanguage = language === targetLanguage;
729
+ openSourceLanguage = language === sourceLanguage;
730
+ updateTargetLanguage = function updateTargetLanguage() {
731
+ outputLanguageList = (0, _constant2.updateOutputLanguageList)({
732
+ outputLanguageList: outputLanguageList,
733
+ language: targetLanguage,
734
+ open: openTargetLanguage
735
+ });
736
+ };
737
+ updateSourceLanguage = function updateSourceLanguage() {
738
+ outputLanguageList = (0, _constant2.updateOutputLanguageList)({
739
+ outputLanguageList: outputLanguageList,
740
+ language: sourceLanguage,
741
+ open: openSourceLanguage
742
+ });
743
+ };
744
+ if (!this._deviceStore.microphoneEnabled) {
745
+ _context8.next = 22;
746
+ break;
747
+ }
748
+ _context8.next = 16;
749
+ return updateTargetLanguageStreams(openTargetLanguage);
750
+ case 16:
751
+ updateTargetLanguage();
752
+ _context8.next = 19;
753
+ return updateSourceLanguageStreams(openSourceLanguage);
754
+ case 19:
755
+ updateSourceLanguage();
756
+ _context8.next = 25;
757
+ break;
758
+ case 22:
759
+ updateTargetLanguage();
760
+ updateSourceLanguage();
761
+ this._uiEventStore.showToast({
762
+ type: 'info',
763
+ message: (0, _i18n.transI18n)('fmt_interpretation_interpreter_toast_label_open_micro')
764
+ });
765
+ case 25:
766
+ sourceLanguageRoomControl = (_this$_languageRoomLi3 = this._languageRoomList) === null || _this$_languageRoomLi3 === void 0 || (_this$_languageRoomLi3 = _this$_languageRoomLi3.find(function (ele) {
767
+ return ele.language === sourceLanguage;
768
+ })) === null || _this$_languageRoomLi3 === void 0 ? void 0 : _this$_languageRoomLi3.control;
769
+ targetLanguageRoomControl = (_this$_languageRoomLi4 = this._languageRoomList) === null || _this$_languageRoomLi4 === void 0 || (_this$_languageRoomLi4 = _this$_languageRoomLi4.find(function (ele) {
770
+ return ele.language === targetLanguage;
771
+ })) === null || _this$_languageRoomLi4 === void 0 ? void 0 : _this$_languageRoomLi4.control;
772
+ if (sourceLanguageRoomControl && targetLanguageRoomControl) {
773
+ this._setInterpreterRoomControlInfo({
774
+ targetLanguageRoomControl: targetLanguageRoomControl,
775
+ sourceLanguageRoomControl: sourceLanguageRoomControl,
776
+ interpreter: interpreter,
777
+ language: language
778
+ });
779
+ }
780
+ callback && callback(outputLanguageList);
781
+ case 29:
782
+ case "end":
783
+ return _context8.stop();
784
+ }
785
+ }, _callee8, this);
786
+ }));
787
+ function changeInputLanguage(_x5) {
788
+ return _changeInputLanguage.apply(this, arguments);
789
+ }
790
+ return changeInputLanguage;
791
+ }()
792
+ }, {
793
+ key: "closeAllLanguageRoomInput",
794
+ value: function () {
795
+ var _closeAllLanguageRoomInput = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee9(_ref8) {
796
+ var _this6 = this;
797
+ var options, callback, _loop, index;
798
+ return _regenerator["default"].wrap(function _callee9$(_context10) {
799
+ while (1) switch (_context10.prev = _context10.next) {
800
+ case 0:
801
+ options = _ref8.options, callback = _ref8.callback;
802
+ _loop = /*#__PURE__*/_regenerator["default"].mark(function _loop() {
803
+ var _this6$_languageRoomL;
804
+ var room, roomControl;
805
+ return _regenerator["default"].wrap(function _loop$(_context9) {
806
+ while (1) switch (_context9.prev = _context9.next) {
807
+ case 0:
808
+ room = options[index];
809
+ roomControl = (_this6$_languageRoomL = _this6._languageRoomList) === null || _this6$_languageRoomL === void 0 || (_this6$_languageRoomL = _this6$_languageRoomL.find(function (ele) {
810
+ return ele.language === room.value;
811
+ })) === null || _this6$_languageRoomL === void 0 ? void 0 : _this6$_languageRoomL.control;
812
+ if (!roomControl) {
813
+ _context9.next = 5;
814
+ break;
815
+ }
816
+ _context9.next = 5;
817
+ return (0, _constant2.retryTask)(function () {
818
+ return _this6._deviceStreamStore.updateStreams(roomControl, false);
819
+ }, _this6._retryTask);
820
+ case 5:
821
+ case "end":
822
+ return _context9.stop();
823
+ }
824
+ }, _loop);
825
+ });
826
+ index = 0;
827
+ case 3:
828
+ if (!(index < options.length)) {
829
+ _context10.next = 8;
830
+ break;
831
+ }
832
+ return _context10.delegateYield(_loop(), "t0", 5);
833
+ case 5:
834
+ index++;
835
+ _context10.next = 3;
836
+ break;
837
+ case 8:
838
+ callback && callback();
839
+ case 9:
840
+ case "end":
841
+ return _context10.stop();
842
+ }
843
+ }, _callee9);
844
+ }));
845
+ function closeAllLanguageRoomInput(_x8) {
846
+ return _closeAllLanguageRoomInput.apply(this, arguments);
847
+ }
848
+ return closeAllLanguageRoomInput;
849
+ }()
850
+ }, {
851
+ key: "handleOutputLanguageRoom",
852
+ value: function () {
853
+ var _handleOutputLanguageRoom = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee10(_ref9) {
854
+ var _languageRoomList, language, interpreterRoomList, event, isInterpreterLanguageByOrgLanguage, languageRoom;
855
+ return _regenerator["default"].wrap(function _callee10$(_context11) {
856
+ while (1) switch (_context11.prev = _context11.next) {
857
+ case 0:
858
+ _languageRoomList = _ref9._languageRoomList, language = _ref9.language, interpreterRoomList = _ref9.interpreterRoomList, event = _ref9.event;
859
+ isInterpreterLanguageByOrgLanguage = interpreterRoomList.includes(language);
860
+ languageRoom = _languageRoomList.find(function (ele) {
861
+ return ele.language === language;
862
+ });
863
+ if (!languageRoom) {
864
+ _context11.next = 16;
865
+ break;
866
+ }
867
+ if (!isInterpreterLanguageByOrgLanguage) {
868
+ _context11.next = 8;
869
+ break;
870
+ }
871
+ this._uiEventStore.sendEvent(_constant.UIAction.TOGGLE_INTERPRETER_REMOTE_AUDIO, {
872
+ roomControl: languageRoom.control,
873
+ event: event
874
+ });
875
+ _context11.next = 15;
876
+ break;
877
+ case 8:
878
+ if (!(event === _store.EventType.STOP)) {
879
+ _context11.next = 13;
880
+ break;
881
+ }
882
+ _context11.next = 11;
883
+ return this.leaveInterpreterRoom([languageRoom], true);
884
+ case 11:
885
+ _context11.next = 15;
886
+ break;
887
+ case 13:
888
+ _context11.next = 15;
889
+ return this.joinInterpreterRoom([languageRoom], true);
890
+ case 15:
891
+ if (event === _store.EventType.STOP) {
892
+ languageRoom.control.getStreamControl().removeObserver({
893
+ onStreamVolumeIndicationUpdated: this._onStreamVolumeIndicationUpdated
894
+ });
895
+ } else {
896
+ languageRoom.control.getStreamControl().addObserver({
897
+ onStreamVolumeIndicationUpdated: this._onStreamVolumeIndicationUpdated
898
+ });
899
+ }
900
+ case 16:
901
+ case "end":
902
+ return _context11.stop();
903
+ }
904
+ }, _callee10, this);
905
+ }));
906
+ function handleOutputLanguageRoom(_x9) {
907
+ return _handleOutputLanguageRoom.apply(this, arguments);
908
+ }
909
+ return handleOutputLanguageRoom;
910
+ }() // 修改输出的语言频道
911
+ }, {
912
+ key: "changeOutputLanguage",
913
+ value: function () {
914
+ var _changeOutputLanguage = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee11(_ref10) {
915
+ var language, orgLanguage, callback, _this$getLocalUserByI2, interpreter, interpreterRoomList, _targetLanguage, _sourceLanguage;
916
+ return _regenerator["default"].wrap(function _callee11$(_context12) {
917
+ while (1) switch (_context12.prev = _context12.next) {
918
+ case 0:
919
+ language = _ref10.language, orgLanguage = _ref10.orgLanguage, callback = _ref10.callback;
920
+ this._clearRetryTaskTimer();
921
+ _context12.prev = 2;
922
+ if (!this._languageRoomList) {
923
+ _context12.next = 23;
924
+ break;
925
+ }
926
+ _this$getLocalUserByI2 = this.getLocalUserByInterpreter(), interpreter = _this$getLocalUserByI2.interpreter;
927
+ interpreterRoomList = [];
928
+ if (interpreter) {
929
+ _targetLanguage = interpreter.targetLanguage, _sourceLanguage = interpreter.sourceLanguage;
930
+ interpreterRoomList = [_targetLanguage, _sourceLanguage];
931
+ }
932
+ if (!(language === _switchOutputLanguageRoom.CLOSE_ALL_LANGUAGE_ROOM && orgLanguage !== _switchOutputLanguageRoom.CLOSE_ALL_LANGUAGE_ROOM)) {
933
+ _context12.next = 11;
934
+ break;
935
+ }
936
+ _context12.next = 10;
937
+ return this.handleOutputLanguageRoom({
938
+ _languageRoomList: this._languageRoomList,
939
+ interpreterRoomList: interpreterRoomList,
940
+ language: orgLanguage,
941
+ event: _store.EventType.STOP
942
+ });
943
+ case 10:
944
+ this._uiEventStore.sendEvent(_constant.UIAction.TOGGLE_MAINROOM_REMOTE_AUDIO, {
945
+ event: _store.EventType.START
946
+ });
947
+ case 11:
948
+ if (!(language !== _switchOutputLanguageRoom.CLOSE_ALL_LANGUAGE_ROOM && orgLanguage === _switchOutputLanguageRoom.CLOSE_ALL_LANGUAGE_ROOM)) {
949
+ _context12.next = 15;
950
+ break;
951
+ }
952
+ _context12.next = 14;
953
+ return this.handleOutputLanguageRoom({
954
+ _languageRoomList: this._languageRoomList,
955
+ language: language,
956
+ interpreterRoomList: interpreterRoomList,
957
+ event: _store.EventType.START
958
+ });
959
+ case 14:
960
+ this._uiEventStore.sendEvent(_constant.UIAction.TOGGLE_MAINROOM_REMOTE_AUDIO, {
961
+ event: _store.EventType.STOP
962
+ });
963
+ case 15:
964
+ if (!(language !== _switchOutputLanguageRoom.CLOSE_ALL_LANGUAGE_ROOM && orgLanguage !== _switchOutputLanguageRoom.CLOSE_ALL_LANGUAGE_ROOM)) {
965
+ _context12.next = 20;
966
+ break;
967
+ }
968
+ _context12.next = 18;
969
+ return this.handleOutputLanguageRoom({
970
+ _languageRoomList: this._languageRoomList,
971
+ language: language,
972
+ interpreterRoomList: interpreterRoomList,
973
+ event: _store.EventType.START
974
+ });
975
+ case 18:
976
+ _context12.next = 20;
977
+ return this.handleOutputLanguageRoom({
978
+ _languageRoomList: this._languageRoomList,
979
+ interpreterRoomList: interpreterRoomList,
980
+ language: orgLanguage,
981
+ event: _store.EventType.STOP
982
+ });
983
+ case 20:
984
+ callback && callback(true);
985
+ _context12.next = 24;
986
+ break;
987
+ case 23:
988
+ callback && callback(false);
989
+ case 24:
990
+ _context12.next = 29;
991
+ break;
992
+ case 26:
993
+ _context12.prev = 26;
994
+ _context12.t0 = _context12["catch"](2);
995
+ callback && callback(false);
996
+ case 29:
997
+ case "end":
998
+ return _context12.stop();
999
+ }
1000
+ }, _callee11, this, [[2, 26]]);
1001
+ }));
1002
+ function changeOutputLanguage(_x10) {
1003
+ return _changeOutputLanguage.apply(this, arguments);
1004
+ }
1005
+ return changeOutputLanguage;
1006
+ }()
1007
+ }, {
1008
+ key: "bindLocalMicrophoneId",
1009
+ value: function bindLocalMicrophoneId(room, _microphoneId) {
1010
+ var microphoneId = _microphoneId || this._deviceStore.currentDeviceId.microphoneDeviceId;
1011
+ if (microphoneId) {
1012
+ var streamList = room.control.getStreamControl().getStreamsByUserId(room.control.getUserControl().getLocalUser().userId);
1013
+ var micStream = streamList.find(function (stream) {
1014
+ return stream.audioSourceType === _fcrCore.FcrAudioSourceType.MICROPHONE;
1015
+ });
1016
+ if (micStream && micStream.audioSourceId !== microphoneId) {
1017
+ var _room$control$getRoom;
1018
+ this.logger.info("bind local microphone id to stream: [".concat(micStream.streamId, "], room: ").concat((_room$control$getRoom = room.control.getRoomInfo()) === null || _room$control$getRoom === void 0 ? void 0 : _room$control$getRoom.roomId));
1019
+ room.control.getStreamControl().bindLocalStreams([{
1020
+ streamId: micStream.streamId,
1021
+ audioSourceId: microphoneId
1022
+ }]);
1023
+ }
1024
+ }
1025
+ }
1026
+
1027
+ // 加入语言房间
1028
+ }, {
1029
+ key: "joinInterpreterRoom",
1030
+ value: function () {
1031
+ var _joinInterpreterRoom = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee12(data, isToggleInterperterRemoteAudio) {
1032
+ var _this7 = this;
1033
+ var _this$getLocalUserByI3, localUser, interpreter, executeRoomList, _loop2, index;
1034
+ return _regenerator["default"].wrap(function _callee12$(_context14) {
1035
+ while (1) switch (_context14.prev = _context14.next) {
1036
+ case 0:
1037
+ _this$getLocalUserByI3 = this.getLocalUserByInterpreter(), localUser = _this$getLocalUserByI3.localUser, interpreter = _this$getLocalUserByI3.interpreter;
1038
+ executeRoomList = (0, _toConsumableArray2["default"])(data);
1039
+ _loop2 = /*#__PURE__*/_regenerator["default"].mark(function _loop2() {
1040
+ var room;
1041
+ return _regenerator["default"].wrap(function _loop2$(_context13) {
1042
+ while (1) switch (_context13.prev = _context13.next) {
1043
+ case 0:
1044
+ room = executeRoomList[index];
1045
+ if (!(room.status === _constant2.UpdateType.LEFT)) {
1046
+ _context13.next = 9;
1047
+ break;
1048
+ }
1049
+ executeRoomList[index].status = _constant2.UpdateType.LOADING;
1050
+ _context13.next = 5;
1051
+ return (0, _constant2.retryTask)(function () {
1052
+ return _this7._roomStore.joinInterpreterRoom({
1053
+ control: room.control,
1054
+ roomJoinOptions: {
1055
+ roomToken: '',
1056
+ streamLatency: _fcrCore.FcrStreamLatencyLevel.ULTRA_LOW,
1057
+ createStreamConfigs: [{
1058
+ videoSourceState: _type3.AgoraRtcMediaSourceState.CLOSE,
1059
+ audioSourceState: _type3.AgoraRtcMediaSourceState.CLOSE,
1060
+ videoSourceId: '',
1061
+ audioSourceId: '',
1062
+ streamName: 'default',
1063
+ streamType: _type2.AgoraRteMediaStreamType.NONE,
1064
+ videoSourceType: _type4.AgoraRteVideoSourceType.CAMERA,
1065
+ audioSourceType: _type4.AgoraRteAudioSourceType.MICROPHONE
1066
+ }],
1067
+ userName: localUser.userName,
1068
+ // userRole: !!interpreter ? FcrUserRole.COHOST : FcrUserRole.PARTICIPANT,
1069
+ userRole: _type.FcrUserRole.PARTICIPANT
1070
+ },
1071
+ language: room.language,
1072
+ isToggleInterperterRemoteAudio: isToggleInterperterRemoteAudio
1073
+ });
1074
+ }, _this7._retryTask);
1075
+ case 5:
1076
+ executeRoomList[index].status = _constant2.UpdateType.JOIN;
1077
+ _this7.bindLocalMicrophoneId(executeRoomList[index]);
1078
+ _context13.next = 10;
1079
+ break;
1080
+ case 9:
1081
+ _this7.logger.info('非离开状态 无法加入房间', room);
1082
+ case 10:
1083
+ case "end":
1084
+ return _context13.stop();
1085
+ }
1086
+ }, _loop2);
1087
+ });
1088
+ index = 0;
1089
+ case 4:
1090
+ if (!(index < executeRoomList.length)) {
1091
+ _context14.next = 9;
1092
+ break;
1093
+ }
1094
+ return _context14.delegateYield(_loop2(), "t0", 6);
1095
+ case 6:
1096
+ index++;
1097
+ _context14.next = 4;
1098
+ break;
1099
+ case 9:
1100
+ this.updateInterpreterRoomStatus(executeRoomList);
1101
+ case 10:
1102
+ case "end":
1103
+ return _context14.stop();
1104
+ }
1105
+ }, _callee12, this);
1106
+ }));
1107
+ function joinInterpreterRoom(_x11, _x12) {
1108
+ return _joinInterpreterRoom.apply(this, arguments);
1109
+ }
1110
+ return joinInterpreterRoom;
1111
+ }() // 离开语言房间
1112
+ }, {
1113
+ key: "leaveInterpreterRoom",
1114
+ value: function () {
1115
+ var _leaveInterpreterRoom = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee13(data, isToggleInterperterRemoteAudio) {
1116
+ var _this8 = this;
1117
+ var executeRoomList, _loop3, index;
1118
+ return _regenerator["default"].wrap(function _callee13$(_context16) {
1119
+ while (1) switch (_context16.prev = _context16.next) {
1120
+ case 0:
1121
+ executeRoomList = (0, _toConsumableArray2["default"])(data);
1122
+ _loop3 = /*#__PURE__*/_regenerator["default"].mark(function _loop3() {
1123
+ var room;
1124
+ return _regenerator["default"].wrap(function _loop3$(_context15) {
1125
+ while (1) switch (_context15.prev = _context15.next) {
1126
+ case 0:
1127
+ room = executeRoomList[index];
1128
+ if (!(room.status === _constant2.UpdateType.JOIN)) {
1129
+ _context15.next = 8;
1130
+ break;
1131
+ }
1132
+ executeRoomList[index].status = _constant2.UpdateType.LOADING;
1133
+ _context15.next = 5;
1134
+ return (0, _constant2.retryTask)(function () {
1135
+ return _this8._roomStore.leaveInterpreterRoom({
1136
+ control: room.control,
1137
+ language: room.language,
1138
+ isToggleInterperterRemoteAudio: isToggleInterperterRemoteAudio
1139
+ });
1140
+ }, _this8._retryTask);
1141
+ case 5:
1142
+ executeRoomList[index].status = _constant2.UpdateType.LEFT;
1143
+ _context15.next = 9;
1144
+ break;
1145
+ case 8:
1146
+ _this8.logger.info('非加入状态 无法离开房间', room);
1147
+ case 9:
1148
+ case "end":
1149
+ return _context15.stop();
1150
+ }
1151
+ }, _loop3);
1152
+ });
1153
+ index = 0;
1154
+ case 3:
1155
+ if (!(index < executeRoomList.length)) {
1156
+ _context16.next = 8;
1157
+ break;
1158
+ }
1159
+ return _context16.delegateYield(_loop3(), "t0", 5);
1160
+ case 5:
1161
+ index++;
1162
+ _context16.next = 3;
1163
+ break;
1164
+ case 8:
1165
+ this.updateInterpreterRoomStatus(executeRoomList);
1166
+ case 9:
1167
+ case "end":
1168
+ return _context16.stop();
1169
+ }
1170
+ }, _callee13, this);
1171
+ }));
1172
+ function leaveInterpreterRoom(_x13, _x14) {
1173
+ return _leaveInterpreterRoom.apply(this, arguments);
1174
+ }
1175
+ return leaveInterpreterRoom;
1176
+ }()
1177
+ }, {
1178
+ key: "getInterpreterState",
1179
+ value: function getInterpreterState() {
1180
+ return this._interpreterControl.getState().enable;
1181
+ }
1182
+
1183
+ // #endregion
1184
+
1185
+ // #region 工具方法
1186
+ }, {
1187
+ key: "openInterpreterDialog",
1188
+ value: function
1189
+ // 开启弹窗
1190
+ openInterpreterDialog() {
1191
+ this.currentDialogId = this._uiEventStore.openDialog(_constant.DialogKey.INTERPRETER);
1192
+ }
1193
+ }, {
1194
+ key: "closeInterpreterDialog",
1195
+ value: function
1196
+ // 关闭弹窗
1197
+ closeInterpreterDialog() {
1198
+ if (this.currentDialogId) {
1199
+ this._uiEventStore.closeDialog(this.currentDialogId);
1200
+ this.currentDialogId = null;
1201
+ if (this.interpreterUsersEditState) {
1202
+ this.setInterpreterListEditState();
1203
+ }
1204
+ }
1205
+ }
1206
+ }, {
1207
+ key: "getLocalUserByInterpreter",
1208
+ value: function
1209
+ // 获取本地用户关联的翻译官信息
1210
+ getLocalUserByInterpreter() {
1211
+ var localUser = this._localUser; // 本地用户信息
1212
+ var interpreterUsers = this._interpreterControl.getInterpreterUserList(); //翻译官列表
1213
+ var interpreter = interpreterUsers === null || interpreterUsers === void 0 ? void 0 : interpreterUsers.find(function (ele) {
1214
+ return ele.userId === localUser.userId;
1215
+ }); //本地用户关联的翻译官信息
1216
+ return {
1217
+ interpreter: interpreter,
1218
+ localUser: localUser
1219
+ };
1220
+ }
1221
+ }, {
1222
+ key: "checkIsSelfOperation",
1223
+ value: function
1224
+ // 检查操作用户是否是用户本人
1225
+ checkIsSelfOperation(operatorUser) {
1226
+ var userInfo = this._localUser;
1227
+ var isSelfOperation = operatorUser.userId === userInfo.userId;
1228
+ return isSelfOperation;
1229
+ }
1230
+
1231
+ // #endregion
1232
+
1233
+ // #region 提示
1234
+ }, {
1235
+ key: "interpreterUsersUpdatedToast",
1236
+ value: function () {
1237
+ var _interpreterUsersUpdatedToast = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee14(roomId, users, operatorUser) {
1238
+ var _this$getLocalUserByI4, interpreter, localUser, preInterpreter, isUpdate;
1239
+ return _regenerator["default"].wrap(function _callee14$(_context17) {
1240
+ while (1) switch (_context17.prev = _context17.next) {
1241
+ case 0:
1242
+ if (operatorUser) {
1243
+ this.updateInterpreterUsersToast(roomId, users, operatorUser); // 列表更新提醒
1244
+ }
1245
+ _this$getLocalUserByI4 = this.getLocalUserByInterpreter(), interpreter = _this$getLocalUserByI4.interpreter, localUser = _this$getLocalUserByI4.localUser;
1246
+ preInterpreter = this.orgInterpreterUsers.find(function (ele) {
1247
+ return ele.userId === localUser.userId;
1248
+ });
1249
+ if (this.interpreterState) {
1250
+ if (interpreter) {
1251
+ // 现在是翻译官
1252
+ if (preInterpreter) {
1253
+ // 之前是翻译官
1254
+ isUpdate = preInterpreter.sourceLanguage !== interpreter.sourceLanguage || preInterpreter.targetLanguage !== interpreter.targetLanguage;
1255
+ if (isUpdate) {
1256
+ // 前后两次翻译官配置的语言有过更改
1257
+ this.openUpdateLanguageDialog(interpreter); // 触发翻译官-语言变更提醒
1258
+ }
1259
+ } else {
1260
+ // 之前不是翻译官
1261
+ this.openCreateInterpreterStatusToast(interpreter); // 触发翻译官-创建提醒
1262
+ }
1263
+ } else {
1264
+ // 现在不是翻译官
1265
+ if (preInterpreter) {
1266
+ // 之前是翻译官
1267
+ this.openCancelInterpreterStatusToast(); // 触发翻译官-取消提醒
1268
+ this._setInterpreterRoomControlInfo(null);
1269
+ }
1270
+ this._updateUserProperties('');
1271
+ }
1272
+ }
1273
+ case 4:
1274
+ case "end":
1275
+ return _context17.stop();
1276
+ }
1277
+ }, _callee14, this);
1278
+ }));
1279
+ function interpreterUsersUpdatedToast(_x15, _x16, _x17) {
1280
+ return _interpreterUsersUpdatedToast.apply(this, arguments);
1281
+ }
1282
+ return interpreterUsersUpdatedToast;
1283
+ }()
1284
+ }, {
1285
+ key: "interpreterStateUpdatedToast",
1286
+ value: function interpreterStateUpdatedToast(roomId, state, operatorUser) {
1287
+ if (operatorUser) {
1288
+ var isSelfOperation = this.checkIsSelfOperation(operatorUser); //是否本人
1289
+ if (!isSelfOperation) {
1290
+ this.openUpdateInterpreterStateToast(roomId, state, operatorUser); // 触发状态变更提醒
1291
+ }
1292
+ }
1293
+ if (state.enable) {
1294
+ var _this$getLocalUserByI5 = this.getLocalUserByInterpreter(),
1295
+ interpreter = _this$getLocalUserByI5.interpreter;
1296
+ if (interpreter) {
1297
+ this.openCreateInterpreterStatusToast(interpreter); // 触发翻译官-创建提醒
1298
+ }
1299
+ } else {
1300
+ this._updateUserProperties('');
1301
+ this._closeConfirmDialog();
1302
+ }
1303
+ }
1304
+
1305
+ // 同声传译-状态更新-Toast
1306
+ }, {
1307
+ key: "openUpdateInterpreterStateToast",
1308
+ value: function openUpdateInterpreterStateToast(roomId, state, operatorUser) {
1309
+ var _this9 = this;
1310
+ if (state.enable) {
1311
+ this._uiEventStore.showNotification({
1312
+ type: _eventStore.NotificationContentType.INTERPRETER_STATUS,
1313
+ placement: 'topLeft',
1314
+ onClose: function onClose() {
1315
+ _this9._uiEventStore.sendEvent(_constant.UIAction.COLSE_NOTIFICATION, _eventStore.NotificationContentType.INTERPRETER_STATUS);
1316
+ },
1317
+ data: {
1318
+ operatorUser: operatorUser,
1319
+ interpreterUserList: this._interpreterControl.getInterpreterUserList()
1320
+ }
1321
+ });
1322
+ } else {
1323
+ this._uiEventStore.showToast({
1324
+ type: 'info',
1325
+ message: operatorUser.userRole === _type.FcrUserRole.HOST ? (0, _i18n.transI18n)('fmt_interpretation_mainwindow_toast_label_interpret_offline_controller', {
1326
+ reason1: operatorUser.userName
1327
+ }) : (0, _i18n.transI18n)('fmt_interpretation_interpreter_popup_label_language_change_by_cocontroller', {
1328
+ reason1: operatorUser.userName
1329
+ })
1330
+ });
1331
+ this._setInterpreterRoomControlInfo(null);
1332
+ }
1333
+ }
1334
+ // 同声传译-列表更新-Toast
1335
+ }, {
1336
+ key: "updateInterpreterUsersToast",
1337
+ value: function updateInterpreterUsersToast(roomId, users, operatorUser) {
1338
+ this._uiEventStore.showToast({
1339
+ type: 'info',
1340
+ message: operatorUser.userRole === _type.FcrUserRole.HOST ? (0, _i18n.transI18n)('fmt_interpretation_mainwindow_toast_label_update_language', {
1341
+ reason1: operatorUser.userName
1342
+ }) : (0, _i18n.transI18n)('fmt_interpretation_mobile_toast_controller_toast_label_update_interpreter_by_cocontroller', {
1343
+ reason1: operatorUser.userName
1344
+ })
1345
+ });
1346
+ }
1347
+ // 翻译官加入房间-Toast
1348
+ }, {
1349
+ key: "interpreterUsersJoinToast",
1350
+ value: function interpreterUsersJoinToast() {
1351
+ var _this$getLocalUserByI6 = this.getLocalUserByInterpreter(),
1352
+ interpreter = _this$getLocalUserByI6.interpreter;
1353
+ if (this.interpreterState && interpreter) {
1354
+ var _this$_interpreterCon2;
1355
+ var language = (_this$_interpreterCon2 = this._interpreterControl.getInterpreterRoomList()) === null || _this$_interpreterCon2 === void 0 ? void 0 : _this$_interpreterCon2[1].language;
1356
+ this._uiEventStore.showToast({
1357
+ type: 'info',
1358
+ message: (0, _i18n.transI18n)('fmt_interpretation_interpreter_toast_label_return_channel', {
1359
+ reason1: language ? _useLanguageConfig.baseLanguageConfig[language].text : ''
1360
+ })
1361
+ });
1362
+ }
1363
+ }
1364
+
1365
+ // 翻译官-语言更新-Dialog
1366
+ }, {
1367
+ key: "_closeConfirmDialog",
1368
+ value: function _closeConfirmDialog() {
1369
+ var _this10 = this;
1370
+ this._confirmDialogs.forEach(function (dialogId) {
1371
+ dialogId && _this10._uiEventStore.closeConfirm(dialogId);
1372
+ _this10._confirmDialogs["delete"](dialogId);
1373
+ });
1374
+ }
1375
+
1376
+ // 翻译官-语言更新-Dialog
1377
+ }, {
1378
+ key: "openUpdateLanguageDialog",
1379
+ value: function openUpdateLanguageDialog(interpreter) {
1380
+ var _this11 = this;
1381
+ this._closeConfirmDialog();
1382
+ var dialogId = this._uiEventStore.openConfirmDialog({
1383
+ title: (0, _i18n.transI18n)('fmt_interpretation_interpreter_popup_label_language_change_attention'),
1384
+ content: (0, _dialogContent.DialogContent)({
1385
+ content: (0, _i18n.transI18n)('fmt_interpretation_interpreter_popup_label_language_change_by_controller'),
1386
+ userInfo: interpreter
1387
+ }),
1388
+ alignCenter: true,
1389
+ onOk: function onOk() {
1390
+ _this11._uiEventStore.closeConfirm(dialogId);
1391
+ _this11._confirmDialogs["delete"](dialogId);
1392
+ },
1393
+ closable: false,
1394
+ showCancel: false,
1395
+ okText: (0, _i18n.transI18n)('fmt_interpretation_interpreter_popup_button_i_know'),
1396
+ width: 321,
1397
+ height: 234
1398
+ });
1399
+ this._confirmDialogs.add(dialogId);
1400
+ }
1401
+
1402
+ // 翻译官-人员创建-Dialog
1403
+ }, {
1404
+ key: "openCreateInterpreterStatusToast",
1405
+ value: function openCreateInterpreterStatusToast(interpreter) {
1406
+ var _this12 = this;
1407
+ this._closeConfirmDialog();
1408
+ var dialogId = this._uiEventStore.openConfirmDialog({
1409
+ title: (0, _i18n.transI18n)('fmt_interpretation_mobile_interpreter_popup_label_as_interpreter'),
1410
+ content: (0, _dialogContent.DialogContent)({
1411
+ content: (0, _i18n.transI18n)('fmt_interpretation_mobile_interpreter_popup_label_open_microphone'),
1412
+ userInfo: interpreter
1413
+ }),
1414
+ alignCenter: true,
1415
+ onOk: function onOk() {
1416
+ _this12._uiEventStore.closeConfirm(dialogId);
1417
+ _this12._confirmDialogs["delete"](dialogId);
1418
+ },
1419
+ closable: false,
1420
+ showCancel: false,
1421
+ okText: (0, _i18n.transI18n)('fmt_interpretation_interpreter_popup_button_welcome_i_know'),
1422
+ width: 321,
1423
+ height: 234
1424
+ });
1425
+ this._confirmDialogs.add(dialogId);
1426
+ }
1427
+
1428
+ // 翻译官-人员取消-Dialog
1429
+ }, {
1430
+ key: "openCancelInterpreterStatusToast",
1431
+ value: function openCancelInterpreterStatusToast() {
1432
+ var _this13 = this;
1433
+ this._closeConfirmDialog();
1434
+ var dialogId = this._uiEventStore.openConfirmDialog({
1435
+ title: (0, _i18n.transI18n)('fmt_interpretation_mobile_interpreter_popup_label_permission_revoke'),
1436
+ content: (0, _dialogContent.DialogContent)({
1437
+ content: (0, _i18n.transI18n)('fmt_interpretation_mobile_interpreter_popup_label_status_cancel'),
1438
+ userInfo: null
1439
+ }),
1440
+ alignCenter: true,
1441
+ onOk: function onOk() {
1442
+ _this13._uiEventStore.closeConfirm(dialogId);
1443
+ _this13._confirmDialogs["delete"](dialogId);
1444
+ },
1445
+ closable: false,
1446
+ showCancel: false,
1447
+ okText: (0, _i18n.transI18n)('fmt_interpretation_interpreter_popup_button_i_know'),
1448
+ width: 321
1449
+ });
1450
+ this._confirmDialogs.add(dialogId);
1451
+ }
1452
+ }, {
1453
+ key: "release",
1454
+ value: function release() {
1455
+ this._clearTimer();
1456
+ this._disposers.forEach(function (disposer) {
1457
+ return disposer();
1458
+ });
1459
+ this._clearRetryTaskTimer();
1460
+ }
1461
+
1462
+ // 历史参会者列表------------------------------------
1463
+ }, {
1464
+ key: "_getInitUsers",
1465
+ value: function _getInitUsers() {
1466
+ var mainRoomUsers = this._userControl.getUserList();
1467
+ this.initUsers = mainRoomUsers.filter(function (user) {
1468
+ return user.connectorType === _type2.AgoraRteRoomConnectorType.NONE;
1469
+ }).map(function (ele) {
1470
+ return _objectSpread(_objectSpread({}, ele), {}, {
1471
+ isOffLine: false
1472
+ });
1473
+ });
1474
+ }
1475
+ }, {
1476
+ key: "_updateUsers",
1477
+ value: function _updateUsers(_ref11, type) {
1478
+ var roomId = _ref11.roomId,
1479
+ events = _ref11.events;
1480
+ var initUsersCopy = (0, _toConsumableArray2["default"])(this.initUsers);
1481
+ events.forEach(function (joinedEvent) {
1482
+ var modifiedUser = joinedEvent.modifiedUser;
1483
+ var index = initUsersCopy.findIndex(function (item) {
1484
+ return item.userId === modifiedUser.userId;
1485
+ });
1486
+ if (index > -1) {
1487
+ if (initUsersCopy[index]) {
1488
+ if (type) {
1489
+ initUsersCopy[index] = _objectSpread(_objectSpread(_objectSpread({}, initUsersCopy[index]), modifiedUser), {}, {
1490
+ isOffLine: _constant2.UpdateType.LEFT === type
1491
+ });
1492
+ } else {
1493
+ initUsersCopy[index] = _objectSpread(_objectSpread({}, initUsersCopy[index]), modifiedUser);
1494
+ }
1495
+ }
1496
+ } else if (modifiedUser.connectorType === _type2.AgoraRteRoomConnectorType.NONE) {
1497
+ initUsersCopy.push(_objectSpread(_objectSpread({}, modifiedUser), {}, {
1498
+ isOffLine: _constant2.UpdateType.LEFT === type
1499
+ }));
1500
+ }
1501
+ });
1502
+ var collator = new Intl.Collator('zh');
1503
+ var sortedUsers = initUsersCopy.sort(function (preUser, nextUser) {
1504
+ if (preUser.userRole === nextUser.userRole) {
1505
+ return collator.compare(preUser.userName, nextUser.userName);
1506
+ } else {
1507
+ return preUser.userRole - nextUser.userRole;
1508
+ }
1509
+ });
1510
+ this.initUsers = sortedUsers;
1511
+ }
1512
+ }, {
1513
+ key: "_clearTimer",
1514
+ value: function _clearTimer() {
1515
+ if (this._indicateTimerId) {
1516
+ clearTimeout(this._indicateTimerId);
1517
+ this._indicateTimerId = null;
1518
+ }
1519
+ if (this._volumeTimerId) {
1520
+ clearInterval(this._volumeTimerId);
1521
+ this._volumeTimerId = null;
1522
+ }
1523
+ }
1524
+ }, {
1525
+ key: "_clearRetryTaskTimer",
1526
+ value: function _clearRetryTaskTimer() {
1527
+ this._retryTask.isAllowRetry = false;
1528
+ if (this._retryTask.timerId) {
1529
+ clearTimeout(this._retryTask.timerId);
1530
+ this._retryTask.timerId = null;
1531
+ }
1532
+ }
1533
+ }, {
1534
+ key: "_setMainRoomVolume",
1535
+ value: function _setMainRoomVolume(volume) {
1536
+ var _this14 = this;
1537
+ this._streamControl.getStreamList().forEach(function (stream) {
1538
+ var needSetVolume = [_type2.AgoraRteMediaStreamType.AUDIO, _type2.AgoraRteMediaStreamType.BOTH].includes(stream.streamType);
1539
+ if (needSetVolume) _this14._streamControl.adjustRemoteAudioStreamVolume(stream.streamId, volume);
1540
+ });
1541
+ }
1542
+ }, {
1543
+ key: "_restoreVolumeByMainRoom",
1544
+ value: function _restoreVolumeByMainRoom() {
1545
+ var _this15 = this;
1546
+ if (this._volumeTimerId) return;
1547
+ var startValue = 25; // 主房间初始音量
1548
+ var endValue = 100; // 最大音量
1549
+ var duration = 2000; // 在 2 秒内逐渐放大
1550
+ var interval = 50; // 更新间隔为 50ms
1551
+
1552
+ var volume = startValue;
1553
+ var steps = (endValue - startValue) / (duration / interval);
1554
+ this._volumeTimerId = setInterval(function () {
1555
+ volume += steps;
1556
+ if (volume >= endValue) {
1557
+ volume = endValue;
1558
+ _this15._clearTimer();
1559
+ }
1560
+ _this15._setMainRoomVolume(volume);
1561
+ }, interval);
1562
+ }
1563
+ }, {
1564
+ key: "_adjustMainRoomVolume",
1565
+ value: function _adjustMainRoomVolume(speaking) {
1566
+ var _this16 = this;
1567
+ if (speaking) {
1568
+ // HLD: 主房输出音量设置为25,语言房间设置输出音频为100
1569
+ this._setMainRoomVolume(25);
1570
+ this._clearTimer();
1571
+ } else {
1572
+ // PRD: 参会人听到的是译员的声音及轻微的原始音频声音。当语言频道内 6 秒内没有译员发言,原始音频的音量将在接下来的 2 秒内逐渐放大到正常音量。
1573
+ this._indicateTimerId = setTimeout(function () {
1574
+ _this16._restoreVolumeByMainRoom();
1575
+ }, 6000);
1576
+ }
1577
+ }
1578
+ }, {
1579
+ key: "_setInterpreterRoomControlInfo",
1580
+ value: function _setInterpreterRoomControlInfo(value) {
1581
+ this._deviceStreamStore.setInterpreterRoomControlInfo(value);
1582
+ }
1583
+ }, {
1584
+ key: "_onStreamVolumeIndicationUpdated",
1585
+ value: function _onStreamVolumeIndicationUpdated(roomId, streamId, volume) {
1586
+ // HLD: 判断 volume > 10 ,避免波动, 则认为是在说话
1587
+ this._isSpeaking = Math.floor(volume / 255 * 100) > 10;
1588
+ }
1589
+ }, {
1590
+ key: "_uiEvents",
1591
+ value: function _uiEvents(action, payload) {
1592
+ if (action === _constant.UIAction.CHANGE_INTERPRETER_INPUT_LANGUE) {
1593
+ this.changeInputLanguage(payload);
1594
+ }
1595
+ if (action === _constant.UIAction.CHANGE_INTERPRETER_OUTPUT_LANGUE) {
1596
+ this.changeOutputLanguage(payload);
1597
+ }
1598
+ if (action === _constant.UIAction.OPEN_INTERPRETER_DIALOG) {
1599
+ this.openInterpreterDialog();
1600
+ }
1601
+ if (action === _constant.UIAction.CLOSE_INTERPRETER_DIALOG) {
1602
+ this.closeInterpreterDialog();
1603
+ }
1604
+ if (action === _constant.UIAction.TOGGLE_LANGUAGE_ROOM) {
1605
+ this.toggleLanguageRoom(payload);
1606
+ }
1607
+ if (action === _constant.UIAction.TOGGLE_MAIN_ROOM_INPUT) {
1608
+ this.changeMainRoomStream(payload);
1609
+ }
1610
+ if (action === _constant.UIAction.CLOSE_ALL_LANGUAGE_ROOM_INPUT) {
1611
+ this.closeAllLanguageRoomInput(payload);
1612
+ }
1613
+ if (action === _constant.UIAction.TOGGLE_MAINROOM_REMOTE_AUDIO) {
1614
+ if ((payload === null || payload === void 0 ? void 0 : payload.action) === 'changeOutputByMainRoom') {
1615
+ this._clearRetryTaskTimer();
1616
+ }
1617
+ }
1618
+ }
1619
+ }]);
1620
+ }(); // #endregion
1621
+ _InterpreterStore = InterpreterStore;
1622
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_InterpreterStore, [[_mobx.observable, 1, "_isSpeaking"], [_mobx.observable, 1, "_languageRoomList"], [_mobx.observable, 1, "localInterpreterUsers"], [_mobx.observable, 1, "orgInterpreterUsers"], [_mobx.observable, 1, "interpreterUsersEditState"], [_mobx.observable, 1, "initUsers"], [_mobx.observable, 1, "interpreterState"], [_mobx.observable, 1, "currentDialogId"], [_mobx.computed, 3, "hasEnableInterpreterPermission"], [_mobx.computed, 3, "interpreterUsersCheckPass"], [_mobx.computed, 3, "interpreterUsersAllOffLine"], [_mobx.computed, 3, "languageList"], [_openInterpreterStateDecs, 18, "openInterpreterState"], [_closeInterpreterStateDecs, 18, "closeInterpreterState"], [_setInterpreterListEditStateDecs, 18, "setInterpreterListEditState"], [_addInterpreterUsersDecs, 18, "addInterpreterUsers"], [_deleteInterpreterUsersDecs, 18, "deleteInterpreterUsers"], [_updateInterpreterUsersDecs, 18, "updateInterpreterUsers"], [_queryInterpreterUsersDecs, 18, "queryInterpreterUsers"], [_updateInterpreterRoomStatusDecs, 18, "updateInterpreterRoomStatus"], [_changeMainRoomStreamDecs, 18, "changeMainRoomStream"], [_toggleLanguageRoomDecs, 18, "toggleLanguageRoom"], [_updateLanguageRoomListDecs, 18, "updateLanguageRoomList"], [_changeInputLanguageDecs, 18, "changeInputLanguage"], [_closeAllLanguageRoomInputDecs, 18, "closeAllLanguageRoomInput"], [_handleOutputLanguageRoomDecs, 18, "handleOutputLanguageRoom"], [_changeOutputLanguageDecs, 18, "changeOutputLanguage"], [_bindLocalMicrophoneIdDecs, 18, "bindLocalMicrophoneId"], [_joinInterpreterRoomDecs, 18, "joinInterpreterRoom"], [_leaveInterpreterRoomDecs, 18, "leaveInterpreterRoom"], [_getInterpreterStateDecs, 18, "getInterpreterState"], [_openInterpreterDialogDecs, 18, "openInterpreterDialog"], [_closeInterpreterDialogDecs, 18, "closeInterpreterDialog"], [_getLocalUserByInterpreterDecs, 18, "getLocalUserByInterpreter"], [_checkIsSelfOperationDecs, 18, "checkIsSelfOperation"], [_interpreterUsersUpdatedToastDecs, 18, "interpreterUsersUpdatedToast"], [_interpreterStateUpdatedToastDecs, 18, "interpreterStateUpdatedToast"], [_openUpdateInterpreterStateToastDecs, 18, "openUpdateInterpreterStateToast"], [_updateInterpreterUsersToastDecs, 18, "updateInterpreterUsersToast"], [_interpreterUsersJoinToastDecs, 18, "interpreterUsersJoinToast"], [_closeConfirmDialogDecs, 18, "_closeConfirmDialog"], [_openUpdateLanguageDialogDecs, 18, "openUpdateLanguageDialog"], [_openCreateInterpreterStatusToastDecs, 18, "openCreateInterpreterStatusToast"], [_openCancelInterpreterStatusToastDecs, 18, "openCancelInterpreterStatusToast"], [_getInitUsersDecs, 18, "_getInitUsers"], [_updateUsersDecs, 18, "_updateUsers"], [_clearTimerDecs, 18, "_clearTimer"], [_clearRetryTaskTimerDecs, 18, "_clearRetryTaskTimer"], [_restoreVolumeByMainRoomDecs, 18, "_restoreVolumeByMainRoom"], [_adjustMainRoomVolumeDecs, 18, "_adjustMainRoomVolume"], [_setInterpreterRoomControlInfoDecs, 18, "_setInterpreterRoomControlInfo"], [_onStreamVolumeIndicationUpdatedDecs, 18, "_onStreamVolumeIndicationUpdated"]], []).e, 9);
1623
+ _init__isSpeaking = _applyDecs$e[0];
1624
+ _init__languageRoomList = _applyDecs$e[1];
1625
+ _init_localInterpreterUsers = _applyDecs$e[2];
1626
+ _init_orgInterpreterUsers = _applyDecs$e[3];
1627
+ _init_interpreterUsersEditState = _applyDecs$e[4];
1628
+ _init_initUsers = _applyDecs$e[5];
1629
+ _init_interpreterState = _applyDecs$e[6];
1630
+ _init_currentDialogId = _applyDecs$e[7];
1631
+ _initProto = _applyDecs$e[8];
1632
+ var StoreContext = exports.StoreContext = /*#__PURE__*/(0, _react.createContext)(null);