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,27 @@
1
+ import { FC, PropsWithChildren } from 'react';
2
+ import { FcrIconType } from 'agora-ui-foundation/lib/components/icon/type';
3
+ import { PopoverProps } from 'agora-ui-foundation/lib/components/popover';
4
+ import { FcrIconProps } from 'agora-ui-foundation/lib/components/icon';
5
+ interface ActionBarItemProps extends React.ComponentProps<'div'> {
6
+ className?: string;
7
+ icon: FcrIconType | React.ReactNode;
8
+ iconColors: FcrIconProps['colors'];
9
+ active?: boolean;
10
+ onClick?: () => void;
11
+ disabled?: boolean;
12
+ title: string;
13
+ order?: number;
14
+ id: string;
15
+ moreVisible?: boolean;
16
+ }
17
+ export declare const ActionBarItem: FC<PropsWithChildren<ActionBarItemProps & {
18
+ submenu?: {
19
+ children: React.ReactNode;
20
+ onClick: () => void;
21
+ };
22
+ }>>;
23
+ interface ActionBarItemWithPopoverProps extends ActionBarItemProps {
24
+ popoverProps?: PopoverProps;
25
+ }
26
+ export declare const ActionBarItemWithPopover: FC<ActionBarItemWithPopoverProps>;
27
+ export {};
@@ -0,0 +1,164 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.push.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/esnext.async-iterator.filter.js");
14
+ require("core-js/modules/esnext.async-iterator.for-each.js");
15
+ require("core-js/modules/esnext.iterator.constructor.js");
16
+ require("core-js/modules/esnext.iterator.filter.js");
17
+ require("core-js/modules/esnext.iterator.for-each.js");
18
+ require("core-js/modules/web.dom-collections.for-each.js");
19
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
20
+ Object.defineProperty(exports, "__esModule", {
21
+ value: true
22
+ });
23
+ exports.ActionBarItemWithPopover = exports.ActionBarItem = void 0;
24
+ require("core-js/modules/es.array.includes.js");
25
+ require("core-js/modules/es.string.includes.js");
26
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
27
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
28
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
29
+ var _classnames = _interopRequireDefault(require("classnames"));
30
+ var _react = require("react");
31
+ var _type = require("agora-ui-foundation/lib/components/icon/type");
32
+ var _popover = require("agora-ui-foundation/lib/components/popover");
33
+ var _icon = require("agora-ui-foundation/lib/components/icon");
34
+ var _actionBarCollapesItems = require("../action-bar-collapes-items");
35
+ var _jsxRuntime = require("react/jsx-runtime");
36
+ var _excluded = ["className", "title", "icon", "iconColors", "active", "onClick", "disabled", "order", "id", "moreVisible", "children"];
37
+ 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; }
38
+ 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; }
39
+ var isFcrIcon = function isFcrIcon(icon) {
40
+ return typeof icon === 'string';
41
+ };
42
+
43
+ // The `...others` is required for rc-tooltip (FcrToolTip) to work,
44
+ // internally it edits the child component's props to include `onMouseEnter`
45
+ // `onMouseMove` etc. So additional props must be passed down to the child component.
46
+ var ActionBarItem = exports.ActionBarItem = function ActionBarItem(props) {
47
+ var className = props.className,
48
+ title = props.title,
49
+ icon = props.icon,
50
+ iconColors = props.iconColors,
51
+ _props$active = props.active,
52
+ active = _props$active === void 0 ? false : _props$active,
53
+ onClick_ = props.onClick,
54
+ _props$disabled = props.disabled,
55
+ disabled = _props$disabled === void 0 ? false : _props$disabled,
56
+ order = props.order,
57
+ id = props.id,
58
+ moreVisible = props.moreVisible,
59
+ children = props.children,
60
+ others = (0, _objectWithoutProperties2["default"])(props, _excluded);
61
+ var ref = (0, _react.useRef)(null);
62
+ var _useContext = (0, _react.useContext)(_actionBarCollapesItems.actionBarCollapseContext),
63
+ setItem = _useContext.setItem,
64
+ visibleList = _useContext.visibleList;
65
+ var visible = id === 'More' ? moreVisible : visibleList.includes(id);
66
+ var onClick = !disabled && onClick_ ? onClick_ : void 0;
67
+ var innerClassName = (0, _classnames["default"])('fcr-action-bar-item', {
68
+ 'fcr-action-bar-item-active': active,
69
+ 'fcr-action-bar-item-disabled': disabled
70
+ });
71
+ (0, _react.useEffect)(function () {
72
+ // TODO: Only counting the initial `offsetWidth` is incorrect since item content could change.
73
+ // For example, "Record" can be turned into "Pause/Resume Record" which is obviously longer than 80px.
74
+ // Either do one of the following action to solve this problem:
75
+ // - Use resize observer on this component and call `setItem()` again.
76
+ // - Fix item width and do not change.
77
+ return ref.current ? setItem(id, {
78
+ name: id,
79
+ width: ref.current.offsetWidth,
80
+ order: order || 0
81
+ }) : void 0;
82
+ }, [visible]);
83
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", _objectSpread(_objectSpread({
84
+ ref: ref,
85
+ style: {
86
+ display: visible ? 'flex' : 'none'
87
+ },
88
+ className: (0, _classnames["default"])('fcr-action-bar-item-wrapper', className)
89
+ }, others), {}, {
90
+ children: [children, isFcrIcon(icon) ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("button", {
91
+ onClick: onClick,
92
+ className: innerClassName,
93
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
94
+ className: "fcr-action-bar-item-icon",
95
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
96
+ size: 32,
97
+ type: icon,
98
+ colors: iconColors
99
+ })
100
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
101
+ className: "fcr-action-bar-item-text",
102
+ children: title
103
+ })]
104
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
105
+ className: innerClassName,
106
+ children: [icon, /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
107
+ className: "fcr-action-bar-item-text",
108
+ children: title
109
+ })]
110
+ }), props.submenu && /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
111
+ overlayClassName: "fcr-action-bar--popover",
112
+ onVisibleChange: function onVisibleChange() {},
113
+ trigger: "click",
114
+ content: props.submenu.children,
115
+ overlayInnerStyle: {
116
+ minWidth: '210px',
117
+ maxWidth: '370px',
118
+ width: 'fit-content'
119
+ },
120
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
121
+ onClick: function onClick(e) {
122
+ var _props$submenu;
123
+ e.stopPropagation();
124
+ (_props$submenu = props.submenu) === null || _props$submenu === void 0 || _props$submenu.onClick();
125
+ },
126
+ className: "fcr-action-bar-extra",
127
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
128
+ type: _type.FcrIconType.FCR_DROPUP4,
129
+ colors: {
130
+ iconPrimary: 'var(--fcr_web_ui_scene_mainicon1)'
131
+ },
132
+ size: 24
133
+ })
134
+ })
135
+ })]
136
+ }));
137
+ };
138
+ var ActionBarItemWithPopover = exports.ActionBarItemWithPopover = function ActionBarItemWithPopover(props) {
139
+ var icon = props.icon,
140
+ title = props.title,
141
+ popoverProps = props.popoverProps,
142
+ id = props.id,
143
+ order = props.order;
144
+ var _useState = (0, _react.useState)(false),
145
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
146
+ popoverOpened = _useState2[0],
147
+ setPopoverOpend = _useState2[1];
148
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, _objectSpread(_objectSpread({}, popoverProps), {}, {
149
+ afterVisibleChange: function afterVisibleChange(visible) {
150
+ var _popoverProps$afterVi;
151
+ setPopoverOpend(visible);
152
+ popoverProps === null || popoverProps === void 0 || (_popoverProps$afterVi = popoverProps.afterVisibleChange) === null || _popoverProps$afterVi === void 0 || _popoverProps$afterVi.call(popoverProps, visible);
153
+ },
154
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ActionBarItem, {
155
+ id: id,
156
+ order: order,
157
+ active: popoverOpened,
158
+ icon: icon,
159
+ title: title,
160
+ iconColors: props.iconColors,
161
+ moreVisible: props.moreVisible
162
+ })
163
+ }));
164
+ };
@@ -0,0 +1,10 @@
1
+ import './index.css';
2
+ import { FcrUserInfo } from 'fcr-core/lib/type';
3
+ interface AssignHostProps {
4
+ remoteUsers: FcrUserInfo[];
5
+ assignHost: (user: FcrUserInfo) => void;
6
+ setPopoverOpened: React.Dispatch<React.SetStateAction<boolean>>;
7
+ handleKeepConnect: () => void;
8
+ }
9
+ export declare const AssignHost: (props: AssignHostProps) => import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.AssignHost = void 0;
9
+ require("core-js/modules/es.array.index-of.js");
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+ var _mobxReact = require("mobx-react");
14
+ var _react = require("react");
15
+ require("./index.css");
16
+ var _chatSelect = require("../../../chat/chat-select");
17
+ var _i18n = require("agora-ui-foundation/lib/i18n");
18
+ var _jsxRuntime = require("react/jsx-runtime");
19
+ var AssignHost = exports.AssignHost = (0, _mobxReact.observer)(function (props) {
20
+ var remoteUsers = props.remoteUsers,
21
+ assignHost = props.assignHost;
22
+ var _useState = (0, _react.useState)(0),
23
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
24
+ selected = _useState2[0],
25
+ setSelected = _useState2[1];
26
+ var t = (0, _i18n.useI18n)();
27
+ var handleLeave = /*#__PURE__*/function () {
28
+ var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
29
+ var user;
30
+ return _regenerator["default"].wrap(function _callee$(_context) {
31
+ while (1) switch (_context.prev = _context.next) {
32
+ case 0:
33
+ user = remoteUsers[selected];
34
+ assignHost(user);
35
+ props.setPopoverOpened(false);
36
+ props.handleKeepConnect();
37
+ case 4:
38
+ case "end":
39
+ return _context.stop();
40
+ }
41
+ }, _callee);
42
+ }));
43
+ return function handleLeave() {
44
+ return _ref.apply(this, arguments);
45
+ };
46
+ }();
47
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_chatSelect.ChatSelect, {
48
+ type: "assign-host",
49
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
50
+ className: "assign-host-title",
51
+ children: t('fmt_toolbar_button_assignnewhost')
52
+ }),
53
+ bottomBar: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
54
+ className: "assign-host-bottom",
55
+ onClick: handleLeave,
56
+ children: t('fmt_toolbar_button_assignleave')
57
+ }),
58
+ candidateUsers: remoteUsers,
59
+ selectedUid: remoteUsers[selected].userId,
60
+ onSelect: function onSelect(user) {
61
+ setSelected(remoteUsers.indexOf(user));
62
+ }
63
+ });
64
+ });
@@ -0,0 +1,126 @@
1
+ .leave-title {
2
+ width: 100%;
3
+ height: 39px;
4
+ display: flex;
5
+ justify-content: center;
6
+ align-items: center;
7
+
8
+ font-family: Verdana;
9
+ font-size: 14px;
10
+ font-weight: 700;
11
+ line-height: 18.2px;
12
+ text-align: center;
13
+
14
+ color: var(--fcr_ui_scene_icontext1, rgba(255, 255, 255, 1));
15
+ }
16
+
17
+ .fcr-action-bar--leave-popover {
18
+ max-width: 255px;
19
+ }
20
+
21
+ .fcr-action-bar--leave-popover .fcr-tooltip-inner {
22
+ margin: 0;
23
+ }
24
+
25
+ .assistant-leave-lock-info {
26
+ width: 100%;
27
+ height: 16px;
28
+
29
+ font-family: Helvetica Neue;
30
+ font-size: 16px;
31
+ font-weight: 700;
32
+ line-height: 16px;
33
+ text-align: center;
34
+ color: var(--fcr_ui_scene_icontext1, rgba(55, 60, 66, 1));
35
+ }
36
+
37
+ .assistant-lock-leave-title {
38
+ width: 100%;
39
+ margin-top: 15px;
40
+ display: flex;
41
+ justify-content: center;
42
+ align-items: center;
43
+
44
+ font-family: Verdana;
45
+ font-size: 14px;
46
+ font-weight: 400;
47
+ line-height: 18.2px;
48
+ text-align: center;
49
+
50
+ color: var(--fcr_ui_scene_icontext1, rgba(255, 255, 255, 1));
51
+ }
52
+
53
+ .leave-cancel {
54
+ width: 100%;
55
+ height: 36px;
56
+ margin-top: 15px;
57
+ display: flex;
58
+ align-items: center;
59
+ justify-content: center;
60
+ color: var(--fcr_ui_scene_ramp_red6, rgba(251, 88, 78, 1));
61
+ border-radius: var(--fcr_cornerradius_l);
62
+ border: 1px solid var(--fcr_ui_scene_ramp_red6);
63
+
64
+ font-family: Verdana;
65
+ font-size: 13px;
66
+ font-weight: 400;
67
+ line-height: 24px;
68
+ text-align: center;
69
+
70
+ cursor: pointer;
71
+ }
72
+
73
+ .assign-host-title {
74
+ display: flex;
75
+ align-items: center;
76
+ width: 100%;
77
+ height: 20px;
78
+ padding-left: 5px;
79
+
80
+ font-family: Verdana;
81
+ font-size: 12px;
82
+ font-weight: 700;
83
+ line-height: 12px;
84
+ text-align: left;
85
+ color: var(--fcr_ui_scene_icontext1, rgba(255, 255, 255, 1));
86
+ }
87
+
88
+ .assign-host-bottom {
89
+ display: flex;
90
+ align-items: center;
91
+ justify-content: center;
92
+
93
+ width: 215px;
94
+ height: 32px;
95
+ margin-top: 20px;
96
+ border-radius: var(--fcr_cornerradius_l);
97
+
98
+ font-family: Helvetica Neue;
99
+ font-size: 13px;
100
+ font-weight: 400;
101
+ line-height: 24px;
102
+
103
+ color: var(--fcr_ui_scene_white10);
104
+ background: var(--fcr_ui_scene_ramp_red6);
105
+ cursor: pointer;
106
+ }
107
+ .leave-connect-check {
108
+ display: flex;
109
+ justify-content: center;
110
+ align-items: center;
111
+ }
112
+ .leave-container .leave-confirm-disabled {
113
+ background-color: var(--fcr_web_ui_scene_fill3);
114
+ color: var(--fcr_ui_scene_icontext3);
115
+ cursor: not-allowed;
116
+ }
117
+ .fcr-action-bar--leave-meeting-portal {
118
+ width: 255px;
119
+ position: absolute;
120
+ top: 2px;
121
+ left: 10px;
122
+ z-index: 999;
123
+ background-color: var(--fcr_ui_scene_white10);
124
+ border-radius: var(--fcr_cornerradius_l);
125
+ box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
126
+ }
@@ -0,0 +1,3 @@
1
+ export declare const End: (props: {
2
+ onPopoverChanged: (popoverOpened: boolean) => void;
3
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.push.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/esnext.async-iterator.filter.js");
14
+ require("core-js/modules/esnext.async-iterator.for-each.js");
15
+ require("core-js/modules/esnext.iterator.constructor.js");
16
+ require("core-js/modules/esnext.iterator.filter.js");
17
+ require("core-js/modules/esnext.iterator.for-each.js");
18
+ require("core-js/modules/web.dom-collections.for-each.js");
19
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
20
+ Object.defineProperty(exports, "__esModule", {
21
+ value: true
22
+ });
23
+ exports.End = void 0;
24
+ require("core-js/modules/web.timers.js");
25
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
26
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
27
+ var _reactDom = _interopRequireDefault(require("react-dom"));
28
+ var _i18n = require("agora-ui-foundation/lib/i18n");
29
+ var _button = require("agora-ui-foundation/lib/components/button");
30
+ var _leaveMeeting = require("./leave-meeting");
31
+ var _popover = require("agora-ui-foundation/lib/components/popover");
32
+ var _react = require("react");
33
+ var _store = require("../../store");
34
+ var _type = require("../../../../type");
35
+ var _mobxReact = require("mobx-react");
36
+ var _debounce = _interopRequireDefault(require("lodash/debounce"));
37
+ var _jsxRuntime = require("react/jsx-runtime");
38
+ 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; }
39
+ 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; }
40
+ var End = exports.End = (0, _mobxReact.observer)(function (props) {
41
+ var transI18n = (0, _i18n.useI18n)();
42
+ var _useContext = (0, _react.useContext)(_store.ActionBarContext),
43
+ localUserRole = _useContext.localUserRole,
44
+ toggleLayoutBarLock = _useContext.toggleLayoutBarLock,
45
+ remoteUsers = _useContext.remoteUsers,
46
+ end = _useContext.end,
47
+ leave = _useContext.leave,
48
+ isLocked = _useContext.isLocked,
49
+ hasAssignHostBeforeLeavingPermission = _useContext.hasAssignHostBeforeLeavingPermission,
50
+ hasEndRoomPermission = _useContext.hasEndRoomPermission,
51
+ keepPhoneAudioConnection = _useContext.keepPhoneAudioConnection,
52
+ isPstnUser = _useContext.isPstnUser,
53
+ assignHost = _useContext.assignHost,
54
+ popoverOpened = _useContext.popoverOpened,
55
+ _setPopoverOpened = _useContext.setPopoverOpened,
56
+ stateBarLeaveMeeting = _useContext.stateBarLeaveMeeting,
57
+ setStateBarLeaveMeeting = _useContext.setStateBarLeaveMeeting;
58
+ var _useState = (0, _react.useState)(false),
59
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
60
+ tooltipOpened = _useState2[0],
61
+ setTooltipOpened = _useState2[1];
62
+ // const [popoverOpened, setPopoverOpened] = useState(false);
63
+ var popOverRef = (0, _react.useRef)(false);
64
+ var onTooltipChanged = function onTooltipChanged(v) {
65
+ if (!popoverOpened) {
66
+ setTooltipOpened(v);
67
+ }
68
+ };
69
+ var onPopoverChanged = function onPopoverChanged(v) {
70
+ setTooltipOpened(false);
71
+ _setPopoverOpened(v);
72
+ toggleLayoutBarLock(v);
73
+ popOverRef.current = v;
74
+ props.onPopoverChanged(v);
75
+ };
76
+ var buttonProps = (0, _react.useMemo)(function () {
77
+ return popoverOpened ? {
78
+ type: 'gray'
79
+ } : {
80
+ styleType: 'danger'
81
+ };
82
+ }, [popoverOpened]);
83
+ var leaveMeetingContent = /*#__PURE__*/(0, _jsxRuntime.jsx)(_leaveMeeting.LeaveMeeting, {
84
+ setPopoverOpened: function setPopoverOpened(value) {
85
+ _setPopoverOpened(value);
86
+ onPopoverChanged(false);
87
+ },
88
+ localUserRole: localUserRole,
89
+ leave: leave,
90
+ isLocked: isLocked,
91
+ hasAssignHostBeforeLeavingPermission: hasAssignHostBeforeLeavingPermission,
92
+ hasEndRoomPermission: hasEndRoomPermission,
93
+ keepPhoneAudioConnection: keepPhoneAudioConnection,
94
+ isPstnUser: isPstnUser,
95
+ remoteUsers: remoteUsers,
96
+ end: end,
97
+ assignHost: assignHost
98
+ });
99
+ var LeaveMeetingPortal = function LeaveMeetingPortal() {
100
+ var portalContent = /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
101
+ className: "fcr-action-bar--leave-meeting-portal",
102
+ id: "fcr-action-bar--leave-meeting-portal",
103
+ children: leaveMeetingContent
104
+ });
105
+ return /*#__PURE__*/_reactDom["default"].createPortal(portalContent, document.body);
106
+ };
107
+ (0, _react.useEffect)(function () {
108
+ var reflow = (0, _debounce["default"])(function () {
109
+ /* 修复窗口缩放时,在未经人为操作打开弹窗的情况下,改变窗口大小而触发的打开情形 */
110
+ if (!popOverRef.current) return;
111
+ _setPopoverOpened(false);
112
+ setTimeout(function () {
113
+ _setPopoverOpened(true);
114
+ }, 0);
115
+ }, 100);
116
+ window.addEventListener('resize', reflow);
117
+ return function () {
118
+ window.removeEventListener('resize', reflow);
119
+ };
120
+ }, []);
121
+ (0, _react.useEffect)(function () {
122
+ if (!stateBarLeaveMeeting) return;
123
+ var container = document.getElementById('fcr-action-bar--leave-meeting-portal');
124
+ var handleClickOutside = function handleClickOutside(event) {
125
+ if (!(container !== null && container !== void 0 && container.contains(event.target))) {
126
+ setStateBarLeaveMeeting(false);
127
+ }
128
+ };
129
+ document.addEventListener('mousedown', handleClickOutside);
130
+ return function () {
131
+ document.removeEventListener('mousedown', handleClickOutside);
132
+ };
133
+ }, [stateBarLeaveMeeting]);
134
+ (0, _react.useEffect)(function () {
135
+ if (popoverOpened) {
136
+ onPopoverChanged(popoverOpened);
137
+ }
138
+ }, [popoverOpened]);
139
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
140
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
141
+ overlayClassName: "fcr-action-bar--device-popover fcr-action-bar--leave-popover",
142
+ overlayInnerStyle: {
143
+ width: 255
144
+ },
145
+ visible: popoverOpened,
146
+ onVisibleChange: onPopoverChanged,
147
+ trigger: "click",
148
+ placement: "topRight",
149
+ overlayOffset: 20,
150
+ content: leaveMeetingContent,
151
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.FcrButton, _objectSpread(_objectSpread({
152
+ shape: "rounded",
153
+ size: "XS"
154
+ }, buttonProps), {}, {
155
+ children: popoverOpened ? transI18n('fmt_toolbar_button_cancel') : localUserRole === _type.FcrUserRole.HOST ? transI18n('fmt_toolbar_button_end') : transI18n('fmt_toolbar_button_leave')
156
+ }))
157
+ }), stateBarLeaveMeeting && LeaveMeetingPortal()]
158
+ });
159
+ });
@@ -0,0 +1,18 @@
1
+ import './index.css';
2
+ import { FcrUserInfo, FcrUserRole } from 'fcr-core/lib/type';
3
+ interface LeaveMeetingProps {
4
+ setPopoverOpened: React.Dispatch<React.SetStateAction<boolean>>;
5
+ end: () => void;
6
+ leave: () => void;
7
+ isLocked: boolean;
8
+ keepPhoneAudioConnection: () => void;
9
+ localUserRole: FcrUserRole;
10
+ remoteUsers: FcrUserInfo[];
11
+ hasAssignHostBeforeLeavingPermission: boolean;
12
+ hasEndRoomPermission: boolean;
13
+ isPstnUser: boolean;
14
+ assignHost: (user: FcrUserInfo) => void;
15
+ setHeight?: () => void;
16
+ }
17
+ export declare const LeaveMeeting: import("react").ForwardRefExoticComponent<LeaveMeetingProps & import("react").RefAttributes<unknown>>;
18
+ export {};