@webex/plugin-meetings 3.0.0-beta.7 → 3.0.0-beta.71

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 (506) hide show
  1. package/UPGRADING.md +9 -9
  2. package/browsers.js +19 -24
  3. package/dist/breakouts/breakout.js +178 -0
  4. package/dist/breakouts/breakout.js.map +1 -0
  5. package/dist/breakouts/collection.js +23 -0
  6. package/dist/breakouts/collection.js.map +1 -0
  7. package/dist/breakouts/edit-lock-error.js +52 -0
  8. package/dist/breakouts/edit-lock-error.js.map +1 -0
  9. package/dist/breakouts/index.js +843 -0
  10. package/dist/breakouts/index.js.map +1 -0
  11. package/dist/breakouts/request.js +78 -0
  12. package/dist/breakouts/request.js.map +1 -0
  13. package/dist/breakouts/utils.js +56 -0
  14. package/dist/breakouts/utils.js.map +1 -0
  15. package/dist/common/browser-detection.js +1 -20
  16. package/dist/common/browser-detection.js.map +1 -1
  17. package/dist/common/collection.js +5 -20
  18. package/dist/common/collection.js.map +1 -1
  19. package/dist/common/config.js +0 -7
  20. package/dist/common/config.js.map +1 -1
  21. package/dist/common/errors/captcha-error.js +10 -24
  22. package/dist/common/errors/captcha-error.js.map +1 -1
  23. package/dist/common/errors/intent-to-join.js +11 -24
  24. package/dist/common/errors/intent-to-join.js.map +1 -1
  25. package/dist/common/errors/join-meeting.js +12 -25
  26. package/dist/common/errors/join-meeting.js.map +1 -1
  27. package/dist/common/errors/media.js +10 -24
  28. package/dist/common/errors/media.js.map +1 -1
  29. package/dist/common/errors/parameter.js +5 -33
  30. package/dist/common/errors/parameter.js.map +1 -1
  31. package/dist/common/errors/password-error.js +10 -24
  32. package/dist/common/errors/password-error.js.map +1 -1
  33. package/dist/common/errors/permission.js +9 -23
  34. package/dist/common/errors/permission.js.map +1 -1
  35. package/dist/common/errors/reconnection-in-progress.js +0 -17
  36. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  37. package/dist/common/errors/reconnection.js +10 -24
  38. package/dist/common/errors/reconnection.js.map +1 -1
  39. package/dist/common/errors/stats.js +10 -24
  40. package/dist/common/errors/stats.js.map +1 -1
  41. package/dist/common/errors/webex-errors.js +6 -41
  42. package/dist/common/errors/webex-errors.js.map +1 -1
  43. package/dist/common/errors/webex-meetings-error.js +5 -25
  44. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  45. package/dist/common/events/events-scope.js +0 -22
  46. package/dist/common/events/events-scope.js.map +1 -1
  47. package/dist/common/events/events.js +0 -23
  48. package/dist/common/events/events.js.map +1 -1
  49. package/dist/common/events/trigger-proxy.js +0 -12
  50. package/dist/common/events/trigger-proxy.js.map +1 -1
  51. package/dist/common/events/util.js +0 -15
  52. package/dist/common/events/util.js.map +1 -1
  53. package/dist/common/logs/logger-config.js +0 -4
  54. package/dist/common/logs/logger-config.js.map +1 -1
  55. package/dist/common/logs/logger-proxy.js +1 -8
  56. package/dist/common/logs/logger-proxy.js.map +1 -1
  57. package/dist/common/logs/request.js +37 -60
  58. package/dist/common/logs/request.js.map +1 -1
  59. package/dist/common/queue.js +4 -14
  60. package/dist/common/queue.js.map +1 -1
  61. package/dist/config.js +6 -6
  62. package/dist/config.js.map +1 -1
  63. package/dist/constants.js +143 -52
  64. package/dist/constants.js.map +1 -1
  65. package/dist/controls-options-manager/constants.js +14 -0
  66. package/dist/controls-options-manager/constants.js.map +1 -0
  67. package/dist/controls-options-manager/enums.js +16 -0
  68. package/dist/controls-options-manager/enums.js.map +1 -0
  69. package/dist/controls-options-manager/index.js +261 -0
  70. package/dist/controls-options-manager/index.js.map +1 -0
  71. package/dist/controls-options-manager/util.js +39 -0
  72. package/dist/controls-options-manager/util.js.map +1 -0
  73. package/dist/index.js +11 -18
  74. package/dist/index.js.map +1 -1
  75. package/dist/locus-info/controlsUtils.js +31 -29
  76. package/dist/locus-info/controlsUtils.js.map +1 -1
  77. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  78. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  79. package/dist/locus-info/fullState.js +0 -15
  80. package/dist/locus-info/fullState.js.map +1 -1
  81. package/dist/locus-info/hostUtils.js +4 -12
  82. package/dist/locus-info/hostUtils.js.map +1 -1
  83. package/dist/locus-info/index.js +237 -198
  84. package/dist/locus-info/index.js.map +1 -1
  85. package/dist/locus-info/infoUtils.js +3 -37
  86. package/dist/locus-info/infoUtils.js.map +1 -1
  87. package/dist/locus-info/mediaSharesUtils.js +12 -38
  88. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  89. package/dist/locus-info/parser.js +92 -118
  90. package/dist/locus-info/parser.js.map +1 -1
  91. package/dist/locus-info/selfUtils.js +80 -89
  92. package/dist/locus-info/selfUtils.js.map +1 -1
  93. package/dist/media/index.js +56 -146
  94. package/dist/media/index.js.map +1 -1
  95. package/dist/media/properties.js +83 -117
  96. package/dist/media/properties.js.map +1 -1
  97. package/dist/media/util.js +2 -9
  98. package/dist/media/util.js.map +1 -1
  99. package/dist/mediaQualityMetrics/config.js +505 -495
  100. package/dist/mediaQualityMetrics/config.js.map +1 -1
  101. package/dist/meeting/in-meeting-actions.js +31 -14
  102. package/dist/meeting/in-meeting-actions.js.map +1 -1
  103. package/dist/meeting/index.js +2225 -2244
  104. package/dist/meeting/index.js.map +1 -1
  105. package/dist/meeting/muteState.js +102 -100
  106. package/dist/meeting/muteState.js.map +1 -1
  107. package/dist/meeting/request.js +308 -264
  108. package/dist/meeting/request.js.map +1 -1
  109. package/dist/meeting/request.type.js +7 -0
  110. package/dist/meeting/request.type.js.map +1 -0
  111. package/dist/meeting/state.js +21 -31
  112. package/dist/meeting/state.js.map +1 -1
  113. package/dist/meeting/util.js +63 -217
  114. package/dist/meeting/util.js.map +1 -1
  115. package/dist/meeting-info/collection.js +6 -25
  116. package/dist/meeting-info/collection.js.map +1 -1
  117. package/dist/meeting-info/index.js +14 -32
  118. package/dist/meeting-info/index.js.map +1 -1
  119. package/dist/meeting-info/meeting-info-v2.js +193 -268
  120. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  121. package/dist/meeting-info/request.js +3 -15
  122. package/dist/meeting-info/request.js.map +1 -1
  123. package/dist/meeting-info/util.js +98 -183
  124. package/dist/meeting-info/util.js.map +1 -1
  125. package/dist/meeting-info/utilv2.js +137 -228
  126. package/dist/meeting-info/utilv2.js.map +1 -1
  127. package/dist/meetings/collection.js +26 -19
  128. package/dist/meetings/collection.js.map +1 -1
  129. package/dist/meetings/index.js +565 -552
  130. package/dist/meetings/index.js.map +1 -1
  131. package/dist/meetings/request.js +26 -41
  132. package/dist/meetings/request.js.map +1 -1
  133. package/dist/meetings/util.js +151 -155
  134. package/dist/meetings/util.js.map +1 -1
  135. package/dist/member/index.js +100 -85
  136. package/dist/member/index.js.map +1 -1
  137. package/dist/member/types.js +15 -0
  138. package/dist/member/types.js.map +1 -0
  139. package/dist/member/util.js +90 -68
  140. package/dist/member/util.js.map +1 -1
  141. package/dist/members/collection.js +13 -12
  142. package/dist/members/collection.js.map +1 -1
  143. package/dist/members/index.js +152 -204
  144. package/dist/members/index.js.map +1 -1
  145. package/dist/members/request.js +35 -39
  146. package/dist/members/request.js.map +1 -1
  147. package/dist/members/types.js +15 -0
  148. package/dist/members/types.js.map +1 -0
  149. package/dist/members/util.js +76 -46
  150. package/dist/members/util.js.map +1 -1
  151. package/dist/metrics/config.js +4 -14
  152. package/dist/metrics/config.js.map +1 -1
  153. package/dist/metrics/constants.js +1 -6
  154. package/dist/metrics/constants.js.map +1 -1
  155. package/dist/metrics/index.js +59 -156
  156. package/dist/metrics/index.js.map +1 -1
  157. package/dist/multistream/mediaRequestManager.js +116 -52
  158. package/dist/multistream/mediaRequestManager.js.map +1 -1
  159. package/dist/multistream/receiveSlot.js +58 -65
  160. package/dist/multistream/receiveSlot.js.map +1 -1
  161. package/dist/multistream/receiveSlotManager.js +58 -93
  162. package/dist/multistream/receiveSlotManager.js.map +1 -1
  163. package/dist/multistream/remoteMedia.js +55 -74
  164. package/dist/multistream/remoteMedia.js.map +1 -1
  165. package/dist/multistream/remoteMediaGroup.js +6 -40
  166. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  167. package/dist/multistream/remoteMediaManager.js +466 -442
  168. package/dist/multistream/remoteMediaManager.js.map +1 -1
  169. package/dist/networkQualityMonitor/index.js +40 -59
  170. package/dist/networkQualityMonitor/index.js.map +1 -1
  171. package/dist/personal-meeting-room/index.js +21 -45
  172. package/dist/personal-meeting-room/index.js.map +1 -1
  173. package/dist/personal-meeting-room/request.js +1 -31
  174. package/dist/personal-meeting-room/request.js.map +1 -1
  175. package/dist/personal-meeting-room/util.js +0 -13
  176. package/dist/personal-meeting-room/util.js.map +1 -1
  177. package/dist/reachability/index.js +192 -191
  178. package/dist/reachability/index.js.map +1 -1
  179. package/dist/reachability/request.js +15 -23
  180. package/dist/reachability/request.js.map +1 -1
  181. package/dist/reactions/constants.js +13 -0
  182. package/dist/reactions/constants.js.map +1 -0
  183. package/dist/reactions/reactions.js +109 -0
  184. package/dist/reactions/reactions.js.map +1 -0
  185. package/dist/reactions/reactions.type.js +36 -0
  186. package/dist/reactions/reactions.type.js.map +1 -0
  187. package/dist/reconnection-manager/index.js +342 -460
  188. package/dist/reconnection-manager/index.js.map +1 -1
  189. package/dist/recording-controller/enums.js +17 -0
  190. package/dist/recording-controller/enums.js.map +1 -0
  191. package/dist/recording-controller/index.js +343 -0
  192. package/dist/recording-controller/index.js.map +1 -0
  193. package/dist/recording-controller/util.js +63 -0
  194. package/dist/recording-controller/util.js.map +1 -0
  195. package/dist/roap/index.js +48 -70
  196. package/dist/roap/index.js.map +1 -1
  197. package/dist/roap/request.js +143 -131
  198. package/dist/roap/request.js.map +1 -1
  199. package/dist/roap/turnDiscovery.js +91 -98
  200. package/dist/roap/turnDiscovery.js.map +1 -1
  201. package/dist/statsAnalyzer/global.js +1 -95
  202. package/dist/statsAnalyzer/global.js.map +1 -1
  203. package/dist/statsAnalyzer/index.js +372 -455
  204. package/dist/statsAnalyzer/index.js.map +1 -1
  205. package/dist/statsAnalyzer/mqaUtil.js +143 -87
  206. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  207. package/dist/transcription/index.js +22 -47
  208. package/dist/transcription/index.js.map +1 -1
  209. package/dist/types/breakouts/breakout.d.ts +8 -0
  210. package/dist/types/breakouts/collection.d.ts +5 -0
  211. package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
  212. package/dist/types/breakouts/index.d.ts +5 -0
  213. package/dist/types/breakouts/request.d.ts +22 -0
  214. package/dist/types/breakouts/utils.d.ts +8 -0
  215. package/dist/types/common/browser-detection.d.ts +9 -0
  216. package/dist/types/common/collection.d.ts +48 -0
  217. package/dist/types/common/config.d.ts +2 -0
  218. package/dist/types/common/errors/captcha-error.d.ts +15 -0
  219. package/dist/types/common/errors/intent-to-join.d.ts +16 -0
  220. package/dist/types/common/errors/join-meeting.d.ts +17 -0
  221. package/dist/types/common/errors/media.d.ts +15 -0
  222. package/dist/types/common/errors/parameter.d.ts +15 -0
  223. package/dist/types/common/errors/password-error.d.ts +15 -0
  224. package/dist/types/common/errors/permission.d.ts +14 -0
  225. package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
  226. package/dist/types/common/errors/reconnection.d.ts +15 -0
  227. package/dist/types/common/errors/stats.d.ts +15 -0
  228. package/dist/types/common/errors/webex-errors.d.ts +69 -0
  229. package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
  230. package/dist/types/common/events/events-scope.d.ts +17 -0
  231. package/dist/types/common/events/events.d.ts +12 -0
  232. package/dist/types/common/events/trigger-proxy.d.ts +2 -0
  233. package/dist/types/common/events/util.d.ts +2 -0
  234. package/dist/types/common/logs/logger-config.d.ts +2 -0
  235. package/dist/types/common/logs/logger-proxy.d.ts +2 -0
  236. package/dist/types/common/logs/request.d.ts +34 -0
  237. package/dist/types/common/queue.d.ts +32 -0
  238. package/dist/types/config.d.ts +77 -0
  239. package/dist/types/constants.d.ts +944 -0
  240. package/dist/types/controls-options-manager/constants.d.ts +4 -0
  241. package/dist/types/controls-options-manager/enums.d.ts +6 -0
  242. package/dist/types/controls-options-manager/index.d.ts +128 -0
  243. package/dist/types/controls-options-manager/util.d.ts +9 -0
  244. package/dist/types/index.d.ts +6 -0
  245. package/dist/types/locus-info/controlsUtils.d.ts +2 -0
  246. package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
  247. package/dist/types/locus-info/fullState.d.ts +2 -0
  248. package/dist/types/locus-info/hostUtils.d.ts +2 -0
  249. package/dist/types/locus-info/index.d.ts +276 -0
  250. package/dist/types/locus-info/infoUtils.d.ts +2 -0
  251. package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
  252. package/dist/types/locus-info/parser.d.ts +212 -0
  253. package/dist/types/locus-info/selfUtils.d.ts +2 -0
  254. package/dist/types/media/index.d.ts +32 -0
  255. package/dist/types/media/properties.d.ts +108 -0
  256. package/dist/types/media/util.d.ts +2 -0
  257. package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
  258. package/dist/types/meeting/in-meeting-actions.d.ts +101 -0
  259. package/dist/types/meeting/index.d.ts +1720 -0
  260. package/dist/types/meeting/muteState.d.ts +132 -0
  261. package/dist/types/meeting/request.d.ts +271 -0
  262. package/dist/types/meeting/request.type.d.ts +11 -0
  263. package/dist/types/meeting/state.d.ts +9 -0
  264. package/dist/types/meeting/util.d.ts +2 -0
  265. package/dist/types/meeting-info/collection.d.ts +20 -0
  266. package/dist/types/meeting-info/index.d.ts +57 -0
  267. package/dist/types/meeting-info/meeting-info-v2.d.ts +93 -0
  268. package/dist/types/meeting-info/request.d.ts +22 -0
  269. package/dist/types/meeting-info/util.d.ts +2 -0
  270. package/dist/types/meeting-info/utilv2.d.ts +2 -0
  271. package/dist/types/meetings/collection.d.ts +31 -0
  272. package/dist/types/meetings/index.d.ts +315 -0
  273. package/dist/types/meetings/request.d.ts +27 -0
  274. package/dist/types/meetings/util.d.ts +18 -0
  275. package/dist/types/member/index.d.ts +156 -0
  276. package/dist/types/member/types.d.ts +21 -0
  277. package/dist/types/member/util.d.ts +2 -0
  278. package/dist/types/members/collection.d.ts +29 -0
  279. package/dist/types/members/index.d.ts +343 -0
  280. package/dist/types/members/request.d.ts +58 -0
  281. package/dist/types/members/types.d.ts +24 -0
  282. package/dist/types/members/util.d.ts +2 -0
  283. package/dist/types/metrics/config.d.ts +171 -0
  284. package/dist/types/metrics/constants.d.ts +53 -0
  285. package/dist/types/metrics/index.d.ts +152 -0
  286. package/dist/types/multistream/mediaRequestManager.d.ts +68 -0
  287. package/dist/types/multistream/receiveSlot.d.ts +68 -0
  288. package/dist/types/multistream/receiveSlotManager.d.ts +49 -0
  289. package/dist/types/multistream/remoteMedia.d.ts +100 -0
  290. package/dist/types/multistream/remoteMediaGroup.d.ts +56 -0
  291. package/dist/types/multistream/remoteMediaManager.d.ts +263 -0
  292. package/dist/types/networkQualityMonitor/index.d.ts +70 -0
  293. package/dist/types/personal-meeting-room/index.d.ts +47 -0
  294. package/dist/types/personal-meeting-room/request.d.ts +14 -0
  295. package/dist/types/personal-meeting-room/util.d.ts +2 -0
  296. package/dist/types/reachability/index.d.ts +152 -0
  297. package/dist/types/reachability/request.d.ts +37 -0
  298. package/dist/types/reactions/constants.d.ts +3 -0
  299. package/dist/types/reactions/reactions.d.ts +4 -0
  300. package/dist/types/reactions/reactions.type.d.ts +52 -0
  301. package/dist/types/reconnection-manager/index.d.ts +126 -0
  302. package/dist/types/recording-controller/enums.d.ts +7 -0
  303. package/dist/types/recording-controller/index.d.ts +193 -0
  304. package/dist/types/recording-controller/util.d.ts +13 -0
  305. package/dist/types/roap/index.d.ts +77 -0
  306. package/dist/types/roap/request.d.ts +38 -0
  307. package/dist/types/roap/turnDiscovery.d.ts +74 -0
  308. package/dist/types/statsAnalyzer/global.d.ts +36 -0
  309. package/dist/types/statsAnalyzer/index.d.ts +195 -0
  310. package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
  311. package/dist/types/transcription/index.d.ts +64 -0
  312. package/internal-README.md +7 -6
  313. package/package.json +27 -21
  314. package/src/breakouts/README.md +219 -0
  315. package/src/breakouts/breakout.ts +153 -0
  316. package/src/breakouts/collection.ts +19 -0
  317. package/src/breakouts/edit-lock-error.ts +25 -0
  318. package/src/breakouts/index.ts +745 -0
  319. package/src/breakouts/request.ts +55 -0
  320. package/src/breakouts/utils.ts +44 -0
  321. package/src/common/{browser-detection.js → browser-detection.ts} +9 -6
  322. package/src/common/collection.ts +9 -7
  323. package/src/common/{config.js → config.ts} +1 -1
  324. package/src/common/errors/{captcha-error.js → captcha-error.ts} +11 -7
  325. package/src/common/errors/{intent-to-join.js → intent-to-join.ts} +12 -7
  326. package/src/common/errors/{join-meeting.js → join-meeting.ts} +17 -8
  327. package/src/common/errors/{media.js → media.ts} +11 -7
  328. package/src/common/errors/parameter.ts +11 -7
  329. package/src/common/errors/{password-error.js → password-error.ts} +11 -7
  330. package/src/common/errors/{permission.js → permission.ts} +10 -6
  331. package/src/common/errors/{reconnection.js → reconnection.ts} +11 -7
  332. package/src/common/errors/{stats.js → stats.ts} +11 -7
  333. package/src/common/errors/{webex-errors.js → webex-errors.ts} +8 -7
  334. package/src/common/errors/{webex-meetings-error.js → webex-meetings-error.ts} +4 -2
  335. package/src/common/events/{events-scope.js → events-scope.ts} +6 -2
  336. package/src/common/events/{events.js → events.ts} +5 -1
  337. package/src/common/events/{trigger-proxy.js → trigger-proxy.ts} +9 -5
  338. package/src/common/events/{util.js → util.ts} +2 -3
  339. package/src/common/logs/{logger-config.js → logger-config.ts} +1 -2
  340. package/src/common/logs/logger-proxy.ts +44 -0
  341. package/src/common/logs/{request.js → request.ts} +22 -9
  342. package/src/common/queue.ts +1 -2
  343. package/src/{config.js → config.ts} +17 -12
  344. package/src/constants.ts +92 -5
  345. package/src/controls-options-manager/constants.ts +5 -0
  346. package/src/controls-options-manager/enums.ts +7 -0
  347. package/src/controls-options-manager/index.ts +240 -0
  348. package/src/controls-options-manager/util.ts +30 -0
  349. package/src/index.js +4 -1
  350. package/src/locus-info/controlsUtils.ts +141 -0
  351. package/src/locus-info/{embeddedAppsUtils.js → embeddedAppsUtils.ts} +5 -6
  352. package/src/locus-info/{fullState.js → fullState.ts} +16 -12
  353. package/src/locus-info/{hostUtils.js → hostUtils.ts} +9 -8
  354. package/src/locus-info/{index.js → index.ts} +211 -71
  355. package/src/locus-info/{infoUtils.js → infoUtils.ts} +19 -8
  356. package/src/locus-info/{mediaSharesUtils.js → mediaSharesUtils.ts} +17 -17
  357. package/src/locus-info/{parser.js → parser.ts} +67 -79
  358. package/src/locus-info/{selfUtils.js → selfUtils.ts} +183 -67
  359. package/src/media/{index.js → index.ts} +179 -176
  360. package/src/media/{properties.js → properties.ts} +60 -37
  361. package/src/media/{util.js → util.ts} +2 -2
  362. package/src/mediaQualityMetrics/config.ts +384 -0
  363. package/src/meeting/in-meeting-actions.ts +67 -3
  364. package/src/meeting/{index.js → index.ts} +2605 -1605
  365. package/src/meeting/{muteState.js → muteState.ts} +138 -73
  366. package/src/meeting/{request.js → request.ts} +326 -142
  367. package/src/meeting/request.type.ts +13 -0
  368. package/src/meeting/{state.js → state.ts} +50 -35
  369. package/src/meeting/{util.js → util.ts} +131 -115
  370. package/src/meeting-info/{collection.js → collection.ts} +6 -2
  371. package/src/meeting-info/{index.js → index.ts} +42 -36
  372. package/src/meeting-info/meeting-info-v2.ts +273 -0
  373. package/src/meeting-info/{request.js → request.ts} +14 -4
  374. package/src/meeting-info/{util.js → util.ts} +60 -51
  375. package/src/meeting-info/{utilv2.js → utilv2.ts} +65 -58
  376. package/src/meetings/{collection.js → collection.ts} +26 -3
  377. package/src/meetings/index.ts +1275 -0
  378. package/src/meetings/{request.js → request.ts} +34 -25
  379. package/src/meetings/{util.js → util.ts} +99 -33
  380. package/src/member/{index.js → index.ts} +124 -56
  381. package/src/member/types.ts +24 -0
  382. package/src/member/{util.js → util.ts} +105 -25
  383. package/src/members/{collection.js → collection.ts} +10 -2
  384. package/src/members/{index.js → index.ts} +281 -144
  385. package/src/members/{request.js → request.ts} +80 -16
  386. package/src/members/types.ts +28 -0
  387. package/src/members/{util.js → util.ts} +108 -55
  388. package/src/metrics/{config.js → config.ts} +255 -92
  389. package/src/metrics/{constants.js → constants.ts} +0 -6
  390. package/src/metrics/{index.js → index.ts} +110 -94
  391. package/src/multistream/mediaRequestManager.ts +144 -40
  392. package/src/multistream/receiveSlot.ts +69 -26
  393. package/src/multistream/receiveSlotManager.ts +50 -38
  394. package/src/multistream/remoteMedia.ts +30 -4
  395. package/src/multistream/remoteMediaGroup.ts +4 -3
  396. package/src/multistream/remoteMediaManager.ts +230 -66
  397. package/src/networkQualityMonitor/{index.js → index.ts} +41 -29
  398. package/src/personal-meeting-room/{index.js → index.ts} +28 -19
  399. package/src/personal-meeting-room/{request.js → request.ts} +13 -4
  400. package/src/personal-meeting-room/{util.js → util.ts} +4 -4
  401. package/src/reachability/{index.js → index.ts} +157 -94
  402. package/src/reachability/request.ts +46 -35
  403. package/src/reactions/constants.ts +4 -0
  404. package/src/reactions/reactions.ts +104 -0
  405. package/src/reactions/reactions.type.ts +62 -0
  406. package/src/reconnection-manager/{index.js → index.ts} +228 -120
  407. package/src/recording-controller/enums.ts +8 -0
  408. package/src/recording-controller/index.ts +315 -0
  409. package/src/recording-controller/util.ts +58 -0
  410. package/src/roap/{index.js → index.ts} +77 -60
  411. package/src/roap/request.ts +172 -0
  412. package/src/roap/turnDiscovery.ts +81 -41
  413. package/src/statsAnalyzer/global.ts +37 -0
  414. package/src/statsAnalyzer/index.ts +1242 -0
  415. package/src/statsAnalyzer/mqaUtil.ts +291 -0
  416. package/src/transcription/{index.js → index.ts} +46 -39
  417. package/test/integration/spec/converged-space-meetings.js +176 -0
  418. package/test/integration/spec/journey.js +665 -464
  419. package/test/integration/spec/space-meeting.js +320 -206
  420. package/test/integration/spec/transcription.js +7 -8
  421. package/test/unit/spec/breakouts/breakout.ts +178 -0
  422. package/test/unit/spec/breakouts/collection.ts +15 -0
  423. package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
  424. package/test/unit/spec/breakouts/index.ts +1252 -0
  425. package/test/unit/spec/breakouts/request.ts +104 -0
  426. package/test/unit/spec/breakouts/utils.js +54 -0
  427. package/test/unit/spec/common/browser-detection.js +9 -28
  428. package/test/unit/spec/controls-options-manager/index.js +204 -0
  429. package/test/unit/spec/controls-options-manager/util.js +86 -0
  430. package/test/unit/spec/fixture/locus.js +92 -90
  431. package/test/unit/spec/locus-info/controlsUtils.js +133 -34
  432. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  433. package/test/unit/spec/locus-info/index.js +303 -2
  434. package/test/unit/spec/locus-info/infoUtils.js +41 -32
  435. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  436. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  437. package/test/unit/spec/locus-info/parser.js +3 -9
  438. package/test/unit/spec/locus-info/selfConstant.js +101 -103
  439. package/test/unit/spec/locus-info/selfUtils.js +165 -12
  440. package/test/unit/spec/media/index.ts +72 -8
  441. package/test/unit/spec/media/properties.ts +9 -9
  442. package/test/unit/spec/meeting/in-meeting-actions.ts +29 -2
  443. package/test/unit/spec/meeting/index.js +2503 -802
  444. package/test/unit/spec/meeting/muteState.js +146 -61
  445. package/test/unit/spec/meeting/request.js +141 -43
  446. package/test/unit/spec/meeting/utils.js +135 -164
  447. package/test/unit/spec/meeting-info/meetinginfov2.js +100 -73
  448. package/test/unit/spec/meeting-info/request.js +7 -9
  449. package/test/unit/spec/meeting-info/util.js +11 -12
  450. package/test/unit/spec/meeting-info/utilv2.js +110 -74
  451. package/test/unit/spec/meetings/collection.js +15 -1
  452. package/test/unit/spec/meetings/index.js +622 -263
  453. package/test/unit/spec/meetings/utils.js +65 -14
  454. package/test/unit/spec/member/index.js +24 -1
  455. package/test/unit/spec/member/util.js +359 -32
  456. package/test/unit/spec/members/index.js +294 -54
  457. package/test/unit/spec/members/request.js +50 -20
  458. package/test/unit/spec/members/utils.js +147 -4
  459. package/test/unit/spec/metrics/index.js +16 -21
  460. package/test/unit/spec/multistream/mediaRequestManager.ts +369 -68
  461. package/test/unit/spec/multistream/receiveSlot.ts +76 -17
  462. package/test/unit/spec/multistream/receiveSlotManager.ts +60 -38
  463. package/test/unit/spec/multistream/remoteMedia.ts +32 -2
  464. package/test/unit/spec/multistream/remoteMediaGroup.ts +5 -5
  465. package/test/unit/spec/multistream/remoteMediaManager.ts +549 -65
  466. package/test/unit/spec/networkQualityMonitor/index.js +24 -18
  467. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  468. package/test/unit/spec/reachability/index.ts +176 -27
  469. package/test/unit/spec/reachability/request.js +66 -0
  470. package/test/unit/spec/reconnection-manager/index.js +58 -30
  471. package/test/unit/spec/recording-controller/index.js +231 -0
  472. package/test/unit/spec/recording-controller/util.js +102 -0
  473. package/test/unit/spec/roap/index.ts +12 -8
  474. package/test/unit/spec/roap/request.ts +217 -0
  475. package/test/unit/spec/roap/turnDiscovery.ts +72 -49
  476. package/test/unit/spec/stats-analyzer/index.js +108 -57
  477. package/test/utils/cmr.js +44 -42
  478. package/test/utils/constants.js +9 -0
  479. package/test/utils/testUtils.js +98 -77
  480. package/test/utils/webex-config.js +22 -18
  481. package/test/utils/webex-test-users.js +57 -50
  482. package/tsconfig.json +6 -0
  483. package/dist/media/internal-media-core-wrapper.js +0 -22
  484. package/dist/media/internal-media-core-wrapper.js.map +0 -1
  485. package/dist/meeting/effectsState.js +0 -327
  486. package/dist/meeting/effectsState.js.map +0 -1
  487. package/dist/multistream/multistreamMedia.js +0 -116
  488. package/dist/multistream/multistreamMedia.js.map +0 -1
  489. package/dist/peer-connection-manager/util.js +0 -124
  490. package/dist/peer-connection-manager/util.js.map +0 -1
  491. package/src/common/logs/logger-proxy.js +0 -33
  492. package/src/locus-info/controlsUtils.js +0 -102
  493. package/src/media/internal-media-core-wrapper.ts +0 -9
  494. package/src/mediaQualityMetrics/config.js +0 -382
  495. package/src/meeting/effectsState.js +0 -205
  496. package/src/meeting-info/meeting-info-v2.js +0 -255
  497. package/src/meetings/index.js +0 -1015
  498. package/src/multistream/multistreamMedia.ts +0 -92
  499. package/src/peer-connection-manager/util.ts +0 -117
  500. package/src/roap/request.js +0 -127
  501. package/src/statsAnalyzer/global.js +0 -133
  502. package/src/statsAnalyzer/index.js +0 -1006
  503. package/src/statsAnalyzer/mqaUtil.js +0 -173
  504. package/test/unit/spec/meeting/effectsState.js +0 -291
  505. package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -389
  506. /package/src/common/errors/{reconnection-in-progress.js → reconnection-in-progress.ts} +0 -0
