fcr-core 3.10.1 → 3.10.5
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/engine/index.js +102 -108
- package/lib/imports.js +1 -0
- package/lib/media-control/desktop.js +22 -13
- package/lib/media-control/mobile.js +27 -19
- package/lib/media-control/type.d.ts +3 -3
- package/lib/monitor-control/index.js +17 -7
- package/lib/peer-session/index.js +120 -121
- package/lib/plugins/chat/chatroom.js +119 -96
- package/lib/plugins/chat/connector.js +69 -48
- package/lib/remote-control/index.js +194 -216
- package/lib/room-control/ability-control/index.js +20 -10
- package/lib/room-control/application-control/index.js +82 -75
- package/lib/room-control/group-control/index.js +31 -30
- package/lib/room-control/helpers/board-init-info-helper.js +16 -10
- package/lib/room-control/helpers/validation-helper.js +1 -1
- package/lib/room-control/index.js +70 -51
- package/lib/room-control/infinity-room-control/index.js +27 -19
- package/lib/room-control/interpreter-control/index.js +77 -65
- 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 +37 -25
- package/lib/room-control/privilege-control/helper.js +28 -13
- package/lib/room-control/privilege-control/index.js +36 -28
- package/lib/room-control/room-connector-control/index.js +52 -49
- package/lib/room-control/room-connector-control/type.d.ts +1 -1
- package/lib/room-control/room-control-factory.js +10 -12
- package/lib/room-control/room-session/index.js +77 -74
- package/lib/room-control/shared-cache.js +63 -56
- package/lib/room-control/sharing-control/index.js +65 -57
- package/lib/room-control/stream-control/index.js +197 -193
- package/lib/room-control/stt-control/de-compress-gzip.js +10 -0
- package/lib/room-control/stt-control/index.js +93 -86
- package/lib/room-control/user-control/index.js +162 -155
- package/lib/room-control/waitingroom-control/index.js +18 -9
- package/lib/room-control/whiteboard-control/utils.js +4 -2
- package/lib/room-control/whiteboard-control-v1/board-subwindow.js +2 -1
- package/lib/room-control/whiteboard-control-v1/board-window.js +120 -103
- package/lib/room-control/whiteboard-control-v1/factory.js +7 -4
- package/lib/room-control/whiteboard-control-v1/index.js +80 -67
- package/lib/room-control/whiteboard-control-v1/mount-manager.js +4 -2
- package/lib/room-control/whiteboard-control-v1/utils.js +17 -14
- package/lib/room-control/whiteboard-control-v2/annotation-control/control.js +14 -10
- package/lib/room-control/whiteboard-control-v2/annotation-control/factory.js +17 -8
- package/lib/room-control/whiteboard-control-v2/base/index.js +61 -53
- package/lib/room-control/whiteboard-control-v2/base/main-window.js +39 -30
- package/lib/room-control/whiteboard-control-v2/utils.js +10 -10
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/control.js +45 -33
- package/lib/room-control/whiteboard-control-v2/whiteboard-control/factory.js +27 -11
- package/lib/room-control/widget-control/index.js +43 -33
- package/lib/room-router/index.js +66 -58
- package/lib/schema.d.ts +15 -15
- package/lib/service/api.js +446 -548
- package/lib/struct.js +5 -2
- package/lib/utilities/abortable-retry.js +3 -0
- package/lib/utilities/collection.js +15 -11
- package/lib/utilities/error-helpers.js +34 -27
- package/lib/utilities/error.js +4 -3
- package/lib/utilities/join-helper.js +37 -31
- package/lib/utilities/logger.js +8 -5
- package/lib/utilities/parameters.js +21 -10
- package/lib/utilities/retry-helpers.js +1 -0
- package/lib/utilities/stream.js +16 -11
- package/lib/utilities/user.js +4 -3
- package/lib/utilities/validate-params.js +1 -1
- package/lib/utilities/video-encoder-config.js +10 -5
- package/lib-es/engine/index.js +102 -108
- package/lib-es/media-control/desktop.js +22 -13
- package/lib-es/media-control/mobile.js +27 -19
- package/lib-es/monitor-control/index.js +16 -7
- package/lib-es/peer-session/index.js +120 -121
- package/lib-es/plugins/chat/chatroom.js +118 -95
- package/lib-es/plugins/chat/connector.js +67 -47
- package/lib-es/remote-control/index.js +194 -216
- package/lib-es/room-control/ability-control/index.js +19 -10
- package/lib-es/room-control/application-control/index.js +81 -75
- package/lib-es/room-control/group-control/index.js +31 -30
- package/lib-es/room-control/helpers/board-init-info-helper.js +15 -10
- package/lib-es/room-control/helpers/validation-helper.js +1 -1
- package/lib-es/room-control/index.js +69 -51
- package/lib-es/room-control/infinity-room-control/index.js +26 -19
- package/lib-es/room-control/interpreter-control/index.js +77 -65
- package/lib-es/room-control/interpreter-control/room.js +5 -4
- package/lib-es/room-control/join-before-host-waitingroom-control/index.js +5 -4
- package/lib-es/room-control/mainroom-control/index.js +37 -25
- package/lib-es/room-control/privilege-control/helper.js +27 -13
- package/lib-es/room-control/privilege-control/index.js +36 -28
- package/lib-es/room-control/room-connector-control/index.js +52 -49
- package/lib-es/room-control/room-control-factory.js +10 -12
- package/lib-es/room-control/room-session/index.js +77 -74
- package/lib-es/room-control/shared-cache.js +62 -56
- package/lib-es/room-control/sharing-control/index.js +64 -57
- package/lib-es/room-control/stream-control/index.js +197 -193
- package/lib-es/room-control/stt-control/de-compress-gzip.js +10 -0
- package/lib-es/room-control/stt-control/index.js +93 -86
- package/lib-es/room-control/user-control/index.js +162 -155
- package/lib-es/room-control/waitingroom-control/index.js +18 -9
- package/lib-es/room-control/whiteboard-control/utils.js +4 -2
- package/lib-es/room-control/whiteboard-control-v1/board-subwindow.js +2 -1
- package/lib-es/room-control/whiteboard-control-v1/board-window.js +120 -103
- package/lib-es/room-control/whiteboard-control-v1/factory.js +6 -4
- package/lib-es/room-control/whiteboard-control-v1/index.js +80 -67
- package/lib-es/room-control/whiteboard-control-v1/mount-manager.js +3 -2
- package/lib-es/room-control/whiteboard-control-v1/utils.js +17 -14
- package/lib-es/room-control/whiteboard-control-v2/annotation-control/control.js +13 -10
- package/lib-es/room-control/whiteboard-control-v2/annotation-control/factory.js +16 -8
- package/lib-es/room-control/whiteboard-control-v2/base/index.js +60 -53
- package/lib-es/room-control/whiteboard-control-v2/base/main-window.js +39 -30
- package/lib-es/room-control/whiteboard-control-v2/utils.js +10 -10
- package/lib-es/room-control/whiteboard-control-v2/whiteboard-control/control.js +45 -33
- package/lib-es/room-control/whiteboard-control-v2/whiteboard-control/factory.js +26 -11
- package/lib-es/room-control/widget-control/index.js +42 -33
- package/lib-es/room-router/index.js +66 -58
- package/lib-es/service/api.js +445 -548
- package/lib-es/struct.js +4 -2
- package/lib-es/utilities/abortable-retry.js +3 -0
- package/lib-es/utilities/collection.js +14 -11
- package/lib-es/utilities/error-helpers.js +33 -26
- package/lib-es/utilities/error.js +4 -3
- package/lib-es/utilities/join-helper.js +36 -29
- package/lib-es/utilities/logger.js +7 -5
- package/lib-es/utilities/parameters.js +21 -10
- package/lib-es/utilities/retry-helpers.js +1 -0
- package/lib-es/utilities/stream.js +15 -11
- package/lib-es/utilities/user.js +4 -3
- package/lib-es/utilities/validate-params.js +1 -1
- package/lib-es/utilities/video-encoder-config.js +10 -5
- package/package.json +4 -4
|
@@ -1,5 +1,9 @@
|
|
|
1
|
+
import "core-js/modules/es.symbol.description.js";
|
|
2
|
+
import "core-js/modules/es.error.cause.js";
|
|
1
3
|
import "core-js/modules/es.array.push.js";
|
|
2
4
|
import "core-js/modules/esnext.function.metadata.js";
|
|
5
|
+
import "core-js/modules/esnext.iterator.filter.js";
|
|
6
|
+
import "core-js/modules/esnext.iterator.for-each.js";
|
|
3
7
|
import "core-js/modules/esnext.map.delete-all.js";
|
|
4
8
|
import "core-js/modules/esnext.map.emplace.js";
|
|
5
9
|
import "core-js/modules/esnext.map.every.js";
|
|
@@ -15,9 +19,15 @@ import "core-js/modules/esnext.map.reduce.js";
|
|
|
15
19
|
import "core-js/modules/esnext.map.some.js";
|
|
16
20
|
import "core-js/modules/esnext.map.update.js";
|
|
17
21
|
import "core-js/modules/esnext.symbol.metadata.js";
|
|
18
|
-
|
|
22
|
+
import "core-js/modules/web.dom-collections.iterator.js";
|
|
23
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
24
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
25
|
+
var _FcrWhiteboardControlImpl;
|
|
26
|
+
let _initProto, _openDecs, _setBackgroundColorDecs, _setOperationPrivilegeDecs, _setBoardWritableDecs, _ref;
|
|
19
27
|
import "core-js/modules/esnext.iterator.constructor.js";
|
|
20
28
|
import "core-js/modules/esnext.iterator.map.js";
|
|
29
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
30
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
21
31
|
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)]; } }; }
|
|
22
32
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
23
33
|
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); }
|
|
@@ -46,22 +56,20 @@ import { convertToFcrBoardToolShape, hexColorToWhiteboardColor, textColors } fro
|
|
|
46
56
|
/**
|
|
47
57
|
* @internal
|
|
48
58
|
*/
|
|
59
|
+
_ref = (_openDecs = [bound, trace(['params'])], _setBackgroundColorDecs = [bound, trace(['backgroundColor'])], _setOperationPrivilegeDecs = [bound, trace(['hasPrivilege'])], _setBoardWritableDecs = trace(['granted']), "logger");
|
|
49
60
|
export class FcrWhiteboardControlImpl {
|
|
50
|
-
static {
|
|
51
|
-
[_initProto] = _applyDecs(this, [[[bound, trace], 2, "active"], [[bound, trace], 2, "inactive"], [_openDecs, 2, "open"], [[bound, trace], 2, "close"], [[bound, trace], 2, "release"], [_setBackgroundColorDecs, 2, "setBackgroundColor"], [[bound, trace], 2, "getActivity"], [[bound, trace], 2, "getOwnerId"], [[bound, trace], 2, "getBackgroundColor"], [[bound, trace], 2, "getConnectionState"], [[bound, trace], 2, "getMainWindow"], [[bound, trace], 2, "addObserver"], [[bound, trace], 2, "removeObserver"], [[bound, trace], 2, "getBoardActiveInfo"], [[bound, trace], 2, "hasOperationPrivilege"], [_setOperationPrivilegeDecs, 2, "setOperationPrivilege"], [_setBoardWritableDecs, 2, "_setBoardWritable"], [bound, 2, "_getToken"], [bound, 2, "_handleRoomStateUpdated"], [bound, 2, "_updateConnnectionState"], [bound, 2, "_handleConnectionStateUpdated"], [trace, 2, "_connect"], [trace, 2, "_clean"]], []).e;
|
|
52
|
-
}
|
|
53
|
-
[(_openDecs = [bound, trace(['params'])], _setBackgroundColorDecs = [bound, trace(['backgroundColor'])], _setOperationPrivilegeDecs = [bound, trace(['hasPrivilege'])], _setBoardWritableDecs = trace(['granted']), "logger")] = (_initProto(this), createLogger({
|
|
54
|
-
prefix: 'FcrWhiteboardControlImpl'
|
|
55
|
-
}));
|
|
56
|
-
_client = {};
|
|
57
|
-
_joined = false;
|
|
58
|
-
_connectState = FcrConnectionState.DISCONNECTED;
|
|
59
|
-
_observable = new AgoraObservable();
|
|
60
|
-
_options = {
|
|
61
|
-
debug: false
|
|
62
|
-
};
|
|
63
|
-
_hasOperationPrivilege = false;
|
|
64
61
|
constructor(_scene, _api, _sharedCache, hasOperationPrivilege) {
|
|
62
|
+
_defineProperty(this, _ref, (_initProto(this), createLogger({
|
|
63
|
+
prefix: 'FcrWhiteboardControlImpl'
|
|
64
|
+
})));
|
|
65
|
+
_defineProperty(this, "_client", {});
|
|
66
|
+
_defineProperty(this, "_joined", false);
|
|
67
|
+
_defineProperty(this, "_connectState", FcrConnectionState.DISCONNECTED);
|
|
68
|
+
_defineProperty(this, "_observable", new AgoraObservable());
|
|
69
|
+
_defineProperty(this, "_options", {
|
|
70
|
+
debug: false
|
|
71
|
+
});
|
|
72
|
+
_defineProperty(this, "_hasOperationPrivilege", false);
|
|
65
73
|
this._scene = _scene;
|
|
66
74
|
this._api = _api;
|
|
67
75
|
this._sharedCache = _sharedCache;
|
|
@@ -70,26 +78,26 @@ export class FcrWhiteboardControlImpl {
|
|
|
70
78
|
this._addLogObserver();
|
|
71
79
|
_scene.addObserver({
|
|
72
80
|
onScenePropertiesUpdated: (_, event) => {
|
|
81
|
+
var _event$cause;
|
|
73
82
|
const operatorUser = convertRteUserToFcrUser(event.operatorUser, this._roomCache);
|
|
74
|
-
if (event.cause
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
85
|
-
};
|
|
83
|
+
if (((_event$cause = event.cause) === null || _event$cause === void 0 ? void 0 : _event$cause.cmd) === 10) {
|
|
84
|
+
var _ref3, _event$cause$data$wid2;
|
|
85
|
+
const _ref2 = (_ref3 = _scene.getScenePropertiesByKeyPath('widgets.netlessBoard')) !== null && _ref3 !== void 0 ? _ref3 : {
|
|
86
|
+
state: 0,
|
|
87
|
+
extra: {
|
|
88
|
+
backgroundColor: '#fff'
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
state = _ref2.state,
|
|
92
|
+
bgColor = _ref2.extra.backgroundColor;
|
|
86
93
|
if (state === 1) {
|
|
87
94
|
this._observable.notifyObservers('onActive', _scene.getScenePropertiesByKeyPath('widgets.netlessBoard').ownerUserUuid, operatorUser);
|
|
88
95
|
}
|
|
89
96
|
if (state === 0) {
|
|
90
|
-
|
|
97
|
+
var _event$cause$data$wid;
|
|
98
|
+
this._observable.notifyObservers('onInactive', (_event$cause$data$wid = event.cause.data.widgetCause) === null || _event$cause$data$wid === void 0 || (_event$cause$data$wid = _event$cause$data$wid.data) === null || _event$cause$data$wid === void 0 ? void 0 : _event$cause$data$wid.reason, operatorUser);
|
|
91
99
|
}
|
|
92
|
-
if (event.cause.data.widgetCause
|
|
100
|
+
if (((_event$cause$data$wid2 = event.cause.data.widgetCause) === null || _event$cause$data$wid2 === void 0 ? void 0 : _event$cause$data$wid2.cmd) === 100101) {
|
|
93
101
|
this._observable.notifyObservers('onBackgroundColorUpdated', bgColor, operatorUser);
|
|
94
102
|
}
|
|
95
103
|
}
|
|
@@ -106,7 +114,8 @@ export class FcrWhiteboardControlImpl {
|
|
|
106
114
|
async inactive() {
|
|
107
115
|
return handleRequestError(() => this._api.toggleWhiteboardActivityState(this._scene.sceneId, FcrSharePermissionState.OFF), ErrorModuleCode.FCR_ROOM_WHITEBOARD, 'inactive failed');
|
|
108
116
|
}
|
|
109
|
-
async open(
|
|
117
|
+
async open() {
|
|
118
|
+
let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
110
119
|
this._whiteboardPrivateParameters = params;
|
|
111
120
|
// 白板权限禁用状态下,主持人和联席主持人仍然可以发起共享,所以,不能根据是否禁用状态直接拒绝
|
|
112
121
|
|
|
@@ -157,13 +166,12 @@ export class FcrWhiteboardControlImpl {
|
|
|
157
166
|
return FcrReturnCode.SUCCESS;
|
|
158
167
|
}
|
|
159
168
|
getBoardActiveInfo() {
|
|
160
|
-
const {
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
ownerUserUuid
|
|
166
|
-
};
|
|
169
|
+
const _ref4 = this._scene.getScenePropertiesByKeyPath('widgets.netlessBoard') || {
|
|
170
|
+
isActive: false,
|
|
171
|
+
ownerUserUuid: null
|
|
172
|
+
},
|
|
173
|
+
state = _ref4.state,
|
|
174
|
+
ownerUserId = _ref4.ownerUserUuid;
|
|
167
175
|
if (state === FcrBoardPropertiesState.ACTIVE) {
|
|
168
176
|
return {
|
|
169
177
|
isActive: true,
|
|
@@ -232,23 +240,25 @@ export class FcrWhiteboardControlImpl {
|
|
|
232
240
|
}), ErrorModuleCode.FCR_ROOM_WHITEBOARD, 'get whiteboard token failed');
|
|
233
241
|
}
|
|
234
242
|
_handleRoomStateUpdated(state) {
|
|
235
|
-
const
|
|
236
|
-
memberState
|
|
237
|
-
} = state;
|
|
243
|
+
const memberState = state.memberState;
|
|
238
244
|
if (memberState) {
|
|
239
|
-
const
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
shapeType
|
|
245
|
-
} = memberState;
|
|
245
|
+
const strokeColor = memberState.strokeColor,
|
|
246
|
+
strokeWidth = memberState.strokeWidth,
|
|
247
|
+
currentApplianceName = memberState.currentApplianceName,
|
|
248
|
+
textSize = memberState.textSize,
|
|
249
|
+
shapeType = memberState.shapeType;
|
|
246
250
|
const localState = {};
|
|
247
|
-
const
|
|
251
|
+
const _convertToFcrBoardToo = convertToFcrBoardToolShape(currentApplianceName, shapeType),
|
|
252
|
+
_convertToFcrBoardToo2 = _slicedToArray(_convertToFcrBoardToo, 2),
|
|
253
|
+
tool = _convertToFcrBoardToo2[0],
|
|
254
|
+
shape = _convertToFcrBoardToo2[1];
|
|
248
255
|
localState.tool = tool;
|
|
249
256
|
localState.shape = shape;
|
|
250
257
|
if (typeof strokeColor !== 'undefined') {
|
|
251
|
-
const
|
|
258
|
+
const _strokeColor = _slicedToArray(strokeColor, 3),
|
|
259
|
+
r = _strokeColor[0],
|
|
260
|
+
g = _strokeColor[1],
|
|
261
|
+
b = _strokeColor[2];
|
|
252
262
|
localState.strokeColor = {
|
|
253
263
|
r,
|
|
254
264
|
g,
|
|
@@ -304,22 +314,21 @@ export class FcrWhiteboardControlImpl {
|
|
|
304
314
|
}
|
|
305
315
|
async _connect() {
|
|
306
316
|
try {
|
|
317
|
+
var _this$_scene$getUser, _this$_whiteboardPriv, _this$_whiteboardPriv2, _this$_whiteboardPriv3, _this$_whiteboardPriv4;
|
|
307
318
|
this._updateConnnectionState(FcrConnectionState.CONNECTING);
|
|
308
319
|
const roomId = this._scene.sceneId;
|
|
309
320
|
const userId = this._scene.localUser.getLocalUserId();
|
|
310
|
-
const cursorName = this._scene.getUser(userId)
|
|
311
|
-
const syncMode = this._whiteboardPrivateParameters
|
|
312
|
-
const
|
|
313
|
-
data
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
boardToken
|
|
320
|
-
} = data || {};
|
|
321
|
+
const cursorName = (_this$_scene$getUser = this._scene.getUser(userId)) === null || _this$_scene$getUser === void 0 ? void 0 : _this$_scene$getUser.userName;
|
|
322
|
+
const syncMode = (_this$_whiteboardPriv = (_this$_whiteboardPriv2 = this._whiteboardPrivateParameters) === null || _this$_whiteboardPriv2 === void 0 ? void 0 : _this$_whiteboardPriv2.syncMode) !== null && _this$_whiteboardPriv !== void 0 ? _this$_whiteboardPriv : false;
|
|
323
|
+
const _await$this$_getToken = await this._getToken(roomId, userId),
|
|
324
|
+
data = _await$this$_getToken.data;
|
|
325
|
+
const _ref5 = data || {},
|
|
326
|
+
boardAppId = _ref5.boardAppId,
|
|
327
|
+
boardId = _ref5.boardId,
|
|
328
|
+
boardRegion = _ref5.boardRegion,
|
|
329
|
+
boardToken = _ref5.boardToken;
|
|
321
330
|
const plugins = this._createPlugins();
|
|
322
|
-
this._client = new WhiteWebSdk({
|
|
331
|
+
this._client = new WhiteWebSdk(_objectSpread({
|
|
323
332
|
appIdentifier: boardAppId,
|
|
324
333
|
useMobXState: true,
|
|
325
334
|
pptParams: {
|
|
@@ -333,9 +342,8 @@ export class FcrWhiteboardControlImpl {
|
|
|
333
342
|
reportDebugLogMode: LoggerReportMode.AlwaysReport,
|
|
334
343
|
reportLevelMask: this._options.debug ? 'debug' : 'info',
|
|
335
344
|
printLevelMask: this._options.debug ? 'debug' : 'info'
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
});
|
|
345
|
+
}
|
|
346
|
+
}, this._whiteboardPrivateParameters));
|
|
339
347
|
const hasPermission = this._hasOperationPrivilege;
|
|
340
348
|
const joinParams = {
|
|
341
349
|
region: boardRegion,
|
|
@@ -357,7 +365,7 @@ export class FcrWhiteboardControlImpl {
|
|
|
357
365
|
cursorName,
|
|
358
366
|
disappearCursor: true
|
|
359
367
|
},
|
|
360
|
-
floatBar: this._whiteboardPrivateParameters
|
|
368
|
+
floatBar: (_this$_whiteboardPriv3 = (_this$_whiteboardPriv4 = this._whiteboardPrivateParameters) === null || _this$_whiteboardPriv4 === void 0 ? void 0 : _this$_whiteboardPriv4.floatBar) !== null && _this$_whiteboardPriv3 !== void 0 ? _this$_whiteboardPriv3 : {
|
|
361
369
|
colors: textColors.map(color => hexColorToWhiteboardColor(color))
|
|
362
370
|
}
|
|
363
371
|
};
|
|
@@ -369,7 +377,7 @@ export class FcrWhiteboardControlImpl {
|
|
|
369
377
|
if (hasPermission) {
|
|
370
378
|
room.setViewMode(ViewMode.Broadcaster);
|
|
371
379
|
}
|
|
372
|
-
this.logger.info(
|
|
380
|
+
this.logger.info("set whiteboard sync mode: ".concat(syncMode));
|
|
373
381
|
room.syncMode = syncMode;
|
|
374
382
|
const mountOptions = {};
|
|
375
383
|
const privateParams = this._whiteboardPrivateParameters;
|
|
@@ -428,4 +436,9 @@ export class FcrWhiteboardControlImpl {
|
|
|
428
436
|
_addLogObserver() {
|
|
429
437
|
this.addObserver(generateLogObserver(this.logger, [['onActive', ['ownerId', 'operatorUser']], ['onInactive', ['reason', 'operatorUser']], ['onBackgroundColorUpdated', ['color', 'operatorUser']], ['onConnectionStateUpdated', ['state']]]));
|
|
430
438
|
}
|
|
431
|
-
}
|
|
439
|
+
}
|
|
440
|
+
_FcrWhiteboardControlImpl = FcrWhiteboardControlImpl;
|
|
441
|
+
var _applyDecs$e = _applyDecs(_FcrWhiteboardControlImpl, [[[bound, trace], 2, "active"], [[bound, trace], 2, "inactive"], [_openDecs, 2, "open"], [[bound, trace], 2, "close"], [[bound, trace], 2, "release"], [_setBackgroundColorDecs, 2, "setBackgroundColor"], [[bound, trace], 2, "getActivity"], [[bound, trace], 2, "getOwnerId"], [[bound, trace], 2, "getBackgroundColor"], [[bound, trace], 2, "getConnectionState"], [[bound, trace], 2, "getMainWindow"], [[bound, trace], 2, "addObserver"], [[bound, trace], 2, "removeObserver"], [[bound, trace], 2, "getBoardActiveInfo"], [[bound, trace], 2, "hasOperationPrivilege"], [_setOperationPrivilegeDecs, 2, "setOperationPrivilege"], [_setBoardWritableDecs, 2, "_setBoardWritable"], [bound, 2, "_getToken"], [bound, 2, "_handleRoomStateUpdated"], [bound, 2, "_updateConnnectionState"], [bound, 2, "_handleConnectionStateUpdated"], [trace, 2, "_connect"], [trace, 2, "_clean"]], []).e;
|
|
442
|
+
var _applyDecs$e2 = _slicedToArray(_applyDecs$e, 1);
|
|
443
|
+
_initProto = _applyDecs$e2[0];
|
|
444
|
+
_applyDecs$e;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
1
2
|
export class BoardMountManager {
|
|
2
|
-
static isMounting = false;
|
|
3
3
|
static setIsMounting(isMounting) {
|
|
4
4
|
BoardMountManager.isMounting = isMounting;
|
|
5
5
|
}
|
|
6
|
-
}
|
|
6
|
+
}
|
|
7
|
+
_defineProperty(BoardMountManager, "isMounting", false);
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import "core-js/modules/es.array.push.js";
|
|
2
|
+
import "core-js/modules/es.regexp.exec.js";
|
|
3
|
+
import "core-js/modules/es.string.replace.js";
|
|
4
|
+
import "core-js/modules/web.dom-collections.iterator.js";
|
|
2
5
|
import { md5 } from 'js-md5';
|
|
3
6
|
import { ApplianceNames, FcrBoardShape, FcrBoardToolType, ShapeType } from './enum';
|
|
4
7
|
import { EStrokeType } from '@netless/appliance-plugin';
|
|
@@ -123,8 +126,8 @@ export const mergeCanvasImage = async scenes => {
|
|
|
123
126
|
canvasArray.push(canvas);
|
|
124
127
|
}
|
|
125
128
|
}
|
|
126
|
-
bigCanvas.setAttribute('width',
|
|
127
|
-
bigCanvas.setAttribute('height',
|
|
129
|
+
bigCanvas.setAttribute('width', "".concat(width));
|
|
130
|
+
bigCanvas.setAttribute('height', "".concat(height * canvasArray.length));
|
|
128
131
|
canvasArray.forEach((canvas, index) => {
|
|
129
132
|
ctx && ctx.drawImage(canvas, 0, index * height, width, height);
|
|
130
133
|
});
|
|
@@ -219,22 +222,22 @@ export const convertToFcrBoardToolShape = (tool, shape) => {
|
|
|
219
222
|
case ApplianceNames.hand:
|
|
220
223
|
return [FcrBoardToolType.HAND];
|
|
221
224
|
}
|
|
222
|
-
switch (
|
|
223
|
-
case
|
|
225
|
+
switch ("".concat(tool || '').concat(shape || '')) {
|
|
226
|
+
case "".concat(ApplianceNames.rectangle):
|
|
224
227
|
return [, FcrBoardShape.Rectangle];
|
|
225
|
-
case
|
|
228
|
+
case "".concat(ApplianceNames.ellipse):
|
|
226
229
|
return [, FcrBoardShape.Ellipse];
|
|
227
|
-
case
|
|
230
|
+
case "".concat(ApplianceNames.straight):
|
|
228
231
|
return [, FcrBoardShape.Straight];
|
|
229
|
-
case
|
|
232
|
+
case "".concat(ApplianceNames.arrow):
|
|
230
233
|
return [, FcrBoardShape.Arrow];
|
|
231
|
-
case
|
|
234
|
+
case "".concat(ApplianceNames.pencil):
|
|
232
235
|
return [, FcrBoardShape.Curve];
|
|
233
|
-
case
|
|
236
|
+
case "".concat(ApplianceNames.shape).concat(ShapeType.Triangle):
|
|
234
237
|
return [, FcrBoardShape.Triangle];
|
|
235
|
-
case
|
|
238
|
+
case "".concat((ApplianceNames.shape, ShapeType.Pentagram)):
|
|
236
239
|
return [, FcrBoardShape.Pentagram];
|
|
237
|
-
case
|
|
240
|
+
case "".concat(ApplianceNames.shape).concat(ShapeType.Rhombus):
|
|
238
241
|
return [, FcrBoardShape.Rhombus];
|
|
239
242
|
}
|
|
240
243
|
return [];
|
|
@@ -259,9 +262,9 @@ export const src2DataURL = src => {
|
|
|
259
262
|
const ctx = canvas.getContext('2d');
|
|
260
263
|
const image = new Image();
|
|
261
264
|
image.onload = () => {
|
|
262
|
-
canvas.setAttribute('width',
|
|
263
|
-
canvas.setAttribute('height',
|
|
264
|
-
ctx
|
|
265
|
+
canvas.setAttribute('width', "".concat(image.width));
|
|
266
|
+
canvas.setAttribute('height', "".concat(image.height));
|
|
267
|
+
ctx === null || ctx === void 0 || ctx.drawImage(image, 0, 0);
|
|
265
268
|
resolve(canvas.toDataURL('image/jpeg', 0.8));
|
|
266
269
|
};
|
|
267
270
|
image.onerror = () => {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
1
2
|
import { FcrErrorCode, FcrErrorModuleCode, generateFcrCoreClientError, handleRequestError } from '../../../utilities/error';
|
|
2
3
|
import { createLogger } from '../../../utilities/logger';
|
|
3
4
|
import { FcrBaseWhiteboardControlImpl } from '../base';
|
|
@@ -10,20 +11,22 @@ const addBoardConnectingObserver = (board, sceneConfig) => {
|
|
|
10
11
|
onConnectionStateUpdated: state => {
|
|
11
12
|
if (state === AgoraRteConnectionState.CONNECTED) {
|
|
12
13
|
if (sceneConfig.isAndroidByOwner()) {
|
|
13
|
-
|
|
14
|
+
var _board$getMainWindow;
|
|
15
|
+
(_board$getMainWindow = board.getMainWindow()) === null || _board$getMainWindow === void 0 || _board$getMainWindow.setAutoCancelDraw(true);
|
|
14
16
|
} else {
|
|
15
|
-
|
|
17
|
+
var _board$getMainWindow2;
|
|
18
|
+
(_board$getMainWindow2 = board.getMainWindow()) === null || _board$getMainWindow2 === void 0 || _board$getMainWindow2.setAutoCancelDraw(false);
|
|
16
19
|
}
|
|
17
20
|
}
|
|
18
21
|
}
|
|
19
22
|
});
|
|
20
23
|
};
|
|
21
24
|
export class FcrAnnotationControlImpl extends FcrBaseWhiteboardControlImpl {
|
|
22
|
-
logger = createLogger({
|
|
23
|
-
prefix: 'FcrAnnotationControlImpl'
|
|
24
|
-
});
|
|
25
25
|
constructor(rtmClient, config, forgeInitConfigFetcher, _sceneConfig, _api) {
|
|
26
26
|
super(rtmClient, config, forgeInitConfigFetcher, _api);
|
|
27
|
+
_defineProperty(this, "logger", createLogger({
|
|
28
|
+
prefix: 'FcrAnnotationControlImpl'
|
|
29
|
+
}));
|
|
27
30
|
this.rtmClient = rtmClient;
|
|
28
31
|
this.config = config;
|
|
29
32
|
this._sceneConfig = _sceneConfig;
|
|
@@ -37,7 +40,7 @@ export class FcrAnnotationControlImpl extends FcrBaseWhiteboardControlImpl {
|
|
|
37
40
|
} catch (e) {
|
|
38
41
|
const error = e;
|
|
39
42
|
const errorMessage = error.message;
|
|
40
|
-
throw generateFcrCoreClientError(FcrErrorModuleCode.FCR_ROOM_WHITEBOARD, FcrErrorCode.LOCAL_HTTP_REQUEST_FAILED,
|
|
43
|
+
throw generateFcrCoreClientError(FcrErrorModuleCode.FCR_ROOM_WHITEBOARD, FcrErrorCode.LOCAL_HTTP_REQUEST_FAILED, "sync screen share owner annotation open done failed: ".concat(errorMessage), errorMessage);
|
|
41
44
|
}
|
|
42
45
|
}
|
|
43
46
|
async syncWhiteboardWriteCount(isWritable) {
|
|
@@ -45,7 +48,7 @@ export class FcrAnnotationControlImpl extends FcrBaseWhiteboardControlImpl {
|
|
|
45
48
|
roomId: this.config.roomId,
|
|
46
49
|
userId: this.config.userId,
|
|
47
50
|
state: isWritable ? 1 : 0
|
|
48
|
-
}), ErrorModuleCode.FCR_ROOM_WHITEBOARD,
|
|
51
|
+
}), ErrorModuleCode.FCR_ROOM_WHITEBOARD, "set whiteboard write permission to ".concat(isWritable, " failed"));
|
|
49
52
|
return 0;
|
|
50
53
|
}
|
|
51
54
|
async open() {
|
|
@@ -71,11 +74,11 @@ export class FcrAnnotationControlImpl extends FcrBaseWhiteboardControlImpl {
|
|
|
71
74
|
}
|
|
72
75
|
}
|
|
73
76
|
export class FcrStandaloneAnnotationControlImpl extends FcrBaseWhiteboardControlImpl {
|
|
74
|
-
logger = createLogger({
|
|
75
|
-
prefix: 'FcrStandaloneAnnotationControlImpl'
|
|
76
|
-
});
|
|
77
77
|
constructor(rtmClient, config, forgeInitConfigFetcher, _sceneConfig) {
|
|
78
78
|
super(rtmClient, config, forgeInitConfigFetcher);
|
|
79
|
+
_defineProperty(this, "logger", createLogger({
|
|
80
|
+
prefix: 'FcrStandaloneAnnotationControlImpl'
|
|
81
|
+
}));
|
|
79
82
|
this.rtmClient = rtmClient;
|
|
80
83
|
this.config = config;
|
|
81
84
|
this._sceneConfig = _sceneConfig;
|
|
@@ -1,19 +1,28 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
import "core-js/modules/es.array.push.js";
|
|
1
5
|
import "core-js/modules/es.json.stringify.js";
|
|
6
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
|
7
|
+
import "core-js/modules/esnext.iterator.filter.js";
|
|
8
|
+
import "core-js/modules/esnext.iterator.for-each.js";
|
|
2
9
|
import { FcrAnnotationControlImpl, FcrStandaloneAnnotationControlImpl } from './control';
|
|
3
10
|
import { createLogger } from '../../../utilities/logger';
|
|
4
11
|
import { generateFcrCoreClientError, handleRequestError } from '../../../utilities/error';
|
|
5
12
|
import { getAnnotationBoardOptions } from '../../../utilities/shared-storage';
|
|
6
13
|
import { DetailErrorCode, ErrorModuleCode } from '../../../imports';
|
|
7
14
|
export class FcrAnnotationControlFactoryImpl {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
15
|
+
constructor() {
|
|
16
|
+
_defineProperty(this, "logger", createLogger({
|
|
17
|
+
prefix: 'FcrAnnotationControlFactory'
|
|
18
|
+
}));
|
|
19
|
+
}
|
|
11
20
|
createForSubProcess(rtmClient, config, annotationSceneConfig) {
|
|
12
|
-
this.logger.info(
|
|
21
|
+
this.logger.info("create for sub process with config: ".concat(JSON.stringify(config)));
|
|
13
22
|
return new FcrStandaloneAnnotationControlImpl(rtmClient, config, () => {
|
|
14
23
|
const forgeInitConfig = getAnnotationBoardOptions();
|
|
15
24
|
if (!forgeInitConfig) {
|
|
16
|
-
throw generateFcrCoreClientError(ErrorModuleCode.FCR_ROOM_WHITEBOARD, DetailErrorCode.UNDEFINED_ERROR,
|
|
25
|
+
throw generateFcrCoreClientError(ErrorModuleCode.FCR_ROOM_WHITEBOARD, DetailErrorCode.UNDEFINED_ERROR, "whiteboard init config is not exist");
|
|
17
26
|
}
|
|
18
27
|
return Promise.resolve(forgeInitConfig);
|
|
19
28
|
}, annotationSceneConfig);
|
|
@@ -32,10 +41,9 @@ export class FcrAnnotationControlFactoryImpl {
|
|
|
32
41
|
};
|
|
33
42
|
return async () => {
|
|
34
43
|
const response = await getObjectInitConfig(roomId, userId);
|
|
35
|
-
return {
|
|
36
|
-
...response.data,
|
|
44
|
+
return _objectSpread(_objectSpread({}, response.data), {}, {
|
|
37
45
|
boardPerformance
|
|
38
|
-
};
|
|
46
|
+
});
|
|
39
47
|
};
|
|
40
48
|
}
|
|
41
49
|
}
|