fcr-core 3.10.5 → 3.10.6

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 (127) hide show
  1. package/lib/engine/index.js +108 -102
  2. package/lib/imports.js +0 -1
  3. package/lib/index.d.ts +1 -1
  4. package/lib/media-control/desktop.js +13 -22
  5. package/lib/media-control/mobile.js +13 -22
  6. package/lib/monitor-control/index.js +7 -17
  7. package/lib/peer-session/index.js +121 -120
  8. package/lib/plugins/chat/chatroom.js +96 -119
  9. package/lib/plugins/chat/connector.js +48 -69
  10. package/lib/remote-control/index.js +216 -194
  11. package/lib/room-control/ability-control/index.js +10 -20
  12. package/lib/room-control/application-control/index.js +75 -82
  13. package/lib/room-control/group-control/index.js +30 -31
  14. package/lib/room-control/helpers/board-init-info-helper.js +10 -16
  15. package/lib/room-control/helpers/validation-helper.js +1 -1
  16. package/lib/room-control/index.js +51 -70
  17. package/lib/room-control/infinity-room-control/index.js +19 -27
  18. package/lib/room-control/interpreter-control/index.js +65 -77
  19. package/lib/room-control/interpreter-control/room.js +4 -6
  20. package/lib/room-control/join-before-host-waitingroom-control/index.js +4 -6
  21. package/lib/room-control/mainroom-control/index.js +25 -37
  22. package/lib/room-control/privilege-control/helper.js +13 -28
  23. package/lib/room-control/privilege-control/index.js +28 -36
  24. package/lib/room-control/room-connector-control/index.js +47 -52
  25. package/lib/room-control/room-control-factory.js +12 -10
  26. package/lib/room-control/room-session/index.js +74 -77
  27. package/lib/room-control/shared-cache.js +56 -63
  28. package/lib/room-control/sharing-control/index.js +57 -65
  29. package/lib/room-control/stream-control/index.js +238 -203
  30. package/lib/room-control/stream-control/type.d.ts +11 -1
  31. package/lib/room-control/stt-control/de-compress-gzip.js +0 -10
  32. package/lib/room-control/stt-control/index.js +86 -93
  33. package/lib/room-control/user-control/index.js +155 -162
  34. package/lib/room-control/waitingroom-control/index.js +9 -18
  35. package/lib/room-control/whiteboard-control/utils.js +2 -4
  36. package/lib/room-control/whiteboard-control-v1/board-subwindow.js +1 -2
  37. package/lib/room-control/whiteboard-control-v1/board-window.js +103 -120
  38. package/lib/room-control/whiteboard-control-v1/factory.js +4 -7
  39. package/lib/room-control/whiteboard-control-v1/index.js +67 -80
  40. package/lib/room-control/whiteboard-control-v1/mount-manager.js +2 -4
  41. package/lib/room-control/whiteboard-control-v1/utils.js +14 -17
  42. package/lib/room-control/whiteboard-control-v2/annotation-control/control.js +10 -14
  43. package/lib/room-control/whiteboard-control-v2/annotation-control/factory.js +8 -17
  44. package/lib/room-control/whiteboard-control-v2/base/index.js +53 -61
  45. package/lib/room-control/whiteboard-control-v2/base/main-window.js +30 -39
  46. package/lib/room-control/whiteboard-control-v2/utils.js +10 -10
  47. package/lib/room-control/whiteboard-control-v2/whiteboard-control/control.js +33 -45
  48. package/lib/room-control/whiteboard-control-v2/whiteboard-control/factory.js +11 -27
  49. package/lib/room-control/widget-control/index.js +33 -43
  50. package/lib/room-router/index.js +58 -66
  51. package/lib/service/api.js +548 -446
  52. package/lib/struct.js +2 -5
  53. package/lib/type.d.ts +1 -1
  54. package/lib/utilities/abortable-retry.js +0 -3
  55. package/lib/utilities/collection.js +11 -15
  56. package/lib/utilities/error-helpers.js +27 -34
  57. package/lib/utilities/error.js +3 -4
  58. package/lib/utilities/join-helper.js +31 -37
  59. package/lib/utilities/logger.js +5 -8
  60. package/lib/utilities/parameters.js +10 -21
  61. package/lib/utilities/retry-helpers.js +0 -1
  62. package/lib/utilities/stream.js +11 -16
  63. package/lib/utilities/user.js +3 -4
  64. package/lib/utilities/validate-params.js +1 -1
  65. package/lib/utilities/video-encoder-config.js +5 -10
  66. package/lib-es/engine/index.js +108 -102
  67. package/lib-es/media-control/desktop.js +13 -22
  68. package/lib-es/media-control/mobile.js +13 -22
  69. package/lib-es/monitor-control/index.js +7 -16
  70. package/lib-es/peer-session/index.js +121 -120
  71. package/lib-es/plugins/chat/chatroom.js +95 -118
  72. package/lib-es/plugins/chat/connector.js +47 -67
  73. package/lib-es/remote-control/index.js +216 -194
  74. package/lib-es/room-control/ability-control/index.js +10 -19
  75. package/lib-es/room-control/application-control/index.js +75 -81
  76. package/lib-es/room-control/group-control/index.js +30 -31
  77. package/lib-es/room-control/helpers/board-init-info-helper.js +10 -15
  78. package/lib-es/room-control/helpers/validation-helper.js +1 -1
  79. package/lib-es/room-control/index.js +51 -69
  80. package/lib-es/room-control/infinity-room-control/index.js +19 -26
  81. package/lib-es/room-control/interpreter-control/index.js +65 -77
  82. package/lib-es/room-control/interpreter-control/room.js +4 -5
  83. package/lib-es/room-control/join-before-host-waitingroom-control/index.js +4 -5
  84. package/lib-es/room-control/mainroom-control/index.js +25 -37
  85. package/lib-es/room-control/privilege-control/helper.js +13 -27
  86. package/lib-es/room-control/privilege-control/index.js +28 -36
  87. package/lib-es/room-control/room-connector-control/index.js +47 -52
  88. package/lib-es/room-control/room-control-factory.js +12 -10
  89. package/lib-es/room-control/room-session/index.js +74 -77
  90. package/lib-es/room-control/shared-cache.js +56 -62
  91. package/lib-es/room-control/sharing-control/index.js +57 -64
  92. package/lib-es/room-control/stream-control/index.js +240 -205
  93. package/lib-es/room-control/stt-control/de-compress-gzip.js +0 -10
  94. package/lib-es/room-control/stt-control/index.js +86 -93
  95. package/lib-es/room-control/user-control/index.js +155 -162
  96. package/lib-es/room-control/waitingroom-control/index.js +9 -18
  97. package/lib-es/room-control/whiteboard-control/utils.js +2 -4
  98. package/lib-es/room-control/whiteboard-control-v1/board-subwindow.js +1 -2
  99. package/lib-es/room-control/whiteboard-control-v1/board-window.js +103 -120
  100. package/lib-es/room-control/whiteboard-control-v1/factory.js +4 -6
  101. package/lib-es/room-control/whiteboard-control-v1/index.js +67 -80
  102. package/lib-es/room-control/whiteboard-control-v1/mount-manager.js +2 -3
  103. package/lib-es/room-control/whiteboard-control-v1/utils.js +14 -17
  104. package/lib-es/room-control/whiteboard-control-v2/annotation-control/control.js +10 -13
  105. package/lib-es/room-control/whiteboard-control-v2/annotation-control/factory.js +8 -16
  106. package/lib-es/room-control/whiteboard-control-v2/base/index.js +53 -60
  107. package/lib-es/room-control/whiteboard-control-v2/base/main-window.js +30 -39
  108. package/lib-es/room-control/whiteboard-control-v2/utils.js +10 -10
  109. package/lib-es/room-control/whiteboard-control-v2/whiteboard-control/control.js +33 -45
  110. package/lib-es/room-control/whiteboard-control-v2/whiteboard-control/factory.js +11 -26
  111. package/lib-es/room-control/widget-control/index.js +33 -42
  112. package/lib-es/room-router/index.js +58 -66
  113. package/lib-es/service/api.js +548 -445
  114. package/lib-es/struct.js +2 -4
  115. package/lib-es/utilities/abortable-retry.js +0 -3
  116. package/lib-es/utilities/collection.js +11 -14
  117. package/lib-es/utilities/error-helpers.js +26 -33
  118. package/lib-es/utilities/error.js +3 -4
  119. package/lib-es/utilities/join-helper.js +29 -36
  120. package/lib-es/utilities/logger.js +5 -7
  121. package/lib-es/utilities/parameters.js +10 -21
  122. package/lib-es/utilities/retry-helpers.js +0 -1
  123. package/lib-es/utilities/stream.js +11 -15
  124. package/lib-es/utilities/user.js +3 -4
  125. package/lib-es/utilities/validate-params.js +1 -1
  126. package/lib-es/utilities/video-encoder-config.js +5 -10
  127. package/package.json +4 -4
