fcr-ui-scene 3.7.3 → 3.7.4-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/creator.d.ts +2 -0
- package/lib/creator.js +14 -0
- package/lib/fragments/annotation/libs.d.ts +7 -6
- package/lib/fragments/annotation/libs.js +9 -8
- package/lib/fragments/whiteboard/store.js +13 -8
- package/lib/global.css +6 -0
- package/lib/modules/action-bar/components/screen-share/submenu.js +2 -2
- package/lib/modules/action-bar/index.d.ts +2 -0
- package/lib/modules/action-bar/index.js +2 -1
- package/lib/modules/action-bar/store.d.ts +6 -2
- package/lib/modules/action-bar/store.js +56 -93
- package/lib/modules/annotation/annotation-toolbar-store.js +2 -2
- package/lib/modules/annotation/store.js +12 -14
- package/lib/modules/audio-stream/index.js +1 -2
- package/lib/modules/chat/components/chat-select/index.js +3 -0
- package/lib/modules/components/device-control/store.js +2 -2
- package/lib/modules/components/leave-meeting/index.js +4 -1
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.d.ts +6 -4
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +77 -41
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player-with-zoom.d.ts +3 -3
- package/lib/modules/components/member-window/components/video-player/index.d.ts +3 -3
- package/lib/modules/components/member-window/types.d.ts +3 -3
- package/lib/modules/control-bar/store.d.ts +10 -8
- package/lib/modules/control-bar/store.js +47 -15
- package/lib/modules/control-bar/view.js +27 -13
- package/lib/modules/device-pretest/store.js +4 -2
- package/lib/modules/dialog/components/dialog-container/component/body.js +3 -24
- package/lib/modules/dialog/components/dialog-container/index.d.ts +4 -0
- package/lib/modules/dialog/components/dialog-container/index.js +67 -44
- package/lib/modules/dialog/components/normal-window/index.js +4 -0
- package/lib/modules/dialog/dialogs/control-bar/index.js +9 -32
- package/lib/modules/dialog/dialogs/sub-window/index.js +4 -0
- package/lib/modules/dialog/dialogs/video-window/index.js +28 -23
- package/lib/modules/dialog/hooks/useElectron.js +4 -1
- package/lib/modules/dialog/level-config.js +1 -1
- package/lib/modules/dialog/store.d.ts +4 -3
- package/lib/modules/dialog/store.js +14 -10
- package/lib/modules/event-confirm/components/window/index.d.ts +5 -2
- package/lib/modules/event-confirm/components/window/index.js +38 -14
- package/lib/modules/event-confirm/index.css +0 -2
- package/lib/modules/event-confirm/store.d.ts +10 -5
- package/lib/modules/event-confirm/store.js +62 -13
- package/lib/modules/event-confirm/view.js +9 -7
- package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +1 -2
- package/lib/modules/interpreter/store.js +11 -13
- package/lib/modules/layout/components/CommonVideoRenderer.js +5 -5
- package/lib/modules/layout/store.js +8 -22
- package/lib/modules/participant/member-list-data-source.js +3 -5
- package/lib/modules/participant/store.js +43 -43
- package/lib/modules/secondary-window/index.d.ts +2 -1
- package/lib/modules/secondary-window/index.js +5 -0
- package/lib/modules/secondary-window/type.d.ts +13 -9
- package/lib/modules/secondary-window/view.js +12 -12
- package/lib/modules/setting/audio-settings/audio-settings.js +4 -2
- package/lib/modules/setting/config.d.ts +4 -0
- package/lib/modules/setting/config.js +6 -3
- package/lib/modules/setting/store.d.ts +8 -3
- package/lib/modules/setting/store.js +104 -74
- package/lib/modules/setting/view.js +3 -2
- package/lib/modules/share-screen/components/selection/index.js +6 -8
- package/lib/modules/share-screen/store.d.ts +9 -10
- package/lib/modules/share-screen/store.js +65 -90
- package/lib/modules/share-screen/types.d.ts +7 -8
- package/lib/modules/video-window/components/members/index.js +3 -3
- package/lib/modules/video-window/store.js +3 -3
- package/lib/modules/whiteboard/components/control-bar/store.d.ts +3 -0
- package/lib/modules/whiteboard/components/control-bar/store.js +20 -11
- package/lib/modules/whiteboard/components/toolbar/store.js +2 -2
- package/lib/modules/whiteboard/index.d.ts +10 -4
- package/lib/modules/whiteboard/index.js +158 -124
- package/lib/plugins/module-dev-plugin.js +4 -0
- package/lib/providers/annotation-provider.js +3 -3
- package/lib/providers/device-privilege-provider.js +13 -12
- package/lib/providers/device-provider.d.ts +37 -31
- package/lib/providers/device-provider.js +692 -746
- package/lib/providers/device-stream-provider.js +4 -4
- package/lib/providers/interpreter-provider.js +7 -9
- package/lib/providers/multi-display-provider.d.ts +8 -3
- package/lib/providers/multi-display-provider.js +18 -6
- package/lib/providers/privilege-provider.d.ts +3 -11
- package/lib/providers/privilege-provider.js +2 -5
- package/lib/providers/renderer-provider.d.ts +3 -3
- package/lib/providers/renderer-provider.js +20 -32
- package/lib/providers/room-provider.js +14 -15
- package/lib/providers/screen-share-provider.d.ts +12 -10
- package/lib/providers/screen-share-provider.js +79 -59
- package/lib/providers/sharing-provider.js +7 -0
- package/lib/providers/whiteboard-provider.js +1 -0
- package/lib/scenes/main-scene.js +15 -9
- package/lib/schema.d.ts +3 -3
- package/lib/schema.js +1 -1
- package/lib/shared-data-source/confirm-data.d.ts +19 -0
- package/lib/shared-data-source/confirm-data.js +119 -15
- package/lib/shared-data-source/screen-share-data.d.ts +29 -28
- package/lib/shared-data-source/screen-share-data.js +14 -8
- package/lib/shared-data-source/setting.js +2 -2
- package/lib/shared-data-source/whiteboard-data.d.ts +7 -5
- package/lib/shared-data-source/whiteboard-data.js +9 -8
- package/lib/ui-scene.d.ts +2 -0
- package/lib/ui-scene.js +77 -21
- package/lib/utilities/constant.d.ts +5 -0
- package/lib/utilities/constant.js +7 -2
- package/lib/utilities/default-config.d.ts +4 -0
- package/lib/utilities/default-config.js +8 -4
- package/lib/utilities/dialog-utils.d.ts +3 -2
- package/lib/utilities/dialog-utils.js +33 -14
- package/lib/utilities/package-info.d.ts +3 -0
- package/lib/utilities/package-info.js +15 -0
- package/lib/waiting-room-control-manager.js +6 -6
- package/package.json +6 -6
- package/public/index.html +5 -0
|
@@ -61,7 +61,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
61
61
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
62
62
|
var _decorator = require("agora-foundation/lib/decorator");
|
|
63
63
|
var _mobx = require("mobx");
|
|
64
|
-
var _type = require("
|
|
64
|
+
var _type = require("fcr-core/lib/type");
|
|
65
65
|
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
66
66
|
var _rendererEvent = require("../utilities/renderer-event");
|
|
67
67
|
var _type2 = require("fcr-core/lib/room-control/type");
|
|
@@ -103,7 +103,7 @@ var FcrUIDeviceStreamProviderImpl = exports.FcrUIDeviceStreamProviderImpl = /*#_
|
|
|
103
103
|
onStreamsAdded: function onStreamsAdded(_, events) {
|
|
104
104
|
var _events$find;
|
|
105
105
|
var localCameraStream = (_events$find = events.find(function (event) {
|
|
106
|
-
return event.modifiedStream.owner.userId === _this._localUser.userId && event.modifiedStream.videoSourceType === _type.
|
|
106
|
+
return event.modifiedStream.owner.userId === _this._localUser.userId && event.modifiedStream.videoSourceType === _type.FcrVideoSourceType.CAMERA;
|
|
107
107
|
})) === null || _events$find === void 0 ? void 0 : _events$find.modifiedStream;
|
|
108
108
|
if (localCameraStream) {
|
|
109
109
|
_this._bindLocalAudioStream();
|
|
@@ -112,7 +112,7 @@ var FcrUIDeviceStreamProviderImpl = exports.FcrUIDeviceStreamProviderImpl = /*#_
|
|
|
112
112
|
},
|
|
113
113
|
onStreamsUpdated: function onStreamsUpdated(_, events) {
|
|
114
114
|
var localCamera = events.find(function (event) {
|
|
115
|
-
return event.modifiedStream.owner.userId === _this._localUser.userId && event.modifiedStream.videoSourceType === _type.
|
|
115
|
+
return event.modifiedStream.owner.userId === _this._localUser.userId && event.modifiedStream.videoSourceType === _type.FcrVideoSourceType.CAMERA;
|
|
116
116
|
});
|
|
117
117
|
var localCameraStream = localCamera === null || localCamera === void 0 ? void 0 : localCamera.modifiedStream;
|
|
118
118
|
if (localCameraStream) {
|
|
@@ -179,7 +179,7 @@ var FcrUIDeviceStreamProviderImpl = exports.FcrUIDeviceStreamProviderImpl = /*#_
|
|
|
179
179
|
get: function get() {
|
|
180
180
|
var localStreams = this._roomControl.getStreamControl().getStreamsByUserId(this._localUser.userId);
|
|
181
181
|
return localStreams.find(function (stream) {
|
|
182
|
-
return stream.videoSourceType === _type.
|
|
182
|
+
return stream.videoSourceType === _type.FcrVideoSourceType.CAMERA;
|
|
183
183
|
});
|
|
184
184
|
}
|
|
185
185
|
}, {
|
|
@@ -36,9 +36,7 @@ var _base = require("../base");
|
|
|
36
36
|
var _fcrCore = require("fcr-core");
|
|
37
37
|
var _interpreter = require("../shared-data-source/interpreter");
|
|
38
38
|
var _type = require("../modules/interpreter/type");
|
|
39
|
-
var
|
|
40
|
-
var _type2 = require("agora-rte-sdk/lib/type");
|
|
41
|
-
var _type3 = require("fcr-core/lib/type");
|
|
39
|
+
var _type2 = require("fcr-core/lib/type");
|
|
42
40
|
var _utils = require("../modules/interpreter/utils");
|
|
43
41
|
var _constant = require("../utilities/constant");
|
|
44
42
|
var _enums = require("../modules/action-bar/enums");
|
|
@@ -49,18 +47,18 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
49
47
|
var getRoomJoinOptions = function getRoomJoinOptions(localUser) {
|
|
50
48
|
var roomJoinOptions = {
|
|
51
49
|
userName: localUser.userName,
|
|
52
|
-
userRole:
|
|
50
|
+
userRole: _type2.FcrUserRole.PARTICIPANT,
|
|
53
51
|
roomToken: '',
|
|
54
52
|
streamLatency: _fcrCore.FcrStreamLatencyLevel.ULTRA_LOW,
|
|
55
53
|
createStreamConfigs: [{
|
|
56
|
-
videoSourceState:
|
|
57
|
-
audioSourceState:
|
|
54
|
+
videoSourceState: _type2.FcrMediaSourceState.CLOSE,
|
|
55
|
+
audioSourceState: _type2.FcrMediaSourceState.CLOSE,
|
|
58
56
|
videoSourceId: '',
|
|
59
57
|
audioSourceId: '',
|
|
60
58
|
streamName: 'default',
|
|
61
|
-
streamType:
|
|
62
|
-
videoSourceType: _type2.
|
|
63
|
-
audioSourceType: _type2.
|
|
59
|
+
streamType: _type2.FcrStreamType.NONE,
|
|
60
|
+
videoSourceType: _type2.FcrVideoSourceType.CAMERA,
|
|
61
|
+
audioSourceType: _type2.FcrAudioSourceType.MICROPHONE
|
|
64
62
|
}]
|
|
65
63
|
};
|
|
66
64
|
return roomJoinOptions;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { FcrUIDisplayContentDistribution, FcrUIDisplayDistributionContentType, FcrUIDisplayState, FcrUIMultiDisplayObserver } from '../modules/secondary-window/type';
|
|
1
|
+
import { FcrUIDisplayContentDistribution, FcrUIDisplayDistributionContentType, FcrUIDisplayState, FcrUIMainWindowRenderer, FcrUIMultiDisplayObserver } from '../modules/secondary-window/type';
|
|
2
2
|
import { FcrUIMemberSharedDataSource } from '../shared-data-source/member-data';
|
|
3
3
|
import { FcrUIScreenShareSharedDataSource } from '../shared-data-source/screen-share-data';
|
|
4
4
|
import { FcrUISharedSettingDataSource } from '../shared-data-source/setting';
|
|
5
5
|
import { FcrUIVideoWindowDataSource } from '../shared-data-source/video-window';
|
|
6
6
|
import { FcrUIEventProvider } from './event-provider';
|
|
7
7
|
import { FcrUISharingProvider } from './sharing-provider';
|
|
8
|
+
import { FcrUISharedWhiteboardDataSource } from '../shared-data-source/whiteboard-data';
|
|
8
9
|
export interface FcrUIMultiDisplayProvider {
|
|
9
10
|
get mianWindowContentType(): `${FcrUIDisplayDistributionContentType}`;
|
|
10
11
|
get secondaryWindowContentType(): `${FcrUIDisplayDistributionContentType}`;
|
|
@@ -43,6 +44,8 @@ export declare class FcrUIMultiDisplayProviderImpl implements FcrUIMultiDisplayP
|
|
|
43
44
|
private _sharedVideoWindowDataSource;
|
|
44
45
|
private _sharingProvider;
|
|
45
46
|
private _sharedScreenShareDataSource;
|
|
47
|
+
private _fcrUIMainWindowRenderer;
|
|
48
|
+
private _sharedWhiteboardDataSource;
|
|
46
49
|
private _contentDistribution;
|
|
47
50
|
private get _userId();
|
|
48
51
|
private accessor _displayCount;
|
|
@@ -56,13 +59,15 @@ export declare class FcrUIMultiDisplayProviderImpl implements FcrUIMultiDisplayP
|
|
|
56
59
|
get mianWindowContentType(): `${FcrUIDisplayDistributionContentType}`;
|
|
57
60
|
get secondaryWindowContentType(): `${FcrUIDisplayDistributionContentType}`;
|
|
58
61
|
get isLocalCameraInSecondaryWindow(): boolean;
|
|
59
|
-
constructor({ eventProvider, sharedSettingDataSource, sharedMemberDataSource, sharedVideoWindowDataSource, sharingProvider, sharedScreenShareSharedDataSource, }: {
|
|
62
|
+
constructor({ eventProvider, sharedSettingDataSource, sharedMemberDataSource, sharedVideoWindowDataSource, sharingProvider, sharedScreenShareSharedDataSource, fcrUIMainWindowRenderer, sharedWhiteboardDataSource, }: {
|
|
60
63
|
eventProvider: FcrUIEventProvider;
|
|
61
64
|
sharedSettingDataSource: FcrUISharedSettingDataSource;
|
|
62
65
|
sharedMemberDataSource: FcrUIMemberSharedDataSource;
|
|
63
66
|
sharedVideoWindowDataSource: FcrUIVideoWindowDataSource;
|
|
64
67
|
sharingProvider: FcrUISharingProvider;
|
|
65
68
|
sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource;
|
|
69
|
+
fcrUIMainWindowRenderer: FcrUIMainWindowRenderer;
|
|
70
|
+
sharedWhiteboardDataSource: FcrUISharedWhiteboardDataSource;
|
|
66
71
|
});
|
|
67
72
|
addObserver(observer: FcrUIMultiDisplayObserver): void;
|
|
68
73
|
removeObserver(observer: FcrUIMultiDisplayObserver): void;
|
|
@@ -70,7 +75,7 @@ export declare class FcrUIMultiDisplayProviderImpl implements FcrUIMultiDisplayP
|
|
|
70
75
|
moveMainWindowToIndexLeastDisplay(): void;
|
|
71
76
|
showMainWindowInIndexLeastDisplay(options?: {
|
|
72
77
|
displayOfCurrentSharingBounds?: Electron.Display;
|
|
73
|
-
|
|
78
|
+
isMaximized?: boolean;
|
|
74
79
|
}): void;
|
|
75
80
|
setMainWindowMaximize(): void;
|
|
76
81
|
private _getContentDistribution;
|
|
@@ -98,7 +98,9 @@ var FcrUIMultiDisplayProviderImpl = exports.FcrUIMultiDisplayProviderImpl = /*#_
|
|
|
98
98
|
sharedMemberDataSource = _ref.sharedMemberDataSource,
|
|
99
99
|
sharedVideoWindowDataSource = _ref.sharedVideoWindowDataSource,
|
|
100
100
|
sharingProvider = _ref.sharingProvider,
|
|
101
|
-
sharedScreenShareSharedDataSource = _ref.sharedScreenShareSharedDataSource
|
|
101
|
+
sharedScreenShareSharedDataSource = _ref.sharedScreenShareSharedDataSource,
|
|
102
|
+
fcrUIMainWindowRenderer = _ref.fcrUIMainWindowRenderer,
|
|
103
|
+
sharedWhiteboardDataSource = _ref.sharedWhiteboardDataSource;
|
|
102
104
|
(0, _classCallCheck2["default"])(this, FcrUIMultiDisplayProviderImpl);
|
|
103
105
|
(0, _defineProperty2["default"])(this, "_logger", (_initProto(this), (0, _logger.createLogger)({
|
|
104
106
|
prefix: 'FcrUIMultiDisplayProvider'
|
|
@@ -135,6 +137,8 @@ var FcrUIMultiDisplayProviderImpl = exports.FcrUIMultiDisplayProviderImpl = /*#_
|
|
|
135
137
|
this._sharedVideoWindowDataSource = sharedVideoWindowDataSource;
|
|
136
138
|
this._sharingProvider = sharingProvider;
|
|
137
139
|
this._sharedScreenShareDataSource = sharedScreenShareSharedDataSource;
|
|
140
|
+
this._fcrUIMainWindowRenderer = fcrUIMainWindowRenderer;
|
|
141
|
+
this._sharedWhiteboardDataSource = sharedWhiteboardDataSource;
|
|
138
142
|
if (this._isElectron) {
|
|
139
143
|
window.runtime.screen.addListener('display-added', this._handleDisplayCountUpdated);
|
|
140
144
|
window.runtime.screen.addListener('display-removed', this._handleDisplayCountUpdated);
|
|
@@ -232,6 +236,7 @@ var FcrUIMultiDisplayProviderImpl = exports.FcrUIMultiDisplayProviderImpl = /*#_
|
|
|
232
236
|
window.runtime.screen.removeListener('display-added', this._handleDisplayCountUpdated);
|
|
233
237
|
window.runtime.screen.removeListener('display-removed', this._handleDisplayCountUpdated);
|
|
234
238
|
}
|
|
239
|
+
this._fcrUIMainWindowRenderer.removeAllObservers();
|
|
235
240
|
this._observers.removeAllObservers();
|
|
236
241
|
this._disposers.forEach(function (disposer) {
|
|
237
242
|
return disposer();
|
|
@@ -258,7 +263,7 @@ var FcrUIMultiDisplayProviderImpl = exports.FcrUIMultiDisplayProviderImpl = /*#_
|
|
|
258
263
|
var isMaximized = browserWindow.isMaximized();
|
|
259
264
|
this.showMainWindowInIndexLeastDisplay({
|
|
260
265
|
displayOfCurrentSharingBounds: displayOfCurrentSharingBounds,
|
|
261
|
-
|
|
266
|
+
isMaximized: isMaximized
|
|
262
267
|
});
|
|
263
268
|
}
|
|
264
269
|
}, {
|
|
@@ -266,8 +271,8 @@ var FcrUIMultiDisplayProviderImpl = exports.FcrUIMultiDisplayProviderImpl = /*#_
|
|
|
266
271
|
value: function showMainWindowInIndexLeastDisplay() {
|
|
267
272
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
268
273
|
var displayOfCurrentSharingBounds = options.displayOfCurrentSharingBounds;
|
|
269
|
-
var _options$
|
|
270
|
-
|
|
274
|
+
var _options$isMaximized = options.isMaximized,
|
|
275
|
+
isMaximized = _options$isMaximized === void 0 ? false : _options$isMaximized;
|
|
271
276
|
if (!this.isActive) {
|
|
272
277
|
this._logger.warn('show: Secondary window mode is not enabled, cannot show main window in least display.');
|
|
273
278
|
return;
|
|
@@ -297,10 +302,11 @@ var FcrUIMultiDisplayProviderImpl = exports.FcrUIMultiDisplayProviderImpl = /*#_
|
|
|
297
302
|
x: x + Math.floor(width / 2 - mainWindowWidth / 2),
|
|
298
303
|
y: y + Math.floor(height / 2 - mainWindowHeight / 2)
|
|
299
304
|
};
|
|
305
|
+
isMaximized && browserWindow.unmaximize();
|
|
300
306
|
browserWindow.setBounds(bounds);
|
|
301
|
-
if (
|
|
307
|
+
if (isMaximized) {
|
|
302
308
|
browserWindow.maximize();
|
|
303
|
-
browserWindow.focus();
|
|
309
|
+
// browserWindow.focus();
|
|
304
310
|
} else {
|
|
305
311
|
browserWindow.show();
|
|
306
312
|
}
|
|
@@ -504,6 +510,12 @@ var FcrUIMultiDisplayProviderImpl = exports.FcrUIMultiDisplayProviderImpl = /*#_
|
|
|
504
510
|
key: "_handleContentDistributionUpdated",
|
|
505
511
|
value: function _handleContentDistributionUpdated() {
|
|
506
512
|
var distribution = this._getContentDistribution();
|
|
513
|
+
if (distribution.secondaryWindow.type === 'hidden') {
|
|
514
|
+
// this._fcrUIMainWindowRenderer.notifyObservers('onSecondaryWindowHidden');
|
|
515
|
+
this._fcrUIMainWindowRenderer.removeAllObservers();
|
|
516
|
+
} else {
|
|
517
|
+
this._fcrUIMainWindowRenderer.addObserver(this._sharedWhiteboardDataSource.toolbarStateObserver);
|
|
518
|
+
}
|
|
507
519
|
this._logger.info('notify observers of content distribution update');
|
|
508
520
|
this._observers.notifyObservers('onContentDistributionUpdated', distribution);
|
|
509
521
|
}
|
|
@@ -130,9 +130,8 @@ export interface FcrUIPrivilegeProvider {
|
|
|
130
130
|
hasMutePermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
|
|
131
131
|
/**
|
|
132
132
|
* 是否有权限停止对方的屏幕共享
|
|
133
|
-
* @param targetRole 目标角色
|
|
134
133
|
*/
|
|
135
|
-
hasStopScreenSharePermission(
|
|
134
|
+
hasStopScreenSharePermission(): boolean;
|
|
136
135
|
/**
|
|
137
136
|
* 是否有权限取消静音(让目标角色可以开麦)
|
|
138
137
|
* @param targetRole 目标角色
|
|
@@ -291,11 +290,6 @@ export interface FcrUIPrivilegeProvider {
|
|
|
291
290
|
* 是否允许开启白板
|
|
292
291
|
*/
|
|
293
292
|
hasStartBoardPermission(): boolean;
|
|
294
|
-
/**
|
|
295
|
-
* 是否允许关闭指定角色的白板
|
|
296
|
-
* @param targerRole 目标角色
|
|
297
|
-
*/
|
|
298
|
-
hasCloseBoardPermission(targerRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
|
|
299
293
|
/**
|
|
300
294
|
* 是否允许在白板上书写
|
|
301
295
|
*/
|
|
@@ -385,9 +379,8 @@ export interface FcrUIPrivilegeProvider {
|
|
|
385
379
|
setAllowWaterMarkLine(isWaterMarkEnabled: boolean, type?: FcrLineType): void;
|
|
386
380
|
/**
|
|
387
381
|
* 是否有权限停止他人屏幕共享
|
|
388
|
-
* @param targetRole 目标角色
|
|
389
382
|
*/
|
|
390
|
-
hasStopScreenSharePermission(
|
|
383
|
+
hasStopScreenSharePermission(): boolean;
|
|
391
384
|
/**
|
|
392
385
|
* 将房间内所有用户静音
|
|
393
386
|
*/
|
|
@@ -508,7 +501,7 @@ export declare class FcrUIPrivilegeProviderImpl implements FcrUIPrivilegeProvide
|
|
|
508
501
|
isWaterMarkEnabled: () => boolean;
|
|
509
502
|
hasWaitingRoomPermission: (role?: FcrPrivilegeUserRole | FcrUserRole) => boolean;
|
|
510
503
|
hasMutePermission: (targetRole: FcrPrivilegeUserRole | FcrUserRole) => boolean;
|
|
511
|
-
hasStopScreenSharePermission: (
|
|
504
|
+
hasStopScreenSharePermission: () => boolean;
|
|
512
505
|
hasUnmutePermission: (targetRole: FcrPrivilegeUserRole | FcrUserRole) => boolean;
|
|
513
506
|
hasRequestStartAudioPermission: (targetRole: FcrPrivilegeUserRole | FcrUserRole) => boolean;
|
|
514
507
|
hasRequestStartVideoPermission: (targetRole: FcrPrivilegeUserRole | FcrUserRole) => boolean;
|
|
@@ -546,7 +539,6 @@ export declare class FcrUIPrivilegeProviderImpl implements FcrUIPrivilegeProvide
|
|
|
546
539
|
hasEndRoomPermission: () => boolean;
|
|
547
540
|
hasAssignHostBeforeLeavingPermission: (role: FcrPrivilegeUserRole | FcrUserRole) => boolean;
|
|
548
541
|
hasStartBoardPermission: () => boolean;
|
|
549
|
-
hasCloseBoardPermission: (targerRole: FcrPrivilegeUserRole | FcrUserRole) => boolean;
|
|
550
542
|
hasWriteBoardPermission: () => boolean;
|
|
551
543
|
hasAnnotationStartPermission: () => boolean;
|
|
552
544
|
hasAnnotationAllowWritePermission: () => boolean;
|
|
@@ -267,8 +267,8 @@ var FcrUIPrivilegeProviderImpl = exports.FcrUIPrivilegeProviderImpl = /*#__PURE_
|
|
|
267
267
|
(0, _defineProperty2["default"])(this, "hasMutePermission", function (targetRole) {
|
|
268
268
|
return _this._hasPermission(_type2.FcrPermissionAction.StreamMuteAudio, targetRole);
|
|
269
269
|
});
|
|
270
|
-
(0, _defineProperty2["default"])(this, "hasStopScreenSharePermission", function (
|
|
271
|
-
return _this._hasPermission(_type2.FcrPermissionAction.
|
|
270
|
+
(0, _defineProperty2["default"])(this, "hasStopScreenSharePermission", function () {
|
|
271
|
+
return _this._hasPermission(_type2.FcrPermissionAction.StreamEnableStartScreenShare, _type2.FcrPrivilegeUserRole.SELF);
|
|
272
272
|
});
|
|
273
273
|
(0, _defineProperty2["default"])(this, "hasUnmutePermission", function (targetRole) {
|
|
274
274
|
return _this._hasPermission(_type2.FcrPermissionAction.StreamStartAudio, targetRole);
|
|
@@ -391,9 +391,6 @@ var FcrUIPrivilegeProviderImpl = exports.FcrUIPrivilegeProviderImpl = /*#__PURE_
|
|
|
391
391
|
(0, _defineProperty2["default"])(this, "hasStartBoardPermission", function () {
|
|
392
392
|
return _this._hasPermission(_type2.FcrPermissionAction.BoardStart, _type2.FcrPrivilegeUserRole.SELF);
|
|
393
393
|
});
|
|
394
|
-
(0, _defineProperty2["default"])(this, "hasCloseBoardPermission", function (targerRole) {
|
|
395
|
-
return _this._hasPermission(_type2.FcrPermissionAction.BoardClose, targerRole);
|
|
396
|
-
});
|
|
397
394
|
(0, _defineProperty2["default"])(this, "hasWriteBoardPermission", function () {
|
|
398
395
|
return _this._hasPermission(_type2.FcrPermissionAction.BoardWrite, _type2.FcrPrivilegeUserRole.SELF);
|
|
399
396
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FcrVideoStreamType } from 'fcr-core/lib/type';
|
|
2
2
|
import { FcrStreamControl } from 'fcr-core';
|
|
3
3
|
import { FcrVideoRenderConfig } from 'fcr-core/lib/type';
|
|
4
4
|
import { FcrUIDeviceProvider } from './device-provider';
|
|
@@ -12,7 +12,7 @@ export interface FcrUIRemoteVideoRenderProvider {
|
|
|
12
12
|
* @param config
|
|
13
13
|
* @param el
|
|
14
14
|
*/
|
|
15
|
-
startRenderRemoteVideo(streamId: string, streamType:
|
|
15
|
+
startRenderRemoteVideo(streamId: string, streamType: FcrVideoStreamType, config: FcrVideoRenderConfig, el: HTMLElement): void;
|
|
16
16
|
/**
|
|
17
17
|
* 停止渲染远端视频流
|
|
18
18
|
* @param streamId
|
|
@@ -70,7 +70,7 @@ export declare class FcrUIRemoteVideoRenderProviderImpl implements FcrUIRemoteVi
|
|
|
70
70
|
private accessor _firstFrameState;
|
|
71
71
|
constructor(_streamControl: FcrStreamControl);
|
|
72
72
|
release(): void;
|
|
73
|
-
startRenderRemoteVideo(streamId: string, streamType:
|
|
73
|
+
startRenderRemoteVideo(streamId: string, streamType: FcrVideoStreamType, config: FcrVideoRenderConfig, el: HTMLElement): void;
|
|
74
74
|
stopRenderRemoteVideo(streamId: string, el: HTMLElement): void;
|
|
75
75
|
isStreamFirstFrameRendered: (streamId: string) => boolean;
|
|
76
76
|
}
|
|
@@ -165,33 +165,18 @@ var FcrUILocalVideoRenderProviderImpl = exports.FcrUILocalVideoRenderProviderImp
|
|
|
165
165
|
onCameraChanged: function onCameraChanged() {
|
|
166
166
|
if (_this2._deviceProvider.cameraEnabled) {
|
|
167
167
|
_this2._viewsAndConfigs.forEach(function (config, el) {
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
168
|
+
if (_this2._deviceProvider.cameraTrack) {
|
|
169
|
+
var _config$isMirror, _config$renderMode;
|
|
170
|
+
_this2._deviceProvider.cameraTrack.startPreview({
|
|
171
|
+
isMirror: (_config$isMirror = config.isMirror) !== null && _config$isMirror !== void 0 ? _config$isMirror : false,
|
|
172
|
+
renderMode: (_config$renderMode = config.renderMode) !== null && _config$renderMode !== void 0 ? _config$renderMode : _fcrCore.FcrVideoRenderMode.FIT
|
|
173
|
+
}, el);
|
|
174
|
+
}
|
|
173
175
|
});
|
|
174
176
|
}
|
|
175
177
|
}
|
|
176
178
|
};
|
|
177
179
|
this._deviceProvider.addObserver(this._deviceObserver);
|
|
178
|
-
this._disposers.push((0, _mobx.reaction)(function () {
|
|
179
|
-
return _this2._deviceProvider.cameraEnabled;
|
|
180
|
-
}, function (enabled) {
|
|
181
|
-
if (enabled) {
|
|
182
|
-
_this2._viewsAndConfigs.forEach(function (config, el) {
|
|
183
|
-
var _config$isMirror2, _config$renderMode2;
|
|
184
|
-
_this2._deviceProvider.cameraTrack.startPreview({
|
|
185
|
-
isMirror: (_config$isMirror2 = config.isMirror) !== null && _config$isMirror2 !== void 0 ? _config$isMirror2 : false,
|
|
186
|
-
renderMode: (_config$renderMode2 = config.renderMode) !== null && _config$renderMode2 !== void 0 ? _config$renderMode2 : _fcrCore.FcrVideoRenderMode.FIT
|
|
187
|
-
}, el);
|
|
188
|
-
});
|
|
189
|
-
} else {
|
|
190
|
-
_this2._viewsAndConfigs.forEach(function (_, el) {
|
|
191
|
-
_this2._deviceProvider.cameraTrack.stopPreview(el);
|
|
192
|
-
});
|
|
193
|
-
}
|
|
194
|
-
}));
|
|
195
180
|
}
|
|
196
181
|
return (0, _createClass2["default"])(FcrUILocalVideoRenderProviderImpl, [{
|
|
197
182
|
key: "cameraEnabled",
|
|
@@ -211,30 +196,33 @@ var FcrUILocalVideoRenderProviderImpl = exports.FcrUILocalVideoRenderProviderImp
|
|
|
211
196
|
}, {
|
|
212
197
|
key: "startCameraPreview",
|
|
213
198
|
value: function startCameraPreview(el, config) {
|
|
214
|
-
var _config$isMirror3, _config$renderMode3;
|
|
215
199
|
this._viewsAndConfigs.set(el, config);
|
|
216
|
-
this._deviceProvider.cameraTrack
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
200
|
+
if (this._deviceProvider.cameraTrack) {
|
|
201
|
+
var _config$isMirror2, _config$renderMode2;
|
|
202
|
+
this._deviceProvider.cameraTrack.startPreview({
|
|
203
|
+
isMirror: (_config$isMirror2 = config.isMirror) !== null && _config$isMirror2 !== void 0 ? _config$isMirror2 : false,
|
|
204
|
+
renderMode: (_config$renderMode2 = config.renderMode) !== null && _config$renderMode2 !== void 0 ? _config$renderMode2 : _fcrCore.FcrVideoRenderMode.FIT
|
|
205
|
+
}, el);
|
|
206
|
+
}
|
|
220
207
|
this.logger.info('current count of render views: ', this._viewsAndConfigs.size);
|
|
221
208
|
}
|
|
222
209
|
}, {
|
|
223
210
|
key: "stopCameraPreview",
|
|
224
211
|
value: function stopCameraPreview(el) {
|
|
225
212
|
this._viewsAndConfigs["delete"](el);
|
|
226
|
-
this._deviceProvider.cameraTrack
|
|
213
|
+
if (this._deviceProvider.cameraTrack) {
|
|
214
|
+
this._deviceProvider.cameraTrack.stopPreview(el);
|
|
215
|
+
}
|
|
227
216
|
this.logger.info('current count of render views: ', this._viewsAndConfigs.size);
|
|
228
217
|
}
|
|
229
218
|
}, {
|
|
230
219
|
key: "startScreenPreview",
|
|
231
220
|
value: function startScreenPreview(el, config) {
|
|
232
221
|
if (this._screenShareDataSource.screenTrack) {
|
|
233
|
-
var _config$
|
|
234
|
-
this._viewsAndConfigs.set(el, config);
|
|
222
|
+
var _config$isMirror3, _config$renderMode3;
|
|
235
223
|
this._screenShareDataSource.screenTrack.startPreview({
|
|
236
|
-
isMirror: (_config$
|
|
237
|
-
renderMode: (_config$
|
|
224
|
+
isMirror: (_config$isMirror3 = config.isMirror) !== null && _config$isMirror3 !== void 0 ? _config$isMirror3 : false,
|
|
225
|
+
renderMode: (_config$renderMode3 = config.renderMode) !== null && _config$renderMode3 !== void 0 ? _config$renderMode3 : _fcrCore.FcrVideoRenderMode.FIT
|
|
238
226
|
}, el);
|
|
239
227
|
}
|
|
240
228
|
}
|
|
@@ -72,16 +72,14 @@ var _type = require("fcr-core/lib/room-control/type");
|
|
|
72
72
|
var _type2 = require("fcr-core/lib/room-control/privilege-control/type");
|
|
73
73
|
var _type3 = require("fcr-core/lib/type");
|
|
74
74
|
var _observable = require("agora-foundation/lib/utilities/observable");
|
|
75
|
-
var _type4 = require("
|
|
76
|
-
var _type5 = require("../type");
|
|
77
|
-
var _type6 = require("agora-rte-sdk/lib/type");
|
|
75
|
+
var _type4 = require("../type");
|
|
78
76
|
var _constant = require("../utilities/constant");
|
|
79
77
|
var _base = require("../base");
|
|
80
78
|
var _privilegeProvider = require("./privilege-provider");
|
|
81
79
|
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
82
80
|
var _mobx = require("mobx");
|
|
83
|
-
var
|
|
84
|
-
var
|
|
81
|
+
var _type5 = require("agora-ui-foundation/lib/components/icon/type");
|
|
82
|
+
var _type6 = require("../modules/whiteboard/type");
|
|
85
83
|
var _waitingRoomControlManager = _interopRequireDefault(require("../waiting-room-control-manager"));
|
|
86
84
|
var _meetingDetail = require("../utilities/meeting-detail");
|
|
87
85
|
var _decorator = require("agora-foundation/lib/decorator");
|
|
@@ -117,7 +115,7 @@ var FcrUIRoomProviderImpl = exports.FcrUIRoomProviderImpl = /*#__PURE__*/functio
|
|
|
117
115
|
},
|
|
118
116
|
onWaitingRoomControlLeft: function onWaitingRoomControlLeft() {
|
|
119
117
|
_this._observable.notifyObservers('onWaitingRoomManageCanceled');
|
|
120
|
-
_this._messageProvider.closeNotification(
|
|
118
|
+
_this._messageProvider.closeNotification(_type4.FcrUINotificationContentType.WAITING_ROOM);
|
|
121
119
|
}
|
|
122
120
|
});
|
|
123
121
|
(0, _defineProperty2["default"])(this, "_isSelfEndMeeting", false);
|
|
@@ -391,7 +389,8 @@ var FcrUIRoomProviderImpl = exports.FcrUIRoomProviderImpl = /*#__PURE__*/functio
|
|
|
391
389
|
height: 720
|
|
392
390
|
},
|
|
393
391
|
bitrate: 1200,
|
|
394
|
-
frameRate: 15
|
|
392
|
+
frameRate: 15,
|
|
393
|
+
isMirror: false
|
|
395
394
|
},
|
|
396
395
|
retryTimeout: 60
|
|
397
396
|
});
|
|
@@ -485,11 +484,11 @@ var FcrUIRoomProviderImpl = exports.FcrUIRoomProviderImpl = /*#__PURE__*/functio
|
|
|
485
484
|
var config = this._sceneConfig;
|
|
486
485
|
var streams = [{
|
|
487
486
|
streamName: 'default',
|
|
488
|
-
streamType:
|
|
489
|
-
videoSourceType:
|
|
490
|
-
audioSourceType:
|
|
491
|
-
videoSourceState:
|
|
492
|
-
audioSourceState:
|
|
487
|
+
streamType: _type3.FcrStreamType.BOTH,
|
|
488
|
+
videoSourceType: _type3.FcrVideoSourceType.CAMERA,
|
|
489
|
+
audioSourceType: _type3.FcrAudioSourceType.MICROPHONE,
|
|
490
|
+
videoSourceState: _type3.FcrMediaSourceState.CLOSE,
|
|
491
|
+
audioSourceState: _type3.FcrMediaSourceState.CLOSE
|
|
493
492
|
}];
|
|
494
493
|
if (config.userRole === _type3.FcrUserRole.ROBOT) {
|
|
495
494
|
streams = [];
|
|
@@ -574,7 +573,7 @@ var FcrUIMainRoomControlProviderImpl = exports.FcrUIMainRoomControlProviderImpl
|
|
|
574
573
|
});
|
|
575
574
|
},
|
|
576
575
|
onUserInfoUpdated: function onUserInfoUpdated(roomId, event) {
|
|
577
|
-
if (event.reason ===
|
|
576
|
+
if (event.reason === _type3.FcrUserUpdatedReason.ROLE) {
|
|
578
577
|
_this2._userMap.set(event.modifiedUser.userId, event.modifiedUser);
|
|
579
578
|
_this2._handleUserRoleChangeToast(event.modifiedUser);
|
|
580
579
|
}
|
|
@@ -585,7 +584,7 @@ var FcrUIMainRoomControlProviderImpl = exports.FcrUIMainRoomControlProviderImpl
|
|
|
585
584
|
this._eventObserver = {
|
|
586
585
|
onEvent: function onEvent(action, payload) {
|
|
587
586
|
if (action === _constant.FcrUIAction.WHITEBOARD_CHANGED) {
|
|
588
|
-
if (payload.action ===
|
|
587
|
+
if (payload.action === _type6.WhiteboardBaseEvents.SET_OWNER_USER_ID) {
|
|
589
588
|
var _mainRoomControl$getU;
|
|
590
589
|
_this2.boardOwnerUser = Object.values((_mainRoomControl$getU = _mainRoomControl.getUserControl()) === null || _mainRoomControl$getU === void 0 ? void 0 : _mainRoomControl$getU.getUsers()).find(function (u) {
|
|
591
590
|
return u.userId === payload.payload;
|
|
@@ -719,7 +718,7 @@ var FcrUIMainRoomControlProviderImpl = exports.FcrUIMainRoomControlProviderImpl
|
|
|
719
718
|
content: (0, _i18n.transI18n)('fmt_settings_tips_sharingprohibited', {
|
|
720
719
|
reason1: operator
|
|
721
720
|
}),
|
|
722
|
-
icon:
|
|
721
|
+
icon: _type5.FcrIconType.FCR_SCREENSHARING,
|
|
723
722
|
okText: (0, _i18n.transI18n)('fmt_screenshare_whiteboard_button_gotit'),
|
|
724
723
|
showCancel: false,
|
|
725
724
|
onOk: function onOk() {
|
|
@@ -2,7 +2,7 @@ import { FcrUIDeviceProvider } from './device-provider';
|
|
|
2
2
|
import { FcrUIRoomProvider } from './room-provider';
|
|
3
3
|
import { FcrScreenScenarioType } from 'fcr-core/lib/imports';
|
|
4
4
|
import { FcrScreenTrack } from 'fcr-core/lib/media-control/type';
|
|
5
|
-
import {
|
|
5
|
+
import { FcrScreenCaptureType } from 'fcr-core/lib/type';
|
|
6
6
|
import { FcrUISharingProvider } from './sharing-provider';
|
|
7
7
|
import { FcrUIScreenShareSharedDataSource } from '../shared-data-source/screen-share-data';
|
|
8
8
|
import { FcrUIEventProvider } from './event-provider';
|
|
@@ -25,7 +25,7 @@ export interface FcrUIScreenShareObserver {
|
|
|
25
25
|
* 本地屏幕替换开始
|
|
26
26
|
* @returns
|
|
27
27
|
*/
|
|
28
|
-
onScreenShareReplaceBegin?: (id: string, type:
|
|
28
|
+
onScreenShareReplaceBegin?: (id: string, type: FcrScreenCaptureType, bounds: CurrentShareBounds) => void;
|
|
29
29
|
/**
|
|
30
30
|
* 本地屏幕替换开始
|
|
31
31
|
* @returns
|
|
@@ -84,7 +84,7 @@ export interface FcrUIScreenShareProvider {
|
|
|
84
84
|
* @param isReplace - 是否替换当前已有的共享
|
|
85
85
|
* @returns 返回一个Promise,成功时解析为屏幕共享轨道对象,失败时返回null
|
|
86
86
|
*/
|
|
87
|
-
startShareScreen(id: string, type:
|
|
87
|
+
startShareScreen(id: string, type: FcrScreenCaptureType, withAudio: boolean, isReplace: boolean): Promise<FcrScreenTrack | null>;
|
|
88
88
|
/**
|
|
89
89
|
* 停止屏幕共享
|
|
90
90
|
* @param targetScreenTrack - 可选参数,要停止的屏幕共享轨道对象,默认停止当前活动的共享
|
|
@@ -130,7 +130,7 @@ export interface FcrUIScreenShareProvider {
|
|
|
130
130
|
* @param withAudio - 是否包含音频
|
|
131
131
|
* @param bounds - 共享区域的边界信息
|
|
132
132
|
*/
|
|
133
|
-
replaceScreenShare(id: string, type:
|
|
133
|
+
replaceScreenShare(id: string, type: FcrScreenCaptureType, withAudio: boolean, bounds: CurrentShareBounds): void;
|
|
134
134
|
/**
|
|
135
135
|
* 屏幕共享缩小窗口
|
|
136
136
|
*/
|
|
@@ -173,13 +173,13 @@ export declare class FcrUIScreenShareProviderImpl implements FcrUIScreenSharePro
|
|
|
173
173
|
private _privilegeProvider;
|
|
174
174
|
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
175
175
|
shareLock: boolean;
|
|
176
|
-
private _sharingControl
|
|
176
|
+
private _sharingControl;
|
|
177
177
|
private _previewDom;
|
|
178
178
|
private _prevFullScalc;
|
|
179
179
|
private _observable;
|
|
180
180
|
private _streamObserver;
|
|
181
181
|
private _screenCaptureObserver;
|
|
182
|
-
private _streamControl
|
|
182
|
+
private _streamControl;
|
|
183
183
|
private _maxScalcValue;
|
|
184
184
|
private _minScalcValue;
|
|
185
185
|
private _diffScalcValue;
|
|
@@ -194,6 +194,7 @@ export declare class FcrUIScreenShareProviderImpl implements FcrUIScreenSharePro
|
|
|
194
194
|
height: number;
|
|
195
195
|
};
|
|
196
196
|
get screenShareScenarioType(): FcrScreenScenarioType;
|
|
197
|
+
private get _currentRoomControl();
|
|
197
198
|
constructor(_deviceProvider: FcrUIDeviceProvider, _eventProvider: FcrUIEventProvider, _roomProvider: FcrUIRoomProvider, _sharingProvider: FcrUISharingProvider, _sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource, _sharedMemberDataSource: FcrUIMemberSharedDataSourceImpl, _privilegeProvider: FcrUIPrivilegeProvider);
|
|
198
199
|
setSharingInReplace(isInReplace: boolean): void;
|
|
199
200
|
zoomOut(): void;
|
|
@@ -207,15 +208,14 @@ export declare class FcrUIScreenShareProviderImpl implements FcrUIScreenSharePro
|
|
|
207
208
|
bootstrap(): void;
|
|
208
209
|
private _handleWebScreenCaptureStateUpdated;
|
|
209
210
|
private _handleScreenCaptureStateUpdated;
|
|
210
|
-
|
|
211
|
-
replaceScreenShare(id: string, type: AgoraRtcScreenCaptureType, withAudio: boolean, bounds: CurrentShareBounds): void;
|
|
211
|
+
replaceScreenShare(id: string, type: FcrScreenCaptureType, withAudio: boolean, bounds: CurrentShareBounds): void;
|
|
212
212
|
private _handleRemoteVideoStatsUpdated;
|
|
213
213
|
get localUserId(): string;
|
|
214
214
|
get shareAudioTrack(): import("fcr-core/lib/media-control/type").FcrLoopbackTrack | null;
|
|
215
215
|
get loopbackAudioSourceId(): string;
|
|
216
216
|
get currentShareId(): string;
|
|
217
217
|
get screenTrack(): FcrScreenTrack | null;
|
|
218
|
-
get currentShareStreamId(): string;
|
|
218
|
+
get currentShareStreamId(): string | undefined;
|
|
219
219
|
get currentSelectionBounds(): CurrentShareBounds;
|
|
220
220
|
setShareLock(lock: boolean): void;
|
|
221
221
|
createScreenShareWithSelectionId(videoSourceId: string, bounds: CurrentShareBounds): Promise<string>;
|
|
@@ -232,9 +232,11 @@ export declare class FcrUIScreenShareProviderImpl implements FcrUIScreenSharePro
|
|
|
232
232
|
removeObserver(observer: FcrUIScreenShareObserver): void;
|
|
233
233
|
startShareWhiteboard(): void;
|
|
234
234
|
release(): void;
|
|
235
|
-
startShareScreen(id: string, type:
|
|
235
|
+
startShareScreen(id: string, type: FcrScreenCaptureType, withAudio: boolean, isReplace: boolean): Promise<FcrScreenTrack | null>;
|
|
236
236
|
stopShareScreen(targetScreenTrack?: FcrScreenTrack | null | undefined): void;
|
|
237
237
|
stopShareScreenByExitRoom(targetScreenTrack?: FcrScreenTrack | null | undefined): void;
|
|
238
|
+
private _updateShareAudioPrivilege;
|
|
239
|
+
private _handleShareStopWithAudio;
|
|
238
240
|
private _handleShareStartWithAudio;
|
|
239
241
|
toggleScreenshareWithAudio(withAudio: boolean): void;
|
|
240
242
|
private _getExcludeWindows;
|