@webex/plugin-meetings 2.35.3 → 2.35.4

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 (212) hide show
  1. package/dist/common/browser-detection.js.map +1 -1
  2. package/dist/common/collection.js.map +1 -1
  3. package/dist/common/config.js.map +1 -1
  4. package/dist/common/errors/captcha-error.js +7 -0
  5. package/dist/common/errors/captcha-error.js.map +1 -1
  6. package/dist/common/errors/intent-to-join.js +8 -0
  7. package/dist/common/errors/intent-to-join.js.map +1 -1
  8. package/dist/common/errors/join-meeting.js +8 -0
  9. package/dist/common/errors/join-meeting.js.map +1 -1
  10. package/dist/common/errors/media.js +7 -0
  11. package/dist/common/errors/media.js.map +1 -1
  12. package/dist/common/errors/parameter.js.map +1 -1
  13. package/dist/common/errors/password-error.js +7 -0
  14. package/dist/common/errors/password-error.js.map +1 -1
  15. package/dist/common/errors/permission.js +7 -0
  16. package/dist/common/errors/permission.js.map +1 -1
  17. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  18. package/dist/common/errors/reconnection.js +7 -0
  19. package/dist/common/errors/reconnection.js.map +1 -1
  20. package/dist/common/errors/stats.js +7 -0
  21. package/dist/common/errors/stats.js.map +1 -1
  22. package/dist/common/errors/webex-errors.js.map +1 -1
  23. package/dist/common/errors/webex-meetings-error.js +5 -2
  24. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  25. package/dist/common/events/events-scope.js.map +1 -1
  26. package/dist/common/events/events.js.map +1 -1
  27. package/dist/common/events/trigger-proxy.js.map +1 -1
  28. package/dist/common/events/util.js.map +1 -1
  29. package/dist/common/logs/logger-config.js.map +1 -1
  30. package/dist/common/logs/logger-proxy.js.map +1 -1
  31. package/dist/common/logs/request.js +3 -0
  32. package/dist/common/logs/request.js.map +1 -1
  33. package/dist/common/queue.js.map +1 -1
  34. package/dist/config.js.map +1 -1
  35. package/dist/constants.js.map +1 -1
  36. package/dist/locus-info/controlsUtils.js.map +1 -1
  37. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  38. package/dist/locus-info/fullState.js.map +1 -1
  39. package/dist/locus-info/hostUtils.js.map +1 -1
  40. package/dist/locus-info/index.js +43 -5
  41. package/dist/locus-info/index.js.map +1 -1
  42. package/dist/locus-info/infoUtils.js.map +1 -1
  43. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  44. package/dist/locus-info/parser.js +12 -3
  45. package/dist/locus-info/parser.js.map +1 -1
  46. package/dist/locus-info/selfUtils.js.map +1 -1
  47. package/dist/media/index.js.map +1 -1
  48. package/dist/media/properties.js +12 -0
  49. package/dist/media/properties.js.map +1 -1
  50. package/dist/media/util.js.map +1 -1
  51. package/dist/mediaQualityMetrics/config.js.map +1 -1
  52. package/dist/meeting/effectsState.js +8 -1
  53. package/dist/meeting/effectsState.js.map +1 -1
  54. package/dist/meeting/index.js +151 -32
  55. package/dist/meeting/index.js.map +1 -1
  56. package/dist/meeting/muteState.js +6 -0
  57. package/dist/meeting/muteState.js.map +1 -1
  58. package/dist/meeting/request.js +54 -24
  59. package/dist/meeting/request.js.map +1 -1
  60. package/dist/meeting/state.js.map +1 -1
  61. package/dist/meeting/util.js.map +1 -1
  62. package/dist/meeting-info/collection.js +4 -1
  63. package/dist/meeting-info/collection.js.map +1 -1
  64. package/dist/meeting-info/index.js +5 -0
  65. package/dist/meeting-info/index.js.map +1 -1
  66. package/dist/meeting-info/meeting-info-v2.js +14 -2
  67. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  68. package/dist/meeting-info/request.js +3 -0
  69. package/dist/meeting-info/request.js.map +1 -1
  70. package/dist/meeting-info/util.js.map +1 -1
  71. package/dist/meeting-info/utilv2.js.map +1 -1
  72. package/dist/meetings/collection.js +4 -1
  73. package/dist/meetings/collection.js.map +1 -1
  74. package/dist/meetings/index.js +72 -20
  75. package/dist/meetings/index.js.map +1 -1
  76. package/dist/meetings/request.js +4 -0
  77. package/dist/meetings/request.js.map +1 -1
  78. package/dist/meetings/util.js.map +1 -1
  79. package/dist/member/index.js +30 -7
  80. package/dist/member/index.js.map +1 -1
  81. package/dist/member/util.js +2 -1
  82. package/dist/member/util.js.map +1 -1
  83. package/dist/members/collection.js +1 -0
  84. package/dist/members/collection.js.map +1 -1
  85. package/dist/members/index.js +12 -1
  86. package/dist/members/index.js.map +1 -1
  87. package/dist/members/request.js +19 -9
  88. package/dist/members/request.js.map +1 -1
  89. package/dist/members/util.js.map +1 -1
  90. package/dist/metrics/config.js.map +1 -1
  91. package/dist/metrics/constants.js.map +1 -1
  92. package/dist/metrics/index.js +8 -0
  93. package/dist/metrics/index.js.map +1 -1
  94. package/dist/networkQualityMonitor/index.js +10 -2
  95. package/dist/networkQualityMonitor/index.js.map +1 -1
  96. package/dist/peer-connection-manager/index.js +11 -4
  97. package/dist/peer-connection-manager/index.js.map +1 -1
  98. package/dist/personal-meeting-room/index.js +11 -0
  99. package/dist/personal-meeting-room/index.js.map +1 -1
  100. package/dist/personal-meeting-room/request.js +2 -1
  101. package/dist/personal-meeting-room/request.js.map +1 -1
  102. package/dist/personal-meeting-room/util.js.map +1 -1
  103. package/dist/reachability/index.js +17 -7
  104. package/dist/reachability/index.js.map +1 -1
  105. package/dist/reachability/request.js +1 -0
  106. package/dist/reachability/request.js.map +1 -1
  107. package/dist/reconnection-manager/index.js +21 -2
  108. package/dist/reconnection-manager/index.js.map +1 -1
  109. package/dist/roap/collection.js +1 -0
  110. package/dist/roap/collection.js.map +1 -1
  111. package/dist/roap/handler.js +14 -2
  112. package/dist/roap/handler.js.map +1 -1
  113. package/dist/roap/index.js +11 -1
  114. package/dist/roap/index.js.map +1 -1
  115. package/dist/roap/request.js +7 -2
  116. package/dist/roap/request.js.map +1 -1
  117. package/dist/roap/state.js.map +1 -1
  118. package/dist/roap/turnDiscovery.js +9 -1
  119. package/dist/roap/turnDiscovery.js.map +1 -1
  120. package/dist/roap/util.js.map +1 -1
  121. package/dist/statsAnalyzer/global.js.map +1 -1
  122. package/dist/statsAnalyzer/index.js +19 -1
  123. package/dist/statsAnalyzer/index.js.map +1 -1
  124. package/dist/statsAnalyzer/mqaUtil.js +9 -3
  125. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  126. package/dist/transcription/index.js +10 -3
  127. package/dist/transcription/index.js.map +1 -1
  128. package/package.json +17 -17
  129. package/src/common/{browser-detection.js → browser-detection.ts} +1 -1
  130. package/src/common/collection.ts +6 -6
  131. package/src/common/{config.js → config.ts} +1 -1
  132. package/src/common/errors/{captcha-error.js → captcha-error.ts} +5 -1
  133. package/src/common/errors/{intent-to-join.js → intent-to-join.ts} +6 -1
  134. package/src/common/errors/{join-meeting.js → join-meeting.ts} +6 -1
  135. package/src/common/errors/{media.js → media.ts} +5 -1
  136. package/src/common/errors/parameter.ts +3 -2
  137. package/src/common/errors/{password-error.js → password-error.ts} +5 -1
  138. package/src/common/errors/{permission.js → permission.ts} +5 -1
  139. package/src/common/errors/{reconnection-in-progress.js → reconnection-in-progress.ts} +0 -0
  140. package/src/common/errors/{reconnection.js → reconnection.ts} +5 -1
  141. package/src/common/errors/{stats.js → stats.ts} +5 -1
  142. package/src/common/errors/{webex-errors.js → webex-errors.ts} +1 -2
  143. package/src/common/errors/{webex-meetings-error.js → webex-meetings-error.ts} +3 -1
  144. package/src/common/events/{events-scope.js → events-scope.ts} +1 -1
  145. package/src/common/events/{events.js → events.ts} +0 -0
  146. package/src/common/events/{trigger-proxy.js → trigger-proxy.ts} +1 -2
  147. package/src/common/events/{util.js → util.ts} +1 -1
  148. package/src/common/logs/{logger-config.js → logger-config.ts} +1 -2
  149. package/src/common/logs/{logger-proxy.js → logger-proxy.ts} +1 -1
  150. package/src/common/logs/{request.js → request.ts} +12 -2
  151. package/src/common/queue.ts +1 -2
  152. package/src/{config.js → config.ts} +1 -0
  153. package/src/constants.ts +1 -0
  154. package/src/locus-info/{controlsUtils.js → controlsUtils.ts} +4 -4
  155. package/src/locus-info/{embeddedAppsUtils.js → embeddedAppsUtils.ts} +5 -6
  156. package/src/locus-info/{fullState.js → fullState.ts} +1 -1
  157. package/src/locus-info/{hostUtils.js → hostUtils.ts} +5 -5
  158. package/src/locus-info/{index.js → index.ts} +67 -32
  159. package/src/locus-info/{infoUtils.js → infoUtils.ts} +3 -4
  160. package/src/locus-info/{mediaSharesUtils.js → mediaSharesUtils.ts} +13 -13
  161. package/src/locus-info/{parser.js → parser.ts} +22 -12
  162. package/src/locus-info/{selfUtils.js → selfUtils.ts} +17 -19
  163. package/src/media/{index.js → index.ts} +108 -39
  164. package/src/media/{properties.js → properties.ts} +16 -4
  165. package/src/media/{util.js → util.ts} +2 -3
  166. package/src/mediaQualityMetrics/{config.js → config.ts} +1 -1
  167. package/src/meeting/{effectsState.js → effectsState.ts} +12 -6
  168. package/src/meeting/{index.js → index.ts} +323 -147
  169. package/src/meeting/{muteState.js → muteState.ts} +16 -11
  170. package/src/meeting/{request.js → request.ts} +124 -36
  171. package/src/meeting/{state.js → state.ts} +6 -6
  172. package/src/meeting/{util.js → util.ts} +4 -4
  173. package/src/meeting-info/{collection.js → collection.ts} +4 -1
  174. package/src/meeting-info/{index.js → index.ts} +10 -6
  175. package/src/meeting-info/{meeting-info-v2.js → meeting-info-v2.ts} +28 -10
  176. package/src/meeting-info/{request.js → request.ts} +6 -2
  177. package/src/meeting-info/{util.js → util.ts} +6 -5
  178. package/src/meeting-info/{utilv2.js → utilv2.ts} +8 -7
  179. package/src/meetings/{collection.js → collection.ts} +5 -2
  180. package/src/meetings/{index.js → index.ts} +88 -22
  181. package/src/meetings/{request.js → request.ts} +6 -1
  182. package/src/meetings/{util.js → util.ts} +5 -3
  183. package/src/member/{index.js → index.ts} +46 -15
  184. package/src/member/{util.js → util.ts} +17 -16
  185. package/src/members/{collection.js → collection.ts} +2 -1
  186. package/src/members/{index.js → index.ts} +39 -26
  187. package/src/members/{request.js → request.ts} +16 -5
  188. package/src/members/{util.js → util.ts} +7 -7
  189. package/src/metrics/{config.js → config.ts} +0 -2
  190. package/src/metrics/{constants.js → constants.ts} +0 -0
  191. package/src/metrics/{index.js → index.ts} +27 -8
  192. package/src/networkQualityMonitor/{index.js → index.ts} +18 -3
  193. package/src/peer-connection-manager/{index.js → index.ts} +72 -28
  194. package/src/personal-meeting-room/{index.js → index.ts} +17 -4
  195. package/src/personal-meeting-room/{request.js → request.ts} +3 -1
  196. package/src/personal-meeting-room/{util.js → util.ts} +1 -1
  197. package/src/reachability/{index.js → index.ts} +28 -17
  198. package/src/reachability/request.ts +4 -2
  199. package/src/reconnection-manager/{index.js → index.ts} +42 -13
  200. package/src/roap/{collection.js → collection.ts} +1 -0
  201. package/src/roap/{handler.js → handler.ts} +15 -4
  202. package/src/roap/{index.js → index.ts} +23 -10
  203. package/src/roap/{request.js → request.ts} +19 -3
  204. package/src/roap/{state.js → state.ts} +3 -2
  205. package/src/roap/turnDiscovery.ts +14 -5
  206. package/src/roap/{util.js → util.ts} +1 -2
  207. package/src/statsAnalyzer/{global.js → global.ts} +0 -0
  208. package/src/statsAnalyzer/{index.js → index.ts} +36 -17
  209. package/src/statsAnalyzer/{mqaUtil.js → mqaUtil.ts} +6 -1
  210. package/src/transcription/{index.js → index.ts} +16 -11
  211. package/test/integration/spec/space-meeting.js +1 -2
  212. package/test/unit/spec/roap/util.js +1 -1
