fcr-core 3.8.0-alpha → 3.8.1-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.
Files changed (60) hide show
  1. package/lib/chat-connection/index.js +26 -40
  2. package/lib/engine/index.js +72 -66
  3. package/lib/imports.js +0 -1
  4. package/lib/media-control/desktop.js +13 -18
  5. package/lib/media-control/mobile.js +13 -18
  6. package/lib/monitor-control/index.js +5 -10
  7. package/lib/peer-session/index.js +39 -47
  8. package/lib/plugins/chatroom.js +213 -229
  9. package/lib/room-control/ability-control/index.js +9 -14
  10. package/lib/room-control/group-control/index.js +16 -21
  11. package/lib/room-control/helpers/validation-helper.js +1 -1
  12. package/lib/room-control/index.js +36 -53
  13. package/lib/room-control/interpreter-control/index.js +34 -47
  14. package/lib/room-control/interpreter-control/room.js +4 -6
  15. package/lib/room-control/join-before-host-waitingroom-control/index.js +4 -6
  16. package/lib/room-control/mainroom-control/index.js +27 -35
  17. package/lib/room-control/privilege-control/helper.js +5 -8
  18. package/lib/room-control/privilege-control/index.js +19 -26
  19. package/lib/room-control/room-connector-control/index.js +19 -28
  20. package/lib/room-control/room-control-factory.js +1 -2
  21. package/lib/room-control/room-session/index.js +39 -46
  22. package/lib/room-control/shared-cache.js +29 -36
  23. package/lib/room-control/sharing-control/index.d.ts +1 -1
  24. package/lib/room-control/sharing-control/index.js +34 -42
  25. package/lib/room-control/stream-control/index.js +191 -195
  26. package/lib/room-control/stream-control/type.d.ts +1 -1
  27. package/lib/room-control/stt-control/de-compress-gzip.js +0 -10
  28. package/lib/room-control/stt-control/index.js +95 -98
  29. package/lib/room-control/stt-control/type.d.ts +1 -1
  30. package/lib/room-control/user-control/index.js +136 -143
  31. package/lib/room-control/waitingroom-control/index.js +9 -14
  32. package/lib/room-control/whiteboard-control/utils.js +2 -4
  33. package/lib/room-control/whiteboard-control-v1/board-subwindow.js +1 -2
  34. package/lib/room-control/whiteboard-control-v1/board-window.js +88 -99
  35. package/lib/room-control/whiteboard-control-v1/factory.js +4 -7
  36. package/lib/room-control/whiteboard-control-v1/index.js +28 -40
  37. package/lib/room-control/whiteboard-control-v1/mount-manager.js +2 -4
  38. package/lib/room-control/whiteboard-control-v1/utils.js +14 -17
  39. package/lib/room-control/whiteboard-control-v2/annotation-control/control.js +4 -6
  40. package/lib/room-control/whiteboard-control-v2/annotation-control/factory.js +5 -10
  41. package/lib/room-control/whiteboard-control-v2/base/index.js +34 -41
  42. package/lib/room-control/whiteboard-control-v2/base/main-window.js +24 -29
  43. package/lib/room-control/whiteboard-control-v2/utils.js +6 -7
  44. package/lib/room-control/whiteboard-control-v2/whiteboard-control/control.d.ts +0 -1
  45. package/lib/room-control/whiteboard-control-v2/whiteboard-control/control.js +23 -34
  46. package/lib/room-control/whiteboard-control-v2/whiteboard-control/factory.js +7 -14
  47. package/lib/room-router/index.js +47 -53
  48. package/lib/room-router/type.d.ts +2 -2
  49. package/lib/service/api.js +227 -250
  50. package/lib/utilities/collection.js +2 -3
  51. package/lib/utilities/error-helpers.js +27 -34
  52. package/lib/utilities/error.js +8 -9
  53. package/lib/utilities/join-helper.js +25 -32
  54. package/lib/utilities/logger.js +3 -6
  55. package/lib/utilities/parameters.js +4 -8
  56. package/lib/utilities/retry-helpers.js +0 -1
  57. package/lib/utilities/stream.js +11 -16
  58. package/lib/utilities/user.js +3 -4
  59. package/lib/utilities/validate-params.js +1 -2
  60. package/package.json +5 -6