@@ -1,111 +1,85 @@
1
1
  "use strict";
2
2
 
3
3
  var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
4
-
4
+ var _Object$keys = require("@babel/runtime-corejs2/core-js/object/keys");
5
+ var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
6
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
7
+ var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
8
+ var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
5
9
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
6
-
7
10
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
8
-
9
11
  _Object$defineProperty(exports, "__esModule", {
10
12
  value: true
11
13
  });
12
-
13
14
  exports.default = void 0;
14
-
15
15
  var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
16
-
17
16
  var _values = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/values"));
18
-
19
17
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/toConsumableArray"));
20
-
21
18
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
22
-
23
19
  var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
24
-
25
20
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
26
-
27
21
  var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
28
-
29
22
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
30
-
31
23
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
32
-
33
24
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
34
-
35
25
  var _isEmpty2 = _interopRequireDefault(require("lodash/isEmpty"));
36
-
37
26
  var _webexCore = require("@webex/webex-core");
38
-
39
27
  var _constants = require("../constants");
40
-
41
28
  var _triggerProxy = _interopRequireDefault(require("../common/events/trigger-proxy"));
42
-
43
29
  var _member = _interopRequireDefault(require("../member"));
44
-
45
30
  var _loggerProxy = _interopRequireDefault(require("../common/logs/logger-proxy"));
