fcr-ui-scene 3.8.0-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 (54) hide show
  1. package/lib/fragments/whiteboard/store.js +1 -1
  2. package/lib/modules/caption/draggable-container/index.js +34 -12
  3. package/lib/modules/caption/store.d.ts +1 -4
  4. package/lib/modules/caption/store.js +10 -18
  5. package/lib/modules/caption/view.js +16 -27
  6. package/lib/modules/chat/store.d.ts +1 -0
  7. package/lib/modules/chat/store.js +2 -2
  8. package/lib/modules/components/caption-menu/index.d.ts +2 -0
  9. package/lib/modules/components/caption-menu/index.js +13 -10
  10. package/lib/modules/components/caption-menu/participants-privilege-control-options.js +5 -19
  11. package/lib/modules/components/caption-menu/translation-setting-options.js +31 -24
  12. package/lib/modules/control-bar/components/carmera/index.js +7 -39
  13. package/lib/modules/control-bar/components/cloud-recording-buttons.js +18 -33
  14. package/lib/modules/control-bar/components/microphone/index.js +3 -43
  15. package/lib/modules/control-bar/components/share-audio/index.d.ts +2 -0
  16. package/lib/modules/control-bar/components/share-audio/index.js +4 -10
  17. package/lib/modules/control-bar/hooks.d.ts +1 -0
  18. package/lib/modules/control-bar/hooks.js +140 -1
  19. package/lib/modules/control-bar/store.d.ts +3 -4
  20. package/lib/modules/control-bar/store.js +37 -30
  21. package/lib/modules/control-bar/type.d.ts +3 -0
  22. package/lib/modules/control-bar/view.js +40 -57
  23. package/lib/modules/dialog/components/confirm/index.js +0 -1
  24. package/lib/modules/dialog/components/dialog-container/index.js +1 -0
  25. package/lib/modules/event-toast/index.js +7 -1
  26. package/lib/modules/layout/store.base.d.ts +1 -1
  27. package/lib/modules/layout/store.electron.d.ts +0 -1
  28. package/lib/modules/layout/store.electron.js +37 -133
  29. package/lib/modules/participant/store.base.js +8 -10
  30. package/lib/modules/secondary-window/store.js +1 -3
  31. package/lib/modules/setting/audio-whiteList/audio-device-adaptation.d.ts +28 -0
  32. package/lib/modules/setting/audio-whiteList/audio-device-adaptation.js +41 -5
  33. package/lib/modules/setting/audio-whiteList/audio-whiteList-manager.d.ts +3 -14
  34. package/lib/modules/setting/audio-whiteList/audio-whiteList-manager.js +45 -24
  35. package/lib/modules/setting/index.js +4 -2
  36. package/lib/modules/setting/store.base.d.ts +5 -3
  37. package/lib/modules/setting/store.base.js +64 -43
  38. package/lib/modules/setting/store.electron.d.ts +1 -1
  39. package/lib/modules/setting/store.electron.js +3 -7
  40. package/lib/modules/setting/view.js +3 -2
  41. package/lib/modules/share-screen/store.electron.js +51 -23
  42. package/lib/modules/subtitles-history/components/list-item.js +4 -7
  43. package/lib/modules/subtitles-history/store.base.d.ts +3 -1
  44. package/lib/modules/subtitles-history/store.base.js +11 -1
  45. package/lib/providers/screen-share/provider.base.d.ts +2 -13
  46. package/lib/providers/screen-share/provider.base.js +5 -12
  47. package/lib/providers/screen-share/provider.electron.d.ts +0 -5
  48. package/lib/providers/screen-share/provider.electron.js +31 -18
  49. package/lib/providers/screen-share/type.d.ts +0 -16
  50. package/lib/providers/stt-provider/stt-provider.d.ts +3 -4
  51. package/lib/providers/stt-provider/stt-provider.js +145 -146
  52. package/lib/providers/stt-provider/type.d.ts +2 -10
  53. package/lib/providers/stt-provider/type.js +3 -3
  54. package/package.json +8 -8
@@ -77,6 +77,7 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
77
77
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
78
78
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
79
79
  var _logger = require("../../../utilities/logger");
80
+ var _type = require("../../../type");
80
81
  var _audioDeviceAdaptation = require("./audio-device-adaptation");
81
82
  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; }
82
83
  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; }
@@ -87,12 +88,8 @@ var STORAGE_KEY_WHITE_LIST_INITIALIZED = 'fcr_whitelist_device_initialized';
87
88
  var DEFAULT_DEVICE_ID = 'default_device_id';
88
89
  // Default values for non-white list devices
89
90
  var DEFAULT_AUDIO_AGC = false;
90
- var DEFAULT_NOISE_REDUCE_LEVEL = 4;
91
-
92
- /**
93
- * Audio device configuration
94
- * Includes audio echo cancellation, automatic gain control, noise reduction and other audio processing parameters
95
- */
91
+ var DEFAULT_AUDIO_ECHO_CANCELLATION = true;
92
+ var DEFAULT_NOISE_REDUCE_LEVEL = _type.FcrUIAiDenoiseLevel.LOW;
96
93
 
