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
@@ -8,5 +8,7 @@ exports.FcrUISessionKey = void 0;
8
8
  var FcrUISessionKey = exports.FcrUISessionKey = /*#__PURE__*/function (FcrUISessionKey) {
9
9
  FcrUISessionKey["REQUEST_OPEN_CAMERA"] = "REQUEST_OPEN_CAMERA";
10
10
  FcrUISessionKey["REQUEST_OPEN_MICROPHONE"] = "REQUEST_OPEN_MICROPHONE";
11
+ FcrUISessionKey["REQUEST_OPEN_TRANSCRIBING"] = "REQUEST_OPEN_TRANSCRIBING";
12
+ FcrUISessionKey["REJECT_OPEN_TRANSCRIBING"] = "REJECT_OPEN_TRANSCRIBING";
11
13
  return FcrUISessionKey;
12
14
  }({});
@@ -12,6 +12,7 @@ export default class ConnectionGatewayStoreMainScene {
12
12
  private _dialogProvider;
13
13
  private _needShowConfirmDialog;
14
14
  private _confirmDialogId;
15
+ private _sharedSettingDataSource;
15
16
  accessor phoneCallState: FcrRoomConnectorSessionState;
16
17
  accessor phoneCallReason: FcrRoomConnectorSessionReason;
17
18
  accessor connectSession: FcrPhoneConnectorSession | null;
@@ -105,6 +105,7 @@ var ConnectionGatewayStoreMainScene = exports["default"] = /*#__PURE__*/function
105
105
  // Optional providers with try-catch
106
106
  this._devicePrivilegeProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_DEVICE_PRIVILEGE_PROVIDER);
107
107
  this._sharedDevicePrivilegeDataSource = objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_DEVICE_PRIVILEGE_DATA_SOURCE);
108
+ this._sharedSettingDataSource = objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_SETTING_DATA_SOURCE);
108
109
  // Optional providers may not exist in all scenarios
109
110
 
110
111
  this._deviceObserver = {
@@ -188,6 +189,10 @@ var ConnectionGatewayStoreMainScene = exports["default"] = /*#__PURE__*/function
188
189
  activeTab: _type3.DeviceSettingTab.AUDIO,
189
190
  highlightSelector: _constant.FcrUIHighlightElement.AUDIO_MICROPHONE
190
191
  };
192
+ this._sharedSettingDataSource.setDialogConfig({
193
+ activeTab: _type3.DeviceSettingTab.AUDIO,
194
+ highlightSelector: _constant.FcrUIHighlightElement.AUDIO_MICROPHONE
195
+ });
191
196
  }
