fcr-ui-scene 3.7.9-alpha → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (394) hide show
  1. package/lib/creator/index.d.ts +6 -3
  2. package/lib/creator/index.js +38 -20
  3. package/lib/creator/provider-initializer.browser.js +30 -2
  4. package/lib/creator/provider-initializer.electron.js +34 -6
  5. package/lib/electron/app.js +0 -1
  6. package/lib/electron/bootstrap-sdk.d.ts +3 -1
  7. package/lib/electron/bootstrap-sdk.js +93 -375
  8. package/lib/electron/exit-codes.d.ts +6 -1
  9. package/lib/electron/exit-codes.js +5 -0
  10. package/lib/electron/injections.d.ts +10 -4
  11. package/lib/electron/injections.js +116 -74
  12. package/lib/electron/ipc/ipc.js +13 -11
  13. package/lib/electron/ipc/type.d.ts +3 -1
  14. package/lib/electron/ipc/type.js +2 -0
  15. package/lib/electron/main.js +3 -1
  16. package/lib/electron/preload.js +2 -1
  17. package/lib/electron/process-manager/constants.d.ts +1 -0
  18. package/lib/electron/process-manager/constants.js +8 -0
  19. package/lib/electron/{event-manager.d.ts → process-manager/event-manager.d.ts} +3 -4
  20. package/lib/electron/{event-manager.js → process-manager/event-manager.js} +38 -30
  21. package/lib/electron/process-manager/index.d.ts +179 -0
  22. package/lib/electron/process-manager/index.js +848 -0
  23. package/lib/electron/process-manager/state-manager.d.ts +135 -0
  24. package/lib/electron/process-manager/state-manager.js +358 -0
  25. package/lib/electron/process-manager/types.d.ts +80 -0
  26. package/lib/electron/process-manager/types.js +79 -0
  27. package/lib/electron/sdk-helper.d.ts +4 -0
  28. package/lib/electron/sdk-helper.js +39 -2
  29. package/lib/fragments/annotation/libs.d.ts +1 -1
  30. package/lib/fragments/annotation/libs.js +12 -12
  31. package/lib/fragments/annotation/store.d.ts +1 -1
  32. package/lib/fragments/annotation/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +1 -1
  33. package/lib/fragments/annotation/toolbar/components/graphic-tool/graphic-panel/libs.js +21 -21
  34. package/lib/fragments/annotation/toolbar/components/pen-tool/index.js +3 -3
  35. package/lib/fragments/annotation/toolbar/store.d.ts +1 -1
  36. package/lib/fragments/annotation/toolbar/store.js +10 -10
  37. package/lib/fragments/annotation/toolbar/view.js +7 -7
  38. package/lib/fragments/whiteboard/store.d.ts +2 -2
  39. package/lib/fragments/whiteboard/store.js +28 -22
  40. package/lib/fragments/whiteboard/view.js +2 -2
  41. package/lib/index.d.ts +1 -1
  42. package/lib/index.js +2 -2
  43. package/lib/modules/action-bar/components/apps/index.js +1 -37
  44. package/lib/modules/action-bar/components/collapse/index.d.ts +2 -1
  45. package/lib/modules/action-bar/components/collapse/index.js +11 -2
  46. package/lib/modules/action-bar/components/item/index.js +2 -2
  47. package/lib/modules/action-bar/components/screen-share/index.browser.js +21 -14
  48. package/lib/modules/action-bar/components/screen-share/index.electron.js +38 -24
  49. package/lib/modules/action-bar/components/screen-share/submenu.js +6 -5
  50. package/lib/modules/action-bar/components/security/index.js +2 -2
  51. package/lib/modules/action-bar/index.css +26 -0
  52. package/lib/modules/action-bar/main-scene/store.base.d.ts +6 -4
  53. package/lib/modules/action-bar/main-scene/store.base.js +41 -46
  54. package/lib/modules/action-bar/type.d.ts +0 -10
  55. package/lib/modules/audio-stream/index.d.ts +1 -1
  56. package/lib/modules/audio-stream/index.js +22 -8
  57. package/lib/modules/caption/draggable-container/index.css +10 -0
  58. package/lib/modules/caption/draggable-container/index.d.ts +4 -0
  59. package/lib/modules/caption/draggable-container/index.js +167 -0
  60. package/lib/modules/caption/index.d.ts +10 -0
  61. package/lib/modules/caption/index.js +127 -0
  62. package/lib/modules/caption/store.d.ts +53 -0
  63. package/lib/modules/caption/store.js +358 -0
  64. package/lib/modules/caption/type.d.ts +13 -0
  65. package/lib/modules/caption/type.js +14 -0
  66. package/lib/modules/caption/view.css +158 -0
  67. package/lib/modules/caption/view.d.ts +4 -0
  68. package/lib/modules/caption/view.js +281 -0
  69. package/lib/modules/chat/chat-room-store.d.ts +1 -1
  70. package/lib/modules/chat/chat-room-store.js +6 -6
  71. package/lib/modules/chat/components/message-list/message-item/index.js +60 -18
  72. package/lib/modules/chat/index.css +7 -0
  73. package/lib/modules/chat/store.d.ts +1 -0
  74. package/lib/modules/chat/store.js +3 -3
  75. package/lib/modules/components/apps/app-item/index.css +16 -1
  76. package/lib/modules/components/apps/app-item/index.js +102 -35
  77. package/lib/modules/components/apps/app-list.js +17 -1
  78. package/lib/modules/components/apps/types.d.ts +11 -1
  79. package/lib/modules/components/caption-menu/index.css +58 -0
  80. package/lib/modules/components/caption-menu/index.d.ts +43 -0
  81. package/lib/modules/components/caption-menu/index.js +115 -0
  82. package/lib/modules/components/caption-menu/participants-privilege-control-options.d.ts +2 -0
  83. package/lib/modules/components/caption-menu/participants-privilege-control-options.js +73 -0
  84. package/lib/modules/components/caption-menu/steps/index.css +73 -0
  85. package/lib/modules/components/caption-menu/steps/index.d.ts +11 -0
  86. package/lib/modules/components/caption-menu/steps/index.js +56 -0
  87. package/lib/modules/components/caption-menu/translation-setting-options.d.ts +17 -0
  88. package/lib/modules/components/caption-menu/translation-setting-options.js +188 -0
  89. package/lib/modules/components/control-bar/index.d.ts +3 -3
  90. package/lib/modules/components/control-bar/index.js +10 -10
  91. package/lib/modules/components/device-control/components/audio-menu/index.js +17 -0
  92. package/lib/modules/components/device-control/components/carmera/index.js +3 -0
  93. package/lib/modules/components/device-control/components/microphone/index.js +4 -1
  94. package/lib/modules/components/device-control/index.css +12 -4
  95. package/lib/modules/components/device-control/store.base.d.ts +1 -0
  96. package/lib/modules/components/device-control/store.base.js +2 -0
  97. package/lib/modules/components/security-menu/index.js +147 -65
  98. package/lib/modules/components/security-menu/store.d.ts +15 -0
  99. package/lib/modules/components/security-menu/store.js +78 -16
  100. package/lib/modules/components/toolbar/components/clean-tool/index.d.ts +1 -1
  101. package/lib/modules/components/toolbar/components/clean-tool/index.js +4 -4
  102. package/lib/modules/components/toolbar/components/color-tool/index.d.ts +1 -1
  103. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +1 -1
  104. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +1 -1
  105. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.js +21 -21
  106. package/lib/modules/components/toolbar/components/graphic-tool/index.d.ts +1 -1
  107. package/lib/modules/components/toolbar/components/multiple-color-tool/index.d.ts +1 -1
  108. package/lib/modules/components/toolbar/components/pen-tool/index.d.ts +1 -1
  109. package/lib/modules/components/toolbar/components/pen-tool/index.js +3 -3
  110. package/lib/modules/components/toolbar/index.d.ts +2 -2
  111. package/lib/modules/components/toolbar/index.js +35 -34
  112. package/lib/modules/components/toolbar/style.css +1 -1
  113. package/lib/modules/components/toolbar/types.d.ts +1 -1
  114. package/lib/modules/connection-gateway/store.d.ts +1 -0
  115. package/lib/modules/connection-gateway/store.js +5 -0
  116. package/lib/modules/control-bar/components/apps-popover/index.d.ts +3 -0
  117. package/lib/modules/control-bar/components/apps-popover/index.js +41 -0
  118. package/lib/modules/control-bar/components/carmera/index.js +7 -39
  119. package/lib/modules/control-bar/components/cloud-recording-buttons.js +18 -33
  120. package/lib/modules/control-bar/components/microphone/index.js +3 -43
  121. package/lib/modules/control-bar/components/more-actions/index.js +9 -1
  122. package/lib/modules/control-bar/components/share-audio/index.d.ts +2 -0
  123. package/lib/modules/control-bar/components/share-audio/index.js +4 -10
  124. package/lib/modules/control-bar/enums.d.ts +2 -1
  125. package/lib/modules/control-bar/enums.js +1 -0
  126. package/lib/modules/control-bar/hooks.d.ts +1 -0
  127. package/lib/modules/control-bar/hooks.js +140 -1
  128. package/lib/modules/control-bar/store.d.ts +9 -5
  129. package/lib/modules/control-bar/store.js +92 -41
  130. package/lib/modules/control-bar/type.d.ts +3 -0
  131. package/lib/modules/control-bar/view.js +46 -58
  132. package/lib/modules/dialog/components/confirm/index.js +0 -1
  133. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +8 -0
  134. package/lib/modules/dialog/components/dialog-container/component/body.js +44 -5
  135. package/lib/modules/dialog/components/dialog-container/index.css +4 -1
  136. package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
  137. package/lib/modules/dialog/components/dialog-container/index.js +8 -1
  138. package/lib/modules/dialog/components/normal-window/index.d.ts +1 -0
  139. package/lib/modules/dialog/components/normal-window/index.js +3 -1
  140. package/lib/modules/dialog/dialogs/caption/index.d.ts +21 -0
  141. package/lib/modules/dialog/dialogs/caption/index.js +42 -0
  142. package/lib/modules/dialog/dialogs/chat/components/actions.js +2 -2
  143. package/lib/modules/dialog/dialogs/confirm/index.js +1 -1
  144. package/lib/modules/dialog/dialogs/participant/components/actions.js +2 -2
  145. package/lib/modules/dialog/dialogs/subtitles-history/index.d.ts +27 -0
  146. package/lib/modules/dialog/dialogs/subtitles-history/index.js +51 -0
  147. package/lib/modules/dialog/store.base.d.ts +1 -1
  148. package/lib/modules/dialog/store.browser.d.ts +1 -1
  149. package/lib/modules/dialog/store.electron.d.ts +1 -3
  150. package/lib/modules/dialog/store.electron.js +0 -9
  151. package/lib/modules/event-sound/enum.d.ts +5 -0
  152. package/lib/modules/event-sound/enum.js +20 -0
  153. package/lib/modules/event-sound/index.d.ts +0 -10
  154. package/lib/modules/event-sound/index.js +1 -12
  155. package/lib/modules/event-sound/store.d.ts +2 -2
  156. package/lib/modules/event-sound/store.js +21 -22
  157. package/lib/modules/event-toast/index.js +7 -1
  158. package/lib/modules/interpreter/store.js +4 -2
  159. package/lib/modules/layout/components/Aside.d.ts +2 -1
  160. package/lib/modules/layout/components/Aside.js +97 -58
  161. package/lib/modules/layout/components/CommonVideoRenderer.js +1 -2
  162. package/lib/modules/layout/components/index.css +15 -2
  163. package/lib/modules/layout/store.base.d.ts +12 -1
  164. package/lib/modules/layout/store.base.js +149 -54
  165. package/lib/modules/layout/store.electron.js +7 -3
  166. package/lib/modules/layout/type.d.ts +4 -0
  167. package/lib/modules/layout/view.js +27 -5
  168. package/lib/modules/notification/index.css +4 -4
  169. package/lib/modules/notification/store.d.ts +5 -3
  170. package/lib/modules/notification/store.js +9 -2
  171. package/lib/modules/notification/view.d.ts +1 -0
  172. package/lib/modules/notification/view.js +33 -2
  173. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.css +0 -1
  174. package/lib/modules/participant/components/participants/components/footer/index.js +1 -1
  175. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +2 -2
  176. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.d.ts +6 -1
  177. package/lib/modules/participant/components/participants/components/render-user/index.d.ts +1 -1
  178. package/lib/modules/participant/components/participants/index.js +13 -1
  179. package/lib/modules/participant/store.base.d.ts +1 -2
  180. package/lib/modules/participant/store.base.js +78 -81
  181. package/lib/modules/participant/type.d.ts +3 -1
  182. package/lib/modules/participant/type.js +2 -0
  183. package/lib/modules/pc-audio-connect/main-scene/store.d.ts +1 -0
  184. package/lib/modules/pc-audio-connect/main-scene/store.js +5 -0
  185. package/lib/modules/pc-audio-connect/waiting-scene/store.d.ts +2 -0
  186. package/lib/modules/pc-audio-connect/waiting-scene/store.js +10 -6
  187. package/lib/modules/phone-audio-connect/store.d.ts +1 -0
  188. package/lib/modules/phone-audio-connect/store.js +5 -0
  189. package/lib/modules/secondary-window/store.d.ts +1 -2
  190. package/lib/modules/secondary-window/store.js +22 -14
  191. package/lib/modules/secondary-window/type.d.ts +1 -1
  192. package/lib/modules/secondary-window/view.js +7 -8
  193. package/lib/modules/setting/audio-whiteList/audio-device-adaptation.d.ts +46 -0
  194. package/lib/modules/setting/audio-whiteList/audio-device-adaptation.js +70 -0
  195. package/lib/modules/setting/audio-whiteList/audio-whiteList-manager.d.ts +52 -0
  196. package/lib/modules/setting/audio-whiteList/audio-whiteList-manager.js +374 -0
  197. package/lib/modules/setting/caption_and_transcribing/index.css +88 -0
  198. package/lib/modules/setting/caption_and_transcribing/index.d.ts +3 -0
  199. package/lib/modules/setting/caption_and_transcribing/index.js +96 -0
  200. package/lib/modules/setting/general-settings/general-settings.d.ts +4 -0
  201. package/lib/modules/setting/general-settings/general-settings.js +3 -3
  202. package/lib/modules/setting/index.d.ts +1 -0
  203. package/lib/modules/setting/index.js +14 -9
  204. package/lib/modules/setting/state/index.js +5 -3
  205. package/lib/modules/setting/store.base.d.ts +33 -6
  206. package/lib/modules/setting/store.base.js +133 -32
  207. package/lib/modules/setting/store.browser.js +4 -9
  208. package/lib/modules/setting/store.electron.d.ts +11 -0
  209. package/lib/modules/setting/store.electron.js +106 -1
  210. package/lib/modules/setting/type.d.ts +2 -1
  211. package/lib/modules/setting/type.js +1 -0
  212. package/lib/modules/setting/video-settings/video-settings-basic.js +1 -7
  213. package/lib/modules/setting/view.js +12 -4
  214. package/lib/modules/share-screen/store.base.d.ts +1 -1
  215. package/lib/modules/share-screen/store.base.js +3 -0
  216. package/lib/modules/share-screen/store.electron.d.ts +3 -1
  217. package/lib/modules/share-screen/store.electron.js +158 -23
  218. package/lib/modules/state-bar/index.css +73 -2
  219. package/lib/modules/state-bar/main-scene/store.base.d.ts +2 -0
  220. package/lib/modules/state-bar/main-scene/store.base.js +7 -1
  221. package/lib/modules/state-bar/main-scene/store.browser.js +1 -1
  222. package/lib/modules/state-bar/main-scene/store.electron.js +1 -1
  223. package/lib/modules/state-bar/store.base.d.ts +5 -0
  224. package/lib/modules/state-bar/store.base.js +29 -2
  225. package/lib/modules/state-bar/subtitles-history-state.d.ts +7 -0
  226. package/lib/modules/state-bar/subtitles-history-state.js +108 -0
  227. package/lib/modules/state-bar/view.js +16 -1
  228. package/lib/modules/state-bar/waiting-scene/store.base.d.ts +1 -0
  229. package/lib/modules/state-bar/waiting-scene/store.base.js +5 -0
  230. package/lib/modules/subtitles-history/components/actions.d.ts +5 -0
  231. package/lib/modules/subtitles-history/components/actions.js +36 -0
  232. package/lib/modules/subtitles-history/components/list-item.d.ts +12 -0
  233. package/lib/modules/subtitles-history/components/list-item.js +102 -0
  234. package/lib/modules/subtitles-history/components/list.d.ts +10 -0
  235. package/lib/modules/subtitles-history/components/list.js +182 -0
  236. package/lib/modules/subtitles-history/components/respond-dialog-content.d.ts +5 -0
  237. package/lib/modules/subtitles-history/components/respond-dialog-content.js +44 -0
  238. package/lib/modules/subtitles-history/components/settings/index.css +5 -0
  239. package/lib/modules/subtitles-history/components/settings/index.d.ts +2 -0
  240. package/lib/modules/subtitles-history/components/settings/index.js +53 -0
  241. package/lib/modules/subtitles-history/components/timer.d.ts +3 -0
  242. package/lib/modules/subtitles-history/components/timer.js +44 -0
  243. package/lib/modules/subtitles-history/components/title.d.ts +1 -0
  244. package/lib/modules/subtitles-history/components/title.js +15 -0
  245. package/lib/modules/subtitles-history/empty.d.ts +2 -0
  246. package/lib/modules/subtitles-history/empty.js +22 -0
  247. package/lib/modules/subtitles-history/index.css +129 -0
  248. package/lib/modules/subtitles-history/index.d.ts +13 -0
  249. package/lib/modules/subtitles-history/index.js +107 -0
  250. package/lib/modules/subtitles-history/store.base.d.ts +76 -0
  251. package/lib/modules/subtitles-history/store.base.js +796 -0
  252. package/lib/modules/subtitles-history/store.electron.d.ts +15 -0
  253. package/lib/modules/subtitles-history/store.electron.js +154 -0
  254. package/lib/modules/subtitles-history/type.d.ts +4 -0
  255. package/lib/modules/subtitles-history/type.js +6 -0
  256. package/lib/modules/subtitles-history/view.d.ts +1 -0
  257. package/lib/modules/subtitles-history/view.js +104 -0
  258. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +2 -2
  259. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +5 -5
  260. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +15 -15
  261. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +21 -21
  262. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +23 -21
  263. package/lib/modules/whiteboard/components/toolbar/store.d.ts +7 -6
  264. package/lib/modules/whiteboard/components/toolbar/store.js +14 -15
  265. package/lib/modules/whiteboard/store.d.ts +2 -3
  266. package/lib/modules/whiteboard/store.electron.d.ts +2 -0
  267. package/lib/modules/whiteboard/store.electron.js +35 -0
  268. package/lib/modules/whiteboard/store.js +14 -2
  269. package/lib/modules/whiteboard/type.d.ts +0 -35
  270. package/lib/modules/whiteboard/type.js +1 -26
  271. package/lib/modules/widget/type.d.ts +3 -66
  272. package/lib/object-manager.d.ts +3 -1
  273. package/lib/object-manager.js +2 -0
  274. package/lib/providers/ability-provider.d.ts +24 -0
  275. package/lib/providers/ability-provider.js +21 -0
  276. package/lib/providers/app-list-provider.d.ts +90 -4
  277. package/lib/providers/app-list-provider.js +157 -13
  278. package/lib/providers/board-share/bar-control/base.d.ts +4 -5
  279. package/lib/providers/board-share/bar-control/base.js +4 -4
  280. package/lib/providers/board-share/bar-control/browser.d.ts +2 -2
  281. package/lib/providers/board-share/bar-control/electron.d.ts +4 -5
  282. package/lib/providers/board-share/bar-control/electron.js +2 -0
  283. package/lib/providers/board-share/provider.base.d.ts +6 -6
  284. package/lib/providers/board-share/provider.base.js +20 -3
  285. package/lib/providers/board-share/provider.browser.js +2 -2
  286. package/lib/providers/board-share/provider.electron.js +1 -2
  287. package/lib/providers/board-share/type.d.ts +1 -2
  288. package/lib/providers/device-provider.d.ts +15 -5
  289. package/lib/providers/device-provider.js +199 -145
  290. package/lib/providers/dialog/provider.base.js +1 -1
  291. package/lib/providers/dialog/provider.electron.js +3 -0
  292. package/lib/providers/interpreter-provider.js +4 -9
  293. package/lib/providers/multi-display-provider.d.ts +1 -1
  294. package/lib/providers/privilege-provider.d.ts +241 -139
  295. package/lib/providers/privilege-provider.js +577 -318
  296. package/lib/providers/room-provider/waiting-room-control-manager.d.ts +1 -1
  297. package/lib/providers/screen-share/constant.d.ts +1 -0
  298. package/lib/providers/screen-share/constant.js +8 -0
  299. package/lib/providers/screen-share/provider.base.d.ts +9 -7
  300. package/lib/providers/screen-share/provider.base.js +20 -27
  301. package/lib/providers/screen-share/provider.browser.js +14 -18
  302. package/lib/providers/screen-share/provider.electron.d.ts +3 -0
  303. package/lib/providers/screen-share/provider.electron.js +66 -25
  304. package/lib/providers/screen-share/strategy/electron.d.ts +2 -1
  305. package/lib/providers/screen-share/strategy/electron.js +64 -56
  306. package/lib/providers/screen-share/strategy/type.d.ts +2 -2
  307. package/lib/providers/screen-share/stream-state-sync.js +5 -3
  308. package/lib/providers/screen-share/struct.d.ts +14 -4
  309. package/lib/providers/screen-share/struct.js +16 -5
  310. package/lib/providers/screen-share/type.d.ts +16 -2
  311. package/lib/providers/stt-provider/stt-provider.d.ts +88 -0
  312. package/lib/providers/stt-provider/stt-provider.js +1007 -0
  313. package/lib/providers/stt-provider/type.d.ts +160 -0
  314. package/lib/providers/stt-provider/type.js +19 -0
  315. package/lib/providers/window/main-window.d.ts +1 -0
  316. package/lib/providers/window/main-window.js +6 -1
  317. package/lib/providers/window/renderer-window.d.ts +4 -0
  318. package/lib/providers/window/renderer-window.js +19 -1
  319. package/lib/providers/window/type.d.ts +4 -0
  320. package/lib/runtime.d.ts +8 -7
  321. package/lib/runtime.js +1 -2
  322. package/lib/scenes/main-scene.js +112 -66
  323. package/lib/schema.d.ts +70 -8
  324. package/lib/schema.js +7 -2
  325. package/lib/shared-data/app-list-data.d.ts +4 -0
  326. package/lib/shared-data/app-list-data.js +21 -1
  327. package/lib/shared-data/config.d.ts +5 -1
  328. package/lib/shared-data/layout-data.d.ts +5 -0
  329. package/lib/shared-data/layout-data.js +35 -9
  330. package/lib/shared-data/member-data.d.ts +2 -3
  331. package/lib/shared-data/screen-share/index.d.ts +0 -2
  332. package/lib/shared-data/screen-share/index.js +20 -36
  333. package/lib/shared-data/screen-share/type.d.ts +0 -8
  334. package/lib/shared-data/security-data.d.ts +4 -0
  335. package/lib/shared-data/security-data.js +14 -10
  336. package/lib/shared-data/setting.d.ts +16 -1
  337. package/lib/shared-data/setting.js +33 -6
  338. package/lib/shared-data/stt-setting.ts/constant.d.ts +29 -0
  339. package/lib/shared-data/stt-setting.ts/constant.js +35 -0
  340. package/lib/shared-data/stt-setting.ts/index.d.ts +67 -0
  341. package/lib/shared-data/stt-setting.ts/index.js +202 -0
  342. package/lib/shared-data/stt-setting.ts/type.d.ts +10 -0
  343. package/lib/shared-data/stt-setting.ts/type.js +14 -0
  344. package/lib/shared-data/video-window.d.ts +1 -2
  345. package/lib/shared-data/video-window.js +20 -32
  346. package/lib/translations/enUS.d.ts +9 -0
  347. package/lib/translations/enUS.js +21 -4
  348. package/lib/translations/zhCN.d.ts +9 -0
  349. package/lib/translations/zhCN.js +21 -4
  350. package/lib/type.d.ts +20 -15
  351. package/lib/type.js +1 -0
  352. package/lib/{ui-scene.d.ts → ui-scene-switch.d.ts} +1 -1
  353. package/lib/{ui-scene.js → ui-scene-switch.js} +29 -9
  354. package/lib/utilities/constant.d.ts +6 -2
  355. package/lib/utilities/constant.js +5 -1
  356. package/lib/utilities/default-config.d.ts +3 -3
  357. package/lib/utilities/default-config.js +7 -17
  358. package/lib/utilities/focus-helper.js +18 -11
  359. package/lib/utilities/renderer.d.ts +4 -6
  360. package/lib/utilities/renderer.js +10 -4
  361. package/lib/utilities/tools.d.ts +1 -0
  362. package/lib/utilities/tools.js +6 -1
  363. package/lib/utilities/ui-resources.d.ts +9 -2
  364. package/lib/utilities/ui-resources.js +36 -12
  365. package/package.json +13 -8
  366. package/public/index.html +1 -0
  367. package/public/meeting-manager.js +23 -9
  368. package/installer/icons/favicon.ico +0 -0
  369. package/installer/icons/favicon.png +0 -0
  370. package/installer/icons/icon.png +0 -0
  371. package/installer/mac/entitlements.mac.plist +0 -16
  372. package/lib/modules/participant/components/participants/components/footer/components/footer/index.css +0 -17
  373. package/lib/modules/participant/components/participants/components/footer/components/footer/index.d.ts +0 -5
  374. package/lib/modules/participant/components/participants/components/footer/components/footer/index.js +0 -242
  375. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.css +0 -192
  376. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.d.ts +0 -4
  377. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +0 -206
  378. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.css +0 -57
  379. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.d.ts +0 -5
  380. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +0 -229
  381. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.d.ts +0 -5
  382. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +0 -68
  383. package/lib/modules/participant/components/participants/components/participants/index.css +0 -105
  384. package/lib/modules/participant/components/participants/components/participants/index.d.ts +0 -3
  385. package/lib/modules/participant/components/participants/components/participants/index.js +0 -117
  386. package/lib/modules/participant/components/participants/types.d.ts +0 -101
  387. package/lib/modules/participant/components/participants/types.js +0 -37
  388. package/lib/modules/setting/config.d.ts +0 -36
  389. package/lib/modules/setting/config.js +0 -36
  390. package/lib/modules/widget/sdk.d.ts +0 -30
  391. package/lib/modules/widget/sdk.js +0 -224
  392. package/lib/widget-sdk.d.ts +0 -2
  393. package/lib/widget-sdk.js +0 -13
  394. /package/public/assets/electron/sound_effects/{pretest.mp3 → speakerTest.mp3} +0 -0