46
-
47
31
  var _parameter = _interopRequireDefault(require("../common/errors/parameter"));
48
-
49
32
  var _collection = _interopRequireDefault(require("./collection"));
50
-
51
33
  var _request = _interopRequireDefault(require("./request"));
52
-
53
34
  var _util = _interopRequireDefault(require("./util"));
54
-
35
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
36
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
55
37
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
56
-
57
38
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
58
-
59
39
  /**
60
- * Members Update Event
61
- * Emitted when something in the roster list needs to be updated
62
- * @event members:update
63
- * @instance
64
- * @property {Object} delta the changes to the members list
65
- * @property {Array} delta.updated array only the updates, includes removals, as they will have updated status and member properties
66
- * @property {Array} delta.added array added members to the meeting
67
- * @property {Array} full array the full members collection
68
- * @memberof Members
69
- */
70
-
40
+ * Members Update Event
41
+ * Emitted when something in the roster list needs to be updated
42
+ * @event members:update
43
+ * @instance
44
+ * @property {Object} delta the changes to the members list
45
+ * @property {Array} delta.updated array only the updates, includes removals, as they will have updated status and member properties
46
+ * @property {Array} delta.added array added members to the meeting
47
+ * @property {Array} full array the full members collection
48
+ * @memberof Members
49
+ */
71
50
  /**
72
- * Members Content Update Event
73
- * Emitted when who is sharing changes
74
- * @event members:content:update
75
- * @instance
76
- * @property {String} activeContentSharingId
77
- * @property {String} endedContentSharingId
78
- * @memberof Members
79
- */
80
-
51
+ * Members Content Update Event
52
+ * Emitted when who is sharing changes
53
+ * @event members:content:update
54
+ * @instance
55
+ * @property {String} activeContentSharingId
56
+ * @property {String} endedContentSharingId
57
+ * @memberof Members
58
+ */
81
59
  /**
82
- * Members Host Update Event
83
- * Emitted when who is the host changes
84
- * @event members:host:update
85
- * @instance
86
- * @property {String} activeHostId
87
- * @property {String} endedHostId
88
- * @memberof Members
89
- */
90
-
60
+ * Members Host Update Event
61
+ * Emitted when who is the host changes
62
+ * @event members:host:update
63
+ * @instance
64
+ * @property {String} activeHostId
65
+ * @property {String} endedHostId
66
+ * @memberof Members
67
+ */
91
68
  /**
92
- * Members Self Update Event
93
- * Emitted when who is the self changes
94
- * @event members:self:update
95
- * @instance
96
- * @property {String} activeSelfId
97
- * @property {String} endedSelfId
98
- * @memberof Members
99
- */
100
-
69
+ * Members Self Update Event
70
+ * Emitted when who is the self changes
71
+ * @event members:self:update
72
+ * @instance
73
+ * @property {String} activeSelfId
74
+ * @property {String} endedSelfId
75
+ * @memberof Members
76
+ */
101
77
  /**
102
78
  * @class Members
103
79
  */