97
94
  /**
98
95
  * The manager delegates device operations and settings management to the implementing class
@@ -109,6 +106,7 @@ var AudioDeviceWhiteListManager = exports.AudioDeviceWhiteListManager = /*#__PUR
109
106
  (0, _defineProperty2["default"])(this, "_whiteListDeviceUsed", new Set());
110
107
  // Current device ID (microphone)
111
108
  (0, _defineProperty2["default"])(this, "_currentDeviceId", null);
109
+ (0, _defineProperty2["default"])(this, "_delegate", null);
112
110
  this._delegate = delegate;
113
111
  this._whiteListDeviceIds = (0, _toConsumableArray2["default"])(_audioDeviceAdaptation.AUDIO_DEVICE_WHITE_LIST_CONFIG.whiteListDeviceIds);
114
112
  this._whiteListConfig = {
@@ -122,8 +120,12 @@ var AudioDeviceWhiteListManager = exports.AudioDeviceWhiteListManager = /*#__PUR
122
120
  return (0, _createClass2["default"])(AudioDeviceWhiteListManager, [{
123
121
  key: "_initialize",
124
122
  value: function _initialize() {
123
+ var _this$_delegate;
125
124
  this._initializeDeviceConfigsFromList();
126
- var currentMicrophoneId = this._delegate.getMicrophoneId();
125
+ var currentMicrophoneId = (_this$_delegate = this._delegate) === null || _this$_delegate === void 0 ? void 0 : _this$_delegate.getMicrophoneId();
126
+ if (!currentMicrophoneId) {
127
+ this.logger.warn('[AudioDeviceWhiteList] Current microphone ID is null');
128
+ }
127
129
  var microphoneIdentifier = currentMicrophoneId ? this._getDeviceIdentifierFromList(currentMicrophoneId, 'microphone') : '';
128
130
  var microphoneDeviceId = microphoneIdentifier || DEFAULT_DEVICE_ID;
129
131
  if (currentMicrophoneId && !microphoneIdentifier) {
@@ -174,6 +176,20 @@ var AudioDeviceWhiteListManager = exports.AudioDeviceWhiteListManager = /*#__PUR
174
176
  this._applyDeviceConfig(deviceId);
175
177
  this._currentDeviceId = deviceId;
176
178
  }
179
+ }, {
180
+ key: "_createDeviceConfig",
181
+ value: function _createDeviceConfig(deviceId) {
182
+ var specificConfig = (0, _audioDeviceAdaptation.getDeviceSpecificConfig)(deviceId);
183
+ if (specificConfig) {
184
+ this.logger.info("[AudioDeviceWhiteList] Using specific config for device: ".concat(deviceId));
185
+ return _objectSpread({}, specificConfig);
186
+ }
187
+ return {
188
+ audioEchoCancellation: DEFAULT_AUDIO_ECHO_CANCELLATION,
189
+ audioAgc: DEFAULT_AUDIO_AGC,
190
+ noiseReduce: DEFAULT_NOISE_REDUCE_LEVEL
191
+ };
192
+ }
177
193
 
178
194
  /**
179
195
  * Get device 3A configuration (use current settings if not exists)
@@ -182,13 +198,7 @@ var AudioDeviceWhiteListManager = exports.AudioDeviceWhiteListManager = /*#__PUR
182
198
  key: "_getDeviceConfig",
183
199
  value: function _getDeviceConfig(deviceId) {
184
200
  if (!this._deviceConfigs.has(deviceId)) {
185
- var _currentSetting$audio, _currentSetting$noise;
186
- var currentSetting = this._delegate.getCurrentSetting();
187
- var config = {
188
- audioEchoCancellation: (_currentSetting$audio = currentSetting.audioEchoCancellation) !== null && _currentSetting$audio !== void 0 ? _currentSetting$audio : false,
189
- audioAgc: DEFAULT_AUDIO_AGC,
190
- noiseReduce: (_currentSetting$noise = currentSetting.noiseReduce) !== null && _currentSetting$noise !== void 0 ? _currentSetting$noise : DEFAULT_NOISE_REDUCE_LEVEL
191
- };
201
+ var config = this._createDeviceConfig(deviceId);
192
202
  this._deviceConfigs.set(deviceId, config);
193
203
  this.logger.info("[AudioDeviceWhiteList] Created config for device: ".concat(deviceId), config);
194
204
  }
@@ -218,8 +228,12 @@ var AudioDeviceWhiteListManager = exports.AudioDeviceWhiteListManager = /*#__PUR
218
228
  }, {
219
229
  key: "_applyAudioConfig",
220
230
  value: function _applyAudioConfig(config) {
231
+ if (!this._delegate) {
232
+ this.logger.warn('[AudioDeviceWhiteList] Delegate is null');
233
+ return;
234
+ }
221
235
  this._delegate.enableAudioEchoCancellation(config.audioEchoCancellation);
222
- this._delegate.toggleAgc(config.audioAgc);
236
+ this._delegate.enableAudioGainControl(config.audioAgc);
223
237
  this._delegate.setNoiseLevel(config.noiseReduce);
224
238
 
225
239
  // Update UI settings
@@ -252,7 +266,11 @@ var AudioDeviceWhiteListManager = exports.AudioDeviceWhiteListManager = /*#__PUR
252
266
  }, {
253
267
  key: "_getDeviceIdentifierFromList",
254
268
  value: function _getDeviceIdentifierFromList(deviceId, deviceType) {
255
- var deviceList = this._delegate.getMicrophoneList();
269
+ var _this$_delegate2;
270
+ var deviceList = (_this$_delegate2 = this._delegate) === null || _this$_delegate2 === void 0 ? void 0 : _this$_delegate2.getMicrophoneList();
271
+ if (!deviceList) {
272
+ return '';
273
+ }
256
274
  var device = deviceList.find(function (d) {
257
275
  return d.deviceId === deviceId;
258
276
  });
@@ -269,7 +287,12 @@ var AudioDeviceWhiteListManager = exports.AudioDeviceWhiteListManager = /*#__PUR
269
287
  }, {
270
288
  key: "_initializeDeviceConfigsFromList",
271
289
  value: function _initializeDeviceConfigsFromList() {
272
- var microphoneList = this._delegate.getMicrophoneList();
290
+ var _this$_delegate3;
291
+ var microphoneList = (_this$_delegate3 = this._delegate) === null || _this$_delegate3 === void 0 ? void 0 : _this$_delegate3.getMicrophoneList();
292
+ if (!microphoneList) {
293
+ this.logger.warn('[AudioDeviceWhiteList] Microphone list is null');
294
+ return;
295
+ }
273
296
  this._updateDeviceConfigs(microphoneList);
274
297
  this.logger.info("[AudioDeviceWhiteList] Initialized ".concat(this._deviceConfigs.size, " device configs"));
275
298
  }
@@ -299,17 +322,11 @@ var AudioDeviceWhiteListManager = exports.AudioDeviceWhiteListManager = /*#__PUR
299
322
  }, {
300
323
  key: "_createConfigForDevice",
301
324
  value: function _createConfigForDevice(deviceIdentifier) {
302
- var _currentSetting$audio2, _currentSetting$noise2;
303
325
  var isWhiteListDevice = this._isDeviceInWhiteList(deviceIdentifier);
304
326
  if (isWhiteListDevice) {
305
327
  return _objectSpread({}, this._whiteListConfig);
306
328
  }
307
- var currentSetting = this._delegate.getCurrentSetting();
308
- return {
309
- audioEchoCancellation: (_currentSetting$audio2 = currentSetting.audioEchoCancellation) !== null && _currentSetting$audio2 !== void 0 ? _currentSetting$audio2 : false,
310
- audioAgc: DEFAULT_AUDIO_AGC,
311
- noiseReduce: (_currentSetting$noise2 = currentSetting.noiseReduce) !== null && _currentSetting$noise2 !== void 0 ? _currentSetting$noise2 : DEFAULT_NOISE_REDUCE_LEVEL
312
- };
329
+ return this._createDeviceConfig(deviceIdentifier);
313
330
  }
314
331
  }, {
315
332
  key: "_loadFromLocalStorage",
@@ -348,6 +365,10 @@ var AudioDeviceWhiteListManager = exports.AudioDeviceWhiteListManager = /*#__PUR
348
365
  key: "release",
349
366
  value: function release() {
350
367
  this._saveToLocalStorage();
368
+ this._deviceConfigs.clear();
369
+ this._whiteListDeviceUsed.clear();
370
+ this._currentDeviceId = null;
371
+ this._delegate = null;
351
372
  }
352
373
  }]);
353
374
  }();
@@ -87,9 +87,11 @@ var SettingUIModule = exports.SettingUIModule = /*#__PURE__*/function (_UIModule
87
87
  onExitRoom: function onExitRoom() {
88
88
  _this.store.handleExitRoom();
89
89
  },
90
- onRoutingChanged: function onRoutingChanged() {
90
+ onRoutingChanged: function onRoutingChanged(roomControl) {
91
+ var _roomControl$getRoomI;
92
+ var roomType = (_roomControl$getRoomI = roomControl.getRoomInfo()) === null || _roomControl$getRoomI === void 0 ? void 0 : _roomControl$getRoomI.roomType;
91
93
  _this.store.handleExitRoom(true);
92
- _this.store.handleJoinRoom();
94
+ _this.store.handleJoinRoom(roomType);
93
95
  },
94
96
  onLocalUserKickedOut: function onLocalUserKickedOut() {
95
97
  _this.store.handleExitRoom();
@@ -3,7 +3,7 @@ import { FcrInterpreterRoomControl, FcrLanguage, FcrPerformanceInfo } from 'fcr-
3
3
  import { FcrNetworkStats } from 'fcr-core/lib/type';
4
4
  import { VirtualBackground } from '../device-pretest/assets/virtual-backdound-resources';
5
5
  import { FcrStreamControl } from 'fcr-core/lib/room-control/stream-control/type';
6
- import { FcrBaseRoomControl } from 'fcr-core/lib/room-control/type';
6
+ import { FcrBaseRoomControl, FcrRoomType } from 'fcr-core/lib/room-control/type';
7
7
  import { FcrUIDeviceProvider } from '../../providers/device-provider';
8
8
  import { FcrUIMessageProvider } from '../../providers/message/type';
9
9
  import { FcrUISharedSettingDataSource } from '../../shared-data/setting';
@@ -49,6 +49,7 @@ export declare abstract class SettingStoreBase implements FcrUIManagedObject {
49
49
  accessor loudestStreamVolumeLevel: number;
50
50
  accessor microphoneVolumeLevel: number;
51
51
  accessor isWifiConnected: boolean;
52
+ accessor isMainRoom: boolean;
52
53
  accessor networkState: FcrNetworkStats;
53
54
  accessor performanceState: FcrPerformanceInfo & {
54
55
  cpuOtherAppUsage: number;
@@ -140,7 +141,7 @@ export declare abstract class SettingStoreBase implements FcrUIManagedObject {
140
141
  avatar?: string | undefined;
141
142
  }>;
142
143
  get sharedSttSettingDataSource(): FcrUISharedSttSettingDataSource;
143
- get sttProvider(): FcrUISttProvider;
144
+ protected get sttProvider(): FcrUISttProvider;
144
145
  get languageOptions(): import("../../providers/stt-provider/type").FcrUISttLanguageOptions;
145
146
  get captionFontSize(): FcrUICaptionFontSize;
146
147
  get captionStyle(): import("../../shared-data/stt-setting.ts/type").FcrUICaptionStyle;
@@ -204,8 +205,9 @@ export declare abstract class SettingStoreBase implements FcrUIManagedObject {
204
205
  toggleTwoLineCaptionEnabled(): void;
205
206
  toggleTwoLineTranscribingEnabled(): void;
206
207
  subscribeTranslateLanguage(language: FcrLanguage | null): void;
207
- handleJoinRoom(): void;
208
+ handleJoinRoom(roomType: FcrRoomType | undefined): void;
208
209
  handleExitRoom(isRoutingChange?: boolean): void;
210
+ private _handleJoinMainRoom;
209
211
  private _onNetworkStatsUpdated;
210
212
  private _onLocalAudioStatsUpdated;
211
213
  private _onRemoteAudioStatsUpdated;
@@ -87,17 +87,18 @@ var _fcrCore = require("fcr-core");
87
87
  var _mobx = require("mobx");
88
88
  var _decorator = require("agora-foundation/lib/decorator");
89
89
  var _schedule = require("agora-foundation/lib/schedule");
90
+ var _type = require("fcr-core/lib/room-control/type");
90
91
  var _i18n = require("agora-ui-foundation/lib/i18n");
91
92
  var _deviceProvider = require("../../providers/device-provider");
92
93
  var _logger = require("../../utilities/logger");
93
94
  var _roomProvider = require("../../providers/room-provider/room-provider");
94
- var _type = require("./type");
95
+ var _type2 = require("./type");
95
96
  var _objectManager = require("../../object-manager");
96
97
  var _react = require("react");
97
98
  var _env = require("agora-foundation/lib/utilities/env");
98
99
  var _defaultConfig = require("../../utilities/default-config");
99
100
  var _SettingStoreBase;
100
- var _initProto, _init_loudestStreamVolumeLevel, _init_microphoneVolumeLevel, _init_isWifiConnected, _init_networkState, _init_performanceState, _init_localAudioStreamMap, _init_remoteAudioStreamMap, _init_localVideoStreamMap, _init_remoteVideoStreamMap, _init_systemMemorySize, _init_systemCpuDesc, _init_getSystemInfoTimer, _init_isHiddenMeetingTab, _setDialogConfigDecs, _setSettingDecs, _clearGetSystemInfoIntervalDecs, _changeMediaSettingDecs, _toggleTwoLineCaptionEnabledDecs, _toggleTwoLineTranscribingEnabledDecs, _subscribeTranslateLanguageDecs, _handleJoinRoomDecs, _handleExitRoomDecs, _onNetworkStatsUpdatedDecs, _onLocalAudioStatsUpdatedDecs, _onRemoteAudioStatsUpdatedDecs, _onLocalVideoStatsUpdatedDecs, _onRemoteVideoStatsUpdatedDecs, _onStreamsAddedDecs, _onStreamsUpdatedDecs, _onStreamsRemovedDecs, _onPerformanceUpdatedDecs, _onAudioVolumeUpdatedDecs, _preHandleSettingDecs, _setMeetingSettingsToLocalStorageDecs, _ref;
101
+ var _initProto, _init_loudestStreamVolumeLevel, _init_microphoneVolumeLevel, _init_isWifiConnected, _init_isMainRoom, _init_networkState, _init_performanceState, _init_localAudioStreamMap, _init_remoteAudioStreamMap, _init_localVideoStreamMap, _init_remoteVideoStreamMap, _init_systemMemorySize, _init_systemCpuDesc, _init_getSystemInfoTimer, _init_isHiddenMeetingTab, _setDialogConfigDecs, _setSettingDecs, _clearGetSystemInfoIntervalDecs, _changeMediaSettingDecs, _toggleTwoLineCaptionEnabledDecs, _toggleTwoLineTranscribingEnabledDecs, _subscribeTranslateLanguageDecs, _handleJoinRoomDecs, _handleExitRoomDecs, _handleJoinMainRoomDecs, _onNetworkStatsUpdatedDecs, _onLocalAudioStatsUpdatedDecs, _onRemoteAudioStatsUpdatedDecs, _onLocalVideoStatsUpdatedDecs, _onRemoteVideoStatsUpdatedDecs, _onStreamsAddedDecs, _onStreamsUpdatedDecs, _onStreamsRemovedDecs, _onPerformanceUpdatedDecs, _onAudioVolumeUpdatedDecs, _preHandleSettingDecs, _setMeetingSettingsToLocalStorageDecs, _ref;
101
102
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
102
103
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
103
104
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
@@ -151,7 +152,8 @@ var _J = /*#__PURE__*/new WeakMap();
151
152
  var _K = /*#__PURE__*/new WeakMap();
152
153
  var _L = /*#__PURE__*/new WeakMap();
153
154
  var _M = /*#__PURE__*/new WeakMap();
154
- _ref = (_setDialogConfigDecs = [_mobx.action, _mobx.action.bound], _setSettingDecs = [_mobx.action, _mobx.action.bound], _clearGetSystemInfoIntervalDecs = [_mobx.action, _mobx.action.bound], _changeMediaSettingDecs = [_mobx.action, _mobx.action.bound], _toggleTwoLineCaptionEnabledDecs = [_mobx.action, _mobx.action.bound], _toggleTwoLineTranscribingEnabledDecs = [_mobx.action, _mobx.action.bound], _subscribeTranslateLanguageDecs = [_mobx.action, _mobx.action.bound], _handleJoinRoomDecs = [_mobx.action, _mobx.action.bound, void 0, _decorator.trace], _handleExitRoomDecs = [_mobx.action, _mobx.action.bound, void 0, _decorator.trace], _onNetworkStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onLocalAudioStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onRemoteAudioStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onLocalVideoStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onRemoteVideoStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onStreamsAddedDecs = [_mobx.action, _mobx.action.bound], _onStreamsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onStreamsRemovedDecs = [_mobx.action, _mobx.action.bound], _onPerformanceUpdatedDecs = [_mobx.action, _mobx.action.bound], _onAudioVolumeUpdatedDecs = [_mobx.action, _mobx.action.bound], _preHandleSettingDecs = [_mobx.action, _mobx.action.bound], _setMeetingSettingsToLocalStorageDecs = [_mobx.action, _mobx.action.bound], "logger");
155
+ var _N = /*#__PURE__*/new WeakMap();
156
+ _ref = (_setDialogConfigDecs = [_mobx.action, _mobx.action.bound], _setSettingDecs = [_mobx.action, _mobx.action.bound], _clearGetSystemInfoIntervalDecs = [_mobx.action, _mobx.action.bound], _changeMediaSettingDecs = [_mobx.action, _mobx.action.bound], _toggleTwoLineCaptionEnabledDecs = [_mobx.action, _mobx.action.bound], _toggleTwoLineTranscribingEnabledDecs = [_mobx.action, _mobx.action.bound], _subscribeTranslateLanguageDecs = [_mobx.action, _mobx.action.bound], _handleJoinRoomDecs = [_mobx.action, _mobx.action.bound, void 0, _decorator.trace], _handleExitRoomDecs = [_mobx.action, _mobx.action.bound, void 0, _decorator.trace], _handleJoinMainRoomDecs = [_mobx.action, _mobx.action.bound, void 0, _decorator.trace], _onNetworkStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onLocalAudioStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onRemoteAudioStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onLocalVideoStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onRemoteVideoStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onStreamsAddedDecs = [_mobx.action, _mobx.action.bound], _onStreamsUpdatedDecs = [_mobx.action, _mobx.action.bound], _onStreamsRemovedDecs = [_mobx.action, _mobx.action.bound], _onPerformanceUpdatedDecs = [_mobx.action, _mobx.action.bound], _onAudioVolumeUpdatedDecs = [_mobx.action, _mobx.action.bound], _preHandleSettingDecs = [_mobx.action, _mobx.action.bound], _setMeetingSettingsToLocalStorageDecs = [_mobx.action, _mobx.action.bound], "logger");
155
157
  var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
156
158
  function SettingStoreBase(_ref2) {
157
159
  var objectManager = _ref2.objectManager;
@@ -196,7 +198,8 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
196
198
  _classPrivateFieldInitSpec(this, _A, _init_loudestStreamVolumeLevel(this, 0));
197
199
  _classPrivateFieldInitSpec(this, _B, _init_microphoneVolumeLevel(this, 0));
198
200
  _classPrivateFieldInitSpec(this, _C, _init_isWifiConnected(this, false));
199
- _classPrivateFieldInitSpec(this, _D, _init_networkState(this, {
201
+ _classPrivateFieldInitSpec(this, _D, _init_isMainRoom(this, false));
202
+ _classPrivateFieldInitSpec(this, _E, _init_networkState(this, {
200
203
  txPacketLoss: -1,
201
204
  rxPacketLoss: -1,
202
205
  rtt: 0,
@@ -211,7 +214,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
211
214
  rxVideoKBitrate: 0,
212
215
  rxVideoKBytes: 0
213
216
  }));
214
- _classPrivateFieldInitSpec(this, _E, _init_performanceState(this, {
217
+ _classPrivateFieldInitSpec(this, _F, _init_performanceState(this, {
215
218
  cpuTotalUsage: 0,
216
219
  cpuAppUsage: 0,
217
220
  cpuOtherAppUsage: 0,
@@ -221,14 +224,14 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
221
224
  memoryAppUsageInKbytes: 0,
222
225
  memoryOtherAppUsageInKbytes: 0
223
226
  }));
224
- _classPrivateFieldInitSpec(this, _F, _init_localAudioStreamMap(this, new Map()));
225
- _classPrivateFieldInitSpec(this, _G, _init_remoteAudioStreamMap(this, new Map()));
226
- _classPrivateFieldInitSpec(this, _H, _init_localVideoStreamMap(this, new Map()));
227
- _classPrivateFieldInitSpec(this, _I, _init_remoteVideoStreamMap(this, new Map()));
228
- _classPrivateFieldInitSpec(this, _J, _init_systemMemorySize(this, 0));
229
- _classPrivateFieldInitSpec(this, _K, _init_systemCpuDesc(this, ''));
230
- _classPrivateFieldInitSpec(this, _L, _init_getSystemInfoTimer(this, null));
231
- _classPrivateFieldInitSpec(this, _M, _init_isHiddenMeetingTab(this, true));
227
+ _classPrivateFieldInitSpec(this, _G, _init_localAudioStreamMap(this, new Map()));
228
+ _classPrivateFieldInitSpec(this, _H, _init_remoteAudioStreamMap(this, new Map()));
229
+ _classPrivateFieldInitSpec(this, _I, _init_localVideoStreamMap(this, new Map()));
230
+ _classPrivateFieldInitSpec(this, _J, _init_remoteVideoStreamMap(this, new Map()));
231
+ _classPrivateFieldInitSpec(this, _K, _init_systemMemorySize(this, 0));
232
+ _classPrivateFieldInitSpec(this, _L, _init_systemCpuDesc(this, ''));
233
+ _classPrivateFieldInitSpec(this, _M, _init_getSystemInfoTimer(this, null));
234
+ _classPrivateFieldInitSpec(this, _N, _init_isHiddenMeetingTab(this, true));
232
235
  this._objectManager = objectManager;
233
236
  this._monitorProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_MONITOR_PROVIDER);
234
237
  this._eventProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_EVENT_PROVIDER);
@@ -245,7 +248,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
245
248
  if (this._deviceProvider.cameraId && this._deviceProvider.cameraTrack) {
246
249
  this._cameraTrack = this._deviceProvider.cameraTrack;
247
250
  }
248
- if (this.dialogConfig.activeTab === _type.DeviceSettingTab.STATE) {
251
+ if (this.dialogConfig.activeTab === _type2.DeviceSettingTab.STATE) {
249
252
  this._setupAudioVolumeAnalyzerTask();
250
253
  }
251
254
  this.initSettingConfig();
@@ -275,7 +278,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
275
278
  _classPrivateFieldSet(_C, this, v);
276
279
  }
277
280
  }, {
278
- key: "networkState",
281
+ key: "isMainRoom",
279
282
  get: function get() {
280
283
  return _classPrivateFieldGet(_D, this);
281
284
  },
@@ -283,7 +286,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
283
286
  _classPrivateFieldSet(_D, this, v);
284
287
  }
285
288
  }, {
286
- key: "performanceState",
289
+ key: "networkState",
287
290
  get: function get() {
288
291
  return _classPrivateFieldGet(_E, this);
289
292
  },
@@ -291,7 +294,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
291
294
  _classPrivateFieldSet(_E, this, v);
292
295
  }
293
296
  }, {
294
- key: "localAudioStreamMap",
297
+ key: "performanceState",
295
298
  get: function get() {
296
299
  return _classPrivateFieldGet(_F, this);
297
300
  },
@@ -299,7 +302,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
299
302
  _classPrivateFieldSet(_F, this, v);
300
303
  }
301
304
  }, {
302
- key: "remoteAudioStreamMap",
305
+ key: "localAudioStreamMap",
303
306
  get: function get() {
304
307
  return _classPrivateFieldGet(_G, this);
305
308
  },
@@ -307,7 +310,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
307
310
  _classPrivateFieldSet(_G, this, v);
308
311
  }
309
312
  }, {
310
- key: "localVideoStreamMap",
313
+ key: "remoteAudioStreamMap",
311
314
  get: function get() {
312
315
  return _classPrivateFieldGet(_H, this);
313
316
  },
@@ -315,7 +318,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
315
318
  _classPrivateFieldSet(_H, this, v);
316
319
  }
317
320
  }, {
318
- key: "remoteVideoStreamMap",
321
+ key: "localVideoStreamMap",
319
322
  get: function get() {
320
323
  return _classPrivateFieldGet(_I, this);
321
324
  },
@@ -323,7 +326,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
323
326
  _classPrivateFieldSet(_I, this, v);
324
327
  }
325
328
  }, {
326
- key: "systemMemorySize",
329
+ key: "remoteVideoStreamMap",
327
330
  get: function get() {
328
331
  return _classPrivateFieldGet(_J, this);
329
332
  },
@@ -331,7 +334,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
331
334
  _classPrivateFieldSet(_J, this, v);
332
335
  }
333
336
  }, {
334
- key: "systemCpuDesc",
337
+ key: "systemMemorySize",
335
338
  get: function get() {
336
339
  return _classPrivateFieldGet(_K, this);
337
340
  },
@@ -339,7 +342,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
339
342
  _classPrivateFieldSet(_K, this, v);
340
343
  }
341
344
  }, {
342
- key: "getSystemInfoTimer",
345
+ key: "systemCpuDesc",
343
346
  get: function get() {
344
347
  return _classPrivateFieldGet(_L, this);
345
348
  },
@@ -347,13 +350,21 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
347
350
  _classPrivateFieldSet(_L, this, v);
348
351
  }
349
352
  }, {
350
- key: "isHiddenMeetingTab",
353
+ key: "getSystemInfoTimer",
351
354
  get: function get() {
352
355
  return _classPrivateFieldGet(_M, this);
353
356
  },
354
357
  set: function set(v) {
355
358
  _classPrivateFieldSet(_M, this, v);
356
359
  }
360
+ }, {
361
+ key: "isHiddenMeetingTab",
362
+ get: function get() {
363
+ return _classPrivateFieldGet(_N, this);
364
+ },
365
+ set: function set(v) {
366
+ _classPrivateFieldSet(_N, this, v);
367
+ }
357
368
  }, {
358
369
  key: "maxVideoSendInfo",
359
370
  get: function get() {
@@ -715,7 +726,7 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
715
726
  (_this3$_audioDeviceVo = _this3._audioDeviceVolumeRefreshTask) === null || _this3$_audioDeviceVo === void 0 || _this3$_audioDeviceVo.stop();
716
727
  _this3._audioDeviceVolumeRefreshTask = undefined;
717
728
  }
718
- if (activeTab === _type.DeviceSettingTab.STATE) {
729
+ if (activeTab === _type2.DeviceSettingTab.STATE) {
719
730
  _this3._setupAudioVolumeAnalyzerTask();
720
731
  }
721
732
  }), (0, _mobx.reaction)(function () {
@@ -1146,10 +1157,13 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
1146
1157
  }
1147
1158
  }, {
1148
1159
  key: "handleJoinRoom",
1149
- value: function handleJoinRoom() {
1160
+ value: function handleJoinRoom(roomType) {
1161
+ var isMainRoom = roomType === _type.FcrRoomType.Mainroom;
1162
+ this.isMainRoom = isMainRoom;
1163
+ if (isMainRoom) {
1164
+ this._handleJoinMainRoom();
1165
+ }
1150
1166
  var roomProvider = this._objectManager.getObject(_objectManager.FcrUIObjectKeys.P_ROOM_PROVIDER);
1151
- this._sharedSttSettingDataSource = this._objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_STT_SETTING_DATA_SOURCE);
1152
- this._sttProvider = this._objectManager.getObject(_objectManager.FcrUIObjectKeys.P_STT_PROVIDER);
1153
1167
  this._sharedLayoutDataSource = this._objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_LAYOUT_DATA_SOURCE);
1154
1168
  this._currentRoomControl = new _roomProvider.FcrUICurrentRoomControlProviderImpl(roomProvider.currentRoomControl).currentRoomControl;
1155
1169
  this._currentRoomControl.addObserver(this._roomObserver);
@@ -1160,9 +1174,6 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
1160
1174
  streamInfoList.set(streamInfo.streamId, streamInfo);
1161
1175
  });