@@ -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,18 +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 _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
40
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
41
30
  var _whiteSnapshot = require("@netless/white-snapshot");
42
31
  var _windowManager = require("@netless/window-manager");
43
32
  var _appliancePlugin = require("@netless/appliance-plugin");
@@ -54,25 +43,24 @@ var _subWorker = _interopRequireDefault(require("@netless/appliance-plugin/dist/
54
43
  var _type = require("../../type");
55
44
  var _lodash = require("lodash");
56
45
  var _imports2 = require("agora-rte-sdk/lib/imports");
57
- var _FcrBoardMainWindowImpl;
58
- let _initProto, _cleanDecs, _setToolTypeDecs, _setStrokeWidthDecs, _setStrokeColorDecs, _setTextColorDecs, _setTextSizeDecs, _setFillColorDecs, _setEraserSizeDecs, _setBackgroundColorDecs, _insertImageDecs, _insertMediaDecs, _mountDecs, _ref; //@ts-ignore
46
+ let _initProto, _cleanDecs, _setToolTypeDecs, _setStrokeWidthDecs, _setStrokeColorDecs, _setTextColorDecs, _setTextSizeDecs, _setFillColorDecs, _setEraserSizeDecs, _setBackgroundColorDecs, _insertImageDecs, _insertMediaDecs, _mountDecs; //@ts-ignore
59
47
  //@ts-ignore
60
- 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; }
61
- 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; }
62
48
  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)]; } }; }