104
80
  var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
105
81
  (0, _inherits2.default)(Members, _StatelessWebexPlugin);
106
-
107
82
  var _super = _createSuper(Members);
108
-
109
83
  /**
110
84
  *
111
85
  * @param {Object} attrs
@@ -114,7 +88,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
114
88
  */
115
89
  function Members(attrs, options) {
116
90
  var _this;
117
-
118
91
  (0, _classCallCheck2.default)(this, Members);
119
92
  _this = _super.call(this, {}, options);
120
93
  /**
@@ -123,8 +96,19 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
123
96
  * @type {MembersRequest}
124
97
  * @private
125
98
  * @memberof Members
126
- */
127
-
99
+ */
100
+ // @ts-ignore
101
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "hostId", void 0);
102
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "locusUrl", void 0);
103
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaShareContentId", void 0);
104
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaShareWhiteboardId", void 0);
105
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "membersCollection", void 0);
106
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "membersRequest", void 0);
107
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "receiveSlotManager", void 0);
108
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaRequestManagers", void 0);
109
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "recordingId", void 0);
110
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "selfId", void 0);
111
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", void 0);
128
112
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "namespace", _constants.MEETINGS);
129
113
  _this.membersRequest = new _request.default({}, options);
130
114
  /**
@@ -133,8 +117,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
133
117
  * @type {MembersCollection}
134
118
  * @private
135
119
  * @memberof Members
136
- */
137
-
120
+ */
138
121
  _this.membersCollection = new _collection.default();