1162
1176
  this._streamInfoList = streamInfoList;
1163
- this._sharedInterpreterDataSource = this._objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_INTERPRETER_DATA_SOURCE);
1164
- this._interpreterRoomControlReaction = this._createInterpreterRoomControlReaction();
1165
- this._disposers.push(this._interpreterRoomControlReaction);
1166
1177
  this.isHiddenMeetingTab = false;
1167
1178
  if (this._deviceProvider.followSystemSpeakerDevice) {
1168
1179
  this._showSystemSelectedDeviceChangedToast({
@@ -1212,6 +1223,15 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
1212
1223
  this._streamVolumeMap.clear();
1213
1224
  this._streamInfoList.clear();
1214
1225
  }
1226
+ }, {
1227
+ key: "_handleJoinMainRoom",
1228
+ value: function _handleJoinMainRoom() {
1229
+ this._sharedSttSettingDataSource = this._objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_STT_SETTING_DATA_SOURCE);
1230
+ this._sttProvider = this._objectManager.getObject(_objectManager.FcrUIObjectKeys.P_STT_PROVIDER);
1231
+ this._sharedInterpreterDataSource = this._objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_INTERPRETER_DATA_SOURCE);
1232
+ this._interpreterRoomControlReaction = this._createInterpreterRoomControlReaction();
1233
+ this._disposers.push(this._interpreterRoomControlReaction);
1234
+ }
1215
1235
  }, {
1216
1236
  key: "_onNetworkStatsUpdated",
1217
1237
  value: function _onNetworkStatsUpdated(roomId, stats) {
@@ -1408,19 +1428,20 @@ var SettingStoreBase = exports.SettingStoreBase = /*#__PURE__*/function () {
1408
1428
  }]);
