@webex/plugin-meetings 3.0.0-beta.2 → 3.0.0-beta.200

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