@@ -1,11 +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");
5
3
  require("core-js/modules/es.array.push.js");
6
4
  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
5
  require("core-js/modules/esnext.map.delete-all.js");
10
6
  require("core-js/modules/esnext.map.emplace.js");
11
7
  require("core-js/modules/esnext.map.every.js");
@@ -26,17 +22,11 @@ Object.defineProperty(exports, "__esModule", {
26
22
  value: true
27
23
  });
28
24
  exports.FcrBoardMainWindowImpl = void 0;
29
- require("core-js/modules/es.promise.finally.js");
30
25
  require("core-js/modules/esnext.iterator.constructor.js");
31
26
  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
27
  require("core-js/modules/web.url-search-params.delete.js");
37
28
  require("core-js/modules/web.url-search-params.has.js");
38
29
  require("core-js/modules/web.url-search-params.size.js");
39
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
40
30
  var _whiteSnapshot = require("@netless/white-snapshot");
41
31
  var _windowManager = require("@netless/window-manager");
42
32
  var _appliancePlugin = require("@netless/appliance-plugin");
@@ -52,24 +42,24 @@ var _fullWorker = _interopRequireDefault(require("@netless/appliance-plugin/dist
52
42
  var _subWorker = _interopRequireDefault(require("@netless/appliance-plugin/dist/subWorker.js?raw"));
53
43
  var _lodash = require("lodash");
54
44
  var _imports2 = require("agora-rte-sdk/lib/imports");
55
- var _FcrBoardMainWindowImpl;
56
45
  let _initProto; //@ts-ignore
57
46
  //@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
47
  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
48
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
62
49
  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
50
  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
51
  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
52
  class FcrBoardMainWindowImpl {
53
+ static {
54
+ [_initProto] = _applyDecs(this, [[[_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;
55
+ }
56
+ logger = (_initProto(this), (0, _logger.createLogger)({
57
+ prefix: 'FcrBoardMainWindowImpl'
58
+ }));
59
+ _memberState = {};
60
+ _observable = new _imports.AgoraObservable();
61
+ _destroyed = false;
66
62
  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
63
  this._whiteBoardroom = room;
74
64
  this._whiteView = document.createElement('div');
75
65
  this._initView();
@@ -123,87 +113,77 @@ class FcrBoardMainWindowImpl {
123
113
  return this._whiteView;
124
114
  }
125
115
  setScale(value) {
126
- var _this$_windowManager;
127
116
  const scale = Math.max(Math.min(value, 3), -3);
128
- (_this$_windowManager = this._windowManager) === null || _this$_windowManager === void 0 || _this$_windowManager.moveCamera({
117
+ this._windowManager?.moveCamera({
129
118
  scale
130
119
  });
131
120
  }
132
121
  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({
122
+ const appId = await this._windowManager?.addApp({
135
123
  kind: 'Slide',
136
124
  options: {
137
- scenePath: "/ppt".concat(taskId),
125
+ scenePath: `/ppt${taskId}`,
138
126
  title
139
127
  },
140
128
  attributes: {
141
129
  taskId,
142
130
  url: urlPrefix
143
131
  }
144
- }));
132
+ });
145
133
  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];
134
+ const app = this._windowManager?.apps?.[appId];
148
135
  return app ? new _boardSubwindow.FcrBoardSubWindowImpl(appId) : undefined;
149
136
  }
150
137
  }
151
138
  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({
139
+ const scenePath = `/${Date.now()}`;
140
+ const appId = await this._windowManager?.addApp({
155
141
  kind: _windowManager.BuiltinApps.DocsViewer,
156
142
  options: {
157
143
  scenePath,
158
144
  title,
159
145
  scenes: this._convertToScenes(pageList)
160
146
  }
161
- }));
147
+ });
162
148
  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];
149
+ const app = this._windowManager?.apps?.[appId];
165
150
  return app ? new _boardSubwindow.FcrBoardSubWindowImpl(appId) : undefined;
166
151
  }
167
152
  }
168
153
  async setContainerSizeRatio(ratio) {
169
- var _this$_windowManager6;
170
154
  this._preCheck();
171
- (_this$_windowManager6 = this._windowManager) === null || _this$_windowManager6 === void 0 || _this$_windowManager6.setContainerSizeRatio(ratio);
155
+ this._windowManager?.setContainerSizeRatio(ratio);
172
156
  }
173
157
  getPageInfo() {
174
158
  this._preCheck();
175
159
  const windowManager = this._windowManager;
176
160
  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
161
+ showIndex: windowManager?.mainViewSceneIndex || 0,
162
+ count: windowManager?.mainViewScenesLength || 0
179
163
  };
180
164
  }