1409
1429
  }();
1410
1430
  _SettingStoreBase = SettingStoreBase;
1411
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_SettingStoreBase, [[_mobx.observable, 1, "loudestStreamVolumeLevel"], [_mobx.observable, 1, "microphoneVolumeLevel"], [_mobx.observable, 1, "isWifiConnected"], [_mobx.observable, 1, "networkState"], [_mobx.observable, 1, "performanceState"], [_mobx.observable, 1, "localAudioStreamMap"], [_mobx.observable, 1, "remoteAudioStreamMap"], [_mobx.observable, 1, "localVideoStreamMap"], [_mobx.observable, 1, "remoteVideoStreamMap"], [_mobx.observable, 1, "systemMemorySize"], [_mobx.observable, 1, "systemCpuDesc"], [_mobx.observable, 1, "getSystemInfoTimer"], [_mobx.observable, 1, "isHiddenMeetingTab"], [_mobx.computed, 3, "maxVideoSendInfo"], [_mobx.computed, 3, "maxVideoReceiveInfo"], [_mobx.computed, 3, "sendScreenShareInfo"], [_mobx.computed, 3, "receiveScreenShareInfo"], [_mobx.computed, 3, "microphoneVolumeDb"], [_mobx.computed, 3, "speakerVolumeDb"], [_mobx.computed, 3, "speakerTestVolumeLevel"], [_mobx.computed, 3, "microphoneTestVolumeLevel"], [_mobx.computed, 3, "speakerVolume"], [_mobx.computed, 3, "microphoneVolume"], [_mobx.computed, 3, "isLocalMirrorEnabled"], [_mobx.computed, 3, "isLocalEditBeautyOptions"], [_mobx.computed, 3, "currentBeautyKey"], [_mobx.computed, 3, "beautyOptions"], [_mobx.computed, 3, "cameraDeviceId"], [_mobx.computed, 3, "cameraEnabled"], [_mobx.computed, 3, "showForceOpenEffectDialog"], [_mobx.computed, 3, "currentVirtualBackgroundName"], [_mobx.computed, 3, "cameraDeviceList"], [_mobx.computed, 3, "microphoneDeviceId"], [_mobx.computed, 3, "speakerDeviceId"], [_mobx.computed, 3, "speakerDeviceList"], [_mobx.computed, 3, "microphoneDeviceList"], [_mobx.computed, 3, "enableBeauty"], [_mobx.computed, 3, "virtualBackgroundList"], [_mobx.computed, 3, "currentIsMirror"], [_mobx.computed, 3, "microphoneDetecting"], [_mobx.computed, 3, "speakerDetecting"], [_mobx.computed, 3, "setting"], [_mobx.computed, 3, "media"], [_mobx.computed, 3, "sceneConfig"], [_mobx.computed, 3, "sharedSttSettingDataSource"], [_mobx.computed, 3, "sttProvider"], [_mobx.computed, 3, "languageOptions"], [_mobx.computed, 3, "captionFontSize"], [_mobx.computed, 3, "captionStyle"], [_mobx.computed, 3, "isTwoLineCaptionEnabled"], [_mobx.computed, 3, "isTwoLineTranscribingEnabled"], [_mobx.computed, 3, "translateLanguage"], [_mobx.computed, 3, "sharedInterpreterDataSource"], [_mobx.computed, 3, "currentRoomControl"], [_mobx.computed, 3, "interpreterRoomControl"], [_decorator.bound, 2, "_syncSystemInfo"], [_decorator.bound, 2, "initSettingConfig"], [_decorator.bound, 2, "enableVirtualBackground"], [_decorator.bound, 2, "setEditBeautyKey"], [_decorator.bound, 2, "enableBeautyEffect"], [_decorator.bound, 2, "_initReactions"], [_decorator.bound, 2, "setCameraDevice"], [_decorator.bound, 2, "setMicrophoneDevice"], [_decorator.bound, 2, "stopSpeakerTest"], [_decorator.bound, 2, "startSpeakerTest"], [_decorator.bound, 2, "setSpeakerDevice"], [_decorator.bound, 2, "setSpeakerVolume"], [_decorator.bound, 2, "setMicrophoneVolume"], [_decorator.bound, 2, "setVideoOrientation"], [_decorator.bound, 2, "setBeautyOptions"], [_decorator.bound, 2, "toggleLocalMirrorPreview"], [_decorator.bound, 2, "startVideo"], [_decorator.bound, 2, "stopVideo"], [_decorator.bound, 2, "handleForceOpenVideoEffect"], [_decorator.bound, 2, "handleCancelForceOpenVideoEffect"], [_decorator.bound, 2, "toggleLocalMirror"], [_decorator.bound, 2, "setSettingVideoOpened"], [_decorator.bound, 2, "setCaptionFontSize"], [_decorator.bound, 2, "startCameraTest"], [_decorator.bound, 2, "stopCameraTest"], [_decorator.bound, 2, "startMicrophoneTest"], [_decorator.bound, 2, "stopMicrophoneTest"], [_setDialogConfigDecs, 18, "setDialogConfig"], [_setSettingDecs, 18, "setSetting"], [_clearGetSystemInfoIntervalDecs, 18, "clearGetSystemInfoInterval"], [_changeMediaSettingDecs, 18, "changeMediaSetting"], [_toggleTwoLineCaptionEnabledDecs, 18, "toggleTwoLineCaptionEnabled"], [_toggleTwoLineTranscribingEnabledDecs, 18, "toggleTwoLineTranscribingEnabled"], [_subscribeTranslateLanguageDecs, 18, "subscribeTranslateLanguage"], [_handleJoinRoomDecs, 18, "handleJoinRoom"], [_handleExitRoomDecs, 18, "handleExitRoom"], [_onNetworkStatsUpdatedDecs, 18, "_onNetworkStatsUpdated"], [_onLocalAudioStatsUpdatedDecs, 18, "_onLocalAudioStatsUpdated"], [_onRemoteAudioStatsUpdatedDecs, 18, "_onRemoteAudioStatsUpdated"], [_onLocalVideoStatsUpdatedDecs, 18, "_onLocalVideoStatsUpdated"], [_onRemoteVideoStatsUpdatedDecs, 18, "_onRemoteVideoStatsUpdated"], [_onStreamsAddedDecs, 18, "_onStreamsAdded"], [_onStreamsUpdatedDecs, 18, "_onStreamsUpdated"], [_onStreamsRemovedDecs, 18, "_onStreamsRemoved"], [_onPerformanceUpdatedDecs, 18, "_onPerformanceUpdated"], [_decorator.bound, 2, "_handleCameraChanged"], [_onAudioVolumeUpdatedDecs, 18, "_onAudioVolumeUpdated"], [_preHandleSettingDecs, 18, "_preHandleSetting"], [_setMeetingSettingsToLocalStorageDecs, 18, "_setMeetingSettingsToLocalStorage"], [_decorator.bound, 2, "_handleSystemSelectedDeviceChanged"]], []).e, 14);
1431
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_SettingStoreBase, [[_mobx.observable, 1, "loudestStreamVolumeLevel"], [_mobx.observable, 1, "microphoneVolumeLevel"], [_mobx.observable, 1, "isWifiConnected"], [_mobx.observable, 1, "isMainRoom"], [_mobx.observable, 1, "networkState"], [_mobx.observable, 1, "performanceState"], [_mobx.observable, 1, "localAudioStreamMap"], [_mobx.observable, 1, "remoteAudioStreamMap"], [_mobx.observable, 1, "localVideoStreamMap"], [_mobx.observable, 1, "remoteVideoStreamMap"], [_mobx.observable, 1, "systemMemorySize"], [_mobx.observable, 1, "systemCpuDesc"], [_mobx.observable, 1, "getSystemInfoTimer"], [_mobx.observable, 1, "isHiddenMeetingTab"], [_mobx.computed, 3, "maxVideoSendInfo"], [_mobx.computed, 3, "maxVideoReceiveInfo"], [_mobx.computed, 3, "sendScreenShareInfo"], [_mobx.computed, 3, "receiveScreenShareInfo"], [_mobx.computed, 3, "microphoneVolumeDb"], [_mobx.computed, 3, "speakerVolumeDb"], [_mobx.computed, 3, "speakerTestVolumeLevel"], [_mobx.computed, 3, "microphoneTestVolumeLevel"], [_mobx.computed, 3, "speakerVolume"], [_mobx.computed, 3, "microphoneVolume"], [_mobx.computed, 3, "isLocalMirrorEnabled"], [_mobx.computed, 3, "isLocalEditBeautyOptions"], [_mobx.computed, 3, "currentBeautyKey"], [_mobx.computed, 3, "beautyOptions"], [_mobx.computed, 3, "cameraDeviceId"], [_mobx.computed, 3, "cameraEnabled"], [_mobx.computed, 3, "showForceOpenEffectDialog"], [_mobx.computed, 3, "currentVirtualBackgroundName"], [_mobx.computed, 3, "cameraDeviceList"], [_mobx.computed, 3, "microphoneDeviceId"], [_mobx.computed, 3, "speakerDeviceId"], [_mobx.computed, 3, "speakerDeviceList"], [_mobx.computed, 3, "microphoneDeviceList"], [_mobx.computed, 3, "enableBeauty"], [_mobx.computed, 3, "virtualBackgroundList"], [_mobx.computed, 3, "currentIsMirror"], [_mobx.computed, 3, "microphoneDetecting"], [_mobx.computed, 3, "speakerDetecting"], [_mobx.computed, 3, "setting"], [_mobx.computed, 3, "media"], [_mobx.computed, 3, "sceneConfig"], [_mobx.computed, 3, "sharedSttSettingDataSource"], [_mobx.computed, 3, "sttProvider"], [_mobx.computed, 3, "languageOptions"], [_mobx.computed, 3, "captionFontSize"], [_mobx.computed, 3, "captionStyle"], [_mobx.computed, 3, "isTwoLineCaptionEnabled"], [_mobx.computed, 3, "isTwoLineTranscribingEnabled"], [_mobx.computed, 3, "translateLanguage"], [_mobx.computed, 3, "sharedInterpreterDataSource"], [_mobx.computed, 3, "currentRoomControl"], [_mobx.computed, 3, "interpreterRoomControl"], [_decorator.bound, 2, "_syncSystemInfo"], [_decorator.bound, 2, "initSettingConfig"], [_decorator.bound, 2, "enableVirtualBackground"], [_decorator.bound, 2, "setEditBeautyKey"], [_decorator.bound, 2, "enableBeautyEffect"], [_decorator.bound, 2, "_initReactions"], [_decorator.bound, 2, "setCameraDevice"], [_decorator.bound, 2, "setMicrophoneDevice"], [_decorator.bound, 2, "stopSpeakerTest"], [_decorator.bound, 2, "startSpeakerTest"], [_decorator.bound, 2, "setSpeakerDevice"], [_decorator.bound, 2, "setSpeakerVolume"], [_decorator.bound, 2, "setMicrophoneVolume"], [_decorator.bound, 2, "setVideoOrientation"], [_decorator.bound, 2, "setBeautyOptions"], [_decorator.bound, 2, "toggleLocalMirrorPreview"], [_decorator.bound, 2, "startVideo"], [_decorator.bound, 2, "stopVideo"], [_decorator.bound, 2, "handleForceOpenVideoEffect"], [_decorator.bound, 2, "handleCancelForceOpenVideoEffect"], [_decorator.bound, 2, "toggleLocalMirror"], [_decorator.bound, 2, "setSettingVideoOpened"], [_decorator.bound, 2, "setCaptionFontSize"], [_decorator.bound, 2, "startCameraTest"], [_decorator.bound, 2, "stopCameraTest"], [_decorator.bound, 2, "startMicrophoneTest"], [_decorator.bound, 2, "stopMicrophoneTest"], [_setDialogConfigDecs, 18, "setDialogConfig"], [_setSettingDecs, 18, "setSetting"], [_clearGetSystemInfoIntervalDecs, 18, "clearGetSystemInfoInterval"], [_changeMediaSettingDecs, 18, "changeMediaSetting"], [_toggleTwoLineCaptionEnabledDecs, 18, "toggleTwoLineCaptionEnabled"], [_toggleTwoLineTranscribingEnabledDecs, 18, "toggleTwoLineTranscribingEnabled"], [_subscribeTranslateLanguageDecs, 18, "subscribeTranslateLanguage"], [_handleJoinRoomDecs, 18, "handleJoinRoom"], [_handleExitRoomDecs, 18, "handleExitRoom"], [_handleJoinMainRoomDecs, 18, "_handleJoinMainRoom"], [_onNetworkStatsUpdatedDecs, 18, "_onNetworkStatsUpdated"], [_onLocalAudioStatsUpdatedDecs, 18, "_onLocalAudioStatsUpdated"], [_onRemoteAudioStatsUpdatedDecs, 18, "_onRemoteAudioStatsUpdated"], [_onLocalVideoStatsUpdatedDecs, 18, "_onLocalVideoStatsUpdated"], [_onRemoteVideoStatsUpdatedDecs, 18, "_onRemoteVideoStatsUpdated"], [_onStreamsAddedDecs, 18, "_onStreamsAdded"], [_onStreamsUpdatedDecs, 18, "_onStreamsUpdated"], [_onStreamsRemovedDecs, 18, "_onStreamsRemoved"], [_onPerformanceUpdatedDecs, 18, "_onPerformanceUpdated"], [_decorator.bound, 2, "_handleCameraChanged"], [_onAudioVolumeUpdatedDecs, 18, "_onAudioVolumeUpdated"], [_preHandleSettingDecs, 18, "_preHandleSetting"], [_setMeetingSettingsToLocalStorageDecs, 18, "_setMeetingSettingsToLocalStorage"], [_decorator.bound, 2, "_handleSystemSelectedDeviceChanged"]], []).e, 15);
1412
1432
  _init_loudestStreamVolumeLevel = _applyDecs$e[0];