@@ -17,13 +17,13 @@ import {
17
17
  } from '../constants';
18
18
  import ParameterError from '../common/errors/parameter';
19
19
 
20
- const MemberUtil = {};
20
+ const MemberUtil: any = {};
21
21
 
22
22
  /**
23
23
  * @param {Object} participant the locus participant
24
24
  * @returns {Boolean}
25
25
  */
26
- MemberUtil.isUser = (participant) => participant && participant.type === _USER_;
26
+ MemberUtil.isUser = (participant: any) => participant && participant.type === _USER_;
27
27
 
28
28
  MemberUtil.isModerator = (participant) => participant && participant.moderator;
29
29
 
@@ -31,13 +31,13 @@ MemberUtil.isModerator = (participant) => participant && participant.moderator;
31
31
  * @param {Object} participant the locus participant
32
32
  * @returns {Boolean}
33
33
  */
34
- MemberUtil.isGuest = (participant) => participant && participant.guest;
34
+ MemberUtil.isGuest = (participant: any) => participant && participant.guest;
35
35
 
36
36
  /**
37
37
  * @param {Object} participant the locus participant
38
38
  * @returns {Boolean}
39
39
  */
40
- MemberUtil.isDevice = (participant) => participant && participant.type === _RESOURCE_ROOM_;
40
+ MemberUtil.isDevice = (participant: any) => participant && participant.type === _RESOURCE_ROOM_;
41
41
 
