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
|
@@ -3,8 +3,6 @@
|
|
|
3
3
|
require("core-js/modules/es.symbol.js");
|
|
4
4
|
require("core-js/modules/es.symbol.description.js");
|
|
5
5
|
require("core-js/modules/es.symbol.to-primitive.js");
|
|
6
|
-
require("core-js/modules/es.error.cause.js");
|
|
7
|
-
require("core-js/modules/es.error.to-string.js");
|
|
8
6
|
require("core-js/modules/es.array.is-array.js");
|
|
9
7
|
require("core-js/modules/es.array.iterator.js");
|
|
10
8
|
require("core-js/modules/es.date.to-primitive.js");
|
|
@@ -39,6 +37,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
39
37
|
});
|
|
40
38
|
exports.FcrUIScreenShareProviderImpl = void 0;
|
|
41
39
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
40
|
+
require("core-js/modules/es.error.cause.js");
|
|
41
|
+
require("core-js/modules/es.error.to-string.js");
|
|
42
42
|
require("core-js/modules/es.array.concat.js");
|
|
43
43
|
require("core-js/modules/es.array.find.js");
|
|
44
44
|
require("core-js/modules/es.array.for-each.js");
|
|
@@ -70,27 +70,24 @@ var _logger = require("../utilities/logger");
|
|
|
70
70
|
var _imports = require("fcr-core/lib/imports");
|
|
71
71
|
var _decorator = require("agora-foundation/lib/decorator");
|
|
72
72
|
var _types = require("fcr-core/lib/room-control/whiteboard-control/types");
|
|
73
|
-
var _type = require("agora-rte-sdk/lib/core/rtc/type");
|
|
74
73
|
var _rendererEvent = require("../utilities/renderer-event");
|
|
75
74
|
var _tools = require("../utilities/tools");
|
|
75
|
+
var _type = require("fcr-core/lib/type");
|
|
76
76
|
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
77
77
|
var _constant = require("../utilities/constant");
|
|
78
78
|
var _lodash = require("lodash");
|
|
79
79
|
var _config = require("../modules/setting/config");
|
|
80
80
|
var _FcrUIScreenShareProviderImpl;
|
|
81
|
-
var _initProto, _zoomOutDecs, _zoomInDecs, _fullContainerDecs, _setOriginScalcDecs, _handleScreenCaptureStateUpdatedDecs,
|
|
81
|
+
var _initProto, _zoomOutDecs, _zoomInDecs, _fullContainerDecs, _setOriginScalcDecs, _handleScreenCaptureStateUpdatedDecs, _replaceScreenShareDecs, _handleRemoteVideoStatsUpdatedDecs, _handleStreamUpdateDecs, _syncScreenShareStreamInfosDecs, _releaseDecs, _startShareScreenDecs, _updateShareAudioPrivilegeDecs, _handleShareStopWithAudioDecs, _handleShareStartWithAudioDecs, _ref;
|
|
82
82
|
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)]; } }; }
|
|
83
83
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
84
84
|
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); }
|
|
85
85
|
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; }
|
|
86
86
|
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; }
|
|
87
|
-
_ref = (_zoomOutDecs = [_mobx.action, _mobx.action.bound], _zoomInDecs = [_mobx.action, _mobx.action.bound], _fullContainerDecs = [_mobx.action, _mobx.action.bound], _setOriginScalcDecs = [_mobx.action, _mobx.action.bound], _handleScreenCaptureStateUpdatedDecs = [_mobx.action, _mobx.action.bound],
|
|
87
|
+
_ref = (_zoomOutDecs = [_mobx.action, _mobx.action.bound], _zoomInDecs = [_mobx.action, _mobx.action.bound], _fullContainerDecs = [_mobx.action, _mobx.action.bound], _setOriginScalcDecs = [_mobx.action, _mobx.action.bound], _handleScreenCaptureStateUpdatedDecs = [_mobx.action, _mobx.action.bound], _replaceScreenShareDecs = [_mobx.action, _mobx.action.bound], _handleRemoteVideoStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleStreamUpdateDecs = [_mobx.action, _mobx.action.bound], _syncScreenShareStreamInfosDecs = [_mobx.action, _mobx.action.bound], _releaseDecs = [_mobx.action, _mobx.action.bound], _startShareScreenDecs = [_mobx.action, _mobx.action.bound], _updateShareAudioPrivilegeDecs = [_mobx.action, _mobx.action.bound], _handleShareStopWithAudioDecs = [_mobx.action, _mobx.action.bound], _handleShareStartWithAudioDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
88
88
|
var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__PURE__*/function () {
|
|
89
89
|
function FcrUIScreenShareProviderImpl(_deviceProvider, _eventProvider, _roomProvider, _sharingProvider, _sharedScreenShareSharedDataSource, _sharedMemberDataSource, _privilegeProvider) {
|
|
90
|
-
var _this = this
|
|
91
|
-
_this$_roomProvider$c,
|
|
92
|
-
_this$_roomProvider$c2,
|
|
93
|
-
_this$_streamControl;
|
|
90
|
+
var _this = this;
|
|
94
91
|
(0, _classCallCheck2["default"])(this, FcrUIScreenShareProviderImpl);
|
|
95
92
|
(0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
|
|
96
93
|
prefix: 'FcrUIScreenShareProviderImpl'
|
|
@@ -130,9 +127,9 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
130
127
|
this._sharedScreenShareSharedDataSource = _sharedScreenShareSharedDataSource;
|
|
131
128
|
this._sharedMemberDataSource = _sharedMemberDataSource;
|
|
132
129
|
this._privilegeProvider = _privilegeProvider;
|
|
133
|
-
this._sharingControl =
|
|
134
|
-
this._streamControl =
|
|
135
|
-
|
|
130
|
+
this._sharingControl = this._currentRoomControl.getSharingControl();
|
|
131
|
+
this._streamControl = this._currentRoomControl.getStreamControl();
|
|
132
|
+
this._streamControl.addObserver(this._streamObserver);
|
|
136
133
|
this._syncScreenShareStreamInfos();
|
|
137
134
|
this._addEventListeners();
|
|
138
135
|
this._syncShareStreamState();
|
|
@@ -167,6 +164,15 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
167
164
|
get: function get() {
|
|
168
165
|
return this._sharedScreenShareSharedDataSource.screenShareScenarioType;
|
|
169
166
|
}
|
|
167
|
+
}, {
|
|
168
|
+
key: "_currentRoomControl",
|
|
169
|
+
get: function get() {
|
|
170
|
+
var currentRoomControl = this._roomProvider.currentRoomControl;
|
|
171
|
+
if (!currentRoomControl) {
|
|
172
|
+
throw new Error('currentRoomControl is not initialized');
|
|
173
|
+
}
|
|
174
|
+
return currentRoomControl;
|
|
175
|
+
}
|
|
170
176
|
}, {
|
|
171
177
|
key: "setSharingInReplace",
|
|
172
178
|
value: function setSharingInReplace(isInReplace) {
|
|
@@ -222,10 +228,9 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
222
228
|
}, {
|
|
223
229
|
key: "currentScreenSharingOwner",
|
|
224
230
|
get: function get() {
|
|
225
|
-
var
|
|
226
|
-
var
|
|
227
|
-
|
|
228
|
-
return stream.videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN && (stream.streamType === _imports.AgoraRteMediaStreamType.BOTH || stream.streamType === _imports.AgoraRteMediaStreamType.VIDEO);
|
|
231
|
+
var allStreams = this._streamControl.getStreamList();
|
|
232
|
+
var screenShareStream = allStreams.find(function (stream) {
|
|
233
|
+
return stream.videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN && (stream.streamType === _type.FcrStreamType.BOTH || stream.streamType === _type.FcrStreamType.VIDEO);
|
|
229
234
|
});
|
|
230
235
|
if (screenShareStream) {
|
|
231
236
|
return screenShareStream.owner;
|
|
@@ -327,24 +332,13 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
327
332
|
}
|
|
328
333
|
this._sharedScreenShareSharedDataSource.setLocalUserScreenSharingState(state);
|
|
329
334
|
}
|
|
330
|
-
}, {
|
|
331
|
-
key: "_handleShareStopWithAudio",
|
|
332
|
-
value: function _handleShareStopWithAudio() {
|
|
333
|
-
if (!this.shareAudioTrack) {
|
|
334
|
-
return;
|
|
335
|
-
}
|
|
336
|
-
if (this._deviceProvider.isCapabilitySupported(_fcrCore.FcrCapability.LOOPBACK_CAPTURE)) {
|
|
337
|
-
this.logger.info('[screen-share-provider][handleShareStopWithAudio] shareAudioTrack.stop');
|
|
338
|
-
this.shareAudioTrack.stop();
|
|
339
|
-
}
|
|
340
|
-
}
|
|
341
335
|
}, {
|
|
342
336
|
key: "replaceScreenShare",
|
|
343
337
|
value: function replaceScreenShare(id, type, withAudio, bounds) {
|
|
344
338
|
var _this2 = this;
|
|
345
339
|
this.logger.info('screen-share-provider: replaceScreenShare start');
|
|
346
340
|
var shareWithAudio = (0, _lodash.isBoolean)(withAudio) ? withAudio : this._sharedScreenShareSharedDataSource.shareWithAudio;
|
|
347
|
-
this.
|
|
341
|
+
this._sharedScreenShareSharedDataSource.setShareWithAudio(shareWithAudio);
|
|
348
342
|
this._isReplaceScreen = true;
|
|
349
343
|
this.setSharingInReplace(true);
|
|
350
344
|
if (this.screenTrack) {
|
|
@@ -366,12 +360,15 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
366
360
|
return _this2.startShareScreen(id, type, withAudio, true);
|
|
367
361
|
case 1:
|
|
368
362
|
_this2._sharedScreenShareSharedDataSource.setCurrentShareIdInfos(id, type, bounds);
|
|
369
|
-
if (_this2.currentShareStreamId
|
|
363
|
+
if (_this2.currentShareStreamId) {
|
|
370
364
|
_this2._streamControl.bindLocalStreams([{
|
|
371
365
|
streamId: _this2.currentShareStreamId,
|
|
372
366
|
audioSourceId: _this2.loopbackAudioSourceId,
|
|
373
367
|
videoSourceId: id
|
|
374
368
|
}]);
|
|
369
|
+
_this2.toggleScreenshareWithAudio(shareWithAudio);
|
|
370
|
+
} else {
|
|
371
|
+
_this2.logger.error('currentShareStreamId is not set');
|
|
375
372
|
}
|
|
376
373
|
case 2:
|
|
377
374
|
case "end":
|
|
@@ -393,8 +390,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
393
390
|
}, {
|
|
394
391
|
key: "_handleRemoteVideoStatsUpdated",
|
|
395
392
|
value: function _handleRemoteVideoStatsUpdated(roomId, streamId, videoStats) {
|
|
396
|
-
var
|
|
397
|
-
var stream = (_this$_streamControl3 = this._streamControl) === null || _this$_streamControl3 === void 0 ? void 0 : _this$_streamControl3.getStreamByStreamId(streamId);
|
|
393
|
+
var stream = this._streamControl.getStreamByStreamId(streamId);
|
|
398
394
|
if ((stream === null || stream === void 0 ? void 0 : stream.videoSourceType) === _fcrCore.FcrVideoSourceType.SCREEN) {
|
|
399
395
|
var _videoStats$dimension = videoStats.dimensions,
|
|
400
396
|
width = _videoStats$dimension.width,
|
|
@@ -420,6 +416,9 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
420
416
|
}, {
|
|
421
417
|
key: "loopbackAudioSourceId",
|
|
422
418
|
get: function get() {
|
|
419
|
+
if (!this._sharedScreenShareSharedDataSource.loopbackAudioSourceId) {
|
|
420
|
+
throw new Error('loopbackAudioSourceId is null');
|
|
421
|
+
}
|
|
423
422
|
return this._sharedScreenShareSharedDataSource.loopbackAudioSourceId;
|
|
424
423
|
}
|
|
425
424
|
}, {
|
|
@@ -451,7 +450,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
451
450
|
key: "createScreenShareWithSelectionId",
|
|
452
451
|
value: function () {
|
|
453
452
|
var _createScreenShareWithSelectionId = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(videoSourceId, bounds) {
|
|
454
|
-
var audioSourceId,
|
|
453
|
+
var audioSourceId, targetEncoderConfig, shareWithAudio, streamId;
|
|
455
454
|
return _regenerator["default"].wrap(function (_context3) {
|
|
456
455
|
while (1) switch (_context3.prev = _context3.next) {
|
|
457
456
|
case 0:
|
|
@@ -463,15 +462,20 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
463
462
|
}
|
|
464
463
|
targetEncoderConfig = this.screenShareScenarioType === _imports.FcrScreenScenarioType.CLEARITY ? _config.clearityEncoderConfig : _config.smoothEncoderConfig;
|
|
465
464
|
this._streamControl.setScreenScenario(this.screenShareScenarioType);
|
|
465
|
+
shareWithAudio = this._sharedScreenShareSharedDataSource.shareWithAudio;
|
|
466
466
|
_context3.next = 1;
|
|
467
|
-
return
|
|
468
|
-
streamType:
|
|
467
|
+
return this._sharingControl.startScreenSharing({
|
|
468
|
+
streamType: shareWithAudio ? _type.FcrStreamType.BOTH : _type.FcrStreamType.VIDEO,
|
|
469
469
|
videoSourceId: videoSourceId,
|
|
470
470
|
audioSourceId: audioSourceId
|
|
471
471
|
}, bounds);
|
|
472
472
|
case 1:
|
|
473
473
|
streamId = _context3.sent;
|
|
474
|
-
|
|
474
|
+
if (shareWithAudio) {
|
|
475
|
+
this._updateShareAudioPrivilege(streamId, true);
|
|
476
|
+
this._handleShareStartWithAudio();
|
|
477
|
+
}
|
|
478
|
+
this._streamControl.setVideoEncoderConfig(streamId, targetEncoderConfig, _type.FcrVideoStreamType.HIGH_STREAM);
|
|
475
479
|
return _context3.abrupt("return", Promise.resolve(streamId));
|
|
476
480
|
case 2:
|
|
477
481
|
return _context3.abrupt("return", Promise.reject());
|
|
@@ -551,14 +555,14 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
551
555
|
case 'remove':
|
|
552
556
|
var seizeStream = events.find(function (event) {
|
|
553
557
|
var _event$cause2, _event$operatorUser;
|
|
554
|
-
return event.modifiedStream.videoSourceType ===
|
|
558
|
+
return event.modifiedStream.videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN && ((_event$cause2 = event.cause) === null || _event$cause2 === void 0 || (_event$cause2 = _event$cause2.data) === null || _event$cause2 === void 0 ? void 0 : _event$cause2.reason) === _types.FcrBoardInactiveReason.SEIZE && ((_event$operatorUser = event.operatorUser) === null || _event$operatorUser === void 0 ? void 0 : _event$operatorUser.userId) !== event.modifiedStream.owner.userId;
|
|
555
559
|
});
|
|
556
560
|
if ((seizeStream === null || seizeStream === void 0 || (_seizeStream$operator = seizeStream.operatorUser) === null || _seizeStream$operator === void 0 ? void 0 : _seizeStream$operator.userId) !== this.localUserId && (seizeStream === null || seizeStream === void 0 ? void 0 : seizeStream.modifiedStream.owner.userId) === this.localUserId) {
|
|
557
561
|
this._observable.notifyObservers('onScreenShareSeize');
|
|
558
562
|
this._sharedScreenShareSharedDataSource.setIsSeizeStream(true);
|
|
559
563
|
}
|
|
560
564
|
var mySharingScreenRemoved = events.some(function (event) {
|
|
561
|
-
return event.modifiedStream.videoSourceType ===
|
|
565
|
+
return event.modifiedStream.videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN && event.modifiedStream.owner.userId === _this4.localUserId;
|
|
562
566
|
});
|
|
563
567
|
if (mySharingScreenRemoved) {
|
|
564
568
|
this.setSharingInReplace(false);
|
|
@@ -597,14 +601,14 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
597
601
|
}, {
|
|
598
602
|
key: "_syncScreenShareStreamInfos",
|
|
599
603
|
value: function _syncScreenShareStreamInfos() {
|
|
600
|
-
var _this$_roomProvider$
|
|
601
|
-
var streams = (_this$_roomProvider$
|
|
604
|
+
var _this$_roomProvider$c, _streams$find;
|
|
605
|
+
var streams = (_this$_roomProvider$c = this._roomProvider.currentRoomControl) === null || _this$_roomProvider$c === void 0 ? void 0 : _this$_roomProvider$c.getStreamControl().getStreamList();
|
|
602
606
|
var isSharingScreen = streams === null || streams === void 0 ? void 0 : streams.some(function (stream) {
|
|
603
|
-
return stream.videoSourceType ===
|
|
607
|
+
return stream.videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN;
|
|
604
608
|
});
|
|
605
609
|
this._sharedScreenShareSharedDataSource.setIsSharingScreen(!!isSharingScreen);
|
|
606
610
|
var screenSharingOwner = streams === null || streams === void 0 || (_streams$find = streams.find(function (stream) {
|
|
607
|
-
return stream.videoSourceType ===
|
|
611
|
+
return stream.videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN;
|
|
608
612
|
})) === null || _streams$find === void 0 ? void 0 : _streams$find.owner;
|
|
609
613
|
this._sharedScreenShareSharedDataSource.setScreenSharingOwner(screenSharingOwner);
|
|
610
614
|
}
|
|
@@ -632,11 +636,10 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
632
636
|
}, {
|
|
633
637
|
key: "release",
|
|
634
638
|
value: function release() {
|
|
635
|
-
var _this$_streamControl4;
|
|
636
639
|
this.logger.info('[screen-share-provider] in release');
|
|
637
640
|
this._hasStop = false;
|
|
638
641
|
this.stop();
|
|
639
|
-
|
|
642
|
+
this._streamControl.removeObserver(this._streamObserver);
|
|
640
643
|
this._removeEventListeners();
|
|
641
644
|
}
|
|
642
645
|
}, {
|
|
@@ -665,6 +668,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
665
668
|
_t = undefined;
|
|
666
669
|
case 4:
|
|
667
670
|
excludeWindows = _t;
|
|
671
|
+
this._sharedScreenShareSharedDataSource.setShareWithAudio(withAudio);
|
|
668
672
|
if (!((0, _env.isElectron)() && !isReplace)) {
|
|
669
673
|
_context4.next = 6;
|
|
670
674
|
break;
|
|
@@ -677,17 +681,16 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
677
681
|
this._sharedScreenShareSharedDataSource.setCurrentShareStreamId(streamId);
|
|
678
682
|
}
|
|
679
683
|
case 6:
|
|
680
|
-
this._sharedScreenShareSharedDataSource.setShareWithAudio(withAudio);
|
|
681
|
-
this.toggleScreenshareWithAudio(withAudio);
|
|
682
684
|
screenTrack = this._deviceProvider.getScreenTrack(id);
|
|
683
685
|
this.setScreenTrack(screenTrack);
|
|
684
686
|
this.logger.info("[screen-share-provider]: start share screen with track start, excludeWindows: ".concat(JSON.stringify(excludeWindows)));
|
|
685
687
|
(_this$screenTrack3 = this.screenTrack) === null || _this$screenTrack3 === void 0 || _this$screenTrack3.addObserver(this._screenCaptureObserver);
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
});
|
|
688
|
+
// this.screenTrack?.start(type, {
|
|
689
|
+
// withAudio,
|
|
690
|
+
// excludeWindows,
|
|
691
|
+
// frameRate,
|
|
692
|
+
// });
|
|
693
|
+
(_this$screenTrack4 = this.screenTrack) === null || _this$screenTrack4 === void 0 || _this$screenTrack4.start(type, excludeWindows !== null && excludeWindows !== void 0 ? excludeWindows : []);
|
|
691
694
|
_context4.next = 8;
|
|
692
695
|
break;
|
|
693
696
|
case 7:
|
|
@@ -728,6 +731,25 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
728
731
|
this._stopScreenTrack();
|
|
729
732
|
this._cleanShareWithAudioDataSource();
|
|
730
733
|
}
|
|
734
|
+
}, {
|
|
735
|
+
key: "_updateShareAudioPrivilege",
|
|
736
|
+
value: function _updateShareAudioPrivilege(streamId, withAudio) {
|
|
737
|
+
this._streamControl.updatePublishPrivilegeOfStreams((0, _defineProperty2["default"])({}, streamId, {
|
|
738
|
+
audioPrivilege: withAudio ? _fcrCore.FcrStreamPrivilegeOperation.HAS_PRIVILEGE : _fcrCore.FcrStreamPrivilegeOperation.NOPRIVILEGE,
|
|
739
|
+
videoPrivilege: _fcrCore.FcrStreamPrivilegeOperation.NOOPERATION
|
|
740
|
+
}));
|
|
741
|
+
}
|
|
742
|
+
}, {
|
|
743
|
+
key: "_handleShareStopWithAudio",
|
|
744
|
+
value: function _handleShareStopWithAudio() {
|
|
745
|
+
if (!this.shareAudioTrack) {
|
|
746
|
+
return;
|
|
747
|
+
}
|
|
748
|
+
if (this._deviceProvider.isCapabilitySupported(_fcrCore.FcrCapability.LOOPBACK_CAPTURE)) {
|
|
749
|
+
this.logger.info('[screen-share-provider][handleShareStopWithAudio] shareAudioTrack.stop');
|
|
750
|
+
this.shareAudioTrack.stop();
|
|
751
|
+
}
|
|
752
|
+
}
|
|
731
753
|
}, {
|
|
732
754
|
key: "_handleShareStartWithAudio",
|
|
733
755
|
value: function _handleShareStartWithAudio() {
|
|
@@ -742,16 +764,15 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
742
764
|
value: function toggleScreenshareWithAudio(withAudio) {
|
|
743
765
|
this._sharedScreenShareSharedDataSource.setShareWithAudio(withAudio);
|
|
744
766
|
this.logger.info("[screen-share-provider] current-share with audio: ".concat(withAudio));
|
|
745
|
-
if (this.currentShareStreamId
|
|
746
|
-
this.
|
|
747
|
-
audioPrivilege: withAudio ? _fcrCore.FcrStreamPrivilegeOperation.HAS_PRIVILEGE : _fcrCore.FcrStreamPrivilegeOperation.NOPRIVILEGE,
|
|
748
|
-
videoPrivilege: _fcrCore.FcrStreamPrivilegeOperation.NOOPERATION
|
|
749
|
-
}));
|
|
767
|
+
if (this.currentShareStreamId) {
|
|
768
|
+
this._updateShareAudioPrivilege(this.currentShareStreamId, withAudio);
|
|
750
769
|
if (withAudio) {
|
|
751
770
|
this._handleShareStartWithAudio();
|
|
752
771
|
} else {
|
|
753
772
|
this._handleShareStopWithAudio();
|
|
754
773
|
}
|
|
774
|
+
} else {
|
|
775
|
+
this.logger.error('currentShareStreamId is not set');
|
|
755
776
|
}
|
|
756
777
|
}
|
|
757
778
|
}, {
|
|
@@ -797,10 +818,9 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
797
818
|
key: "removeScreenStream",
|
|
798
819
|
value: function removeScreenStream() {
|
|
799
820
|
try {
|
|
800
|
-
var _this$_streamControl5;
|
|
801
821
|
this.logger.info('screen-share-provider: remove screen streams');
|
|
802
|
-
|
|
803
|
-
this._sharedScreenShareSharedDataSource.setCurrentShareStreamId(
|
|
822
|
+
this._streamControl.removeScreenStream();
|
|
823
|
+
this._sharedScreenShareSharedDataSource.setCurrentShareStreamId(undefined);
|
|
804
824
|
return true;
|
|
805
825
|
} catch (error) {
|
|
806
826
|
this.logger.error('removeScreenStream error', error);
|
|
@@ -825,6 +845,6 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
825
845
|
}]);
|
|
826
846
|
}();
|
|
827
847
|
_FcrUIScreenShareProviderImpl = FcrUIScreenShareProviderImpl;
|
|
828
|
-
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIScreenShareProviderImpl, [[_decorator.bound, 2, "setSharingInReplace"], [_zoomOutDecs, 18, "zoomOut"], [_zoomInDecs, 18, "zoomIn"], [_fullContainerDecs, 18, "fullContainer"], [_mobx.computed, 3, "isAspectRatioPreserved"], [_setOriginScalcDecs, 18, "setOriginScalc"], [_decorator.bound, 2, "stop"], [_decorator.bound, 2, "bootstrap"], [_decorator.bound, 2, "_handleWebScreenCaptureStateUpdated"], [_handleScreenCaptureStateUpdatedDecs, 18, "_handleScreenCaptureStateUpdated"], [
|
|
848
|
+
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIScreenShareProviderImpl, [[_decorator.bound, 2, "setSharingInReplace"], [_zoomOutDecs, 18, "zoomOut"], [_zoomInDecs, 18, "zoomIn"], [_fullContainerDecs, 18, "fullContainer"], [_mobx.computed, 3, "isAspectRatioPreserved"], [_setOriginScalcDecs, 18, "setOriginScalc"], [_decorator.bound, 2, "stop"], [_decorator.bound, 2, "bootstrap"], [_decorator.bound, 2, "_handleWebScreenCaptureStateUpdated"], [_handleScreenCaptureStateUpdatedDecs, 18, "_handleScreenCaptureStateUpdated"], [_replaceScreenShareDecs, 18, "replaceScreenShare"], [_handleRemoteVideoStatsUpdatedDecs, 18, "_handleRemoteVideoStatsUpdated"], [_decorator.bound, 2, "_syncShareStreamState"], [_handleStreamUpdateDecs, 18, "_handleStreamUpdate"], [_decorator.bound, 2, "startRenderSharePreview"], [_decorator.bound, 2, "stopRenderSharePreview"], [_syncScreenShareStreamInfosDecs, 18, "_syncScreenShareStreamInfos"], [_releaseDecs, 18, "release"], [_startShareScreenDecs, 18, "startShareScreen"], [_decorator.bound, 2, "stopShareScreen"], [_decorator.bound, 2, "stopShareScreenByExitRoom"], [_updateShareAudioPrivilegeDecs, 18, "_updateShareAudioPrivilege"], [_handleShareStopWithAudioDecs, 18, "_handleShareStopWithAudio"], [_handleShareStartWithAudioDecs, 18, "_handleShareStartWithAudio"], [_decorator.bound, 2, "toggleScreenshareWithAudio"], [_decorator.bound, 2, "_getExcludeWindows"], [_decorator.bound, 2, "removeScreenStream"], [_decorator.bound, 2, "_stopScreenTrack"], [_decorator.bound, 2, "_cleanShareWithAudioDataSource"]], []).e, 1);
|
|
829
849
|
_initProto = _applyDecs$e[0];
|
|
830
850
|
(0, _base.registerDependency)('screenShareProvider');
|
|
@@ -89,6 +89,9 @@ var FcrUISharingProviderImpl = exports.FcrUISharingProviderImpl = /*#__PURE__*/f
|
|
|
89
89
|
}
|
|
90
90
|
},
|
|
91
91
|
onWhiteboardStarted: function onWhiteboardStarted(ownerId, operatorUser) {
|
|
92
|
+
if (_this.whiteboardState === _type.FcrWhiteboardState.START) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
92
95
|
_this.whiteboardOwnerId = ownerId;
|
|
93
96
|
_this.whiteboardState = _type.FcrWhiteboardState.START;
|
|
94
97
|
var owner = _this._userControl.getUser(ownerId);
|
|
@@ -102,9 +105,13 @@ var FcrUISharingProviderImpl = exports.FcrUISharingProviderImpl = /*#__PURE__*/f
|
|
|
102
105
|
_this.logger.info("[sharing-provider]: onWhiteboardStarted ".concat(ownerId, ", ").concat(JSON.stringify(operatorUser), ", backgroundColor: ").concat(_this._whiteboardProvider.backgroundColor));
|
|
103
106
|
},
|
|
104
107
|
onWhiteboardEnded: function onWhiteboardEnded(reason, operatorUser) {
|
|
108
|
+
if (_this.whiteboardState === _type.FcrWhiteboardState.END) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
105
111
|
_this._sharedWhiteboardDataSource.setJoinSuccess(false);
|
|
106
112
|
_this._sharedWhiteboardDataSource.setShowLoading(true);
|
|
107
113
|
_this._sharedWhiteboardDataSource.inActive();
|
|
114
|
+
_this._sharedWhiteboardDataSource.setSharingUser(undefined);
|
|
108
115
|
_this.logger.info("[sharing-provider]: onWhiteboardEnded, joinSuccess: ".concat(_this._sharedWhiteboardDataSource.joinSuccess));
|
|
109
116
|
_this.whiteboardState = _type.FcrWhiteboardState.END;
|
|
110
117
|
}
|
|
@@ -78,6 +78,7 @@ var FcrUIWhiteboardProviderImpl = exports.FcrUIWhiteboardProviderImpl = /*#__PUR
|
|
|
78
78
|
},
|
|
79
79
|
onInactive: function onInactive(reason, operatorUser) {
|
|
80
80
|
_this.logger.info("[whiteboard-provider]: onInactive ".concat(reason, ", ").concat(JSON.stringify(operatorUser)));
|
|
81
|
+
_this._sharedWhiteboardDataSource.setSharingUser(undefined);
|
|
81
82
|
},
|
|
82
83
|
onConnectionStateUpdated: function onConnectionStateUpdated(state) {
|
|
83
84
|
_this.logger.info("[whiteboard-provider]: onConnectionStateUpdated ".concat(state));
|
package/lib/scenes/main-scene.js
CHANGED
|
@@ -141,6 +141,7 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
141
141
|
var _FcrMainUIScene;
|
|
142
142
|
var _initProto; // import DeviceSettingDialog from '../modules/dialog/dialogs/device-setting';
|
|
143
143
|
// import { RemoveAdmitWaitingRoomDialog } from '../modules/dialog/components/remove-admit-waiting-room';
|
|
144
|
+
// import { SettingUIModule } from '../modules/setting';
|
|
144
145
|
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)); }
|
|
145
146
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
146
147
|
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)]; } }; }
|
|
@@ -203,7 +204,6 @@ var FcrMainUIScene = exports.FcrMainUIScene = /*#__PURE__*/function (_FcrBaseUIS
|
|
|
203
204
|
var waitingRoomControlProvider = new _roomProvider.FcrUIWaitingRoomControlProviderImpl(roomProvider, eventProvider);
|
|
204
205
|
var monitorProvider = new _monitorProvider.FcrUIMonitorProviderImpl(engine.getMonitorControl());
|
|
205
206
|
var chatProvider = new _chatProvider.FcrUIChatProviderImpl(currentRoomControlProvider.currentRoomControl, roomProvider);
|
|
206
|
-
var sharedWhiteboardDataSource = new _whiteboardData.FcrUISharedWhiteboardDataSourceImpl(sharingControl.getBoardControl(), privilegeProvider);
|
|
207
207
|
var sharedWaitingRoomDataSource = new _waitingRoom.FcrUISharedWaitingRoomDataSourceImpl(roomProvider, eventProvider);
|
|
208
208
|
var phoneAudioConnectorProvider = new _phoneAudioProvider.FcrUIPhoneAudioConnectorProviderImpl({
|
|
209
209
|
roomControl: mainRoomControl,
|
|
@@ -215,23 +215,29 @@ var FcrMainUIScene = exports.FcrMainUIScene = /*#__PURE__*/function (_FcrBaseUIS
|
|
|
215
215
|
mainRoomControl: mainRoomControl
|
|
216
216
|
});
|
|
217
217
|
var sharedMemberDataSource = new _memberData.FcrUIMemberSharedDataSourceImpl(userControl, streamControl, sharedScreenShareSharedDataSource, eventProvider, mainRoomControl.getSharingControl().getBoardControl());
|
|
218
|
+
var fcrUIMainWindowRenderer = new _secondaryWindow.FcrUIMainWindowRendererImpl();
|
|
219
|
+
// @ts-ignore
|
|
220
|
+
window.FcrUIMainWindowRenderer = fcrUIMainWindowRenderer;
|
|
221
|
+
var sharedWhiteboardDataSource = new _whiteboardData.FcrUISharedWhiteboardDataSourceImpl(sharingControl.getBoardControl(), privilegeProvider, fcrUIMainWindowRenderer);
|
|
218
222
|
var whiteboardProvider = new _whiteboardProvider.FcrUIWhiteboardProviderImpl(sharingControl.getBoardControl(), sharedWhiteboardDataSource, userControl);
|
|
219
223
|
var sharingProvider = new _sharingProvider.FcrUISharingProviderImpl(sharingControl, sharedScreenShareSharedDataSource, sharedWhiteboardDataSource, whiteboardProvider, userControl);
|
|
220
|
-
var screenShareProvider = new _screenShareProvider.FcrUIScreenShareProviderImpl(deviceProvider, eventProvider, roomProvider, sharingProvider, sharedScreenShareSharedDataSource, sharedMemberDataSource, privilegeProvider);
|
|
221
|
-
var annotationProvider = new _annotationProvider.FcrUIAnnotationProviderImpl(dialogProvider, sharedVideoWindowDataSource, privilegeProvider, sharedScreenShareSharedDataSource);
|
|
222
|
-
var sharedSecurityDataSource = new _securityData.FcrUISecuritySharedDataSourceImpl(privilegeProvider, sharedMemberDataSource);
|
|
223
|
-
var sharedApplistDataSource = new _appListData.FcrUISharedApplistSourceImpl(abilityProvider, privilegeProvider, roomProvider, widgetProvider, sharedMemberDataSource, sharedInterpreterDataSource);
|
|
224
|
-
var sharedAnnotationDataSource = new _annotationData.FcrUISharedAnnotationSourceImpl();
|
|
225
|
-
var applistProvider = new _appListProvider.FcrUIApplistProviderImpl(dialogProvider, eventProvider, widgetProvider, sharedApplistDataSource);
|
|
226
|
-
var localVideoRenderProvider = new _rendererProvider.FcrUILocalVideoRenderProviderImpl(deviceProvider, sharedScreenShareSharedDataSource);
|
|
227
224
|
var multiDisplayProvider = new _multiDisplayProvider.FcrUIMultiDisplayProviderImpl({
|
|
228
225
|
eventProvider: eventProvider,
|
|
229
226
|
sharedSettingDataSource: sharedSettingDataSource,
|
|
230
227
|
sharedMemberDataSource: sharedMemberDataSource,
|
|
231
228
|
sharedVideoWindowDataSource: sharedVideoWindowDataSource,
|
|
232
229
|
sharingProvider: sharingProvider,
|
|
233
|
-
sharedScreenShareSharedDataSource: sharedScreenShareSharedDataSource
|
|
230
|
+
sharedScreenShareSharedDataSource: sharedScreenShareSharedDataSource,
|
|
231
|
+
fcrUIMainWindowRenderer: fcrUIMainWindowRenderer,
|
|
232
|
+
sharedWhiteboardDataSource: sharedWhiteboardDataSource
|
|
234
233
|
});
|
|
234
|
+
var screenShareProvider = new _screenShareProvider.FcrUIScreenShareProviderImpl(deviceProvider, eventProvider, roomProvider, sharingProvider, sharedScreenShareSharedDataSource, sharedMemberDataSource, privilegeProvider);
|
|
235
|
+
var annotationProvider = new _annotationProvider.FcrUIAnnotationProviderImpl(dialogProvider, sharedVideoWindowDataSource, privilegeProvider, sharedScreenShareSharedDataSource);
|
|
236
|
+
var sharedSecurityDataSource = new _securityData.FcrUISecuritySharedDataSourceImpl(privilegeProvider, sharedMemberDataSource);
|
|
237
|
+
var sharedApplistDataSource = new _appListData.FcrUISharedApplistSourceImpl(abilityProvider, privilegeProvider, roomProvider, widgetProvider, sharedMemberDataSource, sharedInterpreterDataSource);
|
|
238
|
+
var sharedAnnotationDataSource = new _annotationData.FcrUISharedAnnotationSourceImpl();
|
|
239
|
+
var applistProvider = new _appListProvider.FcrUIApplistProviderImpl(dialogProvider, eventProvider, widgetProvider, sharedApplistDataSource);
|
|
240
|
+
var localVideoRenderProvider = new _rendererProvider.FcrUILocalVideoRenderProviderImpl(deviceProvider, sharedScreenShareSharedDataSource);
|
|
235
241
|
_this.messageProvider = messageProvider;
|
|
236
242
|
_this.dialogProvider = dialogProvider;
|
|
237
243
|
_this.eventProvider = eventProvider;
|
package/lib/schema.d.ts
CHANGED
|
@@ -128,15 +128,15 @@ export type FcrUISceneConfigSchema = z.infer<typeof fcrUISceneConfigSchema>;
|
|
|
128
128
|
export declare const fcrUISceneCallbackSchema: z.ZodFunction<z.ZodTuple<[z.ZodString], z.ZodUnknown>, z.ZodVoid>;
|
|
129
129
|
export type FcrUISceneCallbackSchema = z.infer<typeof fcrUISceneCallbackSchema>;
|
|
130
130
|
export declare const fcrUISceneFailureCallbackSchema: z.ZodFunction<z.ZodTuple<[z.ZodString, z.ZodObject<{
|
|
131
|
-
code: z.
|
|
131
|
+
code: z.ZodNumber;
|
|
132
132
|
message: z.ZodString;
|
|
133
133
|
origin: z.ZodOptional<z.ZodUnion<[z.ZodType<Error, z.ZodTypeDef, Error>, z.ZodUndefined]>>;
|
|
134
134
|
}, "strip", z.ZodTypeAny, {
|
|
135
|
-
code:
|
|
135
|
+
code: number;
|
|
136
136
|
message: string;
|
|
137
137
|
origin?: Error | undefined;
|
|
138
138
|
}, {
|
|
139
|
-
code:
|
|
139
|
+
code: number;
|
|
140
140
|
message: string;
|
|
141
141
|
origin?: Error | undefined;
|
|
142
142
|
}>], z.ZodUnknown>, z.ZodVoid>;
|
package/lib/schema.js
CHANGED
|
@@ -78,7 +78,7 @@ var fcrUISceneConfigSchema = exports.fcrUISceneConfigSchema = _schema.z.object({
|
|
|
78
78
|
avatar: _schema.stringSchema.optional()
|
|
79
79
|
});
|
|
80
80
|
var fcrErrorSchema = _schema.z.object({
|
|
81
|
-
code: _schema.z.
|
|
81
|
+
code: _schema.z.number(),
|
|
82
82
|
message: _schema.z.string(),
|
|
83
83
|
origin: _schema.z.union([_schema.z["instanceof"](Error), _schema.z.undefined()]).optional()
|
|
84
84
|
});
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { CurrentShareBounds } from '../modules/control-bar/types';
|
|
1
2
|
export interface FcrUISharedConfirmDataSource {
|
|
2
3
|
get position(): {
|
|
3
4
|
x: number;
|
|
@@ -11,15 +12,33 @@ export interface FcrUISharedConfirmDataSource {
|
|
|
11
12
|
x: number;
|
|
12
13
|
y: number;
|
|
13
14
|
}): void;
|
|
15
|
+
setWindowBounds(key: string, window: CurrentShareBounds): void;
|
|
16
|
+
removeWindowBounds(key: string): void;
|
|
17
|
+
addObserver(observer: FcrMousePositionObserver): void;
|
|
18
|
+
removeObserver(observer: FcrMousePositionObserver): void;
|
|
14
19
|
}
|
|
20
|
+
export type FcrMousePositionObserver = {
|
|
21
|
+
onMouseOver(key: string): void;
|
|
22
|
+
onMouseOut(key: string): void;
|
|
23
|
+
};
|
|
15
24
|
export declare class FcrUISharedConfirmDataSourceImpl implements FcrUISharedConfirmDataSource {
|
|
16
25
|
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
26
|
+
private _observable;
|
|
17
27
|
accessor position: {
|
|
18
28
|
x: number;
|
|
19
29
|
y: number;
|
|
20
30
|
};
|
|
31
|
+
accessor windows: Map<string, CurrentShareBounds>;
|
|
32
|
+
accessor mouseOverState: Set<unknown>;
|
|
33
|
+
constructor();
|
|
21
34
|
setPosition(position: {
|
|
22
35
|
x: number;
|
|
23
36
|
y: number;
|
|
24
37
|
}): void;
|
|
38
|
+
setWindowBounds(key: string, window: CurrentShareBounds): void;
|
|
39
|
+
removeWindowBounds(key: string): void;
|
|
40
|
+
addObserver(observer: FcrMousePositionObserver): void;
|
|
41
|
+
removeObserver(observer: FcrMousePositionObserver): void;
|
|
42
|
+
release(): void;
|
|
43
|
+
private _addLogObserver;
|
|
25
44
|
}
|