1413
1433
  _init_microphoneVolumeLevel = _applyDecs$e[1];
1414
1434
  _init_isWifiConnected = _applyDecs$e[2];
1415
- _init_networkState = _applyDecs$e[3];
1416
- _init_performanceState = _applyDecs$e[4];
1417
- _init_localAudioStreamMap = _applyDecs$e[5];
1418
- _init_remoteAudioStreamMap = _applyDecs$e[6];
1419
- _init_localVideoStreamMap = _applyDecs$e[7];
1420
- _init_remoteVideoStreamMap = _applyDecs$e[8];
1421
- _init_systemMemorySize = _applyDecs$e[9];
1422
- _init_systemCpuDesc = _applyDecs$e[10];
1423
- _init_getSystemInfoTimer = _applyDecs$e[11];
1424
- _init_isHiddenMeetingTab = _applyDecs$e[12];
1425
- _initProto = _applyDecs$e[13];
1435
+ _init_isMainRoom = _applyDecs$e[3];
1436
+ _init_networkState = _applyDecs$e[4];
1437
+ _init_performanceState = _applyDecs$e[5];
1438
+ _init_localAudioStreamMap = _applyDecs$e[6];
1439
+ _init_remoteAudioStreamMap = _applyDecs$e[7];
1440
+ _init_localVideoStreamMap = _applyDecs$e[8];
1441
+ _init_remoteVideoStreamMap = _applyDecs$e[9];
1442
+ _init_systemMemorySize = _applyDecs$e[10];
1443
+ _init_systemCpuDesc = _applyDecs$e[11];
1444
+ _init_getSystemInfoTimer = _applyDecs$e[12];
1445
+ _init_isHiddenMeetingTab = _applyDecs$e[13];
1446
+ _initProto = _applyDecs$e[14];
1426
1447
  var StoreContext = exports.StoreContext = /*#__PURE__*/(0, _react.createContext)(null);