63
49
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
64
50
  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); }
65
51
  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; }
66
52
  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; }
67
- _ref = (_cleanDecs = [_imports.bound, (0, _imports.trace)(['retainPpt'])], _setToolTypeDecs = [_imports.bound, (0, _imports.trace)(['type'])], _setStrokeWidthDecs = [_imports.bound, (0, _imports.trace)(['strokeWidth'])], _setStrokeColorDecs = [_imports.bound, (0, _imports.trace)(['color'])], _setTextColorDecs = [_imports.bound, (0, _imports.trace)(['color'])], _setTextSizeDecs = [_imports.bound, (0, _imports.trace)(['size'])], _setFillColorDecs = [_imports.bound, (0, _imports.trace)(['fillColor'])], _setEraserSizeDecs = [_imports.bound, (0, _imports.trace)(['size'])], _setBackgroundColorDecs = [_imports.bound, (0, _imports.trace)(['color'])], _insertImageDecs = [_imports.bound, (0, _imports.trace)(['resourceUrl', 'x', 'y', 'width', 'height'])], _insertMediaDecs = [_imports.bound, (0, _imports.trace)(['resourceUrl', 'title'])], _mountDecs = (0, _imports.trace)(['options', 'params']), "logger");
68
53
  class FcrBoardMainWindowImpl {
54
+ static {
55
+ [_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"], [_cleanDecs, 2, "clean"], [_setToolTypeDecs, 2, "setToolType"], [_setStrokeWidthDecs, 2, "setStrokeWidth"], [_setStrokeColorDecs, 2, "setStrokeColor"], [_setTextColorDecs, 2, "setTextColor"], [_setTextSizeDecs, 2, "setTextSize"], [_setFillColorDecs, 2, "setFillColor"], [_setEraserSizeDecs, 2, "setEraserSize"], [_setBackgroundColorDecs, 2, "setBackgroundColor"], [_insertImageDecs, 2, "insertImage"], [_insertMediaDecs, 2, "insertMedia"], [_imports.trace, 2, "destroy"], [_imports.trace, 2, "getWritable"], [_mountDecs, 2, "_mount"], [_imports.trace, 2, "_setRoom"]], []).e;
56
+ }
57
+ [(_cleanDecs = [_imports.bound, (0, _imports.trace)(['retainPpt'])], _setToolTypeDecs = [_imports.bound, (0, _imports.trace)(['type'])], _setStrokeWidthDecs = [_imports.bound, (0, _imports.trace)(['strokeWidth'])], _setStrokeColorDecs = [_imports.bound, (0, _imports.trace)(['color'])], _setTextColorDecs = [_imports.bound, (0, _imports.trace)(['color'])], _setTextSizeDecs = [_imports.bound, (0, _imports.trace)(['size'])], _setFillColorDecs = [_imports.bound, (0, _imports.trace)(['fillColor'])], _setEraserSizeDecs = [_imports.bound, (0, _imports.trace)(['size'])], _setBackgroundColorDecs = [_imports.bound, (0, _imports.trace)(['color'])], _insertImageDecs = [_imports.bound, (0, _imports.trace)(['resourceUrl', 'x', 'y', 'width', 'height'])], _insertMediaDecs = [_imports.bound, (0, _imports.trace)(['resourceUrl', 'title'])], _mountDecs = (0, _imports.trace)(['options', 'params']), "logger")] = (_initProto(this), (0, _logger.createLogger)({
58
+ prefix: 'FcrBoardMainWindowImpl'
59
+ }));
60
+ _memberState = {};
61
+ _observable = new _imports.AgoraObservable();
62
+ _destroyed = false;
69
63
  constructor(room) {
70
- (0, _defineProperty2.default)(this, _ref, (_initProto(this), (0, _logger.createLogger)({
71
- prefix: 'FcrBoardMainWindowImpl'
72
- })));
73
- (0, _defineProperty2.default)(this, "_memberState", {});
74
- (0, _defineProperty2.default)(this, "_observable", new _imports.AgoraObservable());
75
- (0, _defineProperty2.default)(this, "_destroyed", false);
76
64
  this._whiteBoardroom = room;
77
65
  this._whiteView = document.createElement('div');
78
66
  this._initView();
@@ -128,90 +116,80 @@ class FcrBoardMainWindowImpl {
128
116
  return this._whiteView;
129
117
  }
130
118
  setScale(value) {
131
- var _this$_windowManager;
132
119
  const scale = Math.max(Math.min(value, 3), -3);
133
- (_this$_windowManager = this._windowManager) === null || _this$_windowManager === void 0 || _this$_windowManager.moveCamera({
120
+ this._windowManager?.moveCamera({
134
121
  scale
135
122
  });
136
123
  }
137
124
  async openSubWindowWithTaskId(title, taskId, urlPrefix) {
138
- var _this$_windowManager2;
139
- const appId = await ((_this$_windowManager2 = this._windowManager) === null || _this$_windowManager2 === void 0 ? void 0 : _this$_windowManager2.addApp({
125
+ const appId = await this._windowManager?.addApp({
140
126
  kind: 'Slide',
141
127
  options: {
142
- scenePath: "/ppt".concat(taskId),
128
+ scenePath: `/ppt${taskId}`,
143
129
  title
144
130
  },
145
131
  attributes: {
146
132
  taskId,
147
133
  url: urlPrefix
148
134
  }
149
- }));
135
+ });
150
136
  if (appId) {
151
- var _this$_windowManager3;
152
- 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];
137
+ const app = this._windowManager?.apps?.[appId];
153
138
  return app ? new _boardSubwindow.FcrBoardSubWindowImpl(appId) : undefined;
154
139
  }
155
140
  }
156
141
  async openSubWindowWithPageList(title, pageList) {
157
- var _this$_windowManager4;
158
- const scenePath = "/".concat(Date.now());
159
- const appId = await ((_this$_windowManager4 = this._windowManager) === null || _this$_windowManager4 === void 0 ? void 0 : _this$_windowManager4.addApp({
142
+ const scenePath = `/${Date.now()}`;
143
+ const appId = await this._windowManager?.addApp({
160
144
  kind: _windowManager.BuiltinApps.DocsViewer,
161
145
  options: {
162
146
  scenePath,
163
147
  title,
164
148
  scenes: this._convertToScenes(pageList)
165
149
  }
166
- }));
150
+ });
167
151
  if (appId) {
168
- var _this$_windowManager5;
169
- 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];
152
+ const app = this._windowManager?.apps?.[appId];
170
153
  return app ? new _boardSubwindow.FcrBoardSubWindowImpl(appId) : undefined;
171
154
  }
172
155
  }
173
156
  async setContainerSizeRatio(ratio) {
174
- var _this$_windowManager6;
175
157
  this._preCheck();
176
- (_this$_windowManager6 = this._windowManager) === null || _this$_windowManager6 === void 0 || _this$_windowManager6.setContainerSizeRatio(ratio);
158
+ this._windowManager?.setContainerSizeRatio(ratio);
177
159
  }
178
160
  getPageInfo() {
179
161
  this._preCheck();
180
162
  const windowManager = this._windowManager;
181
163
  return {
182
- showIndex: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewSceneIndex) || 0,
183
- count: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewScenesLength) || 0
164
+ showIndex: windowManager?.mainViewSceneIndex || 0,
165
+ count: windowManager?.mainViewScenesLength || 0
184
166
  };
185
167
  }
186
168
  async addPage() {
187
- var _this$_windowManager7;
188
169
  this._preCheck();
189
- if ((_this$_windowManager7 = this._windowManager) !== null && _this$_windowManager7 !== void 0 && _this$_windowManager7.addPage) {
170
+ if (this._windowManager?.addPage) {
190
171
  await this._windowManager.addPage();
191
172
  await this._windowManager.nextPage();
192
173
  }
193
174
  return _type.FcrReturnCode.SUCCESS;
194
175
  }
195
176
  async removePage() {
196
- var _this$_windowManager8;
197
177
  this._preCheck();
198
- if ((_this$_windowManager8 = this._windowManager) !== null && _this$_windowManager8 !== void 0 && _this$_windowManager8.removePage) {
178
+ if (this._windowManager?.removePage) {
199
179
  await this._windowManager.removePage();
200
180
  }
201
181
  return _type.FcrReturnCode.SUCCESS;
202
182
  }
203
183
  async prevPage() {
204
- var _this$_windowManager9;
205
184
  this._preCheck();
206
- if ((_this$_windowManager9 = this._windowManager) !== null && _this$_windowManager9 !== void 0 && _this$_windowManager9.prevPage) {
185
+ if (this._windowManager?.prevPage) {
207
186
  await this._windowManager.prevPage();
208
187
  }
209
188
  return _type.FcrReturnCode.SUCCESS;
210
189
  }
211
190
  async nextPage() {
212
- var _this$_windowManager0;
213
191
  this._preCheck();
214
- if ((_this$_windowManager0 = this._windowManager) !== null && _this$_windowManager0 !== void 0 && _this$_windowManager0.nextPage) {
192
+ if (this._windowManager?.nextPage) {
215
193
  await this._windowManager.nextPage();
216
194
  }
217
195
  return _type.FcrReturnCode.SUCCESS;
@@ -240,20 +218,19 @@ class FcrBoardMainWindowImpl {
240
218
  this._preCheck({
241
219
  wm: false
242
220
  });
243
- const _convertToNetlessBoar = (0, _utils.convertToNetlessBoardTool)(type),
244
- _convertToNetlessBoar2 = (0, _slicedToArray2.default)(_convertToNetlessBoar, 2),
245
- tool = _convertToNetlessBoar2[0],
246
- shape = _convertToNetlessBoar2[1];
221
+ const [tool, shape] = (0, _utils.convertToNetlessBoardTool)(type);
247
222
  const strokeType = (0, _utils.convertToNetlessStorkeType)(type);
248
223
  const change = {
249
224
  currentApplianceName: tool,
250
225
  shapeType: shape,
251
226
  strokeType
252
227
  };
253
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
228
+ this._memberState = {
229
+ ...this._memberState,
230
+ ...change
231
+ };
254
232
  if (this._windowManager) {
255
- var _this$_appliancePlugi;
256
- (_this$_appliancePlugi = this._appliancePluginInstance) === null || _this$_appliancePlugi === void 0 || _this$_appliancePlugi.setMemberState(change);
233
+ this._appliancePluginInstance?.setMemberState(change);
257
234
  }
258
235
  return _type.FcrReturnCode.SUCCESS;
259
236
  }
@@ -262,33 +239,40 @@ class FcrBoardMainWindowImpl {
262
239
  const change = {
263
240
  strokeWidth
264
241
  };
265
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
242
+ this._memberState = {
243
+ ...this._memberState,
244
+ ...change
245
+ };
266
246
  if (this._windowManager) {
267
247
  this._whiteBoardroom.setMemberState(change);
268
248
  }
269
249
  return _type.FcrReturnCode.SUCCESS;
270
250
  }
271
251
  async setStrokeColor(color) {
272
- var _color$a;
273
252
  this._preCheck();
274
253
  const change = {
275
254
  strokeColor: [color.r, color.g, color.b],
276
- strokeOpacity: (_color$a = color.a) !== null && _color$a !== void 0 ? _color$a : 1
255
+ strokeOpacity: color.a ?? 1
256
+ };
257
+ this._memberState = {
258
+ ...this._memberState,
259
+ ...change
277
260
  };
278
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
279
261
  if (this._windowManager) {
280
262
  this._whiteBoardroom.setMemberState(change);
281
263
  }
282
264
  return _type.FcrReturnCode.SUCCESS;
283
265
  }
284
266
  async setTextColor(color) {
285
- var _color$a2;
286
267
  this._preCheck();
287
268
  const change = {
288
269
  textColor: [color.r, color.g, color.b],
289
- textOpacity: (_color$a2 = color.a) !== null && _color$a2 !== void 0 ? _color$a2 : 1
270
+ textOpacity: color.a ?? 1
271
+ };
272
+ this._memberState = {
273
+ ...this._memberState,
274
+ ...change
290
275
  };
291
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
292
276
  if (this._windowManager) {
293
277
  this._whiteBoardroom.setMemberState(change);
294
278
  }
@@ -299,20 +283,25 @@ class FcrBoardMainWindowImpl {
299
283
  const change = {
300
284
  textSize: size
301
285
  };
302
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
286
+ this._memberState = {
287
+ ...this._memberState,
288
+ ...change
289
+ };
303
290
  if (this._windowManager) {
304
291
  this._whiteBoardroom.setMemberState(change);
305
292
  }
306
293
  return _type.FcrReturnCode.SUCCESS;
307
294
  }
308
295
  async setFillColor(fillColor) {
309
- var _fillColor$a;
310
296
  this._preCheck();
311
297
  const change = {
312
298
  fillColor: [fillColor.r, fillColor.g, fillColor.b],
313
- fillOpacity: (_fillColor$a = fillColor.a) !== null && _fillColor$a !== void 0 ? _fillColor$a : 1
299
+ fillOpacity: fillColor.a ?? 1
300
+ };
301
+ this._memberState = {
302
+ ...this._memberState,
303
+ ...change
314
304
  };
315
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
316
305
  if (this._windowManager) {
317
306
  this._whiteBoardroom.setMemberState(change);
318
307
  }
@@ -323,17 +312,19 @@ class FcrBoardMainWindowImpl {
323
312
  const change = {
324
313
  pencilEraserSize: size
325
314
  };
326
- this._memberState = _objectSpread(_objectSpread({}, this._memberState), change);
315
+ this._memberState = {
316
+ ...this._memberState,
317
+ ...change
318
+ };
327
319
  if (this._windowManager) {
328
320
  this._whiteBoardroom.setMemberState(change);
329
321
  }
330
322
  return _type.FcrReturnCode.SUCCESS;
331
323
  }
332
324
  async setBackgroundColor(color) {
333
- var _this$_whiteView$quer;
334
325
  this._preCheck();
335
326
  this._backgroundColor = color;
336
- (_this$_whiteView$quer = this._whiteView.querySelector('.netless-whiteboard')) === null || _this$_whiteView$quer === void 0 || _this$_whiteView$quer.style.setProperty('background-color', color);
327
+ this._whiteView.querySelector('.netless-whiteboard')?.style.setProperty('background-color', color);
337
328
  return _type.FcrReturnCode.SUCCESS;
338
329
  }
339
330
  async insertImage(resourceUrl, x, y, width, height) {
@@ -344,33 +335,34 @@ class FcrBoardMainWindowImpl {
344
335
  const preWidth = width;
345
336
  const preHeight = height;
346
337
  if (windowManager) {
347
- var _this$_whiteView$clie, _this$_whiteView, _this$_whiteView$clie2, _this$_whiteView2;
348
338
  let originX = 0;
349
339
  let originY = 0;
350
340
  if (this._whiteView) {
351
341
  originX = this._whiteView.clientWidth / 2;
352
342
  originY = this._whiteView.clientHeight / 2;
353
343
  }
354
- const _windowManager$mainVi = windowManager.mainView.convertToPointInWorld({
355
- x: preX !== null && preX !== void 0 ? preX : originX,
356
- y: preY !== null && preY !== void 0 ? preY : originY
357
- }),
358
- x = _windowManager$mainVi.x,
359
- y = _windowManager$mainVi.y;
344
+ const {
345
+ x,
346
+ y
347
+ } = windowManager.mainView.convertToPointInWorld({
348
+ x: preX ?? originX,
349
+ y: preY ?? originY
350
+ });
360
351
  const containerSize = {
361
- 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,
362
- 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
352
+ width: this._whiteView?.clientWidth ?? window.innerWidth,
353
+ height: this._whiteView?.clientHeight ?? window.innerHeight
363
354
  };
364
355
  const uuid = (0, _jsMd.md5)(resourceUrl);
365
- const _await$fetchImageInfo = await (0, _utils.fetchImageInfoByUrl)(resourceUrl, containerSize),
366
- width = _await$fetchImageInfo.width,
367
- height = _await$fetchImageInfo.height;
356
+ const {
357
+ width,
358
+ height
359
+ } = await (0, _utils.fetchImageInfoByUrl)(resourceUrl, containerSize);
368
360
  const imageInfo = {
369
361
  uuid: uuid,
370
362
  centerX: x,
371
363
  centerY: y,
372
- width: preWidth !== null && preWidth !== void 0 ? preWidth : width,
373
- height: preHeight !== null && preHeight !== void 0 ? preHeight : height,
364
+ width: preWidth ?? width,
365
+ height: preHeight ?? height,
374
366
  locked: false
375
367
  };
376
368
  windowManager.switchMainViewToWriter();
@@ -418,12 +410,11 @@ class FcrBoardMainWindowImpl {
418
410
  }
419
411
  }));
420
412
  }
421
- _preCheck() {
422
- let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
423
- const _options$privilege = options.privilege,
424
- privilege = _options$privilege === void 0 ? true : _options$privilege,
425
- _options$wm = options.wm,
426
- wm = _options$wm === void 0 ? true : _options$wm;
413
+ _preCheck(options = {}) {
414
+ const {
415
+ privilege = true,
416
+ wm = true
417
+ } = options;
427
418
  if (privilege && !this._whiteBoardroom.isWritable) {
428
419
  this.logger.warn('Try to operate on board window without operation privilege');
429
420
  }
@@ -433,35 +424,32 @@ class FcrBoardMainWindowImpl {
433
424
  }
434
425
  _addWindowManagerEventListeners() {
435
426
  const windowManager = this._windowManager;
436
- windowManager === null || windowManager === void 0 || windowManager.emitter.on('mainViewSceneIndexChange', showIndex => {
427
+ windowManager?.emitter.on('mainViewSceneIndexChange', showIndex => {
437
428
  const state = {
438
429
  showIndex: showIndex,
439
- count: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewScenesLength) || 0
430
+ count: windowManager?.mainViewScenesLength || 0
440
431
  };
441
432
  this._observable.notifyObservers('onPageInfoUpdated', state);
442
433
  });
443
- windowManager === null || windowManager === void 0 || windowManager.emitter.on('mainViewScenesLengthChange', count => {
434
+ windowManager?.emitter.on('mainViewScenesLengthChange', count => {
444
435
  const state = {
445
- showIndex: (windowManager === null || windowManager === void 0 ? void 0 : windowManager.mainViewSceneIndex) || 0,
436
+ showIndex: windowManager?.mainViewSceneIndex || 0,
446
437
  count: count
447
438
  };
448
439
  this._observable.notifyObservers('onPageInfoUpdated', state);
449
440
  });
450
- windowManager === null || windowManager === void 0 || windowManager.emitter.on('canUndoStepsChange', steps => {
441
+ windowManager?.emitter.on('canUndoStepsChange', steps => {
451
442
  this._observable.notifyObservers('onUndoStateUpdated', steps > 0);
452
443
  });
453
- windowManager === null || windowManager === void 0 || windowManager.emitter.on('canRedoStepsChange', steps => {
444
+ windowManager?.emitter.on('canRedoStepsChange', steps => {
454
445
  this._observable.notifyObservers('onRedoStateUpdated', steps > 0);
455
446
  });
456
447
  }
457
448
 
458
449
  // don't remove, used by FcrWhiteboardControl
459
- async _mount() {
460
- let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
461
- let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
450
+ async _mount(options = {}, params = {}) {
462
451
  this._whiteboardPrivateParameters = params;
463
452
  if (this._whiteBoardroom) {
464
- var _this$_whiteboardPriv, _this$_whiteboardPriv2, _this$_whiteboardPriv3, _this$_whiteboardPriv4, _this$_whiteboardPriv5, _this$_whiteboardPriv6, _this$_whiteboardPriv7, _this$_whiteboardPriv8;
465
453
  this._destroyed = false;
466
454
  if (_mountManager.BoardMountManager.isMounting) {
467
455
  this.logger.info('[FcrBoardMainWindow] wait for previous board window mounted, white room id:', this._whiteBoardroom.uuid);
@@ -474,15 +462,15 @@ class FcrBoardMainWindowImpl {
474
462
  }
475
463
  _mountManager.BoardMountManager.setIsMounting(true);
476
464
  this.logger.info('start mount board window, white room id:', this._whiteBoardroom.uuid);
477
- 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 : {};
478
- 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;
479
- const extendClass = (_this$_whiteboardPriv5 = this._whiteboardPrivateParameters) === null || _this$_whiteboardPriv5 === void 0 ? void 0 : _this$_whiteboardPriv5.extendClass;
480
- const containerElement = (_this$_whiteboardPriv6 = this._whiteboardPrivateParameters) === null || _this$_whiteboardPriv6 === void 0 ? void 0 : _this$_whiteboardPriv6.containerElement;
481
- 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 : {};
482
- this.logger.info("set whiteboard extendClass: ".concat(extendClass));
483
- this.logger.info("set whiteboard cursor: ".concat(cursor));
484
- this.logger.info("set whiteboard extras: ".concat((0, _imports2.jsonstring)(extras)));
485
- this.logger.info("set whiteboard windowManagerParams: ".concat((0, _imports2.jsonstring)(windowManagerParams)));
465
+ const extras = this._whiteboardPrivateParameters?.extras ?? {};
466
+ const cursor = this._whiteboardPrivateParameters?.cursor ?? true;
467
+ const extendClass = this._whiteboardPrivateParameters?.extendClass;
468
+ const containerElement = this._whiteboardPrivateParameters?.containerElement;
469
+ let windowManagerParams = this._whiteboardPrivateParameters?.windowManagerParams ?? {};
470
+ this.logger.info(`set whiteboard extendClass: ${extendClass}`);
471
+ this.logger.info(`set whiteboard cursor: ${cursor}`);
472
+ this.logger.info(`set whiteboard extras: ${(0, _imports2.jsonstring)(extras)}`);
473
+ this.logger.info(`set whiteboard windowManagerParams: ${(0, _imports2.jsonstring)(windowManagerParams)}`);
486
474
  if (!(0, _lodash.isPlainObject)(windowManagerParams)) {
487
475
  this.logger.warn('windowManagerParams is not a plain object');
488
476
  windowManagerParams = {};
@@ -492,7 +480,7 @@ class FcrBoardMainWindowImpl {
492
480
  if (containerElement) {
493
481
  containerElement.appendChild(this._whiteView);
494
482
  }
495
- await _windowManager.WindowManager.mount(_objectSpread({
483
+ await _windowManager.WindowManager.mount({
496
484
  debug: true,
497
485
  room: this._whiteBoardroom,
498
486
  container: this._whiteView,
@@ -500,8 +488,9 @@ class FcrBoardMainWindowImpl {
500
488
  chessboard: false,
501
489
  collectorContainer: options.collectorContainer,
502
490
  containerSizeRatio: options.containerSizeRatio,
503
- supportAppliancePlugin: true
504
- }, windowManagerParams), extendClass).then(async wm => {
491
+ supportAppliancePlugin: true,
492
+ ...windowManagerParams
493
+ }, extendClass).then(async wm => {
505
494
  if (this._destroyed) {
506
495
  wm.destroy();
507
496
  return;
@@ -512,8 +501,7 @@ class FcrBoardMainWindowImpl {
512
501
  this._windowManager.mainView.disableCameraTransform = true;
513
502
  this._addWindowManagerEventListeners();
514
503
  if (this._backgroundColor) {
515
- var _this$_whiteView$quer2;
516
- (_this$_whiteView$quer2 = this._whiteView.querySelector('.netless-whiteboard')) === null || _this$_whiteView$quer2 === void 0 || _this$_whiteView$quer2.style.setProperty('background-color', this._backgroundColor);
504
+ this._whiteView.querySelector('.netless-whiteboard')?.style.setProperty('background-color', this._backgroundColor);
517
505
  }
518
506
  const fullWorkerBlob = new Blob([_fullWorker.default], {
519
507
  type: 'text/javascript'
@@ -552,7 +540,7 @@ class FcrBoardMainWindowImpl {
552
540
  }
553
541
  });
554
542
  const hasPermission = this._whiteBoardroom.isWritable;
555
- this.logger.info("after mount, isWritable: ".concat(hasPermission));
543
+ this.logger.info(`after mount, isWritable: ${hasPermission}`);
556
544
  if (hasPermission) {
557
545
  this._whiteBoardroom.setMemberState(this._memberState);
558
546
  appliancePluginInstance.setMemberState({
@@ -588,9 +576,4 @@ class FcrBoardMainWindowImpl {
588
576
  this.addObserver((0, _logger.generateLogObserver)(this.logger, [['onWritable', ['isWritable']], ['onPageInfoUpdated', ['info']], ['onUndoStateUpdated', ['enable']], ['onRedoStateUpdated', ['enable']]]));
589
577
  }
590
578
  }
591
- exports.FcrBoardMainWindowImpl = FcrBoardMainWindowImpl;
592
- _FcrBoardMainWindowImpl = FcrBoardMainWindowImpl;
593
- var _applyDecs$e = _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"], [_cleanDecs, 2, "clean"], [_setToolTypeDecs, 2, "setToolType"], [_setStrokeWidthDecs, 2, "setStrokeWidth"], [_setStrokeColorDecs, 2, "setStrokeColor"], [_setTextColorDecs, 2, "setTextColor"], [_setTextSizeDecs, 2, "setTextSize"], [_setFillColorDecs, 2, "setFillColor"], [_setEraserSizeDecs, 2, "setEraserSize"], [_setBackgroundColorDecs, 2, "setBackgroundColor"], [_insertImageDecs, 2, "insertImage"], [_insertMediaDecs, 2, "insertMedia"], [_imports.trace, 2, "destroy"], [_imports.trace, 2, "getWritable"], [_mountDecs, 2, "_mount"], [_imports.trace, 2, "_setRoom"]], []).e;
594
- var _applyDecs$e2 = (0, _slicedToArray2.default)(_applyDecs$e, 1);
595
- _initProto = _applyDecs$e2[0];
596
- _applyDecs$e;
579
+ 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('create for main process, use old whiteboard control');
19
16
  return new _.FcrWhiteboardControlImpl(scene, api, sharedCache, hasOperationPrivilege);