fcr-core 3.7.8 → 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/engine/index.js +6 -5
- package/lib/imports.d.ts +7 -2
- package/lib/imports.js +25 -4
- package/lib/index.d.ts +2 -2
- package/lib/index.js +12 -0
- package/lib/media-control/desktop.js +4 -4
- package/lib/media-control/mobile.js +20 -20
- package/lib/media-control/type.d.ts +8 -0
- package/lib/plugins/chatroom.js +19 -3
- 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/helpers/constants.d.ts +4 -0
- package/lib/room-control/helpers/constants.js +5 -1
- package/lib/room-control/index.js +16 -5
- package/lib/room-control/interpreter-control/index.js +2 -4
- package/lib/room-control/mainroom-control/index.js +66 -1
- package/lib/room-control/privilege-control/index.js +43 -3
- 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-control-factory.js +1 -1
- package/lib/room-control/room-session/index.js +23 -13
- package/lib/room-control/room-session/type.d.ts +2 -2
- package/lib/room-control/sharing-control/index.d.ts +5 -5
- package/lib/room-control/sharing-control/index.js +43 -13
- 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 +139 -36
- 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/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 +39 -233
- 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} +31 -18
- 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 +22 -21
- 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 +124 -191
- 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} +35 -44
- 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 +4 -0
- 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 +193 -24
- package/lib/type.d.ts +15 -2
- package/lib/type.js +13 -0
- package/lib/utilities/error-helpers.d.ts +2 -1
- package/lib/utilities/error-helpers.js +1 -0
- package/lib/utilities/error.d.ts +1 -0
- package/lib/utilities/error.js +1 -0
- package/lib/utilities/logger.d.ts +2 -2
- package/lib/utilities/shared-storage.d.ts +3 -1
- package/lib/utilities/shared-storage.js +9 -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 -262
- package/lib/room-control/whiteboard-control-v2/index.d.ts +0 -38
- package/lib/room-control/whiteboard-control-v2/index.js +0 -286
- 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 -32
- 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 -252
|
@@ -0,0 +1,571 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.symbol.description.js");
|
|
4
|
+
require("core-js/modules/es.error.cause.js");
|
|
5
|
+
require("core-js/modules/es.array.push.js");
|
|
6
|
+
require("core-js/modules/esnext.function.metadata.js");
|
|
7
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
|
8
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
9
|
+
require("core-js/modules/esnext.map.delete-all.js");
|
|
10
|
+
require("core-js/modules/esnext.map.emplace.js");
|
|
11
|
+
require("core-js/modules/esnext.map.every.js");
|
|
12
|
+
require("core-js/modules/esnext.map.filter.js");
|
|
13
|
+
require("core-js/modules/esnext.map.find.js");
|
|
14
|
+
require("core-js/modules/esnext.map.find-key.js");
|
|
15
|
+
require("core-js/modules/esnext.map.includes.js");
|
|
16
|
+
require("core-js/modules/esnext.map.key-of.js");
|
|
17
|
+
require("core-js/modules/esnext.map.map-keys.js");
|
|
18
|
+
require("core-js/modules/esnext.map.map-values.js");
|
|
19
|
+
require("core-js/modules/esnext.map.merge.js");
|
|
20
|
+
require("core-js/modules/esnext.map.reduce.js");
|
|
21
|
+
require("core-js/modules/esnext.map.some.js");
|
|
22
|
+
require("core-js/modules/esnext.map.update.js");
|
|
23
|
+
require("core-js/modules/esnext.symbol.metadata.js");
|
|
24
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
25
|
+
Object.defineProperty(exports, "__esModule", {
|
|
26
|
+
value: true
|
|
27
|
+
});
|
|
28
|
+
exports.FcrBoardMainWindowImpl = void 0;
|
|
29
|
+
require("core-js/modules/es.promise.finally.js");
|
|
30
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
31
|
+
require("core-js/modules/esnext.iterator.map.js");
|
|
32
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
33
|
+
require("core-js/modules/web.url.js");
|
|
34
|
+
require("core-js/modules/web.url.to-json.js");
|
|
35
|
+
require("core-js/modules/web.url-search-params.js");
|
|
36
|
+
require("core-js/modules/web.url-search-params.delete.js");
|
|
37
|
+
require("core-js/modules/web.url-search-params.has.js");
|
|
38
|
+
require("core-js/modules/web.url-search-params.size.js");
|
|
39
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
40
|
+
var _whiteSnapshot = require("@netless/white-snapshot");
|
|
41
|
+
var _windowManager = require("@netless/window-manager");
|
|
42
|
+
var _appliancePlugin = require("@netless/appliance-plugin");
|
|
43
|
+
require("@netless/appliance-plugin/dist/style.css");
|
|
44
|
+
require("@netless/window-manager/dist/style.css");
|
|
45
|
+
var _utils = require("./utils");
|
|
46
|
+
var _mountManager = require("./mount-manager");
|
|
47
|
+
var _jsMd = require("js-md5");
|
|
48
|
+
var _logger = require("../../utilities/logger");
|
|
49
|
+
var _imports = require("../../imports");
|
|
50
|
+
var _boardSubwindow = require("./board-subwindow");
|
|
51
|
+
var _fullWorker = _interopRequireDefault(require("@netless/appliance-plugin/dist/fullWorker.js?raw"));
|
|
52
|
+
var _subWorker = _interopRequireDefault(require("@netless/appliance-plugin/dist/subWorker.js?raw"));
|
|
53
|
+
var _lodash = require("lodash");
|
|
54
|
+
var _imports2 = require("agora-rte-sdk/lib/imports");
|
|
55
|
+
var _FcrBoardMainWindowImpl;
|
|
56
|
+
let _initProto; //@ts-ignore
|
|
57
|
+
//@ts-ignore
|
|
58
|
+
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; }
|
|
59
|
+
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) { (0, _defineProperty2.default)(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; }
|
|
60
|
+
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)]; } }; }
|
|
61
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
62
|
+
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); }
|
|
63
|
+
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; }
|
|
64
|
+
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; }
|
|
65
|
+
class FcrBoardMainWindowImpl {
|
|
66
|
+
constructor(room) {
|
|
67
|
+
(0, _defineProperty2.default)(this, "logger", (_initProto(this), (0, _logger.createLogger)({
|
|
68
|
+
prefix: 'FcrBoardMainWindowImpl'
|
|
69
|
+
})));
|
|
70
|
+
(0, _defineProperty2.default)(this, "_memberState", {});
|
|
71
|
+
(0, _defineProperty2.default)(this, "_observable", new _imports.AgoraObservable());
|
|
72
|
+
(0, _defineProperty2.default)(this, "_destroyed", false);
|
|
73
|
+
this._whiteBoardroom = room;
|
|
74
|
+
this._whiteView = document.createElement('div');
|
|
75
|
+
this._initView();
|
|
76
|
+
this._addLogObserver();
|
|
77
|
+
}
|
|
78
|
+
async getSnapshotImage() {
|
|
79
|
+
this._preCheck({
|
|
80
|
+
wm: false
|
|
81
|
+
});
|
|
82
|
+
const whiteRoom = this._whiteBoardroom;
|
|
83
|
+
let result = new ImageData(1, 1);
|
|
84
|
+
if (whiteRoom) {
|
|
85
|
+
const sceneMap = whiteRoom.entireScenes();
|
|
86
|
+
const scenes = Object.keys(sceneMap);
|
|
87
|
+
if (scenes.length) {
|
|
88
|
+
const _room = Object.create(whiteRoom);
|
|
89
|
+
_room.state.cameraState = {
|
|
90
|
+
width: 2038,
|
|
91
|
+
height: 940
|
|
92
|
+
}; // 创建一个宽高
|
|
93
|
+
|
|
94
|
+
const cps = sceneMap['/'].map(scene => {
|
|
95
|
+
return () => (0, _whiteSnapshot.snapshot)(_room, {
|
|
96
|
+
scenePath: '/' + scene.name,
|
|
97
|
+
crossorigin: true,
|
|
98
|
+
background: '#fff',
|
|
99
|
+
src2dataurl: _utils.src2DataURL
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
try {
|
|
103
|
+
const merged = await (0, _utils.mergeCanvasImage)(cps);
|
|
104
|
+
const ctx = merged.getContext('2d');
|
|
105
|
+
if (ctx) {
|
|
106
|
+
result = ctx.getImageData(0, 0, merged.width, merged.height);
|
|
107
|
+
return result;
|
|
108
|
+
}
|
|
109
|
+
} catch (e) {
|
|
110
|
+
this.logger.error('[FcrBoardMainWindow] failed to take snapshot', e);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return result;
|
|
115
|
+
}
|
|
116
|
+
addObserver(observer) {
|
|
117
|
+
this._observable.addObserver(observer);
|
|
118
|
+
}
|
|
119
|
+
removeObserver(observer) {
|
|
120
|
+
this._observable.removeObserver(observer);
|
|
121
|
+
}
|
|
122
|
+
getContentView() {
|
|
123
|
+
return this._whiteView;
|
|
124
|
+
}
|
|
125
|
+
setScale(value) {
|
|
126
|
+
var _this$_windowManager;
|
|
127
|
+
const scale = Math.max(Math.min(value, 3), -3);
|
|
128
|
+
(_this$_windowManager = this._windowManager) === null || _this$_windowManager === void 0 || _this$_windowManager.moveCamera({
|
|
129
|
+
scale
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
async openSubWindowWithTaskId(title, taskId, urlPrefix) {
|
|
133
|
+
var _this$_windowManager2;
|
|
134
|
+
const appId = await ((_this$_windowManager2 = this._windowManager) === null || _this$_windowManager2 === void 0 ? void 0 : _this$_windowManager2.addApp({
|
|
135
|
+
kind: 'Slide',
|
|
136
|
+
options: {
|
|
137
|
+
scenePath: "/ppt".concat(taskId),
|
|
138
|
+
title
|
|
139
|
+
},
|
|
140
|
+
attributes: {
|
|
141
|
+
taskId,
|
|
142
|
+
url: urlPrefix
|
|
143
|
+
}
|
|
144
|
+
}));
|
|
145
|
+
if (appId) {
|
|
146
|
+
var _this$_windowManager3;
|
|
147
|
+
const app = (_this$_windowManager3 = this._windowManager) === null || _this$_windowManager3 === void 0 || (_this$_windowManager3 = _this$_windowManager3.apps) === null || _this$_windowManager3 === void 0 ? void 0 : _this$_windowManager3[appId];
|
|
148
|
+
return app ? new _boardSubwindow.FcrBoardSubWindowImpl(appId) : undefined;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
async openSubWindowWithPageList(title, pageList) {
|
|
152
|
+
var _this$_windowManager4;
|
|
153
|
+
const scenePath = "/".concat(Date.now());
|
|
154
|
+
const appId = await ((_this$_windowManager4 = this._windowManager) === null || _this$_windowManager4 === void 0 ? void 0 : _this$_windowManager4.addApp({
|
|
155
|
+
kind: _windowManager.BuiltinApps.DocsViewer,
|
|
156
|
+
options: {
|
|
157
|
+
scenePath,
|
|
158
|
+
title,
|
|
159
|
+
scenes: this._convertToScenes(pageList)
|
|
160
|
+
}
|
|
161
|
+
}));
|
|
162
|
+
if (appId) {
|
|
163
|
+
var _this$_windowManager5;
|
|
164
|
+
const app = (_this$_windowManager5 = this._windowManager) === null || _this$_windowManager5 === void 0 || (_this$_windowManager5 = _this$_windowManager5.apps) === null || _this$_windowManager5 === void 0 ? void 0 : _this$_windowManager5[appId];
|
|
165
|
+
return app ? new _boardSubwindow.FcrBoardSubWindowImpl(appId) : undefined;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
async setContainerSizeRatio(ratio) {
|
|
169
|
+
var _this$_windowManager6;
|
|
170
|
+
this._preCheck();
|
|
171
|
+
(_this$_windowManager6 = this._windowManager) === null || _this$_windowManager6 === void 0 || _this$_windowManager6.setContainerSizeRatio(ratio);
|
|
172
|
+
}
|
|
173
|
+
getPageInfo() {
|
|
174
|
+
this._preCheck();
|
|
175
|
+
const windowManager = this._windowManager;
|
|
176
|
+
return {
|
|
177
|
+
showIndex: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewSceneIndex) || 0,
|
|
178
|
+
count: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewScenesLength) || 0
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
async addPage() {
|
|
182
|
+
var _this$_windowManager7;
|
|
183
|
+
this._preCheck();
|
|
184
|
+
if ((_this$_windowManager7 = this._windowManager) !== null && _this$_windowManager7 !== void 0 && _this$_windowManager7.addPage) {
|
|
185
|
+
await this._windowManager.addPage();
|
|
186
|
+
await this._windowManager.nextPage();
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
async removePage() {
|
|
190
|
+
var _this$_windowManager8;
|
|
191
|
+
this._preCheck();
|
|
192
|
+
if ((_this$_windowManager8 = this._windowManager) !== null && _this$_windowManager8 !== void 0 && _this$_windowManager8.removePage) {
|
|
193
|
+
await this._windowManager.removePage();
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
async prevPage() {
|
|
197
|
+
var _this$_windowManager9;
|
|
198
|
+
this._preCheck();
|
|
199
|
+
if ((_this$_windowManager9 = this._windowManager) !== null && _this$_windowManager9 !== void 0 && _this$_windowManager9.prevPage) {
|
|
200
|
+
await this._windowManager.prevPage();
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
async nextPage() {
|
|
204
|
+
var _this$_windowManager0;
|
|
205
|
+
this._preCheck();
|
|
206
|
+
if ((_this$_windowManager0 = this._windowManager) !== null && _this$_windowManager0 !== void 0 && _this$_windowManager0.nextPage) {
|
|
207
|
+
await this._windowManager.nextPage();
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
async undo() {
|
|
211
|
+
this._preCheck({
|
|
212
|
+
wm: false
|
|
213
|
+
});
|
|
214
|
+
this._whiteBoardroom.undo();
|
|
215
|
+
}
|
|
216
|
+
async redo() {
|
|
217
|
+
this._preCheck({
|
|
218
|
+
wm: false
|
|
219
|
+
});
|
|
220
|
+
this._whiteBoardroom.redo();
|
|
221
|
+
}
|
|
222
|
+
async clean(retainPpt) {
|
|
223
|
+
this._preCheck({
|
|
224
|
+
wm: false
|
|
225
|
+
});
|
|
226
|
+
// this._whiteBoardroom?.cleanScene?.(true); // new version methods
|
|
227
|
+
this._whiteBoardroom.cleanCurrentScene(retainPpt);
|
|
228
|
+
}
|
|
229
|
+
async setToolType(type) {
|
|
230
|
+
this._preCheck({
|
|
231
|
+
wm: false
|
|
232
|
+
});
|
|
233
|
+
const [tool, shape] = (0, _utils.convertToNetlessBoardTool)(type);
|
|
234
|
+
const strokeType = (0, _utils.convertToNetlessStorkeType)(type);
|
|
235
|
+
const change = {
|
|
236
|
+
currentApplianceName: tool,
|
|
237
|
+
shapeType: shape,
|
|
238
|
+
strokeType
|
|
239
|
+
};
|
|
240
|
+
this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
|
|
241
|
+
if (this._windowManager) {
|
|
242
|
+
var _this$_appliancePlugi;
|
|
243
|
+
(_this$_appliancePlugi = this._appliancePluginInstance) === null || _this$_appliancePlugi === void 0 || _this$_appliancePlugi.setMemberState(change);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
async setStrokeWidth(strokeWidth) {
|
|
247
|
+
this._preCheck();
|
|
248
|
+
const change = {
|
|
249
|
+
strokeWidth
|
|
250
|
+
};
|
|
251
|
+
this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
|
|
252
|
+
if (this._windowManager) {
|
|
253
|
+
this._whiteBoardroom.setMemberState(change);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
async setStrokeColor(color) {
|
|
257
|
+
var _color$a;
|
|
258
|
+
this._preCheck();
|
|
259
|
+
const change = {
|
|
260
|
+
strokeColor: [color.r, color.g, color.b],
|
|
261
|
+
strokeOpacity: (_color$a = color.a) !== null && _color$a !== void 0 ? _color$a : 1
|
|
262
|
+
};
|
|
263
|
+
this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
|
|
264
|
+
if (this._windowManager) {
|
|
265
|
+
this._whiteBoardroom.setMemberState(change);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
async setTextColor(color) {
|
|
269
|
+
var _color$a2;
|
|
270
|
+
this._preCheck();
|
|
271
|
+
const change = {
|
|
272
|
+
textColor: [color.r, color.g, color.b],
|
|
273
|
+
textOpacity: (_color$a2 = color.a) !== null && _color$a2 !== void 0 ? _color$a2 : 1
|
|
274
|
+
};
|
|
275
|
+
this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
|
|
276
|
+
if (this._windowManager) {
|
|
277
|
+
this._whiteBoardroom.setMemberState(change);
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
async setTextSize(size) {
|
|
281
|
+
this._preCheck();
|
|
282
|
+
const change = {
|
|
283
|
+
textSize: size
|
|
284
|
+
};
|
|
285
|
+
this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
|
|
286
|
+
if (this._windowManager) {
|
|
287
|
+
this._whiteBoardroom.setMemberState(change);
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
async setFillColor(fillColor) {
|
|
291
|
+
var _fillColor$a;
|
|
292
|
+
this._preCheck();
|
|
293
|
+
const change = {
|
|
294
|
+
fillColor: [fillColor.r, fillColor.g, fillColor.b],
|
|
295
|
+
fillOpacity: (_fillColor$a = fillColor.a) !== null && _fillColor$a !== void 0 ? _fillColor$a : 1
|
|
296
|
+
};
|
|
297
|
+
this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
|
|
298
|
+
if (this._windowManager) {
|
|
299
|
+
this._whiteBoardroom.setMemberState(change);
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
async setEraserSize(size) {
|
|
303
|
+
this._preCheck();
|
|
304
|
+
const change = {
|
|
305
|
+
pencilEraserSize: size
|
|
306
|
+
};
|
|
307
|
+
this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
|
|
308
|
+
if (this._windowManager) {
|
|
309
|
+
this._whiteBoardroom.setMemberState(change);
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
async setBackgroundColor(color) {
|
|
313
|
+
var _this$_whiteView$quer;
|
|
314
|
+
this._preCheck();
|
|
315
|
+
this._backgroundColor = color;
|
|
316
|
+
(_this$_whiteView$quer = this._whiteView.querySelector('.netless-whiteboard')) === null || _this$_whiteView$quer === void 0 || _this$_whiteView$quer.style.setProperty('background-color', color);
|
|
317
|
+
}
|
|
318
|
+
async insertImage(resourceUrl, x, y, width, height) {
|
|
319
|
+
const room = this._whiteBoardroom;
|
|
320
|
+
const windowManager = this._windowManager;
|
|
321
|
+
const preX = x;
|
|
322
|
+
const preY = y;
|
|
323
|
+
const preWidth = width;
|
|
324
|
+
const preHeight = height;
|
|
325
|
+
if (windowManager) {
|
|
326
|
+
var _this$_whiteView$clie, _this$_whiteView, _this$_whiteView$clie2, _this$_whiteView2;
|
|
327
|
+
let originX = 0;
|
|
328
|
+
let originY = 0;
|
|
329
|
+
if (this._whiteView) {
|
|
330
|
+
originX = this._whiteView.clientWidth / 2;
|
|
331
|
+
originY = this._whiteView.clientHeight / 2;
|
|
332
|
+
}
|
|
333
|
+
const {
|
|
334
|
+
x,
|
|
335
|
+
y
|
|
336
|
+
} = windowManager.mainView.convertToPointInWorld({
|
|
337
|
+
x: preX !== null && preX !== void 0 ? preX : originX,
|
|
338
|
+
y: preY !== null && preY !== void 0 ? preY : originY
|
|
339
|
+
});
|
|
340
|
+
const containerSize = {
|
|
341
|
+
width: (_this$_whiteView$clie = (_this$_whiteView = this._whiteView) === null || _this$_whiteView === void 0 ? void 0 : _this$_whiteView.clientWidth) !== null && _this$_whiteView$clie !== void 0 ? _this$_whiteView$clie : window.innerWidth,
|
|
342
|
+
height: (_this$_whiteView$clie2 = (_this$_whiteView2 = this._whiteView) === null || _this$_whiteView2 === void 0 ? void 0 : _this$_whiteView2.clientHeight) !== null && _this$_whiteView$clie2 !== void 0 ? _this$_whiteView$clie2 : window.innerHeight
|
|
343
|
+
};
|
|
344
|
+
const uuid = (0, _jsMd.md5)(resourceUrl);
|
|
345
|
+
const {
|
|
346
|
+
width,
|
|
347
|
+
height
|
|
348
|
+
} = await (0, _utils.fetchImageInfoByUrl)(resourceUrl, containerSize);
|
|
349
|
+
const imageInfo = {
|
|
350
|
+
uuid: uuid,
|
|
351
|
+
centerX: x,
|
|
352
|
+
centerY: y,
|
|
353
|
+
width: preWidth !== null && preWidth !== void 0 ? preWidth : width,
|
|
354
|
+
height: preHeight !== null && preHeight !== void 0 ? preHeight : height,
|
|
355
|
+
locked: false
|
|
356
|
+
};
|
|
357
|
+
windowManager.switchMainViewToWriter();
|
|
358
|
+
room.insertImage(imageInfo);
|
|
359
|
+
room.completeImageUpload(uuid, resourceUrl);
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
async insertMedia(resourceUrl, title) {
|
|
363
|
+
const windowManager = this._windowManager;
|
|
364
|
+
const room = this._whiteBoardroom;
|
|
365
|
+
if (windowManager) {
|
|
366
|
+
windowManager.addApp({
|
|
367
|
+
kind: _windowManager.BuiltinApps.MediaPlayer,
|
|
368
|
+
src: resourceUrl,
|
|
369
|
+
options: {
|
|
370
|
+
title: title
|
|
371
|
+
},
|
|
372
|
+
attributes: {
|
|
373
|
+
url: resourceUrl
|
|
374
|
+
}
|
|
375
|
+
});
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
destroy() {
|
|
379
|
+
if (this._windowManager) {
|
|
380
|
+
this._windowManager.destroy();
|
|
381
|
+
this._windowManager = undefined;
|
|
382
|
+
}
|
|
383
|
+
this._destroyed = true;
|
|
384
|
+
}
|
|
385
|
+
getWritable() {
|
|
386
|
+
return this._whiteBoardroom.isWritable;
|
|
387
|
+
}
|
|
388
|
+
_convertToScenes(pageList) {
|
|
389
|
+
return pageList.map(page => ({
|
|
390
|
+
name: page.name,
|
|
391
|
+
ppt: {
|
|
392
|
+
src: page.contentUrl,
|
|
393
|
+
width: page.contentWidth,
|
|
394
|
+
height: page.contentHeight,
|
|
395
|
+
previewURL: page.previewUrl
|
|
396
|
+
}
|
|
397
|
+
}));
|
|
398
|
+
}
|
|
399
|
+
_preCheck() {
|
|
400
|
+
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
401
|
+
const {
|
|
402
|
+
privilege = true,
|
|
403
|
+
wm = true
|
|
404
|
+
} = options;
|
|
405
|
+
if (privilege && !this._whiteBoardroom.isWritable) {
|
|
406
|
+
this.logger.warn('Try to operate on board window without operation privilege');
|
|
407
|
+
}
|
|
408
|
+
if (wm && !this._windowManager) {
|
|
409
|
+
this.logger.warn('Try to operate on board window when board window not mounted');
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
_addWindowManagerEventListeners() {
|
|
413
|
+
const windowManager = this._windowManager;
|
|
414
|
+
windowManager === null || windowManager === void 0 || windowManager.emitter.on('mainViewSceneIndexChange', showIndex => {
|
|
415
|
+
const state = {
|
|
416
|
+
showIndex: showIndex,
|
|
417
|
+
count: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewScenesLength) || 0
|
|
418
|
+
};
|
|
419
|
+
this._observable.notifyObservers('onPageInfoUpdated', state);
|
|
420
|
+
});
|
|
421
|
+
windowManager === null || windowManager === void 0 || windowManager.emitter.on('mainViewScenesLengthChange', count => {
|
|
422
|
+
const state = {
|
|
423
|
+
showIndex: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewSceneIndex) || 0,
|
|
424
|
+
count: count
|
|
425
|
+
};
|
|
426
|
+
this._observable.notifyObservers('onPageInfoUpdated', state);
|
|
427
|
+
});
|
|
428
|
+
windowManager === null || windowManager === void 0 || windowManager.emitter.on('canUndoStepsChange', steps => {
|
|
429
|
+
this._observable.notifyObservers('onUndoStateUpdated', steps > 0);
|
|
430
|
+
});
|
|
431
|
+
windowManager === null || windowManager === void 0 || windowManager.emitter.on('canRedoStepsChange', steps => {
|
|
432
|
+
this._observable.notifyObservers('onRedoStateUpdated', steps > 0);
|
|
433
|
+
});
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
// don't remove, used by FcrWhiteboardControl
|
|
437
|
+
async _mount() {
|
|
438
|
+
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
439
|
+
let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
440
|
+
this._whiteboardPrivateParameters = params;
|
|
441
|
+
if (this._whiteBoardroom) {
|
|
442
|
+
var _this$_whiteboardPriv, _this$_whiteboardPriv2, _this$_whiteboardPriv3, _this$_whiteboardPriv4, _this$_whiteboardPriv5, _this$_whiteboardPriv6, _this$_whiteboardPriv7, _this$_whiteboardPriv8;
|
|
443
|
+
this._destroyed = false;
|
|
444
|
+
if (_mountManager.BoardMountManager.isMounting) {
|
|
445
|
+
this.logger.info('[FcrBoardMainWindow] wait for previous board window mounted, white room id:', this._whiteBoardroom.uuid);
|
|
446
|
+
// await when(() => !BoardMountManager.isMounting);
|
|
447
|
+
this.logger.info('[FcrBoardMainWindow] previous board window mounted, start mount current board window, white room id:', this._whiteBoardroom.uuid);
|
|
448
|
+
}
|
|
449
|
+
if (this._destroyed) {
|
|
450
|
+
this.logger.info('[FcrBoardMainWindow] current board window has been destroyed, white room id:', this._whiteBoardroom.uuid);
|
|
451
|
+
return;
|
|
452
|
+
}
|
|
453
|
+
_mountManager.BoardMountManager.setIsMounting(true);
|
|
454
|
+
this.logger.info('start mount board window, white room id:', this._whiteBoardroom.uuid);
|
|
455
|
+
const extras = (_this$_whiteboardPriv = (_this$_whiteboardPriv2 = this._whiteboardPrivateParameters) === null || _this$_whiteboardPriv2 === void 0 ? void 0 : _this$_whiteboardPriv2.extras) !== null && _this$_whiteboardPriv !== void 0 ? _this$_whiteboardPriv : {};
|
|
456
|
+
const cursor = (_this$_whiteboardPriv3 = (_this$_whiteboardPriv4 = this._whiteboardPrivateParameters) === null || _this$_whiteboardPriv4 === void 0 ? void 0 : _this$_whiteboardPriv4.cursor) !== null && _this$_whiteboardPriv3 !== void 0 ? _this$_whiteboardPriv3 : true;
|
|
457
|
+
const extendClass = (_this$_whiteboardPriv5 = this._whiteboardPrivateParameters) === null || _this$_whiteboardPriv5 === void 0 ? void 0 : _this$_whiteboardPriv5.extendClass;
|
|
458
|
+
const containerElement = (_this$_whiteboardPriv6 = this._whiteboardPrivateParameters) === null || _this$_whiteboardPriv6 === void 0 ? void 0 : _this$_whiteboardPriv6.containerElement;
|
|
459
|
+
let windowManagerParams = (_this$_whiteboardPriv7 = (_this$_whiteboardPriv8 = this._whiteboardPrivateParameters) === null || _this$_whiteboardPriv8 === void 0 ? void 0 : _this$_whiteboardPriv8.windowManagerParams) !== null && _this$_whiteboardPriv7 !== void 0 ? _this$_whiteboardPriv7 : {};
|
|
460
|
+
this.logger.info("set whiteboard extendClass: ".concat(extendClass));
|
|
461
|
+
this.logger.info("set whiteboard cursor: ".concat(cursor));
|
|
462
|
+
this.logger.info("set whiteboard extras: ".concat((0, _imports2.jsonstring)(extras)));
|
|
463
|
+
this.logger.info("set whiteboard windowManagerParams: ".concat((0, _imports2.jsonstring)(windowManagerParams)));
|
|
464
|
+
if (!(0, _lodash.isPlainObject)(windowManagerParams)) {
|
|
465
|
+
this.logger.warn('windowManagerParams is not a plain object');
|
|
466
|
+
windowManagerParams = {};
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
// 提前将 view 挂载到 containerElement 上,避免白板初始化时无法获取到正确的宽高
|
|
470
|
+
if (containerElement) {
|
|
471
|
+
containerElement.appendChild(this._whiteView);
|
|
472
|
+
}
|
|
473
|
+
await _windowManager.WindowManager.mount(_objectSpread({
|
|
474
|
+
debug: true,
|
|
475
|
+
room: this._whiteBoardroom,
|
|
476
|
+
container: this._whiteView,
|
|
477
|
+
cursor: cursor,
|
|
478
|
+
chessboard: false,
|
|
479
|
+
collectorContainer: options.collectorContainer,
|
|
480
|
+
containerSizeRatio: options.containerSizeRatio,
|
|
481
|
+
supportAppliancePlugin: true
|
|
482
|
+
}, windowManagerParams), extendClass).then(async wm => {
|
|
483
|
+
if (this._destroyed) {
|
|
484
|
+
wm.destroy();
|
|
485
|
+
return;
|
|
486
|
+
}
|
|
487
|
+
//@ts-ignore
|
|
488
|
+
window._wm = wm;
|
|
489
|
+
this._windowManager = wm;
|
|
490
|
+
this._windowManager.mainView.disableCameraTransform = true;
|
|
491
|
+
this._addWindowManagerEventListeners();
|
|
492
|
+
if (this._backgroundColor) {
|
|
493
|
+
var _this$_whiteView$quer2;
|
|
494
|
+
(_this$_whiteView$quer2 = this._whiteView.querySelector('.netless-whiteboard')) === null || _this$_whiteView$quer2 === void 0 || _this$_whiteView$quer2.style.setProperty('background-color', this._backgroundColor);
|
|
495
|
+
}
|
|
496
|
+
const fullWorkerBlob = new Blob([_fullWorker.default], {
|
|
497
|
+
type: 'text/javascript'
|
|
498
|
+
});
|
|
499
|
+
const fullWorkerUrl = URL.createObjectURL(fullWorkerBlob);
|
|
500
|
+
const subWorkerBlob = new Blob([_subWorker.default], {
|
|
501
|
+
type: 'text/javascript'
|
|
502
|
+
});
|
|
503
|
+
const subWorkerUrl = URL.createObjectURL(subWorkerBlob);
|
|
504
|
+
await this._windowManager.switchMainViewToWriter();
|
|
505
|
+
const appliancePluginInstance = await _appliancePlugin.ApplianceMultiPlugin.getInstance(wm, {
|
|
506
|
+
options: {
|
|
507
|
+
cdn: {
|
|
508
|
+
fullWorkerUrl,
|
|
509
|
+
subWorkerUrl
|
|
510
|
+
},
|
|
511
|
+
extras
|
|
512
|
+
}
|
|
513
|
+
});
|
|
514
|
+
|
|
515
|
+
//@ts-ignore
|
|
516
|
+
window.appliancePluginInstance = appliancePluginInstance;
|
|
517
|
+
this._appliancePluginInstance = appliancePluginInstance;
|
|
518
|
+
if (appliancePluginInstance.injectMethodToObject) {
|
|
519
|
+
appliancePluginInstance.injectMethodToObject(window, 'requestIdleCallback');
|
|
520
|
+
appliancePluginInstance.injectMethodToObject(window, 'cancelIdleCallback');
|
|
521
|
+
}
|
|
522
|
+
appliancePluginInstance.addListener('forceStop', reason => {
|
|
523
|
+
if (reason == 'longPencil') {
|
|
524
|
+
window.postMessage({
|
|
525
|
+
type: 'white-board-error',
|
|
526
|
+
data: {
|
|
527
|
+
reason: 'longPencil'
|
|
528
|
+
}
|
|
529
|
+
}, '*');
|
|
530
|
+
}
|
|
531
|
+
});
|
|
532
|
+
const hasPermission = this._whiteBoardroom.isWritable;
|
|
533
|
+
this.logger.info("after mount, isWritable: ".concat(hasPermission));
|
|
534
|
+
if (hasPermission) {
|
|
535
|
+
this._whiteBoardroom.setMemberState(this._memberState);
|
|
536
|
+
appliancePluginInstance.setMemberState({
|
|
537
|
+
strokeType: _appliancePlugin.EStrokeType.Normal
|
|
538
|
+
});
|
|
539
|
+
}
|
|
540
|
+
}).catch(e => {
|
|
541
|
+
this.logger.error('[FcrBoardMainWindow] failed to mount', e);
|
|
542
|
+
}).finally(() => {
|
|
543
|
+
this.logger.info('[FcrBoardMainWindow] finish mount board window, white room id:', this._whiteBoardroom.uuid);
|
|
544
|
+
_mountManager.BoardMountManager.setIsMounting(false);
|
|
545
|
+
});
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
_initView() {
|
|
549
|
+
this._whiteView.style.width = '100%';
|
|
550
|
+
this._whiteView.style.height = '100%';
|
|
551
|
+
this._whiteView.classList.add('fcr-whiteboard-window-view');
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
// don't remove, used by FcrWhiteboardControl
|
|
555
|
+
async _setRoom(room, options, params) {
|
|
556
|
+
this._whiteBoardroom = room;
|
|
557
|
+
if (this._windowManager) {
|
|
558
|
+
this.logger.info('destroy previous window manager');
|
|
559
|
+
this._windowManager.destroy();
|
|
560
|
+
}
|
|
561
|
+
await this._mount(options, params);
|
|
562
|
+
this.logger.info('restore member state');
|
|
563
|
+
room.setMemberState(this._memberState);
|
|
564
|
+
}
|
|
565
|
+
_addLogObserver() {
|
|
566
|
+
this.addObserver((0, _logger.generateLogObserver)(this.logger, ['onWritable', 'onPageInfoUpdated', 'onUndoStateUpdated', 'onRedoStateUpdated']));
|
|
567
|
+
}
|
|
568
|
+
}
|
|
569
|
+
exports.FcrBoardMainWindowImpl = FcrBoardMainWindowImpl;
|
|
570
|
+
_FcrBoardMainWindowImpl = FcrBoardMainWindowImpl;
|
|
571
|
+
[_initProto] = _applyDecs(_FcrBoardMainWindowImpl, [[[_imports.bound, _imports.trace], 2, "getSnapshotImage"], [_imports.trace, 2, "addObserver"], [_imports.trace, 2, "removeObserver"], [_imports.trace, 2, "getContentView"], [_imports.bound, 2, "setScale"], [_imports.bound, 2, "openSubWindowWithTaskId"], [_imports.bound, 2, "openSubWindowWithPageList"], [_imports.trace, 2, "getPageInfo"], [[_imports.bound, _imports.trace], 2, "addPage"], [[_imports.bound, _imports.trace], 2, "removePage"], [_imports.trace, 2, "prevPage"], [_imports.trace, 2, "nextPage"], [[_imports.bound, _imports.trace], 2, "undo"], [[_imports.bound, _imports.trace], 2, "redo"], [[_imports.bound, _imports.trace], 2, "clean"], [[_imports.bound, _imports.trace], 2, "setToolType"], [[_imports.bound, _imports.trace], 2, "setStrokeWidth"], [[_imports.bound, _imports.trace], 2, "setStrokeColor"], [[_imports.bound, _imports.trace], 2, "setTextColor"], [[_imports.bound, _imports.trace], 2, "setTextSize"], [[_imports.bound, _imports.trace], 2, "setFillColor"], [[_imports.bound, _imports.trace], 2, "setEraserSize"], [[_imports.bound, _imports.trace], 2, "setBackgroundColor"], [[_imports.bound, _imports.trace], 2, "insertImage"], [[_imports.bound, _imports.trace], 2, "insertMedia"], [_imports.trace, 2, "destroy"], [_imports.trace, 2, "getWritable"], [_imports.trace, 2, "_mount"], [_imports.trace, 2, "_setRoom"]], []).e;
|
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
export declare enum FcrBoardRegion {
|
|
2
|
-
CN = "cn-hz",
|
|
3
|
-
US = "us-sv",
|
|
4
|
-
IN = "in-mum",
|
|
5
|
-
SG = "sg",
|
|
6
|
-
GB = "gb-lon"
|
|
7
|
-
}
|
|
8
1
|
export declare enum FcrBoardShape {
|
|
9
2
|
Curve = 1,
|
|
10
3
|
Straight = 2,
|
|
@@ -37,11 +30,6 @@ export declare enum RoomPhase {
|
|
|
37
30
|
*/
|
|
38
31
|
Disconnected = "disconnected"
|
|
39
32
|
}
|
|
40
|
-
export declare enum FcrBoardMainWindowFailureReason {
|
|
41
|
-
ResourceWindowAlreadyOpened = "resource-window-already-opened",
|
|
42
|
-
SnapshotFailure = "snapshot-failure",
|
|
43
|
-
MountFailure = "mount-failure"
|
|
44
|
-
}
|
|
45
33
|
export declare enum ViewMode {
|
|
46
34
|
/**
|
|
47
35
|
* 自由模式。不跟随任何人,也不被任何人跟随,自己可以自由操作视角。
|
|
@@ -142,10 +130,6 @@ export declare enum ShapeType {
|
|
|
142
130
|
*/
|
|
143
131
|
SpeechBalloon = "speechBalloon"
|
|
144
132
|
}
|
|
145
|
-
export declare enum FcrSharePermissionState {
|
|
146
|
-
ON = 1,
|
|
147
|
-
OFF = 0
|
|
148
|
-
}
|
|
149
133
|
export declare enum FcrBoardToolType {
|
|
150
134
|
NONE = 0,
|
|
151
135
|
SELECTOR = 1,
|
|
@@ -160,5 +144,7 @@ export declare enum FcrBoardToolType {
|
|
|
160
144
|
TRIANGLE = 10,
|
|
161
145
|
RHOMBUS = 11,
|
|
162
146
|
PENTAGRAM = 12,
|
|
163
|
-
ELLIPSE = 13
|
|
147
|
+
ELLIPSE = 13,
|
|
148
|
+
DOTTED_LINE = 14,
|
|
149
|
+
LONG_DOTTED_LINE = 15
|
|
164
150
|
}
|
|
@@ -3,15 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.ViewMode = exports.ShapeType = exports.RoomPhase = exports.
|
|
7
|
-
let FcrBoardRegion = exports.FcrBoardRegion = /*#__PURE__*/function (FcrBoardRegion) {
|
|
8
|
-
FcrBoardRegion["CN"] = "cn-hz";
|
|
9
|
-
FcrBoardRegion["US"] = "us-sv";
|
|
10
|
-
FcrBoardRegion["IN"] = "in-mum";
|
|
11
|
-
FcrBoardRegion["SG"] = "sg";
|
|
12
|
-
FcrBoardRegion["GB"] = "gb-lon";
|
|
13
|
-
return FcrBoardRegion;
|
|
14
|
-
}({});
|
|
6
|
+
exports.ViewMode = exports.ShapeType = exports.RoomPhase = exports.FcrBoardToolType = exports.FcrBoardShape = exports.DeviceType = exports.ApplianceNames = void 0;
|
|
15
7
|
let FcrBoardShape = exports.FcrBoardShape = /*#__PURE__*/function (FcrBoardShape) {
|
|
16
8
|
FcrBoardShape[FcrBoardShape["Curve"] = 1] = "Curve";
|
|
17
9
|
FcrBoardShape[FcrBoardShape["Straight"] = 2] = "Straight";
|
|
@@ -46,12 +38,6 @@ let RoomPhase = exports.RoomPhase = /*#__PURE__*/function (RoomPhase) {
|
|
|
46
38
|
RoomPhase["Disconnected"] = "disconnected";
|
|
47
39
|
return RoomPhase;
|
|
48
40
|
}({});
|
|
49
|
-
let FcrBoardMainWindowFailureReason = exports.FcrBoardMainWindowFailureReason = /*#__PURE__*/function (FcrBoardMainWindowFailureReason) {
|
|
50
|
-
FcrBoardMainWindowFailureReason["ResourceWindowAlreadyOpened"] = "resource-window-already-opened";
|
|
51
|
-
FcrBoardMainWindowFailureReason["SnapshotFailure"] = "snapshot-failure";
|
|
52
|
-
FcrBoardMainWindowFailureReason["MountFailure"] = "mount-failure";
|
|
53
|
-
return FcrBoardMainWindowFailureReason;
|
|
54
|
-
}({});
|
|
55
41
|
let ViewMode = exports.ViewMode = /*#__PURE__*/function (ViewMode) {
|
|
56
42
|
/**
|
|
57
43
|
* 自由模式。不跟随任何人,也不被任何人跟随,自己可以自由操作视角。
|
|
@@ -156,11 +142,6 @@ let ShapeType = exports.ShapeType = /*#__PURE__*/function (ShapeType) {
|
|
|
156
142
|
ShapeType["SpeechBalloon"] = "speechBalloon";
|
|
157
143
|
return ShapeType;
|
|
158
144
|
}({});
|
|
159
|
-
let FcrSharePermissionState = exports.FcrSharePermissionState = /*#__PURE__*/function (FcrSharePermissionState) {
|
|
160
|
-
FcrSharePermissionState[FcrSharePermissionState["ON"] = 1] = "ON";
|
|
161
|
-
FcrSharePermissionState[FcrSharePermissionState["OFF"] = 0] = "OFF";
|
|
162
|
-
return FcrSharePermissionState;
|
|
163
|
-
}({});
|
|
164
145
|
let FcrBoardToolType = exports.FcrBoardToolType = /*#__PURE__*/function (FcrBoardToolType) {
|
|
165
146
|
FcrBoardToolType[FcrBoardToolType["NONE"] = 0] = "NONE";
|
|
166
147
|
FcrBoardToolType[FcrBoardToolType["SELECTOR"] = 1] = "SELECTOR";
|
|
@@ -176,5 +157,7 @@ let FcrBoardToolType = exports.FcrBoardToolType = /*#__PURE__*/function (FcrBoar
|
|
|
176
157
|
FcrBoardToolType[FcrBoardToolType["RHOMBUS"] = 11] = "RHOMBUS";
|
|
177
158
|
FcrBoardToolType[FcrBoardToolType["PENTAGRAM"] = 12] = "PENTAGRAM";
|
|
178
159
|
FcrBoardToolType[FcrBoardToolType["ELLIPSE"] = 13] = "ELLIPSE";
|
|
160
|
+
FcrBoardToolType[FcrBoardToolType["DOTTED_LINE"] = 14] = "DOTTED_LINE";
|
|
161
|
+
FcrBoardToolType[FcrBoardToolType["LONG_DOTTED_LINE"] = 15] = "LONG_DOTTED_LINE";
|
|
179
162
|
return FcrBoardToolType;
|
|
180
163
|
}({});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { AgoraRteScene } from 'agora-rte-sdk';
|
|
2
|
+
import { FcrCoreServiceApi } from '../../service/api';
|
|
3
|
+
import { FcrSharedCache } from '../shared-cache';
|
|
4
|
+
import { FcrWhiteboardControl, FcrWhiteboardControlFactory } from './type';
|
|
5
|
+
export declare class FcrWhiteboardControlFactoryImpl implements FcrWhiteboardControlFactory {
|
|
6
|
+
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
7
|
+
constructor();
|
|
8
|
+
createForMainProcess(hasOperationPrivilege: boolean, scene: AgoraRteScene, api: FcrCoreServiceApi, sharedCache: FcrSharedCache): FcrWhiteboardControl;
|
|
9
|
+
}
|