139
122
  /**
140
123
  * The current locus url for the active meeting
@@ -142,8 +125,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
142
125
  * @type {String}
143
126
  * @private
144
127
  * @memberof Members
145
- */
146
-
128
+ */
147
129
  _this.locusUrl = attrs.locusUrl || null;
148
130
  /**
149
131
  * The current hostId for the meeting
@@ -151,8 +133,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
151
133
  * @type {String}
152
134
  * @private
153
135
  * @memberof Members
154
- */
155
-
136
+ */
156
137
  _this.hostId = null;
157
138
  /**
158
139
  * The current type for the meeting, could be MEETING or CALL
@@ -160,8 +141,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
160
141
  * @type {String}
161
142
  * @private
162
143
  * @memberof Members
163
- */
164
-
144
+ */
165
145
  _this.type = null;
166
146
  /**
167
147
  * Locus has a self object, sent individually to the client
@@ -175,8 +155,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
175
155
  * @type {String}
176
156
  * @private
177
157
  * @memberof Members
178
- */
179
-
158
+ */
180
159
  _this.selfId = null;
181
160
  /**
182
161
  * The current mediaShareContentId for the meeting
@@ -184,8 +163,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
184
163
  * @type {String}
185
164
  * @private
186
165
  * @memberof Members
187
- */
188
-
166
+ */
189
167
  _this.mediaShareContentId = null;
190
168
  /**
191
169
  * The current mediaShareWhiteboardId for the meeting
@@ -193,8 +171,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
193
171
  * @type {String}
194
172
  * @private
195
173
  * @memberof Members
196
- */
197
-
174
+ */
198
175
  _this.mediaShareWhiteboardId = null;
199
176
  /**
200
177
  * The current recordingId for the meeting, if it exists
@@ -202,23 +179,23 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
202
179
  * @type {String}
203
180
  * @private
204
181
  * @memberof Members
205
- */
206
-
182
+ */
207
183
  _this.recordingId = null;
184
+
208
185
  /**
209
186
  * reference to a ReceiveSlotManager instance (for multistream)
210
187
  * @private
211
188
  */
212
-
213
189
  _this.receiveSlotManager = attrs.receiveSlotManager;
190
+
214
191
  /**
215
192
  * reference to a MediaRequestManager instance that manages main video requests (for multistream)
216
193
  * @private
217
194
  */
218
-
219
195
  _this.mediaRequestManagers = attrs.mediaRequestManagers;
220
196
  return _this;
221
197
  }
198
+
222
199
  /**
223
200
  * Internal update the self Id value
224
201
  * @param {Object} payload
@@ -228,42 +205,32 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
228
205
  * @private
229
206
  * @memberof Members
230
207
  */