192
197
  }, {
193
198
  key: "release",
@@ -9,10 +9,12 @@ export default class ConnectionGatewayStore {
9
9
  private _sharedDevicePrivilegeDataSource?;
10
10
  private _dialogProvider;
11
11
  private _needShowConfirmDialog;
12
+ private _sharedSettingDataSource;
12
13
  accessor phoneCallState: FcrRoomConnectorSessionState;
13
14
  accessor phoneCallReason: FcrRoomConnectorSessionReason;
14
15
  accessor connectSession: FcrPhoneConnectorSession | null;
15
16
  accessor calling: boolean;
17
+ private _roomProvider;
16
18
  get connectType(): import("../../../type").FcrUIConnectType;
17
19
  get hasNeedMergedStream(): boolean;
18
20
  get hasOwnPstnStream(): boolean;
@@ -62,6 +62,7 @@ var _i18n = require("agora-ui-foundation/lib/i18n");
62
62
  var _objectManager = require("../../../object-manager");
63
63
  var _type2 = require("../../../providers/dialog/type");
64
64
  var _type3 = require("../../setting/type");
65
+ var _type4 = require("fcr-core/lib/room-control/type");
65
66
  var _ConnectionGatewayStore;
66
67
  var _initProto, _init_phoneCallState, _init_phoneCallReason, _init_connectSession, _init_calling;
67
68
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
@@ -80,7 +81,8 @@ var _C = /*#__PURE__*/new WeakMap();
80
81
  var _D = /*#__PURE__*/new WeakMap();
81
82
  var ConnectionGatewayStore = exports["default"] = /*#__PURE__*/function () {
82
83
  function ConnectionGatewayStore(_ref) {
83
- var _this = this;
84
+ var _this$_roomProvider$c,
85
+ _this = this;
84
86
  var objectManager = _ref.objectManager;
85
87
  (0, _classCallCheck2["default"])(this, ConnectionGatewayStore);
86
88
  (0, _defineProperty2["default"])(this, "_disposers", (_initProto(this), []));
@@ -93,14 +95,12 @@ var ConnectionGatewayStore = exports["default"] = /*#__PURE__*/function () {
93
95
  // Get all required objects from objectManager
94
96
  this._dialogProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_DIALOG_PROVIDER);
95
97
  this._deviceProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_DEVICE_PROVIDER);
96
-
97
- // Optional providers with try-catch
98
- try {
98
+ this._roomProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_ROOM_PROVIDER);
99
+ if (((_this$_roomProvider$c = this._roomProvider.currentRoomControl.getRoomInfo()) === null || _this$_roomProvider$c === void 0 ? void 0 : _this$_roomProvider$c.roomType) === _type4.FcrRoomType.Mainroom) {
99
100
  this._devicePrivilegeProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_DEVICE_PRIVILEGE_PROVIDER);
100
101
  this._sharedDevicePrivilegeDataSource = objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_DEVICE_PRIVILEGE_DATA_SOURCE);
101
- } catch (_unused) {
102
- // Optional providers may not exist in all scenarios
103
102
  }
103
+ this._sharedSettingDataSource = objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_SETTING_DATA_SOURCE);
104
104
  this._deviceObserver = {
105
105
  onAudioConnected: function onAudioConnected() {
106
106
  _this._needShowConfirmDialog = false;
@@ -179,6 +179,10 @@ var ConnectionGatewayStore = exports["default"] = /*#__PURE__*/function () {
179
179
  activeTab: _type3.DeviceSettingTab.AUDIO,
180
180
  highlightSelector: _constant.FcrUIHighlightElement.AUDIO_MICROPHONE
181
181
  });
182
+ this._sharedSettingDataSource.setDialogConfig({
183
+ activeTab: _type3.DeviceSettingTab.AUDIO,
184
+ highlightSelector: _constant.FcrUIHighlightElement.AUDIO_MICROPHONE
185
+ });
182
186
  }
183
187
  }, {
184
188
  key: "closeConnectionDialog",
@@ -7,6 +7,7 @@ export default class ConnectionGatewayStore {
7
7
  private _dialogProvider;
8
8
  private _failureTimer;
9
9
  private _phoneAudioConnectorProvider;
10
+ private _sharedSettingDataSource;
10
11
  accessor rememberMe: boolean;
11
12
  accessor rememberedNumberList: ConnectListType[];
12
13
  accessor currentRegion: ConnectorRegion;
@@ -106,6 +106,7 @@ var ConnectionGatewayStore = exports["default"] = /*#__PURE__*/function () {
106
106
  this._deviceProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_DEVICE_PROVIDER);
107
107
  this._phoneAudioConnectorProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_PHONE_AUDIO_CONNECTOR_PROVIDER);
108
108
  this._dialogProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_DIALOG_PROVIDER);
109
+ this._sharedSettingDataSource = objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_SETTING_DATA_SOURCE);
109
110
  this.initRememberedData();