181
165
  async addPage() {
182
- var _this$_windowManager7;
183
166
  this._preCheck();
184
- if ((_this$_windowManager7 = this._windowManager) !== null && _this$_windowManager7 !== void 0 && _this$_windowManager7.addPage) {
167
+ if (this._windowManager?.addPage) {
185
168
  await this._windowManager.addPage();
186
169
  await this._windowManager.nextPage();
187
170
  }
188
171
  }
189
172
  async removePage() {
190
- var _this$_windowManager8;
191
173
  this._preCheck();
192
- if ((_this$_windowManager8 = this._windowManager) !== null && _this$_windowManager8 !== void 0 && _this$_windowManager8.removePage) {
174
+ if (this._windowManager?.removePage) {
193
175
  await this._windowManager.removePage();
194
176
  }
195
177
  }
196
178
  async prevPage() {
197
- var _this$_windowManager9;
198
179
  this._preCheck();
199
- if ((_this$_windowManager9 = this._windowManager) !== null && _this$_windowManager9 !== void 0 && _this$_windowManager9.prevPage) {
180
+ if (this._windowManager?.prevPage) {
200
181
  await this._windowManager.prevPage();
201
182
  }
202
183
  }
203
184
  async nextPage() {
204
- var _this$_windowManager0;
205
185
  this._preCheck();
206
- if ((_this$_windowManager0 = this._windowManager) !== null && _this$_windowManager0 !== void 0 && _this$_windowManager0.nextPage) {
186
+ if (this._windowManager?.nextPage) {
207
187
  await this._windowManager.nextPage();
208
188
  }
209
189
  }
@@ -237,10 +217,12 @@ class FcrBoardMainWindowImpl {
237
217
  shapeType: shape,
238
218
  strokeType
239
219
  };
240
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
220
+ this._memberState = {
221
+ ...this._memberState,
222
+ ...change
223
+ };
241
224
  if (this._windowManager) {
242
- var _this$_appliancePlugi;
243
- (_this$_appliancePlugi = this._appliancePluginInstance) === null || _this$_appliancePlugi === void 0 || _this$_appliancePlugi.setMemberState(change);
225
+ this._appliancePluginInstance?.setMemberState(change);
244
226
  }
245
227
  }
246
228
  async setStrokeWidth(strokeWidth) {
@@ -248,31 +230,38 @@ class FcrBoardMainWindowImpl {
248
230
  const change = {
249
231
  strokeWidth
250
232
  };
251
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
233
+ this._memberState = {
234
+ ...this._memberState,
235
+ ...change
236
+ };
252
237
  if (this._windowManager) {
253
238
  this._whiteBoardroom.setMemberState(change);
254
239
  }
255
240
  }
256
241
  async setStrokeColor(color) {
257
- var _color$a;
258
242
  this._preCheck();
259
243
  const change = {
260
244
  strokeColor: [color.r, color.g, color.b],
261
- strokeOpacity: (_color$a = color.a) !== null && _color$a !== void 0 ? _color$a : 1
245
+ strokeOpacity: color.a ?? 1
246
+ };
247
+ this._memberState = {
248
+ ...this._memberState,
249
+ ...change
262
250
  };
263
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
264
251
  if (this._windowManager) {
265
252
  this._whiteBoardroom.setMemberState(change);
266
253
  }
267
254
  }
268
255
  async setTextColor(color) {
269
- var _color$a2;
270
256
  this._preCheck();
271
257
  const change = {
272
258
  textColor: [color.r, color.g, color.b],
273
- textOpacity: (_color$a2 = color.a) !== null && _color$a2 !== void 0 ? _color$a2 : 1
259
+ textOpacity: color.a ?? 1
260
+ };
261
+ this._memberState = {
262
+ ...this._memberState,
263
+ ...change
274
264
  };
275
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
276
265
  if (this._windowManager) {
277
266
  this._whiteBoardroom.setMemberState(change);
278
267
  }
@@ -282,19 +271,24 @@ class FcrBoardMainWindowImpl {
282
271
  const change = {
283
272
  textSize: size
284
273
  };
285
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
274
+ this._memberState = {
275
+ ...this._memberState,
276
+ ...change
277
+ };
286
278
  if (this._windowManager) {
287
279
  this._whiteBoardroom.setMemberState(change);
288
280
  }
289
281
  }
290
282
  async setFillColor(fillColor) {
291
- var _fillColor$a;
292
283
  this._preCheck();
293
284
  const change = {
294
285
  fillColor: [fillColor.r, fillColor.g, fillColor.b],
295
- fillOpacity: (_fillColor$a = fillColor.a) !== null && _fillColor$a !== void 0 ? _fillColor$a : 1
286
+ fillOpacity: fillColor.a ?? 1
287
+ };
288
+ this._memberState = {
289
+ ...this._memberState,
290
+ ...change
296
291
  };
297
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
298
292
  if (this._windowManager) {
299
293
  this._whiteBoardroom.setMemberState(change);
300
294
  }
@@ -304,16 +298,18 @@ class FcrBoardMainWindowImpl {
304
298
  const change = {
305
299
  pencilEraserSize: size
306
300
  };
307
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
301
+ this._memberState = {
302
+ ...this._memberState,
303
+ ...change
304
+ };
308
305
  if (this._windowManager) {
309
306
  this._whiteBoardroom.setMemberState(change);
310
307
  }
311
308
  }
312
309
  async setBackgroundColor(color) {
313
- var _this$_whiteView$quer;
314
310
  this._preCheck();
315
311
  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);
312
+ this._whiteView.querySelector('.netless-whiteboard')?.style.setProperty('background-color', color);
317
313
  }
318
314
  async insertImage(resourceUrl, x, y, width, height) {
319
315
  const room = this._whiteBoardroom;
@@ -323,7 +319,6 @@ class FcrBoardMainWindowImpl {
323
319
  const preWidth = width;
324
320
  const preHeight = height;
325
321
  if (windowManager) {
326
- var _this$_whiteView$clie, _this$_whiteView, _this$_whiteView$clie2, _this$_whiteView2;
327
322
  let originX = 0;
328
323
  let originY = 0;
329
324
  if (this._whiteView) {
@@ -334,12 +329,12 @@ class FcrBoardMainWindowImpl {
334
329
  x,
335
330
  y
336
331
  } = windowManager.mainView.convertToPointInWorld({
337
- x: preX !== null && preX !== void 0 ? preX : originX,
338
- y: preY !== null && preY !== void 0 ? preY : originY
332
+ x: preX ?? originX,
333
+ y: preY ?? originY
339
334
  });
340
335
  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
336
+ width: this._whiteView?.clientWidth ?? window.innerWidth,
337
+ height: this._whiteView?.clientHeight ?? window.innerHeight
343
338
  };
344
339
  const uuid = (0, _jsMd.md5)(resourceUrl);
345
340
  const {
@@ -350,8 +345,8 @@ class FcrBoardMainWindowImpl {
350
345
  uuid: uuid,
351
346
  centerX: x,
352
347
  centerY: y,
353
- width: preWidth !== null && preWidth !== void 0 ? preWidth : width,
354
- height: preHeight !== null && preHeight !== void 0 ? preHeight : height,
348
+ width: preWidth ?? width,
349
+ height: preHeight ?? height,
355
350
  locked: false
356
351
  };
357
352
  windowManager.switchMainViewToWriter();
@@ -396,8 +391,7 @@ class FcrBoardMainWindowImpl {
396
391
  }
397
392
  }));
398
393
  }
399
- _preCheck() {
400
- let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
394
+ _preCheck(options = {}) {
401
395
  const {
402
396
  privilege = true,
403
397
  wm = true
@@ -411,35 +405,32 @@ class FcrBoardMainWindowImpl {
411
405
  }
412
406
  _addWindowManagerEventListeners() {
413
407
  const windowManager = this._windowManager;
414
- windowManager === null || windowManager === void 0 || windowManager.emitter.on('mainViewSceneIndexChange', showIndex => {
408
+ windowManager?.emitter.on('mainViewSceneIndexChange', showIndex => {
415
409
  const state = {
416
410
  showIndex: showIndex,
417
- count: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewScenesLength) || 0
411
+ count: windowManager?.mainViewScenesLength || 0
418
412
  };
419
413
  this._observable.notifyObservers('onPageInfoUpdated', state);
420
414
  });
421
- windowManager === null || windowManager === void 0 || windowManager.emitter.on('mainViewScenesLengthChange', count => {
415
+ windowManager?.emitter.on('mainViewScenesLengthChange', count => {
422
416
  const state = {
423
- showIndex: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewSceneIndex) || 0,
417
+ showIndex: windowManager?.mainViewSceneIndex || 0,
424
418
  count: count
425
419
  };
426
420
  this._observable.notifyObservers('onPageInfoUpdated', state);
427
421
  });
428
- windowManager === null || windowManager === void 0 || windowManager.emitter.on('canUndoStepsChange', steps => {
422
+ windowManager?.emitter.on('canUndoStepsChange', steps => {
429
423
  this._observable.notifyObservers('onUndoStateUpdated', steps > 0);
430
424
  });
431
- windowManager === null || windowManager === void 0 || windowManager.emitter.on('canRedoStepsChange', steps => {
425
+ windowManager?.emitter.on('canRedoStepsChange', steps => {
432
426
  this._observable.notifyObservers('onRedoStateUpdated', steps > 0);
433
427
  });
434
428
  }
435
429
 
436
430
  // 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] : {};
431
+ async _mount(options = {}, params = {}) {
440
432
  this._whiteboardPrivateParameters = params;
441
433
  if (this._whiteBoardroom) {
442
- var _this$_whiteboardPriv, _this$_whiteboardPriv2, _this$_whiteboardPriv3, _this$_whiteboardPriv4, _this$_whiteboardPriv5, _this$_whiteboardPriv6, _this$_whiteboardPriv7, _this$_whiteboardPriv8;
443
434
  this._destroyed = false;
444
435
  if (_mountManager.BoardMountManager.isMounting) {
445
436
  this.logger.info('[FcrBoardMainWindow] wait for previous board window mounted, white room id:', this._whiteBoardroom.uuid);
@@ -452,15 +443,15 @@ class FcrBoardMainWindowImpl {
452
443
  }
453
444
  _mountManager.BoardMountManager.setIsMounting(true);
454
445
  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)));
446
+ const extras = this._whiteboardPrivateParameters?.extras ?? {};
447
+ const cursor = this._whiteboardPrivateParameters?.cursor ?? true;
448
+ const extendClass = this._whiteboardPrivateParameters?.extendClass;
449
+ const containerElement = this._whiteboardPrivateParameters?.containerElement;
450
+ let windowManagerParams = this._whiteboardPrivateParameters?.windowManagerParams ?? {};
451
+ this.logger.info(`set whiteboard extendClass: ${extendClass}`);
452
+ this.logger.info(`set whiteboard cursor: ${cursor}`);
453
+ this.logger.info(`set whiteboard extras: ${(0, _imports2.jsonstring)(extras)}`);
454
+ this.logger.info(`set whiteboard windowManagerParams: ${(0, _imports2.jsonstring)(windowManagerParams)}`);
464
455
  if (!(0, _lodash.isPlainObject)(windowManagerParams)) {
465
456
  this.logger.warn('windowManagerParams is not a plain object');
466
457
  windowManagerParams = {};
@@ -470,7 +461,7 @@ class FcrBoardMainWindowImpl {
470
461
  if (containerElement) {
471
462
  containerElement.appendChild(this._whiteView);
472
463
  }
473
- await _windowManager.WindowManager.mount(_objectSpread({
464
+ await _windowManager.WindowManager.mount({
474
465
  debug: true,
475
466
  room: this._whiteBoardroom,
476
467
  container: this._whiteView,
@@ -478,8 +469,9 @@ class FcrBoardMainWindowImpl {
478
469
  chessboard: false,
479
470
  collectorContainer: options.collectorContainer,
480
471
  containerSizeRatio: options.containerSizeRatio,
481
- supportAppliancePlugin: true
482
- }, windowManagerParams), extendClass).then(async wm => {
472
+ supportAppliancePlugin: true,
473
+ ...windowManagerParams
474
+ }, extendClass).then(async wm => {
483
475
  if (this._destroyed) {
484
476
  wm.destroy();
485
477
  return;
@@ -490,8 +482,7 @@ class FcrBoardMainWindowImpl {
490
482
  this._windowManager.mainView.disableCameraTransform = true;
491
483
  this._addWindowManagerEventListeners();
492
484
  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);
485
+ this._whiteView.querySelector('.netless-whiteboard')?.style.setProperty('background-color', this._backgroundColor);
495
486
  }
496
487
  const fullWorkerBlob = new Blob([_fullWorker.default], {
497
488
  type: 'text/javascript'
@@ -530,7 +521,7 @@ class FcrBoardMainWindowImpl {
530
521
  }
531
522
  });
532
523
  const hasPermission = this._whiteBoardroom.isWritable;
533
- this.logger.info("after mount, isWritable: ".concat(hasPermission));
524
+ this.logger.info(`after mount, isWritable: ${hasPermission}`);
534
525
  if (hasPermission) {
535
526
  this._whiteBoardroom.setMemberState(this._memberState);
536
527
  appliancePluginInstance.setMemberState({
@@ -566,6 +557,4 @@ class FcrBoardMainWindowImpl {
566
557
  this.addObserver((0, _logger.generateLogObserver)(this.logger, ['onWritable', 'onPageInfoUpdated', 'onUndoStateUpdated', 'onRedoStateUpdated']));
567
558
  }
568
559
  }
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;
560
+ exports.FcrBoardMainWindowImpl = FcrBoardMainWindowImpl;
@@ -1,19 +1,16 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.FcrWhiteboardControlFactoryImpl = void 0;
8
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
7
  var _ = require(".");
10
8
  var _logger = require("../../utilities/logger");
11
9
  class FcrWhiteboardControlFactoryImpl {
12
- constructor() {
13
- (0, _defineProperty2.default)(this, "logger", (0, _logger.createLogger)({
14
- prefix: 'FcrWhiteboardControlFactory'
15
- }));
16
- }
10
+ logger = (0, _logger.createLogger)({
11
+ prefix: 'FcrWhiteboardControlFactory'
12
+ });
13
+ constructor() {}
17
14
  createForMainProcess(hasOperationPrivilege, scene, api, sharedCache) {
18
15
  this.logger.info('[whiteboard]: create for main process, use old whiteboard control');
19
16
  return new _.FcrWhiteboardControlImpl(scene, api, sharedCache, hasOperationPrivilege);