231
-
232
-
233
208
  (0, _createClass2.default)(Members, [{
234
209
  key: "locusSelfUpdate",
235
210
  value: function locusSelfUpdate(payload) {
236
211
  var newSelfId = null;
237
212
  var oldSelfId = null;
238
-
239
213
  if (payload) {
240
214
  if (payload.newSelf) {
241
215
  newSelfId = payload.newSelf.id;
242
216
  }
243
-
244
217
  if (payload.oldSelf) {
245
218
  oldSelfId = payload.oldSelf.id;
246
219
  }
247
220
  }
248
-
249
221
  if (newSelfId) {
250
222
  var theSelf = this.membersCollection.get(newSelfId);
251
-
252
223
  if (theSelf) {
253
224
  theSelf.setIsSelf(true);
254
225
  }
255
226
  }
256
-
257
227
  if (oldSelfId) {
258
228
  var notSelf = this.membersCollection.get(oldSelfId);
259
-
260
229
  if (notSelf) {
261
230
  notSelf.setIsSelf(false);
262
231
  }
263
232
  }
264
-
265
233
  this.selfId = newSelfId;
266
-
267
234
  _triggerProxy.default.trigger(this, {
268
235
  file: 'members',
269
236
  function: 'locusSelfUpdate'
@@ -272,6 +239,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
272
239
  endedSelfId: oldSelfId
273
240
  });
274
241
  }
242
+
275
243
  /**
276
244
  * Internal update the hostId value
277
245
  * @param {Object} payload
@@ -281,41 +249,32 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
281
249
  * @private
282
250
  * @memberof Members
283
251
  */
284
-
285
252
  }, {
286
253
  key: "locusHostUpdate",
287
254
  value: function locusHostUpdate(payload) {
288
255
  var newHostId = null;
289
256
  var oldHostId = null;
290
-
291
257
  if (payload) {
292
258
  if (payload.newHost) {
293
259
  newHostId = payload.newHost.id;
294
260
  }
295
-
296
261
  if (payload.oldHost) {
297
262
  oldHostId = payload.oldHost.id;
298
263
  }
299
264
  }
300
-
301
265
  if (newHostId) {
302
266
  var theHost = this.membersCollection.get(newHostId);
303
-
304
267
  if (theHost) {
305
268
  theHost.setIsHost(true);
306
269
  }
307
270
  }
308
-
309
271
  if (oldHostId) {
310
272
  var notHost = this.membersCollection.get(oldHostId);
311
-
312
273
  if (notHost) {
313
274
  notHost.setIsHost(false);
314
275
  }
315
276
  }
316
-
317
277
  this.hostId = newHostId;
318
-
319
278
  _triggerProxy.default.trigger(this, {
320
279
  file: 'members',
321
280
  function: 'locusHostUpdate'
@@ -324,6 +283,23 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
324
283
  endedHostId: oldHostId
325
284
  });
326
285
  }
286
+
287
+ /**
288
+ * clear member collection
289
+ * @returns {void}
290
+ * @private
291
+ * @memberof Members
292
+ */
293
+ }, {
294
+ key: "clearMembers",
295
+ value: function clearMembers() {
296
+ this.membersCollection.reset();
297
+ _triggerProxy.default.trigger(this, {
298
+ file: 'members',
299
+ function: 'clearMembers'
300
+ }, _constants.EVENT_TRIGGERS.MEMBERS_CLEAR, {});
301
+ }
302
+
327
303
  /**
328
304
  * when new participant updates come in, both delta and full participants, update them in members collection
329
305
  * delta object in the event will have {updated, added} and full will be the full membersCollection
@@ -333,23 +309,29 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
333
309
  * @private
334
310
  * @memberof Members
335
311
  */
336
-
337
312
  }, {
338
313
  key: "locusParticipantsUpdate",
339
314
  value: function locusParticipantsUpdate(payload) {
340
315
  if (payload) {
316
+ var _this$receiveSlotMana;
317
+ if (payload.isReplace) {
318
+ this.clearMembers();
319
+ }
341
320
  var delta = this.handleLocusInfoUpdatedParticipants(payload);
342
321
  var full = this.handleMembersUpdate(delta); // SDK should propagate the full list for both delta and non delta updates
343
322
 
323
+ (_this$receiveSlotMana = this.receiveSlotManager) === null || _this$receiveSlotMana === void 0 ? void 0 : _this$receiveSlotMana.updateMemberIds();
344
324
  _triggerProxy.default.trigger(this, {
345
325
  file: 'members',
346
326
  function: 'locusParticipantsUpdate'
347
327
  }, _constants.EVENT_TRIGGERS.MEMBERS_UPDATE, {
348
328
  delta: delta,
349
- full: full
329
+ full: full,
330
+ isReplace: !!payload.isReplace
350
331
  });
351
332
  }
352
333
  }
334
+
353
335
  /**
354
336
  * Internal update the content id
355
337
  * @param {Object} payload
@@ -359,26 +341,22 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
359
341
  * @private
360
342
  * @memberof Members
361
343
  */
362
-
363
344
  }, {
364
345
  key: "locusMediaSharesUpdate",
365
346
  value: function locusMediaSharesUpdate(payload) {
366
347
  var _payload$current, _payload$previous, _payload$current2, _payload$previous2;
367
-
368
348
  var currentContent = (_payload$current = payload.current) === null || _payload$current === void 0 ? void 0 : _payload$current.content;
369
349
  var previousContent = (_payload$previous = payload.previous) === null || _payload$previous === void 0 ? void 0 : _payload$previous.content;
370
350
  var currentWhiteboard = (_payload$current2 = payload.current) === null || _payload$current2 === void 0 ? void 0 : _payload$current2.whiteboard;
371
351
  var previousWhiteboard = (_payload$previous2 = payload.previous) === null || _payload$previous2 === void 0 ? void 0 : _payload$previous2.whiteboard;
372
352
  var whoSharing = null;
373
353
  var whoStopped = null;
374
-
375
354
  if (currentContent !== null && currentContent !== void 0 && currentContent.beneficiaryId) {
376
355
  if (currentContent.disposition === _constants.FLOOR_ACTION.GRANTED) {
377
356
  whoSharing = currentContent.beneficiaryId;
378
357
  this.mediaShareWhiteboardId = null;
379
358
  this.mediaShareContentId = whoSharing;
380
359
  }
381
-
382
360
  if ((previousContent === null || previousContent === void 0 ? void 0 : previousContent.disposition) === _constants.FLOOR_ACTION.GRANTED) {
383
361
  if (currentContent.disposition === _constants.FLOOR_ACTION.RELEASED) {
384
362
  whoStopped = currentContent.beneficiaryId;
@@ -388,14 +366,12 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
388
366
  }
389
367
  }
390
368
  }
391
-
392
369
  if (currentWhiteboard !== null && currentWhiteboard !== void 0 && currentWhiteboard.beneficiaryId) {
393
370
  if (currentWhiteboard.disposition === _constants.FLOOR_ACTION.GRANTED) {
394
371
  whoSharing = currentWhiteboard.beneficiaryId;
395
372
  this.mediaShareContentId = null;
396
373
  this.mediaShareWhiteboardId = whoSharing;
397
374
  }
398
-
399
375
  if ((previousWhiteboard === null || previousWhiteboard === void 0 ? void 0 : previousWhiteboard.disposition) === _constants.FLOOR_ACTION.GRANTED) {
400
376
  if (currentWhiteboard.disposition === _constants.FLOOR_ACTION.RELEASED) {
401
377
  whoStopped = currentWhiteboard.beneficiaryId;
@@ -405,23 +381,18 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
405
381
  }
406
382
  }
407
383
  }
408
-
409
384
  if (whoSharing) {
410
385
  var shareMember = this.membersCollection.get(whoSharing);
411
-
412
386
  if (shareMember) {
413
387
  shareMember.setIsContentSharing(true);
414
388
  }
415
389
  }
416
-
417
390
  if (whoStopped) {
418
391
  var stopMember = this.membersCollection.get(whoStopped);
419
-
420
392
  if (stopMember) {
421
393
  stopMember.setIsContentSharing(false);
422
394
  }
423
395
  }
424
-
425
396
  _triggerProxy.default.trigger(this, {
426
397
  file: 'members',
427
398
  function: 'locusMediaSharesUpdate'
@@ -430,6 +401,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
430
401
  endedSharingId: whoStopped
431
402
  });
432
403
  }
404
+
433
405
  /**
434
406
  * Internal update the locus url value
435
407
  * @param {Object} payload
@@ -438,7 +410,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
438
410
  * @private
439
411
  * @memberof Members
440
412
  */
441
-
442
413
  }, {
443
414
  key: "locusUrlUpdate",
444
415
  value: function locusUrlUpdate(payload) {
@@ -446,6 +417,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
446
417
  this.setLocusUrl(null, payload);
447
418
  }
448
419
  }
420
+
449
421
  /**
450
422
  * Internal update the type of meeting
451
423
  * @param {Object} payload
@@ -454,7 +426,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
454
426
  * @private
455
427
  * @memberof Members
456
428
  */
457
-
458
429
  }, {
459
430
  key: "locusFullStateTypeUpdate",
460
431
  value: function locusFullStateTypeUpdate(payload) {
@@ -468,6 +439,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
468
439
  this.setType(payload);
469
440
  }
470
441
  }
442
+
471
443
  /**
472
444
  * sets values in the members collection for updated and added properties from delta
473
445
  * @param {Object} membersUpdate {updated: [], added: []}
@@ -475,7 +447,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
475
447
  * @private
476
448
  * @memberof Members
477
449
  */
478
-
479
450
  }, {
480
451
  key: "handleMembersUpdate",
481
452
  value: function handleMembersUpdate(membersUpdate) {
@@ -483,14 +454,13 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
483
454
  if (membersUpdate.updated) {
484
455
  this.constructMembers(membersUpdate.updated);
485
456
  }
486
-
487
457
  if (membersUpdate.added) {
488
458
  this.constructMembers(membersUpdate.added);
489
459
  }
490
460
  }
491
-
492
461
  return this.membersCollection.getAll();
493
462
  }
463
+
494
464
  /**
495
465
  * set members to the member collection from each updated/added lists as passed in
496
466
  * @param {Array} list
@@ -498,16 +468,15 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
498
468
  * @private
499
469
  * @memberof Members
500
470
  */
