fcr-ui-scene 3.3.1 → 3.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (681) hide show
  1. package/installer/icons/icon.png +0 -0
  2. package/lib/ scenes/base.d.ts +10 -0
  3. package/lib/ scenes/base.js +75 -0
  4. package/lib/ scenes/main-scene.d.ts +43 -0
  5. package/lib/ scenes/main-scene.js +368 -0
  6. package/lib/ scenes/waiting-scene.d.ts +31 -0
  7. package/lib/ scenes/waiting-scene.js +119 -0
  8. package/lib/common/device-store.d.ts +22 -13
  9. package/lib/common/device-store.js +350 -249
  10. package/lib/common/device-stream-store.d.ts +8 -14
  11. package/lib/common/device-stream-store.js +254 -116
  12. package/lib/common/event-store.d.ts +19 -10
  13. package/lib/common/event-store.js +28 -10
  14. package/lib/common/remote-renderer.d.ts +15 -0
  15. package/lib/common/remote-renderer.js +138 -0
  16. package/lib/common/room-store.d.ts +21 -18
  17. package/lib/common/room-store.js +54 -47
  18. package/lib/common/security-store.d.ts +38 -40
  19. package/lib/common/security-store.js +231 -394
  20. package/lib/common/type.d.ts +8 -0
  21. package/lib/common/type.js +6 -0
  22. package/lib/creator.d.ts +3 -1
  23. package/lib/creator.js +13 -1
  24. package/lib/electron/app.js +59 -0
  25. package/lib/electron/injections.d.ts +6 -4
  26. package/lib/electron/injections.js +138 -113
  27. package/lib/electron/logger.js +3 -1
  28. package/lib/electron/main.js +13 -1
  29. package/lib/electron/plugins/devtool-shortcut.d.ts +2 -0
  30. package/lib/electron/plugins/devtool-shortcut.js +19 -0
  31. package/lib/electron/preload.js +5 -3
  32. package/lib/error-fallback.css +62 -0
  33. package/lib/error-fallback.d.ts +2 -0
  34. package/lib/error-fallback.js +19 -0
  35. package/lib/fragments/control-bar/cloud-recording-buttons.js +1 -1
  36. package/lib/fragments/control-bar/control-bar-store.d.ts +11 -1
  37. package/lib/fragments/control-bar/control-bar-store.js +196 -111
  38. package/lib/fragments/control-bar/index.js +6 -0
  39. package/lib/fragments/control-bar/more-actions/index.js +1 -1
  40. package/lib/fragments/control-bar/security-content/index.css +65 -0
  41. package/lib/fragments/control-bar/security-content/index.js +66 -2
  42. package/lib/fragments/control-bar/share-state-nav/index.js +1 -1
  43. package/lib/fragments/control-bar/view.js +15 -6
  44. package/lib/fragments/live-streaming/store.d.ts +1 -1
  45. package/lib/fragments/live-streaming/store.js +1 -1
  46. package/lib/fragments/live-streaming/view.js +4 -2
  47. package/lib/fragments/share-screen-selection/selection-store.d.ts +1 -1
  48. package/lib/fragments/share-screen-selection/selection-store.js +1 -1
  49. package/lib/fragments/share-screen-selection/view.js +20 -20
  50. package/lib/fragments/toolbar/components/eraser-picker.js +1 -1
  51. package/lib/fragments/toolbar/components/pen-picker.js +1 -1
  52. package/lib/fragments/toolbar/components/shape-picker.js +1 -1
  53. package/lib/fragments/toolbar/components/transfer-position-icon/index.d.ts +11 -0
  54. package/lib/fragments/toolbar/components/transfer-position-icon/index.js +46 -0
  55. package/lib/fragments/toolbar/components/wrapper.js +1 -1
  56. package/lib/fragments/toolbar/hooks.js +1 -1
  57. package/lib/fragments/toolbar/store.d.ts +1 -1
  58. package/lib/hooks/meeting-time.d.ts +1 -1
  59. package/lib/modules/Interpreter/action/add-btn/index.css +4 -0
  60. package/lib/modules/Interpreter/action/add-btn/index.d.ts +11 -0
  61. package/lib/modules/Interpreter/action/add-btn/index.js +43 -0
  62. package/lib/modules/Interpreter/action/delete-btn/index.css +14 -0
  63. package/lib/modules/Interpreter/action/delete-btn/index.d.ts +6 -0
  64. package/lib/modules/Interpreter/action/delete-btn/index.js +38 -0
  65. package/lib/modules/Interpreter/action/edit-btn/index.css +3 -0
  66. package/lib/modules/Interpreter/action/edit-btn/index.d.ts +4 -0
  67. package/lib/modules/Interpreter/action/edit-btn/index.js +47 -0
  68. package/lib/modules/Interpreter/action/switch-btn/index.css +3 -0
  69. package/lib/modules/Interpreter/action/switch-btn/index.d.ts +3 -0
  70. package/lib/modules/Interpreter/action/switch-btn/index.js +52 -0
  71. package/lib/modules/Interpreter/add-button/index.js +6 -4
  72. package/lib/modules/Interpreter/constant.d.ts +23 -12
  73. package/lib/modules/Interpreter/constant.js +53 -13
  74. package/lib/modules/Interpreter/dialog-content/index.js +2 -2
  75. package/lib/modules/Interpreter/footer/components/interpreter-btn/index.js +10 -13
  76. package/lib/modules/Interpreter/footer/components/set-btn/index.js +8 -5
  77. package/lib/modules/Interpreter/footer/components/tooltip-wrapper/index.js +3 -1
  78. package/lib/modules/Interpreter/footer/index.css +6 -5
  79. package/lib/modules/Interpreter/footer/index.d.ts +4 -1
  80. package/lib/modules/Interpreter/footer/index.js +8 -17
  81. package/lib/modules/Interpreter/index.css +10 -3
  82. package/lib/modules/Interpreter/index.d.ts +2 -15
  83. package/lib/modules/Interpreter/index.js +9 -19
  84. package/lib/modules/Interpreter/interpreter-list/index.css +5 -18
  85. package/lib/modules/Interpreter/interpreter-list/index.d.ts +5 -1
  86. package/lib/modules/Interpreter/interpreter-list/index.js +15 -32
  87. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.css +23 -8
  88. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.d.ts +4 -1
  89. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +51 -13
  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 +9 -4
  108. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.js +98 -39
  109. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.css +9 -4
  110. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.d.ts +1 -6
  111. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +74 -64
  112. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/option-Item.d.ts +6 -0
  113. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/option-Item.js +58 -0
  114. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.css +3 -5
  115. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.d.ts +1 -1
  116. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.js +7 -24
  117. package/lib/modules/Interpreter/store.d.ts +70 -41
  118. package/lib/modules/Interpreter/store.js +1033 -814
  119. package/lib/modules/Interpreter/tooltip-wrapper/index.d.ts +6 -0
  120. package/lib/modules/Interpreter/tooltip-wrapper/index.js +30 -0
  121. package/lib/modules/Interpreter/type.d.ts +41 -0
  122. package/lib/modules/Interpreter/type.js +20 -0
  123. package/lib/modules/Interpreter/utils.d.ts +12 -0
  124. package/lib/modules/Interpreter/utils.js +139 -0
  125. package/lib/modules/Interpreter/view.d.ts +0 -1
  126. package/lib/modules/Interpreter/view.js +48 -13
  127. package/lib/modules/action-bar/Interpreter/index.d.ts +1 -1
  128. package/lib/modules/action-bar/Interpreter/index.js +7 -10
  129. package/lib/modules/action-bar/action-bar-collapes-items.d.ts +4 -1
  130. package/lib/modules/action-bar/action-bar-collapes-items.js +39 -22
  131. package/lib/modules/action-bar/apps/app-item/index.css +35 -0
  132. package/lib/modules/action-bar/apps/app-item/index.d.ts +12 -0
  133. package/{dist/electron/bootstrap-sdk.js → lib/modules/action-bar/apps/app-item/index.js} +38 -33
  134. package/lib/modules/action-bar/apps/appitems.d.ts +4 -1
  135. package/lib/modules/action-bar/apps/appitems.js +30 -25
  136. package/lib/modules/action-bar/apps/index.css +5 -3
  137. package/lib/modules/action-bar/apps/index.js +13 -14
  138. package/lib/modules/action-bar/apps/useAppItemOptions.d.ts +9 -0
  139. package/lib/modules/action-bar/apps/useAppItemOptions.js +29 -0
  140. package/lib/modules/action-bar/apps/useBeautyBackground.d.ts +10 -0
  141. package/lib/modules/action-bar/apps/useBeautyBackground.js +34 -0
  142. package/lib/modules/action-bar/apps/useInterpreter.d.ts +14 -0
  143. package/lib/modules/action-bar/apps/useInterpreter.js +37 -0
  144. package/lib/modules/action-bar/apps/useLiveStreaming.d.ts +16 -0
  145. package/lib/modules/action-bar/apps/useLiveStreaming.js +41 -0
  146. package/lib/modules/action-bar/chat/index.js +3 -3
  147. package/lib/modules/action-bar/components/apps/app-item/index.css +35 -0
  148. package/lib/modules/action-bar/components/apps/app-item/index.d.ts +12 -0
  149. package/lib/modules/action-bar/components/apps/app-item/index.js +61 -0
  150. package/lib/modules/action-bar/components/apps/appitems.d.ts +5 -0
  151. package/{dist/electron/bootstrap-dev.js → lib/modules/action-bar/components/apps/appitems.js} +21 -27
  152. package/lib/modules/action-bar/components/apps/index.css +8 -0
  153. package/lib/modules/action-bar/components/apps/index.d.ts +4 -0
  154. package/lib/modules/action-bar/components/apps/index.js +57 -0
  155. package/lib/modules/action-bar/components/apps/useAppItemOptions.d.ts +9 -0
  156. package/lib/modules/action-bar/components/apps/useAppItemOptions.js +29 -0
  157. package/lib/modules/action-bar/components/apps/useBeautyBackground.d.ts +10 -0
  158. package/lib/modules/action-bar/components/apps/useBeautyBackground.js +36 -0
  159. package/lib/modules/action-bar/components/apps/useInterpreter.d.ts +14 -0
  160. package/lib/modules/action-bar/components/apps/useInterpreter.js +37 -0
  161. package/lib/modules/action-bar/components/apps/useLiveStreaming.d.ts +16 -0
  162. package/lib/modules/action-bar/components/apps/useLiveStreaming.js +41 -0
  163. package/lib/modules/action-bar/components/board/index.d.ts +4 -0
  164. package/lib/modules/action-bar/components/board/index.js +34 -0
  165. package/lib/modules/action-bar/components/breakout-room/index.d.ts +4 -0
  166. package/lib/modules/action-bar/components/breakout-room/index.js +32 -0
  167. package/lib/modules/action-bar/components/chat/index.css +80 -0
  168. package/lib/modules/action-bar/components/chat/index.d.ts +5 -0
  169. package/lib/modules/action-bar/components/chat/index.js +154 -0
  170. package/lib/modules/action-bar/components/device/index.css +162 -0
  171. package/lib/modules/action-bar/components/device/index.d.ts +8 -0
  172. package/lib/modules/action-bar/components/device/index.js +611 -0
  173. package/lib/modules/action-bar/components/interpreter/index.d.ts +6 -0
  174. package/lib/modules/action-bar/components/interpreter/index.js +41 -0
  175. package/lib/modules/action-bar/components/item.d.ts +27 -0
  176. package/lib/modules/action-bar/components/item.js +164 -0
  177. package/lib/modules/action-bar/components/leave/assign-host.d.ts +10 -0
  178. package/lib/modules/action-bar/components/leave/assign-host.js +64 -0
  179. package/lib/modules/action-bar/components/leave/index.css +126 -0
  180. package/lib/modules/action-bar/components/leave/index.d.ts +3 -0
  181. package/lib/modules/action-bar/components/leave/index.js +159 -0
  182. package/lib/modules/action-bar/components/leave/leave-meeting.d.ts +18 -0
  183. package/lib/modules/action-bar/components/leave/leave-meeting.js +153 -0
  184. package/lib/modules/action-bar/components/live-streaming/index.d.ts +4 -0
  185. package/lib/modules/action-bar/components/live-streaming/index.js +39 -0
  186. package/lib/modules/action-bar/components/more/index.css +114 -0
  187. package/lib/modules/action-bar/components/more/index.d.ts +5 -0
  188. package/lib/modules/action-bar/components/more/index.js +83 -0
  189. package/lib/modules/action-bar/components/more/poppover-content.d.ts +8 -0
  190. package/lib/modules/action-bar/components/more/poppover-content.js +400 -0
  191. package/lib/modules/action-bar/components/participants/index.css +21 -0
  192. package/lib/modules/action-bar/components/participants/index.d.ts +5 -0
  193. package/lib/modules/action-bar/components/participants/index.js +83 -0
  194. package/lib/modules/action-bar/components/record/index.css +39 -0
  195. package/lib/modules/action-bar/components/record/index.d.ts +5 -0
  196. package/lib/modules/action-bar/components/record/index.js +166 -0
  197. package/lib/modules/action-bar/components/record/stop-record-dialog.d.ts +5 -0
  198. package/lib/modules/action-bar/components/record/stop-record-dialog.js +48 -0
  199. package/lib/modules/action-bar/components/respond/index.d.ts +4 -0
  200. package/lib/modules/action-bar/components/respond/index.js +32 -0
  201. package/lib/modules/action-bar/components/screen-share/index.d.ts +4 -0
  202. package/lib/modules/action-bar/components/screen-share/index.js +106 -0
  203. package/lib/modules/action-bar/components/screen-share/submenu.d.ts +1 -0
  204. package/lib/modules/action-bar/components/screen-share/submenu.js +154 -0
  205. package/lib/modules/action-bar/components/security/index.d.ts +4 -0
  206. package/lib/modules/action-bar/components/security/index.js +58 -0
  207. package/lib/modules/action-bar/components/settings/index.d.ts +4 -0
  208. package/lib/modules/action-bar/components/settings/index.js +42 -0
  209. package/lib/modules/action-bar/device/index.js +22 -24
  210. package/lib/modules/action-bar/index.css +53 -4
  211. package/lib/modules/action-bar/index.d.ts +4 -18
  212. package/lib/modules/action-bar/index.dev.js +40 -16
  213. package/lib/modules/action-bar/index.js +25 -61
  214. package/lib/modules/action-bar/leave/assign-host.d.ts +1 -1
  215. package/lib/modules/action-bar/leave/index.css +10 -0
  216. package/lib/modules/action-bar/leave/index.js +66 -39
  217. package/lib/modules/action-bar/leave/leave-meeting.d.ts +3 -2
  218. package/lib/modules/action-bar/leave/leave-meeting.js +13 -4
  219. package/lib/modules/action-bar/live-streaming/index.js +3 -3
  220. package/lib/modules/action-bar/more/index.js +9 -6
  221. package/lib/modules/action-bar/more/poppover-content.js +33 -12
  222. package/lib/modules/action-bar/notification-bar/components/interpreter/index.css +58 -0
  223. package/lib/modules/action-bar/notification-bar/components/interpreter/index.d.ts +8 -0
  224. package/lib/modules/action-bar/notification-bar/components/interpreter/index.js +100 -0
  225. package/lib/modules/action-bar/notification-bar/components/virtual-image/index.css +56 -0
  226. package/lib/modules/action-bar/notification-bar/components/virtual-image/index.d.ts +5 -0
  227. package/lib/modules/action-bar/notification-bar/components/virtual-image/index.js +33 -0
  228. package/lib/modules/action-bar/notification-bar/dome.png +0 -0
  229. package/lib/modules/action-bar/notification-bar/fcr_translateswitch.png +0 -0
  230. package/lib/modules/action-bar/notification-bar/index.css +74 -0
  231. package/lib/modules/action-bar/notification-bar/index.d.ts +2 -0
  232. package/lib/modules/action-bar/notification-bar/index.js +99 -0
  233. package/lib/modules/action-bar/participants/index.js +2 -2
  234. package/lib/modules/action-bar/record/index.js +4 -4
  235. package/lib/modules/action-bar/screen-share/index.js +9 -4
  236. package/lib/modules/action-bar/screen-share/submenu.js +4 -4
  237. package/lib/modules/action-bar/security/drop-menu.js +49 -11
  238. package/lib/modules/action-bar/security/index.js +12 -6
  239. package/lib/modules/action-bar/settings/index.js +4 -4
  240. package/lib/modules/action-bar/smaller.js +5 -5
  241. package/lib/modules/action-bar/store.d.ts +54 -12
  242. package/lib/modules/action-bar/store.js +423 -211
  243. package/lib/modules/action-bar/switch-input-language-room/index.d.ts +1 -2
  244. package/lib/modules/action-bar/switch-input-language-room/index.js +134 -43
  245. package/lib/modules/action-bar/switch-output-language-room/drop-menu.js +3 -3
  246. package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.d.ts +7 -1
  247. package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.js +32 -19
  248. package/lib/modules/action-bar/switch-output-language-room/index.js +134 -69
  249. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.css +12 -8
  250. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.js +13 -7
  251. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.css +52 -4
  252. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.d.ts +1 -0
  253. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.js +12 -10
  254. package/lib/modules/action-bar/switch-output-language-room/notification-bar/dome.png +0 -0
  255. package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.css +6 -3
  256. package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.js +30 -13
  257. package/lib/modules/action-bar/trigger-input-language-room/fcr_translateswitch.png +0 -0
  258. package/lib/modules/action-bar/trigger-input-language-room/index.css +86 -0
  259. package/lib/modules/action-bar/trigger-input-language-room/index.d.ts +15 -0
  260. package/lib/modules/action-bar/trigger-input-language-room/index.js +220 -0
  261. package/lib/modules/action-bar/trigger-output-language-room/constant.d.ts +10 -0
  262. package/lib/modules/action-bar/trigger-output-language-room/constant.js +8 -0
  263. package/lib/modules/action-bar/trigger-output-language-room/guide-tooltip/index.css +22 -0
  264. package/lib/modules/action-bar/trigger-output-language-room/guide-tooltip/index.d.ts +14 -0
  265. package/lib/modules/action-bar/trigger-output-language-room/guide-tooltip/index.js +75 -0
  266. package/lib/modules/action-bar/trigger-output-language-room/index.d.ts +4 -0
  267. package/lib/modules/action-bar/trigger-output-language-room/index.js +98 -0
  268. package/lib/modules/action-bar/trigger-output-language-room/trigger-language-room.d.ts +5 -0
  269. package/lib/modules/action-bar/trigger-output-language-room/trigger-language-room.js +66 -0
  270. package/lib/modules/action-bar/trigger-output-language-room/trigger-main-room.d.ts +5 -0
  271. package/lib/modules/action-bar/trigger-output-language-room/trigger-main-room.js +36 -0
  272. package/lib/modules/action-bar/trigger-output-language-room/useChangeOutputRoomTool.d.ts +12 -0
  273. package/lib/modules/action-bar/trigger-output-language-room/useChangeOutputRoomTool.js +138 -0
  274. package/lib/modules/action-bar/view.js +26 -12
  275. package/lib/modules/audio-stream/index.d.ts +24 -14
  276. package/lib/modules/audio-stream/index.js +256 -57
  277. package/lib/modules/chat/chat-bar/index.css +6 -0
  278. package/lib/modules/chat/chat-bar/index.d.ts +3 -3
  279. package/lib/modules/chat/chat-bar/index.js +23 -23
  280. package/lib/modules/chat/chat-select/index.css +13 -3
  281. package/lib/modules/chat/chat-select/index.d.ts +1 -1
  282. package/lib/modules/chat/chat-select/index.js +18 -4
  283. package/lib/modules/chat/chat.js +20 -31
  284. package/lib/modules/chat/index.css +10 -0
  285. package/lib/modules/chat/index.d.ts +3 -11
  286. package/lib/modules/chat/index.dev.js +19 -4
  287. package/lib/modules/chat/index.js +19 -25
  288. package/lib/modules/chat/message-list.js +9 -3
  289. package/lib/modules/chat/store.d.ts +12 -6
  290. package/lib/modules/chat/store.js +109 -69
  291. package/lib/modules/components/device-control/components/audio-menu/index.d.ts +6 -0
  292. package/lib/modules/components/device-control/components/audio-menu/index.js +156 -0
  293. package/lib/modules/components/device-control/components/carmera/index.d.ts +3 -0
  294. package/lib/modules/components/device-control/components/carmera/index.js +111 -0
  295. package/lib/modules/components/device-control/components/microphone/index.d.ts +7 -0
  296. package/lib/modules/components/device-control/components/microphone/index.js +170 -0
  297. package/lib/modules/components/device-control/components/none-menu/index.d.ts +4 -0
  298. package/lib/modules/components/device-control/components/none-menu/index.js +68 -0
  299. package/lib/modules/components/device-control/components/phone-menu/index.d.ts +4 -0
  300. package/lib/modules/components/device-control/components/phone-menu/index.js +61 -0
  301. package/lib/modules/components/device-control/components/video-menu/index.d.ts +5 -0
  302. package/lib/modules/components/device-control/components/video-menu/index.js +111 -0
  303. package/lib/modules/components/device-control/hooks/index.d.ts +9 -0
  304. package/lib/modules/components/device-control/hooks/index.js +42 -0
  305. package/lib/modules/components/device-control/index.css +166 -0
  306. package/lib/modules/components/device-control/index.d.ts +3 -0
  307. package/lib/modules/components/device-control/index.js +21 -0
  308. package/lib/modules/components/device-control/store.d.ts +42 -0
  309. package/lib/modules/components/device-control/store.js +256 -0
  310. package/lib/modules/components/device-control/type.d.ts +6 -0
  311. package/lib/modules/components/device-control/type.js +13 -0
  312. package/lib/modules/components/dialog-container/component/body.d.ts +7 -0
  313. package/lib/modules/components/dialog-container/component/body.js +46 -0
  314. package/lib/modules/components/dialog-container/index.css +78 -0
  315. package/lib/modules/components/dialog-container/index.d.ts +11 -0
  316. package/lib/modules/components/dialog-container/index.js +110 -0
  317. package/lib/modules/components/member-window/index.css +419 -0
  318. package/lib/modules/components/member-window/index.d.ts +76 -0
  319. package/lib/modules/components/member-window/index.js +888 -0
  320. package/lib/modules/components/security-menu/index.css +44 -0
  321. package/lib/modules/components/security-menu/index.d.ts +5 -0
  322. package/lib/modules/components/security-menu/index.js +366 -0
  323. package/lib/modules/components/tab-frame/index.css +40 -0
  324. package/lib/modules/components/tab-frame/index.d.ts +12 -0
  325. package/lib/modules/components/tab-frame/index.js +57 -0
  326. package/lib/modules/components/toast/index.css +12 -0
  327. package/lib/modules/components/toast/index.d.ts +10 -0
  328. package/lib/modules/components/toast/index.js +66 -0
  329. package/lib/modules/components/toast/store.d.ts +17 -0
  330. package/lib/modules/components/toast/store.js +149 -0
  331. package/lib/modules/components/toast/view.d.ts +2 -0
  332. package/lib/modules/components/toast/view.js +35 -0
  333. package/lib/modules/connection-gateway/components/computer/index.css +1 -0
  334. package/lib/modules/connection-gateway/components/computer/index.js +6 -6
  335. package/lib/modules/connection-gateway/components/phone/components/callinfo/index.css +1 -1
  336. package/lib/modules/connection-gateway/components/phone/components/callinfo/index.d.ts +1 -1
  337. package/lib/modules/connection-gateway/components/phone/index.css +1 -1
  338. package/lib/modules/connection-gateway/components/phone/index.js +3 -2
  339. package/lib/modules/connection-gateway/components/tabs/index.js +2 -1
  340. package/lib/modules/connection-gateway/index.d.ts +2 -9
  341. package/lib/modules/connection-gateway/index.js +1 -1
  342. package/lib/modules/connection-gateway/store.d.ts +8 -20
  343. package/lib/modules/connection-gateway/store.js +87 -127
  344. package/lib/modules/connection-gateway/view.js +21 -4
  345. package/lib/modules/control-bar/components/cloud-recording-buttons.d.ts +1 -0
  346. package/lib/modules/control-bar/components/cloud-recording-buttons.js +67 -0
  347. package/lib/modules/control-bar/components/meeting-details/index.css +133 -0
  348. package/lib/modules/control-bar/components/meeting-details/index.d.ts +2 -0
  349. package/lib/modules/control-bar/components/meeting-details/index.js +251 -0
  350. package/lib/modules/control-bar/components/more-actions/index.css +72 -0
  351. package/lib/modules/control-bar/components/more-actions/index.d.ts +7 -0
  352. package/lib/modules/control-bar/components/more-actions/index.js +182 -0
  353. package/lib/modules/control-bar/components/share-state-nav/index.css +74 -0
  354. package/lib/modules/control-bar/components/share-state-nav/index.d.ts +10 -0
  355. package/lib/modules/control-bar/components/share-state-nav/index.js +116 -0
  356. package/lib/modules/control-bar/components/stop-live-streaming/index.d.ts +1 -0
  357. package/lib/modules/control-bar/components/stop-live-streaming/index.js +36 -0
  358. package/lib/modules/control-bar/components/stop-live-streaming/stop-button.d.ts +6 -0
  359. package/lib/modules/control-bar/components/stop-live-streaming/stop-button.js +35 -0
  360. package/lib/modules/control-bar/components/transfer-position-icon/index.d.ts +11 -0
  361. package/lib/modules/control-bar/components/transfer-position-icon/index.js +46 -0
  362. package/lib/modules/control-bar/index.css +341 -0
  363. package/lib/modules/control-bar/index.d.ts +15 -0
  364. package/lib/modules/control-bar/index.js +102 -0
  365. package/lib/modules/control-bar/store.d.ts +98 -0
  366. package/lib/modules/control-bar/store.js +899 -0
  367. package/lib/modules/control-bar/type.d.ts +10 -0
  368. package/lib/modules/control-bar/type.js +18 -0
  369. package/lib/modules/control-bar/view.d.ts +1 -0
  370. package/lib/modules/control-bar/view.js +358 -0
  371. package/lib/modules/device-pretest/assets/virtual-backdound-resources.d.ts +9 -0
  372. package/lib/modules/device-pretest/assets/virtual-backdound-resources.js +7 -1
  373. package/lib/modules/device-pretest/audio-preview/speaker-control.js +2 -2
  374. package/lib/modules/device-pretest/index.js +2 -2
  375. package/lib/modules/device-pretest/settings/beauty.d.ts +1 -1
  376. package/lib/modules/device-pretest/settings/video-settings-basic.js +2 -2
  377. package/lib/modules/device-pretest/settings/virtual-background-setting.js +1 -1
  378. package/lib/modules/device-pretest/store.d.ts +2 -1
  379. package/lib/modules/device-pretest/store.js +7 -7
  380. package/lib/modules/dialog/components/Interpreter/electron.js +21 -62
  381. package/lib/modules/dialog/components/Interpreter/index.js +14 -42
  382. package/lib/modules/dialog/components/chat/electron.d.ts +2 -2
  383. package/lib/modules/dialog/components/chat/electron.js +15 -49
  384. package/lib/modules/dialog/components/chat/index.d.ts +1 -4
  385. package/lib/modules/dialog/components/chat/index.js +38 -44
  386. package/lib/modules/dialog/components/confirm/electron.d.ts +1 -1
  387. package/lib/modules/dialog/components/confirm/electron.js +38 -70
  388. package/lib/modules/dialog/components/confirm/index.d.ts +1 -9
  389. package/lib/modules/dialog/components/confirm/index.js +33 -80
  390. package/lib/modules/dialog/components/connection-gateway/electron.d.ts +4 -1
  391. package/lib/modules/dialog/components/connection-gateway/electron.js +26 -55
  392. package/lib/modules/dialog/components/connection-gateway/index.d.ts +6 -2
  393. package/lib/modules/dialog/components/connection-gateway/index.js +17 -57
  394. package/lib/modules/dialog/components/control-bar/index.d.ts +7 -0
  395. package/lib/modules/dialog/components/control-bar/index.js +41 -0
  396. package/lib/modules/dialog/components/device-setting/electron.js +23 -64
  397. package/lib/modules/dialog/components/device-setting/index.js +14 -41
  398. package/lib/modules/dialog/components/invite/index.d.ts +3 -0
  399. package/lib/modules/dialog/components/invite/index.js +49 -0
  400. package/lib/modules/dialog/components/live-streaming/index.d.ts +4 -0
  401. package/lib/modules/dialog/components/live-streaming/index.js +53 -0
  402. package/lib/modules/dialog/components/operation-waiting-room/electron.js +28 -75
  403. package/lib/modules/dialog/components/operation-waiting-room/index.js +4 -4
  404. package/lib/modules/dialog/components/participant/electron.js +19 -81
  405. package/lib/modules/dialog/components/participant/index.js +41 -29
  406. package/lib/modules/dialog/components/remove-admit-waiting-room/electron.d.ts +8 -1
  407. package/lib/modules/dialog/components/remove-admit-waiting-room/electron.js +22 -78
  408. package/lib/modules/dialog/components/remove-admit-waiting-room/index.d.ts +1 -1
  409. package/lib/modules/dialog/components/remove-admit-waiting-room/index.js +7 -17
  410. package/lib/modules/dialog/components/share-screen-selection/index.js +28 -31
  411. package/lib/modules/dialog/components/switch-language-channels/electron.js +4 -4
  412. package/lib/modules/dialog/components/switch-language-channels/index.js +3 -3
  413. package/lib/modules/dialog/components/system-preference/bg1.png +0 -0
  414. package/lib/modules/dialog/components/system-preference/bg2.png +0 -0
  415. package/lib/modules/dialog/components/system-preference/electron.d.ts +5 -0
  416. package/lib/modules/dialog/components/system-preference/electron.js +39 -0
  417. package/lib/modules/dialog/components/system-preference/index.css +49 -0
  418. package/lib/modules/dialog/components/system-preference/index.d.ts +5 -0
  419. package/lib/modules/dialog/components/system-preference/index.js +139 -0
  420. package/lib/modules/dialog/components/toast/index.d.ts +3 -0
  421. package/lib/modules/dialog/components/toast/index.js +58 -0
  422. package/lib/modules/dialog/components/whiteboard/index.js +2 -2
  423. package/lib/modules/dialog/dialogs.d.ts +1 -5
  424. package/lib/modules/dialog/dialogs.js +24 -177
  425. package/lib/modules/dialog/hooks/useElectron.d.ts +32 -0
  426. package/lib/modules/dialog/hooks/useElectron.js +151 -0
  427. package/lib/modules/dialog/index.css +7 -4
  428. package/lib/modules/dialog/index.d.ts +3 -18
  429. package/lib/modules/dialog/index.js +9 -18
  430. package/lib/modules/dialog/store.d.ts +14 -48
  431. package/lib/modules/dialog/store.js +109 -258
  432. package/lib/modules/dialog/types/index.d.ts +59 -0
  433. package/lib/modules/dialog/view.js +2 -2
  434. package/lib/modules/event-confirm/index.css +12 -0
  435. package/lib/modules/event-confirm/index.d.ts +10 -0
  436. package/lib/modules/event-confirm/index.js +55 -0
  437. package/lib/modules/event-confirm/store.d.ts +18 -0
  438. package/lib/modules/event-confirm/store.js +172 -0
  439. package/lib/modules/event-confirm/view.d.ts +2 -0
  440. package/lib/modules/event-confirm/view.js +159 -0
  441. package/lib/modules/event-toast/index.css +16 -0
  442. package/lib/modules/event-toast/index.d.ts +1 -1
  443. package/lib/modules/event-toast/index.js +19 -3
  444. package/lib/modules/event-toast/store.d.ts +13 -0
  445. package/lib/modules/event-toast/store.js +114 -17
  446. package/lib/modules/event-toast/view.d.ts +4 -1
  447. package/lib/modules/event-toast/view.js +28 -4
  448. package/lib/modules/invite/index.d.ts +1 -1
  449. package/lib/modules/invite/index.js +13 -3
  450. package/lib/modules/invite/pstn-invite.js +6 -9
  451. package/lib/modules/invite/store.d.ts +24 -25
  452. package/lib/modules/invite/store.js +148 -147
  453. package/lib/modules/invite/view.d.ts +4 -0
  454. package/lib/modules/invite/view.js +18 -22
  455. package/lib/modules/invite/voip-invite.js +5 -6
  456. package/lib/modules/layout/components/Aside.js +14 -4
  457. package/lib/modules/layout/components/Carousel.js +16 -10
  458. package/lib/modules/layout/components/Gallery.js +25 -17
  459. package/lib/modules/layout/components/Layout.js +17 -9
  460. package/lib/modules/layout/components/index.css +17 -5
  461. package/lib/modules/layout/index.css +1 -0
  462. package/lib/modules/layout/index.d.ts +4 -2
  463. package/lib/modules/layout/index.dev.js +20 -10
  464. package/lib/modules/layout/index.js +26 -19
  465. package/lib/modules/layout/member-window/index.css +116 -18
  466. package/lib/modules/layout/member-window/index.d.ts +10 -3
  467. package/lib/modules/layout/member-window/index.js +218 -112
  468. package/lib/modules/layout/store.d.ts +21 -8
  469. package/lib/modules/layout/store.js +138 -72
  470. package/lib/modules/layout/type.d.ts +2 -2
  471. package/lib/modules/layout/video-window-datasource.d.ts +5 -3
  472. package/lib/modules/layout/video-window-datasource.js +72 -29
  473. package/lib/modules/live-streaming/index.d.ts +1 -2
  474. package/lib/modules/live-streaming/index.js +13 -29
  475. package/lib/modules/live-streaming/store.d.ts +3 -7
  476. package/lib/modules/live-streaming/store.js +7 -73
  477. package/lib/modules/live-streaming/view.js +3 -3
  478. package/lib/modules/notification/index.css +3 -1
  479. package/lib/modules/notification/index.js +13 -3
  480. package/lib/modules/notification/interpreter-status/index.css +5 -1
  481. package/lib/modules/notification/interpreter-status/index.js +4 -1
  482. package/lib/modules/notification/store.d.ts +1 -0
  483. package/lib/modules/notification/store.js +4 -2
  484. package/lib/modules/notification/view.js +2 -2
  485. package/lib/modules/offscreen-pulling/index.d.ts +19 -0
  486. package/lib/modules/offscreen-pulling/index.js +127 -0
  487. package/lib/modules/participant/attendee/index.css +4 -0
  488. package/lib/modules/participant/attendee/index.d.ts +14 -3
  489. package/lib/modules/participant/attendee/index.js +89 -34
  490. package/lib/modules/participant/attendee/participants-more-action.d.ts +18 -0
  491. package/lib/modules/participant/attendee/participants-more-action.js +278 -0
  492. package/lib/modules/participant/components/drop-menu/index.css +60 -0
  493. package/lib/modules/participant/components/drop-menu/index.d.ts +2 -0
  494. package/lib/modules/participant/components/drop-menu/index.js +189 -0
  495. package/lib/modules/participant/components/footer/buttons.d.ts +7 -0
  496. package/lib/modules/participant/components/footer/buttons.js +53 -0
  497. package/lib/modules/participant/components/footer/index.d.ts +4 -0
  498. package/lib/modules/participant/components/footer/index.js +37 -0
  499. package/lib/modules/participant/components/merge/index.d.ts +11 -0
  500. package/lib/modules/participant/components/merge/index.js +49 -0
  501. package/lib/modules/participant/components/mute-all/index.d.ts +9 -0
  502. package/lib/modules/participant/components/mute-all/index.js +78 -0
  503. package/lib/modules/participant/components/participants/index.d.ts +2 -0
  504. package/lib/modules/participant/components/participants/index.js +201 -0
  505. package/lib/modules/participant/components/rename/index.d.ts +4 -0
  506. package/lib/modules/participant/components/rename/index.js +45 -0
  507. package/lib/modules/participant/index.css +11 -0
  508. package/lib/modules/participant/index.d.ts +4 -17
  509. package/lib/modules/participant/index.dev.js +40 -23
  510. package/lib/modules/participant/index.js +13 -33
  511. package/lib/modules/participant/member-list-data-source.d.ts +1 -1
  512. package/lib/modules/participant/member-list-data-source.js +3 -3
  513. package/lib/modules/participant/store.d.ts +35 -37
  514. package/lib/modules/participant/store.js +456 -292
  515. package/lib/modules/participant/type.d.ts +1 -1
  516. package/lib/modules/participant/view.d.ts +0 -9
  517. package/lib/modules/participant/view.js +8 -346
  518. package/lib/modules/setting/audio-settings/audio-settings.js +23 -20
  519. package/lib/modules/setting/audio-settings/index.css +26 -1
  520. package/lib/modules/setting/dialog-wrapper.js +2 -2
  521. package/lib/modules/setting/general-settings/general-settings.js +2 -2
  522. package/lib/modules/setting/general-settings/index.css +1 -1
  523. package/lib/modules/setting/index.css +2 -1
  524. package/lib/modules/setting/index.d.ts +2 -14
  525. package/lib/modules/setting/index.dev.js +20 -11
  526. package/lib/modules/setting/index.js +7 -3
  527. package/lib/modules/setting/minutes-settings/minutes-settings.js +2 -2
  528. package/lib/modules/setting/state/index.js +3 -3
  529. package/lib/modules/setting/storage-settings/storage-settings.js +2 -2
  530. package/lib/modules/setting/store.d.ts +17 -27
  531. package/lib/modules/setting/store.js +129 -71
  532. package/lib/modules/setting/translate-settings/index.css +3 -1
  533. package/lib/modules/setting/translate-settings/translate-settings.js +2 -2
  534. package/lib/modules/setting/video-settings/index.css +5 -2
  535. package/lib/modules/setting/video-settings/video-settings-basic.js +2 -2
  536. package/lib/modules/setting/video-settings/video-settings.js +2 -11
  537. package/lib/modules/setting/view.js +1 -2
  538. package/lib/modules/share-screen/index.d.ts +1 -5
  539. package/lib/modules/share-screen/index.dev.js +23 -30
  540. package/lib/modules/share-screen/index.js +2 -99
  541. package/lib/modules/share-screen/selection/index.css +2 -0
  542. package/lib/modules/share-screen/selection/index.js +126 -129
  543. package/lib/modules/share-screen/share-state-bar/index.js +1 -1
  544. package/lib/modules/share-screen/store.d.ts +13 -47
  545. package/lib/modules/share-screen/store.js +450 -924
  546. package/lib/modules/share-screen/view.js +6 -19
  547. package/lib/modules/sound-effect/index.d.ts +43 -0
  548. package/lib/modules/sound-effect/index.js +294 -0
  549. package/lib/modules/sound-effect/sound-effect-player.d.ts +12 -0
  550. package/lib/modules/sound-effect/sound-effect-player.js +57 -0
  551. package/lib/modules/state-bar/index.css +16 -2
  552. package/lib/modules/state-bar/index.d.ts +3 -3
  553. package/lib/modules/state-bar/index.dev.js +1 -1
  554. package/lib/modules/state-bar/index.js +15 -28
  555. package/lib/modules/state-bar/layout-config.js +7 -8
  556. package/lib/modules/state-bar/live-streaming-state.js +10 -15
  557. package/lib/modules/state-bar/meeting-detail.css +32 -13
  558. package/lib/modules/state-bar/meeting-details.js +118 -58
  559. package/lib/modules/state-bar/meeting-network-state.css +1 -1
  560. package/lib/modules/state-bar/meeting-network-state.js +4 -4
  561. package/lib/modules/state-bar/meeting-time.js +2 -2
  562. package/lib/modules/state-bar/network-quality.js +2 -2
  563. package/lib/modules/state-bar/recording.js +9 -7
  564. package/lib/modules/state-bar/store.d.ts +9 -6
  565. package/lib/modules/state-bar/store.js +45 -41
  566. package/lib/modules/state-bar/view.js +42 -29
  567. package/lib/modules/video-window/deviceState/index.d.ts +2 -1
  568. package/lib/modules/video-window/deviceState/index.js +8 -8
  569. package/lib/modules/video-window/index.d.ts +4 -3
  570. package/lib/modules/video-window/index.js +23 -16
  571. package/lib/modules/video-window/members/index.js +14 -8
  572. package/lib/modules/video-window/speaking/index.js +2 -2
  573. package/lib/modules/video-window/store.d.ts +15 -6
  574. package/lib/modules/video-window/store.js +73 -20
  575. package/lib/modules/video-window/topControl/index.js +2 -2
  576. package/lib/modules/video-window/type.d.ts +0 -5
  577. package/lib/modules/video-window/type.js +1 -7
  578. package/lib/modules/video-window/view.js +2 -2
  579. package/lib/modules/waiting-room-layout/index.css +16 -4
  580. package/lib/modules/waiting-room-layout/index.d.ts +3 -1
  581. package/lib/modules/waiting-room-layout/index.js +22 -5
  582. package/lib/modules/waiting-room-layout/store.d.ts +5 -2
  583. package/lib/modules/waiting-room-layout/store.js +12 -5
  584. package/lib/modules/waiting-room-layout/view.js +43 -33
  585. package/lib/modules/whiteboard/app.js +2 -2
  586. package/lib/modules/whiteboard/components/control-bar/index.js +4 -6
  587. package/lib/modules/whiteboard/components/control-bar/store.d.ts +2 -2
  588. package/lib/modules/whiteboard/components/control-bar/store.js +1 -1
  589. package/lib/modules/whiteboard/components/loading/index.js +2 -2
  590. package/lib/modules/whiteboard/components/multi-window/index.js +2 -2
  591. package/lib/modules/whiteboard/components/progress/electron.js +3 -3
  592. package/lib/modules/whiteboard/components/switch-theme/index.css +1 -0
  593. package/lib/modules/whiteboard/components/switch-theme/index.js +19 -9
  594. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +1 -1
  595. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +1 -1
  596. package/lib/modules/whiteboard/components/toolbar/store.d.ts +1 -1
  597. package/lib/modules/whiteboard/context.d.ts +1 -1
  598. package/lib/modules/whiteboard/context.js +2 -2
  599. package/lib/modules/whiteboard/index.d.ts +4 -20
  600. package/lib/modules/whiteboard/index.js +36 -79
  601. package/lib/modules/whiteboard/type.d.ts +1 -1
  602. package/lib/plugins/browser-runtime-plugin.js +24 -3
  603. package/lib/plugins/electron-rtc-plugin.js +3 -3
  604. package/lib/plugins/module-dev-plugin.d.ts +1 -1
  605. package/lib/plugins/module-dev-plugin.js +3 -3
  606. package/lib/plugins/rtm-plugin.js +3 -3
  607. package/lib/plugins/web-rtc-plugin.js +3 -3
  608. package/lib/providers/device-privilege-provider.d.ts +30 -0
  609. package/lib/providers/device-privilege-provider.js +386 -0
  610. package/lib/providers/device-provider.d.ts +246 -0
  611. package/lib/providers/device-provider.js +1741 -0
  612. package/lib/providers/device-stream-provider.d.ts +36 -0
  613. package/lib/providers/device-stream-provider.js +460 -0
  614. package/lib/providers/event-provider.d.ts +108 -0
  615. package/lib/providers/event-provider.js +288 -0
  616. package/lib/providers/interpreter-provider.d.ts +25 -0
  617. package/lib/providers/interpreter-provider.js +151 -0
  618. package/lib/providers/local-storage-provider.d.ts +8 -0
  619. package/lib/providers/local-storage-provider.js +31 -0
  620. package/lib/providers/monitor-provider.d.ts +15 -0
  621. package/lib/providers/monitor-provider.js +29 -0
  622. package/lib/providers/privilege-provider.d.ts +216 -0
  623. package/lib/providers/privilege-provider.js +966 -0
  624. package/lib/providers/renderer-provider.d.ts +43 -0
  625. package/lib/providers/renderer-provider.js +245 -0
  626. package/lib/providers/room-provider.d.ts +79 -0
  627. package/lib/providers/room-provider.js +439 -0
  628. package/lib/providers/session-provider.d.ts +26 -0
  629. package/lib/providers/session-provider.js +49 -0
  630. package/lib/runtime.d.ts +14 -4
  631. package/lib/scenes/base.d.ts +10 -0
  632. package/lib/scenes/base.js +75 -0
  633. package/lib/scenes/main-scene.d.ts +48 -0
  634. package/lib/scenes/main-scene.js +390 -0
  635. package/lib/scenes/waiting-scene.d.ts +31 -0
  636. package/lib/scenes/waiting-scene.js +129 -0
  637. package/lib/shared-data-source/config.d.ts +16 -0
  638. package/lib/shared-data-source/config.js +21 -0
  639. package/lib/translations/enUS.d.ts +267 -2
  640. package/lib/translations/enUS.js +373 -103
  641. package/lib/translations/zhCN.d.ts +267 -3
  642. package/lib/translations/zhCN.js +299 -30
  643. package/lib/type.d.ts +38 -4
  644. package/lib/type.js +4 -4
  645. package/lib/ui-manager.d.ts +11 -9
  646. package/lib/ui-manager.js +551 -683
  647. package/lib/ui-node.d.ts +25 -0
  648. package/lib/ui-node.js +156 -0
  649. package/lib/ui-scene.d.ts +3 -3
  650. package/lib/ui-scene.js +9 -22
  651. package/lib/utilities/constant.d.ts +45 -156
  652. package/lib/utilities/constant.js +43 -130
  653. package/lib/utilities/extract.d.ts +1 -1
  654. package/lib/utilities/parameters.d.ts +4 -0
  655. package/lib/utilities/parameters.js +19 -1
  656. package/lib/utilities/renderer.d.ts +2 -1
  657. package/lib/utilities/renderer.js +6 -3
  658. package/lib/utilities/screen-capture-permission.d.ts +1 -0
  659. package/lib/utilities/screen-capture-permission.js +16 -0
  660. package/lib/utilities/screen.js +32 -23
  661. package/lib/utilities/tools.d.ts +12 -1
  662. package/lib/utilities/tools.js +101 -4
  663. package/lib/utilities/ui-resources.d.ts +1 -0
  664. package/lib/utilities/ui-resources.js +5 -2
  665. package/lib/utilities/video-track-render-context.d.ts +2 -2
  666. package/package.json +14 -13
  667. package/public/assets/fcr_leave2.svg +58 -0
  668. package/public/assets/loading.gif +0 -0
  669. package/public/index.html +186 -10
  670. package/dist/electron/app.js +0 -148
  671. package/dist/electron/default-options.js +0 -25
  672. package/dist/electron/env.js +0 -13
  673. package/dist/electron/index.js +0 -20
  674. package/dist/electron/injections.js +0 -702
  675. package/dist/electron/logger.js +0 -66
  676. package/dist/electron/main.js +0 -67
  677. package/dist/electron/plugins/meeting-state.js +0 -39
  678. package/dist/electron/plugins/screenshot.js +0 -49
  679. package/dist/electron/preload.js +0 -36
  680. package/dist/electron/tools.js +0 -66
  681. package/dist/electron/window.js +0 -124