110
111
  this._disposers.push((0, _mobx.reaction)(function () {
111
112
  return _this._phoneAudioConnectorProvider.accepted;
@@ -220,6 +221,10 @@ var ConnectionGatewayStore = exports["default"] = /*#__PURE__*/function () {
220
221
  activeTab: _type.DeviceSettingTab.AUDIO,
221
222
  highlightSelector: _constant.FcrUIHighlightElement.AUDIO_MICROPHONE
222
223
  });
224
+ this._sharedSettingDataSource.setDialogConfig({
225
+ activeTab: _type.DeviceSettingTab.AUDIO,
226
+ highlightSelector: _constant.FcrUIHighlightElement.AUDIO_MICROPHONE
227
+ });
223
228
  }
224
229
  }, {
225
230
  key: "closeConnectionDialog",
@@ -1,5 +1,5 @@
1
1
  import { VideoWindowDataReturn, WhiteboardToolAction, SecondaryWindowStoreArgs } from './type';
2
- import { FcrBoardShape, FcrBoardToolType } from 'fcr-core/lib/room-control/whiteboard-control/enums';
2
+ import { FcrBoardShape, FcrBoardToolType } from 'fcr-core';
3
3
  import { WhiteboardThemeType } from '../whiteboard/type';
4
4
  import { FcrVideoTrackRenderer } from '../../shared-context/video-track-render-context';
5
5
  export declare class SecondaryWindowStore {
@@ -43,7 +43,6 @@ export declare class SecondaryWindowStore {
43
43
  get isBoardShare(): boolean;
44
44
  get annotationHasStart(): boolean;
45
45
  get isShowToolbar(): boolean;
46
- get isSharingWithAudio(): boolean;
47
46
  get videoRenderContext(): FcrVideoTrackRenderer;
48
47
  get isActive(): boolean;
49
48
  get baseUrl(): string;
@@ -302,11 +302,6 @@ var SecondaryWindowStore = exports.SecondaryWindowStore = /*#__PURE__*/function
302
302
  get: function get() {
303
303
  return this._boardShareProvider.boardBarControl.toolbarState.controlEnable || this.isHost;
304
304
  }
305
- }, {
306
- key: "isSharingWithAudio",
307
- get: function get() {
308
- return this._sharedScreenShareDataSource.isSharingWithAudio;
309
- }
310
305
  }, {
311
306
  key: "videoRenderContext",
312
307
  get: function get() {
@@ -465,14 +460,29 @@ var SecondaryWindowStore = exports.SecondaryWindowStore = /*#__PURE__*/function
465
460
  if (displaySecondaryWindow) {
466
461
  var _displaySecondaryWind = displaySecondaryWindow.workArea,
467
462
  x = _displaySecondaryWind.x,
468
- y = _displaySecondaryWind.y;
463
+ y = _displaySecondaryWind.y,
464
+ width = _displaySecondaryWind.width,
465
+ height = _displaySecondaryWind.height;
469
466
  var secondaryWindow = this._windowProvider.getWindowById(_constant.FcrUIDialogKey.SUB_WINDOW);
470
467
  secondaryWindow.setTitle(mainWindowTitle);
471
- secondaryWindow.setBounds({
472
- x: x,
473
- y: y
474
- });
475
- secondaryWindow.maximize();
468
+ var windowObserver = {
469
+ onReady: function onReady() {
470
+ // @ts-ignore
471
+ secondaryWindow.rendererWindow.FcrUIMainWindowRenderer = window.FcrUIMainWindowRenderer;
472
+ secondaryWindow.setPosition(x, y);
473
+ /**
474
+ * windows 系统下,窗口存在透明边框, 使用显示器工作区的宽高作为窗口的大小设置后,
475
+ * 窗口边缘与显示器屏幕边缘存在7像素(windows 不同版本的系统上, 可能存在差异)的空隙.
476
+ *
477
+ * 如果使用 maximumSize 来设置窗口的大小, 则不会存在窗口边缘的空隙问题.
478
+ * 但使用 maximumSize 设置窗口, 有时会导致窗口出现异常(窗口只显示顶部的标题栏, 内容区域透明, 且鼠标点击后直接穿透到窗口后的应用或桌面).
479
+ * setBounds 方法设置窗口大小和位置时, 也会出现此问题.
480
+ */
481
+ secondaryWindow.setSize(width, height);
482
+ secondaryWindow.removeObserver(windowObserver);
483
+ }
484
+ };
485
+ secondaryWindow.addObserver(windowObserver);
476
486
  } else {
477
487
  this.logger.error('No secondary display found');
478
488
  }
@@ -480,10 +490,8 @@ var SecondaryWindowStore = exports.SecondaryWindowStore = /*#__PURE__*/function
480
490
  }, {
481
491
  key: "_openSecondaryWindow",
482
492
  value: function _openSecondaryWindow() {
483
- this._dialogProvider.openDialog(_constant.FcrUIDialogKey.SUB_WINDOW, {
484
- focus: false
485
- });
486
493
  this._setSecondaryWindowBounds();
494
+ this._dialogProvider.openDialog(_constant.FcrUIDialogKey.SUB_WINDOW);
487
495
  }
488
496
  }, {
489
497
  key: "_closeSecondaryWindow",
@@ -1,6 +1,6 @@
1
1
  import { FcrConnectionState, FcrUserInfo } from 'fcr-core/lib/type';
2
2
  import { FcrUIVideoWindowData, FcrUIVideoWindowLayoutType } from '../layout/type';
3
- import { FcrBoardShape, FcrBoardToolType } from 'fcr-core/lib/room-control/whiteboard-control/enums';
3
+ import { FcrBoardShape, FcrBoardToolType } from 'fcr-core';
4
4
  import { FcrImageData } from 'fcr-core/lib/imports';
5
5
  import { FcrUIObjectManager } from '../../object-manager';
6
6
  export declare enum FcrUIDisplayDistributionContentType {
@@ -18,7 +18,7 @@ var _memberWindow = require("../components/member-window");
18
18
  var _controlBar = require("../components/control-bar");
19
19
  var _loading = require("../components/control-bar/components/loading");
20
20
  var _toolbar = require("../components/toolbar");
21
- var _enums = require("fcr-core/lib/room-control/whiteboard-control/enums");
21
+ var _fcrCore = require("fcr-core");
22
22
  var _type2 = require("./type");
23
23
  var _progress = _interopRequireDefault(require("../components/control-bar/components/progress"));
24
24
  var _i18n = require("agora-ui-foundation/lib/i18n");
@@ -64,8 +64,7 @@ var SubWindowView = exports.SubWindowView = (0, _mobxReact.observer)(function (p
64
64
  setSpeakerViewSize = store.setSpeakerViewSize,
65
65
  interceptedClose = store.interceptedClose,
66
66
  setInterceptedClose = store.setInterceptedClose,
67
- videoRenderContext = store.videoRenderContext,
68
- isSharingWithAudio = store.isSharingWithAudio;
67
+ videoRenderContext = store.videoRenderContext;
69
68
  var videoWindowContainer = (0, _react.useRef)(null);
70
69
  (0, _react.useEffect)(function () {
71
70
  if (!interceptedClose) return;
@@ -163,7 +162,7 @@ var SubWindowView = exports.SubWindowView = (0, _mobxReact.observer)(function (p
163
162
  setOriginScalc();
164
163
  return isCurrentOriginal;
165
164
  },
166
- isSharingWithAudio: isSharingWithAudio
165
+ isSharingAudio: videoWindowData.hasLoopbackSharing && videoWindowData.hasMicrophoneAudioStream
167
166
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberWindow.MemberWindow, {
168
167
  onRemovePin: function onRemovePin() {},
169
168
  canShowSpeakerSpotlight: true,
@@ -226,7 +225,7 @@ var SubWindowView = exports.SubWindowView = (0, _mobxReact.observer)(function (p
226
225
  setPopoverOpened: function setPopoverOpened() {
227
226
  return setInterceptedClose(false);
228
227
  }
229
- }), content, (isBoardShare || isScreenShare) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_toolbar.WhiteboardToolbar, {
228
+ }), content, (isBoardShare || annotationHasStart) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_toolbar.WhiteboardToolbar, {
230
229
  offsetTop: 28,
231
230
  direction: "vertical",
232
231
  container: videoWindowContainer.current || undefined,
@@ -267,19 +266,19 @@ var SubWindowView = exports.SubWindowView = (0, _mobxReact.observer)(function (p
267
266
  undo: function undo() {
268
267
  return setWhiteboardTool({
269
268
  action: _type2.WhiteboardToolAction.UNDO,
270
- tool: _enums.FcrBoardToolType.NONE
269
+ tool: _fcrCore.FcrBoardToolType.NONE
271
270
  });
272
271
  },
273
272
  redo: function redo() {
274
273
  return setWhiteboardTool({
275
274
  action: _type2.WhiteboardToolAction.REDO,
276
- tool: _enums.FcrBoardToolType.NONE
275
+ tool: _fcrCore.FcrBoardToolType.NONE
277
276
  });
278
277
  },
279
278
  clean: function clean() {
280
279
  return setWhiteboardTool({
281
280
  action: _type2.WhiteboardToolAction.CLEAR,
282
- tool: _enums.FcrBoardToolType.NONE
281
+ tool: _fcrCore.FcrBoardToolType.NONE
283
282
  });
284
283
  },
285
284
  onSave: isBoardShare ? saveWhiteboardDraft : undefined,
@@ -0,0 +1,46 @@
1
+ import { FcrUIAiDenoiseLevel } from '../../../type';
2
+ export interface AudioDeviceAdaptationConfig {
3
+ /**
4
+ * WhiteList device ID list
5
+ */
6
+ whiteListDeviceIds: string[];
7
+ /**
8
+ * WhiteList device configuration (disable 3A)
9
+ */
10
+ whiteListConfig: {
11
+ audioEchoCancellation: boolean;
12
+ audioAgc: boolean;
13
+ noiseReduce: number;
14
+ };
15
+ }
16
+ /**
17
+ * Audio device whiteList configuration
18
+ */
19
+ export declare const AUDIO_DEVICE_WHITE_LIST_CONFIG: AudioDeviceAdaptationConfig;
20
+ /**
21
+ * Audio device configuration for individual device
22
+ */
23
+ export interface AudioDeviceConfig {
24
+ audioEchoCancellation: boolean;
25
+ audioAgc: boolean;
26
+ noiseReduce: FcrUIAiDenoiseLevel;
27
+ }
28
+ /**
29
+ * Device profile with name and audio configuration
30
+ */
31
+ export interface DeviceProfile {
32
+ deviceName: string;
33
+ config: AudioDeviceConfig;
34
+ }
35
+ /**
36
+ * Device-specific audio configurations
37
+ * Key: deviceId (format: "vendorId:productId")
38
+ * Value: device profile with name and config
39
+ */
40
+ export declare const DEVICE_SPECIFIC_CONFIGS: Record<string, DeviceProfile>;
41
+ /**
42
+ * Get audio configuration for a specific device
43
+ * @param deviceId Device ID in format "vendorId:productId"
44
+ * @returns AudioDeviceConfig if device has specific config, undefined otherwise
45
+ */
46
+ export declare function getDeviceSpecificConfig(deviceId: string): AudioDeviceConfig | undefined;
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.DEVICE_SPECIFIC_CONFIGS = exports.AUDIO_DEVICE_WHITE_LIST_CONFIG = void 0;
8
+ exports.getDeviceSpecificConfig = getDeviceSpecificConfig;
9
+ var _type = require("../../../type");
10
+ /**
11
+ * Audio device whiteList configuration
12
+ */
13
+ var AUDIO_DEVICE_WHITE_LIST_CONFIG = exports.AUDIO_DEVICE_WHITE_LIST_CONFIG = {
14
+ whiteListDeviceIds: [
15
+ // Sennheiser-EPOS 20 EPOS EXPAND 20
16
+ '1395:0380',
17
+ // Sennheiser-EPOS 80 EPOS EXPAND 80
18
+ '1395:0093',
19
+ // Sennheiser-EPOS 80T EPOS EXPAND 80T
20
+ '1395:00CC',
21
+ // Poly-p15 Poly Studio P15
22
+ '095D:9290',
23
+ // A460 Speakerphone
24
+ '33F1:10AA',
25
+ // Huawei-MIC100 Mic 100会议音箱
26
+ '12D1:2308', //Hamedal Speak A20
27
+ "1FC9:826B", //Hamedal A21T TEA
28
+ "2A5F:2005", //HD Audio VA400
29
+ "33F1:1016"],
30
+ whiteListConfig: {
31
+ audioEchoCancellation: false,
32
+ audioAgc: false,
33
+ noiseReduce: 4
34
+ }
35
+ };
36
+
37
+ /**
38
+ * Audio device configuration for individual device
39
+ */
40
+
41
+ /**
42
+ * Device profile with name and audio configuration
43
+ */
44
+
45
+ /**
46
+ * Device-specific audio configurations
47
+ * Key: deviceId (format: "vendorId:productId")
48
+ * Value: device profile with name and config
49
+ */
50
+ var DEVICE_SPECIFIC_CONFIGS = exports.DEVICE_SPECIFIC_CONFIGS = {
51
+ // INNOTRIK I-90
52
+ '2F9D:0091': {
53
+ deviceName: 'INNOTRIK I-90',
54
+ config: {
55
+ audioEchoCancellation: true,
56
+ audioAgc: true,
57
+ noiseReduce: _type.FcrUIAiDenoiseLevel.LOW
58
+ }
59
+ }
60
+ };
61
+
62
+ /**
63
+ * Get audio configuration for a specific device
64
+ * @param deviceId Device ID in format "vendorId:productId"
65
+ * @returns AudioDeviceConfig if device has specific config, undefined otherwise
66
+ */
67
+ function getDeviceSpecificConfig(deviceId) {
68
+ var _DEVICE_SPECIFIC_CONF;
69
+ return (_DEVICE_SPECIFIC_CONF = DEVICE_SPECIFIC_CONFIGS[deviceId]) === null || _DEVICE_SPECIFIC_CONF === void 0 ? void 0 : _DEVICE_SPECIFIC_CONF.config;
70
+ }
@@ -0,0 +1,52 @@
1
+ import { FcrUIAiDenoiseLevel } from '../../../type';
2
+ import { AudioDeviceConfig } from './audio-device-adaptation';
3
+ import { FcrDeviceInfo } from 'fcr-core/lib/type';
4
+ /**
5
+ * The manager delegates device operations and settings management to the implementing class
6
+ */
7
+ export interface AudioDeviceWhiteListDelegate {
8
+ getMicrophoneId: () => string;
9
+ getMicrophoneList: () => FcrDeviceInfo[];
10
+ enableAudioEchoCancellation: (enable: boolean) => void;
11
+ enableAudioGainControl: (enable: boolean) => void;
12
+ setNoiseLevel: (level: FcrUIAiDenoiseLevel) => void;
13
+ updateSettings: (settings: {
14
+ audioEchoCancellation?: boolean;
15
+ noiseReduce?: FcrUIAiDenoiseLevel;
16
+ }) => void;
17
+ }
18
+ export declare class AudioDeviceWhiteListManager {
19
+ private logger;
20
+ private _whiteListDeviceIds;
21
+ private _whiteListConfig;
22
+ private _deviceConfigs;
23
+ private _whiteListDeviceUsed;
24
+ private _currentDeviceId;
25
+ private _delegate;
26
+ constructor(delegate: AudioDeviceWhiteListDelegate);
27
+ private _initialize;
28
+ handleMicrophoneListUpdated(microphoneList: FcrDeviceInfo[]): void;
29
+ handleMicrophoneChanged(microphoneId: string, productId: string | null, vendorId: string | null): void;
30
+ private _handleDeviceChanged;
31
+ private _createDeviceConfig;
32
+ /**
33
+ * Get device 3A configuration (use current settings if not exists)
34
+ */
35
+ private _getDeviceConfig;
36
+ /**
37
+ * Update device 3A configuration (save for both white list and non-white list devices)
38
+ */
39
+ updateDeviceConfig(config: Partial<AudioDeviceConfig>): void;
40
+ private _applyAudioConfig;
41
+ private _applyWhiteListConfig;
42
+ private _applyDeviceConfig;
43
+ private _createDeviceIdentifier;
44
+ private _getDeviceIdentifierFromList;
45
+ private _isDeviceInWhiteList;
46
+ private _initializeDeviceConfigsFromList;
47
+ private _updateDeviceConfigs;
48
+ private _createConfigForDevice;
49
+ private _loadFromLocalStorage;
50
+ private _saveToLocalStorage;
51
+ release(): void;
52
+ }