fcr-core 3.7.9-alpha → 3.8.0-alpha
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/chat-connection/index.d.ts +1 -1
- package/lib/chat-connection/index.js +41 -26
- package/lib/engine/index.js +72 -78
- package/lib/imports.d.ts +7 -2
- package/lib/imports.js +26 -4
- package/lib/index.d.ts +2 -2
- package/lib/index.js +12 -0
- package/lib/media-control/desktop.js +22 -17
- package/lib/media-control/mobile.js +38 -33
- package/lib/media-control/type.d.ts +8 -0
- package/lib/monitor-control/index.js +10 -5
- package/lib/peer-session/index.js +48 -39
- package/lib/plugins/chatroom.js +237 -205
- package/lib/room-control/ability-control/index.js +14 -9
- package/lib/room-control/ability-control/type.d.ts +4 -1
- package/lib/room-control/ability-control/type.js +3 -0
- package/lib/room-control/group-control/index.js +21 -16
- package/lib/room-control/helpers/constants.d.ts +4 -0
- package/lib/room-control/helpers/constants.js +5 -1
- package/lib/room-control/helpers/validation-helper.js +1 -1
- package/lib/room-control/index.js +66 -38
- package/lib/room-control/interpreter-control/index.js +49 -38
- package/lib/room-control/interpreter-control/room.js +6 -4
- package/lib/room-control/join-before-host-waitingroom-control/index.js +6 -4
- package/lib/room-control/mainroom-control/index.js +90 -17
- package/lib/room-control/privilege-control/helper.js +8 -5
- package/lib/room-control/privilege-control/index.js +66 -19
- package/lib/room-control/privilege-control/type.d.ts +57 -10
- package/lib/room-control/privilege-control/type.js +17 -0
- package/lib/room-control/room-connector-control/index.js +28 -19
- package/lib/room-control/room-control-factory.js +3 -2
- package/lib/room-control/room-session/index.js +68 -49
- package/lib/room-control/room-session/type.d.ts +2 -2
- package/lib/room-control/shared-cache.js +36 -29
- package/lib/room-control/sharing-control/index.d.ts +5 -5
- package/lib/room-control/sharing-control/index.js +81 -43
- package/lib/room-control/sharing-control/type.d.ts +9 -5
- package/lib/room-control/sharing-control/type.js +6 -1
- package/lib/room-control/stream-control/index.d.ts +8 -1
- package/lib/room-control/stream-control/index.js +310 -199
- package/lib/room-control/stream-control/type.d.ts +6 -0
- package/lib/room-control/stt-control/de-compress-gzip.d.ts +1 -0
- package/lib/room-control/stt-control/de-compress-gzip.js +49 -0
- package/lib/room-control/stt-control/index.d.ts +1 -0
- package/lib/room-control/stt-control/index.js +353 -0
- package/lib/room-control/stt-control/type.d.ts +142 -0
- package/lib/room-control/stt-control/type.js +16 -0
- package/lib/room-control/type.d.ts +15 -0
- package/lib/room-control/type.js +13 -1
- package/lib/room-control/user-control/index.js +143 -136
- package/lib/room-control/waitingroom-control/index.js +14 -9
- package/lib/room-control/whiteboard-control/enum.d.ts +15 -0
- package/lib/room-control/whiteboard-control/{types.js → enum.js} +12 -1
- package/lib/room-control/whiteboard-control/type.d.ts +38 -0
- package/lib/room-control/whiteboard-control/type.js +15 -0
- package/lib/room-control/whiteboard-control/utils.d.ts +3 -0
- package/lib/room-control/whiteboard-control/utils.js +23 -0
- package/lib/room-control/whiteboard-control-v1/board-subwindow.d.ts +6 -0
- package/lib/room-control/whiteboard-control-v1/board-subwindow.js +26 -0
- package/lib/room-control/whiteboard-control-v1/board-window.d.ts +58 -0
- package/lib/room-control/whiteboard-control-v1/board-window.js +571 -0
- package/lib/room-control/{whiteboard-control/enums.d.ts → whiteboard-control-v1/enum.d.ts} +3 -17
- package/lib/room-control/{whiteboard-control/enums.js → whiteboard-control-v1/enum.js} +3 -20
- package/lib/room-control/whiteboard-control-v1/factory.d.ts +9 -0
- package/lib/room-control/whiteboard-control-v1/factory.js +22 -0
- package/lib/room-control/whiteboard-control-v1/index.d.ts +1 -0
- package/lib/room-control/whiteboard-control-v1/index.js +440 -0
- package/lib/room-control/whiteboard-control-v1/mount-manager.d.ts +4 -0
- package/lib/room-control/whiteboard-control-v1/mount-manager.js +15 -0
- package/lib/room-control/whiteboard-control-v1/type.d.ts +300 -0
- package/lib/room-control/whiteboard-control-v1/type.js +13 -0
- package/lib/room-control/whiteboard-control-v1/utils.d.ts +53 -0
- package/lib/room-control/whiteboard-control-v1/utils.js +290 -0
- package/lib/room-control/whiteboard-control-v2/annotation-control/control.d.ts +17 -31
- package/lib/room-control/whiteboard-control-v2/annotation-control/control.js +42 -228
- package/lib/room-control/whiteboard-control-v2/annotation-control/factory.d.ts +10 -0
- package/lib/room-control/whiteboard-control-v2/annotation-control/factory.js +48 -0
- package/lib/room-control/whiteboard-control-v2/annotation-control/type.d.ts +11 -19
- package/lib/room-control/whiteboard-control-v2/annotation-control/type.js +1 -3
- package/lib/room-control/whiteboard-control-v2/base/index.d.ts +42 -0
- package/lib/room-control/whiteboard-control-v2/base/index.js +317 -0
- package/lib/room-control/whiteboard-control-v2/{main-window.d.ts → base/main-window.d.ts} +6 -4
- package/lib/room-control/whiteboard-control-v2/{main-window.js → base/main-window.js} +54 -36
- package/lib/room-control/whiteboard-control-v2/constant.d.ts +6 -0
- package/lib/room-control/whiteboard-control-v2/constant.js +15 -0
- package/lib/room-control/whiteboard-control-v2/enum.d.ts +26 -0
- package/lib/room-control/whiteboard-control-v2/enum.js +34 -0
- package/lib/room-control/{whiteboard-control/types.d.ts → whiteboard-control-v2/type.d.ts} +51 -165
- package/lib/room-control/whiteboard-control-v2/type.js +5 -0
- package/lib/room-control/whiteboard-control-v2/utils.d.ts +5 -4
- package/lib/room-control/whiteboard-control-v2/utils.js +29 -27
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/control.d.ts +34 -33
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/control.js +131 -187
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/factory.d.ts +11 -0
- package/lib/room-control/whiteboard-control-v2/{annotation-control/index.js → whiteboard-control/factory.js} +40 -38
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/type.d.ts +18 -30
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/type.js +1 -9
- package/lib/room-router/index.js +56 -42
- package/lib/schema.d.ts +23 -9
- package/lib/schema.js +10 -4
- package/lib/service/api.d.ts +75 -19
- package/lib/service/api.js +401 -208
- package/lib/type.d.ts +15 -2
- package/lib/type.js +13 -0
- package/lib/utilities/collection.js +3 -2
- package/lib/utilities/error-helpers.d.ts +2 -1
- package/lib/utilities/error-helpers.js +35 -27
- package/lib/utilities/error.d.ts +1 -0
- package/lib/utilities/error.js +10 -8
- package/lib/utilities/join-helper.js +32 -25
- package/lib/utilities/logger.d.ts +2 -2
- package/lib/utilities/logger.js +6 -3
- package/lib/utilities/parameters.js +8 -4
- package/lib/utilities/retry-helpers.js +1 -0
- package/lib/utilities/shared-storage.d.ts +3 -1
- package/lib/utilities/shared-storage.js +10 -1
- package/lib/utilities/storage.js +1 -0
- package/lib/utilities/stream.js +16 -11
- package/lib/utilities/user.js +4 -3
- package/lib/utilities/validate-params.js +2 -1
- package/package.json +11 -5
- package/lib/room-control/whiteboard-control-v2/annotation-control/index.d.ts +0 -19
- package/lib/room-control/whiteboard-control-v2/annotation-control/privilege-control.d.ts +0 -36
- package/lib/room-control/whiteboard-control-v2/annotation-control/privilege-control.js +0 -252
- package/lib/room-control/whiteboard-control-v2/index.d.ts +0 -38
- package/lib/room-control/whiteboard-control-v2/index.js +0 -274
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/index.d.ts +0 -17
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/index.js +0 -30
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/privilege-control.d.ts +0 -36
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/privilege-control.js +0 -240
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
require("core-js/modules/es.symbol.description.js");
|
|
4
|
+
require("core-js/modules/es.error.cause.js");
|
|
3
5
|
require("core-js/modules/es.array.push.js");
|
|
4
6
|
require("core-js/modules/esnext.function.metadata.js");
|
|
5
7
|
require("core-js/modules/esnext.map.delete-all.js");
|
|
@@ -17,6 +19,7 @@ require("core-js/modules/esnext.map.reduce.js");
|
|
|
17
19
|
require("core-js/modules/esnext.map.some.js");
|
|
18
20
|
require("core-js/modules/esnext.map.update.js");
|
|
19
21
|
require("core-js/modules/esnext.symbol.metadata.js");
|
|
22
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
20
23
|
Object.defineProperty(exports, "__esModule", {
|
|
21
24
|
value: true
|
|
22
25
|
});
|
|
@@ -24,13 +27,17 @@ exports.FcrSharingControlImpl = void 0;
|
|
|
24
27
|
require("core-js/modules/esnext.iterator.constructor.js");
|
|
25
28
|
require("core-js/modules/esnext.iterator.for-each.js");
|
|
26
29
|
require("core-js/modules/esnext.iterator.some.js");
|
|
30
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
31
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
27
32
|
var _type = require("./type");
|
|
28
33
|
var _imports = require("../../imports");
|
|
29
34
|
var _ = require("../..");
|
|
30
|
-
var _enums = require("../whiteboard-control/enums");
|
|
31
35
|
var _logger = require("../../utilities/logger");
|
|
32
|
-
var
|
|
33
|
-
var
|
|
36
|
+
var _factory = require("../whiteboard-control-v2/whiteboard-control/factory");
|
|
37
|
+
var _factory2 = require("../whiteboard-control-v2/annotation-control/factory");
|
|
38
|
+
var _utils = require("../whiteboard-control/utils");
|
|
39
|
+
var _type2 = require("../type");
|
|
40
|
+
var _FcrSharingControlImpl;
|
|
34
41
|
let _initProto;
|
|
35
42
|
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 (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 (e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function (e) { return e[n]; }, (o < 2 || 4 === o) && (F = function (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 (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)]; } }; }
|
|
36
43
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
@@ -38,29 +45,6 @@ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e =
|
|
|
38
45
|
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; }
|
|
39
46
|
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; }
|
|
40
47
|
class FcrSharingControlImpl {
|
|
41
|
-
static {
|
|
42
|
-
[_initProto] = _applyDecs(this, [[_imports.trace, 2, "startScreenSharing"], [_imports.trace, 2, "startWhiteboard"], [_imports.trace, 2, "updateScreenSharing"], [_imports.trace, 2, "stop"], [_imports.trace, 2, "getScreenSharingState"]], []).e;
|
|
43
|
-
}
|
|
44
|
-
logger = (_initProto(this), (0, _logger.createLogger)({
|
|
45
|
-
prefix: 'FcrSharingControlImpl'
|
|
46
|
-
}));
|
|
47
|
-
_observable = new _imports.AgoraObservable();
|
|
48
|
-
_isActive = false;
|
|
49
|
-
_shareOwnerId = '';
|
|
50
|
-
_shareOwnerStream = null;
|
|
51
|
-
_streamObserver = {
|
|
52
|
-
onStreamsAdded: this._handleOnStreamsAdded.bind(this),
|
|
53
|
-
onStreamsRemoved: this._handleOnStreamsRemoved.bind(this)
|
|
54
|
-
};
|
|
55
|
-
_sceneObserver = {
|
|
56
|
-
onScenePropertiesUpdated: this._handleOnScenePropertiesUpdated.bind(this)
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
// TODO: 这里不应该再维护一套白板的状态和事件了, ui-scene 应该直接用 board control 的
|
|
60
|
-
_whiteboardObserver = {
|
|
61
|
-
onActive: this._handleOnWhiteboardActive.bind(this),
|
|
62
|
-
onInactive: this._handleOnWhiteboardInActive.bind(this)
|
|
63
|
-
};
|
|
64
48
|
get ownerId() {
|
|
65
49
|
return this._shareOwnerId;
|
|
66
50
|
}
|
|
@@ -68,6 +52,25 @@ class FcrSharingControlImpl {
|
|
|
68
52
|
return this._shareOwnerStream;
|
|
69
53
|
}
|
|
70
54
|
constructor(_scene, _api, _engine, _privilegeControl, _streamControl, _sharedCache, _userControl) {
|
|
55
|
+
(0, _defineProperty2.default)(this, "logger", (_initProto(this), (0, _logger.createLogger)({
|
|
56
|
+
prefix: 'FcrSharingControlImpl'
|
|
57
|
+
})));
|
|
58
|
+
(0, _defineProperty2.default)(this, "_observable", new _imports.AgoraObservable());
|
|
59
|
+
(0, _defineProperty2.default)(this, "_isActive", false);
|
|
60
|
+
(0, _defineProperty2.default)(this, "_shareOwnerId", '');
|
|
61
|
+
(0, _defineProperty2.default)(this, "_shareOwnerStream", null);
|
|
62
|
+
(0, _defineProperty2.default)(this, "_streamObserver", {
|
|
63
|
+
onStreamsAdded: this._handleOnStreamsAdded.bind(this),
|
|
64
|
+
onStreamsRemoved: this._handleOnStreamsRemoved.bind(this)
|
|
65
|
+
});
|
|
66
|
+
(0, _defineProperty2.default)(this, "_sceneObserver", {
|
|
67
|
+
onScenePropertiesUpdated: this._handleOnScenePropertiesUpdated.bind(this)
|
|
68
|
+
});
|
|
69
|
+
// TODO: 这里不应该再维护一套白板的状态和事件了, ui-scene 应该直接用 board control 的
|
|
70
|
+
(0, _defineProperty2.default)(this, "_whiteboardObserver", {
|
|
71
|
+
onActive: this._handleOnWhiteboardActive.bind(this),
|
|
72
|
+
onInactive: this._handleOnWhiteboardInActive.bind(this)
|
|
73
|
+
});
|
|
71
74
|
this._scene = _scene;
|
|
72
75
|
this._api = _api;
|
|
73
76
|
this._engine = _engine;
|
|
@@ -82,7 +85,7 @@ class FcrSharingControlImpl {
|
|
|
82
85
|
this._streamControl.addObserver(this._streamObserver);
|
|
83
86
|
this._whiteboardControl.addObserver(this._whiteboardObserver);
|
|
84
87
|
this._scene.addObserver(this._sceneObserver);
|
|
85
|
-
this.logger.info(
|
|
88
|
+
this.logger.info("initialized, room id: ".concat(this._scene.sceneId));
|
|
86
89
|
}
|
|
87
90
|
async startScreenSharing(config, size) {
|
|
88
91
|
try {
|
|
@@ -99,9 +102,9 @@ class FcrSharingControlImpl {
|
|
|
99
102
|
const currentShareState = this.getScreenSharingState();
|
|
100
103
|
if (currentShareState === _type.FcrScreenSharingState.START_ONLY_SCREEN) {
|
|
101
104
|
if (enableAnnotation) {
|
|
102
|
-
return this._api.toggleAnnotationActivityState(this._scene.sceneId,
|
|
105
|
+
return this._api.toggleAnnotationActivityState(this._scene.sceneId, _type.FcrSharePermissionState.ON);
|
|
103
106
|
} else {
|
|
104
|
-
return this._api.toggleAnnotationActivityState(this._scene.sceneId,
|
|
107
|
+
return this._api.toggleAnnotationActivityState(this._scene.sceneId, _type.FcrSharePermissionState.OFF);
|
|
105
108
|
}
|
|
106
109
|
}
|
|
107
110
|
return Promise.resolve();
|
|
@@ -133,9 +136,25 @@ class FcrSharingControlImpl {
|
|
|
133
136
|
}
|
|
134
137
|
getAnnotationControl() {
|
|
135
138
|
if (!this._annotationControl) {
|
|
136
|
-
|
|
139
|
+
const {
|
|
140
|
+
userId,
|
|
141
|
+
userName
|
|
142
|
+
} = this._userControl.getLocalUser();
|
|
143
|
+
const annotationConfig = {
|
|
144
|
+
userId,
|
|
145
|
+
userName,
|
|
146
|
+
roomId: this._scene.sceneId,
|
|
147
|
+
boardRatio: 1,
|
|
148
|
+
size: {
|
|
149
|
+
width: 1280,
|
|
150
|
+
height: 720
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
const permissions = this._privilegeControl.getAllLocalUserPermissionInfo();
|
|
154
|
+
const hasOperationPrivilege = (0, _utils.hasAnnotationWritePermission)(permissions);
|
|
155
|
+
this._annotationControl = new _factory2.FcrAnnotationControlFactoryImpl().createForMainProcess(
|
|
137
156
|
// @ts-ignore
|
|
138
|
-
this._engine._rtmClient._client,
|
|
157
|
+
this._engine._rtmClient._client, hasOperationPrivilege, annotationConfig, this._api);
|
|
139
158
|
}
|
|
140
159
|
return this._annotationControl;
|
|
141
160
|
}
|
|
@@ -152,9 +171,22 @@ class FcrSharingControlImpl {
|
|
|
152
171
|
}
|
|
153
172
|
getBoardControl() {
|
|
154
173
|
if (!this._whiteboardControl) {
|
|
155
|
-
|
|
174
|
+
const factory = new _factory.FcrWhiteboardControlFactoryImpl();
|
|
175
|
+
const permissions = this._privilegeControl.getAllLocalUserPermissionInfo();
|
|
176
|
+
const hasOperationPrivilege = (0, _utils.hasBoardWritePermission)(permissions);
|
|
177
|
+
const {
|
|
178
|
+
userId,
|
|
179
|
+
userName
|
|
180
|
+
} = this._userControl.getLocalUser();
|
|
181
|
+
const boardConfig = {
|
|
182
|
+
userId,
|
|
183
|
+
userName,
|
|
184
|
+
roomId: this._scene.sceneId,
|
|
185
|
+
boardRatio: 0
|
|
186
|
+
};
|
|
187
|
+
this._whiteboardControl = factory.createForMainProcess(
|
|
156
188
|
// @ts-ignore
|
|
157
|
-
this._engine._rtmClient._client, this._scene, this._api, this._sharedCache
|
|
189
|
+
this._engine._rtmClient._client, hasOperationPrivilege, boardConfig, this._scene, this._api, this._sharedCache);
|
|
158
190
|
}
|
|
159
191
|
return this._whiteboardControl;
|
|
160
192
|
}
|
|
@@ -198,8 +230,9 @@ class FcrSharingControlImpl {
|
|
|
198
230
|
if (this.getScreenSharingState() === _type.FcrScreenSharingState.END) {
|
|
199
231
|
const isMeSharing = ownerId === this._userControl.getLocalUser().userId;
|
|
200
232
|
if (isMeSharing) {
|
|
233
|
+
var _this$_annotationCont;
|
|
201
234
|
this.logger.info('[sharing]: on stream removed, clean before terminal Annotation app');
|
|
202
|
-
this._annotationControl.getMainWindow()
|
|
235
|
+
(_this$_annotationCont = this._annotationControl.getMainWindow()) === null || _this$_annotationCont === void 0 || _this$_annotationCont.clean();
|
|
203
236
|
}
|
|
204
237
|
}
|
|
205
238
|
}
|
|
@@ -209,26 +242,29 @@ class FcrSharingControlImpl {
|
|
|
209
242
|
const {
|
|
210
243
|
cause
|
|
211
244
|
} = event;
|
|
212
|
-
const causeData = cause
|
|
245
|
+
const causeData = cause === null || cause === void 0 ? void 0 : cause.data;
|
|
213
246
|
const currentScreenSharingState = this.getScreenSharingState();
|
|
214
|
-
const causeCmd = cause
|
|
247
|
+
const causeCmd = cause === null || cause === void 0 ? void 0 : cause.cmd;
|
|
215
248
|
if (currentScreenSharingState === _type.FcrScreenSharingState.END) {
|
|
216
|
-
if (causeData && causeCmd === 10 && causeData.widgetUuid ===
|
|
217
|
-
|
|
249
|
+
if (causeData && causeCmd === 10 && causeData.widgetUuid === _type2.FcrWidgetUuid.ANNOTATION) {
|
|
250
|
+
var _causeData$widgetCaus;
|
|
251
|
+
if (((_causeData$widgetCaus = causeData.widgetCause) === null || _causeData$widgetCaus === void 0 ? void 0 : _causeData$widgetCaus.cmd) === _type2.FcrWidgetCauseCmd.ANNOTATION) {
|
|
218
252
|
this._observable.notifyObservers('onScreenSharingUpdated', this.ownerStream, _type.FcrScreenSharingState.END);
|
|
219
253
|
const isMeSharing = this.ownerId === this._userControl.getLocalUser().userId;
|
|
220
254
|
if (isMeSharing) {
|
|
255
|
+
var _this$_annotationCont2;
|
|
221
256
|
this.logger.info('clean annotation board');
|
|
222
|
-
this._annotationControl.getMainWindow()
|
|
257
|
+
(_this$_annotationCont2 = this._annotationControl.getMainWindow()) === null || _this$_annotationCont2 === void 0 || _this$_annotationCont2.clean();
|
|
223
258
|
}
|
|
224
259
|
}
|
|
225
260
|
}
|
|
226
261
|
} else {
|
|
227
262
|
// 当屏幕共享开启时
|
|
228
|
-
if (causeData && causeCmd === 10 && causeData.widgetUuid ===
|
|
229
|
-
|
|
263
|
+
if (causeData && causeCmd === 10 && causeData.widgetUuid === _type2.FcrWidgetUuid.ANNOTATION) {
|
|
264
|
+
var _causeData$widgetCaus2;
|
|
265
|
+
if (((_causeData$widgetCaus2 = causeData.widgetCause) === null || _causeData$widgetCaus2 === void 0 ? void 0 : _causeData$widgetCaus2.cmd) === _type2.FcrWidgetCauseCmd.ANNOTATION) {
|
|
230
266
|
const screenStream = this._getScreenShareStreamByUuid();
|
|
231
|
-
this._observable.notifyObservers('onScreenSharingUpdated', screenStream
|
|
267
|
+
this._observable.notifyObservers('onScreenSharingUpdated', screenStream !== null && screenStream !== void 0 ? screenStream : this.ownerStream, _type.FcrScreenSharingState.START_WHIT_ANNOTATION);
|
|
232
268
|
// const owner = this._userControl.getUser(this.ownerId);
|
|
233
269
|
// const isElectron =
|
|
234
270
|
// owner &&
|
|
@@ -274,4 +310,6 @@ class FcrSharingControlImpl {
|
|
|
274
310
|
this.addObserver((0, _logger.generateLogObserver)(this.logger, ['onScreenSharingUpdated', 'onWhiteboardStarted', 'onWhiteboardEnded']));
|
|
275
311
|
}
|
|
276
312
|
}
|
|
277
|
-
exports.FcrSharingControlImpl = FcrSharingControlImpl;
|
|
313
|
+
exports.FcrSharingControlImpl = FcrSharingControlImpl;
|
|
314
|
+
_FcrSharingControlImpl = FcrSharingControlImpl;
|
|
315
|
+
[_initProto] = _applyDecs(_FcrSharingControlImpl, [[_imports.trace, 2, "startScreenSharing"], [_imports.trace, 2, "startWhiteboard"], [_imports.trace, 2, "updateScreenSharing"], [_imports.trace, 2, "stop"], [_imports.trace, 2, "getScreenSharingState"]], []).e;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { FcrStreamInfo, FcrUserInfo } from '../../type';
|
|
2
2
|
import { FcrScreenStreamCreateConfig, FcrSize } from '../stream-control/type';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { FcrBoardInactiveReason } from '../whiteboard-control/enum';
|
|
4
|
+
import { FcrAnnotationControl } from '../whiteboard-control-v2/annotation-control/type';
|
|
5
|
+
import { FcrWhiteboardControl } from '../whiteboard-control-v2/whiteboard-control/type';
|
|
6
6
|
export interface FcrSharingControl {
|
|
7
7
|
startScreenSharing(config: FcrScreenStreamCreateConfig, size?: FcrSize): Promise<string>;
|
|
8
8
|
startWhiteboard(): Promise<void>;
|
|
@@ -10,8 +10,8 @@ export interface FcrSharingControl {
|
|
|
10
10
|
stop(): Promise<void>;
|
|
11
11
|
getScreenSharingState(): FcrScreenSharingState;
|
|
12
12
|
getWhiteboardState(): FcrWhiteboardState;
|
|
13
|
-
getAnnotationControl():
|
|
14
|
-
getBoardControl():
|
|
13
|
+
getAnnotationControl(): FcrAnnotationControl;
|
|
14
|
+
getBoardControl(): FcrWhiteboardControl;
|
|
15
15
|
getSharingWindowSize(): FcrSize | undefined;
|
|
16
16
|
addObserver(observer: FcrSharingObserver): void;
|
|
17
17
|
removeObserver(observer: FcrSharingObserver): void;
|
|
@@ -30,3 +30,7 @@ export declare enum FcrWhiteboardState {
|
|
|
30
30
|
END = 0,
|
|
31
31
|
START = 1
|
|
32
32
|
}
|
|
33
|
+
export declare enum FcrSharePermissionState {
|
|
34
|
+
ON = 1,
|
|
35
|
+
OFF = 0
|
|
36
|
+
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.FcrWhiteboardState = exports.FcrScreenSharingState = void 0;
|
|
6
|
+
exports.FcrWhiteboardState = exports.FcrSharePermissionState = exports.FcrScreenSharingState = void 0;
|
|
7
7
|
let FcrScreenSharingState = exports.FcrScreenSharingState = /*#__PURE__*/function (FcrScreenSharingState) {
|
|
8
8
|
FcrScreenSharingState[FcrScreenSharingState["END"] = 0] = "END";
|
|
9
9
|
FcrScreenSharingState[FcrScreenSharingState["START_ONLY_SCREEN"] = 1] = "START_ONLY_SCREEN";
|
|
@@ -14,4 +14,9 @@ let FcrWhiteboardState = exports.FcrWhiteboardState = /*#__PURE__*/function (Fcr
|
|
|
14
14
|
FcrWhiteboardState[FcrWhiteboardState["END"] = 0] = "END";
|
|
15
15
|
FcrWhiteboardState[FcrWhiteboardState["START"] = 1] = "START";
|
|
16
16
|
return FcrWhiteboardState;
|
|
17
|
+
}({});
|
|
18
|
+
let FcrSharePermissionState = exports.FcrSharePermissionState = /*#__PURE__*/function (FcrSharePermissionState) {
|
|
19
|
+
FcrSharePermissionState[FcrSharePermissionState["ON"] = 1] = "ON";
|
|
20
|
+
FcrSharePermissionState[FcrSharePermissionState["OFF"] = 0] = "OFF";
|
|
21
|
+
return FcrSharePermissionState;
|
|
17
22
|
}({});
|
|
@@ -1 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import { AgoraRteRenderView } from '../../imports';
|
|
2
|
+
export declare class FcrSubscribedStreamsControl {
|
|
3
|
+
private logger;
|
|
4
|
+
getViewId(element: AgoraRteRenderView): string;
|
|
5
|
+
isEmpty(streamId: string): boolean;
|
|
6
|
+
bind(viewId: string, streamId: string): void;
|
|
7
|
+
unbind(viewId: string, streamId: string): void;
|
|
8
|
+
}
|