@@ -0,0 +1,281 @@
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.iterator.js");
7
+ require("core-js/modules/es.array.push.js");
8
+ require("core-js/modules/es.object.define-properties.js");
9
+ require("core-js/modules/es.object.define-property.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
11
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
12
+ require("core-js/modules/es.object.keys.js");
13
+ require("core-js/modules/es.string.iterator.js");
14
+ require("core-js/modules/es.weak-map.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/esnext.weak-map.delete-all.js");
19
+ require("core-js/modules/esnext.weak-map.emplace.js");
20
+ require("core-js/modules/web.dom-collections.for-each.js");
21
+ require("core-js/modules/web.dom-collections.iterator.js");
22
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
23
+ var _typeof = require("@babel/runtime/helpers/typeof");
24
+ Object.defineProperty(exports, "__esModule", {
25
+ value: true
26
+ });
27
+ exports.CaptionView = exports.CaptionDraggableView = void 0;
28
+ require("core-js/modules/es.array.map.js");
29
+ require("core-js/modules/es.object.to-string.js");
30
+ require("core-js/modules/web.timers.js");
31
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
32
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
33
+ var _react = _interopRequireWildcard(require("react"));
34
+ var _mobxReact = require("mobx-react");
35
+ var _icon = require("agora-ui-foundation/lib/components/icon");
36
+ var _type = require("agora-ui-foundation/lib/components/icon/type");
37
+ var _popover = require("agora-ui-foundation/lib/components/popover");
38
+ var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
39
+ var _avatar = require("agora-ui-foundation/lib/components/avatar");
40
+ var _i18n = require("agora-ui-foundation/lib/i18n");
41
+ var _captionMenu = require("../components/caption-menu");
42
+ var _draggableContainer = require("./draggable-container");
43
+ var _type2 = require("./type");
44
+ var _store = require("./store");
45
+ require("./view.css");
46
+ var _classnames = _interopRequireDefault(require("classnames"));
47
+ var _useMouseMoveAnywhere = require("agora-ui-foundation/lib/hooks/use-mouse-move-anywhere");
48
+ var _jsxRuntime = require("react/jsx-runtime");
49
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
50
+ 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; }
51
+ 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; }
52
+ var initialCaptionSettingVisible = (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, _type2.FcrUICaptionButtonHoverType.transcribing, false), _type2.FcrUICaptionButtonHoverType.caption, false), _type2.FcrUICaptionButtonHoverType.permission, false), _type2.FcrUICaptionButtonHoverType.close, false);
53
+ var CaptionMessage = (0, _mobxReact.observer)(function (_ref) {
54
+ var captionMessage = _ref.captionMessage,
55
+ isExiting = _ref.isExiting;
56
+ var _useContext = (0, _react.useContext)(_store.StoreContext),
57
+ captionStyle = _useContext.captionStyle,
58
+ isTwoLineCaptionEnabled = _useContext.isTwoLineCaptionEnabled,
59
+ sourceLanguage = _useContext.sourceLanguage,
60
+ translateLanguage = _useContext.translateLanguage;
61
+ if (!captionMessage) {
62
+ return null;
63
+ }
64
+ var isShowOriginalText = !isTwoLineCaptionEnabled && (!translateLanguage || translateLanguage === sourceLanguage);
65
+ var isSameLanguage = translateLanguage && translateLanguage != sourceLanguage;
66
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
67
+ className: "fcr-caption-message-item ".concat(isExiting ? 'fcr-caption-exiting' : 'fcr-caption-entering'),
68
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
69
+ className: "fcr-caption-avatar-container",
70
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.FcrAvatar, {
71
+ size: 30,
72
+ nickName: captionMessage.username,
73
+ textSize: 14,
74
+ avatarImage: captionMessage.avatarUrl
75
+ })
76
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
77
+ className: "fcr-caption-content-container",
78
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
79
+ className: "fcr-caption-username",
80
+ style: captionStyle.userName,
81
+ children: captionMessage.username
82
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
83
+ className: "fcr-caption-text-content",
84
+ children: [(isTwoLineCaptionEnabled || isShowOriginalText) && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
85
+ className: "fcr-caption-original-text",
86
+ style: captionStyle.textStyle,
87
+ children: captionMessage.originalText
88
+ }), isSameLanguage && !isShowOriginalText && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
89
+ className: "fcr-caption-translated-text",
90
+ style: captionStyle.textStyle,
91
+ children: captionMessage.translatedText
92
+ })]
93
+ })]
94
+ })]
95
+ });
96
+ });
97
+ var TooltipTips = (0, _mobxReact.observer)(function () {
98
+ var _useContext2 = (0, _react.useContext)(_store.StoreContext),
99
+ isCaptionOpening = _useContext2.isCaptionOpening,
100
+ captionStyle = _useContext2.captionStyle,
101
+ isShowNoContentTips = _useContext2.isShowNoContentTips,
102
+ isShowListeningTips = _useContext2.isShowListeningTips;
103
+ var transI18n = (0, _i18n.useI18n)();
104
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
105
+ className: "fcr-caption-tips-container",
106
+ style: captionStyle.userName,
107
+ children: [isCaptionOpening && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
108
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
109
+ type: _type.FcrIconType.FCR_LOADING,
110
+ size: 20,
111
+ colors: {
112
+ iconPrimary: 'var(--fcr_ui_scene_white8)'
113
+ },
114
+ className: "fcr-caption-loading-icon"
115
+ }), transI18n('fmt_ai_subtitles_setting_label_turnon_subtitles')]
116
+ }), isShowNoContentTips && transI18n('fmt_ai_subtitles_setting_label_listening_no_content'), isShowListeningTips && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
117
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
118
+ type: _type.FcrIconType.FCR_VOLUME_HEAR,
119
+ size: 20,
120
+ colors: {
121
+ iconPrimary: 'var(--fcr_ui_scene_white8)'
122
+ }
123
+ }), transI18n('fmt_ai_subtitles_setting_label_listening')]
124
+ })]
125
+ });
126
+ });
127
+ var ActionButtons = (0, _mobxReact.observer)(function () {
128
+ var _useContext3 = (0, _react.useContext)(_store.StoreContext),
129
+ stopCaption = _useContext3.stopCaption,
130
+ captionSettingProps = _useContext3.captionSettingProps,
131
+ openSubtitlesHistoryDialog = _useContext3.openSubtitlesHistoryDialog;
132
+ var transI18n = (0, _i18n.useI18n)();
133
+ var _useState = (0, _react.useState)({
134
+ transcribing: false,
135
+ permission: false,
136
+ close: false,
137
+ caption: false
138
+ }),
139
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
140
+ buttonHover = _useState2[0],
141
+ setButtonHover = _useState2[1];
142
+ var handleButtonHover = function handleButtonHover(button, isHovering) {
143
+ setButtonHover(function (prev) {
144
+ return _objectSpread(_objectSpread({}, prev), {}, (0, _defineProperty2["default"])({}, button, isHovering));
145
+ });
146
+ };
147
+ var captionMenuProps = _objectSpread(_objectSpread({}, captionSettingProps), {}, {
148
+ isPrivilegeControlOptionsVisible: false,
149
+ isFontSizeAdjustmentVisible: true
150
+ });
151
+ var captionPermissionMenuProps = _objectSpread(_objectSpread({}, captionSettingProps), {}, {
152
+ isFontSizeAdjustmentVisible: false,
153
+ isTranslationOptionsVisible: false
154
+ });
155
+ var topButtonList = [{
156
+ id: _type2.FcrUICaptionButtonHoverType.transcribing,
157
+ icon: _type.FcrIconType.FCR_SUBTITIESHISTORY,
158
+ onClick: openSubtitlesHistoryDialog,
159
+ tooltip: transI18n('fmt_ai_transcriptions_toolbar_button_realtime_transcription')
160
+ }, {
161
+ id: _type2.FcrUICaptionButtonHoverType.caption,
162
+ icon: _type.FcrIconType.FCR_TRANSLATE1,
163
+ tooltip: transI18n('fmt_ai_subtitles_setting_label_translation_setting'),
164
+ popoverContent: /*#__PURE__*/(0, _jsxRuntime.jsx)(_captionMenu.CaptionMenu, _objectSpread({}, captionMenuProps))
165
+ }, {
166
+ id: _type2.FcrUICaptionButtonHoverType.permission,
167
+ icon: _type.FcrIconType.FCR_SETTING2,
168
+ tooltip: transI18n('fmt_ai_subtitles_setting_label_subtitle_setting'),
169
+ popoverContent: /*#__PURE__*/(0, _jsxRuntime.jsx)(_captionMenu.CaptionMenu, _objectSpread({}, captionPermissionMenuProps)),
170
+ isHidden: !captionPermissionMenuProps.isPrivilegeControlOptionsVisible
171
+ }, {
172
+ id: _type2.FcrUICaptionButtonHoverType.close,
173
+ icon: _type.FcrIconType.FCR_CLOSE,
174
+ onClick: stopCaption
175
+ }];
176
+ var preventDragOnTarget = function preventDragOnTarget(e) {
177
+ e.stopPropagation();
178
+ };
179
+ var _useState3 = (0, _react.useState)(initialCaptionSettingVisible),
180
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
181
+ captionSettingVisible = _useState4[0],
182
+ setCaptionSettingVisible = _useState4[1];
183
+ var handleCaptionSettingVisible = function handleCaptionSettingVisible(id, visible) {
184
+ setCaptionSettingVisible(_objectSpread(_objectSpread({}, initialCaptionSettingVisible), {}, (0, _defineProperty2["default"])({}, id, visible)));
185
+ };
186
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
187
+ className: "fcr-caption-action-buttons",
188
+ onMouseDown: preventDragOnTarget,
189
+ onTouchStart: preventDragOnTarget,
190
+ onMouseMove: preventDragOnTarget,
191
+ children: topButtonList.map(function (item) {
192
+ return !item.isHidden && /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
193
+ mouseEnterDelay: 0,
194
+ content: item.tooltip,
195
+ disable: !item.tooltip,
196
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
197
+ showArrow: false,
198
+ trigger: "click",
199
+ content: item.popoverContent,
200
+ disable: !item.popoverContent,
201
+ visible: captionSettingVisible[item.id],
202
+ onVisibleChange: function onVisibleChange(visible) {
203
+ return handleCaptionSettingVisible(item.id, visible);
204
+ },
205
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
206
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
207
+ className: "fcr-caption-icon-button ".concat(buttonHover[item.id] ? 'fcr-caption-button-hovered' : ''),
208
+ onMouseEnter: function onMouseEnter() {
209
+ return handleButtonHover(item.id, true);
210
+ },
211
+ onMouseLeave: function onMouseLeave() {
212
+ return handleButtonHover(item.id, false);
213
+ },
214
+ onClick: item.onClick,
215
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
216
+ type: item.icon,
217
+ size: 24,
218
+ colors: {
219
+ iconPrimary: 'var(--fcr_ui_scene_white8)'
220
+ }
221
+ })
222
+ })
223
+ })
224
+ })
225
+ }, item.id);
226
+ })
227
+ });
228
+ });
229
+ var CaptionView = exports.CaptionView = (0, _mobxReact.observer)(function () {
230
+ var _useContext4 = (0, _react.useContext)(_store.StoreContext),
231
+ captionSentence = _useContext4.captionSentence,
232
+ clearCaptionSentence = _useContext4.clearCaptionSentence,
233
+ isCaptionVisible = _useContext4.isCaptionVisible,
234
+ isHovered = _useContext4.isHovered,
235
+ setIsHovered = _useContext4.setIsHovered;
236
+ var clearCaptionTimerRef = (0, _react.useRef)(null);
237
+ var isShowMessage = captionSentence !== null;
238
+ (0, _react.useEffect)(function () {
239
+ if (captionSentence) {
240
+ if (clearCaptionTimerRef.current) {
241
+ clearTimeout(clearCaptionTimerRef.current);
242
+ clearCaptionTimerRef.current = null;
243
+ }
244
+ clearCaptionTimerRef.current = setTimeout(function () {
245
+ clearCaptionTimerRef.current = null;
246
+ clearCaptionSentence();
247
+ }, 4500);
248
+ }
249
+ return function () {
250
+ if (clearCaptionTimerRef.current) {
251
+ clearTimeout(clearCaptionTimerRef.current);
252
+ clearCaptionTimerRef.current = null;
253
+ }
254
+ };
255
+ }, [captionSentence]);
256
+ var handleMouseEnter = (0, _react.useCallback)(function () {
257
+ setIsHovered(false);
258
+ }, [setIsHovered]);
259
+ var mouseMoveRef = (0, _useMouseMoveAnywhere.useMouseMoveAnywhere)(handleMouseEnter, window);
260
+ if (!isCaptionVisible) {
261
+ return null;
262
+ }
263
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
264
+ className: (0, _classnames["default"])('fcr-caption-viewport', {
265
+ 'fcr-caption-hovered': isHovered
266
+ }),
267
+ onMouseEnter: function onMouseEnter() {
268
+ return setIsHovered(true);
269
+ },
270
+ ref: mouseMoveRef,
271
+ children: [isHovered && /*#__PURE__*/(0, _jsxRuntime.jsx)(ActionButtons, {}), !isShowMessage ? /*#__PURE__*/(0, _jsxRuntime.jsx)(TooltipTips, {}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(CaptionMessage, {
272
+ captionMessage: captionSentence,
273
+ isExiting: false
274
+ })]
275
+ });
276
+ });
277
+ var CaptionDraggableView = exports.CaptionDraggableView = (0, _mobxReact.observer)(function () {
278
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_draggableContainer.DraggableContainer, {
279
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(CaptionView, {})
280
+ });
281
+ });
@@ -20,7 +20,7 @@ export declare class ChatRoomStore implements FcrUIManagedObject {
20
20
  msgId: string;
21
21
  };
