@webex/plugin-meetings 3.11.0-next.41 → 3.11.0-next.43

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.
@@ -178,7 +178,7 @@ var AIEnableRequest = _webexCore.WebexPlugin.extend({
178
178
  method: _constants.HTTP_VERBS.PUT
179
179
  });
180
180
  },
181
- version: "3.11.0-next.41"
181
+ version: "3.11.0-next.43"
182
182
  });
183
183
  var _default = exports.default = AIEnableRequest;
184
184
  //# sourceMappingURL=index.js.map
@@ -209,7 +209,7 @@ var Breakout = _webexCore.WebexPlugin.extend({
209
209
  sessionId: this.sessionId
210
210
  });
211
211
  },
212
- version: "3.11.0-next.41"
212
+ version: "3.11.0-next.43"
213
213
  });
214
214
  var _default = exports.default = Breakout;
215
215
  //# sourceMappingURL=breakout.js.map
@@ -1109,7 +1109,7 @@ var Breakouts = _webexCore.WebexPlugin.extend({
1109
1109
  this.trigger(_constants.BREAKOUTS.EVENTS.ASK_RETURN_TO_MAIN);
1110
1110
  }
1111
1111
  },
1112
- version: "3.11.0-next.41"
1112
+ version: "3.11.0-next.43"
1113
1113
  });
1114
1114
  var _default = exports.default = Breakouts;
1115
1115
  //# sourceMappingURL=index.js.map
@@ -372,7 +372,7 @@ var SimultaneousInterpretation = _webexCore.WebexPlugin.extend({
372
372
  throw error;
373
373
  });
374
374
  },
375
- version: "3.11.0-next.41"
375
+ version: "3.11.0-next.43"
376
376
  });
377
377
  var _default = exports.default = SimultaneousInterpretation;
378
378
  //# sourceMappingURL=index.js.map
@@ -18,7 +18,7 @@ var SILanguage = _webexCore.WebexPlugin.extend({
18
18
  languageCode: 'number',
19
19
  languageName: 'string'
20
20
  },
21
- version: "3.11.0-next.41"
21
+ version: "3.11.0-next.43"
22
22
  });
23
23
  var _default = exports.default = SILanguage;
24
24
  //# sourceMappingURL=siLanguage.js.map
@@ -1,27 +1,28 @@
1
1
  "use strict";
2
2
 
3
3
  var _typeof = require("@babel/runtime-corejs2/helpers/typeof");
4
- var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
4
+ var _Array$from = require("@babel/runtime-corejs2/core-js/array/from");
5
+ var _Symbol = require("@babel/runtime-corejs2/core-js/symbol");
6
+ var _Symbol$iterator = require("@babel/runtime-corejs2/core-js/symbol/iterator");
7
+ var _Array$isArray2 = require("@babel/runtime-corejs2/core-js/array/is-array");
5
8
  var _Object$keys2 = require("@babel/runtime-corejs2/core-js/object/keys");
6
9
  var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
7
10
  var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
8
11
  var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
9
12
  var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
10
13
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
11
- var _Array$from = require("@babel/runtime-corejs2/core-js/array/from");
12
- var _Symbol = require("@babel/runtime-corejs2/core-js/symbol");
13
- var _Symbol$iterator = require("@babel/runtime-corejs2/core-js/symbol/iterator");
14
- var _Array$isArray2 = require("@babel/runtime-corejs2/core-js/array/is-array");
14
+ var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
15
15
  var _WeakMap = require("@babel/runtime-corejs2/core-js/weak-map");
16
16
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
17
17
  _Object$defineProperty(exports, "__esModule", {
18
18
  value: true
19
19
  });
20
+ exports.createLocusFromHashTreeMessage = createLocusFromHashTreeMessage;
20
21
  exports.default = void 0;
21
22
  var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
22
- var _map = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/map"));
23
23
  var _values = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/values"));
24
24
  var _assign = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/assign"));
25
+ var _map = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/map"));
25
26
  var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
26
27
  var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/json/stringify"));
27
28
  var _isArray = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/array/is-array"));