@@ -0,0 +1,36 @@
1
+ import { FcrBaseRoomControl } from 'fcr-core/lib/room-control/type';
2
+ import { FcrUIDeviceProvider } from '../providers/device-provider';
3
+ import { FcrUIPrivilegeProvider } from '../providers/privilege-provider';
4
+ import { FcrUIEventProvider } from '../providers/event-provider';
5
+ export interface FcrUIDeviceStreamProvider {
6
+ enableCameraWithStream(enable: boolean): void;
7
+ enableMicrophoneWithStream(enable: boolean, confirmAudioShareWhileMicOff?: boolean): void;
8
+ }
9
+ export declare class FcrUIDeviceStreamProviderImpl implements FcrUIDeviceStreamProvider {
10
+ protected logger: import("agora-foundation/lib/logger").Logger;
11
+ private _roomControl;
12
+ private _deviceProvider;
13
+ private _privilegeProvider;
14
+ private _eventProvider;
15
+ private _cameraDeviceId;
16
+ private _microphoneDeviceId;
17
+ private _interpreterControl;
18
+ private get _localUser();
19
+ private get _localCameraStream();
20
+ private get _localLoopbackStream();
21
+ private get _canStartLocalVideo();
22
+ private get _canStartLocalAudio();
23
+ private _firstGetMicrophonePrivilege;
24
+ constructor(roomControl: FcrBaseRoomControl, privilegeProvider: FcrUIPrivilegeProvider, deviceProvider: FcrUIDeviceProvider, eventProvider: FcrUIEventProvider);
25
+ checkoutDevicePermission(mediaType: 'camera' | 'microphone'): Promise<boolean>;
26
+ enableCameraWithStream(enable: boolean): Promise<void>;
27
+ enableMicrophoneWithStream(enable: boolean, confirmAudioShareWhileMicOff?: boolean): Promise<void>;
28
+ release(): void;
29
+ private _initLocalStream;
30
+ private _handleCameraChanged;
31
+ private _handleMicrophoneChanged;
32
+ private _bindLocalAudioStream;
33
+ private _bindLocalVideoStream;
34
+ private _handleProcessEvent;
35
+ _getInterpreterInfo(): import("fcr-core/lib/room-control/interpreter-control/types").FcrInterpreterUserInfo | null | undefined;
36
+ }
@@ -0,0 +1,460 @@
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.array.iterator.js");
10
+ require("core-js/modules/es.array.push.js");
11
+ require("core-js/modules/es.date.to-primitive.js");
12
+ require("core-js/modules/es.function.bind.js");
13
+ require("core-js/modules/es.function.name.js");
14
+ require("core-js/modules/es.map.js");
15
+ require("core-js/modules/es.number.constructor.js");
16
+ require("core-js/modules/es.object.create.js");
17
+ require("core-js/modules/es.object.define-property.js");
18
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
19
+ require("core-js/modules/es.string.iterator.js");
20
+ require("core-js/modules/esnext.function.metadata.js");
21
+ require("core-js/modules/esnext.map.delete-all.js");
22
+ require("core-js/modules/esnext.map.emplace.js");
23
+ require("core-js/modules/esnext.map.every.js");
24
+ require("core-js/modules/esnext.map.filter.js");
25
+ require("core-js/modules/esnext.map.find.js");
26
+ require("core-js/modules/esnext.map.find-key.js");
27
+ require("core-js/modules/esnext.map.includes.js");
28
+ require("core-js/modules/esnext.map.key-of.js");
29
+ require("core-js/modules/esnext.map.map-keys.js");
30
+ require("core-js/modules/esnext.map.map-values.js");
31
+ require("core-js/modules/esnext.map.merge.js");
32
+ require("core-js/modules/esnext.map.reduce.js");
33
+ require("core-js/modules/esnext.map.some.js");
34
+ require("core-js/modules/esnext.map.update.js");
35
+ require("core-js/modules/esnext.symbol.metadata.js");
36
+ require("core-js/modules/web.dom-collections.iterator.js");
37
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
38
+ var _typeof = require("@babel/runtime/helpers/typeof");
39
+ Object.defineProperty(exports, "__esModule", {
40
+ value: true
41
+ });
42
+ exports.FcrUIDeviceStreamProviderImpl = void 0;
43
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
44
+ require("core-js/modules/es.array.find.js");
45
+ require("core-js/modules/es.object.to-string.js");
46
+ require("core-js/modules/esnext.async-iterator.find.js");
47
+ require("core-js/modules/esnext.iterator.constructor.js");
48
+ require("core-js/modules/esnext.iterator.find.js");
49
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
50
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
51
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
52
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
53
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
54
+ var _fcrCore = require("fcr-core");
55
+ var _decorator = require("agora-foundation/lib/decorator");
56
+ var _mobx = require("mobx");
57
+ var _type = require("agora-rte-sdk/lib/core/scene/type");
58
+ var _type2 = require("agora-rte-sdk/lib/core/rtc/type");
59
+ var _logger = require("agora-foundation/lib/logger");
60
+ var _i18n = require("agora-ui-foundation/lib/i18n");
61
+ var _rendererEvent = require("../utilities/renderer-event");
62
+ var _type3 = require("fcr-core/lib/room-control/type");
63
+ var _env = require("agora-foundation/lib/utilities/env");
64
+ var _constant = require("../utilities/constant");
65
+ var _base = require("../base");
66
+ var _FcrUIDeviceStreamProviderImpl;
67
+ var _initProto, _checkoutDevicePermissionDecs, _enableCameraWithStreamDecs, _enableMicrophoneWithStreamDecs, _getInterpreterInfoDecs, _ref;
68
+ 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)]; } }; }
69
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
70
+ 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); }
71
+ 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; }
72
+ 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; }
73
+ _ref = (_checkoutDevicePermissionDecs = [_mobx.action, _mobx.action.bound], _enableCameraWithStreamDecs = [_mobx.action, _mobx.action.bound], _enableMicrophoneWithStreamDecs = [_mobx.action, _mobx.action.bound], _getInterpreterInfoDecs = [_mobx.action, _mobx.action.bound], "logger");
74
+ var FcrUIDeviceStreamProviderImpl = exports.FcrUIDeviceStreamProviderImpl = /*#__PURE__*/function () {
75
+ function FcrUIDeviceStreamProviderImpl(roomControl, privilegeProvider, deviceProvider, eventProvider) {
76
+ var _roomControl$getRoomI,
77
+ _this = this;
78
+ (0, _classCallCheck2["default"])(this, FcrUIDeviceStreamProviderImpl);
79
+ (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.getLogger)()));
80
+ (0, _defineProperty2["default"])(this, "_cameraDeviceId", '');
81
+ (0, _defineProperty2["default"])(this, "_microphoneDeviceId", '');
82
+ (0, _defineProperty2["default"])(this, "_interpreterControl", null);
83
+ (0, _defineProperty2["default"])(this, "_firstGetMicrophonePrivilege", true);
84
+ this._roomControl = roomControl;
85
+ this._privilegeProvider = privilegeProvider;
86
+ this._deviceProvider = deviceProvider;
87
+ this._eventProvider = eventProvider;
88
+ if (((_roomControl$getRoomI = roomControl.getRoomInfo()) === null || _roomControl$getRoomI === void 0 ? void 0 : _roomControl$getRoomI.roomType) === _type3.FcrRoomType.Mainroom) {
89
+ var interpreterControl = roomControl.getInterpreterControl();
90
+ if (interpreterControl) {
91
+ this._interpreterControl = interpreterControl;
92
+ }
93
+ }
94
+ this._deviceProvider.addObserver({
95
+ onCameraChanged: this._handleCameraChanged,
96
+ onMicrophoneChanged: this._handleMicrophoneChanged
97
+ });
98
+ var streamControl = this._roomControl.getStreamControl();
99
+ streamControl.addObserver({
100
+ onStreamsAdded: function onStreamsAdded(_, e) {
101
+ var _e$find;
102
+ var localCameraStream = (_e$find = e.find(function (event) {
103
+ return event.modifiedStream.owner.userId === _this._localUser.userId && event.modifiedStream.videoSourceType === _type2.AgoraRtcVideoSourceType.CAMERA;
104
+ })) === null || _e$find === void 0 ? void 0 : _e$find.modifiedStream;
105
+ if (localCameraStream) {
106
+ _this._bindLocalAudioStream();
107
+ _this._bindLocalVideoStream();
108
+ }
109
+ },
110
+ onStreamsUpdated: function onStreamsUpdated(_, e) {
111
+ var localCamera = e.find(function (event) {
112
+ return event.modifiedStream.owner.userId === _this._localUser.userId && event.modifiedStream.videoSourceType === _type2.AgoraRtcVideoSourceType.CAMERA;
113
+ });
114
+ var localCameraStream = localCamera === null || localCamera === void 0 ? void 0 : localCamera.modifiedStream;
115
+ if (localCameraStream) {
116
+ var _localCamera$operator;
117
+ if (localCameraStream.streamType === _type.AgoraRteMediaStreamType.AUDIO || localCameraStream.streamType === _type.AgoraRteMediaStreamType.NONE) {
118
+ if (_this._deviceProvider.cameraEnabled) {
119
+ _this._deviceProvider.setCameraEnabled(false);
120
+ _this._eventProvider.showToast({
121
+ type: 'error',
122
+ message: (0, _i18n.transI18n)('fmt_uimanager_tips_urturnedoff')
123
+ });
124
+ }
125
+ }
126
+ if (_this._getInterpreterInfo() && ((_localCamera$operator = localCamera.operatorUser) === null || _localCamera$operator === void 0 ? void 0 : _localCamera$operator.userId) === _this._localUser.userId) {
127
+ return;
128
+ }
129
+ if (localCameraStream.streamType === _type.AgoraRteMediaStreamType.VIDEO || localCameraStream.streamType === _type.AgoraRteMediaStreamType.NONE) {
130
+ if (_this._deviceProvider.microphoneEnabled) {
131
+ _this._deviceProvider.setMicrophoneEnabled(false);
132
+ _this._eventProvider.showToast({
133
+ type: 'error',
134
+ message: (0, _i18n.transI18n)('fmt_uimanager_tips_urmuted')
135
+ });
136
+ }
137
+ }
138
+ _this._bindLocalAudioStream();
139
+ _this._bindLocalVideoStream();
140
+ }
141
+ }
142
+ });
143
+ var _this$_deviceProvider = this._deviceProvider.currentDeviceId,
144
+ cameraDeviceId = _this$_deviceProvider.cameraDeviceId,
145
+ microphoneDeviceId = _this$_deviceProvider.microphoneDeviceId;
146
+ this._cameraDeviceId = cameraDeviceId;
147
+ this._microphoneDeviceId = microphoneDeviceId;
148
+ this._initLocalStream();
149
+ (0, _rendererEvent.addEventListener)(this._handleProcessEvent);
150
+ }
151
+ return (0, _createClass2["default"])(FcrUIDeviceStreamProviderImpl, [{
152
+ key: "_localUser",
153
+ get: function get() {
154
+ return this._roomControl.getUserControl().getLocalUser();
155
+ }
156
+ }, {
157
+ key: "_localCameraStream",
158
+ get: function get() {
159
+ var localStreams = this._roomControl.getStreamControl().getStreamsByUserId(this._localUser.userId);
160
+ return localStreams.find(function (stream) {
161
+ return stream.videoSourceType === _type2.AgoraRtcVideoSourceType.CAMERA;
162
+ });
163
+ }
164
+ }, {
165
+ key: "_localLoopbackStream",
166
+ get: function get() {
167
+ var localStreams = this._roomControl.getStreamControl().getStreamsByUserId(this._localUser.userId);
168
+ return localStreams.find(function (stream) {
169
+ return stream.audioSourceType === _type2.AgoraRtcAudioSourceType.LOOPBACK;
170
+ });
171
+ }
172
+ }, {
173
+ key: "_canStartLocalVideo",
174
+ get: function get() {
175
+ return this._privilegeProvider.hasStartVideoPermission(_fcrCore.FcrPrivilegeUserRole.SELF);
176
+ }
177
+ }, {
178
+ key: "_canStartLocalAudio",
179
+ get: function get() {
180
+ return this._privilegeProvider.hasUnmutePermission(_fcrCore.FcrPrivilegeUserRole.SELF);
181
+ }
182
+ }, {
183
+ key: "checkoutDevicePermission",
184
+ value: function () {
185
+ var _checkoutDevicePermission = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(mediaType) {
186
+ var hasSystemPermission;
187
+ return _regenerator["default"].wrap(function _callee$(_context) {
188
+ while (1) switch (_context.prev = _context.next) {
189
+ case 0:
190
+ hasSystemPermission = true;
191
+ if (!(0, _env.isElectron)()) {
192
+ _context.next = 5;
193
+ break;
194
+ }
195
+ _context.next = 4;
196
+ return window.runtime.checkMediaPermission(mediaType);
197
+ case 4:
198
+ hasSystemPermission = _context.sent;
199
+ case 5:
200
+ if (!hasSystemPermission) {
201
+ this._eventProvider.openDialog(_constant.FcrUIDialogKey.SYSTEM_PREFERENCE, '', mediaType);
202
+ }
203
+ return _context.abrupt("return", hasSystemPermission);
204
+ case 7:
205
+ case "end":
206
+ return _context.stop();
207
+ }
208
+ }, _callee, this);
209
+ }));
210
+ function checkoutDevicePermission(_x) {
211
+ return _checkoutDevicePermission.apply(this, arguments);
212
+ }
213
+ return checkoutDevicePermission;
214
+ }()
215
+ }, {
216
+ key: "enableCameraWithStream",
217
+ value: function () {
218
+ var _enableCameraWithStream = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(enable) {
219
+ var _this$_roomControl$ge;
220
+ var hasVideoPublishPrivilege, hasNoSecurityPermission, isMainRoom, hasDeivcePermission;
221
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
222
+ while (1) switch (_context2.prev = _context2.next) {
223
+ case 0:
224
+ if (this._deviceProvider.cameraId) {
225
+ _context2.next = 2;
226
+ break;
227
+ }
228
+ return _context2.abrupt("return");
229
+ case 2:
230
+ hasVideoPublishPrivilege = this._localCameraStream && (this._localCameraStream.streamType === _fcrCore.FcrStreamType.BOTH || this._localCameraStream.streamType === _fcrCore.FcrStreamType.VIDEO);
231
+ hasNoSecurityPermission = !this._canStartLocalVideo;
232
+ isMainRoom = ((_this$_roomControl$ge = this._roomControl.getRoomInfo()) === null || _this$_roomControl$ge === void 0 ? void 0 : _this$_roomControl$ge.roomType) === _type3.FcrRoomType.Mainroom;
233
+ if (!(hasNoSecurityPermission && isMainRoom && enable)) {
234
+ _context2.next = 11;
235
+ break;
236
+ }
237
+ this._eventProvider.showToast({
238
+ type: 'warn',
239
+ message: (0, _i18n.transI18n)('fmt_uimanager_tips_norightsvideo')
240
+ });
241
+ if (!hasVideoPublishPrivilege) {
242
+ _context2.next = 10;
243
+ break;
244
+ }
245
+ _context2.next = 10;
246
+ return this._roomControl.getStreamControl().updatePublishPrivilegeOfStreams((0, _defineProperty2["default"])({}, this._localCameraStream.streamId, {
247
+ videoPrivilege: _fcrCore.FcrStreamPrivilegeOperation.NOPRIVILEGE,
248
+ audioPrivilege: _fcrCore.FcrStreamPrivilegeOperation.NOOPERATION
249
+ }));
250
+ case 10:
251
+ return _context2.abrupt("return");
252
+ case 11:
253
+ if (!(this._localCameraStream && enable && isMainRoom)) {
254
+ _context2.next = 15;
255
+ break;
256
+ }
257
+ if (hasVideoPublishPrivilege) {
258
+ _context2.next = 15;
259
+ break;
260
+ }
261
+ _context2.next = 15;
262
+ return this._roomControl.getStreamControl().updatePublishPrivilegeOfStreams((0, _defineProperty2["default"])({}, this._localCameraStream.streamId, {
263
+ videoPrivilege: _fcrCore.FcrStreamPrivilegeOperation.HAS_PRIVILEGE,
264
+ audioPrivilege: _fcrCore.FcrStreamPrivilegeOperation.NOOPERATION
265
+ }));
266
+ case 15:
267
+ _context2.next = 17;
268
+ return this.checkoutDevicePermission('camera');
269
+ case 17:
270
+ hasDeivcePermission = _context2.sent;
271
+ if (hasDeivcePermission) {
272
+ this._deviceProvider.setCameraEnabled(enable);
273
+ }
274
+ case 19:
275
+ case "end":
276
+ return _context2.stop();
277
+ }
278
+ }, _callee2, this);
279
+ }));
280
+ function enableCameraWithStream(_x2) {
281
+ return _enableCameraWithStream.apply(this, arguments);
282
+ }
283
+ return enableCameraWithStream;
284
+ }()
285
+ }, {
286
+ key: "enableMicrophoneWithStream",
287
+ value: function () {
288
+ var _enableMicrophoneWithStream = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(enable) {
289
+ var _this$_roomControl$ge4;
290
+ var confirmAudioShareWhileMicOff,
291
+ hasAudioPublishPrivilege,
292
+ hasNoSecurityPermission,
293
+ isMainRoom,
294
+ hasDeivcePermission,
295
+ _args3 = arguments;
296
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
297
+ while (1) switch (_context3.prev = _context3.next) {
298
+ case 0:
299
+ confirmAudioShareWhileMicOff = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : false;
300
+ hasAudioPublishPrivilege = this._localCameraStream && (this._localCameraStream.streamType === _fcrCore.FcrStreamType.BOTH || this._localCameraStream.streamType === _fcrCore.FcrStreamType.AUDIO);
301
+ hasNoSecurityPermission = !this._canStartLocalAudio;
302
+ isMainRoom = ((_this$_roomControl$ge4 = this._roomControl.getRoomInfo()) === null || _this$_roomControl$ge4 === void 0 ? void 0 : _this$_roomControl$ge4.roomType) === _type3.FcrRoomType.Mainroom;
303
+ if (!this._firstGetMicrophonePrivilege) {
304
+ _context3.next = 9;
305
+ break;
306
+ }
307
+ this._firstGetMicrophonePrivilege = false;
308
+ if (hasAudioPublishPrivilege) {
309
+ this._deviceProvider.setMicrophoneEnabled(enable);
310
+ }
311
+ _context3.next = 25;
312
+ break;
313
+ case 9:
314
+ if (!(enable && hasNoSecurityPermission && isMainRoom && !this._getInterpreterInfo())) {
315
+ _context3.next = 15;
316
+ break;
317
+ }
318
+ this._eventProvider.showToast({
319
+ type: 'warn',
320
+ message: (0, _i18n.transI18n)('fmt_uimanager_tips_norightsaudio')
321
+ });
322
+ if (!hasAudioPublishPrivilege) {
323
+ _context3.next = 14;
324
+ break;
325
+ }
326
+ _context3.next = 14;
327
+ return this._roomControl.getStreamControl().updatePublishPrivilegeOfStreams((0, _defineProperty2["default"])({}, this._localCameraStream.streamId, {
328
+ videoPrivilege: _fcrCore.FcrStreamPrivilegeOperation.NOOPERATION,
329
+ audioPrivilege: _fcrCore.FcrStreamPrivilegeOperation.NOPRIVILEGE
330
+ }));
331
+ case 14:
332
+ return _context3.abrupt("return");
333
+ case 15:
334
+ if (!(isMainRoom && this._localCameraStream)) {
335
+ _context3.next = 21;
336
+ break;
337
+ }
338
+ if (hasAudioPublishPrivilege) {
339
+ _context3.next = 21;
340
+ break;
341
+ }
342
+ if (!enable) {
343
+ _context3.next = 21;
344
+ break;
345
+ }
346
+ if (this._getInterpreterInfo()) {
347
+ _context3.next = 21;
348
+ break;
349
+ }
350
+ _context3.next = 21;
351
+ return this._roomControl.getStreamControl().updatePublishPrivilegeOfStreams((0, _defineProperty2["default"])({}, this._localCameraStream.streamId, {
352
+ videoPrivilege: _fcrCore.FcrStreamPrivilegeOperation.NOOPERATION,
353
+ audioPrivilege: _fcrCore.FcrStreamPrivilegeOperation.HAS_PRIVILEGE
354
+ }));
355
+ case 21:
356
+ _context3.next = 23;
357
+ return this.checkoutDevicePermission('microphone');
358
+ case 23:
359
+ hasDeivcePermission = _context3.sent;
360
+ if (hasDeivcePermission) {
361
+ this._deviceProvider.setMicrophoneEnabled(enable);
362
+ }
363
+ case 25:
364
+ case "end":
365
+ return _context3.stop();
366
+ }
367
+ }, _callee3, this);
368
+ }));
369
+ function enableMicrophoneWithStream(_x3) {
370
+ return _enableMicrophoneWithStream.apply(this, arguments);
371
+ }
372
+ return enableMicrophoneWithStream;
373
+ }()
374
+ }, {
375
+ key: "release",
376
+ value: function release() {
377
+ (0, _rendererEvent.removeEventListener)(this._handleProcessEvent);
378
+ }
379
+ }, {
380
+ key: "_initLocalStream",
381
+ value: function _initLocalStream() {
382
+ if (this._localCameraStream) {
383
+ this._bindLocalVideoStream();
384
+ this._bindLocalAudioStream();
385
+ }
386
+ }
387
+ }, {
388
+ key: "_handleCameraChanged",
389
+ value: function _handleCameraChanged(cameraDeviceId) {
390
+ this._cameraDeviceId = cameraDeviceId;
391
+ this._bindLocalVideoStream();
392
+ }
393
+ }, {
394
+ key: "_handleMicrophoneChanged",
395
+ value: function _handleMicrophoneChanged(microphoneDeviceId) {
396
+ this._microphoneDeviceId = microphoneDeviceId;
397
+ this._bindLocalAudioStream();
398
+ }
399
+ }, {
400
+ key: "_bindLocalAudioStream",
401
+ value: function _bindLocalAudioStream() {
402
+ var streamControl = this._roomControl.getStreamControl();
403
+ var localCameraStream = this._localCameraStream;
404
+ if (localCameraStream && this._microphoneDeviceId && localCameraStream.audioSourceId !== this._microphoneDeviceId) {
405
+ streamControl.bindLocalStreams([{
406
+ streamId: localCameraStream.streamId,
407
+ audioSourceId: this._microphoneDeviceId
408
+ }]);
409
+ }
410
+ }
411
+ }, {
412
+ key: "_bindLocalVideoStream",
413
+ value: function _bindLocalVideoStream() {
414
+ var streamControl = this._roomControl.getStreamControl();
415
+ var localCameraStream = this._localCameraStream;
416
+ if (localCameraStream && this._cameraDeviceId && localCameraStream.videoSourceId !== this._cameraDeviceId) {
417
+ streamControl.bindLocalStreams([{
418
+ streamId: localCameraStream.streamId,
419
+ videoSourceId: this._deviceProvider.cameraId
420
+ }]);
421
+ }
422
+ }
423
+ }, {
424
+ key: "_handleProcessEvent",
425
+ value: function _handleProcessEvent(event) {
426
+ switch (event.action) {
427
+ case _constant.FcrUIRendererEventAction.POWER_MONITOR_LOCK_SCREEN:
428
+ if (this._deviceProvider.cameraEnabled) {
429
+ this.enableCameraWithStream(false);
430
+ }
431
+ if (this._deviceProvider.microphoneEnabled) {
432
+ this.enableMicrophoneWithStream(false);
433
+ }
434
+ this.logger.info('close camera and microphone due to lock screen');
435
+ break;
436
+ }
437
+ }
438
+ }, {
439
+ key: "_getInterpreterInfo",
440
+ value: function
441
+ // 获取本地用户关联的翻译官信息
442
+ _getInterpreterInfo() {
443
+ var _this2 = this;
444
+ if (this._interpreterControl) {
445
+ var interpreterUsers = this._interpreterControl.getInterpreterUserList(); //翻译官列表
446
+ if (interpreterUsers) {
447
+ var interpreter = interpreterUsers.find(function (ele) {
448
+ return ele.userId === _this2._localUser.userId;
449
+ }); //本地用户关联的翻译官信息
450
+ return interpreter;
451
+ }
452
+ }
453
+ return null;
454
+ }
455
+ }]);
456
+ }();
457
+ _FcrUIDeviceStreamProviderImpl = FcrUIDeviceStreamProviderImpl;
458
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIDeviceStreamProviderImpl, [[_checkoutDevicePermissionDecs, 18, "checkoutDevicePermission"], [_enableCameraWithStreamDecs, 18, "enableCameraWithStream"], [_enableMicrophoneWithStreamDecs, 18, "enableMicrophoneWithStream"], [_decorator.bound, 2, "_handleCameraChanged"], [_decorator.bound, 2, "_handleMicrophoneChanged"], [_decorator.bound, 2, "_bindLocalAudioStream"], [_decorator.bound, 2, "_bindLocalVideoStream"], [_decorator.bound, 2, "_handleProcessEvent"], [_getInterpreterInfoDecs, 18, "_getInterpreterInfo"]], []).e, 1);
459
+ _initProto = _applyDecs$e[0];
460
+ (0, _base.registerDependency)('deviceStreamProvider');
@@ -0,0 +1,108 @@
1
+ import { FcrUIDialogKey, FcrUIAction } from '../utilities/constant';
2
+ import { FcrUserInfo } from 'fcr-core/lib/type';
3
+ import { DeviceSettingDialogConfig, CustomSetting } from '../modules/setting/store';
4
+ import { FcrUICloudRecordingParams, FcrUIExitReason, FcrUILayoutSizeChangedParams, FcrUINewChatMessagesParams, FcrUINotificationContentType, FcrUINotificationParams, FcrUISetMainSpeakerParams, FcrUISpotlightStreamChangedParams, FcrUIToastParams, FcrUIToggleLayoutParams, FcrUIToggleLayoutSizeParams, FcrUIUpdateAsideParams } from '../type';
5
+ import { ConfirmContentProps } from 'agora-ui-foundation/lib/components/confirm-content';
6
+ import { FcrRoomType } from 'fcr-core/lib/room-control/type';
7
+ export interface FcrUIEventObserver {
8
+ onEvent?(action: FcrUIAction, payload?: unknown): void;
9
+ }
10
+ export interface FcrUIEventProvider {
11
+ sendEvent(action: FcrUIAction, payload?: unknown): void;
12
+ showToast(params: FcrUIToastParams): void;
13
+ showNotification(params: FcrUINotificationParams): void;
14
+ closeNotification(key: FcrUINotificationContentType): void;
15
+ showChatToast(params: FcrUIToastParams): void;
16
+ /**
17
+ * 默认同一个 title 或 content 的 confirm 窗口只打开一个实例
18
+ * @param key 可以通过 key 区分相同 title 或 content 的 confirm 窗口
19
+ * @param duration 可以通过 duration 配置自动关闭时间
20
+ * @mulitple 可以通过 mulitple 配置打开多个实例(忽略 key)
21
+ * */
22
+ openConfirmDialog(params: ConfirmContentProps & {
23
+ key?: string;
24
+ duration?: number;
25
+ }, mulitple?: boolean): string;
26
+ openDialog(dialogKey: FcrUIDialogKey, instanceId?: string, params?: unknown): string;
27
+ closeDialog(dialogId: string): void;
28
+ closeConfirm(dialogId: string): void;
29
+ startShareScreen(): void;
30
+ stopShareScreen(): void;
31
+ updateAside(params: FcrUIUpdateAsideParams): void;
32
+ receiveNewChatMessages(params: FcrUINewChatMessagesParams): void;
33
+ toggleLayout(params: FcrUIToggleLayoutParams): void;
34
+ notifyLayoutChanged(params: FcrUIToggleLayoutParams): void;
35
+ toggleLayoutSize(params: FcrUIToggleLayoutSizeParams): void;
36
+ notifyLayoutSizeChanged(params: FcrUILayoutSizeChangedParams): void;
37
+ setMainSpeaker(params: FcrUISetMainSpeakerParams): void;
38
+ setUserPinState(userId: string): void;
39
+ updateShareState(isOpen: boolean): void;
40
+ openDeviceSettingDialog(config: Partial<DeviceSettingDialogConfig>): void;
41
+ closeDeviceSettingDialog(): void;
42
+ openLiveStreamingDialog(): void;
43
+ closeLiveStreamingDialog(): void;
44
+ stopLiveStreaming(): void;
45
+ openInviteDialog(): void;
46
+ closeInviteDialog(): void;
47
+ closeWaitingRoomDialog(): void;
48
+ closeRemoveAdmitWaitingRoomDialog(dialogKey: FcrUIDialogKey): void;
49
+ exitRoom(reason: FcrUIExitReason, roomType: number): void;
50
+ cloudRecording(action: FcrUICloudRecordingParams['action']): void;
51
+ notifySpotlightStreamChanged(params: FcrUISpotlightStreamChangedParams): void;
52
+ notifyCustomSettingsChanged(settings: CustomSetting): void;
53
+ notifyChatUpdateTarget(user: FcrUserInfo, roomType: FcrRoomType): void;
54
+ notifyChatResetTarget(): void;
55
+ addObserver(observer: FcrUIEventObserver): void;
56
+ removeObserver(observer: FcrUIEventObserver): void;
57
+ }
58
+ export declare class FcrUIEventProviderImpl implements FcrUIEventProvider {
59
+ protected logger: import("agora-foundation/lib/logger").Logger;
60
+ private _observable;
61
+ sendEvent(action: FcrUIAction, payload?: unknown): void;
62
+ showToast(params: FcrUIToastParams): void;
63
+ showNotification(params: FcrUINotificationParams): void;
64
+ closeNotification(key: FcrUINotificationContentType): void;
65
+ showChatToast(params: FcrUIToastParams): void;
66
+ /**
67
+ * 默认同一个 title 或 content 的 confirm 窗口只打开一个实例
68
+ * @param key 可以通过 key 区分相同 title 或 content 的 confirm 窗口
69
+ * @param duration 可以通过 duration 配置自动关闭时间
70
+ * @mulitple 可以通过 mulitple 配置打开多个实例(忽略 key)
71
+ * */
72
+ openConfirmDialog(params: ConfirmContentProps & {
73
+ key?: string;
74
+ duration?: number;
75
+ }, mulitple?: boolean): string;
76
+ openDialog(dialogKey: FcrUIDialogKey, instanceId?: string, params?: unknown): string;
77
+ closeDialog(dialogId: string): void;
78
+ closeConfirm(dialogId: string): void;
79
+ startShareScreen(): void;
80
+ stopShareScreen(): void;
81
+ updateAside(params: FcrUIUpdateAsideParams): void;
82
+ receiveNewChatMessages(params: FcrUINewChatMessagesParams): void;
83
+ toggleLayout(params: FcrUIToggleLayoutParams): void;
84
+ notifyLayoutChanged(params: FcrUIToggleLayoutParams): void;
85
+ toggleLayoutSize(params: FcrUIToggleLayoutSizeParams): void;
86
+ notifyLayoutSizeChanged(params: FcrUILayoutSizeChangedParams): void;
87
+ setMainSpeaker(params: FcrUISetMainSpeakerParams): void;
88
+ setUserPinState(userId: string): void;
89
+ updateShareState(isOpen: boolean): void;
90
+ openDeviceSettingDialog(config?: Partial<DeviceSettingDialogConfig>): void;
91
+ closeDeviceSettingDialog(): void;
92
+ openLiveStreamingDialog(): void;
93
+ closeLiveStreamingDialog(): void;
94
+ stopLiveStreaming(): void;
95
+ openInviteDialog(): void;
96
+ closeInviteDialog(): void;
97
+ closeWaitingRoomDialog(): void;
98
+ closeRemoveAdmitWaitingRoomDialog(dialogKey: FcrUIDialogKey): void;
99
+ exitRoom(reason: FcrUIExitReason, roomType: number): void;
100
+ cloudRecording(action: FcrUICloudRecordingParams['action']): void;
101
+ notifySpotlightStreamChanged(params: FcrUISpotlightStreamChangedParams): void;
102
+ notifyCustomSettingsChanged(settings: CustomSetting): void;
103
+ addObserver(observer: FcrUIEventObserver): void;
104
+ removeObserver(observer: FcrUIEventObserver): void;
105
+ notifyChatUpdateTarget(user: FcrUserInfo, roomType: FcrRoomType): void;
106
+ notifyChatResetTarget(): void;
107
+ release(): void;
108
+ }