42
42
  MemberUtil.isModeratorAssignmentProhibited = (participant) => participant && participant.moderatorAssignmentNotAllowed;
43
43
 
@@ -48,7 +48,7 @@ MemberUtil.isModeratorAssignmentProhibited = (participant) => participant && par
48
48
  * @param {String} id
49
49
  * @returns {Boolean}
50
50
  */
51
- MemberUtil.isSame = (participant, id) => participant &&
51
+ MemberUtil.isSame = (participant: any, id: string) => participant &&
52
52
  (participant.id === id || participant.person && participant.person.id === id);
53
53
 
54
54
  /**
@@ -58,7 +58,7 @@ MemberUtil.isSame = (participant, id) => participant &&
58
58
  * @param {String} id
59
59
  * @returns {Boolean}
60
60
  */
61
- MemberUtil.isAssociatedSame = (participant, id) => participant &&
61
+ MemberUtil.isAssociatedSame = (participant: any, id: string) => participant &&
62
62
  participant.associatedUsers &&
63
63
  participant.associatedUsers.some((user) => (user.id === id || user.person && user.person.id === id));
64
64
 
@@ -68,16 +68,17 @@ participant.associatedUsers.some((user) => (user.id === id || user.person && use
68
68
  * @param {String} status
69
69
  * @returns {Boolean}
70
70
  */
71
- MemberUtil.isNotAdmitted = (participant, isGuest, status) => participant &&
71
+ MemberUtil.isNotAdmitted = (participant: any, isGuest: boolean, status: string) => participant &&
72
72
  participant.guest && ((participant.devices && participant.devices[0] &&
73
73
  participant.devices[0].intent && participant.devices[0].intent.type === _WAIT_ &&
74
+ // @ts-ignore
74
75
  isGuest && status === _IN_LOBBY_) || !status === _IN_MEETING_);
75
76
 
76
77
  /**
77
78
  * @param {Object} participant the locus participant
78
79
  * @returns {Boolean}
79
80
  */
80
- MemberUtil.isAudioMuted = (participant) => {
81
+ MemberUtil.isAudioMuted = (participant: any) => {
81
82
  if (!participant) {
82
83
  throw new ParameterError('Audio could not be processed, participant is undefined.');
83
84
  }
@@ -99,7 +100,7 @@ MemberUtil.isAudioMuted = (participant) => {
99
100
  * @param {Object} participant the locus participant
100
101
  * @returns {Boolean}
101
102
  */
102
- MemberUtil.isVideoMuted = (participant) => {
103
+ MemberUtil.isVideoMuted = (participant: any) => {
103
104
  if (!participant) {
104
105
  throw new ParameterError('Video could not be processed, participant is undefined.');
105
106
  }
@@ -111,7 +112,7 @@ MemberUtil.isVideoMuted = (participant) => {
111
112
  * @param {Object} participant the locus participant
112
113
  * @returns {Boolean}
113
114
  */
114
- MemberUtil.isHandRaised = (participant) => {
115
+ MemberUtil.isHandRaised = (participant: any) => {
115
116
  if (!participant) {
116
117
  throw new ParameterError('Raise hand could not be processed, participant is undefined.');
117
118
  }
@@ -125,7 +126,7 @@ MemberUtil.isHandRaised = (participant) => {
125
126
  * @param {String} accessor
126
127
  * @returns {Boolean}
127
128
  */
128
- MemberUtil.isMuted = (status, accessor) => {
129
+ MemberUtil.isMuted = (status: string, accessor: string) => {
129
130
  if (status) {
130
131
  if (status[accessor] === _RECEIVE_ONLY_) {
131
132
  return true;
@@ -143,7 +144,7 @@ MemberUtil.isMuted = (status, accessor) => {
143
144
  * @param {Object} controls
144
145
  * @returns {String|null}
145
146
  */
146
- MemberUtil.getRecordingMember = (controls) => {
147
+ MemberUtil.getRecordingMember = (controls: any) => {
147
148
  if (!controls) {
148
149
  return null;
149
150
  }
@@ -158,7 +159,7 @@ MemberUtil.getRecordingMember = (controls) => {
158
159
  * @param {Object} participant the locus participant
159
160
  * @returns {Boolean}
160
161
  */
161
- MemberUtil.isRecording = (participant) => {
162
+ MemberUtil.isRecording = (participant: any) => {
162
163
  if (!participant) {
163
164
  throw new ParameterError('Recording could not be processed, participant is undefined.');
164
165
  }
@@ -204,7 +205,7 @@ MemberUtil.isMutable = (isSelf, isDevice, isInMeeting, isMuted, type) => {
204
205
  * @param {Object} participant the locus participant
205
206
  * @returns {String}
206
207
  */
207
- MemberUtil.extractStatus = (participant) => {
208
+ MemberUtil.extractStatus = (participant: any) => {
208
209
  if (!(participant && participant.devices && participant.devices.length)) {
209
210
  return _NOT_IN_MEETING_;
210
211
  }
@@ -231,7 +232,7 @@ MemberUtil.extractStatus = (participant) => {
231
232
  * @param {Object} participant the locus participant
232
233
  * @returns {String}
233
234
  */
234
- MemberUtil.extractId = (participant) => {
235
+ MemberUtil.extractId = (participant: any) => {
235
236
  if (participant) {
236
237
  return participant.id;
237
238
  }
@@ -243,7 +244,7 @@ MemberUtil.extractId = (participant) => {
243
244
  * @param {Object} participant the locus participant
244
245
  * @returns {String}
245
246
  */
246
- MemberUtil.extractName = (participant) => {
247
+ MemberUtil.extractName = (participant: any) => {
247
248
  if (participant && participant.person) {
248
249
  return participant.person.name;
249
250
  }
@@ -4,6 +4,7 @@ import {MEETINGS} from '../constants';
4
4
  * @class MembersCollection
5
5
  */
6
6
  export default class MembersCollection {
7
+ members: any;
7
8
  namespace = MEETINGS;
8
9
 
9
10
  /**
@@ -26,7 +27,7 @@ export default class MembersCollection {
26
27
  * @param {String} id
27
28
  * @returns {Member}
28
29
  */
29
- get(id) {
30
+ get(id: string) {
30
31
  return this.members[id];
31
32
  }
32
33
 
@@ -2,6 +2,7 @@
2
2
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
3
3
  */
4
4
  import {isEmpty} from 'lodash';
5
+ // @ts-ignore
5
6
  import {StatelessWebexPlugin} from '@webex/webex-core';
6
7
 
7
8
  import {MEETINGS, EVENT_TRIGGERS, FLOOR_ACTION, CONTENT, WHITEBOARD} from '../constants';
@@ -60,6 +61,16 @@ import MembersUtil from './util';
60
61
  * @class Members
61
62
  */
62
63
  export default class Members extends StatelessWebexPlugin {
64
+ hostId: any;
65
+ locusUrl: any;
66
+ mediaShareContentId: any;
67
+ mediaShareWhiteboardId: any;
68
+ membersCollection: any;
69
+ membersRequest: any;
70
+ recordingId: any;
71
+ selfId: any;
72
+ type: any;
73
+
63
74
  namespace = MEETINGS;
64
75
 
65
76
  /**
@@ -68,7 +79,7 @@ export default class Members extends StatelessWebexPlugin {
68
79
  * @param {Object} options
69
80
  * @memberof Members
70
81
  */
71
- constructor(attrs, options) {
82
+ constructor(attrs: any, options: object) {
72
83
  super({}, options);
73
84
  /**
74
85
  * The Members Request object to interact with server
@@ -77,6 +88,7 @@ export default class Members extends StatelessWebexPlugin {
77
88
  * @private
78
89
  * @memberof Members
79
90
  */
91
+ // @ts-ignore
80
92
  this.membersRequest = new MembersRequest({}, options);
81
93
  /**
82
94
  * The Members Collection cache
@@ -159,7 +171,7 @@ export default class Members extends StatelessWebexPlugin {
159
171
  * @private
160
172
  * @memberof Members
161
173
  */
162
- locusSelfUpdate(payload) {
174
+ locusSelfUpdate(payload: { newSelf: any; oldSelf: any }) {
163
175
  let newSelfId = null;
164
176
  let oldSelfId = null;
165
177
 
@@ -209,7 +221,7 @@ export default class Members extends StatelessWebexPlugin {
209
221
  * @private
210
222
  * @memberof Members
211
223
  */
212
- locusHostUpdate(payload) {
224
+ locusHostUpdate(payload: { newHost: any; oldHost: any }) {
213
225
  let newHostId = null;
214
226
  let oldHostId = null;
215
227
 
@@ -259,7 +271,7 @@ export default class Members extends StatelessWebexPlugin {
259
271
  * @private
260
272
  * @memberof Members
261
273
  */
262
- locusParticipantsUpdate(payload) {
274
+ locusParticipantsUpdate(payload: { participants: object }) {
263
275
  if (payload) {
264
276
  const delta = this.handleLocusInfoUpdatedParticipants(payload);
265
277
  const full = this.handleMembersUpdate(delta); // SDK should propagate the full list for both delta and non delta updates
@@ -288,7 +300,7 @@ export default class Members extends StatelessWebexPlugin {
288
300
  * @private
289
301
  * @memberof Members
290
302
  */
291
- locusMediaSharesUpdate(payload) {
303
+ locusMediaSharesUpdate(payload: { current: any; previous: any }) {
292
304
  const currentContent = payload.current?.content;
293
305
  const previousContent = payload.previous?.content;
294
306
  const currentWhiteboard = payload.current?.whiteboard;
@@ -370,7 +382,7 @@ export default class Members extends StatelessWebexPlugin {
370
382
  * @private
371
383
  * @memberof Members
372
384
  */
373
- locusUrlUpdate(payload) {
385
+ locusUrlUpdate(payload: any) {
374
386
  if (payload) {
375
387
  this.setLocusUrl(null, payload);
376
388
  }
@@ -384,7 +396,7 @@ export default class Members extends StatelessWebexPlugin {
384
396
  * @private
385
397
  * @memberof Members
386
398
  */
387
- locusFullStateTypeUpdate(payload) {
399
+ locusFullStateTypeUpdate(payload: { type: string }) {
388
400
  // TODO: at some point there could be a timing issue here, for updating each member
389
401
  // ie., if the type changes AND there is no locus update, then each member will not know the type of call
390
402
  // which means they cannot determine isMutable && isRemovable
@@ -403,7 +415,7 @@ export default class Members extends StatelessWebexPlugin {
403
415
  * @private
404
416
  * @memberof Members
405
417
  */
406
- handleMembersUpdate(membersUpdate) {
418
+ private handleMembersUpdate(membersUpdate: any) {
407
419
  if (membersUpdate) {
408
420
  if (membersUpdate.updated) {
409
421
  this.constructMembers(membersUpdate.updated);
@@ -423,7 +435,7 @@ export default class Members extends StatelessWebexPlugin {
423
435
  * @private
424
436
  * @memberof Members
425
437
  */
426
- constructMembers(list) {
438
+ private constructMembers(list: Array<any>) {
427
439
  list.forEach((member) => {
428
440
  this.membersCollection.set(member.id, member);
429
441
  });
@@ -436,7 +448,7 @@ export default class Members extends StatelessWebexPlugin {
436
448
  * @private
437
449
  * @memberof Members
438
450
  */
439
- handleLocusInfoUpdatedParticipants(payload) {
451
+ private handleLocusInfoUpdatedParticipants(payload: any) {
440
452
  this.hostId = payload.hostId || this.hostId;
441
453
  this.selfId = payload.selfId || this.selfId;
442
454
  this.recordingId = payload.recordingId;
@@ -457,7 +469,7 @@ export default class Members extends StatelessWebexPlugin {
457
469
  * @public
458
470
  * @memberof Members
459
471
  */
460
- setLocusUrl(locus, locusUrl = null) {
472
+ public setLocusUrl(locus: any, locusUrl: string = null) {
461
473
  if (locusUrl) {
462
474
  this.locusUrl = locusUrl;
463
475
  }
@@ -478,7 +490,7 @@ export default class Members extends StatelessWebexPlugin {
478
490
  * @public
479
491
  * @memberof Members
480
492
  */
481
- setHostId(locus, hostId = null) {
493
+ public setHostId(locus: any, hostId: string = null) {
482
494
  if (hostId) {
483
495
  this.hostId = hostId;
484
496
  }
@@ -499,7 +511,7 @@ export default class Members extends StatelessWebexPlugin {
499
511
  * @public
500
512
  * @memberof Members
501
513
  */
502
- setType(fullState, type = null) {
514
+ public setType(fullState: any, type: string = null) {
503
515
  if (type) {
504
516
  this.type = type;
505
517
  }
@@ -519,7 +531,7 @@ export default class Members extends StatelessWebexPlugin {
519
531
  * @returns {undefined}
520
532
  * @memberof Members
521
533
  */
522
- setSelfId(locus, selfId = null) {
534
+ setSelfId(locus: any, selfId: string = null) {
523
535
  if (selfId) {
524
536
  this.selfId = selfId;
525
537
  }
@@ -539,7 +551,7 @@ export default class Members extends StatelessWebexPlugin {
539
551
  * @returns {undefined}
540
552
  * @memberof Members
541
553
  */
542
- setMediaShareContentId(locus, contentId) {
554
+ setMediaShareContentId(locus: any, contentId?: string) {
543
555
  if (contentId) {
544
556
  this.mediaShareContentId = contentId;
545
557
  }
@@ -569,7 +581,7 @@ export default class Members extends StatelessWebexPlugin {
569
581
  * @returns {undefined}
570
582
  * @memberof Members
571
583
  */
572
- setMediaShareWhiteboardId(locus, whiteboardId) {
584
+ setMediaShareWhiteboardId(locus: any, whiteboardId?: string) {
573
585
  if (whiteboardId) {
574
586
  this.mediaShareWhiteboardId = whiteboardId;
575
587
  }
@@ -600,7 +612,7 @@ export default class Members extends StatelessWebexPlugin {
600
612
  * @private
601
613
  * @memberof Members
602
614
  */
603
- update(participants) {
615
+ private update(participants: Array<any>) {
604
616
  const membersUpdate = {added: [], updated: []};
605
617
 
606
618
  if (participants) {
@@ -649,7 +661,7 @@ export default class Members extends StatelessWebexPlugin {
649
661
  * @returns {Promise}
650
662
  * @memberof Members
651
663
  */
652
- addMember(invitee, alertIfActive) {
664
+ addMember(invitee: any, alertIfActive?: boolean) {
653
665
  if (!this.locusUrl) {
654
666
  return Promise.reject(new ParameterError('The associated locus url for this meeting object must be defined.'));
655
667
  }
@@ -669,7 +681,7 @@ export default class Members extends StatelessWebexPlugin {
669
681
  * @returns {Promise}
670
682
  * @memberof Members
671
683
  */
672
- cancelPhoneInvite(invitee) {
684
+ cancelPhoneInvite(invitee: any) {
673
685
  if (!this.locusUrl) {
674
686
  return Promise.reject(new ParameterError('The associated locus url for this meeting object must be defined.'));
675
687
  }
@@ -691,7 +703,7 @@ export default class Members extends StatelessWebexPlugin {
691
703
  * @public
692
704
  * @memberof Members
693
705
  */
694
- admitMembers(memberIds) {
706
+ public admitMembers(memberIds: Array<any>) {
695
707
  if (isEmpty(memberIds)) {
696
708
  return Promise.reject(new ParameterError('No member ids provided to admit.'));
697
709
  }
@@ -707,7 +719,7 @@ export default class Members extends StatelessWebexPlugin {
707
719
  * @public
708
720
  * @memberof Members
709
721
  */
710
- removeMember(memberId) {
722
+ public removeMember(memberId: string) {
711
723
  if (!this.locusUrl) {
712
724
  return Promise.reject(new ParameterError('The associated locus url for this meeting object must be defined.'));
713
725
  }
@@ -727,7 +739,7 @@ export default class Members extends StatelessWebexPlugin {
727
739
  * @public
728
740
  * @memberof Members
729
741
  */
730
- muteMember(memberId, mute = true) {
742
+ public muteMember(memberId: string, mute: boolean = true) {
731
743
  if (!this.locusUrl) {
732
744
  return Promise.reject(new ParameterError('The associated locus url for this meetings members object must be defined.'));
733
745
  }
@@ -747,7 +759,7 @@ export default class Members extends StatelessWebexPlugin {
747
759
  * @public
748
760
  * @memberof Members
749
761
  */
750
- raiseOrLowerHand(memberId, raise = true) {
762
+ public raiseOrLowerHand(memberId: string, raise: boolean = true) {
751
763
  if (!this.locusUrl) {
752
764
  return Promise.reject(new ParameterError('The associated locus url for this meetings members object must be defined.'));
753
765
  }
@@ -766,7 +778,7 @@ export default class Members extends StatelessWebexPlugin {
766
778
  * @public
767
779
  * @memberof Members
768
780
  */
769
- lowerAllHands(requestingMemberId) {
781
+ public lowerAllHands(requestingMemberId: string) {
770
782
  if (!this.locusUrl) {
771
783
  return Promise.reject(new ParameterError('The associated locus url for this meetings members object must be defined.'));
772
784
  }
@@ -787,7 +799,7 @@ export default class Members extends StatelessWebexPlugin {
787
799
  * @public
788
800
  * @memberof Members
789
801
  */
790
- transferHostToMember(memberId, moderator = true) {
802
+ public transferHostToMember(memberId: string, moderator: boolean = true) {
791
803
  if (!this.locusUrl) {
792
804
  return Promise.reject(new ParameterError('The associated locus url for this meetings members object must be defined.'));
793
805
  }
@@ -808,7 +820,8 @@ export default class Members extends StatelessWebexPlugin {
808
820
  * @public
809
821
  * @memberof Members
810
822
  */
811
- sendDialPadKey(tones = '', memberId = '') {
823
+ public sendDialPadKey(tones: string = '', memberId: string = '') {
824
+ // @ts-ignore
812
825
  if (!tones && tones !== 0) {
813
826
  return Promise.reject(new ParameterError('DMTF tones must be passed in'));
814
827
  }
@@ -1,3 +1,4 @@
1
+ // @ts-ignore
1
2
  import {StatelessWebexPlugin} from '@webex/webex-core';
2
3
 
3
4
  import {MEETINGS} from '../constants';
@@ -9,7 +10,7 @@ import MembersUtil from './util';
9
10
  /**
10
11
  * @class MembersRequest
11
12
  */
12
- export default class MembersRequest extends StatelessWebexPlugin {
13
+ export default class MembersRequest extends StatelessWebexPlugin {
13
14
  namespace = MEETINGS;
14
15
 
15
16
  /**
@@ -19,12 +20,13 @@ export default class MembersRequest extends StatelessWebexPlugin {
19
20
  * @throws {Error} if the options are not valid and complete, must have invitee with emailAddress OR email AND locusUrl
20
21
  * @memberof MembersRequest
21
22
  */
22
- addMembers(options) {
23
+ addMembers(options: any) {
23
24
  if (!(!options || !options.invitee || (!options.invitee.emailAddress || !options.invitee.email || !options.invitee.phoneNumber) || !options.locusUrl)) {
24
25
  throw new ParameterError('invitee must be passed and the associated locus url for this meeting object must be defined.');
25
26
  }
26
27
  const requestParams = MembersUtil.getAddMemberRequestParams(options);
27
28
 
29
+ // @ts-ignore
28
30
  return this.request(requestParams);
29
31
  }
30
32
 
@@ -35,12 +37,13 @@ export default class MembersRequest extends StatelessWebexPlugin {
35
37
  * @throws {Error} if the options are not valid and complete, must have memberIds AND locusUrl
36
38
  * @memberof MembersRequest
37
39
  */
38
- admitMember(options) {
40
+ admitMember(options: any) {
39
41
  if (!options || !options.locusUrl || !options.memberIds) {
40
42
  throw new ParameterError('memberIds must be an array passed and the associated locus url for this meeting object must be defined.');
41
43
  }
42
44
  const requestParams = MembersUtil.getAdmitMemberRequestParams(options);
43
45
 
46
+ // @ts-ignore
44
47
  return this.request(requestParams);
45
48
  }
46
49
 
@@ -51,6 +54,7 @@ export default class MembersRequest extends StatelessWebexPlugin {
51
54
 
52
55
  const requestParams = MembersUtil.getRemoveMemberRequestParams(options);
53
56
 
57
+ // @ts-ignore
54
58
  return this.request(requestParams);
55
59
  }
56
60
 
@@ -61,6 +65,7 @@ export default class MembersRequest extends StatelessWebexPlugin {
61
65
 
62
66
  const requestParams = MembersUtil.getMuteMemberRequestParams(options);
63
67
 
68
+ // @ts-ignore
64
69
  return this.request(requestParams);
65
70
  }
66
71
 
@@ -71,6 +76,7 @@ export default class MembersRequest extends StatelessWebexPlugin {
71
76
 
72
77
  const requestParams = MembersUtil.getRaiseHandMemberRequestParams(options);
73
78
 
79
+ // @ts-ignore
74
80
  return this.request(requestParams);
75
81
  }
76
82
 
@@ -81,6 +87,7 @@ export default class MembersRequest extends StatelessWebexPlugin {
81
87
 
82
88
  const requestParams = MembersUtil.getLowerAllHandsMemberRequestParams(options);
83
89
 
90
+ // @ts-ignore
84
91
  return this.request(requestParams);
85
92
  }
86
93
 
@@ -91,6 +98,7 @@ export default class MembersRequest extends StatelessWebexPlugin {
91
98
 
92
99
  const requestParams = MembersUtil.getTransferHostToMemberRequestParams(options);
93
100
 
101
+ // @ts-ignore
94
102
  return this.request(requestParams);
95
103
  }
96
104
 
@@ -103,13 +111,15 @@ export default class MembersRequest extends StatelessWebexPlugin {
103
111
  * @param {String} options.memberId ID of PSTN user
104
112
  * @returns {Promise}
105
113
  */
106
- sendDialPadKey(options) {
114
+ sendDialPadKey(options: { locusUrl: string; url: string; tones: string; memberId: string }) {
115
+ // @ts-ignore
107
116
  if (!options || !options.locusUrl || !options.memberId || !options.url || !options.tones && options.tones !== 0) {
108
117
  throw new ParameterError('memberId must be defined, the associated locus url, the device url and DTMF tones for this meeting object must be defined.');
109
118
  }
110
119
 
111
120
  const requestParams = MembersUtil.generateSendDTMFRequestParams(options);
112
121
 
122
+ // @ts-ignore
113
123
  return this.request(requestParams);
114
124
  }
115
125
 
@@ -119,13 +129,14 @@ export default class MembersRequest extends StatelessWebexPlugin {
119
129
  * @throws {Error} if the options are not valid and complete, must have invitee with emailAddress OR email AND locusUrl
120
130
  * @memberof MembersRequest
121
131
  */
122
- cancelPhoneInvite(options) {
132
+ cancelPhoneInvite(options: any) {
123
133
  if (!(options?.invitee?.phoneNumber || options?.locusUrl)) {
124
134
  throw new ParameterError('invitee must be passed and the associated locus url for this meeting object must be defined.');
125
135
  }
126
136
 
127
137
  const requestParams = MembersUtil.generateCancelInviteRequestParams(options);
128
138
 
139
+ // @ts-ignore
129
140
  return this.request(requestParams);
130
141
  }
131
142
  }
@@ -12,7 +12,7 @@ import {
12
12
  _REMOVE_
13
13
  } from '../constants';
14
14
 
15
- const MembersUtil = {};
15
+ const MembersUtil: any = {};
16
16
 
17
17
  /**
18
18
  * @param {Object} invitee with emailAddress, email or phoneNumber
@@ -20,7 +20,7 @@ const MembersUtil = {};
20
20
  * @param {Boolean} alertIfActive
21
21
  * @returns {Object} the format object
22
22
  */
23
- MembersUtil.generateAddMemberOptions = (invitee, locusUrl, alertIfActive) => ({
23
+ MembersUtil.generateAddMemberOptions = (invitee: object, locusUrl: string, alertIfActive: boolean) => ({
24
24
  invitee,
25
25
  locusUrl,
26
26
  alertIfActive
@@ -31,7 +31,7 @@ MembersUtil.generateAddMemberOptions = (invitee, locusUrl, alertIfActive) => ({
31
31
  * @param {String} locusUrl
32
32
  * @returns {Object} the format object
33
33
  */
34
- MembersUtil.generateAdmitMemberOptions = (memberIds, locusUrl) => ({
34
+ MembersUtil.generateAdmitMemberOptions = (memberIds: Array<any>, locusUrl: string) => ({
35
35
  locusUrl,
36
36
  memberIds
37
37
  });
@@ -40,7 +40,7 @@ MembersUtil.generateAdmitMemberOptions = (memberIds, locusUrl) => ({
40
40
  * @param {Object} options with {invitee: {emailAddress, email, phoneNumber}, alertIfActive}
41
41
  * @returns {Object} with {invitees: [{address}], alertIfActive}
42
42
  */
43
- MembersUtil.getAddMemberBody = (options) => ({
43
+ MembersUtil.getAddMemberBody = (options: any) => ({
44
44
  invitees: [
45
45
  {
46
46
  address: options.invitee.emailAddress || options.invitee.email || options.invitee.phoneNumber
@@ -53,7 +53,7 @@ MembersUtil.getAddMemberBody = (options) => ({
53
53
  * @param {Object} options with {memberIds}
54
54
  * @returns {Object} admit with {memberIds}
55
55
  */
56
- MembersUtil.getAdmitMemberRequestBody = (options) => ({
56
+ MembersUtil.getAdmitMemberRequestBody = (options: any) => ({
57
57
  admit: {participantIds: options.memberIds}
58
58
  });
59
59
 
@@ -61,7 +61,7 @@ MembersUtil.getAdmitMemberRequestBody = (options) => ({
61
61
  * @param {Object} format with {memberIds, locusUrl}
62
62
  * @returns {Object} the request parameters (method, uri, body) needed to make a admitMember request
63
63
  */
64
- MembersUtil.getAdmitMemberRequestParams = (format) => {
64
+ MembersUtil.getAdmitMemberRequestParams = (format: any) => {
65
65
  const body = MembersUtil.getAdmitMemberRequestBody(format);
66
66
  const uri = `${format.locusUrl}/${CONTROLS}`;
67
67
 
@@ -76,7 +76,7 @@ MembersUtil.getAdmitMemberRequestParams = (format) => {
76
76
  * @param {Object} format with {invitee {emailAddress, email, phoneNumber}, locusUrl, alertIfActive}
77
77
  * @returns {Object} the request parameters (method, uri, body) needed to make a addMember request
78
78
  */
79
- MembersUtil.getAddMemberRequestParams = (format) => {
79
+ MembersUtil.getAddMemberRequestParams = (format: any) => {
80
80
  const body = MembersUtil.getAddMemberBody(format);
81
81
  const requestParams = {
82
82
  method: HTTP_VERBS.PUT,
@@ -1,5 +1,3 @@
1
-
2
-
3
1
  const errorDescription = {
4
2
  UNKNOWN_CALL_FAILURE: 'UnknownCallFailure',
5
3
  LOCUS_RATE_LIMITED_INCOMING: 'LocusRateLimitedIncoming',
File without changes