@@ -50,13 +51,13 @@ var _hashTreeParser = _interopRequireWildcard(require("../hashTree/hashTreeParse
50
51
  var _types = require("../hashTree/types");
51
52
  var _utils = require("../hashTree/utils");
52
53
  function _interopRequireWildcard(e, t) { if ("function" == typeof _WeakMap) var r = new _WeakMap(), n = new _WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = _Object$defineProperty) && _Object$getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
54
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? _Reflect$construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
55
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
56
+ function ownKeys(e, r) { var t = _Object$keys2(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; }
57
+ 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; }
53
58
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof _Symbol && r[_Symbol$iterator] || r["@@iterator"]; if (!t) { if (_Array$isArray2(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
54
59
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? _Array$from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
55
60
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
56
- function ownKeys(e, r) { var t = _Object$keys2(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; }
57
- 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; }
58
- function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? _Reflect$construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
59
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
60
61
  // list of top level keys in Locus DTO relevant for Hash Tree DTOs processing
61
62
  // it does not contain fields specific to classic Locus DTOs like sequence or baseSequence
62
63
  var LocusDtoTopLevelKeys = ['controls', 'fullState', 'embeddedApps', 'host', 'info', 'links', 'mediaShares', 'meetings', 'participants', 'replaces', 'self', 'sequence', 'syncUrl', 'url', 'htMeta' // only exists when hash trees are used
@@ -66,6 +67,101 @@ var LocusObjectStateAfterUpdates = {
66
67
  removed: 'removed',
67
68
  updated: 'updated'
68
69
  };
70
+ /**
71
+ * Creates a locus object from the objects received in a hash tree message. It usually will be
72
+ * incomplete, because hash tree messages only contain the parts of locus that have changed,
73
+ * and some updates come separately over Mercury or LLM in separate messages.
74
+ *
75
+ * @param {HashTreeMessage} message hash tree message to created the locus from
76
+ * @returns {Object} the created locus object and metadata if present
77
+ */
78
+ function createLocusFromHashTreeMessage(message) {
79
+ var locus = {
80
+ participants: [],
81
+ url: message.locusUrl
82
+ };
83
+ var metadata;
84
+ if (!message.locusStateElements) {
85
+ return {
86
+ locus: locus,
87
+ metadata: metadata
88
+ };
89
+ }
90
+ var _iterator = _createForOfIteratorHelper(message.locusStateElements),
91
+ _step;
92
+ try {
93
+ var _loop = function _loop() {
94
+ var element = _step.value;
95
+ if (!element.data) {
96
+ // eslint-disable-next-line no-continue
97
+ return 1; // continue
98
+ }
99
+ var type = element.htMeta.elementId.type.toLowerCase();
100
+ switch (type) {
101
+ case _types.ObjectType.locus:
102
+ {
103
+ // spread locus object data onto the top level, but remove keys managed by other ObjectTypes
104
+ var locusObjectData = _objectSpread({}, element.data);
105
+ (0, _values.default)(_types.ObjectTypeToLocusKeyMap).forEach(function (locusDtoKey) {
106
+ delete locusObjectData[locusDtoKey];
107
+ });
108
+ (0, _assign.default)(locus, locusObjectData);
109
+ break;
110
+ }
111
+ case _types.ObjectType.participant:
112
+ locus.participants.push(element.data);
113
+ break;
114
+ case _types.ObjectType.mediaShare:
115
+ if (!locus.mediaShares) {
116
+ locus.mediaShares = [];
117
+ }
118
+ locus.mediaShares.push(element.data);
119
+ break;
120
+ case _types.ObjectType.embeddedApp:
121
+ if (!locus.embeddedApps) {
122
+ locus.embeddedApps = [];
123
+ }
124
+ locus.embeddedApps.push(element.data);
125
+ break;
126
+ case _types.ObjectType.control:
127
+ if (!locus.controls) {
128
+ locus.controls = {};
129
+ }
130
+ (0, _assign.default)(locus.controls, element.data);
131
+ break;
132
+ case _types.ObjectType.links:
133
+ case _types.ObjectType.info:
134
+ case _types.ObjectType.fullState:
135
+ case _types.ObjectType.self:
136
+ {
137
+ var locusDtoKey = _types.ObjectTypeToLocusKeyMap[type];
138
+ locus[locusDtoKey] = element.data;
139
+ break;
140
+ }
141
+ case _types.ObjectType.metadata:
142
+ // metadata is not part of Locus DTO
143
+ metadata = _objectSpread(_objectSpread({}, element.data), {}, {
144
+ htMeta: element.htMeta
145
+ });
146
+ break;
147
+ default:
148
+ break;
149
+ }
150
+ };
151
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
152
+ if (_loop()) continue;
153
+ }
154
+ } catch (err) {
155
+ _iterator.e(err);
156
+ } finally {
157
+ _iterator.f();
158
+ }
159
+ return {
160
+ locus: locus,
161
+ metadata: metadata
162
+ };
163
+ }
164
+
69
165
  /**
70
166
  * @description LocusInfo extends ChildEmitter to convert locusInfo info a private emitter to parent object
71
167
  * @export
@@ -665,30 +761,14 @@ var LocusInfo = exports.default = /*#__PURE__*/function (_EventsScope) {
665
761
  */
666
762
  }, {
667
763
  key: "handleHashTreeMessage",
668
- value: (function () {
669
- var _handleHashTreeMessage = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2(meeting, eventType, message) {
670
- return _regenerator.default.wrap(function (_context2) {
671
- while (1) switch (_context2.prev = _context2.next) {
672
- case 0:
673
- if (!(eventType !== _constants.LOCUSEVENT.HASH_TREE_DATA_UPDATED)) {
674
- _context2.next = 1;
675
- break;
676
- }
677
- this.sendClassicVsHashTreeMismatchMetric(meeting, "got ".concat(eventType, ", expected ").concat(_constants.LOCUSEVENT.HASH_TREE_DATA_UPDATED));
678
- return _context2.abrupt("return");
679
- case 1:
680
- this.hashTreeParser.handleMessage(message);
681
- case 2:
682
- case "end":
683
- return _context2.stop();
684
- }
685
- }, _callee2, this);
686
- }));
687
- function handleHashTreeMessage(_x2, _x3, _x4) {
688
- return _handleHashTreeMessage.apply(this, arguments);
764
+ value: function handleHashTreeMessage(meeting, eventType, message) {
765
+ if (eventType !== _constants.LOCUSEVENT.HASH_TREE_DATA_UPDATED) {
766
+ this.sendClassicVsHashTreeMismatchMetric(meeting, "got ".concat(eventType, ", expected ").concat(_constants.LOCUSEVENT.HASH_TREE_DATA_UPDATED));
767
+ return;
689
768
  }
690
- return handleHashTreeMessage;
691
- }()
769
+ this.hashTreeParser.handleMessage(message);
770
+ }
771
+
692
772
  /**
693
773
  * Callback registered with HashTreeParser to receive locus info updates.
694
774
  * Updates our locus info based on the data parsed by the hash tree parser.
@@ -697,7 +777,6 @@ var LocusInfo = exports.default = /*#__PURE__*/function (_EventsScope) {
697
777
  * @param {Object} [data] - Additional data for the update, if applicable.
698
778
  * @returns {void}
699
779
  */
700
- )
701
780
  }, {
702
781
  key: "updateFromHashTree",
703
782
  value: function updateFromHashTree(updateType, data) {
@@ -775,9 +854,11 @@ var LocusInfo = exports.default = /*#__PURE__*/function (_EventsScope) {
775
854
  }
776
855
  case _hashTreeParser.LocusInfoUpdateType.MEETING_ENDED:
777
856
  {
778
- _loggerProxy.default.logger.info("Locus-info:index#updateFromHashTree --> received signal that meeting ended, destroying meeting ".concat(this.meetingId));
779
857
  var meeting = this.webex.meetings.meetingCollection.get(this.meetingId);
780
- this.webex.meetings.destroy(meeting, _constants.MEETING_REMOVED_REASON.SELF_REMOVED);
858
+ if (meeting) {
859
+ _loggerProxy.default.logger.info("Locus-info:index#updateFromHashTree --> received signal that meeting ended, destroying meeting ".concat(this.meetingId));
860
+ this.webex.meetings.destroy(meeting, _constants.MEETING_REMOVED_REASON.SELF_REMOVED);
861
+ }
781
862
  }
782
863
  }
783
864
  }
@@ -1245,11 +1326,11 @@ var LocusInfo = exports.default = /*#__PURE__*/function (_EventsScope) {
1245
1326
  isReplace: isReplace
1246
1327
  });
1247
1328
  if (participants && (0, _isArray.default)(participants) && participants.length > 0) {
1248
- var _iterator = _createForOfIteratorHelper(participants),
1249
- _step;
1329
+ var _iterator2 = _createForOfIteratorHelper(participants),
1330
+ _step2;
1250
1331
  try {
1251
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
1252
- var participant = _step.value;
1332
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
1333
+ var participant = _step2.value;
1253
1334
  if (participant && (participant === null || participant === void 0 ? void 0 : participant.reason) === 'FAILURE') {
1254
1335
  var _participant$person;
1255
1336
  this.emitScoped({
@@ -1261,9 +1342,9 @@ var LocusInfo = exports.default = /*#__PURE__*/function (_EventsScope) {
1261
1342
  }
1262
1343
  }
1263
1344
  } catch (err) {
1264
- _iterator.e(err);
1345
+ _iterator2.e(err);
1265
1346
  } finally {
1266
- _iterator.f();
1347
+ _iterator2.f();
1267
1348
  }
1268
1349
  }
1269
1350
  }