fcr-ui-scene 3.7.7-rc.1 → 3.7.8-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/provider-initializer.browser.js +2 -2
- package/lib/creator/provider-initializer.electron.js +2 -2
- package/lib/electron/bootstrap-sdk.js +70 -33
- package/lib/electron/hang-detection/index.d.ts +3 -0
- package/lib/electron/hang-detection/index.js +15 -0
- package/lib/electron/hang-detection/manager.d.ts +28 -0
- package/lib/electron/hang-detection/manager.js +231 -0
- package/lib/electron/hang-detection/types.d.ts +14 -0
- package/lib/electron/hang-detection/types.js +6 -0
- package/lib/electron/until.d.ts +1 -4
- package/lib/electron/until.js +9 -4
- package/lib/modules/action-bar/components/screen-share/index.electron.js +1 -1
- package/lib/modules/components/control-bar/components/switch-theme/index.js +4 -2
- package/lib/modules/components/control-bar/index.js +1 -3
- package/lib/modules/participant/store.base.js +0 -1
- package/lib/modules/share-screen/store.electron.js +9 -0
- package/lib/modules/state-bar/store.base.electron.js +6 -2
- package/lib/providers/board-share/bar-control/base.d.ts +2 -0
- package/lib/providers/board-share/bar-control/base.js +13 -3
- package/lib/providers/board-share/bar-control/electron.d.ts +1 -0
- package/lib/providers/board-share/bar-control/electron.js +15 -4
- package/lib/providers/board-share/provider.base.d.ts +1 -0
- package/lib/providers/board-share/provider.base.js +3 -1
- package/lib/providers/board-share/provider.electron.d.ts +1 -0
- package/lib/providers/board-share/provider.electron.js +8 -2
- package/lib/providers/board-share/type.d.ts +2 -0
- package/lib/providers/dialog/provider.electron.js +10 -2
- package/lib/providers/screen-share/strategy/browser.js +50 -3
- package/lib/providers/screen-share/strategy/electron.js +77 -8
- package/lib/providers/screen-share/stream-state-sync.d.ts +3 -1
- package/lib/providers/screen-share/stream-state-sync.js +133 -40
- package/package.json +5 -5
|
@@ -84,12 +84,16 @@ var StateBarElectronStoreBase = exports["default"] = /*#__PURE__*/function () {
|
|
|
84
84
|
}, {
|
|
85
85
|
key: "enterFullScreen",
|
|
86
86
|
value: function enterFullScreen() {
|
|
87
|
-
this._mainWindow.
|
|
87
|
+
if (!this._mainWindow.isFullScreen()) {
|
|
88
|
+
this._mainWindow.setFullScreen(true);
|
|
89
|
+
}
|
|
88
90
|
}
|
|
89
91
|
}, {
|
|
90
92
|
key: "exitFullScreen",
|
|
91
93
|
value: function exitFullScreen() {
|
|
92
|
-
this._mainWindow.
|
|
94
|
+
if (this._mainWindow.isFullScreen()) {
|
|
95
|
+
this._mainWindow.setFullScreen(false);
|
|
96
|
+
}
|
|
93
97
|
}
|
|
94
98
|
}, {
|
|
95
99
|
key: "addFullScreenChangeEventListener",
|
|
@@ -27,12 +27,14 @@ export declare abstract class FcrUIBoardControlShareProviderBase implements FcrU
|
|
|
27
27
|
constructor(_privilegeProvider: FcrUIPrivilegeProvider, _boardControl: FcrPrivilegedWhiteboardControl);
|
|
28
28
|
setControlEnable(enable: boolean): void;
|
|
29
29
|
setSharingUser(userInfo: FcrUserInfo): void;
|
|
30
|
+
updateSubProcessBackgroundColor(color: string): void;
|
|
30
31
|
setBackgroundColor(color: string): void;
|
|
31
32
|
setWhiteboardTool(tool: {
|
|
32
33
|
action: WhiteboardToolAction;
|
|
33
34
|
tool: FcrBoardToolType | FcrBoardShape | string | number;
|
|
34
35
|
}): void;
|
|
35
36
|
setTheme(theme: WhiteboardThemeType): void;
|
|
37
|
+
setCurrentTheme(theme: Required<WhiteboardThemeType>): void;
|
|
36
38
|
setShowLoading(show: boolean): void;
|
|
37
39
|
setCommonColors(colors: string[]): void;
|
|
38
40
|
saveDraft(): void;
|
|
@@ -62,7 +62,7 @@ var _utils = require("../../../modules/whiteboard/utils");
|
|
|
62
62
|
var _toolbar = require("../../../modules/components/toolbar");
|
|
63
63
|
var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
64
64
|
var _FcrUIBoardControlShareProviderBase;
|
|
65
|
-
var _initProto, _init__showLoading, _init_currentTheme, _init_sharingUserInfo, _init_backgroundColor, _init_hasWriteBoardPermission, _init_connectionState, _init_joinSuccess, _init_toolbarState, _setControlEnableDecs, _setSharingUserDecs, _setBackgroundColorDecs, _setWhiteboardToolDecs, _setThemeDecs, _setShowLoadingDecs, _setCommonColorsDecs, _setProgressDecs, _setJoinSuccessDecs, _handleDraftSavedDecs, _ref;
|
|
65
|
+
var _initProto, _init__showLoading, _init_currentTheme, _init_sharingUserInfo, _init_backgroundColor, _init_hasWriteBoardPermission, _init_connectionState, _init_joinSuccess, _init_toolbarState, _setControlEnableDecs, _setSharingUserDecs, _setBackgroundColorDecs, _setWhiteboardToolDecs, _setThemeDecs, _setCurrentThemeDecs, _setShowLoadingDecs, _setCommonColorsDecs, _setProgressDecs, _setJoinSuccessDecs, _handleDraftSavedDecs, _ref;
|
|
66
66
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
67
67
|
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
|
68
68
|
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
|
@@ -81,7 +81,7 @@ var _E = /*#__PURE__*/new WeakMap();
|
|
|
81
81
|
var _F = /*#__PURE__*/new WeakMap();
|
|
82
82
|
var _G = /*#__PURE__*/new WeakMap();
|
|
83
83
|
var _H = /*#__PURE__*/new WeakMap();
|
|
84
|
-
_ref = (_setControlEnableDecs = [_mobx.action, _mobx.action.bound], _setSharingUserDecs = [_mobx.action, _mobx.action.bound], _setBackgroundColorDecs = [_mobx.action, _mobx.action.bound], _setWhiteboardToolDecs = [_mobx.action, _mobx.action.bound], _setThemeDecs = [_mobx.action, _mobx.action.bound], _setShowLoadingDecs = [_mobx.action, _mobx.action.bound], _setCommonColorsDecs = [_mobx.action, _mobx.action.bound], _setProgressDecs = [_mobx.action, _mobx.action.bound], _setJoinSuccessDecs = [_mobx.action, _mobx.action.bound], _handleDraftSavedDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
84
|
+
_ref = (_setControlEnableDecs = [_mobx.action, _mobx.action.bound], _setSharingUserDecs = [_mobx.action, _mobx.action.bound], _setBackgroundColorDecs = [_mobx.action, _mobx.action.bound], _setWhiteboardToolDecs = [_mobx.action, _mobx.action.bound], _setThemeDecs = [_mobx.action, _mobx.action.bound], _setCurrentThemeDecs = [_mobx.action, _mobx.action.bound], _setShowLoadingDecs = [_mobx.action, _mobx.action.bound], _setCommonColorsDecs = [_mobx.action, _mobx.action.bound], _setProgressDecs = [_mobx.action, _mobx.action.bound], _setJoinSuccessDecs = [_mobx.action, _mobx.action.bound], _handleDraftSavedDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
85
85
|
var FcrUIBoardControlShareProviderBase = exports.FcrUIBoardControlShareProviderBase = /*#__PURE__*/function () {
|
|
86
86
|
function FcrUIBoardControlShareProviderBase(_privilegeProvider, _boardControl) {
|
|
87
87
|
(0, _classCallCheck2["default"])(this, FcrUIBoardControlShareProviderBase);
|
|
@@ -205,6 +205,11 @@ var FcrUIBoardControlShareProviderBase = exports.FcrUIBoardControlShareProviderB
|
|
|
205
205
|
value: function setSharingUser(userInfo) {
|
|
206
206
|
this.sharingUserInfo = userInfo;
|
|
207
207
|
}
|
|
208
|
+
}, {
|
|
209
|
+
key: "updateSubProcessBackgroundColor",
|
|
210
|
+
value: function updateSubProcessBackgroundColor(color) {
|
|
211
|
+
// do nothing in base
|
|
212
|
+
}
|
|
208
213
|
}, {
|
|
209
214
|
key: "setBackgroundColor",
|
|
210
215
|
value: function setBackgroundColor(color) {
|
|
@@ -240,6 +245,11 @@ var FcrUIBoardControlShareProviderBase = exports.FcrUIBoardControlShareProviderB
|
|
|
240
245
|
});
|
|
241
246
|
this._boardControl.setBackgroundColor(theme.background);
|
|
242
247
|
}
|
|
248
|
+
}, {
|
|
249
|
+
key: "setCurrentTheme",
|
|
250
|
+
value: function setCurrentTheme(theme) {
|
|
251
|
+
this.currentTheme = theme;
|
|
252
|
+
}
|
|
243
253
|
}, {
|
|
244
254
|
key: "setShowLoading",
|
|
245
255
|
value: function setShowLoading(show) {
|
|
@@ -301,7 +311,7 @@ var FcrUIBoardControlShareProviderBase = exports.FcrUIBoardControlShareProviderB
|
|
|
301
311
|
}]);
|
|
302
312
|
}();
|
|
303
313
|
_FcrUIBoardControlShareProviderBase = FcrUIBoardControlShareProviderBase;
|
|
304
|
-
var _applyDecs$e = _applyDecs(_FcrUIBoardControlShareProviderBase, [[_mobx.observable, 1, "_showLoading"], [_mobx.observable, 1, "currentTheme"], [_mobx.observable, 1, "sharingUserInfo"], [_mobx.observable, 1, "backgroundColor"], [_mobx.observable, 1, "hasWriteBoardPermission"], [_mobx.observable, 1, "connectionState"], [_mobx.observable, 1, "joinSuccess"], [_mobx.observable, 1, "toolbarState"], [_mobx.computed, 3, "canWriteBoard"], [_setControlEnableDecs, 18, "setControlEnable"], [_setSharingUserDecs, 18, "setSharingUser"], [_setBackgroundColorDecs, 18, "setBackgroundColor"], [_setWhiteboardToolDecs, 18, "setWhiteboardTool"], [_setThemeDecs, 18, "setTheme"], [_setShowLoadingDecs, 18, "setShowLoading"], [_setCommonColorsDecs, 18, "setCommonColors"], [_imports.bound, 2, "saveDraft"], [_setProgressDecs, 18, "setProgress"], [_setJoinSuccessDecs, 18, "setJoinSuccess"], [_imports.bound, 2, "resetWhiteboardTool"], [_handleDraftSavedDecs, 18, "_handleDraftSaved"]], []).e;
|
|
314
|
+
var _applyDecs$e = _applyDecs(_FcrUIBoardControlShareProviderBase, [[_mobx.observable, 1, "_showLoading"], [_mobx.observable, 1, "currentTheme"], [_mobx.observable, 1, "sharingUserInfo"], [_mobx.observable, 1, "backgroundColor"], [_mobx.observable, 1, "hasWriteBoardPermission"], [_mobx.observable, 1, "connectionState"], [_mobx.observable, 1, "joinSuccess"], [_mobx.observable, 1, "toolbarState"], [_mobx.computed, 3, "canWriteBoard"], [_setControlEnableDecs, 18, "setControlEnable"], [_setSharingUserDecs, 18, "setSharingUser"], [_setBackgroundColorDecs, 18, "setBackgroundColor"], [_setWhiteboardToolDecs, 18, "setWhiteboardTool"], [_setThemeDecs, 18, "setTheme"], [_setCurrentThemeDecs, 18, "setCurrentTheme"], [_setShowLoadingDecs, 18, "setShowLoading"], [_setCommonColorsDecs, 18, "setCommonColors"], [_imports.bound, 2, "saveDraft"], [_setProgressDecs, 18, "setProgress"], [_setJoinSuccessDecs, 18, "setJoinSuccess"], [_imports.bound, 2, "resetWhiteboardTool"], [_handleDraftSavedDecs, 18, "_handleDraftSaved"]], []).e;
|
|
305
315
|
var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs$e, 9);
|
|
306
316
|
_init__showLoading = _applyDecs$e2[0];
|
|
307
317
|
_init_currentTheme = _applyDecs$e2[1];
|
|
@@ -15,6 +15,7 @@ export declare class FcrUIBoardControlShareProviderImpl extends FcrUIBoardContro
|
|
|
15
15
|
constructor(privilegeProvider: FcrUIPrivilegeProvider, boardControl: FcrPrivilegedWhiteboardControl, _fcrUIMainWindowRenderer: FcrUIMainWindowRenderer);
|
|
16
16
|
setControlEnable(enable: boolean): void;
|
|
17
17
|
setSharingUser(userInfo: FcrUserInfo): void;
|
|
18
|
+
updateSubProcessBackgroundColor(color: string): void;
|
|
18
19
|
setBackgroundColor(color: string): void;
|
|
19
20
|
setWhiteboardTool(tool: {
|
|
20
21
|
action: WhiteboardToolAction;
|
|
@@ -61,7 +61,7 @@ var _type = require("fcr-core/lib/type");
|
|
|
61
61
|
var _mobx = require("mobx");
|
|
62
62
|
var _base = require("./base");
|
|
63
63
|
var _FcrUIBoardControlShareProviderImpl;
|
|
64
|
-
var _initProto, _setControlEnableDecs, _setSharingUserDecs, _setBackgroundColorDecs, _setWhiteboardToolDecs, _setThemeDecs, _setIsDualDisplayModeDecs, _handleSubProcessStateUpdatedDecs, _ref;
|
|
64
|
+
var _initProto, _setControlEnableDecs, _setSharingUserDecs, _updateSubProcessBackgroundColorDecs, _setBackgroundColorDecs, _setWhiteboardToolDecs, _setThemeDecs, _setIsDualDisplayModeDecs, _handleSubProcessStateUpdatedDecs, _ref;
|
|
65
65
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
66
66
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
67
67
|
function _superPropGet(t, o, e, r) { var p = (0, _get2["default"])((0, _getPrototypeOf2["default"])(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
|
|
@@ -70,7 +70,7 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
|
|
|
70
70
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
71
71
|
function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
|
|
72
72
|
function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
|
|
73
|
-
_ref = (_setControlEnableDecs = [_mobx.action, _mobx.action.bound], _setSharingUserDecs = [_mobx.action, _mobx.action.bound], _setBackgroundColorDecs = [_mobx.action, _mobx.action.bound], _setWhiteboardToolDecs = [_mobx.action, _mobx.action.bound], _setThemeDecs = [_mobx.action, _mobx.action.bound], _setIsDualDisplayModeDecs = [_mobx.action, _mobx.action.bound], _handleSubProcessStateUpdatedDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
73
|
+
_ref = (_setControlEnableDecs = [_mobx.action, _mobx.action.bound], _setSharingUserDecs = [_mobx.action, _mobx.action.bound], _updateSubProcessBackgroundColorDecs = [_mobx.action, _mobx.action.bound], _setBackgroundColorDecs = [_mobx.action, _mobx.action.bound], _setWhiteboardToolDecs = [_mobx.action, _mobx.action.bound], _setThemeDecs = [_mobx.action, _mobx.action.bound], _setIsDualDisplayModeDecs = [_mobx.action, _mobx.action.bound], _handleSubProcessStateUpdatedDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
74
74
|
var FcrUIBoardControlShareProviderImpl = exports.FcrUIBoardControlShareProviderImpl = /*#__PURE__*/function (_FcrUIBoardControlSha) {
|
|
75
75
|
function FcrUIBoardControlShareProviderImpl(privilegeProvider, boardControl, _fcrUIMainWindowRenderer) {
|
|
76
76
|
var _this;
|
|
@@ -110,6 +110,13 @@ var FcrUIBoardControlShareProviderImpl = exports.FcrUIBoardControlShareProviderI
|
|
|
110
110
|
value: function setSharingUser(userInfo) {
|
|
111
111
|
this.sharingUserInfo = userInfo;
|
|
112
112
|
}
|
|
113
|
+
}, {
|
|
114
|
+
key: "updateSubProcessBackgroundColor",
|
|
115
|
+
value: function updateSubProcessBackgroundColor(color) {
|
|
116
|
+
if (this._isDualDisplayMode) {
|
|
117
|
+
this._fcrUIMainWindowRenderer.notifyObservers('onBackgroundColorUpdated', color);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
113
120
|
}, {
|
|
114
121
|
key: "setBackgroundColor",
|
|
115
122
|
value: function setBackgroundColor(color) {
|
|
@@ -184,11 +191,15 @@ var FcrUIBoardControlShareProviderImpl = exports.FcrUIBoardControlShareProviderI
|
|
|
184
191
|
}, {
|
|
185
192
|
key: "_handleSubProcessStateUpdated",
|
|
186
193
|
value: function _handleSubProcessStateUpdated(state) {
|
|
194
|
+
var _this3 = this;
|
|
187
195
|
this.connectionState = state;
|
|
188
196
|
if (state === _type.FcrConnectionState.CONNECTED) {
|
|
189
197
|
_superPropGet(FcrUIBoardControlShareProviderImpl, "setShowLoading", this, 3)([false]);
|
|
190
198
|
_superPropGet(FcrUIBoardControlShareProviderImpl, "setJoinSuccess", this, 3)([true]);
|
|
191
|
-
setTimeout(
|
|
199
|
+
setTimeout(function () {
|
|
200
|
+
_this3.updateSubProcessBackgroundColor(_this3.currentTheme.background);
|
|
201
|
+
_this3.resetWhiteboardTool();
|
|
202
|
+
});
|
|
192
203
|
}
|
|
193
204
|
if (state === _type.FcrConnectionState.CONNECTING || state === _type.FcrConnectionState.DISCONNECTED) {
|
|
194
205
|
_superPropGet(FcrUIBoardControlShareProviderImpl, "setShowLoading", this, 3)([true]);
|
|
@@ -199,7 +210,7 @@ var FcrUIBoardControlShareProviderImpl = exports.FcrUIBoardControlShareProviderI
|
|
|
199
210
|
}]);
|
|
200
211
|
}(_base.FcrUIBoardControlShareProviderBase);
|
|
201
212
|
_FcrUIBoardControlShareProviderImpl = FcrUIBoardControlShareProviderImpl;
|
|
202
|
-
var _applyDecs$e = _applyDecs(_FcrUIBoardControlShareProviderImpl, [[_setControlEnableDecs, 18, "setControlEnable"], [_setSharingUserDecs, 18, "setSharingUser"], [_setBackgroundColorDecs, 18, "setBackgroundColor"], [_setWhiteboardToolDecs, 18, "setWhiteboardTool"], [_setThemeDecs, 18, "setTheme"], [_imports.bound, 2, "saveDraft"], [_imports.bound, 2, "inActive"], [_setIsDualDisplayModeDecs, 18, "setIsDualDisplayMode"], [_handleSubProcessStateUpdatedDecs, 18, "_handleSubProcessStateUpdated"]], [], 0, void 0, _base.FcrUIBoardControlShareProviderBase).e;
|
|
213
|
+
var _applyDecs$e = _applyDecs(_FcrUIBoardControlShareProviderImpl, [[_setControlEnableDecs, 18, "setControlEnable"], [_setSharingUserDecs, 18, "setSharingUser"], [_updateSubProcessBackgroundColorDecs, 18, "updateSubProcessBackgroundColor"], [_setBackgroundColorDecs, 18, "setBackgroundColor"], [_setWhiteboardToolDecs, 18, "setWhiteboardTool"], [_setThemeDecs, 18, "setTheme"], [_imports.bound, 2, "saveDraft"], [_imports.bound, 2, "inActive"], [_setIsDualDisplayModeDecs, 18, "setIsDualDisplayMode"], [_handleSubProcessStateUpdatedDecs, 18, "_handleSubProcessStateUpdated"]], [], 0, void 0, _base.FcrUIBoardControlShareProviderBase).e;
|
|
203
214
|
var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs$e, 1);
|
|
204
215
|
_initProto = _applyDecs$e2[0];
|
|
205
216
|
_applyDecs$e;
|
|
@@ -18,6 +18,7 @@ export declare abstract class FcrUIBoardShareProviderBase implements FcrUIBoardS
|
|
|
18
18
|
protected _boardMainWindow: FcrBoardMainWindow | undefined;
|
|
19
19
|
private _userControl;
|
|
20
20
|
private _dialogProvider;
|
|
21
|
+
private _userId;
|
|
21
22
|
private _observer;
|
|
22
23
|
private _boardObserver;
|
|
23
24
|
protected get boardMainWindow(): FcrBoardMainWindow;
|
|
@@ -116,6 +116,7 @@ var FcrUIBoardShareProviderBase = exports.FcrUIBoardShareProviderBase = /*#__PUR
|
|
|
116
116
|
this._sharingControl.addObserver(this._observer);
|
|
117
117
|
this._addLogger();
|
|
118
118
|
this.boardState = this._sharingControl.getWhiteboardState();
|
|
119
|
+
this._userId = this._userControl.getLocalUser().userId;
|
|
119
120
|
if (this.isActive) {
|
|
120
121
|
this._boardControl.open();
|
|
121
122
|
}
|
|
@@ -198,7 +199,7 @@ var FcrUIBoardShareProviderBase = exports.FcrUIBoardShareProviderBase = /*#__PUR
|
|
|
198
199
|
key: "isMyBoard",
|
|
199
200
|
get: function get() {
|
|
200
201
|
if (this.isActive) {
|
|
201
|
-
return this.ownerUser.userId === this.
|
|
202
|
+
return this.ownerUser.userId === this._userId;
|
|
202
203
|
} else {
|
|
203
204
|
throw new Error('get isMyBoard failed, no user is sharing board currently');
|
|
204
205
|
}
|
|
@@ -372,6 +373,7 @@ var FcrUIBoardShareProviderBase = exports.FcrUIBoardShareProviderBase = /*#__PUR
|
|
|
372
373
|
});
|
|
373
374
|
if (theme) {
|
|
374
375
|
this.boardBarControl.toolbarState.themeColors = theme.colors;
|
|
376
|
+
this.boardBarControl.setCurrentTheme(theme);
|
|
375
377
|
} else {
|
|
376
378
|
this.logger.warn("setBackgroundColor ".concat(color, " not match in theme"));
|
|
377
379
|
}
|
|
@@ -83,7 +83,8 @@ var FcrUIBoardShareProviderImpl = exports.FcrUIBoardShareProviderImpl = /*#__PUR
|
|
|
83
83
|
onUndoStateUpdated: _this._handleUndoStateUpdated
|
|
84
84
|
});
|
|
85
85
|
(0, _defineProperty2["default"])(_this, "_boardControlObserver", {
|
|
86
|
-
onConnectionStateUpdated: _this._handleStateUpdated
|
|
86
|
+
onConnectionStateUpdated: _this._handleStateUpdated,
|
|
87
|
+
onBackgroundColorUpdated: _this._handleBackgroundColorUpdatedForSubProcess
|
|
87
88
|
});
|
|
88
89
|
_this._objectManager = _objectManager;
|
|
89
90
|
_this._mainWindowRenderer = _mainWindowRenderer;
|
|
@@ -154,10 +155,15 @@ var FcrUIBoardShareProviderImpl = exports.FcrUIBoardShareProviderImpl = /*#__PUR
|
|
|
154
155
|
this.boardMainWindow.setStrokeColor(this._boardBarControl.currentTheme.colors[2]);
|
|
155
156
|
this.boardBarControl.resetWhiteboardTool();
|
|
156
157
|
}
|
|
158
|
+
}, {
|
|
159
|
+
key: "_handleBackgroundColorUpdatedForSubProcess",
|
|
160
|
+
value: function _handleBackgroundColorUpdatedForSubProcess(color) {
|
|
161
|
+
this._boardBarControl.updateSubProcessBackgroundColor(color);
|
|
162
|
+
}
|
|
157
163
|
}]);
|
|
158
164
|
}(_provider.FcrUIBoardShareProviderBase);
|
|
159
165
|
_FcrUIBoardShareProviderImpl = FcrUIBoardShareProviderImpl;
|
|
160
|
-
var _applyDecs$e = _applyDecs(_FcrUIBoardShareProviderImpl, [[_decorator.bound, 2, "captureScreen"], [_handleStateUpdatedDecs, 18, "_handleStateUpdated"], [_handleRedoStateUpdatedDecs, 18, "_handleRedoStateUpdated"], [_handleUndoStateUpdatedDecs, 18, "_handleUndoStateUpdated"], [_decorator.bound, 2, "_resetWhiteboardTool"]], [], 0, void 0, _provider.FcrUIBoardShareProviderBase).e;
|
|
166
|
+
var _applyDecs$e = _applyDecs(_FcrUIBoardShareProviderImpl, [[_decorator.bound, 2, "captureScreen"], [_handleStateUpdatedDecs, 18, "_handleStateUpdated"], [_handleRedoStateUpdatedDecs, 18, "_handleRedoStateUpdated"], [_handleUndoStateUpdatedDecs, 18, "_handleUndoStateUpdated"], [_decorator.bound, 2, "_resetWhiteboardTool"], [_decorator.bound, 2, "_handleBackgroundColorUpdatedForSubProcess"]], [], 0, void 0, _provider.FcrUIBoardShareProviderBase).e;
|
|
161
167
|
var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs$e, 1);
|
|
162
168
|
_initProto = _applyDecs$e2[0];
|
|
163
169
|
_applyDecs$e;
|
|
@@ -142,12 +142,14 @@ export interface FcrUIBoardBarControl {
|
|
|
142
142
|
get toolbarState(): FcrToolbarState;
|
|
143
143
|
release(): void;
|
|
144
144
|
setSharingUser: (userInfo: FcrUserInfo) => void;
|
|
145
|
+
updateSubProcessBackgroundColor: (color: string) => void;
|
|
145
146
|
setBackgroundColor: (color: string) => void;
|
|
146
147
|
setWhiteboardTool: (tool: {
|
|
147
148
|
action: WhiteboardToolAction;
|
|
148
149
|
tool: FcrBoardToolType | FcrBoardShape | string | number;
|
|
149
150
|
}) => void;
|
|
150
151
|
setTheme: (theme: WhiteboardThemeType) => void;
|
|
152
|
+
setCurrentTheme: (theme: Required<WhiteboardThemeType>) => void;
|
|
151
153
|
setControlEnable: (enable: boolean) => void;
|
|
152
154
|
setShowLoading: (show: boolean) => void;
|
|
153
155
|
setCommonColors: (colors: string[]) => void;
|
|
@@ -48,6 +48,7 @@ require("core-js/modules/es.string.includes.js");
|
|
|
48
48
|
require("core-js/modules/esnext.iterator.constructor.js");
|
|
49
49
|
require("core-js/modules/esnext.iterator.find.js");
|
|
50
50
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
51
|
+
require("core-js/modules/web.timers.js");
|
|
51
52
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
52
53
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
53
54
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
@@ -221,6 +222,7 @@ var FcrUIElectronDialogProviderImpl = exports.FcrUIElectronDialogProviderImpl =
|
|
|
221
222
|
}
|
|
222
223
|
},
|
|
223
224
|
onClosed: function onClosed() {
|
|
225
|
+
_this2.logger.warn("dialog provider openWithKeyAndId onClosed dialogKey: ".concat(dialogKey, " dialogId: ").concat(dialogId));
|
|
224
226
|
window.removeObserver(windowObserver);
|
|
225
227
|
_this2.dialogKeyMap["delete"](dialogKey);
|
|
226
228
|
_this2.dialogIdMap["delete"](dialogId);
|
|
@@ -241,9 +243,15 @@ var FcrUIElectronDialogProviderImpl = exports.FcrUIElectronDialogProviderImpl =
|
|
|
241
243
|
window.addObserver(windowObserver);
|
|
242
244
|
window.setPreventClose(true);
|
|
243
245
|
window.show(showOptions);
|
|
244
|
-
if (params
|
|
246
|
+
if (params && params.alwaysOnTop) {
|
|
245
247
|
window.setAlwaysOnTop(true, 'pop-up-menu');
|
|
246
248
|
}
|
|
249
|
+
setTimeout(function () {
|
|
250
|
+
_this2.logger.warn("dialog provider openWithKeyAndId setTimeout dialogKey: ".concat(dialogKey, " dialogId: ").concat(dialogId, ",title: ").concat(window.getTitle(), ",isVisible: ").concat(window.isVisible(), ",showOptions: ").concat((0, _imports.jsonstring)(showOptions)));
|
|
251
|
+
if (!window.isVisible() && _this2.dialogKeyMap.has(dialogKey) && _this2.dialogIdMap.has(dialogId)) {
|
|
252
|
+
window.show(showOptions);
|
|
253
|
+
}
|
|
254
|
+
}, 1000);
|
|
247
255
|
this.observable.notifyObservers('onDialogOpen', dialogKey, dialogId, params);
|
|
248
256
|
}
|
|
249
257
|
}, {
|
|
@@ -263,7 +271,7 @@ var FcrUIElectronDialogProviderImpl = exports.FcrUIElectronDialogProviderImpl =
|
|
|
263
271
|
}]);
|
|
264
272
|
}(_provider.FcrUIDialogProviderBase);
|
|
265
273
|
_FcrUIElectronDialogProviderImpl = FcrUIElectronDialogProviderImpl;
|
|
266
|
-
var _applyDecs$e = _applyDecs(_FcrUIElectronDialogProviderImpl, [[_decorator.trace, 2, "openDialog"], [_decorator.trace, 2, "openDialogWithId"], [_decorator.trace, 2, "closeDialog"], [_decorator.trace, 2, "closeDialogById"], [_decorator.trace, 2, "setSharingDisplayBounds"]], [], 0, void 0, _provider.FcrUIDialogProviderBase).e;
|
|
274
|
+
var _applyDecs$e = _applyDecs(_FcrUIElectronDialogProviderImpl, [[_decorator.trace, 2, "openDialog"], [_decorator.trace, 2, "openDialogWithId"], [_decorator.trace, 2, "closeDialog"], [_decorator.trace, 2, "closeDialogById"], [_decorator.trace, 2, "openWithKeyAndId"], [_decorator.trace, 2, "setSharingDisplayBounds"]], [], 0, void 0, _provider.FcrUIDialogProviderBase).e;
|
|
267
275
|
var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs$e, 1);
|
|
268
276
|
_initProto = _applyDecs$e2[0];
|
|
269
277
|
_applyDecs$e;
|
|
@@ -1,8 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
require("core-js/modules/es.symbol.js");
|
|
4
|
+
require("core-js/modules/es.symbol.description.js");
|
|
5
|
+
require("core-js/modules/es.symbol.to-primitive.js");
|
|
6
|
+
require("core-js/modules/es.array.is-array.js");
|
|
7
|
+
require("core-js/modules/es.array.iterator.js");
|
|
8
|
+
require("core-js/modules/es.array.push.js");
|
|
9
|
+
require("core-js/modules/es.date.to-primitive.js");
|
|
10
|
+
require("core-js/modules/es.function.bind.js");
|
|
11
|
+
require("core-js/modules/es.function.name.js");
|
|
12
|
+
require("core-js/modules/es.map.js");
|
|
13
|
+
require("core-js/modules/es.number.constructor.js");
|
|
14
|
+
require("core-js/modules/es.object.create.js");
|
|
3
15
|
require("core-js/modules/es.object.define-property.js");
|
|
16
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
4
17
|
require("core-js/modules/es.reflect.construct.js");
|
|
18
|
+
require("core-js/modules/es.string.iterator.js");
|
|
19
|
+
require("core-js/modules/esnext.function.metadata.js");
|
|
20
|
+
require("core-js/modules/esnext.map.delete-all.js");
|
|
21
|
+
require("core-js/modules/esnext.map.emplace.js");
|
|
22
|
+
require("core-js/modules/esnext.map.every.js");
|
|
23
|
+
require("core-js/modules/esnext.map.filter.js");
|
|
24
|
+
require("core-js/modules/esnext.map.find.js");
|
|
25
|
+
require("core-js/modules/esnext.map.find-key.js");
|
|
26
|
+
require("core-js/modules/esnext.map.includes.js");
|
|
27
|
+
require("core-js/modules/esnext.map.key-of.js");
|
|
28
|
+
require("core-js/modules/esnext.map.map-keys.js");
|
|
29
|
+
require("core-js/modules/esnext.map.map-values.js");
|
|
30
|
+
require("core-js/modules/esnext.map.merge.js");
|
|
31
|
+
require("core-js/modules/esnext.map.reduce.js");
|
|
32
|
+
require("core-js/modules/esnext.map.some.js");
|
|
33
|
+
require("core-js/modules/esnext.map.update.js");
|
|
34
|
+
require("core-js/modules/esnext.symbol.metadata.js");
|
|
35
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
5
36
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
37
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
38
|
Object.defineProperty(exports, "__esModule", {
|
|
7
39
|
value: true
|
|
8
40
|
});
|
|
@@ -12,6 +44,7 @@ require("core-js/modules/es.error.cause.js");
|
|
|
12
44
|
require("core-js/modules/es.error.to-string.js");
|
|
13
45
|
require("core-js/modules/es.object.to-string.js");
|
|
14
46
|
require("core-js/modules/es.promise.js");
|
|
47
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
48
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
16
49
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
17
50
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
@@ -25,16 +58,24 @@ var _type = require("./type");
|
|
|
25
58
|
var _objectManager2 = require("../../../object-manager");
|
|
26
59
|
var _type2 = require("fcr-core/lib/type");
|
|
27
60
|
var _defaultConfig = require("../../../utilities/default-config");
|
|
61
|
+
var _decorator = require("agora-foundation/lib/decorator");
|
|
62
|
+
var _FcrUIBrowserScreenShareStrategy;
|
|
63
|
+
var _initProto;
|
|
28
64
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
29
65
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
66
|
+
function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function set(e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) { return e[n]; }, (o < 2 || 4 === o) && (F = function F(e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function s(t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
|
|
67
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
68
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
69
|
+
function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
|
|
70
|
+
function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
|
|
30
71
|
var FcrUIBrowserScreenShareStrategy = exports.FcrUIBrowserScreenShareStrategy = /*#__PURE__*/function (_FcrUIScreenShareStra) {
|
|
31
72
|
function FcrUIBrowserScreenShareStrategy(_objectManager) {
|
|
32
73
|
var _this;
|
|
33
74
|
(0, _classCallCheck2["default"])(this, FcrUIBrowserScreenShareStrategy);
|
|
34
75
|
_this = _callSuper(this, FcrUIBrowserScreenShareStrategy);
|
|
35
|
-
(0, _defineProperty2["default"])(_this, "logger", (0, _logger.createLogger)({
|
|
76
|
+
(0, _defineProperty2["default"])(_this, "logger", (_initProto(_this), (0, _logger.createLogger)({
|
|
36
77
|
prefix: 'BrowserScreenShareStrategy'
|
|
37
|
-
}));
|
|
78
|
+
})));
|
|
38
79
|
(0, _defineProperty2["default"])(_this, "_screenTrack", null);
|
|
39
80
|
(0, _defineProperty2["default"])(_this, "_loopbackDeviceId", 'default');
|
|
40
81
|
(0, _defineProperty2["default"])(_this, "_isReplacing", false);
|
|
@@ -60,6 +101,7 @@ var FcrUIBrowserScreenShareStrategy = exports.FcrUIBrowserScreenShareStrategy =
|
|
|
60
101
|
}
|
|
61
102
|
}
|
|
62
103
|
};
|
|
104
|
+
_this.addObserver((0, _logger.generateLogObserver)(_this.logger, ['onScreenCaptureError', 'onScreenCaptureReplaced', 'onScreenCaptureStarted', 'onScreenCaptureStopped']));
|
|
63
105
|
return _this;
|
|
64
106
|
}
|
|
65
107
|
(0, _inherits2["default"])(FcrUIBrowserScreenShareStrategy, _FcrUIScreenShareStra);
|
|
@@ -263,4 +305,9 @@ var FcrUIBrowserScreenShareStrategy = exports.FcrUIBrowserScreenShareStrategy =
|
|
|
263
305
|
return _stopTrackAndWaitUntilSuccess;
|
|
264
306
|
}()
|
|
265
307
|
}]);
|
|
266
|
-
}(_type.FcrUIScreenShareStrategy);
|
|
308
|
+
}(_type.FcrUIScreenShareStrategy);
|
|
309
|
+
_FcrUIBrowserScreenShareStrategy = FcrUIBrowserScreenShareStrategy;
|
|
310
|
+
var _applyDecs$e = _applyDecs(_FcrUIBrowserScreenShareStrategy, [[_decorator.trace, 2, "startLoopbackCapture"], [_decorator.trace, 2, "stopLoopbackCapture"], [_decorator.trace, 2, "replaceScreenCaptureSource"], [_decorator.trace, 2, "startScreenCapture"], [_decorator.trace, 2, "stopScreenCapture"]], [], 0, void 0, _type.FcrUIScreenShareStrategy).e;
|
|
311
|
+
var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs$e, 1);
|
|
312
|
+
_initProto = _applyDecs$e2[0];
|
|
313
|
+
_applyDecs$e;
|
|
@@ -1,8 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
require("core-js/modules/es.symbol.js");
|
|
4
|
+
require("core-js/modules/es.symbol.description.js");
|
|
5
|
+
require("core-js/modules/es.symbol.to-primitive.js");
|
|
6
|
+
require("core-js/modules/es.array.is-array.js");
|
|
7
|
+
require("core-js/modules/es.array.iterator.js");
|
|
8
|
+
require("core-js/modules/es.array.push.js");
|
|
9
|
+
require("core-js/modules/es.date.to-primitive.js");
|
|
10
|
+
require("core-js/modules/es.function.bind.js");
|
|
11
|
+
require("core-js/modules/es.function.name.js");
|
|
12
|
+
require("core-js/modules/es.map.js");
|
|
13
|
+
require("core-js/modules/es.number.constructor.js");
|
|
14
|
+
require("core-js/modules/es.object.create.js");
|
|
3
15
|
require("core-js/modules/es.object.define-property.js");
|
|
16
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
4
17
|
require("core-js/modules/es.reflect.construct.js");
|
|
18
|
+
require("core-js/modules/es.string.iterator.js");
|
|
19
|
+
require("core-js/modules/esnext.function.metadata.js");
|
|
20
|
+
require("core-js/modules/esnext.map.delete-all.js");
|
|
21
|
+
require("core-js/modules/esnext.map.emplace.js");
|
|
22
|
+
require("core-js/modules/esnext.map.every.js");
|
|
23
|
+
require("core-js/modules/esnext.map.filter.js");
|
|
24
|
+
require("core-js/modules/esnext.map.find.js");
|
|
25
|
+
require("core-js/modules/esnext.map.find-key.js");
|
|
26
|
+
require("core-js/modules/esnext.map.includes.js");
|
|
27
|
+
require("core-js/modules/esnext.map.key-of.js");
|
|
28
|
+
require("core-js/modules/esnext.map.map-keys.js");
|
|
29
|
+
require("core-js/modules/esnext.map.map-values.js");
|
|
30
|
+
require("core-js/modules/esnext.map.merge.js");
|
|
31
|
+
require("core-js/modules/esnext.map.reduce.js");
|
|
32
|
+
require("core-js/modules/esnext.map.some.js");
|
|
33
|
+
require("core-js/modules/esnext.map.update.js");
|
|
34
|
+
require("core-js/modules/esnext.symbol.metadata.js");
|
|
35
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
5
36
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
37
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
38
|
Object.defineProperty(exports, "__esModule", {
|
|
7
39
|
value: true
|
|
8
40
|
});
|
|
@@ -13,6 +45,7 @@ require("core-js/modules/es.error.to-string.js");
|
|
|
13
45
|
require("core-js/modules/es.array.concat.js");
|
|
14
46
|
require("core-js/modules/es.object.to-string.js");
|
|
15
47
|
require("core-js/modules/es.promise.js");
|
|
48
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
16
49
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
17
50
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
18
51
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
@@ -24,16 +57,24 @@ var _logger = require("../../../utilities/logger");
|
|
|
24
57
|
var _type = require("./type");
|
|
25
58
|
var _objectManager2 = require("../../../object-manager");
|
|
26
59
|
var _fcrCore = require("fcr-core");
|
|
60
|
+
var _decorator = require("agora-foundation/lib/decorator");
|
|
61
|
+
var _FcrUIElectronScreenShareStrategy;
|
|
62
|
+
var _initProto;
|
|
27
63
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
28
64
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
65
|
+
function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function set(e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) { return e[n]; }, (o < 2 || 4 === o) && (F = function F(e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function s(t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
|
|
66
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
67
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
68
|
+
function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
|
|
69
|
+
function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
|
|
29
70
|
var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy = /*#__PURE__*/function (_FcrUIScreenShareStra) {
|
|
30
71
|
function FcrUIElectronScreenShareStrategy(_objectManager) {
|
|
31
72
|
var _this;
|
|
32
73
|
(0, _classCallCheck2["default"])(this, FcrUIElectronScreenShareStrategy);
|
|
33
74
|
_this = _callSuper(this, FcrUIElectronScreenShareStrategy);
|
|
34
|
-
(0, _defineProperty2["default"])(_this, "logger", (0, _logger.createLogger)({
|
|
75
|
+
(0, _defineProperty2["default"])(_this, "logger", (_initProto(_this), (0, _logger.createLogger)({
|
|
35
76
|
prefix: 'ElectronScreenShareStrategy'
|
|
36
|
-
}));
|
|
77
|
+
})));
|
|
37
78
|
(0, _defineProperty2["default"])(_this, "_screenTrack", null);
|
|
38
79
|
(0, _defineProperty2["default"])(_this, "_loopbackTrack", null);
|
|
39
80
|
(0, _defineProperty2["default"])(_this, "_isReplacing", false);
|
|
@@ -43,10 +84,16 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
43
84
|
_this._screenTrackObserver = {
|
|
44
85
|
onScreenCaptureStateUpdated: function onScreenCaptureStateUpdated(sourceId, state) {
|
|
45
86
|
if (state === _fcrCore.FcrMediaSourceState.ERROR) {
|
|
87
|
+
if (_this._screenTrack) {
|
|
88
|
+
_this._screenTrack.removeObserver(_this._screenTrackObserver);
|
|
89
|
+
}
|
|
46
90
|
_this._screenTrack = null;
|
|
47
91
|
_this.observable.notifyObservers('onScreenCaptureError', sourceId, _type.FcrUIScreenShareCaptureError.UNKNOWN);
|
|
48
92
|
}
|
|
49
93
|
if (state === _fcrCore.FcrMediaSourceState.CLOSE) {
|
|
94
|
+
if (_this._screenTrack) {
|
|
95
|
+
_this._screenTrack.removeObserver(_this._screenTrackObserver);
|
|
96
|
+
}
|
|
50
97
|
_this._screenTrack = null;
|
|
51
98
|
if (!_this._isReplacing) {
|
|
52
99
|
_this.observable.notifyObservers('onScreenCaptureStopped', sourceId);
|
|
@@ -62,6 +109,7 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
62
109
|
}
|
|
63
110
|
}
|
|
64
111
|
};
|
|
112
|
+
_this.addObserver((0, _logger.generateLogObserver)(_this.logger, ['onScreenCaptureError', 'onScreenCaptureReplaced', 'onScreenCaptureStarted', 'onScreenCaptureStopped']));
|
|
65
113
|
return _this;
|
|
66
114
|
}
|
|
67
115
|
(0, _inherits2["default"])(FcrUIElectronScreenShareStrategy, _FcrUIScreenShareStra);
|
|
@@ -214,6 +262,13 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
214
262
|
frameRate = _args4.length > 4 ? _args4[4] : undefined;
|
|
215
263
|
bitrate = _args4.length > 5 ? _args4[5] : undefined;
|
|
216
264
|
this._screenTrack = screenTrack;
|
|
265
|
+
if (!(screenTrack.getState() === _fcrCore.FcrMediaSourceState.OPEN)) {
|
|
266
|
+
_context4.next = 1;
|
|
267
|
+
break;
|
|
268
|
+
}
|
|
269
|
+
this.logger.info('the screen track is already started');
|
|
270
|
+
return _context4.abrupt("return");
|
|
271
|
+
case 1:
|
|
217
272
|
p = new Promise(function (resolve, reject) {
|
|
218
273
|
var waitObserver = {
|
|
219
274
|
onScreenCaptureStateUpdated: function onScreenCaptureStateUpdated(sourceId, state) {
|
|
@@ -239,9 +294,9 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
239
294
|
bitrate: bitrate
|
|
240
295
|
});
|
|
241
296
|
screenTrack.start(captureType, excludeWindows);
|
|
242
|
-
_context4.next =
|
|
297
|
+
_context4.next = 2;
|
|
243
298
|
return p;
|
|
244
|
-
case
|
|
299
|
+
case 2:
|
|
245
300
|
case "end":
|
|
246
301
|
return _context4.stop();
|
|
247
302
|
}
|
|
@@ -261,6 +316,15 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
261
316
|
return _regenerator["default"].wrap(function (_context5) {
|
|
262
317
|
while (1) switch (_context5.prev = _context5.next) {
|
|
263
318
|
case 0:
|
|
319
|
+
if (!(screenTrack.getState() === _fcrCore.FcrMediaSourceState.CLOSE)) {
|
|
320
|
+
_context5.next = 1;
|
|
321
|
+
break;
|
|
322
|
+
}
|
|
323
|
+
this.logger.info('the screen track is already stopped');
|
|
324
|
+
screenTrack.removeObserver(this._screenTrackObserver);
|
|
325
|
+
this._screenTrack = null;
|
|
326
|
+
return _context5.abrupt("return");
|
|
327
|
+
case 1:
|
|
264
328
|
p = new Promise(function (resolve) {
|
|
265
329
|
var waitObserver = {
|
|
266
330
|
onScreenCaptureStateUpdated: function onScreenCaptureStateUpdated(sourceId, state) {
|
|
@@ -274,12 +338,12 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
274
338
|
screenTrack.addObserver(waitObserver);
|
|
275
339
|
});
|
|
276
340
|
screenTrack.stop();
|
|
277
|
-
_context5.next =
|
|
341
|
+
_context5.next = 2;
|
|
278
342
|
return p;
|
|
279
|
-
case
|
|
343
|
+
case 2:
|
|
280
344
|
screenTrack.removeObserver(this._screenTrackObserver);
|
|
281
345
|
this._screenTrack = null;
|
|
282
|
-
case
|
|
346
|
+
case 3:
|
|
283
347
|
case "end":
|
|
284
348
|
return _context5.stop();
|
|
285
349
|
}
|
|
@@ -291,4 +355,9 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
291
355
|
return _stopTrackAndWaitUntilSuccess;
|
|
292
356
|
}()
|
|
293
357
|
}]);
|
|
294
|
-
}(_type.FcrUIScreenShareStrategy);
|
|
358
|
+
}(_type.FcrUIScreenShareStrategy);
|
|
359
|
+
_FcrUIElectronScreenShareStrategy = FcrUIElectronScreenShareStrategy;
|
|
360
|
+
var _applyDecs$e = _applyDecs(_FcrUIElectronScreenShareStrategy, [[_decorator.trace, 2, "startScreenCapture"], [_decorator.trace, 2, "stopScreenCapture"], [_decorator.trace, 2, "startLoopbackCapture"], [_decorator.trace, 2, "stopLoopbackCapture"], [_decorator.trace, 2, "replaceScreenCaptureSource"]], [], 0, void 0, _type.FcrUIScreenShareStrategy).e;
|
|
361
|
+
var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs$e, 1);
|
|
362
|
+
_initProto = _applyDecs$e2[0];
|
|
363
|
+
_applyDecs$e;
|
|
@@ -4,13 +4,15 @@ import { FcrVideoEncoderConfig } from 'fcr-core/lib/type';
|
|
|
4
4
|
import { FcrUIScreenStreamUpdateParams } from './type';
|
|
5
5
|
export declare class FcrUIScreenStreamSync implements FcrUIManagedObject {
|
|
6
6
|
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
7
|
+
private _videoWindowDataSource;
|
|
7
8
|
private _myCurrentScreenShareStreamId;
|
|
8
9
|
private _sharingControl;
|
|
9
10
|
private _streamControl;
|
|
10
11
|
private _released;
|
|
12
|
+
private _isStopped;
|
|
11
13
|
constructor(objectManager: FcrUIObjectManager);
|
|
12
14
|
release(): void;
|
|
13
|
-
checkIfMyScreenShareStreamExists():
|
|
15
|
+
checkIfMyScreenShareStreamExists(): boolean;
|
|
14
16
|
startScreenStream(createConfig: FcrScreenStreamCreateConfig, encoderConfig: FcrVideoEncoderConfig): Promise<void>;
|
|
15
17
|
stopScreenStream(): Promise<void>;
|
|
16
18
|
updateStream({ videoSourceId, audioPublishPrivilege, videoPublishPrivilege, }: FcrUIScreenStreamUpdateParams): Promise<void>;
|