22
22
  lastScrollTop: undefined | number;
23
- protected logger: import("agora-foundation/lib/logger").Logger;
23
+ protected logger: import("fcr-core/lib/imports").Logger;
24
24
  private _messageProvider;
25
25
  private _userControl;
26
26
  private _chatRoomControl;
@@ -544,27 +544,27 @@ var ChatRoomStore = exports.ChatRoomStore = /*#__PURE__*/function () {
544
544
  }, {
545
545
  key: "allowChat",
546
546
  get: function get() {
547
- return this._privilegeProvider.allowChat();
547
+ return this._privilegeProvider.isChatAllowed();
548
548
  }
549
549
  }, {
550
550
  key: "allowedAllChat",
551
551
  get: function get() {
552
- return this._privilegeProvider.allowedAllChat();
552
+ return this._privilegeProvider.isAllChatAllowed();
553
553
  }
554
554
  }, {
555
555
  key: "allowedPublicChatAndDisallowedPrivateChat",
556
556
  get: function get() {
557
- return this._privilegeProvider.allowedPublicChatAndDisallowedPrivateChat();
557
+ return this._privilegeProvider.isPublicChatAllowedAndPrivateChatDisallowed();
558
558
  }
559
559
  }, {
560
560
  key: "disallowedPublicChatAndDisallowedPrivateChatToParticipant",
561
561
  get: function get() {
562
- return this._privilegeProvider.disallowedPublicChatAndDisallowedPrivateChatToParticipant();
562
+ return this._privilegeProvider.isPublicChatAndPrivateChatToParticipantDisallowed();
563
563
  }
564
564
  }, {
565
565
  key: "disallowedAllChat",
566
566
  get: function get() {
567
- return this._privilegeProvider.disallowedAllChat();
567
+ return this._privilegeProvider.isAllChatDisallowed();
568
568
  }
569
569
  }, {
570
570
  key: "hasSendMessagePermission",
@@ -830,7 +830,7 @@ var ChatRoomStore = exports.ChatRoomStore = /*#__PURE__*/function () {
830
830
  }, {
831
831
  key: "privilegeOperator",
832
832
  get: function get() {
833
- return this._privilegeProvider.privilegeOperator;
833
+ return this._privilegeProvider.getPrivilegeOperator();
834
834
  }
835
835
  }, {
836
836
  key: "updateChatTextMsg",
@@ -91,34 +91,76 @@ var _default = exports["default"] = (0, _mobxReact.observer)(function (props) {
91
91
  var isManager = publisherRole === 'host' || publisherRole === 'union-host';
92
92
  var isFile = datum !== null && datum !== void 0 && datum.img ? true : false;
93
93
  (0, _react.useEffect)(function () {
94
- // 标点符号特殊处理
95
- // 如果是自己发的消息 由于有flex-end 如果标点符号大于1行, 则设置为100% (不然没法换行)
96
- // 如果不是自己发的消息,每条都设置为100%
97
- if (messageContainerRef.current && messageItemRef.current) {
94
+ var adjustMessageWidth = function adjustMessageWidth() {
95
+ if (!messageContainerRef.current || !messageItemRef.current) {
96
+ return;
97
+ }
98
98
  var messageContainerWidth = messageContainerRef.current.offsetWidth;
99
- var messageItemWidth = messageItemRef.current.offsetWidth;
99
+ if (messageContainerWidth === 0) {
100
+ return;
101
+ }
102
+ var widthChanged = false;
103
+ var prevItemWidth = messageItemRef.current.style.width;
104
+ messageItemRef.current.style.width = '';
105
+ var naturalItemWidth = messageItemRef.current.offsetWidth;
106
+ var nextItemWidth = '';
100
107
  if (publisherIsSelf) {
101
- if (messageItemWidth > messageContainerWidth) {
102
- messageItemRef.current.style.width = '100%';
103
- // 由于动态计算了宽度,导致高度不对,所以需要重新计算高度
104
- cache.clear(idx, 0);
105
- list === null || list === void 0 || list.recomputeRowHeights(idx);
108
+ if (naturalItemWidth > messageContainerWidth) {
109
+ nextItemWidth = '100%';
106
110
  }
107
111
  } else {
108
- messageItemRef.current.style.width = '100%';
112
+ nextItemWidth = '100%';
113
+ }
114
+ if (nextItemWidth !== prevItemWidth) {
115
+ messageItemRef.current.style.width = nextItemWidth;
116
+ widthChanged = true;
117
+ } else {
118
+ messageItemRef.current.style.width = prevItemWidth;
119
+ }
120
+ if (!publisherIsSelf) {
109
121
  var childElement = messageItemRef.current.firstElementChild;
110
122
  if (childElement) {
111
- // 消息不是本人发的 有头像 如果长度大于父容器需要减去34px
112
- if (childElement.offsetWidth > messageContainerWidth - 34) {
113
- childElement.style.width = 'calc(100% - 34px)';
114
- // 由于动态计算了宽度,导致高度不对,所以需要重新计算高度
115
- cache.clear(idx, 0);
116
- list === null || list === void 0 || list.recomputeRowHeights(idx);
123
+ var prevChildWidth = childElement.style.width;
124
+ childElement.style.width = '';
125
+ var avatarOffset = publisherUid !== localUserId && !multiSelectActive ? 34 : 0;
126
+ var availableWidth = Math.max(messageContainerWidth - avatarOffset, 0);
127
+ var naturalChildWidth = childElement.offsetWidth;
128
+ var nextChildWidth = '';
129
+ if (naturalChildWidth > availableWidth) {
130
+ nextChildWidth = avatarOffset > 0 ? "calc(100% - ".concat(avatarOffset, "px)") : '100%';
131
+ }
132
+ if (nextChildWidth !== prevChildWidth) {
133
+ childElement.style.width = nextChildWidth;
134
+ widthChanged = true;
135
+ } else {
136
+ childElement.style.width = prevChildWidth;
117
137
  }
118
138
  }
119
139
  }
140
+ if (widthChanged) {
141
+ cache.clear(idx, 0);
142
+ list === null || list === void 0 || list.recomputeRowHeights(idx);
143
+ }
144
+ };
145
+ adjustMessageWidth();
146
+ var container = messageContainerRef.current;
147
+ if (!container) {
148
+ return;
120
149
  }
121
- }, []);
150
+ if (typeof ResizeObserver !== 'undefined') {
151
+ var _observer = new ResizeObserver(function () {
152
+ adjustMessageWidth();
153
+ });
154
+ _observer.observe(container);
155
+ return function () {
156
+ return _observer.disconnect();
157
+ };
158
+ }
159
+ window.addEventListener('resize', adjustMessageWidth);
160
+ return function () {
161
+ return window.removeEventListener('resize', adjustMessageWidth);
162
+ };
163
+ }, [cache, idx, list, multiSelectActive, publisherIsSelf, publisherUid, localUserId]);
122
164
  var handleCopyMsg = /*#__PURE__*/function () {
123
165
  var _ref2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(msg, time, publisherNickName, targetNickname) {
124
166
  return _regenerator["default"].wrap(function (_context) {
@@ -108,6 +108,13 @@
108
108
  width: 100%;
109
109
  }
110
110
 
111
+ .fcr-chat-container-box-web,
112
+ .fcr-chat-container-box-electron {
113
+ width: 100%;
114
+ display: flex;
115
+ flex-direction: column;
116
+ }
117
+
111
118
  .fcr-chat-container-box-web {
112
119
  height: 100%;
113
120
  }
@@ -16,6 +16,7 @@ export default class ChatStore implements FcrUIManagedObject {
16
16
  private _messageProvider;
17
17
  private _roomControl;
18
18
  private _isMainRoom;
19
+ private _localUserId;
19
20
  accessor chatRoomStores: ChatRoomStoreMap;
20
21
  accessor activeTabIndex: FcrUIRoomType;
21
22
  accessor copyMap: Map<number, boolean>;
@@ -119,6 +119,7 @@ var ChatStore = exports["default"] = /*#__PURE__*/function () {
119
119
  this._roomControl = roomControl;
120
120
  this._messageProvider = messageProvider;
121
121
  this._dialogProvider = dialogProvider;
122
+ this._localUserId = roomControl.getUserControl().getLocalUser().userId;
122
123
  var roomObserver = {
123
124
  onJoinWaitingRoom: function onJoinWaitingRoom(room) {
124
125
  var userControl = room.getUserControl();
@@ -227,13 +228,12 @@ var ChatStore = exports["default"] = /*#__PURE__*/function () {
227
228
  }, {
228
229
  key: "localUserId",
229
230
  get: function get() {
230
- var userId = this._roomControl.getUserControl().getLocalUser().userId;
231
- return userId;
231
+ return this._localUserId;
232
232
  }
233
233
  }, {
234
234
  key: "hasWaitingRoomPermission",
235
235
  value: function hasWaitingRoomPermission() {
236
- return this._privilegeProvider.isWaitingRoomEnabled() && this._privilegeProvider.hasWaitingRoomPermission();
236
+ return this._privilegeProvider.isWaitingRoomEnabled() && this._privilegeProvider.hasEnableWaitingRoomPermission();
237
237
  }
238
238
  }, {
239
239
  key: "handlerActiveTab",
@@ -3,7 +3,22 @@
3
3
  flex-direction: column;
4
4
  justify-content: center;
5
5
  align-items: center;
6
- padding-top: 22px;
6
+ margin-top: 22px;
7
+ }
8
+
9
+ .fcr-action-apps-item-wrapper .fcr-action-apps-item-extra-icon {
10
+ width: 12px;
11
+ height: 32px;
12
+ min-width: 12px;
13
+ padding: 0;
14
+ border: none !important;
15
+ overflow: hidden;
16
+ }
17
+ .fcr-action-apps-item-wrapper_hover .fcr-action-apps-item-extra-icon:hover path {
18
+ fill: var(--fcr_web_ui_scene_mainicon2);
19
+ }
20
+ .fcr-action-apps-item-wrapper_hover .fcr-action-apps-item-icon-wrapper:hover path {
21
+ fill: var(--fcr_web_ui_scene_mainicon2);
7
22
  }
8
23
  .fcr-action-apps-item-icon {
9
24
  margin: 0px 16px 8px;
@@ -19,52 +19,119 @@ Object.defineProperty(exports, "__esModule", {
19
19
  value: true
20
20
  });
21
21
  exports.Appitem = void 0;
22
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
22
  require("core-js/modules/es.function.name.js");
23
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
24
24
  var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
25
25
  var _icon = require("agora-ui-foundation/lib/components/icon");
26
26
  var _classnames = _interopRequireDefault(require("classnames"));
27
27
  require("./index.css");
28
+ var _popover = require("agora-ui-foundation/lib/components/popover");
29
+ var _button = require("agora-ui-foundation/lib/components/button");
30
+ var _type = require("agora-ui-foundation/lib/components/icon/type");
28
31
  var _jsxRuntime = require("react/jsx-runtime");
29
32
  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; }
30
33
  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; }
31
- var size = 32;
34
+ var MoreBtn = function MoreBtn(props) {
35
+ var config = props.config,
36
+ disabled = props.disabled;
37
+ var Component = config.component,
38
+ componentProps = config.componentProps;
39
+ var handleClick = function handleClick(e) {
40
+ if (!disabled) {
41
+ e.stopPropagation();
42
+ e.preventDefault();
43
+ }
44
+ };
45
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
46
+ showArrow: false,
47
+ trigger: "click",
48
+ disable: disabled,
49
+ content: /*#__PURE__*/(0, _jsxRuntime.jsx)(Component, _objectSpread({}, componentProps)),
50
+ placement: "topLeft",
51
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
52
+ onClick: handleClick,
53
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_button.FcrButton, {
54
+ className: "fcr-action-apps-item-extra-icon",
55
+ type: "text",
56
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
57
+ type: _type.FcrIconType.FCR_DROPUP4,
58
+ size: 24,
59
+ colors: {
60
+ iconPrimary: 'var(--fcr_web_ui_scene_mainicon1)'
61
+ }
62
+ })
63
+ })
64
+ })
65
+ });
66
+ };
67
+ var Icon = function Icon(props) {
68
+ var size = 32;
69
+ var imgSrc = props.imgSrc,
70
+ fcrIconProps = props.fcrIconProps,
71
+ name = props.name;
72
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
73
+ className: "fcr-action-apps-item-icon-wrapper",
74
+ children: imgSrc ? /*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
75
+ style: {
76
+ width: size,
77
+ height: size
78
+ },
79
+ src: imgSrc,
80
+ alt: name
81
+ }) : fcrIconProps && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, _objectSpread({
82
+ size: size,
83
+ colors: {
84
+ iconPrimary: 'var(--fcr_web_ui_scene_mainicon1)'
85
+ }
86
+ }, fcrIconProps))
87
+ });
88
+ };
32
89
  var Appitem = exports.Appitem = function Appitem(props) {
33
90
  var name = props.name,
34
91
  onClick = props.onClick,
35
- fcrToolTipProps = props.fcrToolTipProps,
36
92
  fcrIconProps = props.fcrIconProps,
37
- imgSrc = props.imgSrc;
38
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
39
- className: (0, _classnames["default"])('fcr-action-apps-item-wrapper'),
40
- onClick: onClick,
41
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, _objectSpread(_objectSpread({
42
- mouseEnterDelay: 0
43
- }, fcrToolTipProps ? fcrToolTipProps : {
44
- visible: false
45
- }), {}, {
46
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
47
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
48
- className: "fcr-action-apps-item-icon",
49
- children: imgSrc ? /*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
50
- style: {
51
- width: size,
52
- height: size
53
- },
54
- src: imgSrc,
55
- alt: name
56
- }) : fcrIconProps && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, _objectSpread(_objectSpread({
57
- size: size
58
- }, fcrIconProps), {}, {
59
- colors: {
60
- iconPrimary: 'var(--fcr_web_ui_scene_mainicon1)'
61
- }
62
- }))
63
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
64
- className: "fcr-action-apps-item-text",
65
- children: name
93
+ imgSrc = props.imgSrc,
94
+ disabledConfig = props.disabledConfig,
95
+ moreBtnConfig = props.moreBtnConfig;
96
+ var _ref = disabledConfig || {
97
+ disabled: false,
98
+ onDisabledClick: function onDisabledClick() {}
99
+ },
100
+ onDisabledClick = _ref.onDisabledClick,
101
+ disabled = _ref.disabled;
102
+ var fcrToolTipProps = props.fcrToolTipProps || {
103
+ visible: false
104
+ };
105
+ var handleClick = function handleClick(e) {
106
+ if (disabled) {
107
+ e.stopPropagation();
108
+ onDisabledClick();
109
+ return;
110
+ }
111
+ onClick(e);
112
+ };
113
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, _objectSpread(_objectSpread({
114
+ mouseEnterDelay: 0
115
+ }, fcrToolTipProps), {}, {
116
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
117
+ className: (0, _classnames["default"])('fcr-action-apps-item-wrapper', {
118
+ // 'fcr-action-apps-item-wrapper_hover': true,
119
+ }),
120
+ onClick: handleClick,
121
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
122
+ className: "fcr-action-apps-item-icon",
123
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Icon, {
124
+ imgSrc: imgSrc,
125
+ fcrIconProps: fcrIconProps,
126
+ name: name
127
+ }), moreBtnConfig && /*#__PURE__*/(0, _jsxRuntime.jsx)(MoreBtn, {
128
+ config: moreBtnConfig,
129
+ disabled: disabled
66
130
  })]
67
- })
68
- }))
69
- });
131
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
132
+ className: "fcr-action-apps-item-text",
133
+ children: name
134
+ })]
135
+ })
136
+ }));
70
137
  };