501
-
502
471
  }, {
503
472
  key: "constructMembers",
504
473
  value: function constructMembers(list) {
505
474
  var _this2 = this;
506
-
507
475
  list.forEach(function (member) {
508
476
  _this2.membersCollection.set(member.id, member);
509
477
  });
510
478
  }
479
+
511
480
  /**
512
481
  * Internal update the participants value
513
482
  * @param {Object} payload
@@ -515,21 +484,19 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
515
484
  * @private
516
485
  * @memberof Members
517
486
  */
518
-
519
487
  }, {
520
488
  key: "handleLocusInfoUpdatedParticipants",
521
489
  value: function handleLocusInfoUpdatedParticipants(payload) {
522
490
  this.hostId = payload.hostId || this.hostId;
523
491
  this.selfId = payload.selfId || this.selfId;
524
492
  this.recordingId = payload.recordingId;
525
-
526
493
  if (!payload.participants) {
527
494
  _loggerProxy.default.logger.warn('Members:index#handleLocusInfoUpdatedParticipants --> participants payload is missing.');
528
495
  }
529
-
530
496
  var memberUpdate = this.update(payload.participants);
531
497
  return memberUpdate;
532
498
  }
499
+
533
500
  /**
534
501
  * Update the locus Url
535
502
  * @param {Object} locus
@@ -539,12 +506,10 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
539
506
  * @public
540
507
  * @memberof Members
541
508
  */
542
-
543
509
  }, {
544
510
  key: "setLocusUrl",
545
511
  value: function setLocusUrl(locus) {
546
512
  var locusUrl = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
547
-
548
513
  if (locusUrl) {
549
514
  this.locusUrl = locusUrl;
550
515
  } else if (locus && (locus.locusUrl || locus.url)) {
@@ -553,6 +518,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
553
518
  throw new _parameter.default('Setting locusUrl for the Members module should be done with a locus object or locusUrl');
554
519
  }
555
520
  }
521
+
556
522
  /**
557
523
  * Update the host id
558
524
  * @param {Object} locus
@@ -562,12 +528,10 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
562
528
  * @public
563
529
  * @memberof Members
564
530
  */
565
-
566
531
  }, {
567
532
  key: "setHostId",
568
533
  value: function setHostId(locus) {
569
534
  var hostId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
570
-
571
535
  if (hostId) {
572
536
  this.hostId = hostId;
573
537
  } else if (locus) {
@@ -576,6 +540,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
576
540
  throw new _parameter.default('Setting hostid for the Members module should be done with a locus object or hostId');
577
541
  }
578
542
  }
543
+
579
544
  /**
580
545
  * Update the type
581
546
  * @param {Object} fullState
@@ -585,12 +550,10 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
585
550
  * @public
586
551
  * @memberof Members
587
552
  */
588
-
589
553
  }, {
590
554
  key: "setType",
591
555
  value: function setType(fullState) {
592
556
  var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
593
-
594
557
  if (type) {
595
558
  this.type = type;
596
559
  } else if (fullState) {
@@ -599,6 +562,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
599
562
  throw new _parameter.default('Setting type for the Members module should be done with a fullstate object or type string');
600
563
  }
601
564
  }
565
+
602
566
  /**
603
567
  * Update the self Id
604
568
  * @param {Object} locus
@@ -607,12 +571,10 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
607
571
  * @returns {undefined}
608
572
  * @memberof Members
609
573
  */
610
-
611
574
  }, {
612
575
  key: "setSelfId",
613
576
  value: function setSelfId(locus) {
614
577
  var selfId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
615
-
616
578
  if (selfId) {
617
579
  this.selfId = selfId;
618
580
  } else if (locus) {
@@ -621,6 +583,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
621
583
  throw new _parameter.default('Setting selfid for the Members module should be done with a locus object or selfId');
622
584
  }
623
585
  }
586
+
624
587
  /**
625
588
  * Update the media share content id
626
589
  * @param {Object} locus
@@ -629,7 +592,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
629
592
  * @returns {undefined}
630
593
  * @memberof Members
631
594
  */
632
-
633
595
  }, {
634
596
  key: "setMediaShareContentId",
635
597
  value: function setMediaShareContentId(locus, contentId) {
@@ -644,6 +606,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
644
606
  throw new _parameter.default('Setting hostid for the Members module should be done with a locus object or hostId');
645
607
  }
646
608
  }
609
+
647
610
  /**
648
611
  * Update the media share whiteboard id
649
612
  * @param {Object} locus
@@ -652,7 +615,6 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
652
615
  * @returns {undefined}
653
616
  * @memberof Members
654
617
  */
655
-
656
618
  }, {
657
619
  key: "setMediaShareWhiteboardId",
658
620
  value: function setMediaShareWhiteboardId(locus, whiteboardId) {
@@ -667,6 +629,7 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
667
629
  throw new _parameter.default('Setting hostid for the Members module should be done with a locus object or hostId');
668
630
  }
669
631
  }
632
+
670
633
  /**
671
634
  * Find all the updates, and added members
672
635
  * Removed/left members will end up in updates
@@ -676,25 +639,20 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
676
639
  * @private
677
640
  * @memberof Members
678
641
  */