@@ -4,7 +4,7 @@ import { FcrDeviceInfo } from 'fcr-core/lib/type';
4
4
  export default class SettingStore extends SettingStoreBase {
5
5
  private _renderer;
6
6
  private _windowProvider;
7
- private _audioDeviceWhiteListManager?;
7
+ private _audioDeviceWhiteListManager;
8
8
  private _pollingTask;
9
9
  private _audioDeviceObserver;
10
10
  constructor(args: SettingStoreArgs);
@@ -73,6 +73,7 @@ var SettingStore = exports["default"] = /*#__PURE__*/function (_SettingStoreBase
73
73
  (0, _classCallCheck2["default"])(this, SettingStore);
74
74
  _this = _callSuper(this, SettingStore, [args]);
75
75
  (0, _defineProperty2["default"])(_this, "_renderer", void _initProto(_this));
76
+ (0, _defineProperty2["default"])(_this, "_audioDeviceWhiteListManager", null);
76
77
  (0, _defineProperty2["default"])(_this, "_audioDeviceObserver", {
77
78
  onMicrophoneChanged: _this._handleMicrophoneChanged,
78
79
  onMicrophoneListUpdated: _this._handleMicrophoneListUpdated
@@ -81,12 +82,6 @@ var SettingStore = exports["default"] = /*#__PURE__*/function (_SettingStoreBase
81
82
  _this._renderer = objectManager.getObject(_objectManager.FcrUIObjectKeys.RENDERER_WRAPPER);
82
83
  _this._windowProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_WINDOW_PROVIDER);
83
84
  var delegate = {
84
- getCurrentSetting: function getCurrentSetting() {
85
- return {
86
- audioEchoCancellation: _this.sharedSettingDataSource.setting.audioEchoCancellation,
87
- noiseReduce: _this.sharedSettingDataSource.setting.noiseReduce
88
- };
89
- },
90
85
  getMicrophoneId: function getMicrophoneId() {
91
86
  return _this.deviceProvider.microphoneId || '';
92
87
  },
@@ -96,7 +91,7 @@ var SettingStore = exports["default"] = /*#__PURE__*/function (_SettingStoreBase
96
91
  enableAudioEchoCancellation: function enableAudioEchoCancellation(enable) {
97
92
  return _this.deviceProvider.enableAudioEchoCancellation(enable);
98
93
  },
99
- toggleAgc: function toggleAgc(enable) {
94
+ enableAudioGainControl: function enableAudioGainControl(enable) {
100
95
  return _this.deviceProvider.toggleAGC(enable);
101
96
  },
102
97
  setNoiseLevel: function setNoiseLevel(level) {
@@ -168,6 +163,7 @@ var SettingStore = exports["default"] = /*#__PURE__*/function (_SettingStoreBase
168
163
  var _this$_audioDeviceWhi4;
169
164
  this._pollingTask.stop();
170
165
  (_this$_audioDeviceWhi4 = this._audioDeviceWhiteListManager) === null || _this$_audioDeviceWhi4 === void 0 || _this$_audioDeviceWhi4.release();
166
+ this._audioDeviceWhiteListManager = null;
171
167
  this.deviceProvider.removeObserver(this._audioDeviceObserver);
172
168
  }
173
169
  }]);
@@ -62,7 +62,8 @@ var DeviceSettingsView = exports.DeviceSettingsView = (0, _mobxReact.observer)(f
62
62
  dialogConfig = _useContext.dialogConfig,
63
63
  setDialogConfig = _useContext.setDialogConfig,
64
64
  setSettingVideoOpened = _useContext.setSettingVideoOpened,
65
- isHiddenMeetingTab = _useContext.isHiddenMeetingTab;
65
+ isHiddenMeetingTab = _useContext.isHiddenMeetingTab,
66
+ isMainRoom = _useContext.isMainRoom;
66
67
  var t = (0, _i18n.useI18n)();
67
68
  var ns = (0, _useNamespace.useNamespace)('device-settings');
68
69
  var getListItemCls = function getListItemCls(tabKey) {
@@ -108,7 +109,7 @@ var DeviceSettingsView = exports.DeviceSettingsView = (0, _mobxReact.observer)(f
108
109
  color: 'storage',
109
110
  icon: _type.FcrIconType.FCR_MOBILE_SUBTITIES_ON,
110
111
  label: t('fmt_ai_subtitles_setting_label_caption_transcripts'),
111
- isHidden: isHiddenMeetingTab
112
+ isHidden: isHiddenMeetingTab || !isMainRoom
112
113
  }, {
113
114
  tab: _type2.DeviceSettingTab.STATE,
114
115
  color: 'blue',