@webex/plugin-meetings 3.12.0-next.86 → 3.12.0-next.87

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.
@@ -191,7 +191,7 @@ var AIEnableRequest = _webexCore.WebexPlugin.extend({
191
191
  method: _constants.HTTP_VERBS.PUT
192
192
  });
193
193
  },
194
- version: "3.12.0-next.86"
194
+ version: "3.12.0-next.87"
195
195
  });
196
196
  var _default = exports.default = AIEnableRequest;
197
197
  //# sourceMappingURL=index.js.map
@@ -214,7 +214,7 @@ var Breakout = _webexCore.WebexPlugin.extend({
214
214
  sessionId: this.sessionId
215
215
  });
216
216
  },
217
- version: "3.12.0-next.86"
217
+ version: "3.12.0-next.87"
218
218
  });
219
219
  var _default = exports.default = Breakout;
220
220
  //# sourceMappingURL=breakout.js.map
@@ -1133,7 +1133,7 @@ var Breakouts = _webexCore.WebexPlugin.extend({
1133
1133
  this.trigger(_constants.BREAKOUTS.EVENTS.ASK_RETURN_TO_MAIN);
1134
1134
  }
1135
1135
  },
1136
- version: "3.12.0-next.86"
1136
+ version: "3.12.0-next.87"
1137
1137
  });
1138
1138
  var _default = exports.default = Breakouts;
1139
1139
  //# sourceMappingURL=index.js.map
@@ -381,7 +381,7 @@ var SimultaneousInterpretation = _webexCore.WebexPlugin.extend({
381
381
  throw error;
382
382
  });
383
383
  },
384
- version: "3.12.0-next.86"
384
+ version: "3.12.0-next.87"
385
385
  });
386
386
  var _default = exports.default = SimultaneousInterpretation;
387
387
  //# 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.12.0-next.86"
21
+ version: "3.12.0-next.87"
22
22
  });
23
23
  var _default = exports.default = SILanguage;
24
24
  //# sourceMappingURL=siLanguage.js.map
@@ -4863,7 +4863,12 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4863
4863
  }
4864
4864
 
4865
4865
  /**
4866
- * Transfer the moderator role to another eligible member
4866
+ * Transfer the moderator role to another eligible member.
4867
+ *
4868
+ * If the target member is currently joined in the current session, the request is
4869
+ * sent against the current locus. Otherwise, we search the breakout sessions and,
4870
+ * when the member is found in one, we send the request against that breakout
4871
+ * session's locus url instead.
4867
4872
  * @param {String} memberId
4868
4873
  * @param {Boolean} moderator
4869
4874
  * @returns {Promise} see #members.transferHostToMember
@@ -4873,8 +4878,19 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
4873
4878
  }, {
4874
4879
  key: "transfer",
4875
4880
  value: function transfer(memberId) {
4881
+ var _this$breakouts2, _this$breakouts2$brea, _this$breakouts2$brea2, _breakout$breakoutRos;
4876
4882
  var moderator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
4877
- return this.members.transferHostToMember(memberId, moderator);
4883
+ var targetMember = this.members.membersCollection.get(memberId);
4884
+ if (targetMember !== null && targetMember !== void 0 && targetMember.isInMeeting) {
4885
+ return this.members.transferHostToMember(memberId, moderator);
4886
+ }
4887
+ var breakout = (_this$breakouts2 = this.breakouts) === null || _this$breakouts2 === void 0 ? void 0 : (_this$breakouts2$brea = _this$breakouts2.breakouts) === null || _this$breakouts2$brea === void 0 ? void 0 : (_this$breakouts2$brea2 = _this$breakouts2$brea.models) === null || _this$breakouts2$brea2 === void 0 ? void 0 : _this$breakouts2$brea2.find(function (bo) {
4888
+ var _bo$members, _bo$members$membersCo;
4889
+ var breakoutMember = (_bo$members = bo.members) === null || _bo$members === void 0 ? void 0 : (_bo$members$membersCo = _bo$members.membersCollection) === null || _bo$members$membersCo === void 0 ? void 0 : _bo$members$membersCo.get(memberId);
4890
+ return breakoutMember === null || breakoutMember === void 0 ? void 0 : breakoutMember.isInMeeting;
4891
+ });
4892
+ var breakoutLocusUrl = breakout === null || breakout === void 0 ? void 0 : (_breakout$breakoutRos = breakout.breakoutRosterLocus) === null || _breakout$breakoutRos === void 0 ? void 0 : _breakout$breakoutRos.url;
4893
+ return this.members.transferHostToMember(memberId, moderator, breakoutLocusUrl);
4878
4894
  }
4879
4895
 
4880
4896
  /**