679
-
680
642
  }, {
681
643
  key: "update",
682
644
  value: function update(participants) {
683
645
  var _this3 = this;
684
-
685
646
  var membersUpdate = {
686
647
  added: [],
687
648
  updated: []
688
649
  };
689
-
690
650
  if (participants) {
691
651
  participants.forEach(function (participant) {
692
652
  if (participant.hideInRoster) {
693
653
  return;
694
654
  }
695
-
696
655
  var existing = _this3.membersCollection.get(participant.id);
697
-
698
656
  if (existing) {
699
657
  // TODO: compare existing member to new participant coming in properties and determine if updated (this helps for non delta events)
700
658
  // on client re renders, but we will have to determine what values to compare to determine difference, premature optimization
@@ -718,9 +676,9 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
718
676
  }
719
677
  });
720
678
  }
721
-
722
679
  return membersUpdate;
723
680
  }
681
+
724
682
  /**
725
683
  * Adds a guest Member to the associated meeting
726
684
  * @param {String} invitee
@@ -728,63 +686,58 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
728
686
  * @returns {Promise}
729
687
  * @memberof Members
730
688
  */
731
-
732
689
  }, {
733
690
  key: "addMember",
734
691
  value: function addMember(invitee, alertIfActive) {
735
692
  if (!this.locusUrl) {
736
693
  return _promise.default.reject(new _parameter.default('The associated locus url for this meeting object must be defined.'));
737
694
  }
738
-
739
695
  if (_util.default.isInvalidInvitee(invitee)) {
740
696
  return _promise.default.reject(new _parameter.default('The invitee must be defined with either a valid email, emailAddress or phoneNumber property.'));
741
697
  }
742
-
743
698
  var options = _util.default.generateAddMemberOptions(invitee, this.locusUrl, alertIfActive);
744
-
745
699
  return this.membersRequest.addMembers(options);
746
700
  }
701
+
747
702
  /**
748
703
  * Cancels an outgoing PSTN call to the associated meeting
749
704
  * @param {String} invitee
750
705
  * @returns {Promise}
751
706
  * @memberof Members
752
707
  */
753
-
754
708
  }, {
755
709
  key: "cancelPhoneInvite",
756
710
  value: function cancelPhoneInvite(invitee) {
757
711
  if (!this.locusUrl) {
758
712
  return _promise.default.reject(new _parameter.default('The associated locus url for this meeting object must be defined.'));
759
713
  }
760
-
761
714
  if (_util.default.isInvalidInvitee(invitee)) {
762
715
  return _promise.default.reject(new _parameter.default('The invitee must be defined with a valid phoneNumber property.'));
763
716
  }
764
-
765
717
  var options = _util.default.cancelPhoneInviteOptions(invitee, this.locusUrl);
766
-
767
718
  return this.membersRequest.cancelPhoneInvite(options);
768
719
  }
720
+
769
721
  /**
770
722
  * Admits waiting members (invited guests to meeting)
771
723
  * @param {Array} memberIds
724
+ * @param {Object} sessionLocusUrls: {authorizingLocusUrl, mainLocusUrl}
772
725
  * @returns {Promise}
773
726
  * @public
774
727
  * @memberof Members
775
728
  */
776
-
777
729
  }, {
778
730
  key: "admitMembers",
779
- value: function admitMembers(memberIds) {
731
+ value: function admitMembers(memberIds, sessionLocusUrls) {
780
732
  if ((0, _isEmpty2.default)(memberIds)) {
781
733
  return _promise.default.reject(new _parameter.default('No member ids provided to admit.'));
782
734
  }
783
-
784
- var options = _util.default.generateAdmitMemberOptions(memberIds, this.locusUrl);
785
-
735
+ var options = _objectSpread({
736
+ sessionLocusUrls: sessionLocusUrls
737
+ }, _util.default.generateAdmitMemberOptions(memberIds, this.locusUrl));
786
738
  return this.membersRequest.admitMember(options);
787
739
  }
740
+
788
741
  /**
789
742
  * Removes a member from the meeting
790
743
  * @param {String} memberId
@@ -792,48 +745,64 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
792
745
  * @public
793
746
  * @memberof Members
794
747
  */
795
-
796
748
  }, {
797
749
  key: "removeMember",
798
750
  value: function removeMember(memberId) {
799
751
  if (!this.locusUrl) {
800
752
  return _promise.default.reject(new _parameter.default('The associated locus url for this meeting object must be defined.'));
801
753
  }
802
-
803
754
  if (!memberId) {
804
755
  return _promise.default.reject(new _parameter.default('The member id must be defined to remove the member.'));
805
756
  }
806
-
807
757
  var options = _util.default.generateRemoveMemberOptions(memberId, this.locusUrl);
808
-
809
758
  return this.membersRequest.removeMember(options);
810
759
  }
760
+
811
761
  /**
812
762
  * Audio mutes another member in a meeting
813
763
  * @param {String} memberId
814
764
  * @param {boolean} [mute] default true
765
+ * @param {boolean} [isAudio] default true
815
766
  * @returns {Promise}
816
767
  * @public
817
768
  * @memberof Members
818
769
  */
819
-
820
770
  }, {
821
771
  key: "muteMember",
822
772
  value: function muteMember(memberId) {
823
773
  var mute = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
824
-
774
+ var isAudio = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
825
775
  if (!this.locusUrl) {
826
776
  return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
827
777
  }
828
-
829
778
  if (!memberId) {
830
779
  return _promise.default.reject(new _parameter.default('The member id must be defined to mute the member.'));
831
780
  }
832
-
833
- var options = _util.default.generateMuteMemberOptions(memberId, mute, this.locusUrl);
834
-
781
+ var options = _util.default.generateMuteMemberOptions(memberId, mute, this.locusUrl, isAudio);
835
782
  return this.membersRequest.muteMember(options);
836
783
  }
784
+
785
+ /**
786
+ * Assign role(s) to a member in the meeting
787
+ * @param {String} memberId
788
+ * @param {[ServerRoleShape]} roles - to assign an array of roles
789
+ * @returns {Promise}
790
+ * @public
791
+ * @memberof Members
792
+ */
793
+ }, {
794
+ key: "assignRoles",
795
+ value: function assignRoles(memberId, roles) {
796
+ if (!this.locusUrl) {
797
+ return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
798
+ }
799
+ if (!memberId) {
800
+ return _promise.default.reject(new _parameter.default('The member id must be defined to assign the roles to a member.'));
801
+ }
802
+ var options = _util.default.generateRoleAssignmentMemberOptions(memberId, roles, this.locusUrl);
803
+ return this.membersRequest.assignRolesMember(options);
804
+ }
805
+
837
806
  /**
838
807
  * Raise or lower the hand of a member in a meeting
839
808
  * @param {String} memberId
@@ -842,24 +811,20 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
842
811
  * @public
843
812
  * @memberof Members
844
813
  */
845
-
846
814
  }, {
847
815
  key: "raiseOrLowerHand",
848
816
  value: function raiseOrLowerHand(memberId) {
849
817
  var raise = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
850
-
851
818
  if (!this.locusUrl) {
852
819
  return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
853
820
  }
854
-
855
821
  if (!memberId) {
856
822
  return _promise.default.reject(new _parameter.default('The member id must be defined to raise/lower the hand of the member.'));
857
823
  }
858
-
859
824
  var options = _util.default.generateRaiseHandMemberOptions(memberId, raise, this.locusUrl);
860
-
861
825
  return this.membersRequest.raiseOrLowerHandMember(options);
862
826
  }
827
+
863
828
  /**
864
829
  * Lower all hands of members in a meeting
865
830
  * @param {String} requestingMemberId - id of the participant which requested the lower all hands
@@ -867,22 +832,19 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
867
832
  * @public
868
833
  * @memberof Members
869
834
  */
870
-
871
835
  }, {
872
836
  key: "lowerAllHands",
873
837
  value: function lowerAllHands(requestingMemberId) {
874
838
  if (!this.locusUrl) {
875
839
  return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
876
840
  }
877
-
878
841
  if (!requestingMemberId) {
879
842
  return _promise.default.reject(new _parameter.default('The requestingMemberId must be defined to lower all hands in a meeting.'));
880
843
  }
881
-
882
844
  var options = _util.default.generateLowerAllHandsMemberOptions(requestingMemberId, this.locusUrl);
883
-
884
845
  return this.membersRequest.lowerAllHandsMember(options);
885
846
  }
847
+
886
848
  /**
887
849
  * Transfers the host to another member
888
850
  * @param {String} memberId
@@ -891,24 +853,20 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
891
853
  * @public
892
854
  * @memberof Members
893
855
  */
894
-
895
856
  }, {
896
857
  key: "transferHostToMember",
897
858
  value: function transferHostToMember(memberId) {
898
859
  var moderator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
899
-
900
860
  if (!this.locusUrl) {
901
861
  return _promise.default.reject(new _parameter.default('The associated locus url for this meetings members object must be defined.'));
902
862
  }
903
-
904
863
  if (!memberId) {
905
864
  return _promise.default.reject(new _parameter.default('The member id must be defined to transfer host to the member.'));
906
865
  }
907
-
908
866
  var options = _util.default.generateTransferHostMemberOptions(memberId, moderator, this.locusUrl);
909
-
910
867
  return this.membersRequest.transferHostToMember(options);
911
868
  }
869
+
912
870
  /**
913
871
  * Sends DTMF tones for the PSTN member of a meeting
914
872
  * @param {String} tones a string of one or more DTMF tones to send
@@ -917,23 +875,19 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
917
875
  * @public
918
876
  * @memberof Members
919
877
  */
920
-
921
878
  }, {
922
879
  key: "sendDialPadKey",
923
880
  value: function sendDialPadKey() {
924
881
  var tones = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
925
882
  var memberId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
926
-
883
+ // @ts-ignore
927
884
  if (!tones && tones !== 0) {
928
885
  return _promise.default.reject(new _parameter.default('DMTF tones must be passed in'));
929
886
  }
930
-
931
887
  var member = this.membersCollection.get(memberId);
932
-
933
888
  if (!member) {
934
889
  return _promise.default.reject(new _parameter.default('there is no member associated with that Id'));
935
890
  }
936
-
937
891
  var locusUrl = this.locusUrl;
938
892
  var deviceArray = member.participant.devices;
939
893
  var device = deviceArray.find(function (_ref) {
@@ -941,36 +895,34 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
941
895
  return deviceType === 'SIP';
942
896
  });
943
897
  var url = device === null || device === void 0 ? void 0 : device.url;
944
-
945
898
  if (locusUrl && url) {
946
899
  var options = _util.default.genderateSendDTMFOptions(url, tones, memberId, locusUrl);
947
-
948
900
  return this.membersRequest.sendDialPadKey(options);
949
901
  }
950
-
951
902
  return _promise.default.reject(new Error('Members:index#sendDialPadKey --> cannot send DTMF, meeting does not have a connection to the "locus" call control service.'));
952
903
  }
904
+
953
905
  /** Finds a member that has any device with a csi matching provided value
954
906
  *
955
907
  * @param {number} csi
956
908
  * @returns {Member}
957
909
  */
958
-
959
910
  }, {
960
911
  key: "findMemberByCsi",
961
912
  value: function findMemberByCsi(csi) {
962
913
  return (0, _values.default)(this.membersCollection.getAll()).find(function (member) {
963
914
  var _member$participant, _member$participant$d;
964
-
965
- return (_member$participant = member.participant) === null || _member$participant === void 0 ? void 0 : (_member$participant$d = _member$participant.devices) === null || _member$participant$d === void 0 ? void 0 : _member$participant$d.find(function (device) {
966
- var _device$csis;
967
-
968
- return (_device$csis = device.csis) === null || _device$csis === void 0 ? void 0 : _device$csis.find(function (memberCsi) {
969
- return memberCsi === csi;
970
- });
971
- });
915
+ return (// @ts-ignore
916
+ (_member$participant = member.participant) === null || _member$participant === void 0 ? void 0 : (_member$participant$d = _member$participant.devices) === null || _member$participant$d === void 0 ? void 0 : _member$participant$d.find(function (device) {
917
+ var _device$csis;
918
+ return (_device$csis = device.csis) === null || _device$csis === void 0 ? void 0 : _device$csis.find(function (memberCsi) {
919
+ return memberCsi === csi;
920
+ });
921
+ })
922
+ );
972
923
  });
973
924
  }
925
+
974
926
  /**
975
927
  * Returns an array of a member's CSIs matching the mediaType and mediaContent
976
928
  *
@@ -979,19 +931,16 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
979
931
  * @param {string} mediaContent 'main' or 'slides'
980
932
  * @returns {Member}
981
933
  */
982
-
983
934
  }, {
984
935
  key: "getCsisForMember",
985
936
  value: function getCsisForMember(memberId) {
986
937
  var _this$membersCollecti, _this$membersCollecti2, _this$membersCollecti3;
987
-
988
938
  var mediaType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'video';
989
939
  var mediaContent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'main';
990
940
  var csis = [];
991
941
  (_this$membersCollecti = this.membersCollection.get(memberId)) === null || _this$membersCollecti === void 0 ? void 0 : (_this$membersCollecti2 = _this$membersCollecti.participant) === null || _this$membersCollecti2 === void 0 ? void 0 : (_this$membersCollecti3 = _this$membersCollecti2.devices) === null || _this$membersCollecti3 === void 0 ? void 0 : _this$membersCollecti3.forEach(function (device) {
992
942
  if (device.mediaSessions) {
993
943
  var _device$mediaSessions;
994
-
995
944
  var deviceCsis = (_device$mediaSessions = device.mediaSessions) === null || _device$mediaSessions === void 0 ? void 0 : _device$mediaSessions.filter(function (mediaSession) {
996
945
  return mediaSession.mediaType === mediaType && mediaSession.mediaContent === mediaContent;
997
946
  }).map(function (mediaSession) {
@@ -1005,6 +954,5 @@ var Members = /*#__PURE__*/function (_StatelessWebexPlugin) {
1005
954
  }]);
1006
955
  return Members;
1007
956
  }(_webexCore.StatelessWebexPlugin);
1008
-
1009
957
  exports.default = Members;
1010
958
  //# sourceMappingURL=index.js.map